:root{--pine: #071D16;--fairway: #10291F;--fairway-2: #1B3D2C;--cream: #F7F3E8;--cream-2: #EFE8D6;--gold: #C7A45B;--sage: #9AAE95;--ink: #222825;--paper: #F4EFE2}*{box-sizing:border-box}html{scroll-behavior:smooth}body.golf{margin:0;min-width:320px;color:var(--ink);background:radial-gradient(circle at 12% 0%,rgba(199,164,91,.18),transparent 28rem),var(--cream);font-family:DM Sans,ui-sans-serif,system-ui,sans-serif;font-size:17px;line-height:1.6}.golf a{color:inherit}.golf button,.golf input,.golf textarea{font:inherit}.golf button{cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.site-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 4.5vw;background:color-mix(in oklab,var(--cream) 88%,transparent);border-bottom:1px solid color-mix(in oklab,var(--ink) 10%,transparent);backdrop-filter:blur(14px)}.brand{display:flex;flex-direction:column;text-decoration:none;letter-spacing:.08em;text-transform:uppercase}.brand strong{font-size:.92rem}.brand span{color:var(--fairway-2);font-size:.68rem}.site-nav{display:flex;flex-wrap:wrap;gap:.4rem .95rem}.site-nav a{text-decoration:none;font-size:.92rem;font-weight:600;color:var(--fairway)}.site-nav a[aria-current=page],.site-nav a:hover{color:var(--gold)}.wrap{width:min(1180px,calc(100% - 8vw));margin:0 auto}.hero-golf{display:grid;min-height:86vh;place-items:end start;padding:18vh 4.5vw 7vh;color:var(--cream);background:linear-gradient(180deg,#071d162e,#071d16b8),var(--hero) center/cover no-repeat}.hero-golf .kicker{display:inline-block;margin-bottom:1rem;letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;color:var(--gold)}.hero-golf h1{max-width:16ch;margin:0 0 1rem;font-family:Fraunces,Georgia,serif;font-size:clamp(3.2rem,7vw,6.4rem);font-weight:560;font-optical-sizing:auto;line-height:.96}.hero-golf p{max-width:42rem;margin:0 0 2rem;font-size:clamp(1.05rem,2vw,1.28rem);color:color-mix(in oklab,var(--cream) 88%,var(--gold))}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem}.btn{display:inline-flex;align-items:center;min-height:52px;padding:.7rem 1.15rem;border:0;border-radius:999px;background:var(--gold);color:var(--pine);font-weight:700;text-decoration:none}.btn.ghost{background:transparent;color:var(--cream);border:1px solid color-mix(in oklab,var(--cream) 45%,transparent)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:-2.5rem auto 0;padding:1.3rem;border-radius:1.4rem;background:var(--pine);color:var(--cream);box-shadow:0 24px 50px #071d1638}.stats div{padding:.4rem .7rem}.stats strong{display:block;font-family:Fraunces,Georgia,serif;font-size:clamp(2rem,4vw,3.1rem)}.stats span{color:var(--sage);font-size:.88rem}.section-copy{max-width:40rem;margin:4.5rem auto 1.6rem}.section-copy h2,.journal-hero h1,.course-hero h1,.about-page h1{font-family:Fraunces,Georgia,serif;font-weight:560;line-height:1.05;letter-spacing:-.02em}.kicker{margin:0 0 .4rem;color:var(--gold);letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;font-weight:700}.passport{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr);gap:1rem;padding:1rem;border:1px solid color-mix(in oklab,var(--ink) 12%,transparent);border-radius:1.6rem;background:linear-gradient(180deg,#fffaf0,var(--paper));box-shadow:0 30px 60px #071d1614}.passport-toolbar,.timeline,.timeline-nav,.rail-head{display:flex;justify-content:space-between;gap:.8rem;align-items:center}.scope-toggle{display:flex;padding:.2rem;border-radius:999px;background:var(--cream-2)}.scope-toggle button,.timeline-nav button,.reset-view,.replay{border:0;background:transparent;color:var(--fairway);font-weight:700}.scope-toggle button{padding:.55rem .9rem;border-radius:999px}.scope-toggle .is-on{background:var(--fairway);color:var(--cream)}.replay,.reset-view{padding:.55rem .9rem;border-radius:999px;border:1px solid color-mix(in oklab,var(--gold) 70%,transparent)}.map-paper{position:relative;overflow:hidden;border-radius:1.1rem;background:#c5d1c0}.reset-view{position:absolute;right:.7rem;bottom:.7rem;background:var(--cream)}.timeline{margin-top:1rem;padding:1rem 1.1rem;border-top:1px dashed color-mix(in oklab,var(--ink) 18%,transparent);align-items:start}.timeline-count{margin:0;color:var(--gold);font-weight:800}.timeline h3{margin:0;font-family:Fraunces,Georgia,serif;font-size:1.8rem}.timeline h3 span{margin-left:.6rem;color:var(--sage);font-size:.9rem;font-family:DM Sans,sans-serif}.timeline p{margin:.35rem 0 0;max-width:36rem}.passport-rail{display:flex;flex-direction:column;min-height:640px;border-left:1px solid color-mix(in oklab,var(--ink) 10%,transparent);padding-left:1rem}.course-list{overflow:auto;flex:1;max-height:390px;padding-right:.3rem}.course-list h4{position:sticky;top:0;margin:1rem 0 .35rem;background:var(--paper);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sage)}.course-row{display:flex;gap:.7rem;width:100%;margin-bottom:.35rem;padding:.7rem .6rem;border:0;border-radius:.8rem;background:transparent;text-align:left}.course-row.is-active,.course-row:hover{background:color-mix(in oklab,var(--gold) 18%,var(--cream))}.course-row strong,.course-row em{display:block}.course-row em{font-style:normal;color:var(--fairway-2);font-size:.86rem}.flag-dot{width:.55rem;height:.55rem;margin-top:.45rem;border-radius:50%;background:var(--gold)}.preview{margin-top:.8rem;padding:.9rem;border-radius:1rem;background:var(--pine);color:var(--cream)}.preview-photo{display:block;width:100%;height:140px;object-fit:cover;margin-bottom:.7rem;border-radius:.7rem;background:var(--fairway-2)}.preview-photo.is-empty{display:grid;place-items:center;color:var(--sage);font-size:.9rem}.preview h4{margin:.2rem 0 .4rem;font-family:Fraunces,Georgia,serif}.preview-story{color:color-mix(in oklab,var(--cream) 80%,var(--sage))}.preview a{color:var(--gold);font-weight:700}.quest-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:.35rem}.quest-grid button{min-height:42px;border:0;border-radius:.4rem;background:var(--cream-2);color:var(--fairway-2);font-size:.72rem;font-weight:700}.quest-grid .played{background:var(--fairway);color:var(--cream)}.state-cell{display:grid;place-items:center;min-height:42px;border-radius:.4rem;background:var(--cream-2);color:var(--fairway-2);text-decoration:none;font-weight:700;font-size:.72rem}.state-cell.played{background:var(--fairway);color:var(--cream)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.story-card,.lesson,.video-card,.course-body,.form-card{padding:1.2rem;border-radius:1.2rem;background:#fffaf0;box-shadow:0 10px 30px #071d160d}.story-card h3,.lesson h3{font-family:Fraunces,Georgia,serif;margin:.3rem 0 .5rem}.story-card a,.course-body a{color:var(--fairway);font-weight:700}.lessons{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.quote-band{margin:4rem 0;padding:3rem 8vw;text-align:center;background:var(--fairway);color:var(--cream);font-family:Fraunces,Georgia,serif;font-size:clamp(1.6rem,4vw,2.6rem)}.site-footer{padding:3rem 4.5vw 4rem;color:var(--sage);background:var(--pine)}.site-footer a{color:var(--cream)}.foot-nav{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;margin-bottom:1.5rem}.course-hero{padding:4.5rem 0 2rem}.course-hero p{max-width:40rem}.meta{display:flex;gap:.8rem;flex-wrap:wrap;color:var(--fairway-2)}.form-card{display:grid;gap:.8rem;max-width:32rem}.form-card label{display:grid;gap:.35rem;font-weight:700}.form-card label span{font-weight:500;color:var(--fairway-2)}.form-card input,.form-card textarea{width:100%;padding:.8rem;border:1px solid color-mix(in oklab,var(--ink) 15%,transparent);border-radius:.7rem;background:#fffaf0}@media(max-width:960px){.passport,.stats,.cards,.lessons{grid-template-columns:1fr}.quest-grid{grid-template-columns:repeat(5,1fr)}.passport-rail{border-left:0;padding-left:0;min-height:0}.timeline{flex-wrap:wrap}}.menu-btn{display:none;border:0;background:transparent;font-weight:800}@media(max-width:720px){.site-nav{display:none}.site-header.is-open .site-nav{display:grid;position:absolute;inset:100% 0 auto;padding:1rem 4.5vw 1.2rem;background:var(--cream)}.menu-btn{display:inline-flex}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
