/* Layout and shared component styles. Values are defined in tokens.css. */
*{box-sizing:border-box}body{margin:0;background:var(--page-atmosphere)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,label{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a,button,input,select,textarea,summary{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--green)}main:focus{outline:none}h1,h2,h3,p{margin-top:0}h1{font-size:var(--type-heading-1);line-height:var(--leading-1);letter-spacing:var(--tracking-1);font-weight:var(--weight-heading);margin-bottom:var(--space-bottom-1)}h2{font-size:var(--type-heading-2);line-height:var(--leading-2);letter-spacing:var(--tracking-2);font-weight:var(--weight-heading)}h3{font-size:var(--type-heading-3);line-height:var(--leading-3);letter-spacing:var(--tracking-3);font-weight:var(--weight-heading)}em{font-style:normal;font-family:inherit;color:inherit}p{font-size:var(--type-body);line-height:var(--leading-4)}.lead{font-size:var(--type-lead);line-height:var(--leading-5);color:var(--muted)}.eyebrow{font-size:var(--type-caption);font-weight:var(--weight-heading);letter-spacing:var(--tracking-4);color:var(--muted);margin-bottom:var(--space-bottom-2)}.number{font-size:var(--type-caption);color:var(--muted)}
/* A single material: transmission, a reflected edge, an inner meniscus and elevation. */
:where(.glass-surface,.button,.text-button,.choice,.answer,.site-nav,dialog,.calc-result,.back,.faq-list details,form input,form select,form textarea){position:relative;border:1px solid var(--neutral-1);background:var(--glass-background);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--glass-backdrop);backdrop-filter:var(--glass-backdrop);border-radius:var(--radius-glass)}
:where(.button,.text-button,.choice,.answer,.back){isolation:isolate;transition:var(--transition-1);color:var(--ink)}:where(.button,.text-button,.choice,.answer,.back):hover{transform:translateY(-2px);box-shadow:var(--glass-shadow-hover)}:where(.button,.text-button,.choice,.answer,.back):active{transform:scale(.982) translateY(0)}
.button{display:inline-flex;justify-content:center;align-items:center;gap:var(--gap-1);padding:var(--inset-1);min-height:var(--control-height-1);font-size:var(--type-7);font-weight:var(--weight-2);border-radius:var(--radius-capsule)}.button.small{padding:var(--inset-2);font-size:var(--type-8);min-height:var(--control-height-2)}.button.light{background:var(--glass-background);color:var(--ink)}.text-button{padding:var(--inset-3);min-height:var(--control-height-2);font-size:var(--type-9);border-radius:var(--radius-capsule)}button:disabled{background:var(--neutral-10);color:var(--muted);opacity:1;cursor:default;transform:none}.close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:0;border-radius:var(--radius-3);background:var(--neutral-4);font-size:var(--type-10);color:var(--ink)}
header{height:100px;padding:var(--inset-4);display:flex;justify-content:space-between;align-items:center;gap:var(--gap-2);max-width:1600px;margin:auto}.logo{display:block;width:172px;height:44px;position:relative;overflow:hidden;flex-shrink:0;border-radius:var(--radius-4)}.logo img{position:absolute;width:182px;max-width:none;left:-5px;top:-69px}.header-note{font-size:var(--type-8);color:var(--muted)}.account{display:flex;gap:var(--gap-3);align-items:center}.site-nav{display:flex;position:sticky;top:16px;z-index:20;width:max-content;max-width:calc(100% - 40px);padding:var(--inset-5);gap:var(--gap-4);align-items:center;margin:0 auto 30px;border-radius:var(--radius-capsule);background-color:var(--neutral-5)}.site-nav a{font-size:var(--type-8);white-space:nowrap;padding:var(--inset-6);border-radius:var(--radius-capsule);transition:var(--transition-3);min-height:var(--control-height-3);display:flex;align-items:center}.site-nav a:hover{background:var(--neutral-6)}.site-nav [aria-current]{background:var(--green-hover);color:var(--green);box-shadow:var(--glass-selection-shadow)}.site-nav [aria-current]::after{content:'';height:4px;width:4px;border-radius:var(--radius-3);background:var(--green);margin-left:7px}
.centered-entry{min-height:var(--control-height-4);display:flex;align-items:center;flex-direction:column;padding:var(--inset-7);background:transparent}.centered-entry .intro{text-align:center;max-width:950px}.centered-entry h1{font-size:var(--type-11);margin-bottom:var(--space-bottom-2)}.centered-entry .lead{font-size:var(--type-12);max-width:600px;margin:0 auto}.centered-entry .choices{display:flex;flex-direction:column;gap:var(--gap-5);max-width:640px;width:100%;margin:48px auto 0}.centered-entry .choice{display:flex;align-items:center;justify-content:space-between;padding:var(--inset-8);min-height:var(--control-height-5);font-size:var(--type-13);line-height:var(--leading-6);border-radius:var(--radius-capsule);text-align:left;gap:var(--gap-6)}.choice.featured{color:var(--green)}.choice>span:last-child{color:var(--muted);font-size:var(--type-14)}.centered-entry .existing{font-size:var(--type-15);margin-top:auto;padding-top:48px;text-align:center;line-height:var(--leading-5)}.existing strong{font-weight:var(--weight-heading);color:var(--green);white-space:nowrap}.entry-bottom{display:flex;justify-content:space-between;padding:var(--inset-9);font-size:var(--type-16);color:var(--muted)}
.hero{padding:var(--inset-10);max-width:1500px;margin:auto;color:var(--ink);background:transparent}.hero h1{max-width:1150px;font-size:var(--type-17)}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--gap-7);margin-top:var(--space-top-1)}.hero-bottom p{font-size:var(--type-13);color:var(--muted);margin:0}.hero-rule{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:var(--space-top-2);padding-top:24px;font-size:var(--type-16);letter-spacing:var(--tracking-5);color:var(--muted)}.section{padding:var(--inset-11);max-width:1500px;margin:auto}.approach{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--gap-8)}.large-copy{font-size:var(--type-18);line-height:var(--leading-7);font-weight:var(--weight-3);letter-spacing:var(--tracking-3)}.approach-copy>p:not(.large-copy){color:var(--muted)}.principles>div{display:grid;grid-template-columns:145px 1fr;gap:var(--gap-6);border-top:1px solid var(--line);padding-top:22px}.principles span{font-size:var(--type-caption);color:var(--muted);padding-top:5px}.principles p{font-size:var(--type-19)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--gap-9);margin-bottom:var(--space-bottom-3)}.section-heading h2{margin:0}.section-heading>p{color:var(--muted);font-size:var(--type-19)}.offering-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap-10)}.offering-grid article{padding:var(--inset-12);border-top:1px solid var(--line)}.offering-grid h3{margin:24px 0 18px;min-height:var(--control-height-6)}.offering-grid p{font-size:var(--type-19);color:var(--muted)}.closing{text-align:center;padding:var(--inset-13);background:transparent}.closing h2{font-size:var(--type-20)}.paper,.offerings{background:var(--surface-section);border-radius:var(--radius-5)}.page-head{padding:var(--inset-14);text-align:center;max-width:1300px;margin:auto;background:transparent}.page-head .lead{max-width:800px;margin:0 auto}.editorial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap-9);padding:var(--inset-15);max-width:1500px;margin:auto}.editorial-grid article{padding:var(--inset-16);border-top:1px solid var(--line)}.editorial-grid p{color:var(--muted)}.read-link{color:var(--ink);text-decoration:underline;text-underline-offset:5px;line-height:var(--leading-8)}.read-link:hover{color:var(--green)}.reading{max-width:950px;padding-top:45px;padding-bottom:45px}.reading h2{font-size:var(--type-21);margin-top:var(--space-top-3)}.reading h2:first-child{margin-top:0}.reading p{font-size:var(--type-12);color:var(--neutral-9)}.source-note{font-size:var(--type-8);margin-top:var(--space-top-4)}
.philosophy{padding:var(--inset-17);max-width:1500px;margin:auto;min-height:var(--control-height-7)}.back{display:inline-flex;padding:var(--inset-18);font-size:var(--type-8);margin-bottom:var(--space-bottom-4);border-radius:var(--radius-capsule)}.philosophy-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--gap-11)}.philosophy-copy{padding-top:35px}.philosophy-copy h2{font-size:var(--type-21)}.philosophy-copy p{color:var(--muted)}.philosophy-copy .button{margin-top:var(--space-top-5)}.questionnaire{padding:var(--inset-19)}.questionnaire .back{margin-bottom:var(--space-bottom-5)}.question-inner{max-width:680px;margin:auto}.question-inner>.eyebrow{display:flex;justify-content:space-between}.question-inner h1{font-size:var(--type-22)}.question-inner>p{color:var(--muted)}.progress{height:4px;background:var(--neutral-10);border-radius:var(--radius-capsule);margin-bottom:var(--space-bottom-6);overflow:hidden}.progress span{display:block;height:100%;background:var(--green);border-radius:var(--radius-capsule);transition:var(--transition-4)}fieldset{border:0;margin:28px 0;padding:0}.answer{display:flex;gap:var(--gap-5);align-items:center;padding:var(--inset-20);margin-bottom:var(--space-bottom-7);cursor:pointer;border-radius:var(--radius-6);font-size:var(--type-19)}.answer:has(input:checked){box-shadow:var(--glass-selection-shadow);background-color:var(--green-wash)}.answer input{accent-color:var(--green);width:19px;height:19px;flex-shrink:0}.quiz-actions{display:flex;align-items:center;justify-content:space-between}.question-inner .privacy-note{font-size:var(--type-caption);margin-top:var(--space-top-6)}.result{max-width:900px;margin:auto;padding:var(--inset-21)}.result h1{font-size:var(--type-23)}.result dl{margin:36px 0}.result dl div{display:grid;grid-template-columns:180px 1fr;gap:var(--gap-6);border-bottom:1px solid var(--line);padding:var(--inset-22)}.result dt{color:var(--muted)}.result dd{margin:0}.result>.text-button{margin-left:16px}
.faq-list{max-width:1050px;padding-top:25px}.faq-list details{padding:var(--inset-23);border-radius:var(--radius-7);margin-bottom:var(--space-bottom-8)}.faq-list summary{cursor:pointer;font-size:var(--type-lead);line-height:var(--leading-6)}.faq-list p{margin:20px 0 0;color:var(--muted)}.faq-list details[open] p{animation:var(--animation-1)}.contact-grid,.calculator{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-12);align-items:start}.contact-grid h2{font-size:var(--type-24)}.contact-details address{font-style:normal;font-size:var(--type-body);line-height:var(--leading-4)}form label{display:block;font-size:var(--type-7);font-weight:var(--weight-3);margin-bottom:var(--space-bottom-2)}form input,form select,form textarea{display:block;width:100%;padding:var(--inset-24);margin-top:var(--space-top-7);border-radius:var(--radius-8);color:var(--ink);font-weight:var(--weight-4);min-height:var(--control-height-8)}form textarea{resize:vertical;line-height:var(--leading-5)}form input:focus,form select:focus,form textarea:focus{background:var(--neutral-12)}select option{background:var(--neutral-7);color:var(--ink)}.notice{padding:var(--inset-25);background:var(--neutral-13);border-radius:var(--radius-9);font-size:var(--type-9)}.calc-result{padding:var(--inset-26);color:var(--ink);border-radius:var(--radius-10);position:sticky;top:120px}.result-value{display:block;font-weight:var(--weight-heading);font-size:var(--type-25);letter-spacing:var(--tracking-2);overflow-wrap:anywhere}.calc-result dl{margin:30px 0}.calc-result dl div{display:flex;justify-content:space-between;gap:var(--gap-6);border-bottom:1px solid var(--line);padding:var(--inset-22);font-size:var(--type-7)}.calc-result dd{margin:0;text-align:right}.calc-result>p:last-child,.calculator form p{font-size:var(--type-8);color:var(--muted)}#note-status{font-size:var(--type-7);color:var(--green);margin-top:var(--space-top-8)}dialog{max-width:510px;width:calc(100% - 40px);padding:var(--inset-27);border-radius:var(--radius-10);color:var(--ink);animation:var(--animation-2)}dialog::backdrop{background:var(--neutral-14);backdrop-filter:none}dialog h2{font-size:var(--type-26)}dialog p{color:var(--muted)}footer{padding:var(--inset-28);margin-top:var(--space-top-4);border-top:1px solid var(--line);background:var(--surface-section)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:var(--gap-13);font-size:var(--type-8)}.footer-top>span{color:var(--muted)}.footer-links{display:flex;flex-wrap:wrap;gap:var(--gap-14);font-size:var(--type-8);margin-top:var(--space-top-6)}.footer-links a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:var(--gap-1);border-top:1px solid var(--line);padding-top:25px;margin-top:var(--space-top-9);font-size:var(--type-caption);color:var(--muted)}.risk{font-size:var(--type-caption);color:var(--muted);margin:18px 0 0}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{display:block;padding:var(--inset-29)}.intro-foot{display:none}main{animation:var(--animation-3)}@keyframes arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@supports(backdrop-filter:url('#glass-lens')){.site-nav{backdrop-filter:var(--nav-backdrop)}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.site-nav,.choice,.answer,.button,.text-button,dialog,.calc-result{background:var(--neutral-15);border:1px solid var(--neutral-16)}}
@media(max-width:1100px){.site-nav{flex-wrap:wrap;justify-content:center;width:calc(100% - 40px);border-radius:var(--radius-11)}.site-nav a{padding:var(--inset-30)}.offering-grid{grid-template-columns:repeat(2,1fr)}.editorial-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){header{height:85px;padding:var(--inset-31);gap:var(--gap-3)}.logo{width:130px;height:35px}.logo img{width:138px;top:-52px;left:-4px}.header-note{font-size:var(--type-16)}.account{gap:var(--gap-15)}.account .button,.account .text-button{font-size:var(--type-16);padding:var(--inset-30);min-height:var(--control-height-3)}.account .button{gap:var(--gap-16)}.site-nav{top:8px;max-width:calc(100% - 24px);width:calc(100% - 24px);gap:0;padding:var(--inset-32);margin-bottom:var(--space-bottom-5);border-radius:var(--radius-12)}.site-nav a{font-size:var(--type-caption);padding:var(--inset-33)}.centered-entry{padding:var(--inset-34);min-height:var(--control-height-9)}.centered-entry h1{font-size:var(--type-27)}.centered-entry .eyebrow{font-size:var(--type-16)}.centered-entry .lead{font-size:var(--type-19)}.centered-entry .choices{margin-top:var(--space-top-10);gap:var(--gap-17)}.centered-entry .choice{font-size:var(--type-body);min-height:var(--control-height-10);padding:var(--inset-20);border-radius:var(--radius-11)}.centered-entry .existing{font-size:var(--type-12);padding-top:35px}.entry-bottom{font-size:var(--type-28);gap:var(--gap-6);line-height:var(--leading-5)}.hero{padding:var(--inset-28)}.hero h1{font-size:var(--type-27)}.hero-bottom{display:block;margin-top:var(--space-top-9)}.hero-bottom p{font-size:var(--type-12);margin-bottom:var(--space-bottom-9)}.hero-rule{margin-top:var(--space-top-11);gap:var(--gap-1);font-size:var(--type-28);line-height:var(--leading-5)}.section{padding:var(--inset-35)}.approach,.philosophy-grid,.contact-grid,.calculator{grid-template-columns:1fr;gap:var(--gap-2)}.large-copy{font-size:var(--type-10)}.principles>div{grid-template-columns:110px 1fr;gap:var(--gap-18)}.principles span{font-size:var(--type-16)}.section-heading{display:block}.section-heading h2{margin-bottom:var(--space-bottom-2)}.offering-grid,.editorial-grid{grid-template-columns:1fr;gap:var(--gap-19)}.offering-grid h3{min-height:0}.editorial-grid{padding:var(--inset-36)}.closing{padding:var(--inset-37)}.page-head{padding:var(--inset-38)}.page-head h1{font-size:var(--type-29)}.page-head .lead{font-size:var(--type-12)}.philosophy{padding:var(--inset-39)}.philosophy-copy{padding-top:10px}.back{margin-bottom:var(--space-bottom-10)}.question-inner h1{font-size:var(--type-30)}.question-inner .lead{font-size:var(--type-body)}.answer{padding:var(--inset-40)}.result{padding:var(--inset-41)}.result dl div{grid-template-columns:1fr;gap:var(--gap-16)}.result>.text-button{margin:16px 0 0}.calc-result{position:static;padding:var(--inset-42)}.faq-list details{padding:var(--inset-43)}.faq-list summary{font-size:var(--type-12)}.footer-top{flex-direction:column;align-items:flex-start;gap:var(--gap-6)}.footer-bottom{flex-direction:column;gap:var(--gap-19)}.footer-links{gap:var(--gap-20);line-height:var(--leading-9)}.desktop{display:none}dialog{padding:var(--inset-44)}}
@media(max-width:380px){header:has(.account) .logo{width:105px;height:28px}header:has(.account) .logo img{width:112px;top:-43px}.account .button,.account .text-button{padding:var(--inset-45);font-size:var(--type-16)}.centered-entry h1{font-size:var(--type-31)}.site-nav a{padding:var(--inset-45);font-size:var(--type-16)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:var(--animation-4);transition:var(--transition-5);scroll-behavior:auto!important}}
@media(prefers-contrast:more){:root{--muted:var(--neutral-17);--line:var(--neutral-18)}.button,.choice,.answer,.site-nav,dialog,.text-button{background:var(--neutral-7);border:1px solid var(--neutral-19)}}

