:root{
  --color-bg:oklch(97.5% .012 100);--color-surface:oklch(94% .022 110);--color-paper:oklch(98.5% .009 100);
  --color-text:oklch(25% .026 126);--color-muted:oklch(46% .023 110);--color-primary:oklch(38% .064 122);
  --color-border:oklch(25% .026 126 / .17);--color-dark:oklch(28% .04 122);--color-light:oklch(96% .023 100);
  --font-body:'Satoshi',Arial,sans-serif;--font-display:'Instrument Serif',Georgia,serif;
  --text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:clamp(2rem,2.1vw + 1rem,2.75rem);--text-hero:clamp(3.6rem,5.35vw + .3rem,5.25rem);
  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;
  --radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:999px;
  --ease:180ms cubic-bezier(.16,1,.3,1);
}
[data-theme=dark]{--color-bg:oklch(21% .017 120);--color-surface:oklch(26% .022 120);--color-paper:oklch(29% .02 120);--color-text:oklch(93% .017 100);--color-muted:oklch(74% .025 105);--color-primary:oklch(80% .09 116);--color-border:oklch(90% .023 100 / .2);--color-dark:oklch(17% .025 122)}
body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.65;background:var(--color-bg);color:var(--color-text);transition:background var(--ease),color var(--ease)}
.wrap{width:min(1200px,calc(100% - 112px));margin-inline:auto}
.skip-link{position:fixed;top:-70px;left:var(--space-4);z-index:50;padding:var(--space-3) var(--space-5);background:var(--color-primary);color:var(--color-bg)}
.skip-link:focus{top:var(--space-4)}
.header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-border);gap:var(--space-8)}
.brand{display:flex;align-items:center;gap:var(--space-2);width:fit-content;min-height:44px}
.brand span{font-size:2.2rem;line-height:1;font-weight:700;letter-spacing:-.08em}
.brand-mark{width:28px;height:32px}
nav{display:flex;gap:var(--space-10);margin-left:var(--space-12)}
nav a{font-size:var(--text-sm);display:flex;align-items:center;min-height:44px;color:var(--color-muted);transition:color var(--ease)}
nav a:hover{color:var(--color-primary)}
.header-end{display:flex;align-items:center;gap:var(--space-4)}
.status{font-size:var(--text-xs);display:inline-flex;align-items:center;gap:var(--space-2);white-space:nowrap;border:1px solid var(--color-border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full)}
.status-dot{display:inline-block;flex-shrink:0;width:6px;height:6px;background:var(--color-primary);border-radius:50%}
.theme-toggle{border:0;background:transparent;border-radius:var(--radius-full);display:grid;place-items:center;width:44px;height:44px;transition:background var(--ease)}
.theme-toggle:hover{background:var(--color-surface)}
.theme-symbol{font-size:1.45rem;line-height:1}
.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:var(--space-16);padding-block:var(--space-12) var(--space-16);align-items:center}
.hero-copy{padding-block:var(--space-8)}
.eyebrow{font-size:var(--text-xs);font-weight:500;letter-spacing:.12em;line-height:1.5}
.hero .eyebrow{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-8)}
.short-rule{width:24px;height:1px;background:currentColor}
h1{font-family:var(--font-display);font-size:var(--text-hero);font-weight:400;line-height:1.01;letter-spacing:-.035em}
.hero-description{max-width:370px;margin-top:var(--space-6);color:var(--color-muted);line-height:1.7}
.button{min-height:52px;display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-10);padding:var(--space-3) var(--space-6);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;transition:background var(--ease),transform var(--ease)}
.primary{background:var(--color-primary);color:var(--color-bg);margin-top:var(--space-8)}
.button span{font-size:var(--text-lg);transition:transform var(--ease)}
.button:hover span{transform:translate(2px,-2px)}
.button:hover{filter:brightness(1.12)}
.button:active{transform:scale(.98)}
.hero-note{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-5)}
.hero-note .status-dot{width:4px;height:4px}
.hero-art{position:relative;min-width:0;height:565px;background:var(--color-surface);overflow:hidden;border-radius:var(--radius-sm)}
.hero-art img{width:100%;height:100%;object-fit:cover;object-position:50% 57%}
.hero-art figcaption{position:absolute;top:var(--space-6);left:var(--space-6);right:var(--space-6);display:flex;justify-content:space-between;gap:var(--space-2);font-size:var(--text-xs);letter-spacing:.07em;color:#414934}
.hero-art figcaption span:last-child{white-space:nowrap}
.image-note{position:absolute;left:var(--space-6);bottom:var(--space-6);display:flex;align-items:center;gap:var(--space-3);color:#34412b;font-size:var(--text-sm);line-height:1.4}
.note-line{width:24px;height:1px;background:currentColor}
.principle-strip{border-block:1px solid var(--color-border);display:flex;justify-content:space-between;padding-block:var(--space-6);color:var(--color-muted);font-size:var(--text-sm)}
.principle-strip span{display:flex;align-items:center;gap:var(--space-3)}
.principle-strip span::before{content:"+";color:var(--color-primary)}
.section-space{padding-block:var(--space-24)}
h2{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.13;font-weight:400;letter-spacing:-.02em}
.serif-italic{font-style:italic;color:var(--color-primary)}
.section-heading .eyebrow,.approach-intro .eyebrow,.faq .eyebrow{margin-bottom:var(--space-6)}
.vision{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-24)}
.vision-copy{max-width:490px}
.vision-copy p+p{margin-top:var(--space-5)}
.vision-copy p{color:var(--color-muted)}
.vision-copy .lead{font-size:var(--text-lg);line-height:1.55;color:var(--color-text);font-weight:500;margin-bottom:var(--space-6)}
.text-link{display:inline-flex;align-items:center;gap:var(--space-6);min-height:44px;font-size:var(--text-sm);font-weight:500;border-bottom:1px solid var(--color-border);transition:color var(--ease),border-color var(--ease)}
.text-link:hover{color:var(--color-primary);border-color:var(--color-primary)}
.vision .text-link{margin-top:var(--space-6)}
.situations{background:var(--color-surface);padding-block:var(--space-20)}
.situations-heading{display:flex;justify-content:space-between;gap:var(--space-8);align-items:flex-end}
.situations-heading .eyebrow{margin-bottom:var(--space-5)}
.situations-heading>p{color:var(--color-muted);font-size:var(--text-sm);padding-bottom:var(--space-1)}
.situations-layout{display:grid;grid-template-columns: .9fr 1.1fr;gap:var(--space-20);margin-top:var(--space-12);align-items:center}
.scenario-tab{display:flex;align-items:center;width:100%;gap:var(--space-5);padding:var(--space-6) 0;background:transparent;border:0;border-bottom:1px solid var(--color-border);text-align:left;font-size:var(--text-base);color:var(--color-muted);transition:color var(--ease)}
.scenario-tab:first-child{border-top:1px solid var(--color-border)}
.scenario-tab[aria-selected=true]{color:var(--color-text)}
.scenario-tab[aria-selected=true]>span:nth-child(2){font-weight:700}
.tab-number{font-size:var(--text-xs);opacity:.8}
.tab-arrow{margin-left:auto;font-size:var(--text-lg);opacity:0;transform:translateX(-4px);transition:opacity var(--ease),transform var(--ease)}
.scenario-tab[aria-selected=true] .tab-arrow,.scenario-tab:hover .tab-arrow{opacity:1;transform:none}
.scenario-panel{background:var(--color-paper);padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:310px;box-shadow:0 6px 22px oklch(25% .026 126 / .035)}
.panel-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}
.panel-top .eyebrow{font-size:var(--text-xs);letter-spacing:.08em;color:var(--color-muted)}
.panel-star{font-size:var(--text-xl);color:var(--color-primary);line-height:1}
.scenario-question{font-family:var(--font-display);font-size:clamp(1.7rem,2vw + .5rem,2.2rem);line-height:1.2;max-width:440px;margin-block:var(--space-6)}
.context-label{font-size:var(--text-xs);color:var(--color-muted);margin-bottom:var(--space-3)}
.context-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.context-tags span{font-size:var(--text-xs);padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-muted)}
.scenario-note{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-6)}
.approach{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--space-20)}
.approach-intro>p:not(.eyebrow){color:var(--color-muted);margin-top:var(--space-6)}
.approach-signature{display:flex;align-items:center;gap:var(--space-4);margin-top:var(--space-10);font-size:var(--text-xs);color:var(--color-muted);line-height:1.5}
.approach-signature svg{width:32px;height:40px;color:var(--color-primary)}
.step{display:grid;grid-template-columns:32px 1fr;gap:var(--space-5);padding-block:var(--space-8);border-top:1px solid var(--color-border)}
.step:first-child{padding-top:var(--space-2);border:0}
.step:last-child{padding-bottom:0}
.step-number{font-size:var(--text-xs);padding-top:var(--space-1);color:var(--color-muted)}
h3{font-size:var(--text-lg);font-weight:500;line-height:1.5}
.step p{color:var(--color-muted);margin-top:var(--space-3);max-width:440px}
.statement{background:var(--color-dark);color:var(--color-light);padding:var(--space-10) var(--space-12) var(--space-12);border-radius:var(--radius-sm)}
.statement-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6)}
.statement-top>.eyebrow{opacity:.75}
.light-status{border-color:oklch(96% .023 100 / .3);font-size:var(--text-xs);letter-spacing:.07em}
.light-status .status-dot{background:oklch(80% .09 116)}
.statement h2{font-size:var(--text-xl);margin-top:var(--space-12)}
.statement .serif-italic{color:oklch(82% .06 110)}
.statement-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-16);margin-top:var(--space-6)}
.statement-bottom p{max-width:500px;color:oklch(83% .025 105)}
.light-button{background:var(--color-light);color:var(--color-dark);flex-shrink:0}
.faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--space-20)}
.faq-list{border-top:1px solid var(--color-border)}
details{border-bottom:1px solid var(--color-border)}
summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding-block:var(--space-6);cursor:pointer;font-size:var(--text-base)}
summary::-webkit-details-marker{display:none}
summary span{color:var(--color-muted);font-size:var(--text-lg);font-weight:400;transition:transform var(--ease)}
details[open] summary span{transform:rotate(45deg)}
.faq-answer{padding-bottom:var(--space-6);padding-right:var(--space-8);font-size:var(--text-sm);color:var(--color-muted);animation:fade-in .25s ease}
.footer{border-top:1px solid var(--color-border);padding-block:var(--space-12) var(--space-6)}
.footer-main{display:flex;justify-content:space-between;align-items:center}
.footer-main p{font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-4)}
.footer-bottom{display:flex;justify-content:space-between;gap:var(--space-5);margin-top:var(--space-12);padding-top:var(--space-6);border-top:1px solid var(--color-border);font-size:var(--text-xs);color:var(--color-muted)}
section[id]{scroll-margin-top:var(--space-10)}
@keyframes fade-in{from{opacity:0}to{opacity:1}}
@media(min-width:1500px){.wrap{width:min(1280px,calc(100% - 160px))}.hero{gap:var(--space-24)}.hero-art{height:620px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:var(--space-8)}nav{margin-left:0;gap:var(--space-6)}.header-end{gap:var(--space-2)}.hero-art{height:530px}.hero-art figcaption span:last-child{display:none}.hero .eyebrow{letter-spacing:.08em}.vision{gap:var(--space-12)}.situations-layout,.approach,.faq{gap:var(--space-12)}.statement-bottom{gap:var(--space-8)}}
@media(max-width:760px){
  .wrap{width:calc(100% - 40px)}.header{height:88px;gap:var(--space-3)}nav{display:none}.header-end{gap:var(--space-1)}.status{font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.brand span{font-size:2rem}.brand-mark{width:25px;height:29px}
  .hero{grid-template-columns:1fr;gap:var(--space-10);padding-block:var(--space-8) var(--space-10)}.hero-copy{padding-block:var(--space-2) 0}.hero .eyebrow{margin-bottom:var(--space-6)}h1{font-size:clamp(3.6rem,10vw,4.8rem)}.hero-description{max-width:430px}.hero-art{height:420px}.hero-art img{object-position:50% 60%}.hero-art figcaption span:last-child{display:block}.hero-art figcaption{left:var(--space-4);right:var(--space-4);top:var(--space-4);font-size:var(--text-xs);letter-spacing:.03em}
  .principle-strip{gap:var(--space-4);flex-wrap:wrap;padding-block:var(--space-5);font-size:var(--text-xs)}.principle-strip span:last-child{display:none}.principle-strip span{gap:var(--space-2)}
  .section-space{padding-block:var(--space-16)}.vision,.approach,.faq{grid-template-columns:1fr;gap:var(--space-8)}.vision-copy{max-width:none}.section-heading .eyebrow,.approach-intro .eyebrow,.faq .eyebrow{margin-bottom:var(--space-5)}
  .situations{padding-block:var(--space-12)}.situations-heading{display:block}.situations-heading>p{margin-top:var(--space-5)}.desktop-break{display:none}.situations-layout{grid-template-columns:1fr;gap:var(--space-8);margin-top:var(--space-8)}.scenario-tab{padding-block:var(--space-5)}.scenario-panel{padding:var(--space-6);min-height:330px}.panel-top{gap:var(--space-2)}.panel-top .eyebrow{letter-spacing:.05em}.scenario-question{font-size:1.9rem}
  .approach-signature{display:none}.step:first-child{padding-top:var(--space-6);border-top:1px solid var(--color-border)}.step{gap:var(--space-3)}.statement{padding:var(--space-8) var(--space-6)}.statement-top{align-items:flex-start;gap:var(--space-6)}.statement-top .eyebrow{max-width:130px;font-size:var(--text-xs)}.light-status{font-size:var(--text-xs);padding:var(--space-1) var(--space-2);letter-spacing:0}.statement h2{margin-top:var(--space-10)}.statement-bottom{display:block}.light-button{margin-top:var(--space-8)}
  .footer{padding-top:var(--space-8)}.footer-main{display:block}.back-top{margin-top:var(--space-6)}.footer-bottom{flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-8)}.footer-bottom span:nth-child(2){order:3;flex-basis:100%}.footer-bottom>span:last-child{margin-left:auto}.faq-answer{font-size:var(--text-base);padding-right:0}
}
@media(max-width:370px){.status{font-size:var(--text-xs)}.header-end{gap:0}.hero-art figcaption span:last-child{display:none}.principle-strip{gap:var(--space-3)}}
