/* GLOW: bright, natural, calm. Straight edges, generous space, one light weight of Heebo. */
:root{--paper:#F5F0E9;--ink:#3A4039;--accent:#B68673;--accent-ink:#8C5E4B;--line:#3a40391f;--focus:#8C5E4B}
body{font-weight:300}
h1,h2,h3{font-weight:300;line-height:1.06;letter-spacing:0}
.gh{position:sticky;top:0;z-index:50;background:#F5F0E9f2;backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.gh-in{display:flex;align-items:center;gap:24px;min-height:72px}
.gh-logo{font-size:26px;font-weight:300;letter-spacing:.28em;text-decoration:none;margin-inline-end:auto}
.gh nav{display:flex;gap:28px;font-size:16px}
.gh nav a{text-decoration:none;padding:12px 2px}
.gh nav a:hover{color:var(--accent-ink)}
@media(max-width:720px){.gh nav{display:none}}
.g-btn{display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:0 28px;border:1px solid var(--accent-ink);color:var(--accent-ink);background:transparent;text-decoration:none;font-weight:400;font-size:17px;border-radius:999px;transition:background .25s,color .25s}
.g-btn:hover{background:var(--accent-ink);color:#fff}
.g-btn--sm{min-height:44px;padding:0 20px;font-size:15px}

.g-hero{display:grid;grid-template-columns:5fr 7fr;align-items:stretch;min-height:min(760px,calc(100svh - 72px))}
.g-hero-img{position:relative;overflow:hidden;order:2}
.g-hero-img img{width:100%;height:100%;object-fit:cover;object-position:75% 50%;animation:g-settle 1.2s ease-out both}
@keyframes g-settle{from{transform:scale(1.04)}to{transform:scale(1)}}
.g-hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:24px;padding:clamp(32px,5vw,72px) var(--g) clamp(32px,5vw,72px) clamp(var(--g),5vw,80px)}
.g-eyebrow{font-size:13px;letter-spacing:.34em;color:var(--accent-ink);font-weight:500}
.g-hero h1{font-size:clamp(46px,6.2vw,96px)}
.g-lead{font-size:clamp(18px,1.5vw,21px);max-width:30ch;font-weight:300}
@media(max-width:899px){
  .g-hero{grid-template-columns:1fr;min-height:0}
  .g-hero-img{aspect-ratio:4/4.4;order:-1}
  .g-hero-copy{padding:32px var(--g) 48px}
  .g-hero h1{font-size:clamp(42px,12vw,64px)}
}

.g-sec-head{display:grid;gap:12px;margin-bottom:48px;max-width:560px}
.g-num{font-size:14px;letter-spacing:.2em;color:var(--accent-ink);font-weight:500;padding-bottom:12px;border-bottom:1px solid var(--line);width:100%}
.g-sec-head h2{font-size:clamp(34px,4vw,56px)}
.g-sec-head p:last-child{font-size:17px}

.g-areas{padding:clamp(64px,9vw,128px) 0;border-top:1px solid var(--line)}
.g-tabs{display:grid;grid-template-columns:5fr 7fr;gap:clamp(24px,5vw,80px);align-items:start}
.g-tablist{display:grid;border-top:1px solid var(--line)}
.g-tablist button{display:flex;align-items:baseline;gap:20px;text-align:start;padding:22px 4px;min-height:64px;border:0;border-bottom:1px solid var(--line);background:none;font-size:clamp(22px,2.2vw,30px);font-weight:300;color:var(--ink);transition:color .25s,padding .25s}
.g-tablist button span{font-size:13px;letter-spacing:.16em;color:var(--accent-ink);font-weight:500}
.g-tablist button[aria-selected="true"]{color:var(--accent-ink);padding-inline-start:16px;border-bottom-color:var(--accent-ink)}
.g-tablist button:hover{color:var(--accent-ink)}
.g-panels{padding:8px 0;min-height:260px}
.g-panels [role=tabpanel]{display:grid;gap:18px;animation:g-in .3s ease both}
@keyframes g-in{from{opacity:0}to{opacity:1}}
.g-panels h3{font-size:clamp(28px,3vw,40px)}
.g-panels p{font-size:19px;max-width:48ch}
.g-panels ul{display:grid;gap:10px;font-size:17px;border-top:1px solid var(--line);padding-top:18px;max-width:48ch}
.g-panels li{padding-inline-start:22px;position:relative}
.g-panels li::before{content:"";position:absolute;inset-inline-start:0;top:.7em;width:10px;height:1px;background:var(--accent-ink)}
@media(max-width:820px){.g-tabs{grid-template-columns:1fr}}

.g-session{padding:clamp(64px,9vw,128px) 0;background:#EDE5DA}
.g-steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #3a404033}
.g-steps li{padding:24px 24px 8px 24px;border-inline-start:1px solid #3a404033;display:grid;gap:10px;align-content:start}
.g-steps li:first-child{border-inline-start:0;padding-inline-start:0}
.g-steps span{font-size:13px;letter-spacing:.16em;color:var(--accent-ink);font-weight:500}
.g-steps h3{font-size:28px}
.g-steps p{font-size:17px}
@media(max-width:820px){.g-steps{grid-template-columns:1fr 1fr}.g-steps li:nth-child(odd){border-inline-start:0;padding-inline-start:0}.g-steps li{padding-bottom:24px}}
@media(max-width:480px){.g-steps{grid-template-columns:1fr}.g-steps li{border-inline-start:0;padding-inline-start:0;border-bottom:1px solid #3a404022}}

.g-faq{padding:clamp(64px,9vw,128px) 0}
.g-faq-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(24px,5vw,80px)}
.g-acc{border-top:1px solid var(--line)}
.g-acc details{border-bottom:1px solid var(--line)}
.g-acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:16px 4px;font-size:21px;font-weight:300}
.g-acc summary::-webkit-details-marker{display:none}
.g-acc summary::after{content:"+";font-size:28px;font-weight:200;color:var(--accent-ink);transition:transform .25s}
.g-acc details[open] summary::after{transform:rotate(45deg)}
.g-acc details p{padding:0 4px 22px;max-width:52ch;font-size:18px}
@media(max-width:820px){.g-faq-grid{grid-template-columns:1fr}}

.g-contact{padding:clamp(64px,9vw,120px) 0;background:var(--ink);color:var(--paper)}
.g-contact-in{display:grid;grid-template-columns:7fr 5fr;gap:clamp(24px,5vw,80px);align-items:end}
.g-contact h2{font-size:clamp(44px,7vw,110px)}
.g-contact p{font-size:19px;margin-bottom:24px;max-width:34ch}
.g-contact .g-btn{border-color:var(--paper);color:var(--paper)}
.g-contact .g-btn:hover{background:var(--paper);color:var(--ink)}
.g-contact .g-btn:focus-visible{outline-color:#fff}
.g-contact .g-note{margin:20px 0 0;font-size:14px;opacity:.8}
@media(max-width:820px){.g-contact-in{grid-template-columns:1fr}}
.credit{background:var(--paper);color:var(--ink)}
@media(prefers-reduced-motion:reduce){.g-hero-img img{animation:none}}
