/* Standalone variant layer */
:root{--secondary:#5b6470;--surface:#fff;--card:#fff;--text:#20242b;--muted:#687078;--border:#d6d9da;--button:var(--primary);--link:var(--primary);--hover:var(--accent);--focus:var(--accent);--error:#a4313d;--success:#24714f;--photo-overlay:rgba(0,0,0,.34)}
body{background:var(--background,var(--warm));color:var(--text);font-family:var(--body);overflow-x:hidden}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.brand-mark{width:min(270px,46vw);height:52px}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}.site-header>div:first-child{width:100%}
.hero-section,.inner-hero{position:relative;isolation:isolate}.hero-section:before,.inner-hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}.hero-title,.inner-title,.section-title{font-family:var(--heading)}
.form-panel{border:1px solid var(--border)}.consult-form input,.consult-form select,.consult-form textarea{background:var(--surface);color:var(--text)}[aria-invalid="true"]{border-color:var(--error)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--error) 18%,transparent)}
.footer-shell{position:relative;overflow:hidden}.modal-card{background:var(--surface)}
@media(max-width:1279px){.brand-mark{width:230px}.site-header .header-phone{display:none}}
@media(max-width:767px){.brand-mark{width:205px;height:44px}.hero-title{font-size:clamp(2.5rem,13vw,4rem)}.inner-title{font-size:clamp(2.4rem,12vw,3.7rem)}.mobile-menu{background:var(--surface)!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
:root{--primary:#09263A;--primary-dark:#041924;--secondary:#1D4E67;--accent:#B8F23A;--background:#EAF3F5;--surface:#FFFFFF;--card:#FFFFFF;--text:#102A36;--muted:#58707B;--border:#A9C2CB;--warm:#EAF3F5;--green-soft:#D7E9EC;--heading:"Space Grotesk",sans-serif;--body:"Source Sans 3",sans-serif}
.site-header{margin:.75rem auto 0;width:min(96%,1440px);border:1px solid #31566A!important;border-radius:18px;background:var(--primary)!important;color:#fff;box-shadow:0 12px 40px rgba(9,38,58,.18);top:.6rem}.site-header>div:first-child{padding:.7rem 1rem}.nav-link,.header-phone{color:#D6E8EE}.nav-link{padding:.55rem .7rem;border-radius:999px}.nav-link.is-active,.nav-link:hover{color:var(--accent);box-shadow:none}.nav-link.is-active{background:rgba(184,242,58,.12)}.menu-button{border-color:#547184}.menu-button span{background:#fff}.btn-primary,.btn-secondary,.btn-accent{border-radius:999px;box-shadow:none}.btn-primary{background:var(--accent);color:var(--primary)}.btn-primary:hover{background:#fff;color:var(--primary);transform:translateY(-1px)}
.hero-section{margin-top:-6rem;padding-top:6rem;background:var(--primary);color:#fff;min-height:760px}.hero-section:before{background:linear-gradient(120deg,rgba(184,242,58,.08),transparent 42%),repeating-linear-gradient(90deg,transparent 0 79px,rgba(255,255,255,.045) 80px)}.hero-section>div{max-width:1500px!important;grid-template-columns:.9fr 1.1fr!important;min-height:680px}.hero-title{color:#fff;font-size:clamp(3.4rem,6.2vw,6.7rem);line-height:.9}.hero-lead{color:#C7DCE4}.eyebrow{color:var(--accent)}.hero-visual{min-height:560px}.hero-visual img{border-radius:36px 36px 160px 36px;box-shadow:none;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%,0 12%)}.hero-orbit{inset:-4% -3% 8% 6%;border:2px solid var(--accent);border-radius:36px;transform:none}.floating-note{left:1rem;bottom:1rem;border-radius:16px;background:var(--accent);box-shadow:none}.floating-note strong,.floating-note span{color:var(--primary)}.mini-proof{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16);color:#fff;border-radius:14px}
.trust-stat{border-left:3px solid var(--accent)}.trust-stat>span{font-family:var(--body);font-size:.8rem;background:var(--primary);color:var(--accent);padding:.2rem .45rem;border-radius:999px}.section-space{padding:6.5rem 0}.section-title{font-size:clamp(2.5rem,5vw,4.7rem);line-height:.94}.info-card,.article-card,.persona-card,.contact-card,.dose-card,.name-card{border-radius:18px;border:1px solid var(--border);box-shadow:none}.info-card:hover{transform:translateY(-4px) rotate(-.25deg);box-shadow:8px 8px 0 var(--accent)}.icon-box{border-radius:12px;background:var(--primary);color:var(--accent)}.image-card,.inner-image{border-radius:32px 32px 120px 32px;box-shadow:none}.image-card img,.inner-image img{border-radius:inherit}.philosophy-card{border-radius:18px;border:1px solid var(--border);border-top:6px solid var(--accent);background:#fff}.timeline:before{width:3px;background:var(--border)}.timeline-step>span,.process-mini span,.process-list span{background:var(--accent);color:var(--primary);border-radius:12px}.form-panel{border-radius:26px;box-shadow:0 26px 70px rgba(9,38,58,.18)}.consult-form input,.consult-form select,.consult-form textarea{border-radius:12px}.inner-hero{background:var(--green-soft)}.inner-hero:before{background:repeating-linear-gradient(90deg,transparent 0 79px,rgba(9,38,58,.05) 80px)}.featured-article,.long-article{border-radius:28px}.faq-item,.summary-box,.note-box{border-radius:18px}.footer-shell{background:var(--primary-dark)}.footer-shell:after{content:"";position:absolute;width:420px;height:420px;border:70px solid rgba(184,242,58,.08);border-radius:50%;right:-160px;bottom:-190px}
@media(max-width:1023px){.site-header{width:calc(100% - 1rem)}.hero-section{margin-top:-5.4rem}.hero-section>div{grid-template-columns:1fr!important;padding-top:9rem!important}.hero-visual{min-height:420px}}

/* Logo contrast correction: a light plate separates the mark from the navy header. */
.site-header .brand-mark{width:min(292px,48vw);height:54px;background:#fff;border:2px solid var(--accent);border-radius:14px;padding:.25rem .65rem;box-shadow:0 4px 0 rgba(0,0,0,.18)}
.site-header .brand-mark img{object-position:left center}
@media(max-width:767px){.site-header .brand-mark{height:46px;padding:.15rem .45rem;border-radius:10px;box-shadow:0 3px 0 rgba(0,0,0,.18)}}