/* Pearl refinement: all materials and values come from the shared foundation. */
body:has([data-atmosphere="calm"]){background:var(--atmosphere-calm)}
body:has([data-atmosphere="structured"]){background:var(--atmosphere-structured)}
body:has([data-atmosphere="editorial"]){background:var(--atmosphere-editorial)}
.hero{position:relative;isolation:isolate}
.hero>h1,.hero>.eyebrow{position:relative;z-index:1;max-width:var(--hero-text-width)}
.hero h1 em{color:var(--pearl-heading-secondary);font-weight:var(--weight-3)}

.button,.button.light{background:var(--glass-primary)}
.button>span[aria-hidden],.choice>span[aria-hidden]{transition:var(--arrow-transition)}
.button:hover>span[aria-hidden],.choice:hover>span[aria-hidden]{transform:translate(2px,-2px)}
.site-nav{background:var(--glass-background);box-shadow:var(--glass-shadow)}
.site-nav [aria-current],.answer:has(input:checked){background:var(--green-hover);box-shadow:var(--glass-selection-shadow)}
.logo{box-shadow:var(--logo-shadow)}
.hero-rule,.principles>div,.offering-grid article,.editorial-grid article{border-color:var(--surface-silver-edge)}
.page-head{position:relative}
.page-head::after{content:'';display:block;width:48%;height:1px;background:var(--surface-silver-edge);margin:var(--divider-space)}
footer{background:var(--surface-section)}
@media(max-width:760px){.hero>h1,.hero>.eyebrow{max-width:100%}.hero-bottom{clear:both}}
@media(prefers-reduced-motion:reduce){.button>span[aria-hidden],.choice>span[aria-hidden]{transition:none}.button:hover>span[aria-hidden],.choice:hover>span[aria-hidden]{transform:none}}

/* Solid-colour foundation: opaque surfaces and distinct, unblended states. */
:where(.button,.text-button,.choice,.answer,.back):hover{background:var(--neutral-6)}
.button:hover{background:var(--green-mist)}
.answer:has(input:checked){border-color:var(--green)}

