/* Supporting pages for the approved photographic homepage.
   Layout contracts and interaction owners remain unchanged. */
:root{
 --site-paper:#f5f4f0;--site-panel:#e9e9e5;--site-white:#fff;--site-ink:#20252b;--site-muted:#60666c;--site-line:#d4d5d1;--site-yellow:#ffcf32;--site-accent:#80600b;
 --site-font:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
 --site-gutter:clamp(24px,5vw,72px);--nav-height:68px;
 --signal-bg:#151516;--signal-panel:#252527;--signal-text:#f5f5f7;--signal-muted:#b1b1b6;--signal-line:#424245;--signal-yellow:#ffcf32;--signal-gutter:var(--site-gutter);
 color-scheme:light;
}
html{background:var(--site-paper);scroll-padding-top:calc(var(--nav-height) + 24px)}
body.signal-inner{
 --d-bg:var(--site-paper);--d-panel:var(--site-panel);--d-raised:var(--site-white);--d-line:var(--site-line);--d-line-strong:#aeb4b8;
 --d-ink:var(--site-ink);--d-ink-2:var(--site-muted);--d-ink-3:var(--site-muted);--d-amber:var(--site-yellow);--d-amber-hi:#ffdc65;--d-on-amber:#151515;--d-amber-glow:transparent;
 --d-display:var(--site-font);--d-text:var(--site-font);--d-radius:24px;
 --paper:var(--site-paper);--paper-raised:var(--site-panel);--paper-sunk:#dddeda;--ink:var(--site-ink);--ink-secondary:var(--site-muted);--ink-tertiary:var(--site-muted);--hairline:var(--site-line);--amber:var(--site-accent);--amber-on:white;
 --font-display:var(--site-font);--font-body:var(--site-font);--r-shot:24px;--r-card:24px;--r-control:12px;
 background:var(--site-paper);color:var(--site-ink);font-family:var(--site-font);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased;
}
.signal-inner .page{background:var(--site-paper)}
.signal-inner .wrap,.signal-inner .dk-wrap{width:min(1120px,calc(100% - 2 * var(--site-gutter)));max-width:1120px}
.signal-inner main{min-width:0}
.signal-inner h1,.signal-inner .af-section h1{font:650 clamp(44px,6.4vw,84px)/1.05 var(--site-font)!important;letter-spacing:-.055em!important;text-transform:none;text-wrap:balance;max-width:20ch}
.signal-inner h2,.signal-inner .af-section h2{font-family:var(--site-font);font-weight:650;line-height:1.12;letter-spacing:-.04em;text-wrap:balance}
.signal-inner h3{font-family:var(--site-font);font-weight:650;letter-spacing:-.025em;line-height:1.25}
.signal-inner .lead,.signal-inner .dk-lead{font-size:clamp(20px,2vw,26px);line-height:1.5;letter-spacing:-.02em;color:var(--ink-secondary);max-width:760px}
.signal-inner p,.signal-inner li{line-height:1.65}
.signal-inner p strong,.signal-inner li strong{color:var(--ink);font-weight:650}
.signal-inner .af-section{padding-block:88px;border-top:0}
.signal-inner .af-section.af-compact{padding-block:54px}
.signal-inner .section--raised,.signal-inner .af-accent{background:var(--site-panel)}
.signal-inner .af-dark{background:#101c2b;--paper:#101c2b;--paper-raised:#24475d;--paper-sunk:#182b3d;--ink:#f5f7fa;--ink-secondary:#b9c7d3;--ink-tertiary:#b9c7d3;--amber:#ffcf32;--hairline:#ffffff30;color:var(--ink)}
.signal-inner .af-dark :is(h1,h2,h3){color:var(--ink)}
.signal-inner .af-dark :is(p,li,figcaption,.lead){color:var(--ink-secondary)}
.signal-inner .btn,.signal-inner .dk-btn{border-radius:999px!important;box-shadow:none!important;min-height:48px;padding:12px 24px;font-family:var(--site-font);font-weight:600;line-height:1.3;white-space:normal;text-align:center}
.signal-inner .btn--primary,.signal-inner .af-section .btn--primary,.signal-inner .dk-btn--primary{background:var(--site-yellow);color:#151515;border-color:transparent}
.signal-inner .btn--primary:hover,.signal-inner .af-section .btn--primary:hover,.signal-inner .dk-btn--primary:hover{background:#ffdc65;color:#151515}
.signal-inner :is(input,textarea,select){background:white;color:var(--site-ink);border-color:#9da5aa;border-radius:12px;font-family:var(--site-font);font-size:16px}
.signal-inner ::placeholder{color:#646b70;opacity:1}
.signal-inner :is(input,select,textarea,button,a,summary):focus-visible{outline:3px solid #8b650a;outline-offset:4px}
.signal-inner .af-dark :focus-visible{outline-color:var(--site-yellow)}
.signal-inner .af-reading{--measure:72ch}
.signal-inner .af-reading article{min-width:0}
.signal-inner .af-reading :is(p,li){max-width:72ch}
.signal-inner .af-section.af-article h1{font-size:clamp(36px,4.6vw,60px)!important;line-height:1.1!important}
.signal-inner .af-section.af-article nav{background:#e8ebea;border:0;border-radius:18px;padding:24px;position:sticky!important;top:calc(var(--nav-height) + 24px)!important;font-size:15px}
.signal-inner .af-article article>h2{font-size:28px;line-height:1.2;letter-spacing:-.025em}
.signal-inner .af-reference-intro{background:#e6e9eb;padding-top:80px;padding-bottom:60px}
.signal-inner .af-reference-intro h1{max-width:22ch}
.signal-inner .af-table th{background:#e1e5e6}
.signal-inner table{border-color:var(--site-line);max-width:100%}
.signal-inner img[src$='/signature.png']{filter:none;opacity:1}
/* Identical visual language to the homepage, with the existing 700px menu contract. */
.site-header{background:rgb(16 16 17 / .96);color:#f5f5f7;border-bottom:1px solid #ffffff20;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.site-header .header-inner{max-width:1440px;height:68px;padding:10px 40px;gap:26px}
.site-header .brand,.release-footer .brand{color:#f5f5f7;font-size:26px;gap:10px}
.site-header .brand img{width:30px;height:30px}
.site-header .brand span{font-family:AfinarWordmark,Georgia,serif;letter-spacing:-.025em}
.site-header nav{gap:24px;font:500 12px/1.4 var(--site-font)}
.site-header nav a{color:#f5f5f7}.site-header nav a:hover,.site-header nav a[aria-current]{color:#ffcf32}
.site-header .header-download{border:0;border-radius:999px;background:#ffcf32;color:#151515;padding:8px 16px;min-height:34px;font:600 12px/1.3 var(--site-font)}
.site-header .header-download:hover{background:#ffdc65;color:#151515}.site-header .header-download .fi{display:none}
.site-header .menu-button{color:#f5f5f7;min-height:44px;min-width:44px}.site-header .lang-button{color:#f5f5f7;font:500 12px/1.3 var(--site-font)}
.site-header .lang-list{background:#252527;border-radius:12px}.site-header .lang-list a{color:#f5f5f7}
.lang-bar a{background:#ffcf32;color:#151515;border-radius:999px}.lang-bar-inner{max-width:1280px}
.release-footer{max-width:none;background:#151516;color:#f5f5f7;padding:55px max(24px,calc((100vw - 1100px)/2)) 30px;font:400 13px/1.6 var(--site-font)}
.release-footer-top{border:0;margin-bottom:36px;padding-bottom:0}.release-footer-top p{font:400 11px/1.5 var(--site-font);letter-spacing:.1em;color:#a1a1a6}
.release-footer .release-footer-links h2{font:600 13px/1.4 var(--site-font);letter-spacing:0;text-transform:none;color:#f5f5f7;max-width:none}
.release-footer-links a,.release-footer-links button{font:400 13px/1.6 var(--site-font);color:#b1b1b6;padding-block:5px}
.release-footer a:hover,.release-footer button:hover{color:white}.release-footer-bottom{border-color:#38383b;color:#b1b1b6;font-size:12px}
/* Teachers: an expansive introduction, honest photography and readable chapters. */
body[data-site-page=teachers] .tc-hero{background:#ece2d0;text-align:center;padding-top:80px;padding-bottom:70px}
.tc-hero h1,.tc-hero .lead{margin-inline:auto}.tc-hero .tc-actions{justify-content:center}
.signal-inner .tc-eyebrow{font:600 13px/1.4 var(--site-font);letter-spacing:.06em;color:#705933}
.signal-inner .tc-photo{margin-top:50px}.signal-inner .tc-photo img{aspect-ratio:16/9;border-radius:24px}
.signal-inner .tc-steps{gap:36px}.signal-inner .tc-steps>div{padding:28px;background:#e6e9eb;border-radius:22px}
.signal-inner .tc-key{font-family:var(--site-font);font-weight:600;color:#6a747d}
.signal-inner .tc-list{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 60px}
.signal-inner .tc-option{background:#fafaf8;border:0;border-radius:22px;padding:28px}
.signal-inner .tc-option:last-child{background:#ecd7aa}
.signal-inner #join{background:#dce4e7}.signal-inner .tc-form{background:#f7f8f6;padding:32px;border-radius:24px;max-width:640px}
.signal-inner .tc-chips span{border-radius:999px}.signal-inner .tc-chips input:checked+span{background:#252e28;border-color:#252e28;color:white}
/* Tone photography reprises the homepage scene; all product text stays live. */
body[data-site-page=tone] main>section:first-child{background:linear-gradient(90deg,#17120feb,#17120f85),url('/assets/fcp-home/photos/tone-ac15-1536.webp') center 45%/cover;min-height:540px;display:flex;align-items:center}
body[data-site-page=tone] .tone-hero{align-items:center;gap:48px}
body[data-site-page=tone] main>section:first-child .lead{max-width:660px}
.signal-inner .t3k-art{background:linear-gradient(#17120f40,#17120f90),url('/assets/fcp-home/photos/tone-ac15-1536.webp') 65% center/cover;border-radius:24px}
.signal-inner .t3k-art svg{display:none}.signal-inner .t3k-art img{width:52%;filter:drop-shadow(0 2px 12px #0008)}
.signal-inner .t3k-steps>div{background:#e2e6e8;padding:28px;border-radius:22px}
/* Download is a clear, contained platform choice, with original URL ownership. */
.signal-inner .dk-hero{background:#e6e9eb;padding-block:80px}
.signal-inner .dk-h1{margin-inline:auto;text-align:center}.signal-inner .dk-h1 span{color:#626b72}
.signal-inner .dk-lead{text-align:center;margin-inline:auto}
.signal-inner .dk-dl-card,.signal-inner .dk-notify{background:#fff;border:0;border-radius:24px;padding:32px;box-shadow:0 12px 35px #1d2c3808}
.signal-inner .dk-dl-card .dk-note{color:#60666c}.signal-inner #notify{border-radius:24px}
.signal-inner .dk-notify input[type=email]{background:#fff;color:#20252b}
body[data-site-page=about] main>section:first-child{background:#ecd7aa;padding-top:90px;padding-bottom:65px!important}
body[data-site-page=about] main>section:nth-child(2)>.wrap>div{max-width:740px!important;margin-inline:auto}
@media(max-width:1000px){.site-header .header-inner{gap:16px;padding-inline:24px}.site-header nav{gap:16px}.signal-inner .tc-list{gap:26px 36px}}
@media(max-width:900px){.signal-inner .af-article>.wrap>nav{position:static!important;top:auto!important}.signal-inner .af-section.af-article>.wrap{grid-template-columns:1fr!important;gap:32px!important}}
@media(max-width:800px) and (min-width:701px){.site-header .header-inner{gap:12px}.site-header nav{gap:12px}.site-header nav a[href$='/teachers/']{display:none}}
@media(max-width:700px){
 :root{--nav-height:60px;--site-gutter:24px}.site-header .header-inner{height:60px;padding:8px 16px;gap:10px}.site-header .brand{font-size:24px}.site-header .brand img{width:28px;height:28px}.site-header .header-download{padding:8px 13px;font-size:12px}
 .site-header nav{top:59px;background:#161618;padding:24px;max-height:calc(100dvh - 60px);overflow-y:auto}.site-header nav.is-open .nav-langs{flex-wrap:wrap;gap:12px 20px}
 .signal-inner h1,.signal-inner .af-section h1{font-size:clamp(38px,10vw,60px)!important;overflow-wrap:break-word}
 .signal-inner h2,.signal-inner .af-section h2{font-size:32px}.signal-inner .lead,.signal-inner .dk-lead{font-size:20px}
 .signal-inner .af-section{padding-block:56px}.signal-inner .af-section.af-compact{padding-block:36px}.signal-inner .af-reference-intro{padding-top:55px;padding-bottom:45px}
 .signal-inner .af-article>.wrap>nav{padding:22px}.signal-inner .af-article article>h2{font-size:27px}
 .signal-inner .tc-list{grid-template-columns:1fr;gap:24px}.signal-inner .tc-photo{margin-top:32px}.signal-inner .tc-photo img{aspect-ratio:4/3;border-radius:18px}
 body[data-site-page=teachers] .tc-hero{padding:52px 0 45px}.signal-inner .tc-steps{gap:20px}.signal-inner .tc-steps>div,.signal-inner .t3k-steps>div{padding:24px;border-radius:18px}
 .signal-inner .tc-form{padding:24px;border-radius:18px}.signal-inner .tc-option{padding:24px;border-radius:18px}
 body[data-site-page=tone] main>section:first-child{min-height:500px;background-position:65% center}.signal-inner .tone-hero__partner img{width:160px}
 .signal-inner .dk-hero{padding-block:55px}.signal-inner .dk-dl-card,.signal-inner .dk-notify{padding:26px;border-radius:20px}
 body[data-site-page=about] main>section:first-child{padding-top:55px;padding-bottom:45px!important}
 .release-footer{padding:40px 24px 25px}.release-footer-top p{display:none}.release-footer-links{gap:24px}.release-footer-bottom{font-size:11px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.site-header,.release-footer,.lang-bar{display:none!important}.signal-inner main>section{background:white!important;color:black!important;min-height:0!important}.signal-inner .af-section{padding-block:24px}.signal-inner h1{font-size:40px!important}.signal-inner .af-dark{--ink:#111;--ink-secondary:#333}.signal-inner .af-section.af-article nav{position:static!important}}

/* The unchanged consent module relies on these tokens from the legacy theme.
   Scope them to its panel so the homepage can keep its own design system. */
body .af-consent{
 --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s7:32px;
 --paper-raised:#fbfaf7;--ink:#252b26;--ink-secondary:#555e55;--ink-tertiary:#62695f;--hairline:#c7cbc1;--r-shot:18px;--amber:#b7850b;--type-small:14px;--type-body:20px;--lh-small:1.5;--weight-medium:600;
 position:fixed;inset:auto 24px max(24px,env(safe-area-inset-bottom)) auto;z-index:1000;
 width:min(440px,calc(100vw - 48px));max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;
 padding:24px;border:1px solid #c7cbc1;border-radius:18px;background:#fbfaf7;color:#252b26;box-shadow:0 12px 48px #0004;
 font:400 14px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;text-align:left;color-scheme:light;
}
body .af-consent h2{font:650 20px/1.25 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-.02em;color:#252b26;margin:0}
body .af-consent p{margin:12px 0 0;font-size:14px;line-height:1.5;color:#555e55}
body .af-consent a{text-decoration:underline;text-underline-offset:3px;color:#3f5140}
body .af-consent__actions{margin-top:20px;gap:8px}
body .af-consent__actions .btn{display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:10px 8px;border:1px solid #aab3a4;border-radius:9px;background:#f0f2eb;color:#252b26;font:600 14px/1.3 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;white-space:normal;text-align:center;cursor:pointer}
body .af-consent__actions .btn:hover{background:#e3e8dd}
body .af-consent :is(button,a,input):focus-visible{outline:3px solid #8a660b;outline-offset:3px}
body .af-consent__choices label{align-items:start}body .af-consent__choices input{width:20px;height:20px;flex-shrink:0}body .af-consent__choices small{font-size:13px;line-height:1.45}
@media(max-width:480px){body .af-consent{inset:auto 16px max(16px,env(safe-area-inset-bottom)) 16px;width:auto;padding:20px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px - env(safe-area-inset-bottom))}body .af-consent__actions .btn{font-size:13px;padding:10px 6px}}
@media print{body .af-consent{display:none!important}}
/* Remove the former split-table framing around platform choices. */
.signal-inner .dk-dl{gap:24px;border:0;background:none}
.signal-inner .af-section+.af-section{border-top-color:var(--site-line)}
.signal-inner .tc-steps>li{padding:28px;background:#e6e9eb;border-radius:22px;list-style:none}
@media(max-width:700px){.signal-inner .dk-dl{gap:18px}.signal-inner .tc-steps>li{padding:24px;border-radius:18px}}
/* Text links use a darker amber on paper; yellow is reserved for filled CTAs. */
.signal-inner main a:not(.btn):not(.dk-btn):not(.button){color:var(--amber);text-underline-offset:4px}
