/* Public presentation only. Existing dashboard styles remain in app.css. */
:root{--bg:#03032e;--panel:#10103b;--text:#f2eef9;--muted:#bcb8d3;--line:#ffffff1c;--accent:#a2f3ee;--ink:#052c36;--band:#110c3e;--card:#ffffff05;--header:#03032eed}
html[data-theme=light]{--bg:#f7f8fc;--panel:#fff;--text:#181a39;--muted:#585c74;--line:#171d3a20;--accent:#006b72;--ink:#fff;--band:#eeedf8;--card:#fff;--header:#f7f8fced}
html{scroll-padding-top:110px}body{overflow-wrap:anywhere}.site-header{height:88px;padding:8px max(4vw,20px);gap:22px;background:var(--header);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.site-header .brand img{width:116px;height:68px;object-fit:contain;border-radius:0;background:none;padding:0}.mark-on-light{display:none}html[data-theme=light] .mark-on-dark{display:none}html[data-theme=light] .mark-on-light{display:block}
.site-header{flex-wrap:nowrap;min-height:0}.site-header nav{gap:24px;width:auto;order:0;overflow:visible;white-space:normal}.site-header nav a{position:relative;padding:9px 0}.site-header nav a[aria-current=page]{color:var(--accent)}.site-header nav a[aria-current=page]:after{content:"";position:absolute;height:2px;background:var(--accent);bottom:0;inset-inline:0}
.site-header .controls{gap:14px;white-space:nowrap}.site-header .controls .compact{padding:10px 18px;font-size:13px}.nav-toggle{display:none;width:42px;height:42px;padding:0}.site-header #theme{padding:0;width:38px;height:38px;font-size:22px}
.public-page{font-size:17px;line-height:1.95}.public-page main{max-width:none;padding:88px 0 0;margin:0}.public-page h1,.public-page h2,.public-page h3{text-wrap:balance;font-weight:500}.public-page h1{font-size:clamp(38px,4.2vw,68px);line-height:1.3;letter-spacing:-.04em;margin:22px 0}.public-page h2{font-size:clamp(29px,3vw,44px);line-height:1.45;margin:0 0 24px}.public-page h3{font-size:23px;line-height:1.5;margin:0 0 14px}.public-page p{max-width:76ch;margin:0 0 20px}.public-page .eyebrow{display:inline-block;font-size:12px;font-weight:500;letter-spacing:.12em;margin-bottom:16px}.public-page .button,.public-page button{min-height:46px;gap:16px}.public-page .text-link{display:inline-flex;gap:16px;align-items:center;color:var(--accent);font-weight:500}.public-page .button{padding:13px 24px;font-size:15px}.public-page .actions{gap:25px;margin:28px 0 0}.public-page a,.public-page button{transition:color .2s,background .2s,transform .2s}.public-page .button:hover{transform:translateY(-2px)}
.page-hero{max-width:1440px;margin:auto;min-height:710px;display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:7%;padding:90px 6vw}.hero-copy>p{font-size:19px}.hero-copy{max-width:720px}.hero-art{margin:0;position:relative}.hero-art img{display:block;width:100%;height:500px;object-fit:cover;border-radius:28px;border:1px solid var(--line)}.hero-art img[src$="portrait.webp"]{object-position:50% 25%;height:550px}.page-hero:has(img[src*="/sections/"]) .hero-art img{height:auto;aspect-ratio:1.15;object-fit:cover}.assessment-hero{min-height:540px;padding-block:68px}.assessment-hero .hero-art img{max-height:360px}.assessment-hero h1{font-size:clamp(34px,3.7vw,54px)}
.story-block,.cta-block{padding:100px max(6vw,calc((100vw - 1268px)/2));display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:7%;align-items:center;border-top:1px solid var(--line)}.story-block:nth-of-type(even){background:var(--band)}.story-block:nth-of-type(odd){grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.story-block:nth-of-type(odd) .section-art{order:2}.section-art{margin:0;min-width:0;align-self:start;position:sticky;top:120px}.section-art img{display:block;width:100%;height:auto;aspect-ratio:1.15;object-fit:cover;border-radius:24px;border:1px solid var(--line)}.section-copy{min-width:0}.section-copy>p:last-child{margin-bottom:0}.section-copy .feature-list{padding-inline-start:22px;margin:16px 0 25px;color:var(--muted)}.feature-list li{padding:6px 0 6px 6px}.feature-list li::marker{color:var(--accent)}
.block-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:28px 0}.content-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px}.content-card h3{font-size:20px;color:var(--text)}.content-card p{font-size:16px;margin-bottom:0}.content-card .feature-list{font-size:15px;margin-bottom:0}.story-block[data-block=cards],.story-block[data-block=stages],.story-block[data-block=packages]{grid-template-columns:1fr;gap:40px}.story-block[data-block=cards] .section-art,.story-block[data-block=stages] .section-art,.story-block[data-block=packages] .section-art{position:static;order:0;max-width:100%;height:240px;overflow:hidden;border-radius:24px}.story-block[data-block=cards] .section-art img,.story-block[data-block=stages] .section-art img,.story-block[data-block=packages] .section-art img{height:100%;object-position:center 48%;aspect-ratio:auto}.story-block[data-block=cards] .block-grid,.story-block[data-block=stages] .block-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.method-flow{display:flex;flex-wrap:wrap;gap:14px;list-style:none;padding:0;margin:28px 0}.method-flow li{border:1px solid var(--line);border-radius:100px;padding:12px 22px;color:var(--accent)}
.stage-grid{display:grid;gap:12px;margin:30px 0}.stage-card{border:1px solid var(--line);border-radius:18px;background:var(--card);padding:0}.stage-card summary{padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;font-size:19px}.stage-card summary::-webkit-details-marker{display:none}.stage-card summary span{font-size:26px;transition:transform .2s}.stage-card[open] summary span{transform:rotate(45deg)}.stage-card>div{padding:0 26px 8px}.stage-card>div p{max-width:90ch;font-size:16px}
.cta-block{background:var(--band);grid-template-columns:.65fr 1.35fr;padding-block:76px}.cta-block .section-art{position:static}.cta-block .section-art img{aspect-ratio:1.25}.cta-block .section-copy>p{font-size:18px}.cta-block h2{max-width:25ch}.policy-block{display:grid;grid-template-columns:130px minmax(0,760px);justify-content:center;gap:40px;padding:40px 6vw;border-top:1px solid var(--line)}.policy-block .section-art{position:static}.policy-block .section-art img{aspect-ratio:1;max-width:130px;border-radius:18px}.policy-block h2{font-size:25px}.policy-block p{font-size:16px}
.faq{border:1px solid var(--line);border-radius:16px;padding:0;margin:12px 0;background:var(--card)}.faq summary{padding:20px 24px;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:18px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-size:24px;flex-shrink:0}.faq[open] summary:after{content:"−"}.faq p{padding:0 24px}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}.package-card{padding:30px;border:1px solid var(--line);background:var(--card);border-radius:22px;display:flex;flex-direction:column}.package-card>.button{margin-top:auto}.package-card h3{color:var(--accent)}.package-card p,.package-card li{font-size:15px}
.public-page .collection{padding:80px max(6vw,calc((100vw - 1268px)/2));border-top:1px solid var(--line);background:var(--band)}.collection-heading{display:flex;align-items:center;justify-content:space-between;gap:30px}.collection-heading img{width:210px;height:130px;object-fit:cover;border-radius:18px}.public-page .filters{margin-top:36px}.public-page .filters label{max-width:380px}.public-page .entry{border:1px solid var(--line);padding:0;border-radius:22px;overflow:hidden;background:var(--card);display:flex;flex-direction:column}.entry-image{display:block;overflow:hidden}.public-page .entry img{border-radius:0;display:block;width:100%;height:auto;aspect-ratio:1.5;transition:transform .4s}.entry:hover img{transform:scale(1.035)}.entry-copy{padding:28px;display:flex;flex-direction:column;flex:1}.entry-copy .text-link{margin-top:auto}.public-page .entry h3{font-size:23px}.public-page .collection-grid.list{grid-template-columns:1fr}.collection-grid.list .entry{display:grid;grid-template-columns:.45fr 1fr}.collection-grid.list .entry-image img{height:100%;object-fit:cover}.public-page .entry-detail{max-width:1100px;margin:auto;padding:75px 6vw}.entry-detail .feature{display:block;margin:36px 0 48px;max-height:440px;object-fit:cover}.entry-detail .block-grid{margin-block:30px}
.public-page .narrow{max-width:860px;padding:48px 6vw;margin:40px auto 70px}.public-page .narrow h1{font-size:clamp(32px,4vw,48px)}.section-banner{display:block;width:100%;height:210px;object-fit:cover;border-radius:22px;margin-bottom:34px}.success-panel{text-align:center}.success-panel .button{margin-top:20px}.request-section{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:90px max(6vw,calc((100vw - 1268px)/2));border-top:1px solid var(--line)}.request-section>div>img{width:100%;height:auto;border-radius:24px;margin-top:24px}.request-form{padding:30px;background:var(--panel);border:1px solid var(--line);border-radius:24px;align-self:start}.public-page label{font-size:15px}.public-page .check{line-height:1.85;font-size:14px;gap:12px}.public-page .check input{margin-top:5px}.public-page input:not([type=checkbox]):not([type=radio]),.public-page textarea,.public-page select{border-color:var(--line);border-radius:12px;padding:13px 15px}.public-page .notice{font-size:16px}.form-feedback{border:1px solid #f3a4af;background:#8d1b321a;color:var(--text);padding:16px 20px;border-radius:12px}.public-page button:disabled{opacity:.6;cursor:wait}
.assessment-shell{max-width:1100px;margin:0 auto 90px;padding:45px 5vw;border:1px solid var(--line);border-radius:30px;background:var(--panel)}.assessment-heading{display:flex;align-items:center;gap:30px;justify-content:space-between;margin-bottom:28px}.assessment-heading h2{font-size:31px}.assessment-heading img{width:200px;height:145px;object-fit:cover;border-radius:18px}.assessment-progress p{font-size:13px;margin-block:12px}.step-pills{list-style:none;padding:0;display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.step-pills li{border:1px solid var(--line);border-radius:100px;padding:7px 16px;font-size:13px;color:var(--muted)}.step-pills li[aria-current=step]{background:var(--accent);color:var(--ink);border-color:var(--accent)}.assessment-shell fieldset{margin:10px 0}.assessment-shell legend{font-size:28px;padding-bottom:10px}.gate-card{display:flex;align-items:center;gap:16px;padding:24px;border:1px solid var(--line);border-radius:16px;margin:14px 0;cursor:pointer;background:var(--card)}.gate-card:has(:checked){border-color:var(--accent)}.selection-mark{margin-inline-start:auto;color:var(--accent);opacity:.15}.gate-card:has(:checked) .selection-mark{opacity:1}.question-card{padding:25px 0 32px;border-bottom:1px solid var(--line)}.question-card h3{display:flex;align-items:baseline;gap:15px;font-size:19px;line-height:1.85}.question-number{font-size:13px;color:var(--accent);letter-spacing:.1em}.answer-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:24px}.answer-tile{position:relative;padding:18px 12px;display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid var(--line);border-radius:14px;cursor:pointer;gap:7px;font-size:13px!important;line-height:1.65;background:var(--card);min-height:135px}.answer-tile input{position:absolute;width:1px!important;height:1px!important;opacity:0}.answer-tile:has(:focus-visible){outline:3px solid var(--accent);outline-offset:4px}.answer-tile:has(:checked){border-color:var(--accent);background:#81e9ed16}.answer-number{font-size:27px;color:var(--accent);line-height:1.3}.answer-tile:has(:checked) .answer-number{background:var(--accent);color:var(--ink);border-radius:50%;width:37px;height:37px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-block:25px}.wizard-actions{display:flex;gap:14px;justify-content:flex-end;border-top:1px solid var(--line);padding-top:25px}.wizard-actions #previous{margin-inline-end:auto}.privacy-hint,.scale-help{font-size:14px}.public-page .consent{padding:24px;border-radius:16px;border:1px solid var(--line);margin-top:25px}.assessment-shell progress{height:6px;border:0;border-radius:99px;overflow:hidden;background:var(--line)}progress::-webkit-progress-bar{background:var(--line)}progress::-webkit-progress-value{background:var(--accent)}progress::-moz-progress-bar{background:var(--accent)}
.result-shell{max-width:1200px;margin:auto;padding:70px 6vw 90px}.result-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center}.result-heading img{width:100%;height:auto;border-radius:24px}.result-heading h1{font-size:clamp(32px,3.6vw,50px)}.result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:45px 0}.result-card{padding:28px;background:var(--band);border:1px solid var(--line);border-radius:22px}.result-card h2{font-size:23px}.result-card p{font-size:15px}.result-notes{max-width:800px}.result-notes p{font-size:16px}
.public-page .site-footer{margin:0;padding:30px max(6vw,calc((100vw - 1268px)/2));background:var(--bg);font-size:12px;align-items:center;gap:18px;flex-wrap:wrap}.site-footer div{flex-wrap:wrap;gap:20px}.public-page .site-footer a:hover{text-decoration:underline}.public-page .reveal{transition:opacity .6s,transform .6s}.public-page .reveal.is-waiting{opacity:0;transform:translateY(18px)}.admin-page .english-editor{border:1px solid var(--line);border-radius:16px;padding:20px}.admin-page .english-editor[open]{display:grid;gap:20px}.admin-page .english-editor textarea,.admin-page .english-editor input{direction:ltr;text-align:left}
@media(min-width:1500px){.page-hero{padding-inline:86px}}
@media(max-width:1120px){.site-header{gap:14px}.site-header nav{gap:14px;font-size:12px}.site-header .controls{gap:8px}.site-header .brand img{width:95px}.story-block,.cta-block{gap:40px}.public-page .collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.package-grid{grid-template-columns:1fr}.package-card{display:block}.package-card>.button{margin-top:24px}}
@media(max-width:900px){.site-header{height:80px;padding-inline:20px}.site-header .brand{margin-inline-end:auto}.nav-toggle{display:inline-flex;order:3}.site-header nav{display:none;position:fixed;inset:80px 0 auto;background:var(--bg);padding:22px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px #0002;font-size:17px;max-height:calc(100dvh - 80px);overflow:auto}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:6px}.site-header nav a{padding:12px 20px}.public-page main{padding-top:80px}.page-hero{min-height:0;padding:65px 6vw;gap:35px}.hero-art img,.hero-art img[src$="portrait.webp"]{height:410px}.hero-copy>p{font-size:17px}.story-block,.story-block:nth-of-type(odd),.cta-block{padding:65px 6vw;grid-template-columns:1fr;gap:35px}.section-art,.story-block:nth-of-type(odd) .section-art{order:0;position:static;max-width:100%;height:300px}.section-art img{height:100%;aspect-ratio:auto;object-position:center 45%}.story-block[data-block=cards] .block-grid,.story-block[data-block=stages] .block-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.request-section{padding:65px 6vw;gap:35px}.assessment-shell{margin-inline:4vw}.result-grid{gap:12px}.result-card{padding:22px}.policy-block{grid-template-columns:90px 1fr;gap:25px}.policy-block .section-art{height:auto}.policy-block .section-art img{aspect-ratio:1;height:auto}}
@media(max-width:640px){.site-header .brand img{width:91px;height:56px}.site-header .controls .compact{font-size:11px;padding:8px 10px;min-height:38px}.site-header .controls{font-size:13px}.site-header #theme{width:30px;height:34px}.site-header{gap:9px;padding-inline:14px}.nav-toggle{width:34px;height:34px}.page-hero{grid-template-columns:1fr;padding-top:45px;gap:38px}.hero-art{width:100%;max-width:480px;margin-inline:auto}.hero-art img,.hero-art img[src$="portrait.webp"]{height:380px}.page-hero:has(img[src*="/sections/"]) .hero-art img{height:245px;aspect-ratio:auto}.public-page h1{font-size:39px}.public-page h2{font-size:29px}.public-page .eyebrow{font-size:11px}.public-page .actions{gap:18px}.public-page .button{font-size:14px}.block-grid,.story-block[data-block=cards] .block-grid,.story-block[data-block=stages] .block-grid{grid-template-columns:1fr}.section-art{height:240px}.content-card{padding:22px}.cta-block{padding-block:50px}.public-page .collection{padding-block:50px}.collection-heading img{width:105px;height:105px}.collection-heading h2{font-size:25px}.public-page .collection-grid{grid-template-columns:1fr}.collection-grid.list .entry{display:flex}.public-page .filters label{min-width:110px}.public-page .filters{gap:12px}.filters #viewMode{width:100%}.entry-copy{padding:24px}.request-section{grid-template-columns:1fr}.request-section>div>img{height:220px;object-fit:cover}.request-form{padding:24px}.assessment-shell{padding:28px 20px;border-radius:20px;margin-bottom:50px}.assessment-heading{gap:20px;align-items:flex-start}.assessment-heading h2{font-size:24px}.assessment-heading img{width:82px;height:100px}.assessment-heading p{font-size:13px}.step-pills{gap:6px}.step-pills li{font-size:11px;padding:5px 9px}.answer-grid{grid-template-columns:1fr;gap:8px;margin-top:15px}.answer-tile{min-height:0;padding:12px 18px;flex-direction:row;text-align:start;gap:18px;font-size:14px!important}.answer-number{font-size:21px;width:30px;text-align:center}.answer-tile:has(:checked) .answer-number{width:30px;height:30px}.question-card h3{font-size:17px}.form-grid{grid-template-columns:1fr}.gate-card{padding:20px 16px;font-size:14px!important;gap:10px}.assessment-shell legend{font-size:25px}.result-heading,.result-grid{grid-template-columns:1fr;gap:24px}.result-heading img{max-height:260px;object-fit:cover}.result-card{padding:26px}.result-grid{margin-block:32px}.policy-block{grid-template-columns:1fr;gap:20px;padding-block:30px}.policy-block .section-art{width:90px;height:70px}.policy-block .section-art img{width:90px;height:70px}.public-page .site-footer{flex-direction:column;text-align:center;padding-block:28px;gap:14px}.site-footer div{justify-content:center}.public-page .narrow{margin-top:15px}.section-banner{height:170px}.public-page .entry-detail{padding-top:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.public-page .reveal.is-waiting{opacity:1;transform:none}}
@media print{.site-header,.site-footer,.skip,.result-shell .actions{display:none!important}.public-page,.public-page main{background:white!important;color:#191b30!important;padding:0!important}.result-shell{padding:10mm;max-width:none}.result-heading img{max-width:170px}.result-card{background:#f4f5f8!important;break-inside:avoid}.public-page p,.public-page .eyebrow{color:#30364a!important}.public-page h1{font-size:30px}.result-card h2{font-size:19px}.reveal{opacity:1!important;transform:none!important}}