/* Overlapping surfaces transmit the content behind them; page colours stay solid. */
.site-nav,.calc-result,dialog,.glass-surface,.overlay-surface{background:var(--overlay-background);-webkit-backdrop-filter:var(--overlay-backdrop);backdrop-filter:var(--overlay-backdrop)}
dialog::backdrop{background:var(--overlay-scrim);-webkit-backdrop-filter:var(--overlay-scrim-backdrop);backdrop-filter:var(--overlay-scrim-backdrop)}
/* Compliance components inherit the established palette, geometry and responsive layout. */
.registration-strip{max-width:1600px;margin:auto;padding:var(--inset-31)}
.registration-strip p,.registration{font-size:var(--type-8);line-height:var(--leading-5);color:var(--ink)}
.registration-strip p{margin-bottom:var(--space-bottom-8)}
.offering-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.offering-grid .product-card{padding:var(--inset-23);border:1px solid var(--line);border-radius:var(--radius-7);background:var(--glass-background)}
.service-status{font-size:var(--type-8);color:var(--green)}
.consent{display:flex;align-items:flex-start;gap:var(--gap-3);font-size:var(--type-9);line-height:var(--leading-5);font-weight:var(--weight-4)}
.consent input{display:inline-block;width:19px;height:19px;min-height:0;margin:3px 0 0;flex-shrink:0;accent-color:var(--green);border-radius:0;background:none;backdrop-filter:none}
.reading ul{padding:var(--inset-45);line-height:var(--leading-4)}
.legal-review{color:var(--ink)}
@media(max-width:1100px){.offering-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.offering-grid{grid-template-columns:1fr}.registration-strip{padding:var(--inset-31)}}
/* Business-first content extends the existing solid surfaces and glass overlays. */
header{height:auto;min-height:112px;padding:var(--identity-inset);align-items:center}
.brand-identity{display:flex;flex-direction:column;align-items:flex-start;gap:var(--identity-gap);min-width:0}
.brand-identity>a{display:inline-flex}
.brand-regulatory{margin:0;color:var(--ink);font-size:var(--identity-text-size);line-height:var(--identity-leading)}
.heading-keyword{color:var(--heading-keyword);font:inherit;letter-spacing:inherit}
:where(h1,h2,h3,h4,h5,h6) em{font:inherit;color:inherit}
.hero h1 em{color:inherit;font-weight:inherit}
.business-hero{padding:var(--personal-hero-inset)}
.business-hero h1{font-size:var(--personal-hero-title)}
.business-hero .hero-bottom{margin-top:var(--space-top-9);align-items:center}
.business-hero .hero-bottom>p{max-width:680px}
.business-hero .hero-rule{margin-top:var(--space-top-9)}
.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:var(--gap-5);flex-shrink:0}
.concept-art{margin:0;width:100%;min-width:0}
.concept-art svg{display:block;width:100%;height:auto;max-height:240px}
.concept-art figcaption{font-size:var(--type-caption);line-height:var(--leading-5);color:var(--muted);margin:8px 0 0}
.art-green{fill:var(--art-green)}
.art-blue{fill:var(--art-blue)}
.art-lavender{fill:var(--art-lavender)}
.art-silver{fill:var(--art-silver)}
.art-depth{fill:var(--art-depth)}
.art-glass{fill:var(--overlay-background);stroke:var(--line);stroke-width:1}
.art-paper{fill:var(--surface-white)}
.art-dot{fill:var(--green)}
.art-line{stroke:var(--muted);stroke-width:2;stroke-linecap:round;fill:none}
.art-path{stroke:var(--green);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;fill:none}
.art-axis{stroke:var(--muted);stroke-width:1;fill:none}
.art-uncertain{stroke-dasharray:5 6}
.art-outline{stroke:var(--green);stroke-width:1.5}
.art-edge{stroke:var(--surface-white);stroke-width:2;fill:none}
.art-label{font-family:var(--font-system);font-size:var(--art-label-size);font-weight:var(--weight-heading);letter-spacing:var(--art-label-tracking);fill:var(--ink)}
.offering-grid .product-card{display:flex;flex-direction:column;padding:var(--inset-23);background:var(--overlay-background);-webkit-backdrop-filter:var(--overlay-backdrop);backdrop-filter:var(--overlay-backdrop)}
.product-card h3{margin:12px 0;min-height:0}
.product-card .product-risk{font-size:var(--small-reading-size);line-height:var(--leading-5)}
.product-card .service-status{margin-top:auto}
.product-card .button{align-self:flex-start}
.product-card .concept-art{border-radius:var(--radius-7);padding:var(--art-card-inset);background:var(--surface-white)}
.challenge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--personal-grid-gap)}
.challenge-card{padding:var(--challenge-inset);border:1px solid var(--line);border-radius:var(--radius-glass);background:var(--surface-white)}
.challenge-card h3{margin-top:24px}
.challenge-card p{color:var(--muted)}
.challenge-card .help-label{font-size:var(--type-caption);font-weight:var(--weight-heading);letter-spacing:var(--tracking-4);color:var(--green);margin-bottom:10px}
.process-steps{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--gap-1)}
.process-steps li{border-top:1px solid var(--line);padding:var(--learning-inset)}
.step-number{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--radius-3);background:var(--overlay-background);font-size:var(--type-8);color:var(--green)}
.process-steps h3{font-size:var(--type-13);margin-top:20px}
.process-steps p{font-size:var(--type-19);color:var(--muted)}
.inset-grid{padding:0;margin-top:36px}
.learning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap-10)}
.learning-grid article{padding:var(--learning-inset);border-top:1px solid var(--line)}
.learning-grid p{font-size:var(--type-19);color:var(--muted)}
.compact-learning{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:36px}
.compact-learning h3{font-size:var(--type-13)}
.illustrated-head{display:grid;grid-template-columns:1fr minmax(190px,300px);text-align:left;column-gap:var(--gap-9)}
.illustrated-head>.eyebrow,.illustrated-head>h1,.illustrated-head>.lead{grid-column:1}
.illustrated-head .lead{margin:0}
.illustrated-head>.concept-art{grid-column:2;grid-row:1 / 4;align-self:center;padding:var(--head-art-inset);background:var(--surface-white);border:1px solid var(--line);border-radius:var(--radius-glass)}
.illustrated-head::after{grid-column:1 / -1}
.intention-screen #app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.intention-screen header{flex-shrink:0;padding-top:max(16px,env(safe-area-inset-top))}
.intention-screen .centered-entry{flex:1;min-height:0;padding:var(--entry-inset);padding-bottom:max(18px,env(safe-area-inset-bottom));justify-content:center}
.centered-entry h1{font-size:var(--entry-title);margin-bottom:var(--entry-title-space)}
.centered-entry .choices{margin-top:var(--entry-choices-space);gap:var(--entry-gap)}
.centered-entry .choice{min-height:var(--entry-control-height);padding:var(--entry-control-inset)}
.centered-entry .existing{margin-top:var(--entry-existing-space);padding-top:0;font-size:var(--entry-client-size)}
.centered-entry .lead{font-size:var(--type-body)}
@media(max-width:1100px){.process-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-learning{grid-template-columns:repeat(2,minmax(0,1fr))}.business-hero .hero-bottom{align-items:flex-start;gap:var(--gap-2)}.business-hero .hero-bottom>p{max-width:55%}}
@media(max-width:760px){header{padding:var(--identity-mobile-inset);gap:var(--gap-3)}.brand-identity{flex:1}.brand-regulatory{font-size:var(--type-16)}.account{flex-direction:column;align-items:stretch}.account .button,.account .text-button{justify-content:center}.brand-identity .logo{width:150px;height:40px}.brand-identity .logo img{width:160px;top:-61px;left:-5px}.intention-screen .brand-identity{align-items:center}.intention-screen header{justify-content:center}.business-hero{padding:var(--personal-hero-mobile-inset)}.business-hero .hero-bottom>p{max-width:100%;margin-bottom:var(--space-bottom-2)}.business-hero .hero-rule{display:block}.business-hero .hero-rule>span{display:block;margin-top:8px}.challenge-grid,.process-steps,.learning-grid{grid-template-columns:1fr}.process-steps{gap:var(--gap-3)}.process-steps li{display:grid;grid-template-columns:44px 1fr;column-gap:var(--gap-6)}.process-steps h3{margin-top:0}.process-steps p{grid-column:2}.compact-learning{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-6)}.illustrated-head{display:block;text-align:center}.illustrated-head .lead{margin:0 auto}.illustrated-head>.concept-art{max-width:270px;margin:24px auto 0}.centered-entry h1{font-size:var(--entry-mobile-title)}.centered-entry .choice{font-size:var(--type-19)}.centered-entry .existing{font-size:var(--entry-client-compact-size)}.centered-entry .lead{font-size:var(--type-19)}}
@media(max-width:380px){.account .button,.account .text-button{white-space:normal}.brand-identity .logo{width:130px;height:35px}.brand-identity .logo img{width:138px;top:-52px;left:-4px}.compact-learning{grid-template-columns:1fr}.centered-entry .choice{min-height:var(--control-height-3)}}
.entry-registration{font-size:var(--type-caption);line-height:var(--leading-5);color:var(--muted);text-align:center;max-width:640px;margin:18px 0 0}
@media(max-width:760px) and (max-height:700px){.intention-screen .centered-entry{padding-top:12px;padding-bottom:12px}.centered-entry .choices{margin-top:16px}.centered-entry .existing{margin-top:16px}.centered-entry .choice{padding:var(--inset-30)}.entry-registration{margin-top:12px}.centered-entry .lead{font-size:var(--type-7)}}
/* No entry animation can create transient scroll at the viewport boundary. */
.intention-screen main{animation:none}
@media(max-width:380px) and (max-height:700px){.centered-entry h1{font-size:var(--entry-short-title)}.centered-entry .choices{gap:var(--entry-compact-gap)}.centered-entry .choice{padding:var(--entry-compact-inset);font-size:var(--type-7)}.centered-entry .existing{margin-top:12px}.entry-registration{margin-top:10px}}
/* Landscape phones and short laptop windows use a compact three-block row. */
@media(min-width:761px) and (max-height:650px){.intention-screen header{min-height:0;padding:var(--entry-landscape-inset)}.intention-screen .logo{width:130px;height:35px}.intention-screen .logo img{width:138px;top:-52px;left:-4px}.intention-screen .brand-regulatory{font-size:var(--type-16)}.intention-screen .centered-entry{padding-top:12px;padding-bottom:12px}.centered-entry h1{font-size:var(--entry-landscape-title);margin-bottom:10px}.centered-entry .choices{flex-direction:row;max-width:1000px;margin-top:16px;gap:var(--gap-3)}.centered-entry .choice{flex:1;font-size:var(--type-7);padding:var(--entry-compact-inset)}.centered-entry .existing{margin-top:16px;font-size:var(--entry-client-compact-size)}.entry-registration{margin-top:10px}}
.philosophy-copy>.concept-art{max-width:300px;margin-bottom:24px}
:where(h1,h2,h3,h4,h5,h6){overflow-wrap:anywhere}
@media(max-width:760px){header{flex-wrap:wrap}.brand-identity{min-width:138px}.account{max-width:100%}.account .button{white-space:normal}.hero-actions{flex-shrink:1;max-width:100%}.button{overflow-wrap:anywhere}}
/* Shared brand: official artwork, commercial tagline, then regulatory identity. */
.brand-tagline{font-size:var(--brand-tagline-size);font-weight:var(--brand-tagline-weight);line-height:var(--brand-tagline-leading);color:var(--ink);margin:0}
.brand-regulatory{font-size:var(--brand-regulatory-size);line-height:var(--brand-regulatory-leading);margin-top:3px;white-space:nowrap}
.brand-identity{gap:var(--identity-gap)}
.brand-question{display:flex;align-items:center;gap:var(--gap-3)}
.brand-question .logo{flex-shrink:0}
.business-hero{padding:var(--client-hero-inset)}
.business-hero .hero-bottom>p{max-width:700px}
.section-intro{max-width:var(--client-heading-width);margin-bottom:var(--space-bottom-3)}
.section-intro h2{max-width:950px}
.section-intro .lead{max-width:800px;color:var(--muted)}
.product-card .button{margin-top:auto}
.challenge-card .challenge-problem{color:var(--muted)}
.challenge-card .challenge-help{color:var(--ink);font-weight:var(--client-help-weight);border-left:2px solid var(--line);padding-left:18px;margin-top:24px}
.process-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--client-process-gap)}
.process-steps li{display:grid;grid-template-columns:44px 1fr;column-gap:var(--gap-6);padding:var(--client-process-inset);border:1px solid var(--line);border-radius:var(--radius-glass);background:var(--overlay-background)}
.process-steps h3{margin-top:0;align-self:center}
.process-steps p{grid-column:2;margin-bottom:0}
.why-section .lead{max-width:820px;color:var(--muted)}
@media(max-width:760px){.business-hero{padding:var(--client-hero-mobile-inset)}.business-hero .hero-bottom>p{max-width:100%}.business-hero .hero-bottom>.button{margin-top:8px}.process-steps{grid-template-columns:1fr}.brand-identity{flex:0 1 auto;min-width:0;max-width:100%}.account{margin-left:auto}.intention-screen .brand-identity{align-items:flex-start}.intention-screen header{justify-content:center}.brand-question .logo{width:150px;height:40px}.brand-question .logo img{width:160px;top:-61px;left:-5px}}
@media(max-width:380px){header:has(.account){align-items:flex-start}.account{flex-direction:row;flex-wrap:wrap}.brand-regulatory{white-space:normal}.process-steps li{display:block}.process-steps h3{margin-top:16px}}
/* Keep the existing entry choices and fit after adding the official tagline. */
@media(max-width:380px) and (max-height:700px){.intention-screen header{padding-top:max(8px,env(safe-area-inset-top));padding-bottom:8px}.intention-screen .centered-entry{padding:var(--client-entry-compact-inset);padding-bottom:max(8px,env(safe-area-inset-bottom))}.centered-entry .existing{margin-top:8px}.entry-registration{margin-top:8px}}
@media(max-width:760px){.account{flex-direction:row;align-items:center;flex-wrap:wrap}}
/* Shared tagline spans the exact logo frame; the official image stays unchanged. */
.brand-wordmark{width:var(--brand-mark-width);max-width:100%}
.brand-wordmark>a{display:block}
.brand-wordmark .logo{display:block;width:100%}
.brand-wordmark .brand-tagline{display:block;width:100%;height:auto;margin-top:4px}
.brand-tagline text{font-family:var(--font-system);font-size:var(--brand-tagline-size);font-weight:var(--brand-tagline-weight);fill:var(--ink)}
/* A continuous four-node chain, with small linking rings between the stages. */
.process-steps{display:block;max-width:1000px;margin:36px auto 0}
.process-steps li{position:relative;display:grid;grid-template-columns:var(--chain-node) minmax(0,1fr);column-gap:var(--gap-10);min-height:180px;padding:var(--chain-row-inset);border:0;border-radius:0;background:none}
.process-steps .step-number{position:relative;z-index:2;grid-row:1 / 3;align-self:start;width:var(--chain-node);height:var(--chain-node);border:2px solid var(--green);background:var(--overlay-background);backdrop-filter:var(--overlay-backdrop);font-size:var(--chain-number-size)}
.process-steps li:not(:last-child)::before{content:'';position:absolute;left:calc(var(--chain-axis) - 2px);top:var(--chain-axis);bottom:var(--chain-axis-negative);width:4px;background:var(--surface-silver-edge)}
.process-steps li:not(:last-child)::after{content:'';position:absolute;z-index:3;left:var(--chain-link-offset);top:calc(50% + var(--chain-link-offset));width:var(--chain-link);height:var(--chain-link);border:3px solid var(--green);border-radius:var(--radius-3);background:var(--overlay-background);backdrop-filter:var(--overlay-backdrop)}
.process-steps h3{grid-column:2;margin:10px 0 16px;align-self:start}
.process-steps p{grid-column:2;margin:0;align-self:start}
.process-steps li:last-child{padding-bottom:0;min-height:0}
@media(max-width:760px){.brand-identity{--brand-mark-width:150px}.process-steps{--chain-node:56px;--chain-axis:28px;--chain-axis-negative:-28px;--chain-link:20px;--chain-link-offset:18px;--chain-number-size:22px}.process-steps li{display:grid;column-gap:var(--gap-6)}.process-steps h3{margin-top:4px}}
@media(max-width:380px){.brand-identity{--brand-mark-width:130px}.process-steps li{display:grid}}
@media(min-width:761px) and (max-height:650px){.intention-screen .brand-identity{--brand-mark-width:130px}}
.brand-identity .brand-wordmark .logo{width:100%}
@media(max-width:380px){.brand-identity .brand-wordmark .logo img{width:138px;top:-52px;left:-4px}}
/* Final approved homepage adjustments; dedicated pages retain their existing rules. */
.homepage .art-gold{fill:var(--home-art-gold)}
.homepage .process-steps .stage-copy{grid-column:2;min-width:0}
.homepage .stage-copy p+p{margin-top:var(--home-copy-space)}
.homepage .stage-copy .stage-intro,.homepage .reason-intro{font-weight:var(--client-help-weight);color:var(--ink)}
.homepage .why-section .editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.homepage .why-section .editorial-grid{grid-template-columns:1fr}}
/* Contact redesign is scoped. The footer's reusable social links are the sole global addition. */
.contact-page{max-width:1380px;margin:auto}.contact-hero{padding:var(--contact-hero-inset);max-width:1000px;margin:auto;text-align:center}.contact-hero h1{font-size:var(--contact-hero-size);max-width:900px;margin:0 auto 24px}.contact-hero .lead{max-width:740px;margin:0 auto 16px}.contact-hero>p:last-child{font-size:var(--type-19);color:var(--muted)}.contact-content{padding:var(--contact-content-inset)}.contact-card{padding:var(--contact-inset);border:1px solid var(--line);border-radius:var(--radius-glass);background:var(--neutral-2)}.contact-card h2{font-size:var(--type-24);margin-bottom:var(--space-bottom-8)}.contact-card p{max-width:620px;color:var(--muted)}.contact-card .contact-lead,.contact-lead{color:var(--ink);font-size:var(--type-lead);line-height:var(--leading-5)}.contact-call{background:var(--green-mist);display:grid;grid-template-columns:64px 1fr;gap:var(--gap-10)}.contact-icon{width:36px;height:36px;fill:none;stroke:var(--green);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.contact-call>.contact-icon{margin-top:5px;width:48px;height:48px}.contact-number{display:block;width:fit-content;font-size:var(--contact-phone-size);letter-spacing:var(--tracking-3);font-weight:var(--weight-heading);margin:22px 0;color:var(--green);white-space:nowrap}.contact-actions{display:flex;flex-wrap:wrap;gap:var(--gap-3);align-items:center}.contact-primary.button{background:var(--green);color:var(--neutral-2);border-color:var(--green)}.contact-primary.button:hover{background:var(--ink)}.contact-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-1);margin-top:24px}.contact-secondary .contact-card{display:flex;align-items:flex-start;flex-direction:column}.contact-secondary .contact-icon{margin-bottom:24px}.contact-secondary .button{margin-top:auto}.contact-secondary h2{font-size:var(--type-21)}.contact-secondary .contact-lead{font-size:var(--type-15)}.contact-writing,.contact-office{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:var(--gap-9);padding:var(--contact-section-inset);border-bottom:1px solid var(--line)}.contact-writing{margin-top:20px}.contact-writing h2,.contact-office h2,.contact-social h2{font-size:var(--type-24)}.contact-writing>div>p:not(.contact-lead),.contact-office p,.contact-social p{color:var(--muted)}.contact-writing .privacy-note{margin-top:24px}.contact-page .privacy-note{font-size:var(--type-8);line-height:var(--leading-5)}.contact-field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-5)}.contact-page form{min-width:0}.contact-page input,.contact-page textarea{background:var(--neutral-2);border-radius:var(--radius-8)}.contact-page textarea{max-width:100%}.contact-feedback{font-size:var(--type-8);line-height:var(--leading-5);min-height:22px;margin:16px 0 0;overflow-wrap:anywhere}.contact-call .contact-feedback:empty{display:none}.contact-office address{font-style:normal;font-size:var(--type-body);line-height:var(--leading-4);margin:28px 0}.contact-map{min-width:0}.contact-map iframe{display:block;width:100%;aspect-ratio:4/3;min-height:280px;border:1px solid var(--line);border-radius:var(--radius-glass);background:var(--surface-section)}.contact-map .privacy-note{margin:12px 0 0}.contact-social{padding:var(--contact-section-inset);max-width:660px}.contact-legal{border-top:1px solid var(--line);padding:var(--inset-16)}.contact-legal p{font-size:var(--type-8)}.contact-legal .read-link{margin-right:24px}.social-links{display:flex;align-items:center;flex-wrap:wrap;gap:var(--gap-3);margin-top:16px}.social-links a{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--line);border-radius:var(--radius-3);color:var(--green);transition:var(--transition-1)}.social-links a:hover{background:var(--green-hover);transform:translateY(-2px)}.social-links svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.contact-sticky{display:none}.contact-page #callback-dialog{padding:var(--contact-dialog-inset);max-width:560px;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;background:var(--overlay-background);backdrop-filter:var(--overlay-backdrop);-webkit-backdrop-filter:var(--overlay-backdrop)}.contact-page #callback-dialog h2{font-size:var(--type-21)}.contact-page #callback-dialog label{margin-bottom:var(--space-bottom-8)}.contact-page #callback-dialog .privacy-note{margin-top:16px}.contact-page #callback-dialog::backdrop{background:var(--overlay-scrim);backdrop-filter:var(--overlay-scrim-backdrop)}.contact-optional{font-weight:var(--weight-4);color:var(--muted);font-size:var(--type-8)}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-page #callback-challenge{max-width:100%}
@media(max-width:760px){.contact-hero{padding:var(--contact-hero-inset);text-align:left}.contact-hero .lead{font-size:var(--type-19)}.contact-hero h1{margin-bottom:var(--space-bottom-8)}.contact-call{display:block}.contact-call>.contact-icon{width:32px;height:32px;margin:0 0 20px}.contact-card h2{font-size:var(--type-21)}.contact-secondary,.contact-writing,.contact-office,.contact-field-pair{grid-template-columns:1fr}.contact-secondary{gap:var(--gap-5);margin-top:16px}.contact-writing,.contact-office{gap:var(--gap-1);padding:var(--contact-mobile-section-inset)}.contact-writing{margin-top:0}.contact-social{padding:var(--contact-mobile-section-inset)}.contact-page .contact-actions>*{max-width:100%}.contact-sticky:not([hidden]){display:flex;position:fixed;z-index:21;bottom:max(12px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);max-width:calc(100% - 24px);align-items:center;gap:var(--gap-16);padding:var(--contact-sticky-inset);border:1px solid var(--line);border-radius:var(--radius-capsule);background:var(--overlay-background);backdrop-filter:var(--overlay-backdrop);-webkit-backdrop-filter:var(--overlay-backdrop)}.contact-sticky .button{white-space:nowrap;min-height:44px;padding:var(--inset-33)}.contact-sticky .text-button{width:44px;padding:0}.contact-page:has(.contact-sticky:not([hidden])){padding-bottom:var(--contact-mobile-reserve)}.contact-page #callback-dialog{width:100%;max-width:100%;max-height:calc(100dvh - 12px);margin:auto 0 0;border-bottom-left-radius:0;border-bottom-right-radius:0;padding:var(--contact-dialog-mobile-inset)}.contact-map iframe{min-height:240px}.contact-hero>p:last-child{font-size:var(--type-7)}}
@media(max-width:380px){.contact-number{font-size:var(--type-10)}.contact-page .contact-actions{align-items:stretch}.contact-call .contact-actions .button{width:100%}.contact-page .contact-lead{font-size:var(--type-body)}}
@media(max-width:760px){.contact-page{padding-bottom:var(--contact-mobile-reserve)}body:has(dialog[open]) .contact-page .contact-sticky{display:none}}

.contact-page #callback-dialog{box-shadow:0 18px 70px var(--overlay-scrim)}
/* Targeted contact corrections and the approved shared social component. */
.social-links>a,.social-links>.social-visual{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--radius-3);color:var(--green);flex-shrink:0}.social-visual{cursor:default}.contact-newsletter{margin-top:32px;padding:var(--inset-42);background:var(--neutral-2);border:1px solid var(--line);border-radius:var(--radius-glass)}.contact-newsletter h3{margin-bottom:var(--space-bottom-8)}.contact-newsletter>p{font-size:var(--type-19)}.contact-newsletter .newsletter-consent{display:flex;align-items:flex-start;gap:var(--gap-3);font-size:var(--type-9);line-height:var(--leading-5);font-weight:var(--weight-4)}.contact-newsletter .newsletter-consent input{flex:0 0 20px;width:20px;height:20px;min-height:0;padding:0;margin:2px 0 0;accent-color:var(--green)}.contact-newsletter .newsletter-consent span{flex:1;min-width:0}#newsletter-challenge{max-width:100%;margin-bottom:16px}
/* Contact copy refinement: retain card padding; balance the shorter descriptions. */
.contact-secondary .contact-lead{margin-bottom:var(--space-bottom-2)}.contact-office .contact-location-label{display:flex;align-items:center;gap:var(--gap-16);font-size:var(--type-7);color:var(--green)}.contact-location-label svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:var(--green);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* Investment pages only. The approved homepage and all shared rules above are locked. */
.investment-overview-intro{padding-top:0;padding-bottom:0;max-width:950px;text-align:center}
.investment-overview-intro p{color:var(--muted)}
.investment-overview .product-card{background:var(--neutral-2);border:1px solid var(--line);border-radius:var(--radius-glass);min-width:0}
.investment-overview .product-card .button{margin-top:auto}
.investment-sketch{display:block;width:100%;height:auto;aspect-ratio:640/426;object-fit:contain;background:var(--neutral-2);border-radius:var(--radius-7)}
.investment-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:var(--gap-9);padding-top:var(--space-top-1)}
.investment-hero h1{margin-top:28px;font-size:var(--personal-hero-title)}
.investment-hero .lead{font-size:var(--type-lead);color:var(--ink);line-height:var(--leading-6)}
.investment-hero p{color:var(--muted)}
.investment-hero .investment-minimum{padding:var(--inset-3);border-left:3px solid var(--green);color:var(--ink);background:var(--green-mist);border-radius:var(--radius-4)}
.investment-categories{padding-top:var(--space-top-1)}
.investment-section-intro{max-width:820px;color:var(--muted);margin-bottom:var(--space-bottom-3)}
.investment-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-1)}
.investment-category{min-width:0;background:var(--neutral-2);padding:var(--challenge-inset);border:1px solid var(--line);border-radius:var(--radius-glass)}
.investment-category>.investment-sketch{height:200px;margin-bottom:24px}
.investment-category h3,.investment-stories h3{font-size:var(--type-heading-3)}
.investment-category p,.investment-stories p,.investment-help p{color:var(--muted)}
.investment-category .investment-note{font-size:var(--type-19);line-height:var(--leading-5);margin-top:24px}
.investment-guide summary{font-size:var(--type-body);font-weight:var(--weight-heading);line-height:var(--leading-5);padding:var(--inset-3);min-height:44px;cursor:pointer;color:var(--ink);overflow-wrap:anywhere}
.investment-varieties{margin-top:24px;border-top:1px solid var(--line)}
.investment-varieties ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-3);padding:var(--inset-3);list-style:none;margin:0}
.investment-varieties li{font-size:var(--type-19);line-height:var(--leading-5)}
.investment-stories{border-top:1px solid var(--line)}
.investment-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-9);margin-top:36px}
.investment-story-grid article{min-width:0}
.investment-story-grid .investment-sketch{height:220px;margin-bottom:24px}
.investment-help{background:var(--neutral-2);border-block:1px solid var(--line)}
.investment-help>div{max-width:850px;margin:auto}
.investment-help .button{margin-top:16px}
.investment-conditions details,.investment-sources details{border-bottom:1px solid var(--line)}
.investment-conditions details>div{padding:var(--inset-3)}
.investment-conditions details p{font-size:var(--type-body)}
.investment-guide #service-availability p,.investment-sources p{font-size:var(--type-body)}
.investment-guide .investment-sources{padding-top:0}
@media(max-width:1100px){.investment-hero{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:var(--gap-1)}}
@media(max-width:760px){.investment-hero,.investment-category-grid,.investment-story-grid{grid-template-columns:minmax(0,1fr)}.investment-hero{padding-top:var(--space-top-1)}.investment-hero>.investment-sketch{max-width:480px;margin:auto}.investment-category{padding:var(--inset-23)}.investment-story-grid{gap:var(--gap-1)}.investment-guide summary{padding:var(--inset-2)}.investment-varieties ul{grid-template-columns:minmax(0,1fr)}}

