:root { color-scheme: light; --brand:#123f46; --deep:#082e34; --sun:#f1c75b; --paper:#f6f7f3; --mist:#e7f1f3; }
body { overflow-x:hidden; }
.site-header { background:rgba(246,247,243,.98); box-shadow:0 1px 0 rgba(18,63,70,.02); transition:box-shadow .2s ease,background-color .2s ease; }
.site-header.is-scrolled { background:#f6f7f3; box-shadow:0 12px 34px rgba(18,63,70,.09); }
.bg-brand { background-color:var(--brand)!important; }
.bg-deep { background-color:var(--deep)!important; }
.bg-sun { background-color:var(--sun)!important; }
.bg-paper { background-color:var(--paper)!important; }
.bg-mist { background-color:var(--mist)!important; }
.text-brand { color:var(--brand)!important; }
.text-sun { color:var(--sun)!important; }
.border-brand { border-color:var(--brand)!important; }

.nav-link { position:relative; color:rgba(18,63,70,.68); font-size:.82rem; font-weight:800; text-decoration:none; }
.nav-link::after { content:""; position:absolute; left:0; right:100%; bottom:-11px; height:2px; background:var(--sun); transition:right .25s ease; }
.nav-link:hover,.nav-link.active { color:var(--brand); }
.nav-link:hover::after,.nav-link.active::after { right:0; }
.mobile-link { display:block; padding:.9rem 1rem; border-bottom:1px solid #e2e8f0; border-radius:.75rem; color:var(--brand); font-size:.9rem; font-weight:800; }
.mobile-link:last-child { border-bottom:0; }
.mobile-link.active { background:var(--paper); }

.eyebrow { display:flex; align-items:center; gap:.7rem; color:rgba(18,63,70,.6); font-size:.7rem; font-weight:800; letter-spacing:.17em; line-height:1.4; text-transform:uppercase; }
.eyebrow>span { width:2.1rem; height:2px; background:var(--sun); }
.section-title { margin-top:1.15rem; max-width:52rem; color:var(--brand); font-family:Newsreader,serif; font-size:clamp(3rem,6vw,5.6rem); font-weight:500; letter-spacing:-.055em; line-height:.92; }
.card-kicker { color:rgba(18,63,70,.55); font-size:.68rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.source { margin-top:1rem; color:rgba(18,63,70,.4); font-size:.7rem; font-weight:800; }

.hero-glow { position:absolute; border-radius:9999px; pointer-events:none; }
.hero-glow-left { width:30rem; height:30rem; left:-24rem; top:2rem; border:6rem solid rgba(231,241,243,.95); }
.hero-glow-right { width:20rem; height:20rem; right:-13rem; bottom:-2rem; border:4rem solid rgba(241,199,91,.2); }
.page-hero { position:relative; overflow:hidden; padding:4.35rem 0 4.7rem; background:var(--brand); color:#fff; }
.page-hero h1 { max-width:54rem; margin-top:1.15rem; font-family:Newsreader,serif; font-size:clamp(3.5rem,6.1vw,5.8rem); font-weight:500; letter-spacing:-.055em; line-height:.89; text-wrap:balance; }
.page-hero-orbit { position:absolute; width:25rem; height:25rem; right:-10rem; top:-12rem; border:5rem solid rgba(255,255,255,.05); border-radius:9999px; }

.expert-portrait { position:relative; isolation:isolate; }
.expert-portrait::after { content:""; position:absolute; inset:1rem; z-index:2; border:1px solid rgba(18,63,70,.12); border-radius:inherit; pointer-events:none; }
.expert-placeholder { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:2rem; background:linear-gradient(145deg,#f4d77f 0%,#f1c75b 58%,#e8b94b 100%); color:var(--brand); text-align:center; }
.expert-placeholder::before { content:""; position:absolute; width:52%; aspect-ratio:1; right:-18%; top:-18%; border:2.2rem solid rgba(255,255,255,.24); border-radius:9999px; }
.expert-placeholder::after { content:""; position:absolute; width:38%; aspect-ratio:1; left:-15%; bottom:-14%; border:1.7rem solid rgba(18,63,70,.08); border-radius:9999px; }
.expert-placeholder-mark { position:relative; z-index:1; font-family:Newsreader,serif; font-size:clamp(4rem,7vw,6.2rem); font-weight:500; letter-spacing:-.08em; line-height:1; }
.expert-placeholder-rule { position:relative; z-index:1; width:2.5rem; height:2px; margin:1.15rem 0 .9rem; background:rgba(18,63,70,.5); }
.expert-placeholder-name { position:relative; z-index:1; max-width:12rem; font-size:.7rem; font-weight:800; letter-spacing:.13em; line-height:1.55; text-transform:uppercase; }

.button-primary,.button-secondary,.button-light { display:inline-flex; min-height:3.5rem; align-items:center; justify-content:center; gap:.75rem; padding:.8rem 1.65rem; border-radius:9999px; font-size:.9rem; font-weight:800; text-decoration:none; transition:transform .2s ease,background .2s ease,border-color .2s ease; }
.button-primary:not(:disabled),.button-secondary:not(:disabled),.button-light:not(:disabled) { cursor:pointer; }
.button-primary:disabled { cursor:wait; opacity:.72; }
.button-primary { background:var(--brand); color:white; box-shadow:0 12px 30px rgba(18,63,70,.15); }
.button-primary:hover { background:var(--deep); transform:translateY(-2px); }
.button-secondary { border:1px solid rgba(18,63,70,.18); background:white; color:var(--brand); }
.button-secondary:hover { border-color:var(--brand); transform:translateY(-2px); }
.button-light { background:white; color:var(--brand); }
.button-light:hover { background:var(--sun); transform:translateY(-2px); }

.feature-card,.post-card { display:flex; flex-direction:column; min-height:100%; padding:2rem; border:1px solid #dfe5e6; border-radius:2rem; background:white; color:inherit; text-decoration:none; box-shadow:0 10px 28px rgba(18,63,70,.035); transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.feature-card:hover,.post-card:hover { transform:translateY(-5px); border-color:rgba(18,63,70,.22); box-shadow:0 20px 48px rgba(18,63,70,.09); }
.feature-icon { display:grid; width:3.2rem; height:3.2rem; place-items:center; border-radius:1rem; background:var(--paper); color:var(--brand); }
.feature-card h3,.post-card h3 { margin-top:2.1rem; color:var(--brand); font-family:Newsreader,serif; font-size:1.85rem; font-weight:600; letter-spacing:-.035em; line-height:1.08; }
.feature-card p:not(.card-kicker),.post-card>p:not(.card-kicker) { margin-top:.9rem; color:#64748b; font-size:.92rem; line-height:1.75; }
.feature-card .card-kicker { margin-top:2.2rem; }
.card-link { display:inline-flex; align-items:center; gap:.55rem; margin-top:auto; padding-top:2rem; color:var(--brand); font-size:.78rem; font-weight:800; }
.card-link i { color:#d29f18; transition:transform .2s ease; }
.group:hover .card-link i,.card-link:hover i { transform:translateX(4px); }

.process-card { padding:2rem; border:1px solid #dfe5e6; border-radius:2rem; background:white; }
.process-card.highlight { border-color:rgba(241,199,91,.6); background:rgba(241,199,91,.16); }
.process-card h3 { margin-top:2.4rem; color:var(--brand); font-family:Newsreader,serif; font-size:2rem; font-weight:600; letter-spacing:-.035em; }
.process-card p { margin-top:.7rem; color:#64748b; line-height:1.75; }
.info-panel { display:grid; grid-template-columns:auto 1fr; gap:1.5rem; align-items:start; padding:2rem; border-radius:2rem; background:var(--brand); color:#fff; }
.info-icon { display:grid; width:3.5rem; height:3.5rem; place-items:center; border-radius:1rem; background:rgba(255,255,255,.1); color:var(--sun); }
.info-panel h2 { margin-top:.6rem; font-family:Newsreader,serif; font-size:2.4rem; font-weight:600; line-height:1; }
.info-panel p:not(.card-kicker) { margin-top:1rem; color:rgba(255,255,255,.6); line-height:1.75; }
.info-panel .card-kicker { color:var(--sun); }
.education-card { padding:2rem; border:1px solid #dfe5e6; border-radius:2rem; }
.education-card h2 { margin-top:.8rem; color:var(--brand); font-family:Newsreader,serif; font-size:2rem; font-weight:600; line-height:1.05; }
.education-card>p:not(.card-kicker):not(.source) { margin-top:1rem; color:#64748b; font-size:.9rem; line-height:1.7; }
.article-body { color:#475569; font-size:1.08rem; line-height:1.9; }
.article-body p+p { margin-top:1.7rem; }
.contact-field { display:block; color:#334155; font-size:.82rem; font-weight:800; }
.contact-field>span { display:block; margin-bottom:.55rem; }
.contact-field b { color:#c88a00; }
.contact-field input,.contact-field select,.contact-field textarea { display:block; width:100%; border:1px solid #dbe3e5; border-radius:.9rem; background:#fff; padding:.9rem 1rem; color:#334155; font-size:.93rem; font-weight:500; line-height:1.55; outline:none; transition:border-color .2s ease,box-shadow .2s ease,background .2s ease; }
.contact-field textarea { resize:vertical; min-height:10rem; }
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus { border-color:var(--brand); box-shadow:0 0 0 4px rgba(18,63,70,.09); }
.contact-field small { display:block; margin-top:.45rem; color:#94a3b8; font-size:.68rem; font-weight:600; text-align:right; }
.contact-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.legal-copy { color:#52616b; font-size:1rem; line-height:1.85; }
.legal-copy h2 { margin-top:2.5rem; color:var(--brand); font-family:Newsreader,serif; font-size:2rem; font-weight:600; line-height:1.1; }
.legal-copy h2:first-child { margin-top:0; }
.legal-copy p { margin-top:.8rem; }
.legal-copy .updated { margin-top:3rem; border-top:1px solid #dfe5e6; padding-top:1.5rem; color:#94a3b8; font-size:.8rem; font-weight:700; }
.footer-heading { color:var(--sun); font-size:.68rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.footer-link { display:block; transition:color .2s ease; }
.footer-link:hover { color:white; }

@media(max-width:640px){.hero-glow-left{display:none}.page-hero{padding:3.5rem 0 3.75rem}.page-hero h1{font-size:clamp(3rem,14vw,4.2rem)}.section-title{font-size:clamp(2.8rem,14vw,4.4rem)}.info-panel{grid-template-columns:1fr}.expert-placeholder-name{font-size:.62rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
