:root{
  color-scheme:light;
  --paper:#f7f3ed; --paper-2:#efe9df; --surface:#fffdf9; --ink:#26221f; --muted:#706961;
  --line:#ded5ca; --line-strong:#c8bbae; --accent:#5d3f35; --accent-2:#85695d; --soft:#e8ded3;
  --success:#42664f; --danger:#8f433c; --shadow:0 18px 55px rgba(55,42,32,.09);
  --skin:#c35f53; --hair:#5e745b; --eyes:#557b91; --forehead:#c78d49; --lips:#a95768;
  --underEye:#7e6e95; --jaw:#b66e52; --neck:#af965b; --nose:#648993;
  --radius:22px; --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
button,input,summary{font:inherit}
button,a,input,summary{outline-offset:3px}
:focus-visible{outline:2px solid var(--accent)}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
img,canvas{max-width:100%}
button{border:0}
.skip-link{position:fixed;left:12px;top:-80px;z-index:999;background:var(--ink);color:white;padding:10px 14px;border-radius:10px}.skip-link:focus{top:12px}
.siteHeader{position:sticky;top:0;z-index:100;background:rgba(247,243,237,.93);backdrop-filter:blur(14px);border-bottom:1px solid rgba(200,187,174,.72)}
.headerInner{max-width:var(--max);height:68px;margin:auto;padding:0 22px;display:flex;align-items:center;gap:26px}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;letter-spacing:.11em;font-size:14px}.brandMark{width:28px;height:28px;border-radius:50%;border:1px solid var(--ink);position:relative}.brandMark:before,.brandMark:after{content:"";position:absolute;border-radius:50%;border:1px solid var(--accent-2)}.brandMark:before{inset:5px}.brandMark:after{inset:9px;background:var(--accent)}
.mainNav{margin-left:auto;display:flex;gap:26px;align-items:center}.mainNav a{font-size:14px;text-decoration:none;color:#4f4842}.mainNav a:hover{color:var(--ink)}
.headerActions{display:flex;gap:8px;align-items:center}.analyzerHeaderActions{display:none;margin-left:auto;gap:10px;align-items:center}
.btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:11px 17px;font-weight:700;font-size:14px;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;text-decoration:none;min-height:44px}
.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn.primary{background:var(--ink);color:#fff;box-shadow:0 7px 18px rgba(38,34,31,.16)}.btn.primary:hover{background:#3a332f}.btn.secondary{background:transparent;color:var(--ink);border:1px solid var(--line-strong)}.btn.secondary:hover{background:var(--surface)}.btn.tertiary{background:transparent;color:var(--muted);padding-inline:8px}.btn:disabled{opacity:.42;cursor:not-allowed;transform:none;box-shadow:none}
.menuBtn{display:none;width:44px;height:44px;border-radius:50%;background:transparent;border:1px solid var(--line);cursor:pointer}
.mobileMenu{display:none;padding:12px 22px 18px;border-top:1px solid var(--line);background:var(--paper)}.mobileMenu a{display:block;padding:10px 2px;text-decoration:none;font-weight:650}
main{min-height:70vh}.page{display:none}.page.active{display:block}.shell{max-width:var(--max);margin:auto;padding:76px 22px}.shell.narrow{max-width:860px}.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--accent-2);margin-bottom:12px}.display{font-family:ui-serif,Georgia,Cambria,"Times New Roman",serif;font-weight:500;letter-spacing:-.035em;line-height:.98;font-size:clamp(48px,7vw,86px);margin:0}.taglineLines span{display:block;white-space:nowrap}.heroCopy .taglineLines{font-size:clamp(42px,4.6vw,58px);line-height:1.02}.pageTitle{font-family:ui-serif,Georgia,Cambria,"Times New Roman",serif;font-size:clamp(38px,5vw,62px);line-height:1.03;font-weight:500;letter-spacing:-.03em;margin:0 0 18px}.sectionTitle{font-family:ui-serif,Georgia,Cambria,"Times New Roman",serif;font-size:clamp(30px,4vw,44px);line-height:1.08;font-weight:500;letter-spacing:-.025em;margin:0 0 12px}.subTitle{font-size:19px;margin:0 0 8px}.lede{font-size:18px;line-height:1.7;color:#5c554f;max-width:760px}.muted,.small{color:var(--muted)}.small{font-size:13px;line-height:1.5}.fine{font-size:12px;color:var(--muted)}.plainMeaning{margin-top:5px;font-size:inherit;line-height:inherit;color:#5f5851}.plainMeaning strong{color:var(--ink)}.resultHeroActions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.resultHeroActions .btn{width:100%;min-height:46px;padding:10px 14px;white-space:nowrap}.resultHeroActions #printReportBtn{grid-column:1 / -1}.resultHeroActions .btn,.resultHeroActions .btn.primary,.resultHeroActions .btn.secondary,.resultHeroActions .btn.shareResult,.resultHeroActions .addPhotoResult{background:transparent!important;color:#f8f4ee!important;border:1px solid rgba(248,244,238,.58)!important;box-shadow:none!important}.resultHeroActions .btn:hover,.resultHeroActions .btn.primary:hover,.resultHeroActions .btn.secondary:hover,.resultHeroActions .btn.shareResult:hover,.resultHeroActions .addPhotoResult:hover{background:rgba(248,244,238,.10)!important;border-color:rgba(248,244,238,.82)!important}.seasonScoreExplainer{font-size:13px;line-height:1.55;color:#e2d8cf;margin:12px 0 0}.seasonEvidence{display:block!important;margin-top:8px;font-size:12px!important;line-height:1.5}.shareDialog{width:min(520px,calc(100vw - 28px));border:0;border-radius:24px;padding:0;background:var(--surface);color:var(--ink);box-shadow:0 28px 90px rgba(38,34,31,.28)}.shareDialog::backdrop{background:rgba(38,34,31,.46);backdrop-filter:blur(3px)}.shareDialogInner{padding:24px}.shareDialogHead{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.shareDialogHead h2{font-family:ui-serif,Georgia,serif;font-size:30px;font-weight:500;margin:0}.shareDialogHead p{margin:7px 0 0;color:var(--muted);font-size:14px;line-height:1.55}.dialogClose{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:transparent;cursor:pointer;font-size:20px;line-height:1}.shareOptions{display:grid;gap:9px;margin-top:20px}.shareOption{width:100%;text-align:left;border:1px solid var(--line);border-radius:16px;background:#fbf8f3;padding:14px 15px;cursor:pointer;color:var(--ink)}.shareOption:hover{background:#f2ebe3}.shareOption strong,.shareOption span{display:block}.shareOption strong{font-size:14px}.shareOption span{font-size:12px;color:var(--muted);margin-top:2px}.shareStatus{min-height:20px;margin-top:12px;font-size:12px;color:var(--success)}.startOverDialog .shareDialogInner{padding:26px}.startOverDialog .warningBox{margin-top:16px;padding:14px 15px;border-radius:15px;background:#fff7f5;border:1px solid rgba(143,67,60,.24);font-size:14px;line-height:1.6;color:#5f4a46}.dialogActions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:20px}
.hero{padding-top:84px;padding-bottom:60px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:64px;align-items:center}.heroCopy .lede{font-size:19px;max-width:690px;margin:24px 0 28px}.heroActions{display:flex;gap:10px;flex-wrap:wrap}.trustLine{display:flex;gap:22px;flex-wrap:wrap;margin-top:28px;color:#5f5750;font-size:13px}.trustLine span{display:inline-flex;align-items:center;gap:7px}.trustLine i{width:7px;height:7px;border-radius:50%;background:var(--success)}
.heroVisual{background:var(--surface);border:1px solid var(--line);border-radius:32px;box-shadow:var(--shadow);padding:28px;min-height:465px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.heroVisual:before{content:"";position:absolute;width:250px;height:250px;border-radius:50%;background:#d9b8a7;filter:blur(0);right:-55px;top:-75px;opacity:.55}.sampleCard{position:relative;z-index:1;background:rgba(255,253,249,.88);border:1px solid rgba(222,213,202,.8);border-radius:22px;padding:22px}.sampleDemoHead{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.sampleSeason{font-family:ui-serif,Georgia,serif;font-size:34px;margin:3px 0 6px}.sampleHint{font-size:11px;color:var(--muted);margin:0 0 16px;line-height:1.45}.sampleBars{display:grid;gap:12px}.sampleBar{display:grid;grid-template-columns:90px 1fr 78px;gap:10px;align-items:center;font-size:12px}.sampleBar input[type=range]{appearance:none;-webkit-appearance:none;width:100%;height:18px;background:transparent;cursor:pointer;margin:0}.sampleBar input[type=range]::-webkit-slider-runnable-track{height:4px;background:#e4ddd5;border-radius:9px}.sampleBar input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--ink);border:2px solid var(--surface);box-shadow:0 0 0 1px rgba(38,34,31,.18);margin-top:-5px}.sampleBar input[type=range]::-moz-range-track{height:4px;background:#e4ddd5;border-radius:9px}.sampleBar input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--ink);border:2px solid var(--surface);box-shadow:0 0 0 1px rgba(38,34,31,.18)}.sampleBar input[type=range]:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:999px}.sampleBar b{text-align:right;font-size:11px;line-height:1.2}.sampleSwatches{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:18px}.sampleSwatches i{aspect-ratio:1;border-radius:10px;border:1px solid rgba(38,34,31,.09);transition:background .18s ease}.samplePaletteNote{margin-top:10px;min-height:32px;line-height:1.45}
.trustStrip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper-2)}.trustGrid{max-width:var(--max);margin:auto;padding:22px;display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:26px;align-items:center}.trustGrid strong{display:block;font-size:14px}.trustGrid span{font-size:12px;color:var(--muted)}
.sectionBlock{padding:76px 0}.twoCol{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:start}.threeCol{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.editorialCard{border-top:1px solid var(--line-strong);padding:18px 0}.editorialCard .num{font-family:ui-serif,Georgia,serif;font-size:40px;color:#b5a79a}.editorialCard p{color:var(--muted);margin-bottom:0}
.routeIntro{padding-bottom:40px;border-bottom:1px solid var(--line);margin-bottom:42px}.prose{font-size:16px;color:#4f4944}.prose h2{font-family:ui-serif,Georgia,serif;font-weight:500;font-size:32px;margin:42px 0 10px}.prose h3{font-size:18px;margin:28px 0 8px}.prose p{margin:0 0 16px}.prose ul{padding-left:20px}.prose li{margin:7px 0}.callout{border-left:3px solid var(--accent);padding:4px 0 4px 18px;margin:28px 0;color:#514841}.placeholder{background:#eee6dc;padding:1px 5px;border-radius:5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}
.faqList{border-top:1px solid var(--line)}.faqItem{border-bottom:1px solid var(--line)}.faqItem summary{cursor:pointer;list-style:none;padding:20px 0;font-weight:720;display:flex;justify-content:space-between;gap:18px}.faqItem summary::-webkit-details-marker{display:none}.faqItem summary:after{content:"+";font-size:22px;font-weight:400;color:var(--accent-2)}.faqItem[open] summary:after{content:"−"}.faqItem .answer{padding:0 42px 20px 0;color:#5f5851}
/* Analyzer */
body[data-route="analyze"] .mainNav,body[data-route="analyze"] .headerActions,body[data-route="analyze"] .siteFooter{display:none}body[data-route="analyze"] .analyzerHeaderActions{display:flex}.analyzeShell{max-width:1280px;margin:auto;padding:32px 20px 72px}.analyzerIntro{display:flex;justify-content:space-between;gap:24px;align-items:end;margin:10px 0 26px}.analyzerIntro h1{font-family:ui-serif,Georgia,serif;font-size:40px;font-weight:500;letter-spacing:-.03em;margin:0}.privacyMini{max-width:520px;font-size:12px;color:var(--muted);text-align:right}.progressRail{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 24px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.progressStep{padding:13px 16px;border-right:1px solid var(--line);display:flex;gap:10px;align-items:center;font-size:12px;color:var(--muted)}.progressStep:last-child{border-right:0}.progressStep b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--paper-2);font-size:11px}.progressStep.is-active{color:var(--ink);background:#fbf8f3}.progressStep.is-active b{background:var(--ink);color:white}.progressStep.is-complete b{background:var(--success);color:white}
.analyzerGrid{display:grid;grid-template-columns:390px minmax(0,1fr);gap:18px;align-items:start}.controlPanel,.workspacePanel{background:var(--surface);border:1px solid var(--line);border-radius:22px}.controlPanel{padding:22px;position:sticky;top:88px;max-height:calc(100vh - 106px);overflow:auto}.workspacePanel{padding:18px;min-height:560px}.panelKicker{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-2);font-weight:800}.controlPanel h2{font-family:ui-serif,Georgia,serif;font-size:28px;font-weight:500;margin:4px 0 6px}.drop{border:1.5px dashed var(--line-strong);border-radius:18px;padding:20px;text-align:center;background:#fbf8f3;transition:.18s ease;margin-top:16px}.drop.drag{border-color:var(--accent);background:#f4ebe4}.drop strong{display:block;font-size:15px;margin-bottom:3px}.drop input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.uploadLabel{margin-top:13px}.photoProgress{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.photoProgressHead{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.photoPills{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.photoPill{font-size:12px;padding:6px 9px;border-radius:999px;background:var(--paper-2);border:1px solid var(--line)}.addPhotoPrompt{margin-top:14px;padding:15px;border:1px solid #cfc2b6;border-radius:16px;background:#f4ece4;display:grid;gap:8px}.addPhotoPrompt[hidden]{display:none}.addPhotoPrompt strong{font-size:14px}.addPhotoPrompt p{margin:0;color:#5f5750;font-size:13px;line-height:1.55}.addPhotoPrompt .btn{justify-self:start}.btn.danger{background:#fff7f5;color:var(--danger);border:1px solid rgba(143,67,60,.36);box-shadow:0 5px 14px rgba(143,67,60,.08)}.btn.danger:hover{background:#f9ebe8;border-color:rgba(143,67,60,.55)}
.modeSection{margin-top:18px}.modeSection h3{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin:0 0 9px}.actions{display:flex;flex-wrap:wrap;gap:7px}.controlPanel button,.zoomBar button,.candidateResult button{appearance:none;border-radius:999px;padding:9px 12px;font-weight:700;font-size:12px;background:var(--paper-2);color:var(--ink);border:1px solid var(--line);cursor:pointer;transition:.16s}.controlPanel button:hover,.zoomBar button:hover{background:#e9e0d7}.controlPanel button.active{background:var(--ink);color:white;border-color:var(--ink)}.controlPanel button:disabled,.zoomBar button:disabled{opacity:.4;cursor:not-allowed}.controlPanel #process{background:var(--ink);color:white;border-color:var(--ink);padding-inline:16px}.controlPanel #process:not(:disabled){box-shadow:0 6px 14px rgba(38,34,31,.14)}
.checkRow{display:flex;align-items:flex-start;gap:9px;margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fbf8f3;cursor:pointer}.checkRow input{accent-color:var(--accent);margin-top:3px}.checkRow strong{display:block;font-size:13px}.advancedBox{margin-top:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0}.advancedBox summary{cursor:pointer;font-weight:700;font-size:13px}.advancedBox p{margin-bottom:0}.status{margin-top:14px;padding:11px 12px;border-radius:13px;background:var(--paper-2);font-size:12px;color:#5f5750;min-height:42px}.reviewReady{margin-top:12px;padding:10px 12px;border-radius:13px;background:#edf3ee;color:#355441;font-size:12px}.toolbarRow{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px}.historyActions{display:flex;gap:6px}.dangerLink{color:var(--danger)!important;background:#fff7f5!important;border:1px solid rgba(143,67,60,.34)!important;border-radius:999px!important;padding:10px 15px!important;font-weight:750!important}.dangerLink:hover{background:#f9ebe8!important}
.workspaceHeader{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:4px 4px 14px}.workspaceHeader h3{margin:0 0 3px;font-size:17px}.legend{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.legend span{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:4px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.zoomBar{display:none;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 10px}.zoomReadout{font-size:11px;color:var(--muted);min-width:42px;text-align:center}.zoomBar button{min-width:36px;padding:7px 10px;background:var(--paper)}#previewWrap,#candidatePreviewWrap{border-radius:16px;overflow:auto;border:1px solid var(--line);background:#2c2926;display:none;position:relative;max-height:72vh;min-height:280px}#preview,#candidatePreview{display:block;width:100%;height:auto;cursor:crosshair;touch-action:none;max-width:none}.emptyWorkspace{min-height:490px;display:grid;place-items:center;text-align:center;padding:40px;color:var(--muted)}.emptyWorkspaceIcon{width:86px;height:106px;border:1px solid var(--line-strong);border-radius:42px 42px 32px 32px;margin:auto auto 18px;position:relative}.emptyWorkspaceIcon:before,.emptyWorkspaceIcon:after{content:"";position:absolute;border-radius:50%;background:#d6c5b8;width:18px;height:18px;top:35px}.emptyWorkspaceIcon:before{left:17px}.emptyWorkspaceIcon:after{right:17px}.emptyWorkspace.hidden{display:none!important}.workspaceTip{font-size:12px;color:var(--muted);margin-top:10px}
.selectionReview{margin-top:16px;border-top:1px solid var(--line);padding-top:14px}.selectionReview summary{cursor:pointer;font-weight:700;font-size:13px}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.metric{border:1px solid var(--line);border-radius:12px;padding:9px;background:#fbf8f3}.requirement{display:flex;gap:7px;align-items:start}.requirement i{width:7px;height:7px;border-radius:50%;margin-top:5px;background:#b7ada3}.requirement.done i{background:var(--success)}.requirement strong{display:block;font-size:11px}.requirement span{font-size:10px;color:var(--muted)}
/* Results */
#results.hidden,#analysis.hidden,#hairTester.hidden{display:none}.resultWrap{max-width:1180px;margin:56px auto 0}.resultHero{background:var(--ink);color:#f8f4ee;border-radius:28px;padding:36px;display:grid;grid-template-columns:1.15fr .85fr;gap:34px}.resultHero .eyebrow{color:#c9b9ad}.season{font-family:ui-serif,Georgia,serif;font-size:clamp(52px,7vw,78px);line-height:1;font-weight:500;letter-spacing:-.04em;margin:6px 0 12px}.resultHero #why{font-size:15px;line-height:1.7;color:#d7cdc5;max-width:700px}.seasonScorePanel{align-self:end;border-top:1px solid rgba(255,255,255,.2);padding-top:16px}.seasonScorePanel strong{font-size:24px;display:block}.seasonScoreTrack{height:6px;background:rgba(255,255,255,.13);border-radius:99px;margin:10px 0;overflow:hidden}.seasonScoreTrack i{display:block;height:100%;width:var(--season-score,0%);background:#e3d3c5;border-radius:inherit}.seasonScorePanel>span{font-size:11px;color:#bfb3aa}.topPersonalColors{margin-top:20px;padding-top:17px;border-top:1px solid rgba(255,255,255,.18)}.topPersonalColorsHead{display:flex;justify-content:space-between;gap:14px;align-items:baseline;margin-bottom:10px}.topPersonalColorsHead strong{font-size:13px}.topPersonalColorsHead span{font-size:10px;color:#bfb3aa;text-align:right}.topPersonalColorsGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.topPersonalColor{min-width:0;border:1px solid rgba(255,255,255,.18);border-radius:13px;padding:7px;background:rgba(255,255,255,.035)}.topPersonalColor i{display:block;height:52px;border-radius:9px;border:1px solid rgba(255,255,255,.15);box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.topPersonalColor b{display:block;font-size:11px;line-height:1.25;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topPersonalColor small{display:block;font-size:9px;color:#bfb3aa;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;margin-top:2px}
.resultSection{padding:48px 0;border-bottom:1px solid var(--line)}.resultSection h2{font-family:ui-serif,Georgia,serif;font-size:32px;font-weight:500;margin:0 0 10px}.resultSection .sectionLead{color:var(--muted);margin:0 0 26px;font-size:14px;line-height:1.65}.resultSection p{font-size:14px;line-height:1.65}.resultSection .fine{font-size:13px;line-height:1.55}.dimensionGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.dimension{padding:15px 0;border-top:1px solid var(--line)}.dimensionHead{display:flex;justify-content:space-between;gap:10px;font-size:13px}.dimensionHead strong{font-size:15px}.meterLabels{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-top:9px}.meter{height:4px;background:#ddd4ca;border-radius:20px;position:relative;margin-top:6px}.meter:after{content:"";position:absolute;left:var(--meter,50%);top:50%;width:13px;height:13px;border-radius:50%;background:var(--ink);transform:translate(-50%,-50%);box-shadow:0 0 0 3px var(--paper)}
.palette{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:14px}.chip{aspect-ratio:1;border-radius:16px;border:1px solid rgba(38,34,31,.1);position:relative;overflow:hidden;cursor:pointer;padding:0;min-width:0}.chip span{position:absolute;left:5px;right:5px;bottom:5px;padding:4px 5px;border-radius:8px;font-size:9px;text-align:center;background:rgba(25,22,20,.72);color:#fff;line-height:1.15}.paletteActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.compactSwatches{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.compactSwatch{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:6px 10px 6px 6px;background:var(--surface);font-size:12px}.compactSwatch i{width:28px;height:28px;border-radius:50%;border:1px solid rgba(38,34,31,.1)}.resultCards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.resultCard{padding:21px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.resultCard h3{font-size:14px;margin:0 0 7px}.resultCard p{font-size:14px;color:var(--muted);margin:0;line-height:1.65}.occasionGrid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:22px}.occasionDetails{border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}.occasionDetails summary{list-style:none;cursor:pointer;padding:17px 18px;display:grid;grid-template-columns:46px 1fr auto;gap:13px;align-items:center}.occasionDetails summary::-webkit-details-marker{display:none}.occasionPreview{width:46px;height:46px;border-radius:13px;border:1px solid rgba(38,34,31,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}.occasionSummaryText strong,.occasionSummaryText span{display:block}.occasionSummaryText strong{font-size:14px}.occasionSummaryText span{font-size:13px;color:var(--muted);margin-top:2px}.occasionToggle{font-size:13px;color:var(--accent-2);white-space:nowrap}.occasionToggle:after{content:'View palette'}.occasionDetails[open] .occasionToggle:after{content:'Hide palette'}.occasionBody{border-top:1px solid var(--line);padding:22px}.occasionExpandedLayout{display:grid;grid-template-columns:minmax(250px,.78fr) minmax(0,1.42fr);gap:26px;align-items:start}.occasionPalette{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.occasionColor{min-width:0}.occasionColor i{display:block;aspect-ratio:1.15;border-radius:12px;border:1px solid rgba(38,34,31,.11);margin-bottom:7px}.occasionColor strong{display:block;font-size:12px;line-height:1.3}.occasionColor span{display:block;font-size:11px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;margin-top:2px}.occasionWhy{font-size:14px;line-height:1.68;color:#5c554f;margin:0}.occasionWhy strong{color:var(--ink)}.candidateScoreHero{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:7px}.recommendationBadge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;border:1px solid var(--line)}.recommendationBadge.yes{color:var(--success);border-color:rgba(66,102,79,.35);background:rgba(66,102,79,.08)}.recommendationBadge.no{color:var(--danger);border-color:rgba(143,67,60,.32);background:rgba(143,67,60,.07)}
.alternateFeatured{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.alternateFeatured strong{font-family:ui-serif,Georgia,serif;font-size:28px;font-weight:500}.alternateFeatured span{display:block;color:var(--muted);font-size:12px}.alternates{margin-top:10px}.alternateRow{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-top:1px solid var(--line)}.alternateRow strong,.alternateRow span{display:block}.alternateRow strong{font-size:11px;color:var(--muted)}.alternateRow span{font-size:13px}.alternateScore{text-align:right}.alternateScore b{display:block;font-size:14px}.alternateScore small{color:var(--muted)}
.analysisCols{display:grid;grid-template-columns:1fr 1fr;gap:18px}.whyResultStack{display:grid;grid-template-columns:1fr;gap:18px}.whyResultStack .subcard{min-width:0}.technicalCards{grid-template-columns:repeat(3,minmax(0,1fr))}.subcard{border:1px solid var(--line);border-radius:18px;padding:22px;background:var(--surface)}.subcard h3{font-size:15px;margin:0 0 12px}.humanCopy{font-size:14px;line-height:1.68;color:#524b45}.humanCopy p{margin:0 0 13px}.interactionGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.interactionGrid[data-count="5"]{grid-template-columns:repeat(6,minmax(0,1fr))}.interactionGrid[data-count="5"] .interactionCard:nth-child(-n+3){grid-column:span 2}.interactionGrid[data-count="5"] .interactionCard:nth-child(n+4){grid-column:span 3}.interactionCard{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fbf8f3;font-size:14px;line-height:1.65;display:flex;flex-direction:column;min-width:0}.interactionCard .small,.interactionCard .plainMeaning{font-size:14px;line-height:1.65}.interactionCard>span:first-child{font-weight:750;color:var(--ink)}.interactionCard b{display:block;font-size:17px;margin:5px 0 4px}.interactionCard .plainMeaning{margin-top:auto;padding-top:8px}.hairSuggestions{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.hairSuggestion{border:1px solid var(--line);border-radius:15px;padding:12px;background:#fbf8f3}.hairSuggestion strong{display:block;margin:3px 0}.hairMeta{font-size:10px;color:var(--muted);text-transform:capitalize}.fitBadge{display:inline-block;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:800;border:1px solid var(--line)}.avgBox{display:flex;align-items:center;gap:9px}.avgSwatch{width:38px;height:38px;border-radius:11px;border:1px solid rgba(38,34,31,.12)}
.technicalDisclosure{margin-top:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.technicalDisclosure>summary{cursor:pointer;font-weight:750;padding:16px 0;list-style:none}.technicalDisclosure>summary::-webkit-details-marker{display:none}.technicalDisclosure>summary:after{content:"+";float:right}.technicalDisclosure[open]>summary:after{content:"−"}.technicalBody{padding:0 0 28px}.regionGrid{display:grid;grid-template-columns:1fr;gap:9px}.regionCard{border:1px solid var(--line);border-radius:15px;background:var(--surface);overflow:hidden}.regionCard summary{list-style:none;cursor:pointer;padding:13px;display:flex;align-items:center;gap:9px}.regionCard summary::-webkit-details-marker{display:none}.regionCard summary:after{content:'▾';margin-left:auto;color:var(--muted);transition:.15s transform}.regionCard[open] summary:after{transform:rotate(180deg)}.regionSwatch{width:22px;height:22px;border-radius:7px;border:1px solid rgba(38,34,31,.12)}.summaryMeta{color:var(--muted);font-size:10px}.detailBody{padding:13px;border-top:1px solid var(--line);overflow-x:auto}.groupTable{width:100%;border-collapse:collapse;margin-top:12px;font-size:11px}.groupTable th,.groupTable td{padding:8px 6px;border-top:1px solid var(--line);text-align:left;vertical-align:middle}.groupTable th{color:var(--muted);font-weight:700}.groupColor{width:24px;height:24px;border-radius:7px;border:1px solid rgba(38,34,31,.12);display:inline-block;vertical-align:middle;margin-right:6px}.shapeTags{display:flex;flex-wrap:wrap;gap:6px}.shapeTag{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:999px;border:1px solid var(--line);font-size:10px}.shapeTag i{width:8px;height:8px;border-radius:50%}
#hairTester{margin-top:20px}.hairTestGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.candidateResult{padding:16px;border-radius:16px;background:#fbf8f3;border:1px solid var(--line)}#candidateDrop{display:flex;flex-direction:column;align-items:center;gap:4px}#candidateDrop .small{display:block;max-width:320px}#candidateDrop .uploadLabel{margin-top:10px;flex:0 0 auto}
.notice{margin-top:18px;padding:14px 16px;border-radius:14px;border:1px solid var(--line);background:#fbf8f3;color:#5c544e}.loadingOverlay{display:none;position:fixed;inset:0;z-index:500;background:rgba(247,243,237,.88);backdrop-filter:blur(6px);place-items:center;text-align:center}.is-analyzing .loadingOverlay{display:grid}.loaderRing{width:54px;height:54px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--ink);animation:spin .8s linear infinite;margin:0 auto 14px}@keyframes spin{to{transform:rotate(360deg)}}
.printBrandHeader{display:none}.siteFooter{border-top:1px solid var(--line);background:var(--paper-2)}.footerInner{max-width:var(--max);margin:auto;padding:52px 22px 24px}.footerGrid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:42px}.footerGrid h3{font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px}.footerGrid a{display:block;text-decoration:none;color:#5a534d;font-size:13px;margin:8px 0}.footerBrand p{max-width:320px;color:var(--muted);font-size:13px}.footerBottom{border-top:1px solid var(--line);margin-top:36px;padding-top:18px;font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:12px}
@media(max-width:1000px){.hero{grid-template-columns:1fr;gap:36px}.heroVisual{min-height:390px}.trustGrid{grid-template-columns:1fr 1fr}.analyzerGrid{grid-template-columns:330px minmax(0,1fr)}.resultCards{grid-template-columns:1fr 1fr}.hairSuggestions{grid-template-columns:1fr 1fr}.footerGrid{grid-template-columns:1.2fr 1fr 1fr}.footerGrid>div:last-child{grid-column:2}}
@media(max-width:900px){.occasionExpandedLayout{grid-template-columns:1fr}.occasionPalette{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:780px){.mainNav,.headerActions{display:none}.menuBtn{display:grid;place-items:center;margin-left:auto}.mobileMenu.open{display:block}.shell{padding:54px 18px}.hero{padding-top:58px}.display{font-size:clamp(46px,14vw,68px)}.trustGrid{grid-template-columns:1fr}.twoCol,.threeCol{grid-template-columns:1fr}.analyzeShell{padding:20px 12px 58px}.analyzerIntro{display:block}.privacyMini{text-align:left;margin-top:8px}.progressRail{grid-template-columns:1fr 1fr}.progressStep:nth-child(2){border-right:0}.progressStep:nth-child(-n+2){border-bottom:1px solid var(--line)}.analyzerGrid{grid-template-columns:1fr}.controlPanel{position:static;max-height:none}.workspacePanel{min-height:430px}.resultHero{grid-template-columns:1fr;padding:26px 20px}.dimensionGrid,.analysisCols,.technicalCards,.hairTestGrid{grid-template-columns:1fr}.palette{grid-template-columns:repeat(4,1fr)}.resultCards{grid-template-columns:1fr 1fr}.occasionGrid{grid-template-columns:1fr}.regionGrid{grid-template-columns:1fr}.footerGrid{grid-template-columns:1fr 1fr}.footerGrid>div:last-child{grid-column:auto}body[data-route="analyze"] .menuBtn{display:none}.analyzerHeaderActions .btn.secondary{display:none}}
@media(max-width:520px){.resultHeroActions{grid-template-columns:1fr}.resultHeroActions #printReportBtn{grid-column:auto}.occasionPalette{grid-template-columns:repeat(2,1fr)}.headerInner{height:62px;padding:0 14px}.brand{font-size:12px}.brandMark{width:25px;height:25px}.heroActions .btn{width:100%}.trustLine{display:grid;gap:8px}.sampleBar{grid-template-columns:75px 1fr 48px}.sampleSwatches{grid-template-columns:repeat(4,1fr)}.progressRail{grid-template-columns:1fr}.progressStep{border-right:0;border-bottom:1px solid var(--line)!important}.progressStep:last-child{border-bottom:0!important}.workspaceHeader{display:block}.legend{justify-content:flex-start;margin-top:8px}.metrics{grid-template-columns:1fr}.palette{grid-template-columns:repeat(3,1fr)}.resultCards,.occasionGrid{grid-template-columns:1fr}.hairSuggestions{grid-template-columns:1fr}.alternateFeatured{align-items:flex-start;display:block}.alternateFeatured div:last-child{margin-top:8px}.footerGrid{grid-template-columns:1fr}.footerBottom{display:block}.footerBottom span{display:block;margin-top:6px}.analyzerHeaderActions .btn{padding:9px 12px}.privacyMini{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
@media print{
  *,*::before,*::after{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  .siteHeader,.siteFooter,.paletteActions,.resultHeroActions,.analyzerIntro,.progressRail,.analyzerGrid,.loadingOverlay{display:none!important}
  .printBrandHeader{display:flex!important;justify-content:space-between;align-items:baseline;border-bottom:1px solid #ccc;padding:0 0 16px;margin:0 0 22px}.printBrandHeader strong{font-size:14px;letter-spacing:.12em}.printBrandHeader span{font-size:12px;color:#555}
  body{background:white!important;color:#111}
  .page{display:none!important}#page-analyze{display:block!important}
  .resultWrap{margin:0}.resultHero{background:#fff!important;color:#111;border:1px solid #ccc}.resultHero #why,.seasonScorePanel span{color:#444}
  .resultSection,.subcard,.regionCard,.interactionCard,.hairSuggestion,.alternateFeatured,.occasionDetails{break-inside:avoid}
  .technicalDisclosure{display:block!important}.technicalDisclosure>summary{display:block!important;padding:14px 0;border-bottom:1px solid #ddd}.technicalBody{display:block!important}
  details[open]>.detailBody,details[open]>.technicalBody,details[open]>.answer{display:block!important}
  .chip,.compactSwatch i,.occasionPreview,.occasionColor i,.avgSwatch,.regionSwatch,.groupColor{
    -webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14)!important
  }
  #palette{grid-template-columns:repeat(4,1fr)!important}.chip{min-height:92px!important}
}

/* 2026 consumer-product polish pass */
:root{--paper-3:#f2ece4;--surface-strong:#fffaf4;--ink-soft:#423a35;--accent-soft:#dbc9bb;--focus:#6c4a3d}
body{background:var(--paper);text-rendering:optimizeLegibility}
.siteHeader{box-shadow:0 1px 0 rgba(38,34,31,.02)}
.headerInner{height:70px}
.brand span:last-child{position:relative;top:1px}
.mainNav a{position:relative;padding:24px 0}.mainNav a:after{content:"";position:absolute;left:0;right:0;bottom:15px;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:center;transition:transform .18s ease}.mainNav a:hover:after,.mainNav a:focus-visible:after{transform:scaleX(1)}
.btn.primary{letter-spacing:.005em}.btn.secondary{background:rgba(255,253,249,.38)}
.hero{min-height:690px}.heroCopy{padding:18px 0}.heroCopy .display{max-width:760px}.heroCopy .lede{max-width:650px}
.heroVisual{min-height:500px;padding:30px;background:var(--surface-strong)}
.heroVisual:before{width:220px;height:220px;right:-42px;top:-54px;background:#d4ad98}.heroVisual:after{content:"";position:absolute;width:130px;height:130px;border-radius:50%;left:-54px;bottom:-30px;border:28px solid #d8c9b9;opacity:.55}
.sampleCard{box-shadow:0 16px 40px rgba(55,42,32,.07)}
.trustGrid{padding-top:24px;padding-bottom:24px}.trustGrid>div{padding-left:18px;border-left:1px solid var(--line-strong)}.trustGrid>div:first-child{padding-left:0;border-left:0}
.homeIntro{padding-top:86px}.homeSectionHead{max-width:790px;margin-bottom:32px}.homeSectionHead .lede{margin-bottom:0}
.routeIntro{position:relative}.routeIntro:after{content:"";position:absolute;left:0;bottom:-1px;width:92px;height:1px;background:var(--accent)}
.prose{max-width:760px}.prose h2{scroll-margin-top:100px}.prose .legalNote{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:16px 18px;color:#5d554e;margin:18px 0 30px;font-size:13px}
.photoTipsGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:30px 0}.tipPanel{border:1px solid var(--line);border-radius:20px;background:var(--surface);padding:22px}.tipPanel h2{font-family:ui-serif,Georgia,serif;font-size:27px;font-weight:500;margin:0 0 12px}.tipPanel ul{margin:0;padding-left:19px;color:#58514b}.tipPanel li{margin:8px 0}.samplingCheat{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:18px}.samplingCheat div{border-top:1px solid var(--line);padding:13px 0}.samplingCheat strong{display:block;font-size:13px}.samplingCheat span{font-size:12px;color:var(--muted)}
.controlPanel{scrollbar-width:thin}.controlPanel h2{line-height:1.08}.drop{padding:24px 20px}.drop:before{content:"↑";display:grid;place-items:center;width:48px;height:48px;border-radius:50%;margin:0 auto 13px;background:var(--paper-2);border:1px solid var(--line);font-size:22px;color:var(--accent)}.drop strong{font-size:16px}.drop .small{display:block;margin-top:3px}.uploadPrivacy{display:flex;gap:8px;align-items:flex-start;margin-top:11px;font-size:11px;color:var(--muted);line-height:1.5}.uploadPrivacy svg{flex:0 0 15px;margin-top:1px}.uploadPrivacy strong{color:var(--ink);font-size:11px;display:inline}
.taskCue{display:flex;gap:13px;align-items:flex-start;padding:14px 15px;margin:0 0 13px;border:1px solid #d8cabd;background:#f8f1e9;border-radius:15px}.taskCueIcon{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:var(--ink);color:#fff;font-size:12px;font-weight:800}.taskCue strong{display:block;font-size:13px}.taskCue span{display:block;font-size:12px;color:#655c54;line-height:1.5;margin-top:2px}
.modeSection h3{display:flex;align-items:center;justify-content:space-between}.modeSection h3:after{content:"Required";font-size:9px;letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--line);padding:3px 6px;border-radius:99px;color:var(--muted)}.modeSection.flexible h3:after{content:"Choose any 2"}.advancedBox summary{display:flex;align-items:center;justify-content:space-between}.advancedBox summary:after{content:"Optional";font-size:9px;letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--line);padding:3px 6px;border-radius:99px;color:var(--muted)}
.reviewReady{border:1px solid rgba(66,102,79,.18)}
.status{border:1px solid transparent}.status:empty{display:none}
.workspacePanel{box-shadow:0 12px 38px rgba(55,42,32,.04)}
.resultHero{box-shadow:0 20px 50px rgba(38,34,31,.12)}.resultSection{scroll-margin-top:86px}.resultSection>h2,.resultSection>div>h2{letter-spacing:-.02em}.chip{transition:transform .15s ease,box-shadow .15s ease}.chip:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(38,34,31,.10)}.chip:focus-visible{outline-color:#fff;box-shadow:0 0 0 3px var(--focus)}
.paletteUtilityNote{font-size:11px;color:var(--muted);margin-top:8px}.actionNotice{font-size:12px;color:var(--success);min-height:18px;margin-top:8px}
.footerBrand .brand{margin-bottom:5px}.siteFooter a:hover{text-decoration:underline}
@media(max-width:1000px){}
@media(max-width:780px){.hero{min-height:auto}.trustGrid>div{padding:14px 0;border-left:0;border-top:1px solid var(--line-strong)}.trustGrid>div:first-child{border-top:0}.photoTipsGrid,.samplingCheat{grid-template-columns:1fr}.taskCue{margin-top:4px}}
@media(max-width:520px){.heroCopy .taglineLines,.philosophyFinal p.taglineLines{font-size:clamp(26px,8.1vw,36px)}.heroVisual{min-height:430px;padding:20px}.sampleCard{padding:18px}}

/* Brand philosophy + launch-ready content */
.mobileMenu .mobilePrimaryCta{margin-top:10px;display:flex;color:#fff;background:var(--ink);padding:11px 17px}
.homePhilosophy{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;align-items:start;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.homePhilosophyCopy{max-width:570px;padding-top:6px}.homePhilosophyCopy p{font-size:16px;line-height:1.7;color:#5c554f;margin:0 0 14px}.homePhilosophyCopy strong{color:var(--ink)}.homePhilosophyCopy a{font-weight:750;text-decoration:none;border-bottom:1px solid var(--line-strong);padding-bottom:2px}
.philosophyPage{max-width:900px}.philosophyHero{padding-bottom:46px;margin-bottom:0}.philosophyHero .lede strong{color:var(--ink)}.philosophyProse{font-size:17px;line-height:1.76;color:#514a44}.philosophyProse>p{max-width:760px}.philosophyLead{font-size:20px!important;line-height:1.68!important;color:var(--ink)!important}.featureSentence{font-family:ui-serif,Georgia,serif;font-size:28px!important;line-height:1.35!important;color:var(--ink)!important;margin:28px 0!important}.coefficientMoment{margin:54px 0;padding:30px 0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}.coefficientEquation{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;font-weight:800;letter-spacing:.08em;font-size:13px;text-align:center}.coefficientEquation span{padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.coefficientEquation b{font-family:ui-serif,Georgia,serif;font-size:38px;font-weight:400;color:var(--accent-2)}.coefficientMoment p{font-size:13px;color:var(--muted);text-align:center;margin:14px auto 0;max-width:620px}.philosophySection{padding:52px 0;border-bottom:1px solid var(--line)}.philosophySection h2{font-family:ui-serif,Georgia,serif;font-size:clamp(32px,4vw,46px);font-weight:500;line-height:1.08;letter-spacing:-.025em;margin:0 0 18px;color:var(--ink)}.philosophySection p{max-width:760px}.philosophyFinal{padding:64px 0 14px;text-align:center}.philosophyFinal p{font-family:ui-serif,Georgia,serif;font-size:clamp(34px,5vw,54px);line-height:1.08;color:var(--ink);margin:0 auto 24px;max-width:760px}.faqEndCta{margin-top:38px;padding:26px;border:1px solid var(--line);border-radius:20px;background:var(--surface);display:flex;justify-content:space-between;align-items:center;gap:18px}.faqEndCta p{margin:0;font-weight:700}
@media(max-width:1000px){.interactionGrid[data-count="5"]{grid-template-columns:repeat(2,minmax(0,1fr))}.interactionGrid[data-count="5"] .interactionCard:nth-child(-n+3),.interactionGrid[data-count="5"] .interactionCard:nth-child(n+4){grid-column:auto}.interactionGrid[data-count="5"] .interactionCard:last-child{grid-column:1/-1}}
@media(max-width:780px){.homePhilosophy{grid-template-columns:1fr;gap:18px}.coefficientEquation{grid-template-columns:1fr}.coefficientEquation b{font-size:28px}.interactionGrid,.interactionGrid[data-count="5"]{grid-template-columns:1fr}.interactionGrid[data-count="5"] .interactionCard:nth-child(-n+3),.interactionGrid[data-count="5"] .interactionCard:nth-child(n+4),.interactionGrid[data-count="5"] .interactionCard:last-child{grid-column:auto}.faqEndCta{display:block}.faqEndCta .btn{margin-top:14px}}


/* Color Coefficient — editorial studio system. Screen-only styling preserves the report layout. */
@media screen {
  :root{--paper:#f6f3ed;--paper-2:#ece7de;--surface:#fcfaf6;--ink:#302d27;--muted:#716b61;--accent:#705344;--accent-2:#796654;--line:#ddd7cc;--line-strong:#c8beb0;--shadow:none;--radius:6px;--max:1320px}
  [hidden]{display:none!important}
  .page h1[tabindex="-1"]:focus,.resultWrap:focus{outline:0}
  .mobileFeatureSelect{display:none}.footerBottom #year{display:inline;margin:0}
  .dimensionDetail{margin-top:14px}.dimensionDetail summary{font-size:10px;color:var(--muted);cursor:pointer}.dimensionDetail[open] summary{margin-bottom:8px}
  body{font-family:"Segoe UI",Arial,sans-serif;letter-spacing:.005em}
  .siteHeader{background:var(--paper);backdrop-filter:none;box-shadow:none;border-color:var(--line)}
  .headerInner{height:84px;padding:0 40px;gap:36px}
  .brand{font-size:12px;letter-spacing:.16em;font-weight:650;gap:12px;white-space:nowrap}
  .brandMark{width:31px;height:31px;flex-shrink:0}
  .mainNav{gap:30px}.mainNav a{font-size:12px;padding:28px 0}.mainNav a:after{bottom:22px}.mainNav a[aria-current="page"]:after{transform:scaleX(1)}
  .headerActions .btn{font-size:11px;min-height:40px;padding:10px 16px}
  .btn{border-radius:3px;font-weight:550;padding:15px 21px;min-height:48px;letter-spacing:.025em;box-shadow:none!important}
  .btn.primary{background:var(--ink)}.btn.primary:hover{background:#514338}.btn.secondary{background:transparent}.btn.primary span{margin-left:15px;font-size:18px}
  .textLink{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;padding:9px 0;font-size:13px;text-decoration:none;border-bottom:1px solid var(--line-strong);font-weight:550;transition:border-color .18s}
  .textLink:hover{border-color:var(--ink)}.textLink span{font-size:17px}
  .shell{padding:90px 40px}.shell.narrow{max-width:920px}
  .eyebrow{font-size:10px;font-weight:600;letter-spacing:.19em;line-height:1.5;margin-bottom:20px;color:#796654}
  .eyebrowLine{display:inline-block;width:26px;height:1px;background:currentColor;vertical-align:middle;margin-right:10px}
  .display,.pageTitle,.sectionTitle,.season,.sampleSeason,.resultSection h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.047em}
  .sectionTitle{font-size:clamp(32px,3.3vw,46px);line-height:1.15;margin-bottom:22px}.sectionTitle em,.display em{font-weight:400;color:#80644e}
  .pageTitle{font-size:clamp(38px,4.5vw,58px);line-height:1.12;max-width:800px}
  .lede{font-size:17px;line-height:1.7;color:#675f55}
  .hero{min-height:720px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:52px;padding-top:48px;padding-bottom:54px;align-items:center}
  .heroCopy{padding:40px 0 0}.heroCopy .eyebrow{margin-bottom:30px}
  .heroCopy .taglineLines{font-size:clamp(38px,4.2vw,57px);line-height:1.16;letter-spacing:-.052em}
  .heroCopy .lede{font-size:19px;color:var(--ink);margin:29px 0 13px;max-width:475px;line-height:1.5}
  .heroDescription{font-size:15px;line-height:1.8;color:#70675c;max-width:446px;margin:0 0 30px}
  .heroActions{align-items:center;gap:22px}.heroActions .btn{font-size:12px}
  .heroActions .textLink{font-size:12px;gap:14px}
  .trustLine{gap:17px;font-size:11px;margin-top:27px;color:#756e64;align-items:center}.trustLine span+span{border-left:1px solid var(--line-strong);padding-left:17px}.trustLine svg{width:15px;height:15px}
  .heroIndex{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:17px;margin-top:63px;font-size:8px;letter-spacing:.14em;color:#81786b}
  .heroVisual{padding:0;min-height:0;border:0;border-radius:0;background:#ede7dc;box-shadow:none;overflow:visible;--study-0:#b78380;--study-1:#689294;--study-2:#8f8175}
  .heroVisual:before,.heroVisual:after{display:none}
  .paletteArt{height:285px;position:relative;overflow:hidden;isolation:isolate;background:#e9e3d8}
  .artCaption{position:absolute;inset:20px 24px auto;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.19em;color:#807461}
  .artOrbit{position:absolute;width:230px;height:230px;border:1px solid #cec1af;border-radius:50%;left:calc(50% - 115px);top:41px}.artOrbit:after{content:"";position:absolute;inset:14px;border:1px solid #d9cfc1;border-radius:50%}
  .studyCard{position:absolute;width:130px;height:187px;background:#f9f6ef;top:57px;left:calc(50% - 65px);box-shadow:2px 10px 17px #483a2424;transform-origin:50% 110%;padding:7px;transition:transform .3s ease}
  .studyOne{transform:translateX(-74px) rotate(-16deg);z-index:1}.studyTwo{transform:translateY(-5px) rotate(-2deg);z-index:2}.studyThree{transform:translateX(77px) rotate(13deg);z-index:3}
  .studyColor{height:117px;transition:background .15s}.studyOne .studyColor{background:var(--study-0)}.studyTwo .studyColor{background:var(--study-1)}.studyThree .studyColor{background:var(--study-2)}
  .studyLabel{padding:7px 3px 0}.studyLabel span{font-size:6px;letter-spacing:.1em;display:block;color:#796e5e}.studyLabel b{font-family:Georgia,serif;font-size:12px;font-weight:400;display:block;line-height:1.5}.studyLabel small{display:block;font-size:7px;color:#7e7568;font-family:monospace}
  .artNote{position:absolute;bottom:11px;width:100%;text-align:center;font:italic 13px Georgia,serif;color:#80715e}
  .sampleCard{border:0;border-top:1px solid #d8cfc2;background:var(--surface);border-radius:0;padding:22px 25px 17px;box-shadow:none}
  .sampleDemoHead .fine{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#827767}.sampleSeason{font-size:29px;line-height:1.2;margin:4px 0 8px}
  .demoReset{align-self:center;font-size:10px;min-height:32px;background:transparent;border-bottom:1px solid var(--line);color:var(--muted);cursor:pointer;padding:4px}
  .sampleHint{font-size:11px;margin-bottom:10px;color:#7b7266}.sampleBars{gap:1px}
  .sampleBar{grid-template-columns:88px 1fr 94px;font-size:11px;gap:13px;min-height:29px}.sampleBar b{font-size:10px;font-weight:500;color:#696052}
  .sampleBar input[type=range]{height:28px}.sampleBar input[type=range]::-webkit-slider-runnable-track{height:2px;background:#ddd6cb}.sampleBar input[type=range]::-webkit-slider-thumb{margin-top:-6px;width:14px;height:14px;background:#776652}.sampleBar input[type=range]::-moz-range-track{height:2px;background:#ddd6cb}
  .sampleSwatches{grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;margin-top:12px}.sampleSwatches i{border-radius:0;aspect-ratio:1.2;border:0}
  .samplePaletteNote{min-height:0;font-size:9px;line-height:1.5;margin-top:9px}
  .trustStrip{background:transparent}.trustGrid{grid-template-columns:repeat(3,1fr);padding:27px 40px;gap:32px}.trustGrid>div{display:flex;align-items:center;gap:16px;border:0;padding:0}.trustGrid strong{font-size:12px;font-weight:550}.trustGrid span{font-size:11px}.trustGrid .stripNumber{font:italic 26px Georgia,serif;color:#a18c72}
  .homeIntro{padding-top:104px;padding-bottom:104px}.reportSection{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:start}.homeSectionHead{margin:0}.homeSectionHead .lede{font-size:15px;max-width:390px;margin-bottom:25px}
  .reportList article{display:grid;grid-template-columns:24px 1fr 18px;gap:17px;border-top:1px solid var(--line);padding:26px 0}.reportList article:last-child{border-bottom:1px solid var(--line)}.reportList article>span{font-size:10px;color:#918371;padding-top:4px}.reportList article>span:last-child{font-size:16px}.reportList h3{font:400 23px Georgia,serif;letter-spacing:-.025em;margin:0 0 10px}.reportList p{font-size:13px;line-height:1.8;color:var(--muted);margin:0;max-width:400px}
  .journeyBand{background:#ece7de;border-block:1px solid #e1d9cd}.journeyBand .shell{padding-top:76px;padding-bottom:66px}.journeyHead{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.journeyHead .sectionTitle{margin-bottom:0}.journeyHead .textLink{margin-bottom:5px}.journeyBand .threeCol{gap:50px;margin-top:44px}
  .editorialCard{border-top:1px solid #cfc4b3;position:relative;padding:20px 0 0}.editorialCard .num{position:absolute;top:17px;left:0;font-size:13px;font-family:Georgia,serif;color:#85735e}.editorialCard h3{font:400 25px Georgia,serif;letter-spacing:-.03em;margin:20px 0 10px}.editorialCard p{font-size:13px;line-height:1.8;margin-top:0;max-width:310px}
  .stepIllustration{height:112px;position:relative;display:flex;align-items:center;justify-content:center;gap:5px}
  .photoIllustration:before{content:"";width:69px;height:85px;border:1px solid #b9a68e;transform:rotate(-7deg);background:#f6f1e8}.photoIllustration div{position:absolute;width:40px;height:58px;border-radius:50% 50% 35% 35%;background:#cfbea6;transform:rotate(-7deg);top:19px}.photoIllustration div:after{content:"";position:absolute;width:57px;height:26px;left:-9px;bottom:-10px;border-radius:30px 30px 0 0;background:#b7a58e}
  .sampleIllustration i{width:39px;height:39px;border:1px dashed #a58c72;border-radius:50%;background:#ddd0be}.sampleIllustration i:nth-child(2){background:#ae9980;transform:translateY(-15px)}.sampleIllustration i:nth-child(3){background:#c6b19a}.sampleIllustration span{position:absolute;left:52%;top:70px;font-size:21px;color:#8e7359}
  .resultIllustration i{height:68px;width:35px;background:#ad816c;transform:rotate(-12deg);border:4px solid #f6f1e8;box-shadow:1px 3px 5px #302d2710}.resultIllustration i:nth-child(2){background:#a7ab91;transform:rotate(-4deg)}.resultIllustration i:nth-child(3){background:#85846d;transform:rotate(4deg)}.resultIllustration i:nth-child(4){background:#665444;transform:rotate(12deg)}
  .journeyAction{display:flex;gap:23px;align-items:center;justify-content:center;border-top:1px solid #d4c9b9;margin-top:36px;padding-top:32px}.journeyAction span{font-size:11px;color:#786d5f}.journeyAction .btn span{font-size:18px;color:inherit}
  .homePhilosophy{border:0;grid-template-columns:1fr 1fr;gap:95px;padding:5px 0 76px}.homePhilosophyCopy{padding-top:28px}.homePhilosophyCopy .philosophyOpening{font:400 21px/1.6 Georgia,serif;color:var(--ink)}.homePhilosophyCopy p{font-size:14px;line-height:1.9}.homePhilosophyCopy a{font-size:13px;font-weight:550}
  .homeFaq{border-top:1px solid var(--line);padding-top:72px;display:grid;grid-template-columns:1fr 1fr;gap:95px}.homeFaq .faqList{border-top:0}.faqItem summary{font-size:14px;font-weight:550;padding:23px 0}.faqItem .answer{font-size:14px;line-height:1.8}.faqItem summary:after{font-size:19px}
  .siteFooter{background:#eae5db;border-top:1px solid #d9d0c1}.footerInner{max-width:var(--max);padding:58px 40px 25px}.footerGrid{gap:50px;grid-template-columns:1.6fr repeat(3,.65fr)}.footerBrand .brand{display:inline-flex}.footerBrand p{font-size:12px;line-height:1.8;max-width:325px}.footerGrid h3{font-size:10px;text-transform:uppercase;letter-spacing:.15em;font-weight:650}.footerGrid a:not(.brand){font-size:12px}.footerBottom{font-size:10px;padding-top:22px;margin-top:42px}
  .menuBtn{border:0;border-radius:0;padding:12px;background:transparent}.menuBtn span{display:block;height:1px;width:20px;background:var(--ink);margin:6px 0}.menuBtn[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menuBtn[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .routeIntro{padding-bottom:35px;margin-bottom:36px}.prose{font-size:15px;line-height:1.85}.prose h2{font-size:29px;letter-spacing:-.025em}.prose .legalNote,.tipPanel,.faqEndCta,.coefficientEquation span{border-radius:3px}.photoTipsGrid{gap:22px}.tipPanel{padding:27px}
  .analyzeShell{max-width:1320px;padding:42px 40px 80px}.analyzerIntro{margin:0 0 32px;align-items:center}.analyzerIntro h1{font-size:38px;line-height:1.2}.analyzerIntro .eyebrow{margin-bottom:12px}.analyzerSubtitle{font-size:14px;color:var(--muted);margin:13px 0 0}.privacyMini{max-width:260px;font-size:11px;line-height:1.7}.privacyMini strong{font-weight:550;color:var(--ink)}
  .progressRail{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;margin-bottom:32px;overflow:visible;grid-template-columns:repeat(4,1fr)}.progressStep{border:0!important;padding:12px 0 18px;background:transparent!important;position:relative;font-size:12px}.progressStep b{border-radius:50%;font-weight:400;width:23px;height:23px;font-size:10px}.progressStep.is-active:after{content:"";height:2px;background:var(--ink);position:absolute;bottom:-1px;left:0;right:25px}
  .analyzerGrid{grid-template-columns:350px minmax(0,1fr);gap:28px;scroll-margin-top:105px}.controlPanel,.workspacePanel{border-radius:4px;background:var(--surface);box-shadow:none}.controlPanel{padding:25px;top:100px;max-height:calc(100vh - 120px)}.controlPanel h2{font-size:28px;margin:10px 0}.panelKicker{font-size:9px;font-weight:600;letter-spacing:.14em}.controlPanel>.small{font-size:12px;line-height:1.7}
  .drop{border-radius:2px;background:#f5f1e9;padding:24px 15px}.drop:before{border-radius:0;border:0;background:transparent;font-size:26px;margin-bottom:7px;height:35px}.drop strong{font-size:14px;font-weight:550}.drop .small{font-size:10px}.uploadLabel{font-size:12px}.uploadPrivacy{font-size:10px}.uploadPrivacy strong{font-size:10px}
  .controlPanel button,.zoomBar button{border-radius:3px;min-height:36px;font-weight:500}.controlPanel button.is-selected:not(.active){border-color:#869683;background:#edf0e8}.controlPanel button.is-selected:after{content:" ✓"}.controlPanel #process{width:100%;min-height:45px;font-size:13px}.controlPanel #clearAll{border:0!important;background:transparent!important;padding:5px 0!important;border-radius:0!important;font-size:11px;min-height:30px;font-weight:400!important}
  .checkRow{border:0;border-radius:0;padding:8px 0;background:transparent}.checkRow .small{font-size:11px}.checkRow strong{font-size:12px}.modeSection h3{font-size:10px}.modeSection h3:after,.advancedBox summary:after{font-size:8px}.status,.reviewReady,.metric,.taskCue{border-radius:3px}.advancedBox summary,.selectionReview summary{font-size:12px}.historyActions{gap:3px}.historyActions button{font-size:10px;padding:6px 9px}
  .workspacePanel{padding:22px;min-height:530px}.workspaceHeader h3{font-size:14px;font-weight:550}.workspaceHeader .small{font-size:11px}.legend{gap:7px;max-width:210px}.legend span{font-size:9px}.taskCue{background:#eee8dc;border-color:#dfd3c0}.taskCue strong{font-weight:550}.taskCueIcon{border-radius:50%}.workspaceTip{font-size:11px;line-height:1.6}.emptyWorkspace{min-height:420px;padding:20px}.portraitGuide{display:block;width:290px;max-width:100%;height:225px;margin:0 auto 12px}.photoGuide .eyebrow{font-size:9px;margin:0}.photoGuide h3{font:400 25px Georgia,serif;color:var(--ink);letter-spacing:-.025em;margin:5px 0 12px}.photoGuide p{font-size:12px;line-height:1.8;max-width:325px;margin:0 auto 13px}.photoGuide .textLink{font-size:11px}
  body[data-analysis-stage="1"] .samplingControls,body[data-analysis-stage="1"] .selectionReview,body[data-analysis-stage="1"] .photoProgress,body[data-analysis-stage="1"] .workspaceHeader,body[data-analysis-stage="1"] .workspaceTip{display:none}
  body[data-analysis-stage="1"] .controlPanel{position:static;max-height:none}
  body[data-analysis-stage="2"] #drop,body[data-analysis-stage="3"] #drop{padding:10px;margin-top:12px;display:flex;justify-content:space-between;align-items:center;gap:8px}
  body[data-analysis-stage="2"] #drop:before,body[data-analysis-stage="3"] #drop:before,body[data-analysis-stage="2"] #drop>.small,body[data-analysis-stage="3"] #drop>.small{display:none}
  body[data-analysis-stage="2"] #drop strong,body[data-analysis-stage="3"] #drop strong{font-size:11px;margin:0}
  body[data-analysis-stage="2"] #drop .btn,body[data-analysis-stage="3"] #drop .btn{margin:0;min-height:35px;padding:7px 11px;font-size:10px;background:transparent;color:var(--ink);border:1px solid var(--line-strong)}
  body[data-analysis-stage="2"] .photoProgress,body[data-analysis-stage="3"] .photoProgress{display:none}
  body[data-analysis-stage="4"] .analyzerGrid{display:none}
  body[data-analysis-stage="4"] .resultWrap{margin-top:10px}
  #previewWrap,#candidatePreviewWrap{border-radius:2px;min-height:0;scrollbar-width:thin}
  .resultHero{border-radius:4px;padding:42px;gap:50px;box-shadow:none;background:#37392f;grid-template-columns:1.2fr .8fr}.season{font-size:clamp(48px,6vw,70px)}.resultHero .eyebrow{font-size:10px}.resultHero #why{font-size:14px;line-height:1.8}.seasonScorePanel{border-color:#ffffff2d}.seasonScorePanel strong{font-weight:450;font-size:30px}
  .topPersonalColorsHead{display:block}.topPersonalColorsHead span{display:block;text-align:left;margin-top:4px}.topPersonalColor{border:0;padding:0;background:transparent;border-radius:0}.topPersonalColor i{border-radius:0;height:85px}.topPersonalColor b{font-size:11px;font-weight:500;white-space:normal;min-height:28px}.topPersonalColor small{font-size:10px}
  .resultHeroActions{gap:8px}.resultHero .fine{color:#c9bdab}.resultHeroActions #savePaletteBtn{grid-column:1/-1;background:#f4eee2!important;color:#37392f!important;border-color:#f4eee2!important}.resultHeroActions #savePaletteBtn:hover{background:#e2d8c6!important}.resultHeroActions #printReportBtn{grid-column:1/-1}.resultHeroActions .btn{font-size:11px;font-weight:500;min-height:43px;padding:10px}.resultHeroActions .btn.addPhotoResult{border:0!important;justify-content:center;grid-column:1/-1;padding-left:0}
  .resultSection{padding:52px 0}.resultSection h2{font-size:34px}.resultSection .eyebrow{margin-bottom:10px}.dimensionGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.dimensionHead{display:block}.dimensionHead span{display:block;font-size:11px;margin-bottom:5px}.dimensionHead strong{font-weight:500;font-size:15px}.dimension .fine{font-size:11px}
  .palette{gap:14px}.chip{border:0;aspect-ratio:.77;border-radius:2px;padding-bottom:47px;background-clip:content-box!important;box-shadow:none!important}.chip span{left:0;right:0;bottom:0;height:42px;padding:9px 0 0;border-radius:0;background:var(--paper);color:var(--ink);font-size:11px;text-align:left;line-height:1.5}.chip:hover{transform:translateY(-3px)}.chip:focus-visible{outline-color:var(--accent);outline-offset:3px}
  .resultCards{gap:28px}.resultCard{padding:22px 0;border:0;border-top:1px solid var(--line-strong);border-radius:0;background:transparent}.resultCard h3{font:400 24px Georgia,serif;margin-bottom:13px}.resultCard p{font-size:13px}
  .occasionDetails,.alternateFeatured,.subcard,.interactionCard,.hairSuggestion,.regionCard,.technicalDisclosure,.candidateResult{border-radius:3px;box-shadow:none}.occasionPreview,.occasionColor i,.avgSwatch,.regionSwatch{border-radius:1px}.technicalDisclosure summary{font-weight:550}.subcard{padding:26px}.compactSwatch{border-radius:3px;padding:6px 12px 6px 6px}.compactSwatch i{border-radius:1px}.hairSuggestion{padding:22px}.hairSuggestion .hairSwatch{border-radius:0}
  .shareDialog{border-radius:5px}.shareDialogInner{padding:30px}.shareOption{border-radius:3px;background:#f6f1e9;padding:17px}.shareOption strong{font-weight:550}.startOverDialog .warningBox{border-radius:3px}.dialogClose{border-radius:0;border:0;font-size:24px}.loadingOverlay{background:#f6f3edf5;backdrop-filter:none}
}
@media screen and (max-width:1100px){
  .headerInner{gap:22px}.mainNav{gap:20px}.mainNav a{font-size:11px}.hero{gap:32px}.heroCopy .taglineLines{font-size:4.15vw}.heroActions{gap:14px}.heroActions .btn{font-size:11px;padding-inline:15px}.heroActions .textLink{font-size:11px}.heroIndex{font-size:7px}.reportSection,.homePhilosophy,.homeFaq{gap:55px}.analyzerGrid{grid-template-columns:320px minmax(0,1fr);gap:20px}.analyzeShell{padding-inline:30px}.controlPanel{padding:21px}.resultHero{padding:30px;gap:30px}.dimensionGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media screen and (max-width:900px){
  .mainNav,.headerActions{display:none}.menuBtn{display:block;margin-left:auto}.headerInner{height:72px;padding-inline:28px}.hero{grid-template-columns:1fr 1fr;gap:25px;padding-inline:28px;min-height:680px}.heroCopy .taglineLines{font-size:4vw}.heroCopy .lede{font-size:17px}.heroDescription{font-size:13px}.heroActions{align-items:flex-start;flex-direction:column}.heroIndex{display:none}.trustLine{flex-wrap:wrap;gap:10px}.trustLine span+span{border:0;padding:0}.paletteArt{height:260px}.studyCard{width:112px;height:176px;left:calc(50% - 56px)}.studyOne{transform:translateX(-59px) rotate(-16deg)}.studyThree{transform:translateX(61px) rotate(13deg)}.studyColor{height:108px}.sampleCard{padding:19px 18px 15px}.sampleBar{grid-template-columns:74px 1fr 70px;gap:8px;font-size:10px}.sampleBar b{font-size:9px}.sampleSeason{font-size:26px}.sampleHint{font-size:10px}.samplePaletteNote{font-size:8px}.trustGrid{gap:20px;padding-inline:28px}.trustGrid>div{gap:12px}.trustGrid strong{font-size:11px}.trustGrid span{font-size:10px}.shell{padding-inline:28px}.homeIntro{padding-top:80px;padding-bottom:80px}.journeyBand .threeCol{gap:25px}.editorialCard h3{font-size:22px}.footerGrid{gap:28px}.footerBrand .brand{white-space:normal}.resultHero{grid-template-columns:1fr 1fr}
}
@media screen and (max-width:780px){
  body[data-analysis-stage="2"] .mobileFeatureSelect,body[data-analysis-stage="3"] .mobileFeatureSelect{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 0 13px;font-size:11px;position:sticky;top:72px;background:var(--surface);z-index:5}
  .mobileFeatureSelect select{font:inherit;font-size:13px;padding:11px 25px 11px 10px;min-width:155px;max-width:74%;border:1px solid var(--line-strong);border-radius:2px;color:var(--ink);background:var(--paper)}
  .hero{grid-template-columns:1fr;padding-top:48px;padding-bottom:36px;gap:35px;min-height:0}.heroCopy{padding:0}.heroCopy .eyebrow{margin-bottom:24px}.heroCopy .taglineLines{font-size:clamp(33px,6.4vw,49px);line-height:1.14;letter-spacing:-.05em}.heroCopy .lede{font-size:18px;margin-top:23px}.heroDescription{font-size:14px;max-width:480px;margin-bottom:25px}.heroActions{flex-direction:row;align-items:center;gap:20px}.heroActions .btn{font-size:12px;padding:14px 17px}.heroActions .textLink{font-size:12px}.trustLine{display:flex;font-size:11px;gap:16px;margin-top:24px}.trustLine span+span{border-left:1px solid var(--line-strong);padding-left:16px}
  .heroVisual{display:block}.paletteArt{height:auto;min-height:290px}.artCaption{inset:16px 16px auto;font-size:6px}.artOrbit{width:180px;height:180px;left:calc(50% - 90px);top:70px}.studyCard{width:86px;height:157px;left:calc(50% - 43px);top:80px;padding:5px}.studyOne{transform:translateX(-40px) rotate(-15deg)}.studyThree{transform:translateX(42px) rotate(12deg)}.studyColor{height:96px}.studyLabel b{font-size:9px}.studyLabel small{font-size:6px}.studyLabel span{font-size:5px}.artNote{font-size:11px;bottom:20px}.sampleCard{border-top:0;padding:24px 20px}.sampleBar{grid-template-columns:74px 1fr 70px;font-size:10px}.samplePaletteNote{font-size:9px}.sampleHint{font-size:11px}.sampleSwatches{margin-top:15px}.sampleSeason{font-size:27px}
  .trustGrid{grid-template-columns:1fr;gap:17px;padding-top:25px;padding-bottom:25px}.trustGrid>div{padding:0;border:0;gap:18px}.trustGrid strong{font-size:12px}.trustGrid span{font-size:11px}.trustGrid .stripNumber{font-size:23px}
  .reportSection,.homePhilosophy,.homeFaq{grid-template-columns:1fr;gap:30px}.homeSectionHead .lede{max-width:490px}.sectionTitle{font-size:36px}.reportList article{padding:23px 0}.reportList h3{font-size:23px}.homeIntro{padding-top:65px;padding-bottom:65px}.journeyBand .shell{padding-top:55px;padding-bottom:45px}.journeyHead{align-items:flex-start;flex-direction:column;gap:10px}.journeyBand .threeCol{grid-template-columns:1fr;gap:25px;margin-top:30px}.editorialCard{padding:19px 0 0 50px;min-height:135px}.editorialCard h3{font-size:24px;margin-top:6px;padding-right:100px}.editorialCard p{padding-right:100px;max-width:none;font-size:13px}.stepIllustration{position:absolute;right:0;top:26px;width:90px;transform:scale(.7);transform-origin:100% 0}.editorialCard .num{font-size:16px;top:23px}.journeyAction{flex-direction:column;gap:14px;margin-top:25px;padding-top:27px}.homePhilosophy{padding-bottom:55px;gap:0}.homePhilosophyCopy{padding-top:8px}.homeFaq{padding-top:52px}.homeFaq .sectionTitle{margin-bottom:12px}.shell{padding-top:60px;padding-bottom:60px}.footerInner{padding:45px 28px 25px}.footerGrid{grid-template-columns:repeat(3,1fr);gap:30px}.footerGrid .footerBrand{grid-column:1/-1}.footerGrid>div:last-child{grid-column:auto}.footerBottom{line-height:1.8}
  .analyzeShell{padding:30px 24px 55px}.analyzerIntro{align-items:flex-start;margin-bottom:25px}.analyzerIntro h1{font-size:32px}.privacyMini{display:none}.analyzerSubtitle{font-size:13px}.progressRail{grid-template-columns:repeat(4,1fr);margin-bottom:23px}.progressStep{gap:7px;font-size:10px;padding-bottom:15px}.progressStep.is-active:after{right:15px}.analyzerGrid{grid-template-columns:1fr;gap:20px}.controlPanel{position:static;max-height:none}.workspacePanel{min-height:0;padding:18px}.emptyWorkspace{min-height:0;padding:20px}.portraitGuide{height:180px}.photoGuide h3{font-size:24px}.photoGuide .eyebrow{font-size:8px}.workspaceHeader{display:flex}.legend{max-width:200px;margin:0}.controlPanel .actions button{min-height:40px}.samplingControls .actions{gap:8px}.checkRow .small{font-size:12px}.resultHero{grid-template-columns:1fr;padding:28px 23px;gap:28px}.resultHeroActions{grid-template-columns:1fr 1fr}.resultHeroActions #printReportBtn{grid-column:1/-1}.resultHeroActions .btn{font-size:11px}.resultHero .season{font-size:52px}.resultSection h2{font-size:30px}.resultSection{padding:35px 0}.resultCards{grid-template-columns:1fr}.resultCard{padding:20px 0 0}.dimensionGrid{grid-template-columns:1fr 1fr;gap:20px}.palette{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.chip{aspect-ratio:.7}.occasionBody{padding:20px}.technicalCards{grid-template-columns:1fr}.resultSection .twoCol{gap:30px}.shareDialogInner{padding:23px}.resultWrap{scroll-margin-top:90px}
}
@media screen and (max-width:520px){
  .headerInner{height:68px;padding:0 21px;gap:12px}.brand{font-size:10px;letter-spacing:.12em;gap:9px}.brandMark{width:27px;height:27px}.shell{padding-inline:23px}.hero{padding-top:38px;padding-bottom:30px;gap:31px}.heroCopy .taglineLines{font-size:clamp(28px,7.65vw,39px)}.heroCopy .lede{font-size:17px;max-width:290px}.heroDescription{font-size:13px;line-height:1.8}.heroActions{flex-direction:column;align-items:stretch;gap:12px}.heroActions .btn{width:100%;justify-content:space-between;min-height:48px}.heroActions .textLink{align-self:flex-start;padding:8px 0;font-size:12px}.trustLine{font-size:10px;gap:13px;margin-top:21px}.trustLine span+span{padding-left:13px}
  .heroVisual{}.paletteArt{height:242px;min-height:0}.artCaption{inset:18px 20px auto;font-size:7px}.artOrbit{width:195px;height:195px;left:calc(50% - 98px);top:35px}.studyCard{width:105px;height:158px;left:calc(50% - 52px);top:47px;padding:6px}.studyOne{transform:translateX(-63px) rotate(-16deg)}.studyThree{transform:translateX(66px) rotate(13deg)}.studyColor{height:95px}.studyLabel b{font-size:11px}.studyLabel small{font-size:6px}.studyLabel span{font-size:5px}.artNote{bottom:12px;font-size:11px}.sampleCard{padding:20px 21px 17px}.sampleSeason{font-size:28px}.sampleBar{grid-template-columns:78px 1fr 77px;font-size:11px;gap:12px;min-height:31px}.sampleBar b{font-size:10px}.sampleSwatches{grid-template-columns:repeat(12,minmax(0,1fr));gap:3px}.samplePaletteNote{font-size:9px}.sampleHint{font-size:10px}.trustGrid{padding-inline:23px}.sectionTitle{font-size:33px}.reportList h3{font-size:22px}.reportList article{gap:11px;grid-template-columns:22px 1fr 14px}.reportList p{font-size:13px}.journeyHead .sectionTitle{font-size:30px}.editorialCard{padding-left:38px}.editorialCard h3{font-size:23px;padding-right:58px}.editorialCard p{padding-right:0}.stepIllustration{top:15px;transform:scale(.5)}.editorialCard .num{font-size:14px}.homePhilosophyCopy .philosophyOpening{font-size:20px}.homeFaq{gap:18px}.faqItem summary{font-size:13px}.faqItem .answer{font-size:13px;padding-right:12px}.footerInner{padding-inline:23px}.footerGrid{gap:18px}.footerGrid a:not(.brand){font-size:11px}.footerGrid h3{font-size:9px}.footerBottom span:last-child{max-width:270px}
  .analyzeShell{padding:27px 18px 50px}.analyzerIntro h1{font-size:29px;max-width:310px}.analyzerIntro .eyebrow{font-size:9px}.progressStep{border-bottom:0!important;font-size:9px;gap:5px}.progressStep b{width:21px;height:21px;font-size:9px}.progressStep.is-active:after{right:9px}.controlPanel{padding:22px}.workspaceHeader{display:block}.legend{margin-top:10px;justify-content:flex-start;max-width:none}.resultHero .season{font-size:47px}.resultHero{padding:27px 21px}.topPersonalColor i{height:65px}.topPersonalColor b{font-size:10px}.topPersonalColor small{font-size:9px}.resultHeroActions .btn{font-size:10px}.dimensionGrid{gap:16px}.dimensionHead strong{font-size:14px}.palette{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.chip{aspect-ratio:.67;padding-bottom:43px}.chip span{font-size:10px}.resultSection .sectionLead{font-size:13px}.subcard{padding:20px}.occasionDetails summary{padding:14px;gap:10px}.occasionSummaryText span{font-size:11px}.occasionToggle{font-size:10px}.occasionPalette{grid-template-columns:repeat(2,minmax(0,1fr))}.occasionPreview{width:38px;height:38px}.resultSection h2{font-size:28px}
}

/* Hot fix — clearer analyzer header actions and a consistent Start Over treatment. */
@media screen {
  .analyzerHeaderActions{gap:8px;align-items:center;white-space:nowrap}
  .headerUtilityAction{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:9px 12px;border:1px solid transparent;border-radius:3px;background:transparent;color:var(--ink);font:550 11px/1 "Segoe UI",Arial,sans-serif;letter-spacing:.02em;text-decoration:none;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
  .headerUtilityAction:hover{transform:translateY(-1px)}
  .analyzerHelpAction,.analyzerExitAction{color:#675f55}
  .analyzerHelpAction:hover,.analyzerExitAction:hover{background:#eee7dd;color:var(--ink)}
  .headerAddPhotoAction{background:var(--ink);border-color:var(--ink);color:#fff}
  .headerAddPhotoAction:hover{background:#514338;border-color:#514338;color:#fff}
  .resetAction{appearance:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;background:#f4ebe5!important;color:#68483e!important;border:1px solid #cdb9ad!important;border-radius:3px!important;font-weight:650!important;box-shadow:none!important;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important}
  .resetAction::before{content:"↻";font-size:16px;line-height:1;font-weight:400}
  .resetAction:hover{background:#eadcd3!important;border-color:#aa8878!important;color:#4f342d!important;transform:translateY(-1px)}
  .resetAction:active{transform:translateY(0)}
  .headerResetAction{min-height:38px!important;padding:9px 12px!important;font-size:11px!important}
  .controlPanel .resetAction{min-height:40px!important;padding:9px 13px!important}
  .paletteActions .resetAction{min-height:48px!important;padding:14px 18px!important}
}
@media screen and (max-width:780px){
  .analyzerHeaderActions{gap:5px}
  .headerUtilityAction,.headerResetAction{min-height:36px!important;padding:8px 9px!important;font-size:10px!important}
}
@media screen and (max-width:520px){
  body[data-route="analyze"] .brand>span:last-child{display:none}
  body[data-route="analyze"] .headerInner{padding-inline:14px;gap:8px}
  .analyzerHeaderActions{margin-left:auto;gap:3px}
  .headerUtilityAction,.headerResetAction{padding:8px 8px!important;font-size:9px!important}
  .headerResetAction::before{font-size:14px}
}
@media screen and (max-width:390px){
  .analyzerExitAction{display:none}
}
@media print{
  @page{margin:12mm 13mm}
  body{font-family:"Segoe UI",Arial,sans-serif;font-size:11px;line-height:1.5}
  .skip-link,dialog,.mobileFeatureSelect{display:none!important}
  h2,h3{break-after:avoid}
  .resultSection>.eyebrow,.resultSection .sectionLead{break-after:avoid}
  .analyzeShell{padding:0}.resultHero{border-radius:0;box-shadow:none;padding:24px;gap:28px;break-inside:avoid}.season{font-size:49px}.resultHero #why{font-size:12px}.seasonScoreExplainer{font-size:11px}.seasonEvidence{font-size:10px!important}
  .topPersonalColor,.topPersonalColor i{border-radius:0}.topPersonalColor{padding:0;border:0;background:transparent}.topPersonalColor i{height:55px}.topPersonalColor b{white-space:normal}.topPersonalColorsHead{display:block}.topPersonalColorsHead span{text-align:left;display:block;margin:4px 0}
  .resultSection{padding:24px 0;break-inside:auto}.resultSection h2{font-size:25px;line-height:1.15}.resultSection p,.resultSection .fine,.resultSection .sectionLead,.resultCard p,.humanCopy,.occasionWhy{font-size:11px;line-height:1.6}.resultSection .sectionLead{margin-bottom:15px}.eyebrow{font-size:9px;margin-bottom:10px}
  .dimensionGrid{gap:15px}.dimension{break-inside:avoid}.dimensionHead strong{font-size:12px}.dimensionHead{font-size:11px}.dimensionDetail summary{display:none}.dimensionDetail .fine{display:block;padding-top:8px}.meterLabels{font-size:9px}
  #palette{gap:10px}.chip{border-radius:0;aspect-ratio:1.35;padding-bottom:27px;background-clip:content-box!important;box-shadow:none!important;min-height:95px!important}.chip span{bottom:0;left:0;right:0;padding:6px 0 0;height:24px;background:white;color:#111;border-radius:0;text-align:left;font-size:9px}
  .subcard,.resultCard,.interactionCard,.hairSuggestion,.occasionDetails,.alternateFeatured,.regionCard{border-radius:0;box-shadow:none;padding:16px}.resultCards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.resultCard h3,.subcard h3{font-size:13px}.occasionBody{padding:16px}.occasionColor i,.occasionPreview{border-radius:0}.occasionDetails summary{padding:12px}.hairSuggestions{gap:12px}.hairSuggestion p,.hairSuggestion li{font-size:11px}.compactSwatch{font-size:10px;border-radius:0}.compactSwatch i{border-radius:0;width:22px;height:22px}.technicalBody{padding-top:15px}.groupTable{font-size:10px}.twoCol{gap:30px}
  .topPersonalColorsHead span,.topPersonalColor small,.resultHero .fine,.resultHero .eyebrow,.seasonScoreExplainer,.seasonEvidence{color:#444!important}
  .resultHero .season{margin-top:0}.topPersonalColors,.topPersonalColor{border-color:#ccc}.topPersonalColor b{color:#111}.seasonScoreTrack{background:#eee}.seasonScoreTrack i{background:#666}
  .paletteUtilityNote,.actionNotice{display:none!important}.resultWrap:focus{outline:0}
}


/* Hot fix: guided drawing progression */
.taskCue .taskCueCopy{flex:1;min-width:0}
.taskCueNext{
  flex:0 0 auto;
  align-self:center;
  appearance:none;
  border:1px solid var(--line-strong);
  background:var(--surface);
  color:var(--ink);
  border-radius:999px;
  min-height:38px;
  padding:8px 13px;
  font:inherit;
  font-size:11px;
  font-weight:750;
  cursor:pointer;
  white-space:nowrap;
  transition:background .16s ease,border-color .16s ease,transform .16s ease,opacity .16s ease;
}
.taskCueNext:hover:not(:disabled){background:var(--paper-2);border-color:var(--ink);transform:translateY(-1px)}
.taskCueNext:disabled{opacity:.38;cursor:not-allowed;transform:none}
.taskCueNext[hidden]{display:none!important}
@media(max-width:640px){
  .taskCue{flex-wrap:wrap}
  .taskCue .taskCueCopy{min-width:calc(100% - 48px)}
  .taskCueNext{width:100%;margin-left:43px}
}



/* Repeat-use personal color utility — local-first, account-free */
.localReturnBand{border-bottom:1px solid var(--line);background:#efe9df}
.localReturnInner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:44px;align-items:center;padding-top:38px!important;padding-bottom:38px!important}
.localReturnInner h2{font:400 clamp(28px,3vw,40px)/1.08 Georgia,"Times New Roman",serif;letter-spacing:-.035em;margin:0 0 10px}.localReturnInner p{max-width:690px;color:var(--muted);margin:0;line-height:1.65}.localReturnActions{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap}.localReturnActions .textLink{background:transparent;border-top:0;border-left:0;border-right:0;cursor:pointer;color:var(--ink)}
.utilityShell{max-width:1220px;margin:auto;padding:72px 40px 92px}.utilityIntro{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);gap:54px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:42px;margin-bottom:34px}.utilityIntro .pageTitle{margin-bottom:12px}.deviceNote{border:1px solid var(--line);background:var(--surface);padding:18px 20px;font-size:12px;line-height:1.65;color:var(--muted)}.deviceNote strong{display:block;color:var(--ink);font-size:13px;margin-bottom:4px}
.utilityGate{border:1px solid var(--line);background:var(--surface);padding:34px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;margin-bottom:30px}.utilityGate h2{font:400 30px/1.12 Georgia,serif;margin:0 0 8px;letter-spacing:-.03em}.utilityGate p{margin:0;color:var(--muted)}.utilityGateActions{display:flex;gap:9px;flex-wrap:wrap}.utilityGate[hidden]{display:none!important}
.utilityGrid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr);gap:18px;align-items:start}.utilityCard{border:1px solid var(--line);background:var(--surface);padding:25px;min-width:0}.utilityCard h2,.utilityCard h3{font:400 27px/1.15 Georgia,serif;letter-spacing:-.025em;margin:0 0 7px}.utilityCard h3{font-size:21px}.utilityCard p{color:var(--muted);font-size:13px;line-height:1.65}.utilityCard .eyebrow{margin-bottom:10px}.utilityStack{display:grid;gap:18px}.toolDivider{height:1px;background:var(--line);margin:22px 0}
.colorInputRow{display:grid;grid-template-columns:68px minmax(0,1fr);gap:12px;align-items:center}.colorWell{appearance:none;width:68px;height:58px;border:1px solid var(--line-strong);padding:4px;background:var(--paper);cursor:pointer;border-radius:2px}.colorWell::-webkit-color-swatch{border:0;border-radius:0}.colorWell::-moz-color-swatch{border:0;border-radius:0}.fieldGroup{display:grid;gap:6px}.fieldGroup label,.fieldLabel{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:650}.textInput,.selectInput{width:100%;border:1px solid var(--line-strong);background:#fffdf9;color:var(--ink);min-height:46px;padding:10px 12px;border-radius:2px}.textInput:focus,.selectInput:focus{border-color:var(--ink);outline:2px solid transparent;box-shadow:0 0 0 2px rgba(112,83,68,.16)}.inputPair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.toolActions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:14px}.toolActions .btn{min-height:42px;padding:10px 15px;font-size:11px}.microNote{font-size:11px!important;line-height:1.55!important;color:var(--muted)!important;margin:10px 0 0!important}
.checkResultEmpty{min-height:260px;display:grid;place-items:center;text-align:center;border:1px dashed var(--line-strong);padding:28px;color:var(--muted)}.checkResult{display:grid;gap:18px}.checkHero{display:grid;grid-template-columns:112px 1fr;gap:20px;align-items:center}.checkSwatch{width:112px;height:126px;border:1px solid rgba(38,34,31,.12)}.matchKicker{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}.matchLabel{font:400 32px/1.05 Georgia,serif;margin:5px 0 8px}.matchColorName{font-size:13px;color:var(--muted)}.matchExplanation{font-size:14px!important;color:#514a44!important;margin:0!important}.dimensionList{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.dimensionResult{border-top:1px solid var(--line);padding:10px 0}.dimensionResult span,.dimensionResult strong{display:block}.dimensionResult span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.dimensionResult strong{font-size:13px;margin-top:3px}.placementNote{border-left:2px solid var(--accent);padding:2px 0 2px 13px;font-size:12px;line-height:1.6;color:#5d554e}
.versionGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.versionCard{border:1px solid var(--line);background:#fbf8f3;padding:8px;cursor:pointer;text-align:left}.versionCard i{display:block;aspect-ratio:1.12;border:1px solid rgba(38,34,31,.1);margin-bottom:8px}.versionCard strong{display:block;font-size:11px}.versionCard span{display:block;font-size:9px;color:var(--muted);font-family:ui-monospace,monospace;margin-top:2px}.versionCard:hover{border-color:var(--ink)}
.imageSampler{margin-top:18px;border-top:1px solid var(--line);padding-top:18px}.imageSampleWrap{display:none;position:relative;margin-top:12px;background:#2d2925;overflow:auto;max-height:480px}.imageSampleWrap.active{display:block}.imageSampleCanvas{display:block;max-width:none;width:100%;height:auto;cursor:crosshair;touch-action:manipulation}.sampleMarker{position:absolute;width:28px;height:28px;border:2px solid white;border-radius:50%;box-shadow:0 0 0 1px #111,0 2px 8px rgba(0,0,0,.3);pointer-events:none;transform:translate(-50%,-50%);display:none}.sampleDetected{display:flex;align-items:center;gap:9px;margin-top:10px;font-size:12px}.sampleDetected i{width:34px;height:34px;border:1px solid var(--line-strong)}
.comparatorWrap{margin-top:32px}
.resultJumpRow{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}.resultJumpRow .btn{min-height:42px;padding:10px 15px}.resultJumpLabel{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}
.checkResultNav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 22px;padding-bottom:16px;border-bottom:1px solid var(--line)}.checkResultNav .btn{min-height:42px;padding:10px 15px}.checkResultNav span:last-child{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:right}
.toolPaletteGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.toolPaletteSwatch{appearance:none;border:0;background:transparent;padding:0;text-align:left;cursor:pointer;min-width:0}.toolPaletteSwatch i{display:block;aspect-ratio:.9;border:1px solid rgba(38,34,31,.1)}.toolPaletteSwatch strong{display:block;font-size:10px;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toolPaletteSwatch span{font-size:9px;color:var(--muted);font-family:monospace}.toolPaletteSwatch:hover i{outline:1px solid var(--ink);outline-offset:2px}
.modePills{display:flex;gap:7px;flex-wrap:wrap}.modePill{appearance:none;border:1px solid var(--line);background:transparent;color:var(--ink);padding:8px 10px;font-size:10px;cursor:pointer}.modePill.active{background:var(--ink);color:white;border-color:var(--ink)}.comboColors{display:flex;gap:8px;margin-top:14px}.comboColor{flex:1;min-width:0}.comboColor i{display:block;height:86px;border:1px solid rgba(38,34,31,.1)}.comboColor strong{font-size:10px;display:block;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comboColor span{font-size:9px;color:var(--muted);font-family:monospace}.comboCopy{font-size:12px!important;color:#514a44!important}
.familyGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:14px}.familyColor{min-width:0}.familyColor i{display:block;aspect-ratio:.85;border:1px solid rgba(38,34,31,.1)}.familyColor strong{display:block;font-size:10px;margin-top:6px}.familyColor span{font-size:9px;color:var(--muted)}
.neutralGrid,.metalGrid,.hairStudioGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:14px}.miniEval{border:1px solid var(--line);padding:8px;min-width:0}.miniEval i{display:block;height:70px;border:1px solid rgba(38,34,31,.1);margin-bottom:7px}.miniEval strong{font-size:10px;display:block}.miniEval span{font-size:9px;color:var(--muted);display:block;line-height:1.4;margin-top:2px}.miniEval.best{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.libraryForm{display:grid;grid-template-columns:52px minmax(0,1fr) 150px auto;gap:8px;align-items:end}.libraryForm .colorWell{width:52px;height:44px}.savedList{display:grid;gap:7px;margin-top:13px}.savedItem{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;border-top:1px solid var(--line);padding-top:8px}.savedItem i{width:34px;height:34px;border:1px solid rgba(38,34,31,.1)}.savedItem strong,.savedItem span{display:block}.savedItem strong{font-size:11px}.savedItem span{font-size:9px;color:var(--muted)}.savedItem button{border:0;background:transparent;cursor:pointer;color:var(--muted);font-size:10px}
.recentStrip{display:flex;gap:7px;flex-wrap:wrap}.recentChip{appearance:none;border:1px solid var(--line);background:transparent;display:inline-flex;align-items:center;gap:6px;padding:6px 8px;cursor:pointer;font-size:10px}.recentChip i{width:18px;height:18px;border:1px solid rgba(38,34,31,.1)}
.dataControls{display:flex;gap:8px;flex-wrap:wrap}.dataControls .btn{font-size:10px;min-height:40px;padding:9px 12px}.dangerOutline{border-color:rgba(143,67,60,.38)!important;color:var(--danger)!important}.importFile{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.paletteInspector{width:min(760px,calc(100vw - 28px));border:0;border-radius:0;padding:0;background:var(--surface);color:var(--ink);box-shadow:0 28px 90px rgba(38,34,31,.28)}.paletteInspector::backdrop{background:rgba(38,34,31,.46);backdrop-filter:blur(3px)}.inspectorInner{padding:28px}.inspectorTop{display:grid;grid-template-columns:150px 1fr auto;gap:22px;align-items:start}.inspectorSwatch{width:150px;height:180px;border:1px solid rgba(38,34,31,.12)}.inspectorTop h2{font:400 34px/1.08 Georgia,serif;margin:0 0 4px;letter-spacing:-.035em}.inspectorHex{font:11px ui-monospace,monospace;color:var(--muted)}.inspectorClose{width:38px;height:38px;border:1px solid var(--line);background:transparent;cursor:pointer;font-size:20px}.inspectorWhy{font-size:13px;line-height:1.7;color:#5b544c;margin-top:12px}.inspectorActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:17px}.inspectorActions .btn{font-size:10px;min-height:40px;padding:9px 12px}.inspectorRelated{margin-top:24px;border-top:1px solid var(--line);padding-top:18px}.inspectorRelated h3{font:400 20px Georgia,serif;margin:0 0 10px}
.localPrivacyFlag{display:inline-flex;align-items:center;gap:7px;font-size:10px;color:var(--muted)}.localPrivacyFlag:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--success)}
@media(max-width:1000px){.utilityGrid{grid-template-columns:1fr}.localReturnInner,.utilityIntro{grid-template-columns:1fr}.localReturnActions{justify-content:flex-start}.toolPaletteGrid{grid-template-columns:repeat(4,1fr)}.versionGrid{grid-template-columns:repeat(2,1fr)}.familyGrid{grid-template-columns:repeat(5,1fr)}}
@media(max-width:780px){.utilityShell{padding:52px 18px 76px}.utilityIntro{gap:20px}.utilityGate{grid-template-columns:1fr}.checkHero{grid-template-columns:86px 1fr}.checkSwatch{width:86px;height:100px}.neutralGrid,.metalGrid,.hairStudioGrid{grid-template-columns:repeat(2,1fr)}.libraryForm{grid-template-columns:52px 1fr}.libraryForm .selectInput,.libraryForm .btn{grid-column:1/-1}.inspectorTop{grid-template-columns:100px 1fr auto}.inspectorSwatch{width:100px;height:120px}}
@media(max-width:520px){.utilityShell{padding-inline:14px}.utilityCard{padding:19px}.inputPair,.dimensionList{grid-template-columns:1fr}.toolPaletteGrid{grid-template-columns:repeat(3,1fr)}.familyGrid{grid-template-columns:repeat(2,1fr)}.comboColors{display:grid;grid-template-columns:repeat(2,1fr)}.inspectorInner{padding:19px}.inspectorTop{grid-template-columns:76px 1fr auto;gap:12px}.inspectorSwatch{width:76px;height:94px}.inspectorTop h2{font-size:26px}.localReturnActions .btn{width:100%}.resultJumpRow,.checkResultNav{align-items:stretch;flex-direction:column}.resultJumpRow .btn,.checkResultNav .btn{width:100%}.resultJumpLabel,.checkResultNav span:last-child{text-align:left}}
@media print{#page-check-color,.localReturnBand,.paletteInspector{display:none!important}}



/* Personal result visual language — data-driven editorial diagnostics */
.visualSectionHead{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:24px}
.visualSectionHead>div:first-child{max-width:700px}.visualSectionHead .sectionLead{margin:0;max-width:620px}
.visualCard{position:relative;border:1px solid var(--line);background:var(--surface);padding:24px;overflow:hidden;min-width:0}
.visualCard.dark{background:var(--ink);color:#f8f4ee;border-color:var(--ink)}
.visualCard.dark .visualKicker,.visualCard.dark .visualCaption{color:#c7bbb0}.visualCard.dark .visualTitle{color:#f8f4ee}
.visualKicker{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:650;margin-bottom:7px}
.visualTitle{font:400 24px/1.12 Georgia,"Times New Roman",serif;letter-spacing:-.025em;margin:0;color:var(--ink)}
.visualCaption{font-size:11px;line-height:1.6;color:var(--muted);margin:9px 0 0}
.visualStage{width:100%;min-height:320px;display:grid;place-items:center;margin-top:14px;position:relative}
.visualStage svg{display:block;width:100%;height:auto;overflow:visible}
.signatureLayout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:18px;align-items:stretch}
.signatureCard{min-height:500px;padding:26px}.signatureCard .visualStage{min-height:365px;margin-top:0}
.signatureSummary{font:italic 15px/1.55 Georgia,"Times New Roman",serif;color:#d7cbc0;margin:0 auto;max-width:510px;text-align:center}
.dimensionPanel{border:1px solid var(--line);background:transparent;padding:24px}.dimensionPanel .dimensionGrid{grid-template-columns:1fr;gap:4px}.dimensionPanel .dimension{padding:15px 0 17px}.dimensionPanel .dimension:first-child{border-top:0;padding-top:0}.dimensionPanel .dimensionHead strong{font-family:Georgia,serif;font-weight:400;font-size:17px}
.visualDuo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.visualDuo .visualCard{min-height:455px}
.constellationCard .visualStage{min-height:390px}.seasonWheelCard .visualStage{min-height:355px}
.visualLegend{display:flex;gap:14px;flex-wrap:wrap;margin-top:11px;color:var(--muted);font-size:10px}.visualLegend span{display:inline-flex;align-items:center;gap:6px}.visualLegend i{width:9px;height:9px;border-radius:50%;border:1px solid rgba(48,45,39,.18);display:inline-block}
.paletteLandscapeCard{padding:28px}.paletteFactorWeights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:3px 0 22px}.paletteFactorWeights span{display:flex;justify-content:space-between;gap:12px;padding:11px 14px;border-right:1px solid var(--line);font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.paletteFactorWeights span:first-child{padding-left:0}.paletteFactorWeights span:last-child{border-right:0;padding-right:0}.paletteFactorWeights b{font-weight:600;color:var(--ink)}.paletteFactorWeights em{font-style:normal;font-weight:650;color:var(--accent)}
.paletteLandscapeShell{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);gap:28px;align-items:center}.paletteLandscape{height:470px;position:relative;max-width:760px;margin:4px auto 0;isolation:isolate;width:100%}
.paletteLandscape:before,.paletteLandscape:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid var(--line);border-radius:50%;pointer-events:none}.paletteLandscape:before{width:210px;height:210px}.paletteLandscape:after{width:390px;height:390px;opacity:.75}
.landscapeRingLabel{position:absolute;left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#8b8175;background:var(--surface);padding:0 7px;z-index:2}.landscapeRingLabel.strong{top:119px}.landscapeRingLabel.broad{top:28px}
.landscapeDot{appearance:none;position:absolute;transform:translate(-50%,-50%);border:2px solid var(--surface);border-radius:50%;padding:0;cursor:pointer;box-shadow:0 0 0 1px rgba(48,45,39,.16),0 8px 18px rgba(48,45,39,.10);transition:transform .16s ease,box-shadow .16s ease;z-index:3}.landscapeDot:after{content:"";position:absolute;inset:-7px;border-radius:50%;border:2px solid var(--dot-color,var(--accent));opacity:0;pointer-events:none;transform:scale(.92)}.landscapeDot:hover,.landscapeDot:focus-visible{transform:translate(-50%,-50%) scale(1.12);box-shadow:0 0 0 2px var(--ink),0 10px 24px rgba(48,45,39,.16);outline:0;z-index:30}.landscapeDot.top{box-shadow:0 0 0 2px var(--ink),0 10px 25px rgba(48,45,39,.13)}.landscapeDot.selected{box-shadow:0 0 0 3px var(--accent),0 12px 28px rgba(48,45,39,.17);z-index:12}.landscapeDot.selected:after{animation:paletteLandscapePulse 1.65s ease-out infinite}.landscapeDot.selected:hover,.landscapeDot.selected:focus-visible{z-index:30}@keyframes paletteLandscapePulse{0%{opacity:.82;transform:scale(.92)}65%{opacity:.18;transform:scale(1.42)}100%{opacity:0;transform:scale(1.62)}}
.landscapeDotLabel{position:absolute;left:50%;top:calc(100% + 7px);transform:translateX(-50%) translateY(2px);width:112px;text-align:center;font-size:9px;line-height:1.2;color:var(--ink);pointer-events:none;text-shadow:0 1px 0 var(--surface),0 -1px 0 var(--surface);opacity:0;visibility:hidden;transition:opacity .12s ease,transform .12s ease;z-index:31}.landscapeDot:hover .landscapeDotLabel,.landscapeDot:focus-visible .landscapeDotLabel,.landscapeDot.selected .landscapeDotLabel{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.paletteFactorPanel{border-left:1px solid var(--line);padding:4px 0 4px 27px;min-height:400px}.paletteFactorIntro{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:13px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}.paletteFactorSwatch{display:block;width:58px;height:68px;border:1px solid rgba(48,45,39,.14)}.paletteFactorIntro h3{font:400 22px/1.05 Georgia,serif;margin:2px 0 4px}.paletteFactorIntro span{font:9px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted)}.paletteFactorIntro>strong{font:400 30px/1 Georgia,serif}.paletteFactorIntro>strong small{font:9px "Segoe UI",Arial,sans-serif;color:var(--muted);margin-left:2px}.paletteFactorNote{font-size:10px!important;line-height:1.55!important;margin:12px 0!important;color:var(--muted)!important}.paletteFactorGroup{margin-top:15px}.paletteFactorGroupTitle{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.paletteFactorRow{margin:0 0 11px}.paletteFactorRowHead{display:flex;justify-content:space-between;gap:12px;align-items:baseline;font-size:10px}.paletteFactorRowHead b{font-size:10px}.paletteFactorTrack{height:3px;background:var(--paper-2);margin-top:5px;overflow:hidden}.paletteFactorTrack i{display:block;height:100%;background:var(--accent)}.paletteFactorRow small{display:block;font-size:8px;line-height:1.4;color:var(--muted);margin-top:4px}.paletteFactorDetails{border-top:1px solid var(--line);margin-top:15px;padding-top:11px}.paletteFactorDetails summary{font-size:10px;font-weight:600;cursor:pointer;list-style:none}.paletteFactorDetails summary::-webkit-details-marker{display:none}.paletteFactorDetails summary:after{content:"+";float:right;color:var(--muted)}.paletteFactorDetails[open] summary:after{content:"−"}.paletteFactorDetails>div{padding-top:10px}.paletteFactorExplore{margin-top:15px;background:transparent;border:0;cursor:pointer;width:100%;font-family:inherit;color:var(--ink)}
.comboBuilderCard{margin-top:18px}.hairTesterCard{margin-top:18px;padding:0!important;overflow:hidden}.hairTesterCard>summary{padding:20px 24px!important;font:400 23px/1.15 Georgia,serif!important;letter-spacing:-.02em;background:var(--surface)}.hairTesterCard>summary:after{font-family:"Segoe UI",Arial,sans-serif;font-size:16px}.hairTesterCard .technicalBody{padding:22px 24px 25px!important;border-top:1px solid var(--line)}
.contrastRecipeGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.contrastRecipe{border-top:1px solid var(--line-strong);padding-top:14px;min-width:0}.contrastRecipeHead{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.contrastRecipeHead strong{font:400 19px/1.15 Georgia,serif}.contrastRecipeHead span{font-size:9px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}.contrastStrip{display:flex;height:92px;margin:12px 0 11px;border:1px solid rgba(48,45,39,.12);overflow:hidden}.contrastStrip i{display:block;min-width:0}.contrastStrip i:nth-child(1){flex:6}.contrastStrip i:nth-child(2){flex:3}.contrastStrip i:nth-child(3){flex:1.2}.contrastRecipe p{font-size:11px!important;line-height:1.55!important;color:var(--muted)!important;margin:0!important}.contrastNames{display:flex;gap:8px;flex-wrap:wrap;font-size:9px;color:var(--muted);margin-bottom:8px}.contrastNames b{font-weight:550;color:var(--ink)}
.svgLabel{font:10px "Segoe UI",Arial,sans-serif;fill:#746b60;letter-spacing:.02em}.svgLabelDark{font:10px "Segoe UI",Arial,sans-serif;fill:#cbbfb4}.svgMicro{font:8px "Segoe UI",Arial,sans-serif;fill:#867c70;letter-spacing:.08em;text-transform:uppercase}.svgMicroDark{font:8px "Segoe UI",Arial,sans-serif;fill:#bcaea2;letter-spacing:.08em}.svgSerif{font:400 15px Georgia,"Times New Roman",serif;fill:#302d27}.svgSerifDark{font:400 15px Georgia,"Times New Roman",serif;fill:#f8f4ee}.svgTiny{font:8px "Segoe UI",Arial,sans-serif;fill:#6f675e}.svgTinyDark{font:8px "Segoe UI",Arial,sans-serif;fill:#c2b6ab}
.visualValuePill{display:inline-flex;align-items:center;gap:7px;margin-top:11px;padding:7px 9px;border:1px solid var(--line);font-size:10px;color:var(--muted)}.visualValuePill b{color:var(--ink);font-weight:600}
@media(prefers-reduced-motion:reduce){.landscapeDot.selected:after{animation:none;opacity:.55;transform:scale(1.2)}}
@media(max-width:1000px){.signatureLayout,.visualDuo,.paletteLandscapeShell{grid-template-columns:1fr}.signatureCard{min-height:0}.visualDuo .visualCard{min-height:0}.contrastRecipeGrid{grid-template-columns:1fr 1fr}.contrastRecipeGrid .contrastRecipe:last-child{grid-column:1/-1}.paletteLandscape{height:440px}.paletteFactorPanel{border-left:0;border-top:1px solid var(--line);padding:22px 0 0;min-height:0}}
@media(max-width:620px){.visualSectionHead{display:block}.visualSectionHead .sectionLead{margin-top:8px}.visualCard,.signatureCard,.paletteLandscapeCard{padding:18px}.visualStage{min-height:280px}.signatureCard .visualStage{min-height:310px}.constellationCard .visualStage{min-height:330px}.seasonWheelCard .visualStage{min-height:300px}.contrastRecipeGrid{grid-template-columns:1fr}.contrastRecipeGrid .contrastRecipe:last-child{grid-column:auto}.paletteFactorWeights{grid-template-columns:1fr}.paletteFactorWeights span{border-right:0;border-bottom:1px solid var(--line);padding:9px 0}.paletteFactorWeights span:last-child{border-bottom:0}.paletteLandscape{height:390px;transform:scale(.92);transform-origin:center top;margin-bottom:-28px}.landscapeDotLabel{width:86px;font-size:8px}.paletteFactorIntro{grid-template-columns:50px minmax(0,1fr) auto}.paletteFactorSwatch{width:50px;height:60px}.hairTesterCard>summary{padding:18px!important}.hairTesterCard .technicalBody{padding:18px!important}}
@media print{.visualCard{break-inside:avoid;background:#fff!important;color:#111!important}.visualCard.dark{background:var(--ink)!important;color:#f8f4ee!important}.signatureLayout,.visualDuo{grid-template-columns:1fr 1fr!important}.visualStage{min-height:0}.signatureCard{min-height:0}.paletteLandscapeShell{grid-template-columns:1fr 1fr!important}.paletteLandscape{height:400px}.paletteFactorPanel{border-left:1px solid #ccc!important;border-top:0!important;padding-left:18px!important}.landscapeDot{box-shadow:0 0 0 1px #555!important}.contrastRecipeGrid{grid-template-columns:repeat(3,1fr)!important}.visualCard.dark .visualKicker,.visualCard.dark .visualCaption{color:#c7bbb0!important}.signatureSummary{color:#f8f4ee!important}}

/* Local restoration is derived-state only; do not imply a restored photo session can be appended to. */
.restored-local-profile .addPhotoResult,.restored-local-profile #headerAddPhotoBtn{display:none!important}


/* Legal + privacy documentation hot fix — 2026-09-20 */
.legalHub{max-width:1080px;margin:auto}.legalHub .routeIntro{max-width:820px}.legalDirectory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:34px}.legalCard{display:flex;flex-direction:column;justify-content:space-between;min-height:176px;padding:22px;border:1px solid var(--line);background:var(--surface);text-decoration:none;transition:transform .16s ease,border-color .16s ease,background .16s ease}.legalCard:hover{transform:translateY(-2px);border-color:var(--line-strong);background:#fffdf9}.legalCard .legalCardKicker{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2);font-weight:700}.legalCard h2{font:400 25px/1.12 Georgia,"Times New Roman",serif;letter-spacing:-.025em;margin:8px 0 12px}.legalCard p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}.legalCard .legalArrow{margin-top:20px;font-size:17px}.legalStatus{margin-top:24px;padding:18px 20px;border:1px solid var(--line);background:var(--paper-2);font-size:12px;line-height:1.7;color:#5f5851}.legalStatus strong{color:var(--ink)}
.policyShell{max-width:1120px;margin:auto;padding:90px 40px}.policyHeader{padding-bottom:34px;border-bottom:1px solid var(--line);margin-bottom:34px}.policyHeader .pageTitle{max-width:780px}.policyMeta{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;font-size:11px;color:var(--muted)}.policyMeta strong{color:var(--ink);font-weight:600}.policyLayout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:54px;align-items:start}.policyToc{position:sticky;top:110px;border-top:1px solid var(--line-strong);padding-top:14px}.policyToc strong{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-bottom:9px}.policyToc a{display:block;text-decoration:none;font-size:11px;line-height:1.45;color:#625a52;padding:6px 0}.policyToc a:hover{text-decoration:underline}.policyBody{max-width:760px;font-size:15px;line-height:1.78;color:#4f4944}.policyBody h2{scroll-margin-top:110px;font:400 30px/1.18 Georgia,"Times New Roman",serif;letter-spacing:-.025em;color:var(--ink);margin:44px 0 12px;padding-top:4px}.policyBody h2:first-child{margin-top:0}.policyBody h3{font-size:15px;color:var(--ink);margin:26px 0 7px}.policyBody p{margin:0 0 16px}.policyBody ul{padding-left:20px;margin:0 0 18px}.policyBody li{margin:7px 0}.policyBody a{font-weight:600}.policyCallout{border-left:2px solid var(--accent);padding:4px 0 4px 16px;margin:22px 0;color:#554d46}.policyNote{border:1px solid var(--line);background:var(--surface);padding:17px 18px;margin:22px 0;font-size:13px;line-height:1.68}.policyNote strong{color:var(--ink)}.policyTableWrap{overflow-x:auto;margin:20px 0 28px}.policyTable{width:100%;border-collapse:collapse;font-size:12px;line-height:1.55}.policyTable th,.policyTable td{text-align:left;vertical-align:top;padding:11px 10px;border-top:1px solid var(--line)}.policyTable th{font-weight:650;color:var(--ink);background:rgba(239,233,223,.45)}.policyTable td{color:#5b544d}.policyActions{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}.contactNeed{border:1px solid rgba(143,67,60,.28);background:#fff8f6;padding:18px;margin:20px 0;font-size:13px;line-height:1.65}.contactNeed strong{display:block;color:#6d3732;margin-bottom:4px}.legalInlineLink{font-weight:650}.uploadPrivacy a{font-weight:700}.privacyMini a{font-weight:650}.ownerActionComment{display:none!important}
@media(max-width:800px){.legalDirectory{grid-template-columns:1fr}.policyShell{padding:58px 22px}.policyLayout{grid-template-columns:1fr;gap:20px}.policyToc{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;border-bottom:1px solid var(--line);padding-bottom:14px}.policyToc strong{grid-column:1/-1}.policyToc a{padding:5px 0}.policyHeader{margin-bottom:24px}}
@media(max-width:520px){.policyShell{padding:48px 16px}.policyToc{grid-template-columns:1fr}.policyBody{font-size:14px}.legalCard{min-height:0}.policyMeta{display:block}.policyMeta span{display:block;margin-top:4px}}