/* 16Wealth Pastel Editorial Sketches: scoped visual changes; approved words and controls stay intact. */
.editorial-image{display:block;width:100%;height:auto;object-fit:contain;aspect-ratio:640/426;background:var(--neutral-2)}
.editorial-art{background:var(--neutral-2)}
.homepage .editorial-family-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap-9);align-items:center;background:var(--neutral-2);padding:var(--client-hero-inset)}
.family-hero-copy{min-width:0}
.homepage .editorial-family-hero h1{font-size:var(--personal-hero-title);max-width:100%;margin-bottom:var(--space-bottom-2)}
.homepage .editorial-family-hero .hero-bottom{display:block;margin-top:0}
.homepage .family-hero-description p{font-size:var(--type-body);line-height:var(--leading-5);max-width:100%;margin:0 0 18px;color:var(--muted)}
.homepage .family-hero-description+.button{margin-top:8px}
.family-hero-art{min-width:0;margin:0;background:var(--neutral-2)}
.family-hero-art .editorial-image{aspect-ratio:1280/853}
.homepage .product-card>.editorial-art{padding:0;background:var(--neutral-2)}
.homepage .product-card .editorial-image,.homepage .product-card .investment-sketch{height:190px;object-fit:contain;border-radius:0}
.homepage .challenge-card>.editorial-art{max-width:100%;margin-bottom:24px}
.homepage .challenge-card .editorial-image{height:220px;object-fit:contain}
.homepage .process-steps li{grid-template-columns:var(--chain-node) minmax(0,1fr) 150px}
.homepage .process-steps .journey-art{grid-column:3;grid-row:1/3;width:150px;align-self:center;min-width:0}
.homepage .journey-art img{height:100px;object-fit:contain;border-radius:0}
.homepage .why-section .reason-art{width:110px;float:right;margin:0 0 12px 20px}
.homepage .why-section article{min-width:0}
.illustrated-head>.editorial-art{background:var(--neutral-2);border:0;padding:0;border-radius:0;max-height:none}
.illustrated-head .editorial-image,.illustrated-head .investment-sketch{max-height:260px;object-fit:contain;border-radius:0}
.editorial-grid>.editorial-art,.editorial-grid article>.editorial-art{margin-bottom:24px}
.editorial-grid article>.editorial-art .editorial-image,.editorial-grid article>.editorial-art .investment-sketch{height:170px;object-fit:contain;border-radius:0}
.editorial-contact-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:var(--gap-9);align-items:center;text-align:left}
.editorial-contact-hero>.editorial-art{max-width:460px;justify-self:end}
.editorial-contact-hero .editorial-image{max-height:300px;object-fit:contain}
@media(max-width:1100px){.homepage .editorial-family-hero{gap:var(--gap-1)}.homepage .process-steps li{grid-template-columns:var(--chain-node) minmax(0,1fr) 120px}.homepage .process-steps .journey-art{width:120px}.editorial-contact-hero{gap:var(--gap-1)}}
@media(max-width:760px){.homepage .editorial-family-hero{grid-template-columns:minmax(0,1fr);padding:var(--client-hero-mobile-inset);gap:var(--gap-6)}.family-hero-art{max-width:560px;width:100%;margin:0 auto}.homepage .editorial-family-hero .hero-bottom>.button{margin-top:0}.homepage .family-hero-description p{margin-bottom:16px}.homepage .process-steps li{grid-template-columns:var(--chain-node) minmax(0,1fr)}.homepage .process-steps .journey-art{grid-column:2;grid-row:auto;width:120px;margin-top:16px}.homepage .journey-art img{height:80px}.homepage .why-section .reason-art{float:none;margin:0 0 16px;width:100px}.illustrated-head>.editorial-art{max-width:320px}.editorial-contact-hero{grid-template-columns:minmax(0,1fr);gap:var(--gap-6)}.editorial-contact-hero>.editorial-art{justify-self:center;max-width:320px}.editorial-contact-hero .editorial-image{max-height:200px}.homepage .challenge-card .editorial-image{height:auto;max-height:220px}}

.editorial-contact-hero>div>p{font-size:var(--type-19);color:var(--muted)}
@media(max-width:760px){.editorial-contact-hero>div>p{font-size:var(--type-7)}}
/* Small reason sketches keep their natural proportions inside the shared reading grid. */
.homepage .why-section .reason-art .editorial-image{height:auto;aspect-ratio:640/426}

