/* Conduxe front page (coming soon). Own stylesheet: request-access/ keeps site.css. Theme attribute values match site.css (light/dark) so the toggle survives the hop between pages. */
@font-face{font-family:ConduxeWordmark;src:url('fonts/conduxe-wordmark.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-600.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-700.woff2') format('woff2');font-style:normal;font-weight:700 900;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('fonts/ibm-plex-mono-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{color-scheme:dark;--page:#171512;--surface:#1f1c18;--raised:#252220;--ink:#ede8de;--secondary:#8c877b;--muted:#8c877b;--rule:rgba(237,232,222,.14);--rust:#c0592f;--button-ink:#fff8f0;--focus:#e8927a;--status-normal:#6F7A5C}
:root[data-theme=light]{color-scheme:light;--page:#f6f3ec;--surface:#fbf9f4;--raised:#fbf9f4;--ink:#1e1b16;--secondary:#6e675b;--muted:#6e675b;--rule:#d5cebd;--rust:#a8461f;--button-ink:#fff8f0;--focus:#a8461f}
*{box-sizing:border-box}
html{font-size:16px;scroll-padding-top:20px}
body{margin:0;background:var(--page);color:var(--ink);font-family:Inter,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
button,a{touch-action:manipulation}
button:focus-visible,a:focus-visible{outline:2px solid var(--focus);outline-offset:5px}
button:hover{background:var(--raised)}
::selection{background:var(--ink);color:var(--page)}
.mono{font-family:'IBM Plex Mono',monospace;font-weight:400;font-variant-numeric:tabular-nums}
.page{width:min(100% - 96px,1320px);margin-inline:auto}
.masthead{min-height:104px;display:flex;align-items:center;border-bottom:1px solid var(--rule);gap:32px}
.wordmark{font-family:ConduxeWordmark,Inter,sans-serif;font-size:24px;font-weight:700;letter-spacing:2.25px;line-height:1;display:flex;gap:8px;align-items:center;min-height:44px}
.brand-square{width:18px;height:18px;flex-shrink:0;background:#a8461f}
.theme-button{margin-left:auto;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:transparent;border:1px solid var(--rule);border-radius:3px}
.theme-button svg{width:23px;height:23px}
.theme-button .moon,[data-theme=light] .theme-button .sun{display:none}
[data-theme=light] .theme-button .moon{display:block}
.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:48px;padding:clamp(48px,6vw,88px) 0 48px;align-items:center}
.hero-copy{padding-bottom:32px}
.eyebrow{display:flex;align-items:center;gap:8px;font-size:11px;text-transform:uppercase;letter-spacing:.075em;margin:0 0 32px;line-height:1.6;color:var(--secondary)}
.status-dot{width:6px;height:6px;border-radius:50%;background:var(--status-normal);display:inline-block;flex-shrink:0}
.slash{margin:0 4px;color:var(--muted)}
/* DESIGN.md §03 LARGE TITLE ratios (700 / -0.032em), scaled up for the web. */
h1{font-size:clamp(64px,7vw,100px);font-weight:700;letter-spacing:-.032em;line-height:1;margin:0}
/* DESIGN.md §03 TITLE tracking. */
.hero-promise{font-size:clamp(20px,2vw,27px);line-height:1.3;letter-spacing:-.026em;margin:32px 0 20px}
.intro{max-width:390px;font-size:16px;line-height:1.65;color:var(--secondary);margin:0 0 32px;letter-spacing:-.012em}
.primary-button{min-height:56px;padding:12px 20px;display:inline-flex;align-items:center;justify-content:space-between;gap:48px;background:var(--rust);color:var(--button-ink);border:1px solid transparent;border-radius:3px;font-size:18px;font-weight:600;line-height:1.5}
.primary-button:hover{background:#a8461f}
[data-theme=light] .primary-button:hover{background:#903c1b}
.primary-button svg{width:24px;height:24px}
.access-note{font-size:12.5px;color:var(--muted);margin:12px 0 0;line-height:1.5}
.field-preview{margin:0;min-width:0;width:100%}
.preview-heading{display:flex;justify-content:space-between;gap:12px;text-transform:uppercase;font-size:11px;letter-spacing:.06em;line-height:1.5;padding-bottom:12px;color:var(--muted)}
.camera-plate{background:#171512;position:relative;aspect-ratio:1.14;overflow:hidden;color:#ede8de;border:1px solid var(--rule)}
.camera-plate img{width:100%;height:100%;object-fit:cover;display:block}
.camera-top,.camera-bottom{position:absolute;left:0;right:0;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 20px;font-size:11px;letter-spacing:.035em;line-height:1.5}
.camera-top{top:0;background:rgba(23,21,18,.72);border-bottom:1px solid rgba(237,232,222,.14)}
.camera-bottom{bottom:0;background:rgba(23,21,18,.85);border-top:1px solid rgba(237,232,222,.14)}
.camera-bottom>span:first-child{display:flex;gap:8px;align-items:center}
.camera-separator{color:#8c877b;margin:0 8px}
.still-square{width:7px;height:7px;border:1px solid currentColor;display:inline-block}
figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;color:var(--muted);font-size:12.5px;line-height:1.5}
figcaption>.mono{font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:32px 0;gap:32px}
.principle{display:flex;gap:20px}
.principle+.principle{padding-left:32px;border-left:1px solid var(--rule)}
.principle-number{padding-top:4px;font-size:11px;color:var(--muted)}
h2{font-weight:600;font-size:16px;letter-spacing:-.025em;line-height:1.5;margin:0 0 8px}
.principle p{font-size:13px;line-height:1.65;margin:0;color:var(--secondary);max-width:280px}
footer{display:flex;align-items:center;gap:32px;padding:32px 0 48px;font-size:12.5px;line-height:1.5}
footer p{margin:0;color:var(--secondary)}
footer a{min-height:44px;display:inline-flex;align-items:center;gap:12px}
footer a:hover{text-decoration:underline;text-underline-offset:4px}
.footer-name{color:var(--muted);font-size:11px;margin-left:auto}
.skip{position:fixed;top:-100px;left:20px;z-index:20;background:var(--ink);color:var(--page);padding:12px 20px}
.skip:focus{top:12px}
@media(min-width:1500px){.hero{gap:96px;padding-block:88px 64px}}
@media(max-width:1100px){.page{width:calc(100% - 64px)}.hero{gap:32px}h1{font-size:clamp(56px,7.5vw,82px)}.eyebrow{font-size:11px;letter-spacing:0}.camera-top,.camera-bottom{padding:12px;font-size:11px}figcaption{align-items:flex-start;flex-direction:column;gap:4px}.principles{gap:20px}.principle{gap:12px}.principle+.principle{padding-left:20px}.footer-name{display:none}}
@media(max-width:760px){.page{width:calc(100% - 40px)}.masthead{min-height:84px;gap:20px}.wordmark{font-size:22px}.hero{grid-template-columns:1fr;gap:48px;padding-top:48px}.hero-copy{padding-bottom:0}h1{font-size:clamp(64px,12vw,88px)}.eyebrow{font-size:11px;gap:8px;margin-bottom:32px}.hero-promise{font-size:23px;margin-top:20px}.intro{max-width:440px;margin-bottom:32px}.primary-button{min-height:56px}.field-preview{max-width:560px}.camera-plate{aspect-ratio:1.14}.camera-top,.camera-bottom{padding:16px;font-size:11px}figcaption{flex-direction:row;font-size:12.5px;gap:20px}figcaption>.mono{font-size:11px}.principles{grid-template-columns:1fr;padding:0;gap:0}.principle{padding:24px 0;gap:20px}.principle+.principle{padding:24px 0;border-left:0;border-top:1px solid var(--rule)}.principle p{max-width:480px;font-size:14px}.principle-number{font-size:12px}h2{font-size:17px}footer{align-items:flex-start;flex-direction:column;gap:12px;padding:24px 0 32px}footer a{margin-left:0}.footer-name{margin-left:0}.footer-name{display:block}.theme-button{font-size:13px}}
@media(max-width:360px){h1{font-size:56px}.eyebrow{font-size:11px}.slash{margin:0}.camera-top,.camera-bottom{font-size:11px;padding:12px}.camera-separator{margin:0 4px}figcaption{flex-direction:column;gap:4px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

[hidden]{display:none!important}
.camera-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 600ms ease,visibility 600ms;pointer-events:none}
.camera-slide.is-active{opacity:1;visibility:visible}
.slideshow-bar{display:flex;align-items:stretch;justify-content:space-between;gap:12px;border-bottom:1px solid var(--rule);padding:8px 0}
.slide-selectors{display:flex;gap:20px;min-width:0}
.slide-selector{display:flex;align-items:center;gap:8px;padding:0 4px;min-height:44px;font-size:11px;color:var(--muted);background:none;border:0;border-bottom:2px solid transparent;border-radius:0}
.slide-selector span{font-family:Inter,sans-serif;font-size:12.5px}
.slide-selector[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--ink)}
.playback-button{display:flex;justify-content:center;align-items:center;flex-shrink:0;width:44px;min-height:44px;padding:0;border:1px solid var(--rule);border-radius:3px;background:transparent}
.playback-button svg{width:23px;height:23px}
.playback-button .play-icon,.playback-button.is-paused .pause-icon{display:none}
.playback-button.is-paused .play-icon{display:block}
@media(max-width:400px){.slide-selectors{gap:8px}.slide-selector{gap:4px}.slide-selector span{font-size:12.5px}}
@media(prefers-reduced-motion:reduce){.camera-slide{transition:none}}
