/* Shared brand, typography and responsive layout for every page. */
:root{--max:1180px;--muted:#aab7c5;--line:#263442;color-scheme:dark;font-size:100%}
html{scroll-padding-top:1.5rem}
body{font-family:Arial,"Helvetica Neue",system-ui,sans-serif;font-size:1rem;line-height:1.6}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
a,button,input,select,textarea{touch-action:manipulation}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8bdaff;outline-offset:4px}
.wrap{width:min(calc(100% - 3rem),var(--max))}
.site-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.75rem;min-height:106px;padding-block:1.25rem;border-bottom:1px solid var(--line)}
.site-brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;flex:none;min-width:0}
.site-logo{display:block;width:48px;height:auto;flex-shrink:0}
.site-word{display:flex;flex-direction:column;gap:.25rem;font-size:1.15rem;font-weight:800;letter-spacing:.12em;line-height:1.25;color:var(--ink)}
.site-word small{max-width:18rem;letter-spacing:.035em;font-size:.75rem;line-height:1.5;font-weight:400;color:var(--muted)}
.nowrap{white-space:nowrap}
.site-nav{display:flex;justify-content:flex-end;align-items:center;gap:.5rem 1.25rem;flex-wrap:wrap;min-width:0}
.site-nav a{display:block;padding:.5rem 0;text-decoration:none;font-size:.9375rem;line-height:1.45;color:#cbd5df;white-space:nowrap}
.site-nav a:hover,.site-nav a[aria-current=page]{color:#8bdaff}
.site-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:.4rem}
.lang{display:flex;gap:0;flex:none;padding:3px;border:1px solid var(--line);border-radius:999px}
.lang button{min-width:42px;min-height:42px;padding:.5rem;border:0;border-radius:999px;font-size:.875rem;color:#b8c5d2;cursor:pointer;background:none}
.lang button.active{background:#162c40;color:#fff}
.skip-link{position:absolute;top:.5rem;left:1rem;transform:translateY(-200%);z-index:20;padding:.7rem 1rem;background:#08a9ff;color:#00121d;font-weight:700}
.skip-link:focus{transform:translateY(0)}
h1,h2,h3{overflow-wrap:break-word;text-wrap:balance}
h1{line-height:1.02;letter-spacing:-.045em}
h2{line-height:1.15}
p{overflow-wrap:break-word}
.hero{gap:3rem;padding-block:5rem;min-height:0}
body[data-page=home] h1{font-size:clamp(2.6rem,5.65vw,4.65rem);line-height:1.02}
body[data-page=home] .hero{grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr)}
.lead{font-size:1.125rem;line-height:1.7}
.eyebrow,.kicker,.tag{font-size:.8125rem;letter-spacing:.11em}
.section-top h2,.ai h2,.cta h2{line-height:1.08}
.section-top,.advice-row{gap:3rem}
.cards,.grid{gap:1.25rem}
.card{padding:1.75rem 1.75rem 3.25rem}
.card .idx,.item small,.signal .label{font-size:.8125rem;color:#9baebf}
.card h3,.item h2{line-height:1.25}
.metric small{font-size:.875rem;line-height:1.6;display:block;margin-top:.25rem}
.actions .btn{padding:.85rem 1.25rem;line-height:1.45;min-height:52px}
.btn span{font-size:1rem}
.riskrow{font-size:1rem;letter-spacing:.07em}
.step{min-width:0;padding:1.75rem;min-height:150px}
.step h3{font-size:1.1rem;margin-top:2rem;line-height:1.4}
.site-footer{border-top:1px solid var(--line);padding:2rem 0;color:var(--muted);font-size:.875rem}
.site-footer-inner{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}
.site-footer .site-logo{width:40px}
.site-footer .site-word{font-size:1rem}
.subpage .hero{padding:3rem 0 3.5rem;max-width:960px}
.subpage h1{font-size:clamp(2.5rem,5.6vw,4.75rem);margin:1rem 0 1.5rem}
.subpage .back{margin-top:2rem;font-size:.9375rem;min-height:44px;display:inline-flex;align-items:center}
.subpage .grid,.subpage .formbox{padding-bottom:5rem}
.item{padding:2rem;min-height:0;min-width:0}
.grid>*{min-width:0}
.item h2{overflow-wrap:anywhere}
.item h2{margin:1.25rem 0 .75rem}
.item p{margin:0;line-height:1.7}
.formbox{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:3rem}
.side{padding:1.75rem}
form{gap:1.25rem}
label{font-size:.9375rem;line-height:1.5;min-width:0}
input,select,textarea{font-size:1rem;min-height:48px;padding:.8rem;border-color:#405366}
textarea{min-height:160px}
.check{font-size:.9375rem;align-items:flex-start}
.check input{width:20px;height:20px;min-height:20px;flex:none;margin-top:2px;accent-color:var(--blue)}
.note{font-size:.875rem;line-height:1.6;color:#aab7c5;margin:0}
.success{font-size:.9375rem;line-height:1.6}
.success:empty{display:none}
.email-fallback{grid-column:1/-1;margin:0;font-size:.9375rem;color:var(--muted)}
.email-fallback a{color:#8bdaff;overflow-wrap:anywhere}
@media(max-width:1100px){.site-header{grid-template-columns:1fr auto;gap:1rem}.site-nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:.5rem 2rem}.site-header>.lang{grid-column:2;grid-row:1}}
@media(max-width:850px){body[data-page=home] .hero,.formbox{grid-template-columns:1fr}.hero{gap:2rem;padding-block:3rem}.section-top,.advice-row{gap:1rem}.ai-grid{gap:2rem}.subpage .grid{grid-template-columns:1fr 1fr}.subpage .hero{padding-block:2rem 3rem}section{padding-block:4rem}.advice{padding-block:2rem}.cta{padding-block:4rem}.signal{max-width:none}}
@media(max-width:600px){.wrap{width:calc(100% - 2rem)}.site-header{padding-block:1rem;gap:1rem .5rem}.site-brand{gap:.55rem}.site-logo{width:38px}.site-word{font-size:1rem;letter-spacing:.08em}.site-word small{font-size:.75rem;max-width:13rem}.lang button{min-width:36px;min-height:44px;padding:.3rem}.site-nav{gap:.25rem 1.25rem}.site-nav a{font-size:.875rem;white-space:normal;min-height:44px;display:flex;align-items:center}.subpage .grid,.formbox,form{grid-template-columns:1fr}.subpage .hero{padding-top:1.5rem}.subpage .grid,.subpage .formbox{padding-bottom:3rem}.item,.side,.signal,.riskmap{padding:1.5rem}.hero{padding-top:2.5rem}body[data-page=home] h1{font-size:clamp(2.35rem,9.5vw,3.35rem)}.subpage h1{font-size:clamp(2.2rem,9vw,3.3rem)}.section-top h2{font-size:2.3rem}.ai h2{font-size:2.5rem}.cta-box{padding:2rem 1.5rem}.step{padding:1.5rem}.step h3{margin-top:1rem}.site-footer-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:380px){.site-header{grid-template-columns:1fr}.site-header>.lang{grid-column:1;grid-row:2;justify-self:start}.site-nav{grid-row:3}.site-word small{max-width:16rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.card:hover{transform:none}}
/* AI Literacy extends the existing DUALVOLTS section rhythm. */
.literacy-intro{max-width:58rem}.literacy h2{font-size:clamp(2rem,3.6vw,3.5rem);line-height:1.15;letter-spacing:-.035em;margin:1rem 0 1.75rem;text-wrap:pretty}.literacy p,.ai-course p{font-size:1.0625rem;line-height:1.75;color:var(--muted);max-width:64rem}.literacy .lead{color:#d0dce7}.literacy h3{font-size:1.35rem;line-height:1.3;margin:0 0 1rem}.literacy-example{border-left:3px solid var(--blue);padding:1.5rem 0 1.5rem 1.75rem;margin:2.5rem 0;background:linear-gradient(90deg,#091822,transparent)}.literacy-example p{margin:0;max-width:58rem}.literacy-columns{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin:3rem 0}.literacy ul{padding-left:1.2rem;margin:0}.literacy li{padding-left:.25rem;margin:.9rem 0;color:var(--muted);font-size:1rem;line-height:1.7}.literacy li::marker{color:var(--blue)}.literacy-law{border-top:1px solid var(--line);padding-top:2rem}.literacy .source-note{font-size:.875rem}.literacy a,.ai-course a{color:#8bdaff;text-underline-offset:.2em}.literacy .btn.primary{color:#00121d}.ai-course{padding:2.5rem 0 3rem;border-top:1px solid var(--line);margin-bottom:2rem}.ai-course h2{color:var(--blue);font-size:2rem;margin:0 0 1.25rem}.ai-course .course-button{display:inline-block;width:auto;text-decoration:none;color:#00131d;margin-top:.5rem}.ai-course .lead{color:#d0dce7}@media(max-width:750px){.literacy-columns{grid-template-columns:1fr;gap:2rem}.literacy-example{padding-left:1.25rem}.literacy h2{font-size:2.15rem}.ai-course .course-button{width:100%;text-align:center}}@media(prefers-reduced-motion:reduce){.literacy{scroll-behavior:auto}}