/* Final homepage refinement. Product page content and artwork stay unchanged. */
.header-brand.brand-identity{display:flex;flex-direction:row;align-items:center;gap:var(--home-v2-brand-gap);flex:0 1 auto;min-width:0}
.header-brand .header-logo{display:block;flex-shrink:0}
.header-brand .logo{width:216px;height:55px}
.header-brand .logo img{width:229px;left:-6px;top:-87px}
.header-brand .brand-divider{width:1px;height:60px;flex-shrink:0;background:var(--line)}
.header-brand-copy{min-width:0}
.header-brand-copy p{margin:0;line-height:var(--home-v2-brand-leading)}
.header-brand-copy .header-brand-title{font-size:var(--home-v2-brand-size);font-weight:var(--weight-heading);color:var(--green);margin-bottom:3px}
.header-brand-copy .header-brand-registration{font-size:var(--home-v2-brand-small);color:var(--ink)}
.header-brand-copy .header-brand-arn{font-size:var(--home-v2-brand-arn);color:var(--muted);margin-top:2px}
.homepage .homepage-final-hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--gap-1);padding:var(--home-v2-hero-inset)}
.homepage .homepage-final-hero h1{font-size:var(--home-v2-title);line-height:var(--home-v2-title-leading);margin-bottom:24px}
.homepage-final-hero h1>.heading-keyword{display:block;color:var(--green)}
.homepage .homepage-final-hero .family-hero-description p{margin-bottom:24px}
.homepage-hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:var(--home-v2-actions-gap)}
.homepage-hero-actions .button{min-height:48px;max-width:100%;text-align:center}
.homepage-consultation.button{background:var(--green);color:var(--neutral-2);border-color:var(--green)}
.homepage-consultation.button:hover{background:var(--ink);border-color:var(--ink)}
.homepage-explore.button{background:var(--overlay-background);backdrop-filter:var(--overlay-backdrop);-webkit-backdrop-filter:var(--overlay-backdrop)}
.homepage-final-hero .family-hero-art{width:100%;max-width:none;align-self:center}
.homepage-family-photo{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
.homepage-problem-photo{margin:0 0 24px;width:100%;overflow:hidden;border-radius:var(--radius-8)}
.homepage-problem-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.homepage .process-steps{max-width:1000px}
.homepage .process-steps li{grid-template-columns:var(--chain-node) minmax(0,1fr);min-height:0;padding:var(--home-v2-stage-inset)}
.homepage .process-steps li:last-child{padding-bottom:0}
.homepage .process-steps h3{font-size:var(--home-v2-stage-size);line-height:var(--leading-3);margin:10px 0 12px}
.homepage .process-steps .stage-copy p{font-size:var(--home-v2-stage-body);line-height:var(--home-v2-stage-leading)}
.homepage .process-steps .stage-copy{max-width:800px}
.homepage .trust-symbol{display:block;width:64px;height:64px;margin:var(--home-v2-symbol-space);color:var(--green);fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.trust-symbol .trust-fill{fill:var(--green-mist)}
.trust-symbol>circle:not(.trust-fill){stroke:var(--muted)}
@media(max-width:1100px){.header-brand .logo{width:190px;height:49px}.header-brand .logo img{width:202px;left:-6px;top:-77px}.header-brand-copy .header-brand-registration{max-width:205px}.homepage .homepage-final-hero{gap:var(--gap-6)}}
@media(max-width:760px){
 .header-brand.brand-identity{width:100%;gap:var(--home-v2-brand-mobile-gap);align-items:center}
 .header-brand .logo{width:132px;height:34px}
 .header-brand .logo img{width:140px;left:-4px;top:-53px}
 .header-brand .brand-divider{height:54px}
 .header-brand-copy .header-brand-title{font-size:var(--home-v2-brand-mobile-size)}
 .header-brand-copy .header-brand-registration{font-size:var(--home-v2-brand-mobile-small);max-width:210px}
 .header-brand-copy .header-brand-arn{font-size:var(--home-v2-brand-mobile-arn)}
 header:has(.header-brand){row-gap:var(--gap-3);min-height:0}
 .homepage .homepage-final-hero{grid-template-columns:minmax(0,1fr);padding:var(--home-v2-mobile-inset);gap:var(--gap-6)}
 .homepage .homepage-final-hero h1{font-size:var(--home-v2-title-mobile);margin-bottom:20px}
 .homepage-hero-actions{align-items:stretch}
 .homepage-hero-actions .button{width:100%}
 .homepage .homepage-final-hero .family-hero-description p{margin-bottom:20px}
 .homepage .process-steps h3{font-size:var(--type-21);margin-top:4px}
 .homepage .process-steps .stage-copy p{font-size:var(--type-body)}
 .homepage .trust-symbol{width:56px;height:56px}
}
@media(max-width:380px){.header-brand .logo{width:112px;height:29px}.header-brand .logo img{width:119px;left:-3px;top:-45px}.header-brand .header-brand-copy{flex:1}.header-brand .brand-divider{height:58px}}
@media(max-width:1100px) and (min-width:761px){header:has(.header-brand){column-gap:var(--gap-3)}.header-brand .logo{width:168px;height:43px}.header-brand .logo img{width:178px;left:-5px;top:-68px}.header-brand-copy .header-brand-title{font-size:var(--home-v2-brand-tablet-size)}}
@media(max-width:760px){.homepage-hero-actions .button{padding:var(--home-v2-cta-mobile-inset);gap:var(--home-v2-cta-mobile-gap)}}

/* Only the opening page, guided form and its explicitly triggered overlays. */
.intention-header{width:100%;max-width:1600px;justify-content:space-between;padding:var(--intention-header-inset);column-gap:var(--gap-3)}
.intention-header .header-brand{width:auto;flex:0 1 auto;align-items:center}
.intention-login{flex-shrink:0;background:var(--overlay-background);color:var(--green);backdrop-filter:var(--overlay-backdrop)}
.intention-entry{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:0;padding:var(--intention-entry-inset);background:var(--neutral-2)}
.intention-opening{width:100%;text-align:center}
.intention-opening h1{font-size:var(--intention-title);margin-bottom:40px}
.intention-options{width:100%;max-width:960px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-1)}
.intention-choice{display:flex;align-items:center;justify-content:space-between;gap:var(--gap-3);text-align:left;min-height:118px;padding:var(--intention-card-inset);font-size:var(--intention-choice-size);font-weight:var(--weight-2);line-height:var(--leading-3);border:1px solid var(--line);border-radius:var(--radius-glass);background:var(--overlay-background);backdrop-filter:var(--overlay-backdrop);color:var(--ink);transition:var(--transition-1)}
.intention-choice:hover{border-color:var(--green);transform:translateY(-2px)}
.intention-choice>span[aria-hidden]{color:var(--green);flex-shrink:0}
.intention-entry .entry-registration{margin-top:32px;margin-bottom:0}
.guided-intention{max-width:1100px;margin:auto;padding:var(--intention-form-inset)}
.guided-intention h1{font-size:var(--intention-form-title);max-width:850px}
.guided-intention h2{font-size:var(--type-21);line-height:var(--leading-3)}
.guided-opening p{margin-bottom:8px;max-width:740px;color:var(--muted)}
.guided-opening{margin-bottom:32px}
.guided-progress{max-width:940px;margin:0 0 32px;font-size:var(--type-8);color:var(--muted)}
.guided-progress>div{display:flex;gap:var(--gap-16);margin-top:12px}
.guided-progress i{height:3px;flex:1;background:var(--line);border-radius:var(--radius-4)}
.guided-progress i.complete{background:var(--green)}
.guided-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-3);margin:28px 0;padding:0;border:0;min-width:0}
.guided-choice{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:var(--gap-3);min-height:116px;padding:var(--intention-control-inset);margin:0;border:1px solid var(--line);border-radius:var(--radius-glass);background:var(--overlay-background);backdrop-filter:var(--overlay-backdrop);cursor:pointer}
.guided-choice:has(input:checked){background:var(--green-wash);border-color:var(--green)}
.guided-choice:has(input:focus-visible){outline:2px solid var(--green);outline-offset:3px}
.guided-choice input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--green)}
.guided-choice strong{display:block;font-size:var(--type-body);font-weight:var(--weight-2);line-height:var(--leading-3)}
.guided-choice small{display:block;font-size:var(--type-7);font-weight:var(--weight-4);line-height:var(--leading-5);color:var(--muted);margin-top:8px}
.guided-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--gap-3);margin-top:28px;flex-wrap:wrap}
.guided-intent-summary{border-left:2px solid var(--green);padding-left:24px;margin:32px 0}
.guided-intent-summary p{margin-bottom:12px}
.guided-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-1);margin:32px 0}
.guided-product-grid article,.guided-callback-card{padding:var(--intention-card-inset);border:1px solid var(--line);border-radius:var(--radius-glass);background:var(--overlay-background);backdrop-filter:var(--overlay-backdrop)}
.guided-product-grid article{display:flex;flex-direction:column;align-items:flex-start}
.guided-product-grid h2{font-size:var(--type-21)}
.guided-product-grid .button{margin-top:auto}
.guided-more-links{display:flex;flex-wrap:wrap;gap:var(--gap-3);margin-bottom:24px}
.guided-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-3)}
.guided-contact-fields label{min-width:0;margin:0}
.guided-contact-fields input,.guided-contact-fields select{width:100%;min-width:0;min-height:48px;border-radius:var(--radius-8)}
.guided-callback-card{margin-top:32px}
.guided-callback-card h2{margin-bottom:12px}
.guided-exit{display:flex;flex-wrap:wrap;gap:var(--gap-3);align-items:center;justify-content:space-between;margin:36px 0 24px}
.guided-exit button{background:none;border:0;padding:0;color:var(--muted);font-size:var(--type-7)}
.guided-intention .registration,.guided-intention .risk{font-size:var(--type-caption);color:var(--muted);line-height:var(--leading-5);margin-top:16px}
.guided-intention .privacy-note{font-size:var(--type-8);line-height:var(--leading-5);color:var(--muted)}
.intention-popup{width:680px;max-width:calc(100% - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:var(--intention-popup-inset);overflow-y:auto;overscroll-behavior:contain;background:var(--overlay-background);backdrop-filter:var(--overlay-backdrop);-webkit-backdrop-filter:var(--overlay-backdrop);box-shadow:var(--intention-popup-shadow);animation:var(--intention-popup-animation)}
.intention-popup::backdrop{background:var(--overlay-scrim);backdrop-filter:var(--overlay-scrim-backdrop)}
.intention-popup h2{font-size:var(--intention-popup-title);line-height:var(--leading-2);margin-right:24px}
.intention-popup p{line-height:var(--leading-5)}
.intention-popup-red{background:var(--intention-red-glass);border-color:var(--intention-red-edge)}
.intention-popup-red h2{color:var(--intention-red-ink)}
.intention-popup-back{display:flex;width:100%;margin:28px auto 0}
.intention-popup-red .button{background:var(--overlay-background);color:var(--intention-red-ink)}
@keyframes intention-popup-enter{from{transform:translateY(8px) scale(.985)}to{transform:translateY(0) scale(1)}}
@media(max-width:760px){
 .intention-screen .intention-header{justify-content:space-between}
 .intention-header{padding:var(--intention-mobile-header-inset);min-height:0;flex-wrap:wrap}
 .intention-header .header-brand{width:auto;flex:1;gap:var(--gap-16);min-width:230px}
 .intention-header .header-brand .logo{width:96px;height:25px}
 .intention-header .header-brand .logo img{width:102px;top:-39px;left:-3px}
 .intention-header .header-brand-copy{min-width:126px}
 .intention-header .header-brand-copy .header-brand-title{font-size:var(--intention-small-title)}
 .intention-header .header-brand-copy .header-brand-registration{max-width:170px}
 .intention-header .intention-login{margin-left:auto;min-height:42px;padding:var(--inset-30);font-size:var(--type-caption);gap:var(--gap-16)}
 .intention-opening h1{margin-bottom:28px}
 .intention-options{grid-template-columns:minmax(0,1fr);gap:var(--gap-3)}
 .intention-choice{min-height:84px;padding:var(--intention-control-inset)}
 .intention-entry .entry-registration{margin-top:24px}
 .guided-choices,.guided-product-grid,.guided-contact-fields{grid-template-columns:minmax(0,1fr)}
 .guided-choice{min-height:100px}
 .guided-actions .button{max-width:100%}
 .intention-popup{padding:var(--intention-popup-mobile-inset)}
}
@media(max-width:380px){.intention-header .header-brand{flex:0 1 auto;width:100%}.intention-header .intention-login{margin-left:auto}.intention-entry{padding-top:20px;padding-bottom:20px}.intention-opening h1{font-size:var(--type-27)}}
@media(prefers-reduced-motion:reduce){.intention-popup{animation:none}}

.intention-popup .close{width:var(--intention-close-size);height:var(--intention-close-size);display:grid;place-items:center}
.intention-popup:not(.intention-popup-red) h2{margin-right:var(--intention-close-size)}
.intention-popup-red h2{margin-right:0}
.intention-popup.is-closing{animation:var(--intention-popup-exit)}
@keyframes intention-popup-leave{from{transform:translateY(0) scale(1)}to{transform:translateY(8px) scale(.985)}}
@media(prefers-reduced-motion:reduce){.intention-popup.is-closing{animation:none}}

/* Owner-approved homepage v3 corrections; overlays retain their shared material. */
.client-login.text-button,.intention-login.client-login{background:var(--green);color:var(--neutral-2);border-color:var(--green);font-weight:var(--weight-heading)}
.client-login.text-button:hover{background:var(--ink);border-color:var(--ink)}
.phone-icon{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.homepage-family-photo{border-radius:var(--radius-8)}
.homepage .home-emphasis,.homepage .challenge-help{color:var(--green);font-weight:var(--weight-heading)}
.homepage .challenge-help{border-left-color:var(--green)}
.home-return-wrap{max-width:1600px;margin:0 auto;padding:var(--inset-4);padding-top:0;padding-bottom:0}
.home-return{margin-bottom:var(--space-bottom-2);color:var(--green)}
@media(max-width:760px){header:has(.account){height:auto;padding-bottom:var(--gap-6)}.home-return-wrap{padding-left:var(--gap-6);padding-right:var(--gap-6)}}

main.home-restoring{animation:none}

/* Four planning tools: shared, data-driven result hierarchy. */
.planning-page .page-head{padding-bottom:var(--planner-inset)}
.planner{padding-top:0}
.planner-tabs{display:flex;flex-wrap:wrap;gap:var(--gap-3);margin-bottom:28px}
.planner-tabs button{padding:var(--planner-tab-inset);background:var(--neutral-2)}
.planner-tabs [aria-pressed="true"]{background:var(--green);color:var(--neutral-2);border-color:var(--green)}
.planner-intro{max-width:850px;margin-bottom:28px}
.planner-intro h2{font-size:var(--type-24)}
.planner-intro p{color:var(--muted)}
.planner-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--planner-grid-gap);align-items:start}
#planner-form,.planner-results{min-width:0;background:var(--neutral-2);border:1px solid var(--line);border-radius:var(--radius-glass);padding:var(--planner-inset)}
.planner-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-6)}
.planner-inputs>select,.planner-inputs>label,.planner-check{grid-column:1/-1}
.planner-inputs>select{margin:0 0 4px}
.planner-field{min-width:0}
.planner-field[hidden]{display:none}
.planner-field label{font-size:var(--type-8);line-height:var(--leading-5);margin:0}
.planner-field input[type="number"]{padding:var(--planner-control-inset);margin-top:8px;min-height:44px;font-size:var(--type-body)}
.planner-field input[type="range"]{display:block;accent-color:var(--green);border:0;box-shadow:none;min-height:28px;padding:0;margin:8px 0 0;width:100%;background:transparent}
.planner-limits{display:block;font-size:var(--planner-legend-size);color:var(--muted)}
.planner-check{display:flex;align-items:center;gap:var(--gap-3);font-size:var(--type-8)}
.planner-check input{width:20px;min-height:20px;margin:0;accent-color:var(--green)}
.planner-calculate{margin-top:24px;background:var(--green);color:var(--neutral-2)}
.planner-error{color:var(--ink);font-size:var(--type-8);margin-top:16px}
.planner-primary{padding:var(--planner-inset);background:var(--green-mist);border:1px solid var(--line);border-radius:var(--radius-8);margin-bottom:20px}
.planner-primary p{font-size:var(--type-8);margin-bottom:12px;color:var(--green)}
.planner-primary strong{display:block;color:var(--green);font-size:var(--planner-primary-size);font-weight:var(--weight-heading);line-height:var(--leading-3);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.planner-primary>span{display:block;color:var(--green);font-size:var(--type-8);margin-top:8px}
.planner-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-3);margin:0 0 24px}
.planner-metric{padding:var(--planner-inset);border:1px solid var(--line);border-radius:var(--radius-8);background:var(--surface-section);min-width:0}
.planner-metric dt{font-size:var(--type-8);color:var(--muted);line-height:var(--leading-5);margin-bottom:10px}
.planner-metric dd{font-size:var(--planner-metric-size);font-weight:var(--weight-heading);margin:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.planner-empty{min-height:340px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.planner-empty svg{display:block;width:40px;height:40px;fill:none;stroke:var(--green);stroke-width:1.5;margin-bottom:24px}
.planner-empty h3{font-size:var(--type-21)}
.planner-empty>p{color:var(--muted);font-size:var(--type-body)}
.planner-chart{margin:0 0 18px;min-width:0}
.planner-chart figcaption{font-weight:var(--weight-heading);font-size:var(--type-8);margin-bottom:16px}
.planner-chart svg{display:block;width:100%;height:auto;overflow:visible}
.planner-chart svg text{font-size:var(--chart-label-size);fill:var(--muted);font-family:inherit}
.chart-axis{fill:none;stroke:var(--line);stroke-width:1}
.chart-value{fill:none;stroke:var(--green);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.chart-contribution{fill:none;stroke:var(--muted);stroke-width:2;stroke-dasharray:5 5}
.chart-bar{fill:var(--green)}
.chart-bar-1{fill:var(--muted)}
.chart-bar-2{fill:var(--green-mist);stroke:var(--green)}
.chart-legend{display:flex;flex-wrap:wrap;gap:var(--gap-6);font-size:var(--planner-legend-size);color:var(--green)}
.chart-legend span+span{color:var(--muted)}
.chart-data{margin-bottom:20px;font-size:var(--type-8)}
.chart-data table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:var(--planner-legend-size)}
.chart-data th,.chart-data td{padding:var(--mobile-nav-inset);border-bottom:1px solid var(--line);text-align:left;overflow-wrap:anywhere}
.chart-data caption{margin:12px 0;text-align:left;color:var(--muted)}
.planner-explanation{font-size:var(--type-8);line-height:var(--leading-5)}
.disclaimer,.risk,.source-note,.legal-review,.investment-note,.contact-page .privacy-note,.guided-intention .privacy-note{font-size:var(--disclaimer-size);line-height:var(--compact-reading-leading);color:var(--muted)}
.brand-tagline{fill:var(--green);color:var(--green)}
.mobile-tagline,.nav-icon,.login-user{display:none}
.homepage .why-section .inset-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--gap-6)}
.homepage .why-section .inset-grid>article{grid-column:span 2;min-width:0}
.homepage .why-section .inset-grid>article:nth-child(n+4){grid-column:span 3}
.back-to-top{position:fixed;z-index:22;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-capsule);background:var(--green);color:var(--neutral-2);border:1px solid var(--green);box-shadow:0 2px 7px var(--line);padding:0}
.back-to-top[hidden],body:has(dialog[open]) .back-to-top{display:none}
.back-to-top svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body:has(.contact-sticky:not([hidden])) .back-to-top{bottom:calc(max(16px,env(safe-area-inset-bottom)) + 80px)}
@media(max-width:1100px){.planner-inputs{grid-template-columns:1fr}.planner-metric{padding:var(--planner-control-inset)}}
@media(max-width:760px){
 .planner-grid{grid-template-columns:minmax(0,1fr)}
 .planner-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}
 .planner-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-3)}
 .planner-tabs button{padding:var(--mobile-login-inset);font-size:var(--type-8)}
 .planner-results,.planner-primary,#planner-form{padding:var(--planner-inset)}
 .homepage .why-section .inset-grid{grid-template-columns:1fr}
 .homepage .why-section .inset-grid>article,.homepage .why-section .inset-grid>article:nth-child(n+4){grid-column:auto}
 header:has(.header-brand),header.intention-header{display:grid;grid-template-columns:minmax(0,1fr) auto;height:auto;min-height:0;align-items:center;padding:var(--mobile-header-inset);gap:var(--mobile-brand-gap)}
 header .header-brand.brand-identity{display:grid;grid-template-columns:auto 1px minmax(0,1fr);width:auto;gap:var(--mobile-brand-gap);align-items:center}
 .header-brand .logo{width:112px;height:29px}
 .header-brand .logo img{width:119px;left:-3px;top:-45px}
 .header-brand .brand-divider{height:45px}
 .mobile-tagline{display:block;font-size:var(--mobile-tagline-size);font-weight:var(--weight-heading);color:var(--green);line-height:var(--leading-5);margin-top:3px;white-space:nowrap}
 .header-brand-copy .header-brand-title{display:none}
 .header-brand-copy .header-brand-registration,.header-brand-copy .header-brand-arn{font-size:var(--mobile-reg-size);line-height:var(--mobile-nav-leading);max-width:none}
 .account{margin:0;display:block}
 header .account .client-login,.intention-header .intention-login{display:inline-flex;align-items:center;gap:var(--mobile-nav-gap);font-size:var(--mobile-tagline-size);padding:var(--mobile-login-inset);min-height:40px;white-space:nowrap;box-shadow:0 2px 7px var(--line)}
 .login-user{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;flex-shrink:0}
 .site-nav{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));width:calc(100% - 24px);max-width:none;top:8px;padding:var(--mobile-nav-inset);gap:var(--mobile-nav-gap);margin:0 auto 16px;border-radius:var(--radius-12);box-shadow:0 2px 7px var(--line)}
 .site-nav a{grid-column:span 5;display:flex;flex-direction:column;justify-content:center;gap:var(--mobile-nav-gap);padding:var(--mobile-nav-item-inset);font-size:var(--mobile-nav-label);line-height:var(--mobile-nav-leading);white-space:normal;text-align:center;min-height:65px;border-radius:var(--radius-8)}
 .site-nav a:nth-child(n+5){grid-column:span 4;border-top:1px solid var(--line)}
 .site-nav [aria-current]::after{display:none}
 .site-nav .nav-icon{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
}
@media(max-width:380px){
 .planner-inputs{grid-template-columns:1fr}
 .planner-metrics{grid-template-columns:1fr}
 header .header-brand.brand-identity{display:contents}
 .header-brand .header-logo{grid-column:1;grid-row:1;justify-self:start}
 .header-brand .brand-divider{display:none}
 .header-brand-copy{grid-column:1/-1;grid-row:2;display:flex;align-items:baseline;gap:var(--gap-3)}
 .header-brand-copy .header-brand-arn{white-space:nowrap;margin:0}
 header .account,.intention-header .intention-login{grid-column:2;grid-row:1}
 .site-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
 .site-nav a,.site-nav a:nth-child(n+5){grid-column:auto;min-height:58px;border:0}
 .site-nav a:nth-child(n+4){border-top:1px solid var(--line)}
}
.planner-calculate.button:hover{background:var(--ink);color:var(--neutral-2);border-color:var(--ink)}
.logo img{height:auto}
@media(max-width:760px){
 header:has(.header-brand),header.intention-header{grid-template-columns:minmax(0,1fr) 1px auto}
 header .header-brand.brand-identity{display:contents}
 .header-brand .header-logo{grid-column:1;grid-row:1;justify-self:start}
 .header-brand .brand-divider{display:block;grid-column:2;grid-row:1;height:42px}
 header .account,.intention-header .intention-login{grid-column:3;grid-row:1}
 .header-brand .logo{width:132px;height:34px}
 .header-brand .logo img{width:140px;left:-4px;top:-53px}
 .header-brand-copy{grid-column:1/-1;grid-row:2;display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--mobile-nav-gap)}
 .header-brand-copy .header-brand-arn{white-space:nowrap;margin:0}
}
@media(max-width:380px){
 .site-nav a,.site-nav a:nth-child(n+5){min-height:56px;padding:var(--mobile-small-nav-inset);gap:var(--mobile-small-nav-gap);line-height:var(--mobile-small-nav-leading)}
 .site-nav .nav-icon{width:19px;height:19px}
}
@media(max-width:760px){.planner-chart svg text{font-size:var(--chart-mobile-label-size)}}
.planner-empty>p.disclaimer,.legal-review p,.investment-sources .source-note{font-size:var(--disclaimer-size);line-height:var(--compact-reading-leading);color:var(--muted)}
body p:is(.risk,.source-note,.disclaimer),body .legal-review p{font-size:var(--disclaimer-size);line-height:var(--compact-reading-leading);color:var(--muted)}
svg.brand-tagline text{fill:var(--green)}
/* Calculator selection and dedicated workspaces. */
.calculator-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--planner-grid-gap)}
.calculator-card{min-width:0;border:1px solid var(--line);border-radius:var(--radius-glass);background:var(--surface-white);overflow:hidden;display:flex;flex-direction:column}
.calculator-card>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:var(--surface-white)}
.calculator-card-copy{padding:var(--calculator-card-inset);display:flex;flex-direction:column;align-items:flex-start;flex:1}
.calculator-card h2{font-size:var(--type-24)}
.calculator-card p{color:var(--muted);margin-bottom:24px}
.calculator-card .button{margin-top:auto}
.calculator-back{display:inline-flex;margin-bottom:24px}
.planner-field-label{display:flex;align-items:center;gap:var(--mobile-brand-gap);min-height:40px}
.planner-field-label label{flex:1}
.calculator-info{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;min-height:32px;padding:var(--calculator-info-inset);border:1px solid var(--line);border-radius:var(--radius-capsule);background:var(--surface-white);color:var(--green);font:inherit;font-size:var(--calculator-info-size);font-weight:var(--weight-heading);vertical-align:middle;cursor:pointer}
.calculator-info:hover,.calculator-info[aria-expanded="true"]{background:var(--green-hover);border-color:var(--green)}
.planner-metric dt .calculator-info{margin-left:4px}
.calculator-tooltip{position:fixed;z-index:100;width:max-content;max-width:min(300px,calc(100vw - 24px));padding:var(--calculator-tooltip-inset);border:1px solid var(--line);border-radius:var(--radius-8);box-shadow:var(--intention-popup-shadow);font-size:var(--type-8);line-height:var(--compact-reading-leading);color:var(--ink);overflow-wrap:anywhere}
.calculator-assumptions h2{font-size:var(--type-24)}
.assumption-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap-6);margin-bottom:24px}
.assumption-grid article{padding:var(--planner-inset);border:1px solid var(--line);border-radius:var(--radius-8);background:var(--surface-white);min-width:0}
.assumption-grid h3{font-size:var(--type-body)}
.assumption-grid p,.calculation-details p{font-size:var(--type-8);line-height:var(--compact-reading-leading);color:var(--muted)}
.assumption-grid p{margin:0}
.calculation-details{margin:0 0 24px}
.calculation-details summary{cursor:pointer;color:var(--green);font-size:var(--type-8);padding:var(--planner-control-inset)}
.planner-empty h2{font-size:var(--type-21)}
/* Separate link and disclosure keep destination and expansion unambiguous. */
.nav-calculators{position:relative;display:flex;align-items:stretch;min-width:0}
.site-nav .calculator-nav-link{padding-right:var(--mobile-nav-gap)}
.calculator-nav-toggle{background:transparent;color:var(--green);border:0;border-radius:var(--radius-capsule);min-width:32px;min-height:40px;padding:var(--mobile-nav-inset);font:inherit;cursor:pointer}
.calculator-nav-toggle:hover{background:var(--green-hover)}
.calculator-menu{position:absolute;z-index:30;top:calc(100% + 8px);right:0;min-width:250px;padding:var(--calculator-menu-inset);border:1px solid var(--line);border-radius:var(--radius-12);box-shadow:var(--intention-popup-shadow);animation:var(--calculator-menu-enter)}
.calculator-menu[hidden]{display:none}
.site-nav .calculator-menu a{display:block;font-size:var(--type-8);line-height:var(--leading-5);text-align:left;white-space:normal;min-height:44px;padding:var(--calculator-menu-link-inset);border:0;border-radius:var(--radius-8)}
.site-nav .calculator-menu a:hover{background:var(--green-hover);color:var(--green)}
.site-nav .calculator-menu [aria-current]::after{display:none}
.calculator-nav-toggle:focus-visible,.calculator-info:focus-visible,.calculator-menu a:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@keyframes calculator-menu-enter{from{transform:translateY(-4px)}to{transform:translateY(0)}}
@media(min-width:761px){
 .header-brand .mobile-tagline{display:block;color:var(--green);font-size:var(--header-tagline-size);font-weight:var(--weight-heading);line-height:var(--leading-5);text-align:center;margin-top:2px;width:216px;white-space:nowrap}
 .header-brand .brand-divider{height:auto;align-self:stretch}
 .header-brand-copy{display:flex;flex-direction:column;justify-content:center}
 .header-brand-copy .header-brand-registration{font-size:var(--type-8)}
 .header-brand-copy .header-brand-arn{font-size:var(--type-16)}
}
@media(max-width:1100px){
 .assumption-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:761px) and (max-width:1100px){
 .header-brand .mobile-tagline{width:168px;font-size:var(--header-tagline-tablet-size)}
 .header-brand .brand-divider{height:auto}
}
@media(max-width:760px){
 .calculator-card-grid{grid-template-columns:1fr}
 .nav-calculators{grid-column:span 4;border-top:1px solid var(--line);position:static;display:flex;align-items:stretch;min-width:0}
 .site-nav .nav-calculators>.calculator-nav-link{flex:1;grid-column:auto;min-width:0;padding:var(--mobile-nav-item-inset)}
 .calculator-nav-toggle{min-width:24px;padding:var(--mobile-small-nav-inset)}
 .calculator-menu{left:8px;right:8px;min-width:0;max-height:60vh;overflow:auto}
 .site-nav .calculator-menu a{min-height:44px}
 .mobile-tagline{text-align:center;width:132px}
}
@media(max-width:380px){
 .assumption-grid{grid-template-columns:1fr}
 .nav-calculators{grid-column:auto}
 .site-nav .nav-calculators>.calculator-nav-link{min-height:56px;padding:var(--mobile-small-nav-inset);gap:var(--mobile-small-nav-gap);line-height:var(--mobile-small-nav-leading)}
}

/* Calculator v3: one menu trigger, honest contextual returns, two-phase planning. */
.site-nav [aria-current]::after{display:none}
.site-nav .calculator-nav-link{font-size:var(--type-8);padding:var(--inset-6);display:flex;align-items:center;justify-content:center;white-space:normal;line-height:var(--leading-5)}
.contextual-back{display:inline-flex;max-width:100%;white-space:normal;text-align:left;background:var(--overlay-background);backdrop-filter:var(--overlay-backdrop);border:1px solid var(--line);border-radius:var(--radius-capsule);color:var(--green);box-shadow:var(--glass-shadow);padding:var(--calculator-menu-link-inset)}
.contextual-back:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.planner input[type=number]{appearance:textfield;-moz-appearance:textfield}
.planner input[type=number]::-webkit-inner-spin-button,.planner input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.planner-field{min-width:0}
.planner-field-label{align-items:flex-start;min-height:0;margin-bottom:8px}
.planner-field-label label{min-width:0;white-space:normal;overflow-wrap:normal;line-height:var(--compact-reading-leading);margin:0}
.planner-field input{max-width:100%;min-width:0;width:100%}
.planner-inputs{align-items:start}
.calculator-how h2,.wealth-phase h2,.wealth-summary h2{font-size:var(--type-24)}
.calculator-how ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-6);padding-left:24px}
.calculator-how li{padding-left:8px;line-height:var(--compact-reading-leading)}
.wealth-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--planner-grid-gap);align-items:start}
.wealth-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--planner-grid-gap);min-width:0}
.wealth-phase{padding:var(--planner-inset);background:var(--surface-white);border:1px solid var(--line);border-radius:var(--radius-12);min-width:0}
.wealth-phase .planner-field{margin-top:24px}
.wealth-actions{grid-column:1/-1}
.wealth-summary{position:static;min-width:0}
.wealth-summary .planner-metrics{grid-template-columns:1fr}
.wealth-summary .planner-primary strong{font-size:var(--type-24);overflow-wrap:anywhere}
.wealth-summary .planner-metric dd{font-size:var(--type-body);overflow-wrap:anywhere}
.wealth-export{margin:24px 0}
.wealth-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--planner-grid-gap)}
.wealth-charts>*,#wealth-details{min-width:0}
.wealth-schedule{margin:24px 0;border:1px solid var(--line);border-radius:var(--radius-8);padding:var(--planner-inset);background:var(--surface-white)}
.wealth-schedule summary{font-weight:var(--weight-heading);cursor:pointer;color:var(--green)}
.wealth-table-scroll{overflow-x:auto;max-width:100%;margin-top:16px}
.wealth-table-scroll table{border-collapse:collapse;width:100%;font-size:var(--type-8)}
.wealth-table-scroll td,.wealth-table-scroll th{padding:var(--calculator-menu-link-inset);text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}
.wealth-table-scroll caption{text-align:left;padding-bottom:12px;color:var(--muted)}
.homepage-faq .button{margin-top:24px}
.homepage-faq summary{display:flex;justify-content:space-between;gap:var(--gap-3);list-style:none}
.homepage-faq summary::-webkit-details-marker{display:none}
.homepage-faq summary::after{content:'+';color:var(--green);flex-shrink:0}
.homepage-faq details[open] summary::after{content:'−'}
@media(max-width:1100px){.wealth-grid{grid-template-columns:1fr}.wealth-summary .planner-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.wealth-form,.wealth-charts,.calculator-how ol{grid-template-columns:1fr}.wealth-summary .planner-metrics{grid-template-columns:1fr}.site-nav .calculator-nav-link{width:100%;font-size:var(--type-8)}.wealth-phase{padding:var(--planner-inset)}}
@media(min-width:761px){.wealth-phase .planner-field-label{min-height:48px}.planner-inputs .planner-field-label{min-height:64px}}
@media(max-width:760px){.planner-inputs{grid-template-columns:1fr}}

/* Shared mobile brand and tiles. The official artwork and desktop layout are unchanged. */
.site-nav .calculator-menu.overlay-surface{background:var(--overlay-background);backdrop-filter:var(--overlay-backdrop);box-shadow:var(--intention-popup-shadow)}
@media(max-width:760px){
 header:has(.header-brand),header.intention-header{grid-template-columns:minmax(0,1fr) auto}
 header .header-brand .brand-divider{display:none}
 header .account,.intention-header .account{grid-column:2;grid-row:1}
 header .header-brand-copy{grid-column:1/-1;grid-row:2;justify-content:start;align-items:baseline;flex-wrap:wrap;min-width:0}
 header .header-brand-copy .header-brand-registration,header .header-brand-copy .header-brand-arn{font-size:var(--type-16);margin:0}
 header .account .client-login,header.intention-header .account .client-login{min-height:44px;margin:0}
 .site-nav .nav-calculators>.calculator-nav-link{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--mobile-nav-gap);border:0;border-radius:var(--radius-8);font-family:inherit;font-weight:inherit;font-size:var(--mobile-nav-label);line-height:var(--mobile-nav-leading);min-height:65px;padding:var(--mobile-nav-item-inset);color:inherit;background:transparent}
 .site-nav .nav-calculators>.calculator-nav-link[aria-current],.site-nav .nav-calculators>.calculator-nav-link:hover{background:var(--green-hover);color:var(--green)}
}
@media(max-width:380px){.site-nav .nav-calculators>.calculator-nav-link{min-height:56px;padding:var(--mobile-small-nav-inset);gap:var(--mobile-small-nav-gap);line-height:var(--mobile-small-nav-leading)}}
.public-footer .footer-top{align-items:start;border-bottom:1px solid var(--line);padding-bottom:24px}
.public-footer .footer-registration{max-width:34em;color:var(--muted);font-size:var(--type-8);line-height:var(--document-reading)}
.public-footer .legal-links{border-top:1px solid var(--line);padding-top:16px}
.public-footer .legal-links a{color:var(--green)}
.social-links :is(a,.social-visual){display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--story-green-soft);border-radius:var(--radius-capsule);background:var(--surface-white)}
.social-links img{display:block;width:var(--social-symbol-size);height:var(--social-symbol-size);object-fit:contain}
.public-document{box-sizing:border-box;background:var(--surface-white);max-width:850px;margin:auto;padding:var(--story-section-inset);overflow-wrap:break-word}
.public-document .document-title{border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:24px}
.document-title h1,.philosophy-story h1{font-size:var(--story-title)}
.public-document h2{font-size:var(--type-24);margin:36px 0 12px}
.public-document :is(p,li){line-height:var(--document-reading)}
.public-document a{color:var(--green);text-decoration:underline}
.public-document li{margin-block:6px}
.philosophy-story{max-width:1520px;margin:auto;background:var(--surface-white)}
.philosophy-story>section{padding:var(--story-section-inset);border-bottom:1px solid var(--line)}
.philosophy-story :is(h1,h2){line-height:var(--leading-5);max-width:19ch}
.philosophy-story h2,.philosophy-story .closing-signature{font-size:var(--story-heading)}
.philosophy-story p{max-width:65ch;line-height:var(--document-reading);color:var(--muted)}
.philosophy-story h1 span,.closing-signature span{color:var(--green)}
.story-opening,.story-belief,.story-legacy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:var(--gap-9);align-items:center}
.purpose-photo,.story-belief img{width:100%;height:auto;display:block;border-radius:var(--radius-glass)}
.story-belief{background:var(--green-hover)}
.story-legacy{grid-template-columns:minmax(0,.6fr) minmax(0,1fr)}
.legacy-art{max-width:320px;margin:auto;color:var(--green);width:80%}
.principle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap-6);margin:28px 0}
.principle-grid article{border:1px solid var(--line);border-radius:var(--radius-12);padding:var(--planner-inset)}
.principle-grid :is(svg,img){width:28px;height:28px;stroke:var(--green);fill:none;stroke-width:1.5}
.principle-grid h3{font-size:var(--type-body);margin:12px 0 0}
.story-commitment{text-align:center;background:var(--green-hover)}
.story-commitment :is(h2,p){margin-inline:auto}
.philosophy-story .closing-signature{line-height:var(--leading-5);font-weight:var(--weight-heading);color:var(--ink);margin-block:32px 12px}
@media(max-width:760px){.story-opening,.story-belief,.story-legacy,.principle-grid{grid-template-columns:1fr}.story-belief>div:first-child{order:2}.legacy-art{width:110px;margin:0}.public-footer .footer-top{flex-wrap:wrap}}
.philosophy-story :is(h1,h2),.philosophy-story .closing-signature{line-height:var(--story-heading-leading)}
@media(max-width:760px){
 .site-nav .nav-calculators{border:0}
 .site-nav .nav-calculators>.calculator-nav-link{border-top:1px solid var(--line)}
 .story-opening>div{display:contents}
 .story-opening{gap:var(--gap-6)}
 .story-opening h1{order:0;margin:0}
 .story-opening .purpose-photo{order:1}
 .story-opening p{order:2;margin:0}
}
/* Compact calculator inputs and accessible plotted points. */
.planner-field-label,.planner-inputs .planner-field-label,.wealth-phase .planner-field-label{min-height:0;align-items:flex-start}
.planner-field-label label{margin:0}
.planner-metric dt{display:flex;align-items:center;gap:var(--mobile-nav-gap)}
.planner-field input[type=range]{min-height:32px;accent-color:var(--green);touch-action:pan-y;cursor:grab}
.planner-field input[type=range]::-webkit-slider-thumb{width:20px;height:20px}
.planner-field input[type=range]::-moz-range-thumb{width:20px;height:20px}
.planner-modes{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:var(--gap-3)}
.planner-modes button{flex:1;min-height:44px;border:1px solid var(--line);border-radius:var(--radius-capsule);padding:var(--planner-control-inset);font:inherit;background:var(--surface-white);color:var(--ink)}
.planner-modes button[aria-pressed=true]{background:var(--green-mist);color:var(--green);border-color:var(--green)}
.chart-point{fill:var(--green);stroke:var(--surface-white);stroke-width:2;cursor:pointer}
.chart-value,.chart-contribution{pointer-events:none}
.building-wealth{max-width:1360px;margin:auto;background:var(--surface-white)}
.building-wealth>section{padding:var(--bw-section-inset);border-bottom:1px solid var(--line)}
.building-wealth h1{font-size:var(--bw-title-size);line-height:var(--story-heading-leading)}
.building-wealth h2{font-size:var(--bw-heading-size);line-height:var(--story-heading-leading);max-width:25ch}
.building-wealth p{line-height:var(--bw-leading);max-width:70ch}
.bw-hero,.bw-closing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:var(--gap-9)}
.bw-photo{width:100%;height:auto;display:block;border-radius:var(--radius-12)}
.bw-grid-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap-6);margin-top:28px}
.bw-card{border-top:1px solid var(--line);padding-top:20px;min-width:0}
.bw-icon{width:28px;height:28px;fill:none;stroke:var(--green);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.bw-card h3,.bw-principles h3{font-size:var(--type-body)}
.bw-card p{font-size:var(--type-8);color:var(--muted)}
.bw-principles{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-9)}
.bw-principles li{display:flex;gap:var(--gap-6);border-top:1px solid var(--line);padding-top:24px}
.bw-number{color:var(--green);font-size:var(--type-24)}
.bw-principles p{color:var(--muted)}
.bw-friends{background:var(--green-hover)}
.bw-friend-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-6);margin:28px 0}
.bw-friend{border:1px solid var(--line);border-radius:var(--radius-12);background:var(--surface-white);padding:var(--planner-inset);min-width:0}
.bw-friend h3{font-size:var(--type-24);color:var(--green)}
.bw-friend:last-child h3{color:var(--muted)}
.bw-friend dt{font-size:var(--type-8);color:var(--muted);margin-top:16px}
.bw-friend dd{margin:4px 0;font-size:var(--type-21);overflow-wrap:anywhere}
.bw-friend small{display:block;font-size:var(--type-8);color:var(--muted)}
.bw-comparison{margin:32px 0;background:var(--surface-white);border:1px solid var(--line);border-radius:var(--radius-12);padding:var(--planner-inset)}
.bw-comparison figcaption{font-weight:var(--weight-heading)}
.bw-comparison svg{display:block;width:100%;height:auto;overflow:visible}
.bw-comparison svg text{fill:var(--muted);font:inherit;font-size:var(--bw-chart-text)}
.bw-axis,.bw-grid{fill:none;stroke:var(--line);stroke-width:1}
.bw-line{fill:none;stroke-width:3;pointer-events:none}
.bw-asha{stroke:var(--green)}
.bw-rohan{stroke:var(--intention-red-ink);stroke-dasharray:7 4}
.bw-point{fill:var(--surface-white);stroke-width:1.5;cursor:pointer}
.bw-point:focus,.bw-point.is-selected{stroke-width:4;outline:none}
.bw-legend{display:flex;flex-wrap:wrap;gap:var(--gap-6);font-size:var(--type-8)}
.bw-legend span:first-child{color:var(--green)}
.bw-legend span:last-child{color:var(--intention-red-ink)}
.bw-point-info{display:block;min-height:58px;font-size:var(--type-8);line-height:var(--bw-leading);color:var(--green);border-top:1px solid var(--line);padding-top:12px;overflow-wrap:anywhere}
.bw-takeaway{color:var(--green)}
.bw-delay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap-6)}
.bw-delay-grid blockquote{margin:12px 0 24px;border-left:2px solid var(--green);padding:var(--planner-control-inset);font-size:var(--type-21)}
.bw-actions{display:flex;flex-wrap:wrap;gap:var(--gap-3);margin-top:24px}
@media(max-width:1100px){.bw-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.bw-hero,.bw-closing,.bw-principles,.bw-friend-cards,.bw-delay-grid{grid-template-columns:1fr}.bw-comparison{padding:var(--calculator-menu-inset)}.bw-closing>img{order:2}.bw-comparison svg{min-height:210px}}
@media(max-width:380px){.bw-grid-four{grid-template-columns:1fr}}
.life-article{max-width:1360px;margin:auto;background:var(--surface-white)}
.life-article>section{padding:var(--life-section-inset);border-bottom:1px solid var(--line)}
.life-article h1{font-size:var(--bw-title-size);line-height:var(--story-heading-leading)}
.life-article h2{font-size:var(--bw-heading-size);line-height:var(--story-heading-leading);max-width:27ch}
.life-article :is(p,li){line-height:var(--bw-leading);max-width:72ch}
.life-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap-9);align-items:center}
.life-photo{width:100%;height:auto;display:block;border-radius:var(--radius-12)}
.life-blocks,.life-previews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap-6);margin-top:28px}
.life-blocks article,.life-previews article{border-top:1px solid var(--line);padding-top:24px;min-width:0}
.life-blocks h3,.life-previews h3{font-size:var(--type-21)}
.life-blocks p,.life-previews p{font-size:var(--type-body);color:var(--muted)}
.life-previews{padding:var(--life-section-inset);margin-top:0}
.life-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-6);margin:28px 0}
.life-pair article{padding:var(--planner-inset);border:1px solid var(--line);border-radius:var(--radius-12);background:var(--surface-white);min-width:0}
.life-flow{list-style:none;display:flex;gap:var(--gap-6);padding:0;margin:28px 0}
.life-flow li{flex:1;min-width:0;display:flex;flex-direction:column;border-top:2px solid var(--green);position:relative;padding-top:16px}
.life-flow li:not(:last-child)::after{content:'→';position:absolute;right:0;top:16px;color:var(--green)}
.life-flow strong{padding-right:24px;font-size:var(--type-21)}
.life-flow li>span:last-child{font-size:var(--type-8);color:var(--muted)}
.life-step{color:var(--green);margin-bottom:12px}
.life-costs{background:var(--green-hover);border-radius:var(--radius-12);padding:var(--planner-inset)}
.life-costs strong{display:block;font-size:var(--bw-heading-size);color:var(--green);overflow-wrap:anywhere}
.life-costs span{font-size:var(--type-8)}
.life-emphasis{color:var(--green);font-size:var(--type-21);font-weight:var(--weight-heading)}
.life-stat{display:flex;align-items:center;gap:var(--gap-9);padding:var(--planner-inset);background:var(--green-hover);border-radius:var(--radius-12)}
.life-stat>strong{font-size:var(--life-stat-size);color:var(--green)}
.life-stat p{max-width:44ch}
.life-cost-story{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:var(--gap-9);align-items:center;padding:var(--life-section-inset);padding-inline:0;border-top:1px solid var(--line)}
.life-cost-story:nth-of-type(even)>div:first-child{order:2}
.life-budget-visual,.life-mini-chart{padding:var(--planner-inset);background:var(--green-hover);border-radius:var(--radius-12);min-width:0}
.life-budget-visual strong{display:block;color:var(--green);margin-top:20px}
.life-drawing{display:block;width:160px;max-width:100%;height:auto;fill:none;stroke:var(--green);stroke-width:2}
.life-mini-chart>div{margin:20px 0}
.life-mini-chart span,.life-mini-chart strong{display:block}
.life-mini-chart meter{width:100%;height:16px;accent-color:var(--green)}
.life-mini-chart meter::-webkit-meter-optimum-value{background:var(--green)}
.life-statements{padding-left:24px}
.life-statements li{border-bottom:1px solid var(--line);padding:var(--planner-inset)}
.life-thoughts p{font-size:var(--bw-heading-size);line-height:var(--story-heading-leading);color:var(--green);max-width:24ch;margin-block:36px}
.life-closing{background:var(--green-hover)}
.life-actions{display:flex;flex-wrap:wrap;gap:var(--gap-3);margin-top:28px}
.life-actions .button{max-width:100%;white-space:normal;text-align:left}
.life-article .source-note a{color:var(--green);text-decoration:underline}
@media(max-width:1100px){.life-blocks{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.life-hero,.life-pair,.life-previews,.life-cost-story,.life-blocks{grid-template-columns:1fr}.life-flow{flex-direction:column}.life-flow li:not(:last-child)::after{content:'↓'}.life-stat{flex-direction:column;align-items:start}.life-cost-story:nth-of-type(even)>div:first-child{order:0}.life-thoughts p{max-width:100%}}

/* Hero-only redesign. Shared navigation and the approved mobile header are untouched. */
.homepage .cinematic-hero{display:grid;grid-template-columns:1fr;max-width:none;min-height:650px;min-height:clamp(650px,45vw,760px);padding:var(--hero-cinema-inset);gap:0;overflow:hidden;align-items:center}
.cinematic-hero .hero-glass-panel{position:relative;z-index:1;width:clamp(440px,calc(60vw - 306px),44vw);padding:var(--hero-panel-inset);border:1px solid var(--neutral-2);border-radius:var(--hero-panel-radius);box-shadow:var(--intention-popup-shadow)}
.homepage .cinematic-hero h1{font-size:var(--hero-cinema-title);line-height:var(--home-v2-title-leading);margin:0 0 24px;max-width:none}
.homepage .cinematic-hero .family-hero-description p{font-size:var(--hero-cinema-body);line-height:var(--hero-cinema-leading);margin:0 0 24px}
.cinematic-hero .homepage-hero-actions{align-items:flex-start}
.cinematic-hero .homepage-hero-actions .button{min-height:56px;padding:var(--hero-cinema-button-inset);width:auto;max-width:100%}
.homepage .cinematic-hero .family-hero-art{position:absolute;inset:0;z-index:0;width:100%;height:100%;margin:0;background:var(--surface-white)}
.cinematic-hero .family-hero-art picture{display:block;width:100%;height:100%}
.cinematic-hero .homepage-family-photo{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:right center;border-radius:0}
@media(max-width:1100px){.homepage .cinematic-hero{min-height:0;padding:0;overflow:visible}.homepage .cinematic-hero .family-hero-art{position:relative;inset:auto;grid-column:1;grid-row:1;height:auto;align-self:start}.cinematic-hero .homepage-family-photo{height:auto;aspect-ratio:1672/941;object-fit:contain}.cinematic-hero .hero-glass-panel{width:92%;margin:-32px auto 0;padding:var(--hero-cinema-tablet-inset)}.homepage .cinematic-hero h1{font-size:var(--home-v2-title-mobile)}.cinematic-hero .homepage-hero-actions{flex-direction:row;flex-wrap:wrap}}
@media(max-width:760px){.homepage .cinematic-hero{padding:var(--hero-cinema-phone-outer);gap:0}.cinematic-hero .hero-glass-panel{width:94%;margin-top:-12px;padding:var(--hero-cinema-mobile-inset);border-radius:var(--radius-12)}.cinematic-hero .homepage-hero-actions{flex-direction:column;align-items:stretch}.cinematic-hero .homepage-hero-actions .button{width:100%}.homepage .cinematic-hero .family-hero-description p{font-size:var(--type-body)}}

/* Goals & Solutions: balanced remaining cards, scoped to this route. */
main[data-route="solutions"]>.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){main[data-route="solutions"]>.editorial-grid{grid-template-columns:1fr}}
/* Change 1: restrained article adjustments, scoped to the approved targets. */
main[data-route="learn/retirement"] .life-stat+h3{margin-top:40px}
main[data-route="learn/passive-regular-income"] .life-statements li{font-size:var(--learn-mistakes-size);font-weight:var(--weight-4)}
main[data-route="learn/passive-regular-income"] .life-thoughts p{width:100%;max-width:none;text-align:center;font-size:var(--learn-thought-size);margin-block:32px}
main[data-route="learn/passive-regular-income"] .life-section:has(.life-thoughts)>h2{max-width:none;text-align:center}
.milestone-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:var(--radius-12)}
.life-budget-visual.milestone-visual{padding:0;background:transparent}
.milestone-visual>p{color:var(--muted)}
/* Change 2: four exact Learn hero photographs and a purpose-led editorial checkup. */
.goals-opening h1{font-size:var(--goals-title-size);line-height:var(--story-heading-leading);max-width:none}
.goals-opening p{max-width:none}
.goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-6);padding-top:0}
.goal-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:var(--radius-12);overflow:hidden;background:var(--surface-white)}
.goal-card>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:0}
.goal-card-copy{display:flex;flex-direction:column;flex:1;padding:var(--goal-card-inset)}
.goal-card h2{font-size:var(--goals-card-title);line-height:var(--story-heading-leading);margin:0 0 16px}
.goal-card p{color:var(--muted);margin:0 0 24px}
.goal-card .read-link{margin-top:auto;align-self:start}
.portfolio-conversation{border-top:1px solid var(--line)}
.portfolio-conversation>h2{max-width:28ch}
.portfolio-conversation>p{max-width:76ch}
.portfolio-conversation .portfolio-highlight{font-size:var(--portfolio-highlight-size);line-height:var(--bw-leading);color:var(--green);max-width:none}
.portfolio-checkup{list-style:none;margin:32px 0;padding:0}
.portfolio-checkup li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:var(--gap-6);border-top:1px solid var(--line);padding:var(--portfolio-row-inset)}
.portfolio-checkup li>span{font-size:var(--type-21);color:var(--green)}
.portfolio-checkup h4{font-size:var(--type-21);margin:0 0 8px}
.portfolio-checkup p{margin:0;color:var(--muted)}
/* Change 3: preserve the Philosophy framework and give the family journey a photo. */
.story-legacy{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.journey-trust{margin:0}
/* Change 4: SIP retains the existing product-page visual components. */
.sip-highlight{font-size:var(--portfolio-highlight-size);line-height:var(--bw-leading);color:var(--green)}
.sip-education .investment-hero .sip-highlight{color:var(--green)}
.sip-example{background:var(--green-hover)}
.sip-example-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-6);margin:28px 0}
.sip-example-grid article{padding:var(--planner-inset);border:1px solid var(--line);border-radius:var(--radius-12);background:var(--surface-white)}
.sip-example-grid h3{font-size:var(--type-body);margin:0 0 12px}
.sip-example-grid strong{font-size:var(--bw-heading-size);color:var(--green)}
.sip-rhythm{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--gap-9);align-items:center}
.sip-step-visual{margin:0;min-width:0}
.sip-step-visual figcaption{font-size:var(--type-body);color:var(--muted)}
.sip-step-visual ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap-3);align-items:end;margin-top:28px}
.sip-step-visual li{display:flex;flex-direction:column;justify-content:end;min-height:108px;padding:var(--sip-step-inset);border-top:3px solid var(--green);background:var(--green-hover);border-radius:var(--radius-8);font-size:var(--type-8)}
.sip-step-visual li:nth-child(2){min-height:140px}.sip-step-visual li:nth-child(3){min-height:172px}.sip-step-visual li:nth-child(4){min-height:204px}
.sip-step-visual strong{font-size:var(--sip-step-heading);color:var(--green)}
.sip-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--gap-3)}
.sip-actions .button{max-width:100%;white-space:normal}
@media(max-width:760px){main[data-route="learn/retirement"] .life-stat+h3{margin-top:28px}.goal-grid,.sip-example-grid,.sip-rhythm,.story-legacy{grid-template-columns:minmax(0,1fr)}.portfolio-checkup li{grid-template-columns:40px minmax(0,1fr);gap:var(--gap-3)}.sip-step-visual ol{gap:var(--gap-4)}}
