/* Production style block 1 */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,500&family=DM+Sans:wght@400;500;600&display=swap');

:root{
  --forest:#17382c;
  --forest-rgb:23,56,44;
  --ivory:#f3efe4;
  --ivory-warm:#eee7d6;
  --yellow:#e4ad24;
  --yellow-deep:#bd8d1f;
  --white:#fffdf8;
  --muted:#64756d;
  --line:rgba(23,56,44,.15);
  --serif:"Cormorant Garamond","Iowan Old Style","Baskerville","Times New Roman",serif;
  --sans:"DM Sans","Avenir Next","Segoe UI",Arial,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--forest);font-family:var(--sans);font-size:16px;line-height:1.68;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
img{display:block;width:100%}
.section-shell{width:min(1260px,calc(100% - 72px));margin-inline:auto}
.section-light{position:relative;background:var(--ivory);color:var(--forest)}
.section-dark{position:relative;background:var(--forest);color:var(--white)}

.eyebrow{margin:0 0 20px;text-transform:uppercase;letter-spacing:.30em;font:600 12px/1.2 var(--sans);color:var(--yellow-deep)}
.eyebrow.light{color:var(--yellow)}
h1,h2,h3{margin:0;font-family:var(--serif);font-weight:300;line-height:.90;letter-spacing:-.040em}
h2{font-size:clamp(58px,6.6vw,98px)}
h2 em,h3 em{font-style:italic;font-weight:500;color:var(--yellow)}
h3{font-size:clamp(30px,3vw,46px)}
p{margin:0}

.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:52px;padding:14px 24px;border:1px solid transparent;font:600 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;transition:transform .24s ease,background .24s ease,color .24s ease,border-color .24s ease,box-shadow .24s ease}
.button span{font-size:20px;font-weight:400;transition:transform .24s ease}
.button:hover{transform:translateY(-2px)}
.button:hover span{transform:translateX(5px)}
.button-gold{background:var(--yellow);color:var(--forest)}
.button-forest{background:var(--forest);color:var(--ivory)}
.button-ivory{background:var(--ivory);color:var(--forest)}
.motion-link{display:inline-flex;align-items:center;gap:12px;padding:8px 0 6px;border-bottom:1px solid currentColor;font:600 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase}
.motion-link span{font-size:18px;transition:transform .25s ease}
.motion-link:hover span{transform:translate(4px,4px)}
.motion-link.light{color:var(--ivory)}

/* Slim, persistent navigation */
.site-header{position:fixed;inset:0 0 auto 0;z-index:50;color:var(--white);border-bottom:1px solid rgba(255,255,255,.12);transition:background .28s ease,backdrop-filter .28s ease,box-shadow .28s ease}
.site-header.scrolled{background:rgba(var(--forest-rgb),.95);backdrop-filter:blur(14px);box-shadow:0 8px 28px rgba(0,0,0,.14)}
.header-inner{height:68px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:10px;min-width:0}
.brand-mark{width:38px;height:38px;display:grid;place-items:center}
.brand-ring{position:relative;width:35px;height:35px;border:1px solid rgba(255,253,248,.92);border-radius:50%;display:grid;place-items:center}
.brand-ring .wg{font:300 11px/1 var(--serif);letter-spacing:-.01em;transform:translate(-1px,1px)}
.logo-flag{position:absolute;right:4px;top:3px;width:8px;height:10px;pointer-events:none}
.logo-flag:before{content:"";position:absolute;right:0;top:1px;width:1px;height:9px;background:var(--ivory)}
.logo-flag i{position:absolute;right:1px;top:1px;width:6px;height:4px;background:var(--yellow);clip-path:polygon(0 0,100% 0,78% 50%,100% 100%,0 100%)}
.brand-copy{display:flex;flex-direction:column;line-height:1}
.brand-copy strong{font:300 18px/1 var(--serif);letter-spacing:-.025em}
.brand-copy small{margin-top:5px;font:600 8px/1 var(--sans);text-transform:uppercase;letter-spacing:.20em;opacity:.75}
.nav{display:flex;align-items:center;gap:24px;font:500 11px/1 var(--sans);letter-spacing:.055em}
.nav a{opacity:.86;transition:opacity .2s ease,color .2s ease}
.nav a:hover{opacity:1;color:var(--ivory)}
.nav-cta{border:1px solid rgba(255,253,248,.52);padding:10px 15px}
.menu-btn{display:none;appearance:none;background:transparent;border:0;width:42px;height:42px;position:relative;cursor:pointer}
.menu-btn span{position:absolute;left:10px;right:10px;height:1.5px;background:#fff}
.menu-btn span:first-child{top:16px}.menu-btn span:last-child{bottom:16px}

/* Hero — editorial style matching the visual direction */
.hero{position:relative;min-height:980px;background:var(--forest);color:var(--ivory);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}
.hero-img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center 57%;filter:saturate(.88) contrast(.98)}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(var(--forest-rgb),.88) 0%,rgba(var(--forest-rgb),.66) 42%,rgba(var(--forest-rgb),.20) 82%),linear-gradient(180deg,rgba(var(--forest-rgb),.18) 0%,rgba(var(--forest-rgb),.06) 40%,rgba(var(--forest-rgb),.58) 100%)}
.hero-content{position:relative;z-index:2;padding-top:112px;padding-bottom:58px;margin-inline:auto}
.hero-name{font-family:var(--serif);font-weight:300;font-size:clamp(50px,5.5vw,82px);line-height:.94;letter-spacing:-.035em;color:var(--ivory);max-width:920px}
.hero-kicker{display:flex;align-items:center;gap:18px;margin:34px 0 30px}
.hero-kicker span{display:block;width:42px;height:2px;background:var(--yellow)}
.hero-kicker p{text-transform:uppercase;letter-spacing:.30em;font:600 12px/1.2 var(--sans);color:var(--yellow)}
.hero-display{font:300 clamp(100px,13vw,188px)/.79 var(--serif);letter-spacing:-.052em;color:var(--ivory);max-width:1120px}
.hero-display em{font-style:italic;font-weight:500;color:var(--yellow)}
.hero-intro{max-width:760px;margin:44px 0 40px;font-size:20px;line-height:1.65;color:rgba(255,253,248,.82)}
.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.hero-stats{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:28px;margin-top:10px;border-top:1px solid rgba(255,253,248,.22);border-bottom:1px solid rgba(255,253,248,.22)}
.hero-stats>div{padding:17px 20px;border-right:1px solid rgba(255,253,248,.16)}
.hero-stats>div:last-child{border-right:0}
.hero-stats strong{display:block;font:300 33px/.95 var(--serif);letter-spacing:-.035em;color:var(--ivory)}
.hero-stats span{display:block;margin-top:7px;text-transform:uppercase;letter-spacing:.17em;font-size:8px;color:rgba(255,253,248,.65)}

/* recurring directional cue */
.section-arrow{position:absolute;right:max(30px,calc((100vw - 1260px)/2));bottom:34px;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;z-index:5;transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease}
.section-arrow span{font-size:22px;line-height:1;transition:transform .25s ease}
.section-arrow:hover{transform:translateY(3px)}
.section-arrow:hover span{transform:translateY(4px)}
.arrow-light{border:1px solid rgba(var(--forest-rgb),.28);color:var(--forest)}
.arrow-light:hover{background:var(--forest);color:var(--ivory);border-color:var(--forest)}
.arrow-dark{border:1px solid rgba(255,253,248,.34);color:var(--ivory)}
.arrow-dark:hover{background:var(--yellow);border-color:var(--yellow);color:var(--forest)}

/* Light intro */
.breathe{padding:142px 0 136px;border-bottom:1px solid var(--line)}
.breathe-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:10vw;align-items:center}
.breathe-heading h2{color:var(--forest)}
.breathe-heading h2 em{color:var(--yellow-deep)}
.breathe-copy{padding-top:12px}
.accent-line{display:block;width:66px;height:2px;background:var(--yellow);margin-bottom:40px}
.breathe-copy>p{font-size:23px;line-height:1.78;color:var(--muted)}
.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}
.mini-stats strong{display:block;font:300 47px/.95 var(--serif);letter-spacing:-.04em;color:var(--forest)}
.mini-stats span{display:block;margin-top:9px;text-transform:uppercase;letter-spacing:.17em;font-size:9px;color:var(--muted)}

/* Image treatment: soft integration rather than hard-edged cards */
.soft-image{position:relative;overflow:hidden;border-radius:8px}
.soft-image:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),inset 0 0 70px rgba(var(--forest-rgb),.22)}
.soft-image-dark{box-shadow:0 22px 70px rgba(4,20,14,.20)}

/* Worth the drive — moving editorial carousel */
.worth{padding:128px 0 136px;border-bottom:1px solid rgba(255,253,248,.11)}
.worth-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:7vw;align-items:center}
.worth-image img{height:650px;object-fit:cover;object-position:center 48%;filter:saturate(.90) contrast(.97)}
.worth-image:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(var(--forest-rgb),.20),transparent 10%,transparent 92%,rgba(var(--forest-rgb),.18)),linear-gradient(180deg,rgba(var(--forest-rgb),.16),transparent 12%,transparent 90%,rgba(var(--forest-rgb),.18))}
.worth-copy h2{color:var(--ivory);margin-bottom:42px}
.worth-carousel{max-width:620px}
.worth-viewport{overflow:hidden;border:1px solid rgba(255,253,248,.16);background:rgba(255,253,248,.035)}
.worth-track{display:flex;will-change:transform;transform:translateX(0);transition:transform .72s cubic-bezier(.72,0,.20,1)}
.worth-slide{position:relative;flex:0 0 100%;min-height:365px;padding:42px 46px 46px;display:flex;flex-direction:column;justify-content:flex-start}
.slide-accent{position:absolute;left:46px;top:0;width:64px;height:3px;background:var(--yellow)}
.slide-index{display:block;margin-bottom:36px;font:600 12px/1 var(--sans);letter-spacing:.16em;color:var(--yellow)}
.worth-slide h3{max-width:480px;font-size:clamp(42px,4vw,58px);line-height:.90;color:var(--ivory)}
.worth-slide p{max-width:500px;margin-top:26px;font-size:18px;line-height:1.72;color:rgba(255,253,248,.72)}
.worth-controls{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:22px;margin-top:28px}
.worth-counter{display:flex;align-items:baseline;gap:10px;min-width:94px;font:600 12px/1 var(--sans);letter-spacing:.16em;color:rgba(255,253,248,.50)}
.worth-counter strong{font-weight:600;color:var(--yellow)}
.worth-counter span{color:rgba(255,253,248,.50)}
.worth-nav{display:flex;gap:9px}
.worth-nav button{width:48px;height:48px;border:1px solid rgba(255,253,248,.28);background:transparent;color:var(--ivory);display:grid;place-items:center;cursor:pointer;transition:.22s ease}
.worth-nav button span{font:300 31px/1 var(--serif);transform:translateY(-1px)}
.worth-nav button:hover,.worth-nav button:focus-visible{border-color:var(--yellow);color:var(--yellow);background:rgba(228,173,36,.05);outline:none}
.worth-progress{justify-self:end;display:grid;grid-template-columns:repeat(3,36px);gap:10px}
.worth-progress span{height:3px;background:rgba(255,253,248,.26);transition:background .24s ease,transform .24s ease}
.worth-progress span.active{background:var(--yellow);transform:scaleX(1.15)}

/* 18-hole guide */
.holes{padding:132px 0 114px;border-bottom:1px solid var(--line)}
.holes-head{display:grid;grid-template-columns:1fr .8fr;gap:7vw;align-items:end;margin-bottom:50px}
.holes-head>p{color:var(--muted);font-size:17px}
.hole-stage{display:grid;grid-template-columns:minmax(390px,.88fr) minmax(420px,1.12fr);background:var(--forest);color:var(--ivory);overflow:hidden;border:1px solid var(--forest);box-shadow:none}
.hole-copy{padding:48px 50px 50px 52px;display:flex;flex-direction:column;justify-content:center}
.hole-kicker{text-transform:uppercase;letter-spacing:.28em;font-size:11px;color:rgba(255,253,248,.56)}
.hole-number{font:300 clamp(172px,16vw,252px)/.79 var(--serif);letter-spacing:-.07em;color:var(--ivory-warm);margin:22px 0 20px -7px}
.hole-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:600px;margin-bottom:28px}
.hole-metrics>div{padding-top:14px;border-top:1px solid rgba(255,253,248,.20)}
.hole-metrics span{display:block;text-transform:uppercase;letter-spacing:.18em;font-size:9px;color:rgba(255,253,248,.58)}
.hole-metrics strong{display:block;margin-top:7px;font:300 46px/1 var(--serif);letter-spacing:-.035em;color:var(--white)}
.hole-copy>p{max-width:530px;font-size:15px;color:rgba(255,253,248,.70)}
.hole-visual{position:relative;overflow:hidden;min-height:560px;border-left:1px solid rgba(255,253,248,.22)}
.hole-visual img{height:100%;object-fit:cover;object-position:center 60%;transform:scale(1.035);filter:saturate(.90) contrast(.98)}
.soft-image-hole:before{display:none}
.hole-visual-overlay{position:absolute;inset:0;z-index:2;background:transparent}
.hole-visual-overlay span{position:absolute;right:24px;bottom:-8px;font:300 192px/.8 var(--serif);color:rgba(255,253,248,.12);letter-spacing:-.07em}
.hole-picker-wrap{padding-top:22px}
.hole-picker{display:grid;grid-template-columns:repeat(18,1fr);background:var(--forest);overflow:hidden;border:1px solid var(--forest)}
.hole-picker button{appearance:none;border:0;border-right:1px solid rgba(255,253,248,.09);background:transparent;color:rgba(255,253,248,.65);height:56px;font:300 18px/1 var(--serif);cursor:pointer;transition:.2s ease}
.hole-picker button:last-child{border-right:0}
.hole-picker button:hover,.hole-picker button.active{background:var(--yellow);color:var(--forest)}
.nine-summary{display:grid;grid-template-columns:.95fr .95fr 1.1fr;margin-top:54px;border-top:1px solid var(--line);border-left:1px solid var(--line);background:var(--ivory)}
.nine-summary>div{padding:27px 30px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.nine-summary p{text-transform:uppercase;letter-spacing:.18em;font:600 11px/1 var(--sans);color:var(--yellow-deep);margin-bottom:15px}
.nine-summary strong{font:300 29px/1.1 var(--serif);letter-spacing:-.035em;color:var(--forest)}

/* Six-hole section */
.starter{padding:128px 0 136px;border-bottom:1px solid rgba(255,253,248,.11)}
.starter-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:center}
.starter-photo img{height:560px;object-fit:cover;object-position:center;filter:saturate(.90) contrast(.98)}
.starter-photo:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(var(--forest-rgb),.25),transparent 14%,transparent 86%,rgba(var(--forest-rgb),.28)),linear-gradient(180deg,rgba(var(--forest-rgb),.20),transparent 15%,transparent 86%,rgba(var(--forest-rgb),.26))}
.aerial-tag{position:absolute;z-index:2;left:18px;bottom:18px;background:rgba(var(--forest-rgb),.84);border:1px solid rgba(255,253,248,.20);padding:9px 12px;text-transform:uppercase;letter-spacing:.16em;font-size:9px;color:rgba(255,253,248,.80)}
.starter-copy h2{color:var(--ivory)}
.starter-copy>p:not(.eyebrow){margin-top:31px;color:rgba(255,253,248,.72);font-size:18px}
.tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}
.tags span{padding:8px 12px;border:1px solid rgba(255,253,248,.22);border-radius:999px;text-transform:uppercase;font-size:9px;letter-spacing:.14em;color:rgba(255,253,248,.80)}

/* Visit */
.visit{padding:128px 0 136px;border-bottom:1px solid var(--line)}
.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw}
.visit-copy>p:not(.eyebrow){max-width:560px;margin:31px 0 33px;color:var(--muted);font-size:18px}
.amenities{border-top:1px solid var(--line)}
.amenities>div{display:grid;grid-template-columns:48px 1fr;column-gap:14px;padding:24px 0;border-bottom:1px solid var(--line)}
.amenities span{grid-row:1/3;color:var(--yellow-deep);font:300 23px/1.1 var(--serif)}
.amenities strong{font:300 29px/1.1 var(--serif);letter-spacing:-.025em;color:var(--forest)}
.amenities small{margin-top:5px;color:var(--muted);font-size:13px}

/* Rates */
.rates{padding:126px 0 136px;border-bottom:1px solid rgba(255,253,248,.11)}
.rates-head{display:grid;grid-template-columns:1fr .85fr;gap:8vw;align-items:end;margin-bottom:52px}
.rates-head h2{color:var(--ivory)}
.rates-head>p{color:rgba(255,253,248,.70);font-size:17px}
.rate-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,253,248,.20);border-left:1px solid rgba(255,253,248,.20)}
.rate-grid article{padding:34px 30px 32px;border-right:1px solid rgba(255,253,248,.20);border-bottom:1px solid rgba(255,253,248,.20);transition:background .25s ease}
.rate-grid article:hover{background:rgba(255,253,248,.04)}
.rate-grid article>span{color:var(--yellow);font:300 22px/1 var(--serif)}
.rate-grid h3{font-size:42px;margin:34px 0 20px;color:var(--ivory)}
.rate-grid p{min-height:80px;color:rgba(255,253,248,.68);font-size:14px}
.rate-grid a{display:flex;justify-content:space-between;align-items:center;margin-top:30px;padding-top:16px;border-top:1px solid rgba(255,253,248,.16);text-transform:uppercase;letter-spacing:.13em;font-size:10px;color:var(--ivory)}
.rate-grid b{font-size:18px;font-weight:400;color:var(--yellow);transition:transform .22s ease}.rate-grid a:hover b{transform:translateX(5px)}

/* Scorecard */
.scorecard{padding:128px 0 136px;border-bottom:1px solid var(--line)}
.scorecard-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:50px}
.scorecard-total{display:grid;grid-template-columns:auto auto;gap:4px 16px;align-items:baseline}
.scorecard-total strong{font:300 39px/1 var(--serif);color:var(--forest)}
.scorecard-total span{text-transform:uppercase;font-size:9px;letter-spacing:.16em;color:var(--muted)}
.score-table-wrap{overflow:auto;border-top:1px solid var(--line);border-left:1px solid var(--line);background:rgba(255,253,248,.20)}
.scorecard table{width:100%;border-collapse:collapse;min-width:600px}
.scorecard th,.scorecard td{text-align:left;padding:14px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.scorecard thead th{text-transform:uppercase;letter-spacing:.16em;font-size:9px;color:var(--yellow-deep)}
.scorecard tbody td{font:300 20px/1.1 var(--serif)}
.scorecard tbody tr:hover{background:rgba(255,253,248,.45)}
.scorecard tfoot th{font-size:12px;background:rgba(255,253,248,.38)}

/* Location */
.location-panel{padding:128px 0 136px;border-bottom:1px solid rgba(255,253,248,.11)}
.location-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw}
.location-head h2{color:var(--ivory)}
.location-info{display:grid;grid-template-columns:1fr 1fr;gap:48px 72px;padding-top:10px}
.location-info h3{font:600 11px/1 var(--sans);text-transform:uppercase;letter-spacing:.20em;color:var(--yellow);margin-bottom:16px}
.location-info p,.location-info a{font-size:18px;line-height:1.65;color:rgba(255,253,248,.72)}
.map-link{display:inline-flex;gap:10px;align-items:center;border-bottom:1px solid rgba(255,253,248,.30)}
.map-link span{transition:transform .22s ease}.map-link:hover span{transform:translateX(5px)}

/* Final call-to-action image, deliberately separated by an ivory breathing gap */
.final-wrap{padding:118px 0 0}
.final-cta{position:relative;height:620px;color:var(--ivory);overflow:hidden}
.final-cta>img{height:100%;object-fit:cover;object-position:center 61%;filter:saturate(.88) contrast(.98)}
.final-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(var(--forest-rgb),.85),rgba(var(--forest-rgb),.24))}
.final-content{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center}
.final-content h2{max-width:950px;color:var(--ivory)}
.final-book{margin-top:86px}
.final-book .button{min-width:190px}

footer{background:var(--forest);color:var(--ivory);padding:44px 0 22px;border-top:1px solid rgba(255,253,248,.12)}
.footer-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}
.footer-brand{display:flex;align-items:center;gap:13px}
.footer-dot{width:9px;height:9px;border-radius:50%;background:var(--yellow)}
.footer-inner strong{font:300 27px/1 var(--serif)}
.footer-inner p{margin-top:5px;color:rgba(255,253,248,.50);font-size:11px}
.footer-inner>div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:7px;font-size:12px}
.legal{position:relative;z-index:2;border-top:1px solid rgba(255,253,248,.10);padding-top:17px;color:rgba(255,253,248,.58);font-size:11px;margin-top:28px}
.legal a{border-bottom:1px solid rgba(255,253,248,.22);transition:color .2s ease,border-color .2s ease}
.legal .design-credit{position:relative;z-index:1;pointer-events:auto;cursor:pointer}
.legal a:hover{color:var(--yellow);border-color:var(--yellow)}
.legal a:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}

.reveal{opacity:1;transform:none}

@media(max-width:980px){
  .section-shell{width:min(100% - 38px,1260px)}
  .header-inner{height:64px}
  .nav{display:none;position:absolute;top:64px;left:0;right:0;background:rgba(var(--forest-rgb),.98);padding:24px 20px 28px;flex-direction:column;align-items:flex-start;gap:20px}
  .nav.open{display:flex}.menu-btn{display:block}
  .hero{min-height:900px}.hero-content{padding-top:120px;padding-bottom:50px}.hero-name{font-size:56px}.hero-display{font-size:clamp(86px,16vw,142px)}.hero-stats{grid-template-columns:1fr 1fr}
  .breathe-grid,.worth-grid,.holes-head,.hole-stage,.starter-grid,.visit-grid,.rates-head,.location-grid{grid-template-columns:1fr}
  .breathe,.worth,.starter,.visit,.rates,.scorecard,.location-panel{padding-top:100px;padding-bottom:108px}
  .breathe-grid,.worth-grid,.starter-grid{gap:48px}
  .worth-image img,.starter-photo img{height:430px}
  .worth-carousel{max-width:none}.worth-slide{min-height:330px}.worth-controls{grid-template-columns:auto auto 1fr}
  .holes{padding:100px 0 100px}.holes-head{gap:28px}.hole-visual{min-height:370px}.hole-picker{grid-template-columns:repeat(9,1fr)}.nine-summary{grid-template-columns:1fr}
  .rate-grid{grid-template-columns:1fr}.rate-grid p{min-height:auto}.location-info{grid-template-columns:1fr 1fr}
  .final-wrap{padding-top:82px}.final-cta{height:550px}
  .section-arrow{right:22px;bottom:26px}
}

@media(max-width:640px){
  .section-shell{width:min(100% - 30px,1260px)}
  h2{font-size:56px}
  .brand-mark{width:34px;height:34px}.brand-ring{width:31px;height:31px}.brand-copy small{display:none}.brand-copy strong{font-size:17px}
  .hero{min-height:820px}.hero-name{font-size:46px}.hero-kicker{gap:12px;margin:26px 0 24px}.hero-kicker p{font-size:9px;letter-spacing:.23em}.hero-kicker span{width:30px}.hero-display{font-size:84px}.hero-intro{font-size:17px;margin:34px 0}.hero-actions{flex-direction:column;align-items:flex-start;gap:16px}.hero-stats>div{padding:14px}.hero-stats strong{font-size:29px}.hero-stats span{font-size:7px}
  .breathe-copy>p{font-size:19px}.mini-stats{grid-template-columns:1fr}.mini-stats strong{font-size:44px}
  .worth-image img,.starter-photo img{height:315px}
  .worth-slide{min-height:345px;padding:34px 28px 38px}.slide-accent{left:28px}.worth-slide h3{font-size:42px}.worth-slide p{font-size:16px}.worth-controls{grid-template-columns:1fr auto}.worth-progress{grid-column:1/-1;justify-self:stretch;grid-template-columns:repeat(3,1fr)}
  .hole-copy{padding:34px 24px}.hole-number{font-size:134px}.hole-metrics strong{font-size:34px}.hole-visual{min-height:280px}.hole-picker button{height:48px}.nine-summary>div{padding:22px}.nine-summary strong{font-size:26px}
  .rate-grid h3{font-size:38px}.location-info{grid-template-columns:1fr}
  .final-wrap{padding-top:72px}.final-book{margin-top:64px}
  .footer-inner{flex-direction:column;align-items:flex-start}.footer-inner>div:last-child{align-items:flex-start}
  .section-arrow{display:none}
}

/* =========================================================
   V7 — TOP-HALF ART DIRECTION
   The lower half from the six-hole section onward is kept as-is.
   ========================================================= */

/* Header: two-tier transparent hero navigation, collapsing cleanly on scroll */
.site-header{
  background:transparent;
  border-bottom:0;
  box-shadow:none;
  backdrop-filter:none;
  transition:background .28s ease,box-shadow .28s ease,backdrop-filter .28s ease;
}
.header-meta{
  height:52px;
  border-bottom:1px solid rgba(255,253,248,.18);
  overflow:hidden;
  transition:height .28s ease,opacity .22s ease,border-color .22s ease;
}
.meta-inner{
  height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:rgba(255,253,248,.68);
  font:600 10px/1 var(--sans);
  text-transform:uppercase;
  letter-spacing:.19em;
}
.header-inner{height:96px;transition:height .28s ease}
.site-header.scrolled{
  background:rgba(var(--forest-rgb),.965);
  backdrop-filter:blur(14px);
  box-shadow:0 8px 28px rgba(0,0,0,.14);
}
.site-header.scrolled .header-meta{height:0;opacity:0;border-color:transparent}
.site-header.scrolled .header-inner{height:68px}
.brand{gap:12px}
.brand-mark{width:42px;height:42px}
.brand-ring{width:39px;height:39px;border-color:rgba(255,253,248,.88)}
.brand-ring .wg{
  font-family:var(--sans);
  font-size:11px;
  font-weight:600;
  letter-spacing:-.02em;
  transform:none;
}
.logo-flag{right:2px;top:2px;width:10px;height:11px}
.logo-flag:before{right:0;top:1px;height:10px}
.logo-flag i{right:1px;top:1px;width:7px;height:5px}
.brand-copy strong{font:300 22px/1 var(--serif);letter-spacing:-.035em}
.brand-copy small{margin-top:5px;font-size:8px;letter-spacing:.20em}
.nav{gap:38px;font:600 10px/1 var(--sans);letter-spacing:.15em;text-transform:uppercase}
.nav a{opacity:.78}
.nav-cta{
  margin-left:10px;
  min-width:174px;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:17px 20px;
  border:0;
  background:var(--yellow);
  color:var(--forest)!important;
  opacity:1!important;
}
.nav-cta b{font-size:18px;font-weight:400;transition:transform .22s ease}
.nav-cta:hover b{transform:translateX(5px)}

/* Hero: deliberately follows the supplied editorial composition */
.hero{
  min-height:980px;
  height:100svh;
  max-height:1120px;
  display:block;
  overflow:hidden;
}
.hero-img{
  object-position:center 42%;
  filter:saturate(.90) contrast(.99) brightness(.98);
}
.hero-shade{
  background:
    linear-gradient(90deg,rgba(var(--forest-rgb),.84) 0%,rgba(var(--forest-rgb),.58) 35%,rgba(var(--forest-rgb),.25) 68%,rgba(var(--forest-rgb),.08) 100%),
    linear-gradient(180deg,rgba(8,25,19,.18) 0%,rgba(8,25,19,.04) 41%,rgba(8,25,19,.42) 100%);
}
.hero-content{
  position:relative;
  z-index:2;
  padding-top:clamp(248px,27vh,318px);
  padding-bottom:72px;
  margin-inline:auto;
}
.hero-name{
  width:max-content;
  max-width:100%;
  font-family:var(--serif);
  font-size:clamp(52px,5.2vw,78px);
  font-weight:300;
  line-height:.92;
  letter-spacing:-.045em;
  color:var(--ivory);
}
.hero-kicker{margin:36px 0 31px;gap:18px}
.hero-kicker span{width:40px;height:2px}
.hero-kicker p{font-size:11px;letter-spacing:.29em}
.hero-display{
  max-width:830px;
  font-family:var(--serif);
  font-size:clamp(112px,12.2vw,176px);
  font-weight:300;
  line-height:.74;
  letter-spacing:-.055em;
  color:var(--ivory);
}
.hero-display em{font-weight:500}
.hero-intro{
  max-width:690px;
  margin:52px 0 40px;
  font-size:19px;
  line-height:1.66;
  color:rgba(255,253,248,.78);
}
.hero-actions{gap:34px}
.hero-down{
  position:absolute;
  z-index:3;
  right:max(36px,calc((100vw - 1260px)/2));
  bottom:36px;
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,253,248,.38);
  border-radius:50%;
  color:var(--ivory);
  transition:background .24s ease,color .24s ease,border-color .24s ease,transform .24s ease;
}
.hero-down span{font-size:21px;transition:transform .24s ease}
.hero-down:hover{background:var(--yellow);border-color:var(--yellow);color:var(--forest);transform:translateY(3px)}
.hero-down:hover span{transform:translateY(4px)}

/* Breathe: calmer, clearer editorial hierarchy */
.breathe{
  padding:148px 0 126px;
  border-bottom:0;
}
.breathe-grid{
  grid-template-columns:minmax(430px,1.02fr) minmax(420px,.98fr);
  gap:11vw;
  align-items:start;
}
.breathe-heading{padding-top:3px}
.breathe-heading h2{
  max-width:730px;
  font-size:clamp(68px,7.2vw,104px);
  line-height:.84;
  letter-spacing:-.052em;
}
.breathe-copy{padding-top:5px;max-width:560px}
.breathe-copy .accent-line{margin:0 0 40px;width:64px}
.breathe-copy>p{
  font-size:21px;
  line-height:1.76;
  color:#5d6d65;
}
.breathe-link{margin-top:34px;color:var(--forest)}
.breathe-rail{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:94px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  border-left:1px solid var(--line);
}
.breathe-rail>div{
  min-height:122px;
  padding:24px 28px 26px;
  border-right:1px solid var(--line);
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto 1fr;
  column-gap:18px;
  align-items:end;
}
.breathe-rail span{
  grid-row:1/3;
  align-self:start;
  padding-top:3px;
  font:600 10px/1 var(--sans);
  letter-spacing:.16em;
  color:var(--yellow-deep);
}
.breathe-rail p{
  text-transform:uppercase;
  letter-spacing:.18em;
  font:600 9px/1 var(--sans);
  color:var(--muted);
}
.breathe-rail strong{
  align-self:end;
  margin-top:14px;
  font:300 32px/.95 var(--serif);
  letter-spacing:-.035em;
  color:var(--forest);
}

/* Worth: separate image, title and carousel into one clean editorial composition */
.worth{
  padding:132px 0 138px;
  border-bottom:0;
}
.worth-intro{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:7vw;
  align-items:end;
}
.worth-title{padding-bottom:18px}
.worth-title h2{
  max-width:610px;
  font-size:clamp(64px,6.3vw,92px);
  line-height:.87;
  color:var(--ivory);
}
.worth-image{
  position:relative;
  overflow:hidden;
  min-height:420px;
  border:1px solid rgba(255,253,248,.12);
  background:#102a20;
}
.worth-image img{
  height:455px;
  object-fit:cover;
  object-position:center 48%;
  filter:saturate(.88) contrast(.97);
}
.worth-image:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 60%,rgba(var(--forest-rgb),.44) 100%);
  pointer-events:none;
}
.worth-caption{
  position:absolute;
  z-index:2;
  left:24px;
  bottom:18px;
  font:600 9px/1 var(--sans);
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(255,253,248,.72);
}
.worth-carousel-wrap{margin-top:72px}
.worth-carousel{max-width:none}
.worth-viewport{
  border:1px solid rgba(255,253,248,.18);
  background:rgba(255,253,248,.025);
}
.worth-slide{
  min-height:320px;
  padding:44px 52px 48px;
  display:grid;
  grid-template-columns:90px minmax(300px,.82fr) minmax(320px,1fr);
  grid-template-rows:auto 1fr;
  column-gap:54px;
  align-items:start;
}
.slide-accent{left:52px;width:64px}
.slide-index{
  grid-column:1;
  grid-row:1/3;
  margin:4px 0 0;
  font-size:11px;
}
.worth-slide h3{
  grid-column:2;
  grid-row:1/3;
  max-width:430px;
  font-size:clamp(48px,4.6vw,66px);
  line-height:.91;
}
.worth-slide p{
  grid-column:3;
  grid-row:1/3;
  align-self:center;
  max-width:490px;
  font-size:18px;
  line-height:1.72;
}
.worth-controls{
  margin-top:22px;
  grid-template-columns:auto auto 1fr;
  padding:0 2px;
}

/* 18-hole guide: clean hard boundary + highly legible numerals */
.holes{padding-top:136px}
.holes-head{margin-bottom:54px}
.hole-stage{
  grid-template-columns:minmax(405px,.86fr) minmax(460px,1.14fr);
  border:0;
  outline:1px solid rgba(var(--forest-rgb),.18);
  box-shadow:none;
}
.hole-copy{padding:46px 48px 44px 52px}
.hole-kicker{font:600 11px/1 var(--sans);letter-spacing:.22em}
.hole-number{
  font-family:var(--sans);
  font-size:clamp(130px,11vw,180px);
  font-weight:600;
  line-height:.82;
  letter-spacing:-.075em;
  font-variant-numeric:tabular-nums lining-nums;
  color:var(--ivory);
  margin:21px 0 30px -6px;
  text-shadow:none;
}
.hole-metrics{gap:28px;margin-bottom:28px}
.hole-metrics span{font-size:9px;letter-spacing:.18em}
.hole-metrics strong{
  font-family:var(--sans);
  font-size:36px;
  font-weight:600;
  line-height:1;
  letter-spacing:-.045em;
  font-variant-numeric:tabular-nums lining-nums;
}
.hole-visual{min-height:520px}
.hole-visual img{transform:none;filter:saturate(.92) contrast(.99)}
.hole-visual-overlay{background:none}
.hole-visual-overlay span{
  font-family:var(--sans);
  font-size:156px;
  font-weight:600;
  letter-spacing:-.07em;
  font-variant-numeric:tabular-nums lining-nums;
  color:rgba(255,253,248,.18);
  right:24px;
  bottom:14px;
}
.hole-picker button{
  font-family:var(--sans);
  font-size:14px;
  font-weight:600;
  letter-spacing:-.02em;
  font-variant-numeric:tabular-nums lining-nums;
}
.nine-summary strong{font-size:30px}

/* Tablet */
@media(max-width:980px){
  .header-meta{display:none}
  .header-inner,.site-header.scrolled .header-inner{height:70px}
  .hero{min-height:900px;height:auto;max-height:none}
  .hero-content{padding-top:190px;padding-bottom:120px}
  .hero-name{font-size:58px}
  .hero-display{font-size:clamp(92px,15vw,138px)}
  .hero-down{right:22px;bottom:28px}
  .breathe-grid,.worth-intro{grid-template-columns:1fr;gap:52px}
  .breathe-rail{margin-top:68px}
  .worth-title{padding-bottom:0}
  .worth-image{min-height:390px}.worth-image img{height:420px}
  .worth-carousel-wrap{margin-top:54px}
  .worth-slide{grid-template-columns:70px 1fr;grid-template-rows:auto auto;column-gap:32px;row-gap:22px;min-height:340px}
  .worth-slide h3{grid-column:2;grid-row:1}.worth-slide p{grid-column:2;grid-row:2;align-self:start}.slide-index{grid-column:1;grid-row:1/3}
  .hole-stage{grid-template-columns:1fr}.hole-visual{min-height:390px}
}

/* Mobile */
@media(max-width:640px){
  .header-inner{height:66px!important}.site-header.scrolled .header-inner{height:66px!important}
  .brand-mark{width:35px;height:35px}.brand-ring{width:33px;height:33px}.logo-flag{right:1px;top:1px}
  .hero{min-height:800px}
  .hero-content{padding-top:148px;padding-bottom:120px}
  .hero-name{font-size:46px}
  .hero-kicker{margin:28px 0 28px}.hero-kicker p{font-size:8px;letter-spacing:.22em}
  .hero-display{font-size:82px;line-height:.78}
  .hero-intro{font-size:16px;margin:36px 0 32px;max-width:92%}
  .hero-down{display:none}
  .breathe{padding-top:94px;padding-bottom:104px}
  .breathe-heading h2{font-size:58px}
  .breathe-copy>p{font-size:18px}
  .breathe-rail{grid-template-columns:1fr;margin-top:58px;border-bottom:0}
  .breathe-rail>div{min-height:98px;border-bottom:1px solid var(--line)}
  .worth{padding-top:96px;padding-bottom:108px}
  .worth-title h2{font-size:58px}
  .worth-image{min-height:300px}.worth-image img{height:315px}
  .worth-carousel-wrap{margin-top:44px}
  .worth-slide{display:block;min-height:360px;padding:38px 28px 40px}
  .slide-accent{left:28px}.slide-index{display:block;margin:0 0 34px}.worth-slide h3{font-size:44px;max-width:none}.worth-slide p{margin-top:30px;font-size:16px}
  .hole-number{font-size:112px}.hole-metrics strong{font-size:31px}.hole-visual-overlay span{font-size:110px}
}
@media(max-width:980px){
  .nav{top:70px}
}
@media(max-width:640px){
  .nav{top:66px}
}


/* =========================================================
   V8 — top-half composition refinements
   ========================================================= */

/* Breathe rail: prioritize clarity over decorative numerals. */
.breathe-rail>div{
  grid-template-columns:46px 1fr;
  grid-template-rows:auto auto;
  align-content:center;
  align-items:center;
  padding:23px 28px 24px;
  min-height:124px;
}
.breathe-rail span{
  grid-row:1/3;
  align-self:center;
  padding-top:0;
  font-family:var(--serif);
  font-size:29px;
  font-weight:300;
  line-height:1;
  letter-spacing:-.035em;
  color:var(--yellow-deep);
}
.breathe-rail p{
  align-self:end;
  margin:0 0 7px;
  font-family:var(--sans);
  font-size:10px;
  font-weight:600;
  line-height:1.15;
  letter-spacing:.17em;
  text-transform:uppercase;
  color:#61736a;
}
.breathe-rail strong{
  align-self:start;
  margin:0;
  font-family:var(--sans);
  font-size:26px;
  font-weight:500;
  line-height:1.08;
  letter-spacing:-.035em;
  font-variant-numeric:tabular-nums lining-nums;
  color:var(--forest);
}

/* Worth the drive: image and carousel become one balanced two-column feature. */
.worth{
  padding:128px 0 138px;
}
.worth-layout{
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(410px,.94fr);
  gap:38px;
  align-items:stretch;
}
.worth-feature{
  position:relative;
  min-height:600px;
  overflow:hidden;
  background:var(--forest);
}
.worth-feature>img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 48%;
  filter:saturate(.88) contrast(.98);
}
.worth-feature-shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(var(--forest-rgb),.06) 18%,rgba(var(--forest-rgb),.19) 50%,rgba(var(--forest-rgb),.88) 100%),
    linear-gradient(90deg,rgba(var(--forest-rgb),.30),transparent 52%);
}
.worth-feature-copy{
  position:absolute;
  z-index:2;
  left:42px;
  right:34px;
  bottom:56px;
}
.worth-feature-copy .eyebrow{margin-bottom:22px}
.worth-feature-copy h2{
  max-width:600px;
  font-size:clamp(70px,6.4vw,96px);
  line-height:.82;
  color:var(--ivory);
  text-wrap:balance;
}
.worth-feature-copy h2 em{color:var(--yellow)}
.worth-caption{
  left:auto;
  right:22px;
  bottom:18px;
  color:rgba(255,253,248,.61);
}
.worth-carousel-panel{
  min-width:0;
  display:flex;
  align-items:stretch;
}
.worth-carousel{
  width:100%;
  max-width:none;
  display:flex;
  flex-direction:column;
  min-height:600px;
}
.worth-viewport{
  flex:1;
  display:flex;
  overflow:hidden;
  border:1px solid rgba(255,253,248,.24);
  background:transparent;
}
.worth-track{height:100%}
.worth-slide{
  min-height:538px;
  height:100%;
  padding:48px 46px 44px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
.slide-accent{left:46px;width:64px}
.slide-index{
  margin-bottom:42px;
  font-family:var(--sans);
  font-size:11px;
  font-weight:600;
  letter-spacing:.18em;
}
.worth-slide h3{
  max-width:470px;
  font-size:clamp(46px,4.4vw,62px);
  line-height:.92;
}
.worth-slide p{
  max-width:470px;
  margin-top:30px;
  font-size:18px;
  line-height:1.76;
}
.worth-controls{
  margin-top:18px;
  padding:0;
}

/* Footer top control: make it feel clickable and support JS scrolling. */
.back-to-top{
  display:inline-flex;
  align-items:center;
  gap:7px;
  cursor:pointer;
  border-bottom:1px solid rgba(255,253,248,.28);
  padding-bottom:2px;
}

@media(max-width:980px){
  .worth-layout{grid-template-columns:1fr;gap:28px}
  .worth-feature{min-height:500px}
  .worth-carousel{min-height:0}
  .worth-slide{min-height:360px}
  .worth-caption{right:20px}
}

@media(max-width:640px){
  .breathe-rail>div{grid-template-columns:40px 1fr;padding:20px 22px}
  .breathe-rail span{font-size:25px}
  .breathe-rail strong{font-size:23px}
  .worth-feature{min-height:430px}
  .worth-feature-copy{left:26px;right:22px;bottom:42px}
  .worth-feature-copy h2{font-size:58px}
  .worth-caption{display:none}
  .worth-slide{min-height:370px;padding:38px 28px 40px}
  .slide-accent{left:28px}
}


/* V8.1 carousel sizing fix */
.worth-track{width:100%;min-width:0}
.worth-slide{flex:0 0 100%;width:100%;min-width:0}
.worth-slide h3,.worth-slide p{align-self:auto}


/* =========================================================
   V9 — upper-half editorial art direction
   ========================================================= */

/* Keep the top half restrained: italic is typographic emphasis, not a reason
   to introduce yellow on every heading. The hero remains the exception. */
.breathe-heading h2 em{color:var(--yellow-deep)}
.worth-feature-copy h2 em,
.worth-slide h3 em{color:var(--ivory)}
.holes-head h2 em{color:var(--forest)}

/* HERO — proportions and placement follow the supplied reference more closely. */
.hero{
  height:100svh;
  min-height:780px;
  max-height:1040px;
}
.hero-content{
  width:min(1395px,calc(100% - 210px));
  padding-top:clamp(220px,31vh,305px);
  padding-bottom:64px;
}
.hero-name{
  font-size:clamp(58px,4.75vw,82px);
  line-height:.92;
  letter-spacing:-.046em;
  max-width:900px;
}
.hero-kicker{margin:36px 0 31px}
.hero-display{
  font-size:clamp(120px,11.1vw,178px);
  line-height:.76;
  letter-spacing:-.058em;
  max-width:900px;
}
.hero-intro{
  max-width:700px;
  margin-top:52px;
  font-size:19px;
  line-height:1.67;
}
.hero-img{object-position:center 47%}
.hero-shade{
  background:
    linear-gradient(90deg,rgba(var(--forest-rgb),.82) 0%,rgba(var(--forest-rgb),.57) 36%,rgba(var(--forest-rgb),.24) 69%,rgba(var(--forest-rgb),.06) 100%),
    linear-gradient(180deg,rgba(8,25,19,.15) 0%,rgba(8,25,19,.02) 43%,rgba(8,25,19,.42) 100%);
}

/* BREATHE — remove the card/rail feeling; the reference is an airy editorial spread. */
.breathe{
  min-height:690px;
  padding:92px 0 102px;
  display:flex;
  align-items:center;
  border-bottom:1px solid var(--line);
}
.breathe-grid{
  display:grid;
  grid-template-columns:minmax(600px,1.28fr) minmax(430px,.72fr);
  gap:9vw;
  align-items:stretch;
}
.breathe-heading{
  align-self:end;
  padding:0 0 44px 0;
}
.breathe-heading .eyebrow{margin-bottom:24px}
.breathe-heading h2{
  font-size:clamp(70px,5.7vw,98px);
  line-height:.84;
  letter-spacing:-.052em;
}
.breathe-heading h2 em{font-weight:500}
.breathe-copy{
  align-self:start;
  max-width:520px;
  padding-top:0;
}
.breathe-copy .accent-line{
  width:66px;
  height:1px;
  margin:0 0 38px;
}
.breathe-copy>p{
  font-size:20px;
  line-height:1.82;
  color:#5e7068;
}
.breathe-inline-stats{
  display:grid;
  grid-template-columns:.72fr .95fr 1.3fr;
  gap:28px;
  align-items:end;
  margin-top:52px;
}
.breathe-inline-stats strong{
  display:block;
  font-family:var(--sans);
  font-size:30px;
  font-weight:500;
  line-height:1;
  letter-spacing:-.045em;
  font-variant-numeric:tabular-nums lining-nums;
  color:var(--forest);
}
.breathe-inline-stats span{
  display:block;
  margin-top:12px;
  font-family:var(--sans);
  font-size:9px;
  font-weight:500;
  line-height:1.2;
  letter-spacing:.17em;
  text-transform:uppercase;
  color:#5f7168;
}

/* WORTH — same forest, cleaner feature/carousel relationship, far less yellow. */
.worth{
  padding:118px 0 128px;
  background:var(--forest);
}
.worth-layout{
  gap:46px;
  grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr);
}
.worth-feature{
  min-height:590px;
  border:1px solid rgba(255,253,248,.13);
}
.worth-feature-copy{left:48px;right:40px;bottom:60px}
.worth-feature-copy .eyebrow{color:var(--yellow);margin-bottom:20px}
.worth-feature-copy h2{
  max-width:620px;
  font-size:clamp(68px,6vw,94px);
  line-height:.84;
}
.worth-feature-copy h2 em{color:var(--ivory)}
.worth-carousel{min-height:590px}
.worth-viewport{border-color:rgba(255,253,248,.18);background:rgba(255,253,248,.025)}
.worth-slide{min-height:528px;padding:46px 46px 42px}
.worth-slide h3{font-size:clamp(44px,3.7vw,58px);line-height:.95}
.worth-slide h3 em{color:var(--ivory)}
.worth-slide p{font-size:17px;line-height:1.78;color:rgba(255,253,248,.70)}

/* COURSE GUIDE INTRO — directly informed by the provided composition. */
.holes{
  padding:126px 0 112px;
}
.holes-head{
  display:grid;
  grid-template-columns:minmax(460px,1fr) minmax(390px,.72fr);
  gap:10vw;
  align-items:center;
  margin-bottom:70px;
}
.holes-head .eyebrow{margin-bottom:25px}
.holes-head h2{
  font-size:clamp(72px,6vw,96px);
  line-height:.83;
  letter-spacing:-.052em;
  color:var(--forest);
}
.holes-head h2 em{font-weight:500;color:var(--forest)}
.holes-head>p{
  max-width:510px;
  justify-self:end;
  font-size:17px;
  line-height:1.72;
  color:#5e7068;
}
.hole-overview{
  display:grid;
  grid-template-columns:110px minmax(180px,.65fr) minmax(330px,1.3fr) 64px;
  align-items:center;
  min-height:118px;
  margin-bottom:58px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.overview-seq{
  font:500 16px/1 var(--sans);
  letter-spacing:.08em;
  color:var(--yellow-deep);
  font-variant-numeric:tabular-nums;
}
.overview-hole{
  font:500 35px/1 var(--serif);
  letter-spacing:-.035em;
  color:var(--forest);
  font-variant-numeric:tabular-nums;
}
.overview-metrics{
  justify-self:end;
  font:600 13px/1 var(--sans);
  letter-spacing:.15em;
  color:var(--forest);
  font-variant-numeric:tabular-nums lining-nums;
}
.overview-next{
  justify-self:end;
  appearance:none;
  width:52px;
  height:52px;
  border:0;
  background:transparent;
  color:var(--yellow-deep);
  font:300 36px/1 var(--sans);
  cursor:pointer;
  transition:transform .22s ease,color .22s ease;
}
.overview-next:hover{transform:translateX(7px);color:var(--forest)}

/* Detailed 18-hole panel: heavy enough numerals to remain legible on entry. */
.hole-stage{
  grid-template-columns:minmax(410px,.82fr) minmax(500px,1.18fr);
  outline:0;
  border:0;
  background:var(--forest);
}
.hole-copy{padding:52px 52px 50px}
.hole-number{
  font-family:var(--serif);
  font-size:clamp(154px,13vw,214px);
  font-weight:500;
  line-height:.78;
  letter-spacing:-.065em;
  color:var(--ivory);
  margin:25px 0 34px -6px;
  font-variant-numeric:lining-nums tabular-nums;
}
.hole-metrics strong{
  font-family:var(--sans);
  font-size:37px;
  font-weight:500;
  letter-spacing:-.04em;
  font-variant-numeric:lining-nums tabular-nums;
}
.hole-visual{border-left:0;min-height:540px}
.hole-visual-overlay span{
  font-family:var(--sans);
  font-weight:500;
  font-size:140px;
  opacity:.95;
}
.hole-picker{
  border:0;
  border-radius:8px;
}
.hole-picker button{
  height:62px;
  font-family:var(--serif);
  font-size:19px;
  font-weight:500;
  letter-spacing:-.02em;
}
.nine-summary{
  margin-top:70px;
  border:1px solid var(--line);
  background:var(--ivory);
}
.nine-summary>div{padding:31px 34px 34px;border-bottom:0}
.nine-summary strong{
  font-family:var(--serif);
  font-size:31px;
  font-weight:500;
  line-height:1.05;
  letter-spacing:-.045em;
}

@media(max-width:1100px){
  .hero-content{width:min(100% - 100px,1395px)}
  .breathe-grid{grid-template-columns:1fr 1fr;gap:7vw}
  .worth-layout{grid-template-columns:1fr 1fr;gap:28px}
  .holes-head{grid-template-columns:1fr .9fr;gap:6vw}
}

@media(max-width:980px){
  .hero{min-height:850px;height:auto;max-height:none}
  .hero-content{width:min(100% - 44px,1395px);padding-top:190px;padding-bottom:120px}
  .breathe{min-height:0;padding:98px 0 110px}
  .breathe-grid{grid-template-columns:1fr;gap:58px}
  .breathe-heading{align-self:auto;padding-bottom:0}
  .breathe-copy{max-width:720px}
  .worth-layout{grid-template-columns:1fr}
  .worth-feature,.worth-carousel{min-height:0}
  .worth-feature{min-height:500px}
  .worth-slide{min-height:360px}
  .holes-head{grid-template-columns:1fr;gap:42px;margin-bottom:52px}
  .holes-head>p{justify-self:start;max-width:680px}
  .hole-overview{grid-template-columns:72px minmax(150px,.7fr) 1fr 52px}
  .hole-stage{grid-template-columns:1fr}
}

@media(max-width:640px){
  .hero-content{width:calc(100% - 36px);padding-top:150px;padding-bottom:116px}
  .hero-name{font-size:44px}
  .hero-display{font-size:80px}
  .breathe-heading h2,.holes-head h2{font-size:58px}
  .breathe-copy>p{font-size:18px}
  .breathe-inline-stats{grid-template-columns:1fr 1fr;gap:30px 20px}
  .breathe-inline-stats>div:last-child{grid-column:1/-1}
  .worth-feature{min-height:420px}
  .worth-feature-copy{left:26px;right:22px;bottom:42px}
  .worth-feature-copy h2{font-size:58px}
  .hole-overview{grid-template-columns:52px 1fr 44px;min-height:100px;margin-bottom:40px}
  .overview-hole{font-size:28px}
  .overview-metrics{grid-column:1/3;justify-self:start;padding:0 0 20px;font-size:10px;letter-spacing:.10em}
  .overview-next{grid-column:3;grid-row:1/3}
  .hole-number{font-size:128px}
  .hole-picker button{font-size:16px;height:52px}
}


/* =========================================================
   V10 — exact hero art-direction pass from supplied reference
   ========================================================= */

/* The reference hero is intentionally uninterrupted. The persistent navigation
   appears only once the visitor begins scrolling, preserving the exact opening
   composition while retaining the requested sticky navigation behaviour. */
.site-header{
  opacity:0;
  transform:translateY(-100%);
  pointer-events:none;
  transition:opacity .28s ease,transform .28s ease,background .28s ease,box-shadow .28s ease,backdrop-filter .28s ease;
}
.site-header.scrolled{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
  background:rgba(var(--forest-rgb),.97);
}
.site-header.scrolled .header-meta{display:none}
.site-header.scrolled .header-inner{height:68px}

/* Hero: intentionally mirrors the supplied layout rather than the previous
   centred/site-shell treatment. */
.hero{
  position:relative;
  height:100svh;
  min-height:650px;
  max-height:960px;
  display:block;
  overflow:hidden;
  background:var(--forest);
  color:var(--ivory);
}
.hero-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 50%;
  filter:saturate(.88) contrast(.96) brightness(.95);
}
.hero-shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(var(--forest-rgb),.70) 0%,rgba(var(--forest-rgb),.56) 39%,rgba(var(--forest-rgb),.31) 68%,rgba(var(--forest-rgb),.14) 100%),
    linear-gradient(180deg,rgba(10,29,22,.18) 0%,rgba(10,29,22,.03) 43%,rgba(10,29,22,.43) 100%);
}
.hero-content.section-shell{
  position:absolute;
  z-index:2;
  inset:0;
  width:auto;
  max-width:none;
  margin:0;
  padding:clamp(8px,1.15vw,20px) clamp(14px,1.8vw,34px) clamp(18px,2vw,38px);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.hero-name{
  margin:0;
  max-width:none;
  font-family:var(--serif);
  font-size:clamp(54px,5.35vw,82px);
  font-weight:300;
  line-height:.88;
  letter-spacing:-.052em;
  color:var(--ivory);
  white-space:nowrap;
}
.hero-kicker{
  display:flex;
  align-items:center;
  gap:18px;
  margin:clamp(34px,5.1vh,46px) 0 clamp(25px,3.9vh,36px);
}
.hero-kicker span{
  width:42px;
  height:2px;
  flex:0 0 auto;
  background:var(--yellow);
}
.hero-kicker p{
  margin:0;
  color:var(--yellow);
  text-transform:uppercase;
  font-family:var(--sans);
  font-size:clamp(10px,.92vw,14px);
  font-weight:600;
  line-height:1;
  letter-spacing:.29em;
  white-space:nowrap;
}
.hero-display{
  margin:0;
  max-width:none;
  font-family:var(--serif);
  font-size:clamp(112px,12.5vw,190px);
  font-weight:300;
  line-height:.73;
  letter-spacing:-.063em;
  color:var(--ivory);
}
.hero-display em{
  color:var(--yellow);
  font-style:italic;
  font-weight:500;
}
.hero-intro{
  margin:auto 0 0;
  max-width:735px;
  font-family:var(--sans);
  font-size:clamp(17px,1.45vw,22px);
  font-weight:500;
  line-height:1.55;
  letter-spacing:-.015em;
  color:rgba(255,253,248,.82);
}

/* Explicitly remove legacy hero extras from earlier iterations. */
.hero-actions,.hero-down,.hero-stats{display:none!important}

/* Course-detail numerals: a clearer typeface than the delicate editorial serif. */
.hole-number,
.hole-metrics strong,
.hole-picker button,
.overview-seq,
.overview-metrics{
  font-family:var(--sans)!important;
  font-variant-numeric:tabular-nums lining-nums;
}
.hole-number{
  font-weight:400!important;
  letter-spacing:-.075em!important;
  line-height:.82!important;
}
.hole-metrics strong{font-weight:500!important;letter-spacing:-.04em!important}
.hole-picker button{font-weight:500!important;letter-spacing:-.025em}

@media(max-width:900px){
  .hero{min-height:760px;height:100svh;max-height:none}
  .hero-content.section-shell{padding:18px 22px 28px}
  .hero-name{font-size:clamp(48px,8vw,66px);white-space:normal}
  .hero-kicker{margin:34px 0 29px;gap:14px}
  .hero-kicker span{width:34px}
  .hero-kicker p{font-size:9px;letter-spacing:.24em;white-space:normal}
  .hero-display{font-size:clamp(90px,17vw,148px);line-height:.75}
  .hero-intro{max-width:690px;font-size:17px;line-height:1.55}
}
@media(max-width:560px){
  .hero{min-height:700px}
  .hero-content.section-shell{padding:16px 14px 24px}
  .hero-name{font-size:45px;line-height:.92}
  .hero-kicker{margin:28px 0 25px}
  .hero-display{font-size:82px;line-height:.78;letter-spacing:-.057em}
  .hero-intro{font-size:15px;line-height:1.55;max-width:95%}
}

/* =========================================================
   V11 — literal hero reconstruction from the supplied reference
   The rest of the site remains unchanged.
   ========================================================= */

/* Anchor destinations account for the persistent navigation. */
#holes,#beginners,#visit,#breathe,#worth,#rates,#scorecard,#location{scroll-margin-top:0}

/* At the top of the page the navigation mirrors the supplied two-tier header.
   Once scrolling begins it collapses to the main bar and remains fixed. */
.site-header{
  position:fixed;
  inset:0 0 auto 0;
  z-index:100;
  opacity:1;
  transform:none;
  pointer-events:auto;
  color:var(--ivory);
  background:transparent;
  border:0;
  box-shadow:none;
  transition:background .28s ease,box-shadow .28s ease,backdrop-filter .28s ease;
}
.site-header .section-shell{
  width:calc(100% - 100px);
  max-width:none;
  margin-inline:50px;
}
.header-meta{
  display:block;
  height:47px;
  opacity:1;
  overflow:hidden;
  border-bottom:1px solid rgba(255,253,248,.16);
  transition:height .28s ease,opacity .20s ease,border-color .20s ease;
}
.meta-inner{
  height:47px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font:600 12px/1 var(--sans);
  letter-spacing:.15em;
  text-transform:uppercase;
  color:rgba(255,253,248,.74);
}
.header-inner{
  height:111px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  transition:height .28s ease;
}
.site-header.scrolled{
  opacity:1;
  transform:none;
  pointer-events:auto;
  background:rgba(var(--forest-rgb),.965);
  backdrop-filter:blur(14px);
  box-shadow:0 8px 28px rgba(5,18,13,.18);
}
.site-header.scrolled .header-meta{
  height:0;
  opacity:0;
  border-color:transparent;
}
.site-header.scrolled .header-inner{height:74px}

/* Header branding and menu — proportions are taken directly from the reference. */
.brand{gap:10px;color:var(--ivory)}
.brand-mark{width:47px;height:47px}
.brand-ring{
  width:45px;
  height:45px;
  border:1px solid rgba(255,253,248,.90);
}
.brand-ring .wg{
  font:600 13px/1 var(--serif);
  transform:translate(-1px,1px);
}
.logo-flag{
  right:4px;
  top:3px;
  width:10px;
  height:12px;
}
.logo-flag:before{height:10px}
.logo-flag i{width:8px;height:5px}
.brand-copy strong{
  font:300 27px/.92 var(--serif);
  letter-spacing:-.045em;
}
.brand-copy small{
  margin-top:6px;
  font:600 9px/1 var(--sans);
  letter-spacing:.21em;
  text-transform:uppercase;
  color:rgba(255,253,248,.68);
}
.nav{
  display:flex;
  align-items:center;
  gap:52px;
  font:600 12px/1 var(--sans);
  letter-spacing:.145em;
  text-transform:uppercase;
}
.nav a{color:rgba(255,253,248,.78);opacity:1}
.nav a:hover{color:var(--ivory)}
.nav-cta{
  display:flex;
  align-items:center;
  gap:18px;
  min-height:64px;
  padding:0 30px;
  border:0;
  background:var(--yellow);
  color:var(--forest)!important;
  opacity:1!important;
}
.nav-cta b{font-size:22px;font-weight:400;line-height:1}

/* HERO — composition intentionally follows the supplied screenshot, not a
   generic responsive hero layout. */
.hero{
  position:relative;
  height:100svh;
  min-height:780px;
  max-height:none;
  overflow:hidden;
  display:block;
  background:var(--forest);
  color:var(--ivory);
}
.hero-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 56%;
  filter:saturate(.92) contrast(.97) brightness(.98);
}
.hero-shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(var(--forest-rgb),.79) 0%,rgba(var(--forest-rgb),.60) 34%,rgba(var(--forest-rgb),.32) 61%,rgba(var(--forest-rgb),.08) 100%),
    linear-gradient(180deg,rgba(5,18,13,.20) 0%,rgba(5,18,13,.03) 43%,rgba(5,18,13,.23) 100%);
}
.hero-content.section-shell{
  position:absolute;
  z-index:2;
  top:32.9%;
  left:10%;
  right:auto;
  bottom:auto;
  width:min(760px,47vw);
  max-width:none;
  margin:0;
  padding:0;
  display:block;
}
.hero-name{
  margin:0;
  max-width:none;
  white-space:nowrap;
  font-family:var(--serif);
  font-size:clamp(58px,4.45vw,80px);
  font-weight:300;
  line-height:.92;
  letter-spacing:-.054em;
  color:var(--ivory);
}
.hero-kicker{
  display:flex;
  align-items:center;
  gap:18px;
  margin:38px 0 34px;
}
.hero-kicker span{
  width:40px;
  height:2px;
  flex:0 0 40px;
  background:var(--yellow);
}
.hero-kicker p{
  margin:0;
  white-space:nowrap;
  font:600 clamp(10px,.72vw,13px)/1 var(--sans);
  letter-spacing:.29em;
  text-transform:uppercase;
  color:var(--yellow);
}
.hero-display{
  margin:0;
  max-width:none;
  font-family:var(--serif);
  font-size:clamp(116px,8.65vw,156px);
  font-weight:300;
  line-height:.73;
  letter-spacing:-.064em;
  color:var(--ivory);
}
.hero-display em{
  color:var(--yellow);
  font-style:italic;
  font-weight:500;
}
.hero-intro{
  margin:52px 0 0;
  max-width:720px;
  font:500 clamp(17px,1.18vw,21px)/1.62 var(--sans);
  letter-spacing:-.016em;
  color:rgba(255,253,248,.82);
}
.hero-actions,.hero-down,.hero-stats{display:none!important}

/* Preserve the requested clearer course-guide numerals. */
.hole-number,.hole-metrics strong,.hole-picker button,.overview-seq,.overview-metrics{
  font-family:var(--sans)!important;
  font-variant-numeric:tabular-nums lining-nums;
}
.hole-number{font-weight:500!important;letter-spacing:-.07em!important;line-height:.82!important}
.hole-metrics strong{font-weight:600!important;letter-spacing:-.035em!important}
.hole-picker button{font-weight:500!important;letter-spacing:-.02em}

@media(max-width:1120px){
  .site-header .section-shell{width:calc(100% - 48px);margin-inline:24px}
  .nav{gap:25px}
  .nav-cta{padding-inline:20px}
  .hero-content.section-shell{left:7%;width:min(760px,60vw)}
}
@media(max-width:900px){
  .header-meta{height:38px}.meta-inner{height:38px;font-size:9px}
  .header-inner{height:74px}.site-header.scrolled .header-inner{height:68px}
  .menu-btn{display:block}
  .nav{display:none;position:absolute;top:112px;left:0;right:0;padding:24px;background:rgba(var(--forest-rgb),.98);flex-direction:column;align-items:flex-start;gap:21px}
  .site-header.scrolled .nav{top:68px}
  .nav.open{display:flex}
  .nav-cta{min-height:50px}
  .hero{min-height:760px}
  .hero-content.section-shell{top:27%;left:24px;width:calc(100% - 48px)}
  .hero-name{font-size:clamp(48px,8.4vw,66px);white-space:normal}
  .hero-kicker{margin:30px 0 28px}
  .hero-kicker p{font-size:9px;white-space:normal}
  .hero-display{font-size:clamp(90px,17vw,138px);line-height:.75}
  .hero-intro{margin-top:38px;max-width:620px;font-size:16px}
}
@media(max-width:560px){
  .site-header .section-shell{width:calc(100% - 28px);margin-inline:14px}
  .meta-inner span:last-child{display:none}
  .brand-mark{width:39px;height:39px}.brand-ring{width:37px;height:37px}
  .brand-copy strong{font-size:22px}.brand-copy small{font-size:7px}
  .hero-content.section-shell{top:24%;left:14px;width:calc(100% - 28px)}
  .hero-name{font-size:44px}
  .hero-kicker{gap:12px;margin:26px 0 25px}.hero-kicker span{width:30px;flex-basis:30px}.hero-kicker p{font-size:8px;letter-spacing:.22em}
  .hero-display{font-size:82px;line-height:.77}
  .hero-intro{font-size:15px;line-height:1.55;margin-top:34px}
}

/* Final visual calibration against the 1854×865 supplied hero reference. */
@media(min-width:901px){
  .header-inner{height:128px}
  .hero-img{object-position:center 40%}
  .hero-content.section-shell{top:33.2%;left:9.65%;width:min(790px,48vw)}
  .hero-name{font-size:clamp(58px,4.10vw,76px)}
  .hero-kicker{margin:36px 0 34px}
  .hero-display{font-size:clamp(124px,9.80vw,182px);line-height:.715}
  .hero-intro{margin-top:60px;max-width:730px}
}
@media(min-width:901px){
  .hero-img{object-position:center 14%}
  .hero-content.section-shell{top:33.25%}
  .hero-display{font-size:clamp(130px,10.3vw,190px);line-height:.715}
  .hero-intro{margin-top:64px}
}


/* =========================================================
   V12 — hero proportion + course-guide simplification
   ========================================================= */

/* The reference uses a narrower, more substantial display face. Keep the same
   Cormorant character, but give it more body and visually condense it slightly. */
@media(min-width:901px){
  .hero-content.section-shell{
    top:31.8%;
    left:12.4%;
    width:min(760px,46vw);
  }
  .hero-name{
    display:inline-block;
    font-weight:400;
    font-size:clamp(60px,4.25vw,79px);
    letter-spacing:-.047em;
    transform:scaleX(.93);
    transform-origin:left center;
  }
  .hero-display{
    display:inline-block;
    font-weight:400;
    font-size:clamp(128px,9.55vw,177px);
    line-height:.735;
    letter-spacing:-.055em;
    transform:scaleX(.91);
    transform-origin:left center;
  }
  .hero-display em{
    font-weight:500;
  }
  .hero-kicker{
    margin:34px 0 31px;
  }
  .hero-intro{
    margin-top:56px;
    max-width:690px;
  }
}

/* On intermediate screens, keep the new weight without over-condensing. */
@media(min-width:561px) and (max-width:900px){
  .hero-name{font-weight:400;letter-spacing:-.045em}
  .hero-display{font-weight:400;letter-spacing:-.05em}
}

/* Remove the editorial current-hole rail beneath the section introduction.
   The detailed interactive hole panel now starts immediately after the heading. */
.hole-overview{display:none!important}
.holes-head{margin-bottom:58px}

/* The large detailed hole numerals remain deliberately heavier for quick reading. */
.hole-number{font-weight:600!important}
.hole-metrics strong{font-weight:650!important}


/* =========================================================
   V13 — PHONE-FIRST RESPONSIVE PASS
   ========================================================= */
@media (max-width: 760px){
  html{scroll-padding-top:64px}
  body{font-size:15px;overflow-x:hidden}
  .section-shell{width:calc(100% - 32px);max-width:none}

  /* Persistent phone navigation */
  .header-meta{display:none}
  .site-header,.site-header.scrolled{background:rgba(var(--forest-rgb),.965);backdrop-filter:blur(14px);box-shadow:0 6px 22px rgba(0,0,0,.14);border-bottom:1px solid rgba(255,253,248,.10)}
  .header-inner,.site-header.scrolled .header-inner{height:64px}
  .brand{gap:9px}.brand-mark{width:34px;height:34px}.brand-ring{width:32px;height:32px}.brand-copy strong{font-size:17px}.brand-copy small{display:none}
  .logo-flag{right:2px;top:1px}
  .menu-btn{display:block;z-index:3}
  .nav{display:none;position:absolute;top:64px;left:0;right:0;min-height:calc(100vh - 64px);background:var(--forest);padding:36px 22px 40px;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid rgba(255,255,255,.10)}
  .nav.open{display:flex}
  .nav a{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid rgba(255,253,248,.14);font-size:12px;letter-spacing:.18em;opacity:1}
  .nav a:not(.nav-cta)::after{content:'↘';font-size:18px;font-weight:400}
  .nav-cta{margin:26px 0 0;min-width:0;padding:17px 18px;border:0;background:var(--yellow);color:var(--forest)!important}

  /* Hero composition re-laid for a phone rather than scaled down */
  .hero{height:auto;min-height:760px;max-height:none;padding-top:64px;display:flex;align-items:stretch}
  .hero-img{object-position:57% center}
  .hero-shade{background:linear-gradient(180deg,rgba(var(--forest-rgb),.30) 0%,rgba(var(--forest-rgb),.44) 34%,rgba(var(--forest-rgb),.84) 100%),linear-gradient(90deg,rgba(var(--forest-rgb),.35),rgba(var(--forest-rgb),.06))}
  .hero-content{width:100%;padding-top:128px;padding-bottom:52px;display:flex;flex-direction:column;justify-content:flex-end;min-height:696px}
  .hero-name{font-size:clamp(42px,12vw,58px);line-height:.92;letter-spacing:-.045em;max-width:330px}
  .hero-kicker{margin:24px 0 24px;gap:12px}.hero-kicker span{width:28px}.hero-kicker p{font-size:8px;letter-spacing:.22em;white-space:normal;line-height:1.5}
  .hero-display{font-size:clamp(78px,23vw,108px);line-height:.72;letter-spacing:-.055em;max-width:355px}
  .hero-intro{font-size:15px;line-height:1.55;margin:30px 0 0;max-width:335px;color:rgba(255,253,248,.84)}
  .hero-actions,.hero-stats,.hero-down{display:none}

  /* Intro */
  .breathe{padding:82px 0 78px}
  .breathe-grid{display:block}
  .breathe-heading{padding:0;margin-bottom:46px}
  .breathe-heading h2{font-size:clamp(54px,16vw,72px);line-height:.88;max-width:340px}
  .breathe-copy{max-width:none;padding:0}.breathe-copy .accent-line{width:46px;margin-bottom:28px}.breathe-copy>p{font-size:17px;line-height:1.68}
  .breathe-inline-stats,.breathe-rail,.mini-stats{grid-template-columns:repeat(3,1fr)!important;gap:0;margin-top:42px}
  .breathe-inline-stats>div,.breathe-rail>div,.mini-stats>div{padding:18px 10px 16px 0;min-height:auto}
  .breathe-inline-stats strong,.breathe-rail strong,.mini-stats strong{font-family:var(--sans)!important;font-weight:500!important;font-size:24px!important;letter-spacing:-.04em!important}
  .breathe-inline-stats span,.breathe-rail p,.mini-stats span{font-size:7px!important;letter-spacing:.12em!important;line-height:1.4}
  .section-arrow{display:none}

  /* Worth the drive: image then carousel, both full width */
  .worth{padding:78px 0 84px}
  .worth-layout,.worth-grid,.worth-intro{display:block!important}
  .worth-feature,.worth-image{min-height:360px;margin-bottom:22px;border:0!important}
  .worth-feature img,.worth-image img{height:360px;object-fit:cover;object-position:center 52%;border-radius:0!important}
  .worth-feature-copy{padding:28px 24px!important}
  .worth-feature-copy h2,.worth-title h2{font-size:58px;line-height:.86;max-width:290px}
  .worth-caption{left:24px!important;bottom:18px!important;font-size:8px!important}
  .worth-carousel-panel,.worth-carousel{max-width:none;width:100%}
  .worth-viewport{border-color:rgba(255,253,248,.18)}
  .worth-slide{min-height:330px;padding:34px 26px 36px}
  .slide-accent{left:26px;width:54px}.slide-index{margin-bottom:30px}.worth-slide h3{font-size:42px;line-height:.92}.worth-slide p{font-size:15px;line-height:1.65;margin-top:22px}
  .worth-controls{margin-top:20px;display:grid;grid-template-columns:1fr auto;gap:18px}.worth-progress{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:100%}

  /* 18-hole course guide */
  .holes{padding:78px 0 84px}
  .holes-head{display:block;margin-bottom:42px}.holes-head h2{font-size:60px;line-height:.86;max-width:320px}.holes-head>p{margin-top:30px;font-size:16px;line-height:1.62;max-width:none}
  .hole-stage{display:block;border:0!important;background:var(--forest)}
  .hole-copy{padding:34px 24px 32px}
  .hole-kicker{font-size:9px}
  .hole-number{font-family:var(--sans)!important;font-weight:500!important;font-variant-numeric:tabular-nums;font-size:116px!important;line-height:.86!important;letter-spacing:-.07em!important;margin:20px 0 24px!important;color:var(--ivory)!important}
  .hole-metrics{gap:12px;margin-bottom:24px}.hole-metrics>div{padding-top:12px}.hole-metrics span{font-size:8px}.hole-metrics strong{font-family:var(--sans)!important;font-weight:500!important;font-variant-numeric:tabular-nums;font-size:32px!important;letter-spacing:-.04em!important}
  .hole-copy>p{font-size:14px;line-height:1.65}
  .hole-visual{min-height:245px;border-left:0!important;border-top:1px solid rgba(255,253,248,.18)}.hole-visual-overlay span{display:none}
  .hole-picker-wrap{padding-top:16px;overflow:hidden}.hole-picker{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;border:0;border-radius:0;padding-bottom:3px}.hole-picker::-webkit-scrollbar{height:3px}.hole-picker::-webkit-scrollbar-thumb{background:var(--yellow)}.hole-picker button{flex:0 0 58px;scroll-snap-align:start;height:52px;font-family:var(--sans)!important;font-weight:500!important;font-size:14px!important}
  .nine-summary{display:block;margin-top:36px}.nine-summary>div{padding:22px 20px}.nine-summary p{font-size:9px}.nine-summary strong{font-family:var(--sans)!important;font-weight:500!important;font-size:20px!important;line-height:1.35!important;letter-spacing:-.03em!important}

  /* Six hole onwards: retain styling, reflow safely */
  .starter,.visit,.rates,.scorecard,.location-panel{padding:78px 0 84px}
  .starter-grid,.visit-grid,.rates-head,.location-grid{display:block}
  .starter-photo{margin-bottom:42px}.starter-photo img{height:300px}.starter-copy h2,.visit-copy h2,.rates-head h2,.location-head h2,.scorecard-head h2{font-size:58px;line-height:.88}
  .starter-copy>p:not(.eyebrow),.visit-copy>p:not(.eyebrow),.rates-head>p{font-size:16px;line-height:1.65}
  .visit-copy{margin-bottom:48px}.amenities strong{font-size:25px}
  .rates-head{margin-bottom:36px}.rates-head>p{margin-top:26px}.rate-grid{display:block;border-left:1px solid rgba(255,253,248,.20)}.rate-grid article{padding:28px 24px}.rate-grid h3{font-size:38px}.rate-grid p{min-height:0}
  .scorecard-head{display:block}.scorecard-total{margin-top:28px}.score-table-wrap{margin-right:-16px;border-right:0}.scorecard table{min-width:560px}.scorecard th,.scorecard td{padding:12px 14px}
  .location-head{margin-bottom:48px}.location-info{display:block}.location-info>div{margin-bottom:34px}.location-info p,.location-info a{font-size:17px}

  /* Final CTA */
  .final-wrap{padding-top:64px}.final-cta{height:540px}.final-cta>img{object-position:58% center}.final-shade{background:linear-gradient(180deg,rgba(var(--forest-rgb),.20),rgba(var(--forest-rgb),.82))}.final-content{justify-content:flex-end;padding-bottom:54px}.final-content h2{font-size:56px;line-height:.88}.final-book{margin-top:38px}.final-book .button{width:100%;max-width:280px}

  footer{padding-top:36px}.footer-inner{display:block}.footer-inner>div:last-child{align-items:flex-start;margin-top:20px}
}

@media (max-width: 390px){
  .section-shell{width:calc(100% - 26px)}
  .hero-name{font-size:40px}.hero-display{font-size:76px}.hero-intro{font-size:14px}
  .breathe-heading h2,.holes-head h2,.starter-copy h2,.visit-copy h2,.rates-head h2,.location-head h2,.scorecard-head h2,.final-content h2{font-size:51px}
  .worth-feature-copy h2,.worth-title h2{font-size:51px}.worth-slide h3{font-size:38px}
  .hole-number{font-size:102px!important}.hole-metrics strong{font-size:28px!important}
  .breathe-inline-stats strong,.breathe-rail strong,.mini-stats strong{font-size:21px!important}
}

/* =========================================================
   V14 — hero type calibration + one numeric typeface
   ========================================================= */

/* The obsolete current-hole rail is removed from the layout entirely. */
.hole-overview,
.overview-seq,
.overview-hole,
.overview-metrics,
.overview-next{display:none!important}

/* Every display number now uses the exact same DM Sans family as
   "EST. 1986" beside the logo. Tabular figures keep changing hole data stable. */
.hero-stats strong,
.mini-stats strong,
.breathe-inline-stats strong,
.breathe-rail strong,
.slide-index,
.worth-counter,
.hole-number,
.hole-metrics strong,
.hole-visual-overlay span,
.hole-picker button,
.nine-summary strong,
.amenities span,
.rate-grid article>span,
.scorecard-total strong,
.scorecard tbody td,
.scorecard tfoot th{
  font-family:var(--sans)!important;
  font-variant-numeric:tabular-nums lining-nums!important;
  font-feature-settings:"tnum" 1,"lnum" 1;
}
.breathe-inline-stats strong,
.breathe-rail strong,
.mini-stats strong{font-weight:500!important;letter-spacing:-.025em!important}
.hole-number{font-weight:600!important;letter-spacing:-.055em!important}
.hole-metrics strong{font-weight:600!important;letter-spacing:-.025em!important}
.hole-picker button{font-weight:500!important;letter-spacing:-.01em!important}
.nine-summary strong{font-weight:500!important;letter-spacing:-.025em!important}
.amenities span,.rate-grid article>span{font-weight:600!important;letter-spacing:.02em!important}
.scorecard-total strong,.scorecard tbody td,.scorecard tfoot th{font-weight:500!important;letter-spacing:-.015em!important}

/* Hero: heavier strokes, narrower glyph proportions and calmer spacing.
   Instead of crushing the tracking, the letterforms are condensed slightly
   while retaining natural space between characters. */
@media(min-width:901px){
  .hero-content.section-shell{
    top:31.6%;
    left:11.6%;
    width:min(750px,45.5vw);
  }
  .hero-name{
    display:inline-block;
    font-family:var(--serif);
    font-weight:500;
    font-size:clamp(58px,4.0vw,74px);
    line-height:.96;
    letter-spacing:-.018em;
    transform:scaleX(.92);
    transform-origin:left center;
  }
  .hero-kicker{
    margin:31px 0 29px;
    gap:17px;
  }
  .hero-kicker p{letter-spacing:.275em}
  .hero-display{
    display:inline-block;
    font-family:var(--serif);
    font-weight:500;
    font-size:clamp(124px,9.3vw,172px);
    line-height:.745;
    letter-spacing:-.018em;
    transform:scaleX(.88);
    transform-origin:left center;
  }
  .hero-display em{
    font-weight:500;
    letter-spacing:-.01em;
  }
  .hero-intro{
    margin-top:50px;
    max-width:700px;
    line-height:1.58;
  }
}

@media(min-width:561px) and (max-width:900px){
  .hero-name{
    font-weight:500;
    letter-spacing:-.015em;
    transform:scaleX(.94);
    transform-origin:left center;
  }
  .hero-display{
    font-weight:500;
    letter-spacing:-.015em;
    transform:scaleX(.91);
    transform-origin:left center;
  }
  .hero-kicker{margin:27px 0 26px}
}

@media(max-width:560px){
  .hero-name{
    font-weight:500;
    letter-spacing:-.012em;
    transform:scaleX(.96);
    transform-origin:left center;
  }
  .hero-display{
    font-weight:500;
    letter-spacing:-.012em;
    transform:scaleX(.93);
    transform-origin:left center;
  }
}

/* V15 — restore the Front 9 / Back 9 / Total figures beneath the hole
   selector to the editorial serif treatment used before V14. */
.nine-summary strong{
  font-family:var(--serif)!important;
  font-weight:500!important;
  font-variant-numeric:normal!important;
  font-feature-settings:normal!important;
  letter-spacing:-.045em!important;
  line-height:1.05!important;
}
@media(max-width:640px){
  .nine-summary strong{
    font-family:var(--serif)!important;
    font-weight:500!important;
    font-size:20px!important;
    line-height:1.20!important;
    letter-spacing:-.035em!important;
  }
}

/* =========================================================
   V16 — compact scorecard only
   ========================================================= */
.scorecard{
  padding:78px 0 88px!important;
}
.scorecard-head-compact{
  margin-bottom:30px!important;
  align-items:end!important;
}
.scorecard-head-compact h2{
  font-size:clamp(44px,4.5vw,68px)!important;
  line-height:.92!important;
}
.compact-scorecards{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.compact-nine{
  min-width:0;
  border:1px solid var(--line);
  background:rgba(255,253,248,.22);
}
.compact-nine-head{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:18px;
  padding:14px 16px 13px;
  border-bottom:1px solid var(--line);
}
.compact-nine-head span{
  color:var(--yellow-deep);
  font:600 9px/1 var(--sans);
  letter-spacing:.16em;
  text-transform:uppercase;
  white-space:nowrap;
}
.compact-nine-head strong{
  color:var(--forest);
  font:500 14px/1.1 var(--serif);
  letter-spacing:-.02em;
  white-space:nowrap;
}
.compact-table-wrap{
  overflow-x:auto;
  scrollbar-width:thin;
}
.compact-score-table{
  width:100%!important;
  min-width:500px!important;
  border-collapse:collapse;
  table-layout:fixed;
}
.compact-score-table th,
.compact-score-table td{
  padding:9px 7px!important;
  text-align:center!important;
  border-right:1px solid var(--line)!important;
  border-bottom:1px solid var(--line)!important;
  font-family:var(--sans)!important;
  font-variant-numeric:tabular-nums lining-nums!important;
  font-feature-settings:"tnum" 1,"lnum" 1;
  font-size:11px!important;
  line-height:1!important;
  color:var(--forest)!important;
}
.compact-score-table tr:last-child th,
.compact-score-table tr:last-child td{
  border-bottom:0!important;
}
.compact-score-table th:last-child,
.compact-score-table td:last-child{
  border-right:0!important;
}
.compact-score-table thead th{
  background:rgba(23,59,46,.045)!important;
  color:var(--muted)!important;
  font-weight:600!important;
  letter-spacing:.02em!important;
  text-transform:none!important;
}
.compact-score-table tbody th{
  width:48px;
  color:var(--muted)!important;
  font-weight:600!important;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:8px!important;
  background:rgba(23,59,46,.025);
}
.compact-score-table tbody td{
  font-weight:500!important;
}
.compact-score-table tbody tr:hover{
  background:rgba(255,253,248,.32)!important;
}

@media(max-width:900px){
  .scorecard{padding:72px 0 78px!important}
  .compact-scorecards{grid-template-columns:1fr;gap:14px}
  .compact-nine-head{padding:13px 14px}
}

@media(max-width:640px){
  .scorecard-head-compact{margin-bottom:24px!important}
  .scorecard-head-compact h2{font-size:48px!important}
  .scorecard-total{margin-top:22px!important}
  .compact-scorecards{gap:12px}
  .compact-nine-head{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
  }
  .compact-score-table{
    min-width:470px!important;
  }
  .compact-score-table th,
  .compact-score-table td{
    padding:8px 6px!important;
    font-size:10px!important;
  }
}

/* =========================================================
   V17 — second-section figures back to the original
   editorial serif treatment. Everything else stays V16.
   ========================================================= */
.breathe-inline-stats strong{
  font-family:var(--serif)!important;
  font-weight:400!important;
  font-variant-numeric:normal!important;
  font-feature-settings:normal!important;
  letter-spacing:-.045em!important;
  line-height:.95!important;
}

@media(max-width:640px){
  .breathe-inline-stats strong{
    font-family:var(--serif)!important;
    font-weight:400!important;
    letter-spacing:-.035em!important;
  }
}


/* =========================================================
   V19 — hero course crop + dual navigation boxes
   ========================================================= */
.hero-img{
  /* Pull the crop down so the course occupies more of the hero and the sky less. */
  object-position:center 68%!important;
}
.hero-base-actions{
  position:absolute;
  z-index:4;
  left:11.6%;
  bottom:34px;
  width:auto;
  margin:0;
  display:flex;
  align-items:stretch;
  gap:12px;
}
.hero-box{
  width:225px;
  min-height:66px;
  padding:0 21px 0 23px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  font:600 11px/1.15 var(--sans);
  letter-spacing:.13em;
  text-transform:uppercase;
  border:1px solid transparent;
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
}
.hero-box b{
  font:500 22px/1 var(--sans);
  transition:transform .22s ease;
}
.hero-box-light{
  background:var(--ivory);
  color:var(--forest);
  border-color:rgba(255,253,248,.9);
}
.hero-box-gold{
  background:var(--yellow);
  color:var(--forest);
  border-color:var(--yellow);
}
.hero-box:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 34px rgba(5,18,13,.22);
}
.hero-box:hover b{transform:translateY(4px)}

@media(min-width:901px){
  /* Leave deliberate room at the bottom for the new hero controls. */
  .hero-intro{margin-bottom:104px!important}
}
@media(max-width:900px){
  .hero-img{object-position:57% 68%!important}
  .hero-base-actions{
    left:24px;
    right:24px;
    bottom:22px;
    width:auto;
    gap:10px;
  }
  .hero-box{flex:1;width:auto;min-width:0;min-height:58px;padding-inline:17px;font-size:10px}
}
@media(max-width:560px){
  .hero-img{object-position:60% 70%!important}
  .hero-content{padding-bottom:132px!important}
  .hero-base-actions{
    left:14px;
    right:14px;
    bottom:14px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .hero-box{min-height:58px;padding:0 13px;font-size:9px;letter-spacing:.10em;gap:10px}
  .hero-box b{font-size:18px}
}

/* Final V19 hero action placement: keep the editorial copy unobstructed by
   anchoring the two navigation boxes to the open lower-right of the image. */
@media(min-width:901px){
  .hero-base-actions{
    left:auto!important;
    right:5.4%!important;
    bottom:34px!important;
  }
  .hero-intro{margin-bottom:0!important}
}

/* =========================================================
   V20 — simplified hero controls and no floating section arrows
   ========================================================= */

/* Remove any legacy right-edge movement controls even if a cached fragment
   ever remains in the markup. */
.section-arrow{
  display:none!important;
}

/* Both hero actions now sit together at the bottom-left. */
.hero-base-actions{
  left:11.6%!important;
  right:auto!important;
  bottom:34px!important;
  gap:12px!important;
}

/* The first action is intentionally transparent rather than an ivory block. */
.hero-box-light{
  background:transparent!important;
  color:var(--ivory)!important;
  border:1px solid rgba(255,253,248,.72)!important;
  backdrop-filter:blur(2px);
}

/* Keep the second action as the established warm yellow/orange accent. */
.hero-box-gold{
  background:var(--yellow)!important;
  color:var(--forest)!important;
  border-color:var(--yellow)!important;
}

/* With arrows removed, centre the wording cleanly and tighten the boxes. */
.hero-box{
  width:auto!important;
  min-width:190px;
  min-height:62px;
  padding:0 24px!important;
  justify-content:center!important;
  gap:0!important;
  text-align:center;
}
.hero-box b{
  display:none!important;
}

.hero-box-light:hover{
  background:rgba(255,253,248,.10)!important;
  box-shadow:0 12px 28px rgba(5,18,13,.16);
}
.hero-box-gold:hover{
  box-shadow:0 12px 28px rgba(5,18,13,.18);
}

@media(max-width:900px){
  .hero-base-actions{
    left:24px!important;
    right:auto!important;
    bottom:22px!important;
    width:auto!important;
  }
  .hero-box{
    flex:0 0 auto!important;
    min-width:170px!important;
  }
}
@media(max-width:560px){
  .hero-base-actions{
    left:14px!important;
    right:14px!important;
    bottom:14px!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:auto!important;
  }
  .hero-box{
    min-width:0!important;
    min-height:56px!important;
    padding:0 12px!important;
  }
}

/* =========================================================
   V21 — refined hero controls
   ========================================================= */

.hero-base-actions{
  display:flex!important;
  align-items:stretch!important;
  gap:10px!important;
}

/* Cleaner, deliberately understated UI typography that works with the
   editorial headings without trying to compete with them. */
.hero-box{
  width:auto!important;
  min-width:205px!important;
  min-height:60px!important;
  padding:0 17px 0 20px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  text-align:left!important;
  font-family:var(--sans)!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  border-radius:0!important;
  transition:
    background .22s ease,
    color .22s ease,
    transform .22s ease,
    box-shadow .22s ease!important;
}

.hero-box span{
  display:block;
  white-space:nowrap;
}

.hero-box b{
  display:block!important;
  flex:0 0 auto;
  margin-left:auto;
  font-family:var(--sans)!important;
  font-size:19px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:0!important;
  transform:translateY(-1px);
  transition:transform .22s ease;
}

/* Primary action first, on the left. */
.hero-box-gold{
  order:1;
  background:var(--yellow)!important;
  color:var(--forest)!important;
  border:0!important;
}

/* Secondary action has no box outline at all. */
.hero-box-light{
  order:2;
  background:transparent!important;
  color:var(--ivory)!important;
  border:0!important;
  box-shadow:none!important;
  padding-left:18px!important;
  padding-right:12px!important;
}

.hero-box-light:hover{
  background:rgba(255,253,248,.07)!important;
  box-shadow:none!important;
}

.hero-box-gold:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(5,18,13,.18)!important;
}

/* Right-facing arrow for planning, down-facing arrow for course exploration. */
.hero-box-gold:hover b{
  transform:translate(4px,-1px);
}
.hero-box-light:hover b{
  transform:translate(0,4px);
}

@media(max-width:900px){
  .hero-base-actions{
    gap:8px!important;
  }
  .hero-box{
    min-width:185px!important;
    min-height:56px!important;
    padding-left:17px!important;
    padding-right:14px!important;
    font-size:10px!important;
    letter-spacing:.12em!important;
    gap:18px!important;
  }
}

@media(max-width:560px){
  .hero-base-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }
  .hero-box{
    min-width:0!important;
    width:100%!important;
    min-height:54px!important;
    padding:0 11px 0 13px!important;
    gap:8px!important;
    font-size:9px!important;
    letter-spacing:.085em!important;
  }
  .hero-box span{
    white-space:normal!important;
    line-height:1.18!important;
  }
  .hero-box b{
    font-size:16px!important;
  }
}

/* =========================================================
   V22 — smaller hero buttons, taller/cleaner label typography
   ========================================================= */

.hero-base-actions{
  gap:8px!important;
}

.hero-box{
  min-width:174px!important;
  min-height:49px!important;
  padding:0 13px 0 15px!important;
  gap:16px!important;

  /* Taller, more natural UI text with much less tracking. */
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.05!important;
  letter-spacing:.055em!important;
}

.hero-box b{
  font-size:17px!important;
}

.hero-box-light{
  padding-left:14px!important;
  padding-right:10px!important;
}

@media(max-width:900px){
  .hero-box{
    min-width:162px!important;
    min-height:47px!important;
    padding-left:13px!important;
    padding-right:11px!important;
    font-size:11px!important;
    letter-spacing:.045em!important;
    gap:14px!important;
  }
}

@media(max-width:560px){
  .hero-base-actions{
    gap:6px!important;
  }
  .hero-box{
    min-height:48px!important;
    padding:0 10px 0 11px!important;
    font-size:10px!important;
    line-height:1.12!important;
    letter-spacing:.035em!important;
    gap:7px!important;
  }
  .hero-box b{
    font-size:15px!important;
  }
}

/* Production style block 2 */
/* =========================================================
   V24 — selectable Yellow / White tee scorecard
   ========================================================= */
.scorecard-side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:18px;
}
.scorecard-switch{
  display:flex;
  align-items:center;
  gap:6px;
  padding:4px;
  background:rgba(23,59,46,.055);
  border:1px solid var(--line);
}
.score-tee{
  appearance:none;
  border:0;
  background:transparent;
  color:var(--forest);
  min-height:38px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  font-family:var(--sans);
  font-size:10px;
  font-weight:600;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:background .2s ease,color .2s ease;
}
.score-tee-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  border:1px solid currentColor;
  background:transparent;
}
.score-tee.active{
  background:var(--forest);
  color:var(--ivory);
}
.score-tee.active .score-tee-dot{
  background:var(--yellow);
  border-color:var(--yellow);
}
#scorecardTables{
  transition:opacity .16s ease,transform .16s ease;
}
#scorecardTables.switching{
  opacity:.22;
  transform:translateY(3px);
}
@media(max-width:900px){
  .scorecard-side{
    align-items:flex-start;
    margin-top:24px;
  }
}
@media(max-width:560px){
  .scorecard-switch{
    width:100%;
  }
  .score-tee{
    flex:1 1 0;
    justify-content:center;
    padding-inline:9px;
    font-size:9px;
    letter-spacing:.055em;
  }
}

/* Production style block 3 */
/* =========================================================
   V25 — white tee defaults, tee switching and no Twilight
   ========================================================= */

/* Two round choices plus the separate membership information card. */
.rate-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

/* Hole-guide tee selector */
.holes-head-side{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:24px;
}
.holes-head-side>p{
  color:var(--muted);
  font-size:17px;
}
.hole-tee-switch{
  display:flex;
  gap:6px;
  padding:4px;
  border:1px solid var(--line);
  background:rgba(23,56,44,.045);
}
.hole-tee{
  appearance:none;
  border:0;
  background:transparent;
  color:var(--forest);
  min-height:38px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  font-family:var(--sans);
  font-size:10px;
  font-weight:600;
  letter-spacing:.07em;
  text-transform:uppercase;
  transition:background .2s ease,color .2s ease;
}
.hole-tee-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  border:1px solid currentColor;
  background:transparent;
}
.hole-tee.active{
  background:var(--forest);
  color:var(--ivory);
}
.hole-tee[data-hole-tee="white"].active .hole-tee-dot{
  background:#fff;
  border-color:#fff;
}
.hole-tee[data-hole-tee="yellow"].active .hole-tee-dot{
  background:var(--yellow);
  border-color:var(--yellow);
}

/* Scorecard selector: dot mirrors the tee colour. */
.score-tee.active .score-tee-dot{
  background:transparent;
  border-color:currentColor;
}
.score-tee[data-score-tee="white"].active .score-tee-dot{
  background:#fff!important;
  border-color:#fff!important;
}
.score-tee[data-score-tee="yellow"].active .score-tee-dot{
  background:var(--yellow)!important;
  border-color:var(--yellow)!important;
}

/* The final word in the scorecard heading follows the selected tee colour. */
#scorecardWord[data-tee="yellow"]{
  color:var(--yellow)!important;
  -webkit-text-stroke:0 transparent;
  text-shadow:none;
}
#scorecardWord[data-tee="white"]{
  color:#fff!important;
  /* White remains legible against ivory while its fill is genuinely white. */
  -webkit-text-stroke:.7px rgba(var(--forest-rgb),.82);
  text-shadow:0 1px 0 rgba(var(--forest-rgb),.30);
}

/* Keep the selector compact and aligned. */
@media(max-width:900px){
  .rate-grid{grid-template-columns:1fr!important}
  .holes-head-side{gap:18px}
}
@media(max-width:560px){
  .hole-tee-switch{width:100%}
  .hole-tee{
    flex:1 1 0;
    justify-content:center;
    padding-inline:9px;
    font-size:9px;
    letter-spacing:.05em;
  }
}

/* Production style block 4 */
/* =========================================================
   V26 — tee-aware colour, tighter hero, calmer summaries,
   location spacing and interaction polish
   ========================================================= */

/* Hero typography: visibly closer-set and slightly fuller without becoming heavy. */
@media(min-width:901px){
  .hero-name{
    font-weight:600!important;
    letter-spacing:-.052em!important;
    transform:scaleX(.90)!important;
  }
  .hero-display{
    font-weight:600!important;
    letter-spacing:-.050em!important;
    transform:scaleX(.87)!important;
  }
  .hero-display em{
    font-weight:600!important;
    letter-spacing:-.042em!important;
  }
}
@media(min-width:561px) and (max-width:900px){
  .hero-name{font-weight:600!important;letter-spacing:-.045em!important;transform:scaleX(.92)!important}
  .hero-display{font-weight:600!important;letter-spacing:-.046em!important;transform:scaleX(.89)!important}
}
@media(max-width:560px){
  .hero-name{font-weight:600!important;letter-spacing:-.040em!important;transform:scaleX(.94)!important}
  .hero-display{font-weight:600!important;letter-spacing:-.043em!important;transform:scaleX(.91)!important}
}

/* Hole-guide heading now owns the opening of the section. */
.holes{
  padding-top:104px!important;
}
.holes-head{
  align-items:start!important;
  margin-bottom:42px!important;
}
.holes-title-block h2{
  font-size:clamp(72px,7.4vw,112px)!important;
  line-height:.84!important;
  letter-spacing:-.052em!important;
}
.holes-head-side{
  padding-top:15px;
}

/* Par / Yards / S.I. follow the selected tee colour. */
#holes[data-hole-tee-active="yellow"] .hole-metrics span,
#holes[data-hole-tee-active="yellow"] .hole-metrics strong{
  color:var(--yellow)!important;
}
#holes[data-hole-tee-active="white"] .hole-metrics span{
  color:rgba(255,253,248,.62)!important;
}
#holes[data-hole-tee-active="white"] .hole-metrics strong{
  color:var(--white)!important;
}
.hole-metrics span,
.hole-metrics strong{
  transition:color .20s ease;
}

/* Front / back / total summary is calmer and tee-aware. */
.nine-summary{
  margin-top:46px!important;
  background:var(--forest)!important;
  border-color:rgba(255,253,248,.16)!important;
}
.nine-summary>div{
  padding:23px 27px 26px!important;
  border-color:rgba(255,253,248,.16)!important;
}
.nine-summary p{
  margin-bottom:12px!important;
  font-size:10px!important;
  font-weight:500!important;
  letter-spacing:.125em!important;
  transition:color .20s ease;
}
.nine-summary strong{
  font-family:var(--serif)!important;
  font-size:25px!important;
  font-weight:300!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
  color:rgba(255,253,248,.82)!important;
}
#holes[data-hole-tee-active="white"] .nine-summary p{
  color:#fff!important;
}
#holes[data-hole-tee-active="yellow"] .nine-summary p{
  color:var(--yellow)!important;
}

/* Compact scorecard labels also follow the selected tee colour. */
.compact-nine-head{
  background:var(--forest)!important;
  border-bottom-color:rgba(255,253,248,.16)!important;
}
.compact-nine-head strong{
  color:rgba(255,253,248,.78)!important;
  font-weight:300!important;
}
#scorecard[data-scorecard-tee="white"] .compact-nine-head span{
  color:#fff!important;
}
#scorecard[data-scorecard-tee="yellow"] .compact-nine-head span{
  color:var(--yellow)!important;
}

/* Find your way here: more deliberate breathing room and alignment. */
.location-panel{
  padding-top:142px!important;
  padding-bottom:148px!important;
}
.location-grid{
  grid-template-columns:.74fr 1.26fr!important;
  gap:11.5vw!important;
  align-items:start!important;
}
.location-head{
  padding-top:2px;
}
.location-head .eyebrow{
  margin-bottom:26px!important;
}
.location-head h2{
  font-size:clamp(66px,6.3vw,94px)!important;
  line-height:.86!important;
  letter-spacing:-.048em!important;
}
.location-info{
  gap:62px 88px!important;
  padding-top:18px!important;
}
.location-info h3{
  margin-bottom:18px!important;
}
.location-info p,.location-info a{
  line-height:1.72!important;
}

@media(max-width:900px){
  .holes{padding-top:84px!important}
  .holes-title-block h2{font-size:72px!important}
  .holes-head-side{padding-top:0}
  .location-panel{padding-top:100px!important;padding-bottom:108px!important}
  .location-grid{grid-template-columns:1fr!important;gap:58px!important}
  .location-info{gap:44px 54px!important;padding-top:0!important}
}
@media(max-width:560px){
  .holes-title-block h2{font-size:58px!important;line-height:.86!important}
  .nine-summary strong{font-size:21px!important}
  .location-head h2{font-size:58px!important}
  .location-info{grid-template-columns:1fr!important;gap:36px!important}
}

/* Production style block 5 */
/* =========================================================
   V27 — hero title refinement only
   Keep the current spacing and proportions; restore the lighter,
   more elegant weight from the supplied reference image.
   ========================================================= */
@media(min-width:901px){
  .hero-name{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-weight:300!important;
    letter-spacing:-.052em!important;
    transform:scaleX(.90)!important;
  }
  .hero-display{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-weight:300!important;
    letter-spacing:-.050em!important;
    transform:scaleX(.87)!important;
  }
  .hero-display em{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-weight:500!important;
    letter-spacing:-.042em!important;
  }
}
@media(min-width:561px) and (max-width:900px){
  .hero-name{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-weight:300!important;
    letter-spacing:-.045em!important;
    transform:scaleX(.92)!important;
  }
  .hero-display{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-weight:300!important;
    letter-spacing:-.046em!important;
    transform:scaleX(.89)!important;
  }
  .hero-display em{font-weight:500!important}
}
@media(max-width:560px){
  .hero-name{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-weight:300!important;
    letter-spacing:-.040em!important;
    transform:scaleX(.94)!important;
  }
  .hero-display{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-weight:300!important;
    letter-spacing:-.043em!important;
    transform:scaleX(.91)!important;
  }
  .hero-display em{font-weight:500!important}
}

/* Production style block 6 */
/* =========================================================
   V29 — hole-colour behaviour + proper return-to-top whoosh
   ========================================================= */

/* Par, Yards and S.I. remain white for BOTH tee selections. */
#holes[data-hole-tee-active="yellow"] .hole-metrics span,
#holes[data-hole-tee-active="yellow"] .hole-metrics strong,
#holes[data-hole-tee-active="white"] .hole-metrics span,
#holes[data-hole-tee-active="white"] .hole-metrics strong{
  color:var(--white)!important;
}

/* The large hole number becomes the tee-colour cue instead. */
#holes[data-hole-tee-active="white"] .hole-number{
  color:var(--ivory)!important;
}
#holes[data-hole-tee-active="yellow"] .hole-number{
  color:var(--yellow)!important;
}
#holes[data-hole-tee-active="white"] .hole-visual-overlay span{
  color:rgba(255,253,248,.12)!important;
}
#holes[data-hole-tee-active="yellow"] .hole-visual-overlay span{
  color:rgba(227,174,34,.20)!important;
}
.hole-number,.hole-visual-overlay span{
  transition:color .22s ease!important;
}

/* Subtle visual streaking while the page accelerates upward. */
#siteRushOverlay{
  position:fixed;
  inset:0;
  z-index:9999;
  pointer-events:none;
  opacity:0;
  background:
    repeating-linear-gradient(
      180deg,
      rgba(255,255,255,0) 0,
      rgba(255,255,255,0) 12px,
      rgba(255,253,248,.055) 13px,
      rgba(255,253,248,0) 18px
    );
  mix-blend-mode:soft-light;
  transition:opacity .12s ease;
}
body.is-rushing-top #siteRushOverlay{
  opacity:1;
  animation:rushStreaks .18s linear infinite;
}
body.is-rushing-top main,
body.is-rushing-top footer{
  filter:blur(.65px);
}
@keyframes rushStreaks{
  from{transform:translateY(0)}
  to{transform:translateY(-36px)}
}
@media(prefers-reduced-motion:reduce){
  body.is-rushing-top #siteRushOverlay{display:none}
  body.is-rushing-top main,body.is-rushing-top footer{filter:none}
}

/* Production style block 7 */
/* =========================================================
   V30 — modestly fuller hero type + matched Worth squares
   ========================================================= */

/* Hero: keep V29's tight spacing and condensed proportions,
   but bring the strokes up one restrained step from Light to Regular. */
@media(min-width:901px){
  .hero-name{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-weight:400!important;
    letter-spacing:-.052em!important;
    transform:scaleX(.90)!important;
  }
  .hero-display{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-weight:400!important;
    letter-spacing:-.050em!important;
    transform:scaleX(.87)!important;
  }
  .hero-display em{
    font-weight:500!important;
  }
}
@media(min-width:561px) and (max-width:900px){
  .hero-name{font-weight:400!important}
  .hero-display{font-weight:400!important}
}
@media(max-width:560px){
  .hero-name{font-weight:400!important}
  .hero-display{font-weight:400!important}
}

/* Worth the Drive: two equal, smaller squares that sit comfortably
   within a normal desktop viewport as one complete composition. */
@media(min-width:981px){
  .worth{
    padding:82px 0 88px!important;
  }
  .worth .section-shell.worth-layout{
    width:min(1080px,calc(100% - 84px))!important;
    max-width:1080px!important;
    grid-template-columns:1fr 1fr!important;
    gap:28px!important;
    align-items:stretch!important;
  }
  .worth-feature,
  .worth-carousel-panel{
    width:100%!important;
    aspect-ratio:1 / 1!important;
    min-height:0!important;
    height:auto!important;
  }
  .worth-feature>img{
    height:100%!important;
    min-height:0!important;
  }
  .worth-feature-copy{
    left:36px!important;
    right:30px!important;
    bottom:38px!important;
  }
  .worth-feature-copy .eyebrow{
    margin-bottom:14px!important;
  }
  .worth-feature-copy h2{
    font-size:clamp(58px,4.7vw,76px)!important;
    line-height:.84!important;
    max-width:470px!important;
  }
  .worth-caption{
    right:16px!important;
    bottom:13px!important;
    font-size:8px!important;
  }

  .worth-carousel-panel{
    display:flex!important;
  }
  .worth-carousel{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .worth-viewport{
    flex:1 1 auto!important;
    min-height:0!important;
  }
  .worth-track{
    height:100%!important;
  }
  .worth-slide{
    min-height:0!important;
    height:100%!important;
    padding:34px 34px 30px!important;
  }
  .slide-accent{
    left:34px!important;
    width:54px!important;
  }
  .slide-index{
    margin-bottom:26px!important;
  }
  .worth-slide h3{
    font-size:clamp(38px,3.2vw,50px)!important;
    line-height:.94!important;
    max-width:410px!important;
  }
  .worth-slide p{
    margin-top:20px!important;
    font-size:15px!important;
    line-height:1.62!important;
    max-width:410px!important;
  }
  .worth-controls{
    margin-top:13px!important;
    gap:15px!important;
  }
  .worth-nav button{
    width:42px!important;
    height:42px!important;
  }
  .worth-progress{
    grid-template-columns:repeat(3,30px)!important;
    gap:8px!important;
  }
}

/* Tablet keeps them balanced without forcing awkward squares. */
@media(min-width:641px) and (max-width:980px){
  .worth{
    padding-top:82px!important;
    padding-bottom:90px!important;
  }
  .worth-layout{
    gap:24px!important;
  }
}

/* =========================================================
   Back-to-top: no perceptible pause. The page moves on the
   very first animation frame, then accelerates into the rush.
   ========================================================= */

/* Production style block 8 */
/* =========================================================
   V31 — more condensed hero lettering + compact hole guide
   ========================================================= */

/* HERO TYPE
   Make the letters markedly narrower, compensate with a slightly fuller
   stroke, keep the overall display large, and tighten both letter and word gaps. */
@media(min-width:901px){
  .hero-name{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-size:clamp(64px,4.65vw,84px)!important;
    font-weight:500!important;
    letter-spacing:-.070em!important;
    word-spacing:-.115em!important;
    transform:scaleX(.83)!important;
    transform-origin:left center!important;
  }
  .hero-display{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-size:clamp(128px,9.1vw,164px)!important;
    font-weight:500!important;
    line-height:.735!important;
    letter-spacing:-.072em!important;
    word-spacing:-.135em!important;
    transform:scaleX(.78)!important;
    transform-origin:left center!important;
  }
  .hero-display em{
    font-weight:500!important;
    letter-spacing:-.064em!important;
    word-spacing:-.12em!important;
  }
}
@media(min-width:561px) and (max-width:900px){
  .hero-name{
    font-weight:500!important;
    letter-spacing:-.062em!important;
    word-spacing:-.10em!important;
    transform:scaleX(.86)!important;
    transform-origin:left center!important;
  }
  .hero-display{
    font-weight:500!important;
    letter-spacing:-.064em!important;
    word-spacing:-.11em!important;
    transform:scaleX(.82)!important;
    transform-origin:left center!important;
  }
}
@media(max-width:560px){
  .hero-name{
    font-weight:500!important;
    letter-spacing:-.050em!important;
    word-spacing:-.07em!important;
    transform:scaleX(.90)!important;
    transform-origin:left center!important;
  }
  .hero-display{
    font-weight:500!important;
    letter-spacing:-.055em!important;
    word-spacing:-.085em!important;
    transform:scaleX(.86)!important;
    transform-origin:left center!important;
  }
}

/* HOLE-BY-HOLE — desktop compact pass.
   Preserve the established composition, but reduce vertical footprint so the
   interactive card + selector + nine summary can be used without excessive scrolling. */
@media(min-width:981px){
  .holes{
    padding-top:76px!important;
    padding-bottom:76px!important;
  }
  .holes-head{
    margin-bottom:30px!important;
    gap:7vw!important;
  }
  .holes-title-block h2{
    font-size:clamp(70px,6.4vw,96px)!important;
    line-height:.82!important;
  }
  .holes-head-side{
    padding-top:4px!important;
    gap:15px!important;
  }
  .holes-head-side>p{
    font-size:15px!important;
    line-height:1.55!important;
    max-width:500px!important;
  }
  .hole-tee-switch{
    min-height:0!important;
  }
  .hole-tee{
    min-height:34px!important;
    padding:0 12px!important;
    font-size:9px!important;
  }

  .hole-stage{
    grid-template-columns:minmax(360px,.82fr) minmax(440px,1.18fr)!important;
    min-height:0!important;
  }
  .hole-copy{
    padding:28px 38px 28px 42px!important;
  }
  .hole-kicker{
    font-size:9px!important;
    letter-spacing:.18em!important;
  }
  .hole-number{
    font-size:clamp(112px,8.5vw,144px)!important;
    line-height:.78!important;
    margin:12px 0 18px -5px!important;
  }
  .hole-metrics{
    gap:20px!important;
    margin-bottom:18px!important;
  }
  .hole-metrics>div{
    padding-top:10px!important;
  }
  .hole-metrics span{
    font-size:8px!important;
    letter-spacing:.14em!important;
  }
  .hole-metrics strong{
    font-size:31px!important;
    line-height:.95!important;
  }
  .hole-copy>p{
    font-size:13px!important;
    line-height:1.48!important;
    max-width:500px!important;
  }
  .hole-visual{
    min-height:398px!important;
    height:398px!important;
  }

  .hole-picker-wrap{
    padding-top:14px!important;
  }
  .hole-picker button{
    height:46px!important;
    font-size:15px!important;
  }

  .nine-summary{
    margin-top:24px!important;
  }
  .nine-summary>div{
    padding:17px 22px 19px!important;
  }
  .nine-summary p{
    margin-bottom:8px!important;
    font-size:9px!important;
  }
  .nine-summary strong{
    font-size:22px!important;
    line-height:1.03!important;
  }
}

/* Slightly compact the same area on tablets without changing the phone-first layout. */
@media(min-width:761px) and (max-width:980px){
  .holes{padding-top:72px!important;padding-bottom:76px!important}
  .holes-head{margin-bottom:30px!important}
  .hole-copy{padding:28px 30px!important}
  .hole-number{font-size:126px!important;margin:15px 0 20px!important}
  .hole-visual{min-height:330px!important}
  .hole-picker-wrap{padding-top:12px!important}
  .nine-summary{margin-top:24px!important}
}

/* Production style block 9 */
/* =========================================================
   V32 — stronger condensation + more viewport-friendly hole guide
   ========================================================= */

/* HERO TITLE
   Much narrower glyphs, tighter tracking and tighter word spacing.
   Font-size is increased slightly so it remains a large, confident headline. */
@media(min-width:901px){
  .hero-name{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-size:clamp(70px,5.05vw,91px)!important;
    font-weight:600!important;
    letter-spacing:-.082em!important;
    word-spacing:-.16em!important;
    transform:scaleX(.72)!important;
    transform-origin:left center!important;
  }

  .hero-display{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-size:clamp(142px,10.1vw,182px)!important;
    font-weight:600!important;
    line-height:.71!important;
    letter-spacing:-.085em!important;
    word-spacing:-.18em!important;
    transform:scaleX(.69)!important;
    transform-origin:left center!important;
  }

  .hero-display em{
    font-weight:600!important;
    letter-spacing:-.076em!important;
    word-spacing:-.16em!important;
  }
}

@media(min-width:561px) and (max-width:900px){
  .hero-name{
    font-weight:600!important;
    letter-spacing:-.072em!important;
    word-spacing:-.13em!important;
    transform:scaleX(.77)!important;
    transform-origin:left center!important;
  }

  .hero-display{
    font-weight:600!important;
    letter-spacing:-.075em!important;
    word-spacing:-.145em!important;
    transform:scaleX(.74)!important;
    transform-origin:left center!important;
  }
}

@media(max-width:560px){
  .hero-name{
    font-weight:600!important;
    letter-spacing:-.060em!important;
    word-spacing:-.095em!important;
    transform:scaleX(.84)!important;
    transform-origin:left center!important;
  }

  .hero-display{
    font-weight:600!important;
    letter-spacing:-.064em!important;
    word-spacing:-.11em!important;
    transform:scaleX(.80)!important;
    transform-origin:left center!important;
  }
}

/* HOLE GUIDE
   Compress the whole working area so the title, interactive card, selector and
   front/back/total information sit much more comfortably inside a desktop viewport. */
@media(min-width:981px){
  .holes{
    padding-top:58px!important;
    padding-bottom:58px!important;
  }

  .holes-head{
    margin-bottom:22px!important;
    grid-template-columns:.92fr .78fr!important;
    gap:6vw!important;
  }

  .holes-title-block h2{
    font-size:clamp(64px,5.65vw,86px)!important;
    line-height:.80!important;
    letter-spacing:-.050em!important;
  }

  .holes-head-side{
    padding-top:2px!important;
    gap:11px!important;
  }

  .holes-head-side>p{
    font-size:14px!important;
    line-height:1.46!important;
    max-width:480px!important;
  }

  .hole-tee-switch{
    padding:3px!important;
  }

  .hole-tee{
    min-height:30px!important;
    padding:0 10px!important;
    font-size:8px!important;
  }

  .hole-stage{
    grid-template-columns:minmax(330px,.78fr) minmax(430px,1.22fr)!important;
    min-height:0!important;
  }

  .hole-copy{
    padding:22px 32px 22px 36px!important;
  }

  .hole-kicker{
    font-size:8px!important;
    letter-spacing:.16em!important;
  }

  .hole-number{
    font-size:clamp(96px,7.2vw,124px)!important;
    line-height:.76!important;
    margin:8px 0 13px -3px!important;
  }

  .hole-metrics{
    gap:15px!important;
    margin-bottom:13px!important;
  }

  .hole-metrics>div{
    padding-top:8px!important;
  }

  .hole-metrics span{
    font-size:7px!important;
    letter-spacing:.12em!important;
  }

  .hole-metrics strong{
    font-size:27px!important;
    line-height:.92!important;
  }

  .hole-copy>p{
    font-size:12px!important;
    line-height:1.40!important;
    max-width:470px!important;
  }

  .hole-visual{
    min-height:330px!important;
    height:330px!important;
  }

  .hole-visual-overlay span{
    font-size:132px!important;
    right:16px!important;
    bottom:0!important;
  }

  .hole-picker-wrap{
    padding-top:9px!important;
  }

  .hole-picker button{
    height:39px!important;
    font-size:13px!important;
  }

  .nine-summary{
    margin-top:16px!important;
  }

  .nine-summary>div{
    padding:13px 18px 14px!important;
  }

  .nine-summary p{
    margin-bottom:5px!important;
    font-size:8px!important;
    letter-spacing:.10em!important;
  }

  .nine-summary strong{
    font-size:19px!important;
    line-height:1!important;
  }
}

@media(min-width:761px) and (max-width:980px){
  .holes{
    padding-top:58px!important;
    padding-bottom:62px!important;
  }

  .holes-head{
    margin-bottom:22px!important;
  }

  .holes-title-block h2{
    font-size:66px!important;
  }

  .hole-copy{
    padding:22px 26px!important;
  }

  .hole-number{
    font-size:108px!important;
    margin:10px 0 14px!important;
  }

  .hole-metrics{
    margin-bottom:14px!important;
  }

  .hole-visual{
    min-height:292px!important;
  }

  .hole-picker-wrap{
    padding-top:8px!important;
  }

  .hole-picker button{
    height:40px!important;
  }

  .nine-summary{
    margin-top:15px!important;
  }
}

/* Production style block 10 */
/* =========================================================
   V32 — slightly larger, lower Front 9 / Back 9 / Total strip
   ========================================================= */
@media(min-width:981px){
  .nine-summary{
    margin-top:38px!important;
  }
  .nine-summary>div{
    padding:22px 27px 24px!important;
  }
  .nine-summary p{
    margin-bottom:11px!important;
    font-size:11px!important;
    line-height:1.1!important;
    letter-spacing:.12em!important;
  }
  .nine-summary strong{
    font-size:27px!important;
    line-height:1.07!important;
  }
}

@media(min-width:761px) and (max-width:980px){
  .nine-summary{
    margin-top:34px!important;
  }
  .nine-summary>div{
    padding:21px 25px 23px!important;
  }
  .nine-summary p{
    font-size:10px!important;
    margin-bottom:10px!important;
  }
  .nine-summary strong{
    font-size:26px!important;
    line-height:1.08!important;
  }
}

/* Production style block 11 */
/* =========================================================
   V33 — hero title spacing refinement
   ========================================================= */

/* Keep the strong condensed silhouette from V32, but slim the strokes
   slightly and restore a small, deliberate gap between words. */
@media(min-width:901px){
  .hero-name{
    font-weight:500!important;
    letter-spacing:-.060em!important;
    word-spacing:.035em!important;
    transform:scaleX(.72)!important;
  }

  .hero-display{
    font-weight:500!important;
    letter-spacing:-.064em!important;
    word-spacing:.030em!important;
    transform:scaleX(.69)!important;
  }

  .hero-display em{
    font-weight:500!important;
    letter-spacing:-.058em!important;
    word-spacing:.030em!important;
  }
}

@media(min-width:561px) and (max-width:900px){
  .hero-name{
    font-weight:500!important;
    letter-spacing:-.054em!important;
    word-spacing:.032em!important;
  }

  .hero-display{
    font-weight:500!important;
    letter-spacing:-.058em!important;
    word-spacing:.028em!important;
  }
}

@media(max-width:560px){
  .hero-name{
    font-weight:500!important;
    letter-spacing:-.046em!important;
    word-spacing:.025em!important;
  }

  .hero-display{
    font-weight:500!important;
    letter-spacing:-.050em!important;
    word-spacing:.024em!important;
  }
}

/* Production style block 12 */
/* =========================================================
   V34 — hero word-spacing correction
   ========================================================= */

/* Keep the condensed letterforms, but stop the negative tracking from
   visually swallowing the spaces between words. */
@media(min-width:901px){
  .hero-name{
    letter-spacing:-.046em!important;
    word-spacing:.155em!important;
  }

  .hero-display{
    letter-spacing:-.050em!important;
    word-spacing:.145em!important;
  }

  .hero-display em{
    letter-spacing:-.046em!important;
  }
}

@media(min-width:561px) and (max-width:900px){
  .hero-name{
    letter-spacing:-.043em!important;
    word-spacing:.145em!important;
  }

  .hero-display{
    letter-spacing:-.047em!important;
    word-spacing:.135em!important;
  }
}

@media(max-width:560px){
  .hero-name{
    letter-spacing:-.040em!important;
    word-spacing:.125em!important;
  }

  .hero-display{
    letter-spacing:-.043em!important;
    word-spacing:.120em!important;
  }
}

/* Production style block 13 */
/* =========================================================
   V35 — hero title matched back toward supplied reference
   ========================================================= */

/* The reference is tall, elegant and only mildly condensed.
   Keep the letters close, but let each word breathe clearly. */
@media(min-width:901px){
  .hero-name{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-size:clamp(60px,4.25vw,78px)!important;
    font-weight:400!important;
    line-height:.92!important;
    letter-spacing:-.046em!important;
    word-spacing:.13em!important;
    transform:scaleX(.92)!important;
    transform-origin:left center!important;
  }

  .hero-display{
    font-family:"Cormorant Garamond",var(--serif)!important;
    font-size:clamp(126px,9.0vw,166px)!important;
    font-weight:400!important;
    line-height:.74!important;
    letter-spacing:-.050em!important;
    word-spacing:.125em!important;
    transform:scaleX(.89)!important;
    transform-origin:left center!important;
  }

  .hero-display em{
    font-weight:500!important;
    letter-spacing:-.045em!important;
  }
}

@media(min-width:561px) and (max-width:900px){
  .hero-name{
    font-weight:400!important;
    letter-spacing:-.042em!important;
    word-spacing:.12em!important;
    transform:scaleX(.93)!important;
  }

  .hero-display{
    font-weight:400!important;
    letter-spacing:-.046em!important;
    word-spacing:.115em!important;
    transform:scaleX(.90)!important;
  }

  .hero-display em{font-weight:500!important}
}

@media(max-width:560px){
  .hero-name{
    font-weight:400!important;
    letter-spacing:-.038em!important;
    word-spacing:.105em!important;
    transform:scaleX(.95)!important;
  }

  .hero-display{
    font-weight:400!important;
    letter-spacing:-.042em!important;
    word-spacing:.10em!important;
    transform:scaleX(.92)!important;
  }

  .hero-display em{font-weight:500!important}
}

/* Production style block 14 */
/* =========================================================
   V36 — reduce hero word gaps slightly
   ========================================================= */
@media(min-width:901px){
  .hero-name{
    word-spacing:.075em!important;
  }
  .hero-display{
    word-spacing:.072em!important;
  }
}

@media(min-width:561px) and (max-width:900px){
  .hero-name{
    word-spacing:.070em!important;
  }
  .hero-display{
    word-spacing:.068em!important;
  }
}

@media(max-width:560px){
  .hero-name{
    word-spacing:.060em!important;
  }
  .hero-display{
    word-spacing:.058em!important;
  }
}

/* Production style block 15 */
/* =========================================================
   V39 — stronger hole metrics + wider intro layout
   ========================================================= */

/* Let the explanatory copy breathe across the page, with the tee selector
   sitting clearly to its right instead of underneath it. */
@media(min-width:981px){
  .holes-head{
    grid-template-columns:.76fr 1.24fr!important;
    gap:5.5vw!important;
    align-items:start!important;
    margin-bottom:34px!important;
  }

  .holes-head-side{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    column-gap:34px!important;
    align-items:start!important;
    padding-top:8px!important;
  }

  .holes-head-side>p{
    max-width:none!important;
    margin:0!important;
    font-size:19px!important;
    line-height:1.58!important;
    letter-spacing:-.012em!important;
  }

  .hole-tee-switch{
    align-self:start!important;
    justify-self:end!important;
    white-space:nowrap!important;
  }

  .hole-tee{
    min-height:40px!important;
    padding:0 15px!important;
    font-size:10px!important;
    letter-spacing:.065em!important;
  }

  /* Increase the prominence of the three key metrics without making
     the panel dramatically taller again. */
  .hole-metrics{
    gap:24px!important;
    margin-bottom:20px!important;
  }

  .hole-metrics>div{
    padding-top:12px!important;
  }

  .hole-metrics span{
    font-size:11px!important;
    font-weight:600!important;
    letter-spacing:.16em!important;
  }

  .hole-metrics strong{
    margin-top:8px!important;
    font-size:40px!important;
    font-weight:600!important;
    line-height:.94!important;
  }
}

@media(min-width:761px) and (max-width:980px){
  .holes-head-side{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:24px!important;
    align-items:start!important;
  }

  .holes-head-side>p{
    max-width:none!important;
    font-size:18px!important;
    line-height:1.58!important;
  }

  .hole-tee-switch{
    justify-self:end!important;
  }

  .hole-metrics span{
    font-size:10px!important;
  }

  .hole-metrics strong{
    font-size:38px!important;
  }
}

@media(max-width:760px){
  .holes-head-side{
    display:flex!important;
    flex-direction:column!important;
    gap:18px!important;
  }

  .holes-head-side>p{
    font-size:17px!important;
    line-height:1.6!important;
  }

  .hole-metrics span{
    font-size:10px!important;
  }

  .hole-metrics strong{
    font-size:37px!important;
  }
}

/* Production style block 16 */
/* =========================================================
   V43 — fuller "More than a Round" carousel panels
   ========================================================= */

/* Rather than forcing another photograph into an already image-led section,
   make the editorial copy properly fill the right-hand square. */
@media(min-width:981px){
  .worth-slide{
    position:relative!important;
    justify-content:center!important;
    padding:42px 48px 46px!important;
    overflow:hidden!important;
  }

  .slide-accent{
    left:48px!important;
    width:72px!important;
    height:4px!important;
  }

  .slide-index{
    position:relative!important;
    z-index:2!important;
    margin-bottom:28px!important;
    font-size:13px!important;
    letter-spacing:.19em!important;
  }

  .worth-slide h3{
    position:relative!important;
    z-index:2!important;
    max-width:430px!important;
    font-size:clamp(54px,4.2vw,68px)!important;
    line-height:.88!important;
    letter-spacing:-.045em!important;
  }

  .worth-slide p{
    position:relative!important;
    z-index:2!important;
    max-width:430px!important;
    margin-top:26px!important;
    font-size:20px!important;
    line-height:1.58!important;
  }

  /* Oversized, very quiet slide number fills the unused corner and gives
     each panel the same editorial confidence as the left-hand image panel. */
  .worth-slide::after{
    content:attr(data-slide);
    position:absolute;
    right:22px;
    bottom:-46px;
    font-family:var(--serif);
    font-size:210px;
    font-weight:300;
    line-height:1;
    letter-spacing:-.08em;
    color:rgba(255,253,248,.045);
    pointer-events:none;
    z-index:1;
  }
}

@media(min-width:641px) and (max-width:980px){
  .worth-slide{
    justify-content:center!important;
    padding:42px 38px 44px!important;
  }

  .worth-slide h3{
    font-size:clamp(48px,6vw,62px)!important;
    line-height:.90!important;
  }

  .worth-slide p{
    font-size:19px!important;
    line-height:1.6!important;
  }

  .worth-slide::after{
    content:attr(data-slide);
    position:absolute;
    right:18px;
    bottom:-35px;
    font-family:var(--serif);
    font-size:165px;
    font-weight:300;
    color:rgba(255,253,248,.045);
    line-height:1;
    pointer-events:none;
  }
}

@media(max-width:640px){
  .worth-slide{
    justify-content:center!important;
  }

  .worth-slide h3{
    font-size:46px!important;
  }

  .worth-slide p{
    font-size:18px!important;
    line-height:1.58!important;
  }
}

/* Production style block 17 */
/* =========================================================
   V46 — precise navigation and refined course emblem
   ========================================================= */
html{scroll-padding-top:74px}
body{overflow-x:hidden;overscroll-behavior-x:none}
button,a,input,select{-webkit-tap-highlight-color:transparent}
button{font-family:inherit}
:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}

.skip-link{
  position:fixed;left:14px;top:12px;z-index:500;
  transform:translateY(-150%);padding:11px 15px;
  background:var(--yellow);color:var(--forest);
  font:600 11px/1 var(--sans);letter-spacing:.09em;text-transform:uppercase;
  transition:transform .2s ease;
}
.skip-link:focus{transform:none}

.scroll-progress{
  position:fixed;left:0;right:0;top:0;height:3px;z-index:501;
  background:rgba(255,255,255,.12);pointer-events:none;
}
.scroll-progress span{display:block;width:100%;height:100%;background:var(--yellow);transform:scaleX(0);transform-origin:left center;will-change:transform}

/* A compact golf-ball crest: WG remains prominent while the flag now lands in a visible cup. */
.brand-mark{width:48px;height:48px}
.brand-ring{
  position:relative;width:45px;height:45px;overflow:hidden;
  border:1px solid rgba(255,253,248,.92);border-radius:50%;
  background:
    radial-gradient(circle at 12px 10px,rgba(255,253,248,.17) 0 1px,transparent 1.5px),
    radial-gradient(circle at 19px 6px,rgba(255,253,248,.12) 0 1px,transparent 1.5px),
    radial-gradient(circle at 8px 20px,rgba(255,253,248,.12) 0 1px,transparent 1.5px),
    rgba(255,253,248,.025);
  box-shadow:inset 0 0 0 3px rgba(255,253,248,.045),0 0 0 1px rgba(6,22,16,.08);
}
.brand-ring .wg{
  position:absolute;left:auto;right:5px;top:16px;z-index:2;
  font:600 12px/1 var(--serif);letter-spacing:-.045em;transform:none;
}
.logo-flag{position:absolute;left:4px;right:auto;top:6px;width:16px;height:31px;pointer-events:none}
.logo-flag:before{
  content:"";position:absolute;left:4px;top:0;bottom:3px;width:1px;height:auto;z-index:2;
  background:linear-gradient(to right,rgba(255,255,255,.55),var(--ivory));
  box-shadow:1px 0 0 rgba(0,0,0,.16);transform:rotate(.8deg);transform-origin:bottom;
}
.logo-flag:after{
  content:"";position:absolute;left:0;bottom:0;width:16px;height:5px;box-sizing:border-box;
  border:1px solid rgba(255,253,248,.78);border-radius:50%;
  background:radial-gradient(ellipse at 4px 50%,rgba(4,20,13,.96) 0 1.6px,transparent 1.9px),rgba(255,253,248,.11);
  box-shadow:inset 0 1px 2px rgba(0,0,0,.32);
}
.logo-flag i{
  position:absolute;left:5px;top:1px;width:10px;height:8px;
  background:linear-gradient(135deg,#f2d15a 0%,var(--yellow) 56%,#b78f16 100%);
  clip-path:polygon(0 0,78% 6%,100% 35%,84% 54%,100% 82%,76% 95%,0 100%);
  border-radius:1px 55% 55% 1px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.28));
}

.mobile-actions{display:none}
.nav a.active{color:var(--yellow);opacity:1}
.nav-mobile-more{display:none}

@media(max-width:980px){
  .nav-mobile-more{display:flex}
  .nav{max-height:calc(100dvh - 70px);overflow-y:auto;overscroll-behavior:contain}
  .nav a{min-height:52px;display:flex;align-items:center}
}

@media(max-width:760px){
  html{scroll-padding-top:64px}
  .section-shell{width:min(100% - 34px,1260px)}
  .brand-mark{width:38px;height:38px}
  .brand-ring{width:36px;height:36px}
  .brand-ring .wg{left:auto;right:3px;top:13px;font-size:10px}
  .logo-flag{left:2px;right:auto;top:4px;transform:scale(.81);transform-origin:left top}
  .hole-picker{grid-template-columns:repeat(6,1fr)!important}
  .hole-picker button{height:48px!important;border-bottom:1px solid rgba(255,253,248,.09)}
  .compact-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .compact-score-table{min-width:690px}
  .mobile-actions{
    position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:120;
    display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:7px;
    background:rgba(var(--forest-rgb),.96);border:1px solid rgba(255,253,248,.20);box-shadow:0 14px 42px rgba(5,18,13,.30);backdrop-filter:blur(12px);
    transform:translateY(140%);transition:transform .3s ease;
  }
  .mobile-actions.visible{transform:none}
  .mobile-actions a{min-height:49px;display:flex;align-items:center;justify-content:center;gap:9px;font:600 10px/1 var(--sans);letter-spacing:.11em;text-transform:uppercase}
  .mobile-actions a:first-child{background:var(--yellow);color:var(--forest)}
  .mobile-actions a:last-child{border:1px solid rgba(255,253,248,.28);color:var(--ivory)}
  footer{padding-bottom:94px}
}

@media(max-width:560px){
  .brand-copy small{letter-spacing:.12em}
  .hero{min-height:100svh!important;height:auto!important}
  .hero-content{width:min(100% - 34px,1395px)!important;padding-top:132px!important;padding-bottom:128px!important}
  .hero-display{font-size:clamp(70px,22vw,88px)!important;line-height:.79!important}
  .hero-name{font-size:clamp(40px,12.4vw,50px)!important}
  .hero-base-actions{grid-template-columns:1fr 1fr!important}
  .hero-box{min-width:0!important;width:100%!important}
  .breathe-inline-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .breathe-inline-stats strong{font-size:29px!important}
  .breathe-inline-stats span{font-size:7px!important;letter-spacing:.09em!important}
  .hole-stage{width:100%!important}
  .hole-copy{padding:34px 22px 36px!important}
  .hole-number{font-size:96px!important}
  .hole-metrics{gap:12px!important}
  .hole-metrics strong{font-size:32px!important}
  .hole-visual{min-height:275px!important}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Production style block 18 */
/* =========================================================
   V47 — balanced phone spacing without changing desktop
   ========================================================= */
@media(max-width:760px){
  /* Keep the compact header and menu comfortable on short phone screens. */
  .nav{
    min-height:calc(100dvh - 64px);
    max-height:calc(100dvh - 64px);
    padding:18px 18px max(28px,env(safe-area-inset-bottom));
  }
  .nav a{min-height:52px;padding:13px 2px}
  .nav-cta{margin-top:18px!important;padding-inline:16px!important}

  /* Let the hero respond to viewport height instead of inheriting a fixed phone height. */
  .hero{min-height:100svh!important;padding-top:64px!important}
  .hero-content{
    width:min(100% - 34px,1395px)!important;
    min-height:calc(100svh - 64px)!important;
    margin-inline:auto!important;
    padding-top:clamp(78px,11svh,108px)!important;
    padding-bottom:112px!important;
  }
  .hero-kicker{margin-top:21px!important;margin-bottom:21px!important}
  .hero-intro{margin-top:24px!important}
  .hero-base-actions{
    left:17px!important;
    right:17px!important;
    bottom:max(14px,env(safe-area-inset-bottom))!important;
    width:auto!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .hero-box{width:100%!important;min-width:0!important;min-height:50px!important}

  /* One consistent vertical rhythm across the editorial sections. */
  .breathe,.worth,.holes,.starter,.visit,.rates,.scorecard,.location-panel{
    min-height:0!important;
    padding-top:72px!important;
    padding-bottom:78px!important;
  }
  .eyebrow{margin-bottom:16px}

  .breathe{display:block!important}
  .breathe-heading{margin-bottom:34px!important}
  .breathe-copy .accent-line{margin-bottom:22px!important}
  .breathe-copy>p{font-size:16px!important;line-height:1.68!important}
  .breathe-inline-stats{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
    margin-top:34px!important;
  }
  .breathe-inline-stats>div{min-width:0!important;padding:16px 6px 12px 0!important}
  .breathe-inline-stats strong{font-size:clamp(23px,7vw,29px)!important}
  .breathe-inline-stats span{overflow-wrap:anywhere}

  .worth-feature{
    min-height:clamp(330px,100vw,410px)!important;
    height:clamp(330px,100vw,410px)!important;
    margin-bottom:18px!important;
  }
  .worth-feature>img,.worth-feature img{height:100%!important;min-height:0!important}
  .worth-feature-copy{
    left:22px!important;
    right:20px!important;
    bottom:30px!important;
    padding:0!important;
  }
  .worth-feature-copy h2{font-size:clamp(50px,14vw,58px)!important}
  .worth-carousel-panel{margin-top:0!important}
  .worth-slide{min-height:320px!important;padding:30px 22px 32px!important}
  .slide-accent{left:22px!important}
  .slide-index{margin-bottom:24px!important}
  .worth-slide h3{font-size:clamp(40px,11vw,46px)!important;line-height:.92!important}
  .worth-slide p{margin-top:20px!important;font-size:16px!important;line-height:1.62!important}
  .worth-controls{margin-top:16px!important;gap:14px!important}

  .holes-head{margin-bottom:34px!important}
  .holes-title-block h2{font-size:clamp(52px,15vw,58px)!important}
  .holes-head-side{gap:16px!important}
  .holes-head-side>p{font-size:16px!important;line-height:1.62!important}
  .hole-tee-switch{width:100%;max-width:360px}
  .hole-tee{flex:1 1 0;justify-content:center;min-height:44px}
  .hole-copy{padding:28px 20px 30px!important}
  .hole-number{font-size:92px!important;margin:16px 0 20px!important}
  .hole-metrics{gap:9px!important;margin-bottom:20px!important}
  .hole-metrics>div{padding-top:10px!important}
  .hole-metrics span{font-size:9px!important}
  .hole-metrics strong{margin-top:7px!important;font-size:30px!important}
  .hole-copy>p{font-size:14px!important;line-height:1.6!important}
  .hole-visual{min-height:250px!important}
  .hole-picker-wrap{padding-top:14px!important}
  .hole-picker button{flex-basis:54px!important;min-width:54px}
  .nine-summary{margin-top:28px!important}
  .nine-summary>div{padding:18px 18px 20px!important}
  .nine-summary p{margin-bottom:9px!important}
  .nine-summary strong{font-size:20px!important;line-height:1.25!important}

  .starter-photo{margin-bottom:34px!important}
  .starter-photo img{height:clamp(270px,78vw,330px)!important}
  .starter-copy h2,.visit-copy h2,.rates-head h2,.location-head h2{
    font-size:clamp(52px,15vw,58px)!important;
  }
  .starter-copy>p:not(.eyebrow){margin-top:24px!important}
  .tags{margin-top:24px!important}

  .visit-copy{margin-bottom:36px!important}
  .visit-copy>p:not(.eyebrow){margin:24px 0 28px!important}
  .visit-copy .button{width:100%;max-width:280px}
  .amenities>div{grid-template-columns:42px minmax(0,1fr);padding:20px 0!important}
  .amenities strong{font-size:24px!important}

  .rates-head{margin-bottom:30px!important}
  .rates-head>p{margin-top:22px!important}
  .rate-grid article{padding:24px 20px!important}
  .rate-grid h3{margin:24px 0 14px!important;font-size:36px!important}
  .rate-grid a{margin-top:22px!important}

  .scorecard-head-compact{margin-bottom:26px!important}
  .scorecard-head-compact h2{font-size:clamp(46px,13.5vw,52px)!important}
  .scorecard-side{margin-top:20px!important;gap:15px!important}
  .scorecard-total{margin-top:0!important}
  .compact-scorecards{gap:12px!important}
  .compact-nine-head{padding:13px 14px!important}

  .location-grid{display:block!important}
  .location-head{margin-bottom:36px!important}
  .location-info{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:28px!important;
    padding-top:0!important;
  }
  .location-info>div{margin:0!important}
  .location-info h3{margin-bottom:11px!important}
  .location-info p,.location-info a{font-size:16px!important;line-height:1.65!important}

  /* Keep the final call-to-action clear of the persistent quick-action bar. */
  .final-wrap{padding-top:54px!important}
  .final-cta{height:560px!important}
  .final-content{padding-bottom:calc(112px + env(safe-area-inset-bottom))!important}
  .final-content h2{font-size:clamp(50px,14.5vw,56px)!important}
  .final-book{margin-top:28px!important}
  .final-book .button{width:100%;max-width:280px}

  .mobile-actions{
    left:10px;
    right:10px;
    padding:6px;
    gap:6px;
    bottom:max(10px,env(safe-area-inset-bottom));
  }
  .mobile-actions a{min-width:0;min-height:48px}

  footer{padding-top:34px!important;padding-bottom:calc(104px + env(safe-area-inset-bottom))!important}
  .footer-inner>div:last-child{margin-top:18px!important;gap:9px!important}
  .footer-inner a{overflow-wrap:anywhere}
  .legal{margin-top:24px!important;line-height:1.6}
}

@media(max-width:420px){
  .breathe,.worth,.holes,.starter,.visit,.rates,.scorecard,.location-panel{
    padding-top:64px!important;
    padding-bottom:68px!important;
  }
  .hero-content{padding-top:64px!important;padding-bottom:108px!important}
  .hero-kicker{margin-top:18px!important;margin-bottom:18px!important}
  .hero-intro{margin-top:21px!important;font-size:14px!important;line-height:1.55!important}
  .hero-base-actions{left:12px!important;right:12px!important}
  .hero-box{padding-inline:9px!important;font-size:9px!important}
  .breathe-heading h2,.holes-title-block h2,.starter-copy h2,.visit-copy h2,.rates-head h2,.location-head h2,.scorecard-head-compact h2,.final-content h2{
    font-size:50px!important;
  }
  .worth-feature-copy h2{font-size:49px!important}
  .worth-slide h3{font-size:38px!important}
  .hole-copy{padding-inline:18px!important}
  .hole-number{font-size:86px!important}
  .hole-metrics strong{font-size:28px!important}
  .rate-grid article{padding-inline:18px!important}
  .mobile-actions a{gap:5px;font-size:9px;letter-spacing:.08em}
}

/* Production style block 19 */
/* Final quality pass: preserve the established desktop design, unify behaviour. */
:root{--nav-height:74px}
html{scroll-behavior:auto!important;scroll-padding-top:var(--nav-height)}
[hidden]{display:none!important}
main>section[id]{scroll-margin-top:0!important}
.site-header{z-index:200}
.skip-link{z-index:502}
#siteRushOverlay{display:none!important}
body.is-rushing-top main,body.is-rushing-top footer{filter:none!important}
button,a,input,select,summary{touch-action:manipulation}
button{cursor:pointer}
button:disabled{cursor:default}
input,select{max-width:100%}
.hole-tee,.score-tee{min-height:44px}
.worth-pause{width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(255,253,248,.24);background:transparent;color:var(--ivory);font:500 17px/1 var(--sans);transition:background .2s ease,color .2s ease}
.worth-pause:hover,.worth-pause[aria-pressed="true"]{background:var(--ivory);color:var(--forest)}
.worth-nav{gap:8px}
.worth-nav button{min-width:44px;min-height:44px}
.worth-track{align-items:stretch}
.worth-slide{height:auto!important}
.worth-slide[aria-hidden="true"]{pointer-events:none}
.worth-viewport{touch-action:pan-y}
.hole-copy{min-width:0}
#holeNote{min-height:var(--hole-note-height,0px)}
.hole-guide-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 0 14px}
.hole-guide-controls button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;min-width:112px;padding:10px 15px;border:1px solid var(--line);background:transparent;color:var(--forest);font:600 11px/1 var(--sans);letter-spacing:.06em;transition:background .2s ease,color .2s ease}
.hole-guide-controls button:hover{background:var(--forest);color:var(--ivory)}
.hole-guide-controls button span{font-size:18px}
.hole-guide-controls p{font:500 11px/1.4 var(--sans);color:var(--muted);text-align:center;font-variant-numeric:tabular-nums}
.hole-picker{scrollbar-width:thin;scrollbar-color:var(--yellow-deep) var(--forest);overscroll-behavior-x:contain}
.hole-picker button:focus-visible{outline-offset:-4px}
.rate-grid article>.rate-card-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:28px;padding-top:18px;border-top:1px solid rgba(255,253,248,.2);color:var(--ivory);font:600 11px/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.rate-card-action b{font-size:19px;font-weight:400;transition:transform .2s ease}
.compact-table-wrap{overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--yellow-deep) transparent}
.compact-table-wrap:focus-visible{outline-offset:-3px}
.compact-score-table th:first-child{position:sticky;left:0;z-index:1;background:#e9e5d9!important;color:var(--forest)!important;box-shadow:1px 0 0 var(--line)}
.scorecard-note{margin-top:22px;max-width:740px;color:var(--muted);font:400 12px/1.6 var(--sans)}
.scorecard-scroll-hint{display:none}
.section-light .eyebrow,.compact-nine-head span{color:#826018}
.mobile-actions[aria-hidden="true"]{pointer-events:none}
body.menu-open .mobile-actions{transform:translateY(160%);pointer-events:none}
footer a{min-height:36px;display:inline-flex;align-items:center}
@media(min-width:981px){
  .menu-btn{display:none!important}
  .nav{display:flex!important;visibility:visible!important;opacity:1!important;transform:none!important}
  .nav-mobile-more{display:none!important}
}
@media(max-width:980px){
  :root{--nav-height:64px}
  .header-meta{display:none!important}
  .header-inner,.site-header.scrolled .header-inner{height:64px!important;min-height:64px!important}
  .menu-btn{display:flex!important;align-items:center;justify-content:center;flex-direction:column;gap:6px;width:44px;height:44px;flex:0 0 44px;padding:10px}
  .site-header:has(.nav.open){background:var(--forest)}
  .nav{position:fixed!important;top:64px!important;left:0!important;right:0!important;bottom:auto;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:12px max(24px,calc((100vw - 900px)/2)) calc(22px + env(safe-area-inset-bottom))!important;max-height:calc(100dvh - 64px)!important;background:var(--forest)!important;border-top:1px solid rgba(255,253,248,.14);box-shadow:0 18px 30px rgba(5,18,13,.16);overflow-y:auto;overscroll-behavior:contain;visibility:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
  .nav.open{visibility:visible;opacity:1;transform:none;pointer-events:auto}
  .nav a{min-height:52px!important;display:flex;align-items:center;padding:12px 0!important;border-bottom:1px solid rgba(255,253,248,.12)}
  .nav .nav-cta{margin-top:12px!important;padding:16px!important;justify-content:space-between;border:0}
  .nav-mobile-more{display:flex!important}
  .menu-btn[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
  .menu-btn[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
}
@media(max-width:760px){
  .hole-guide-controls{gap:8px;padding-inline:0}
  .hole-guide-controls button{min-width:94px;gap:8px;padding-inline:10px;font-size:10px}
  .hole-guide-controls p{font-size:10px}
  .hole-copy>p{font-size:15px!important;line-height:1.65!important}
  .scorecard-scroll-hint{display:block;margin-bottom:5px}
  .worth-controls{gap:12px!important}
  .worth-nav{gap:6px}
  .worth-prev,.worth-next,.worth-pause{width:44px!important;height:44px!important;min-width:44px}
  .rate-grid article>.rate-card-action{margin-top:22px}
  .breathe-inline-stats span{font-size:9px!important;line-height:1.5!important;letter-spacing:.04em!important}
}
@media(max-width:360px){
  .section-shell{width:calc(100% - 32px)!important}
  .brand-copy strong{font-size:17px!important}
  .brand-copy small{font-size:7px!important;letter-spacing:.08em!important}
  .worth-counter{gap:7px!important}
  .hole-guide-controls button{min-width:84px;gap:6px;font-size:9px}
  .hole-picker-wrap{width:calc(100% - 28px)!important}
  .hero-name{font-size:39px!important}
}
@media(max-height:560px) and (max-width:980px){
  .hero{height:auto!important;min-height:640px!important}
  .hero-content{padding-top:100px!important;padding-bottom:130px!important}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* Production style block 20 */
/* V48 — call-led availability and 2026 membership information */
body.membership-open{overflow:hidden}
.membership-card-clickable{position:relative;cursor:pointer}
.membership-card-clickable:focus-visible{outline:2px solid var(--yellow);outline-offset:-5px}
.membership-card-clickable:hover .rate-card-action b,.membership-card-clickable:focus-visible .rate-card-action b{transform:translateX(5px)}
.membership-modal{position:fixed;inset:0;z-index:400;display:grid;place-items:center;padding:32px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .26s ease,visibility .26s ease}
.membership-modal.open{opacity:1;visibility:visible;pointer-events:auto}
.membership-backdrop{position:absolute;inset:0;background:rgba(8,26,19,.76);backdrop-filter:blur(3px)}
.membership-panel{position:relative;z-index:1;width:min(1120px,94vw);max-height:min(900px,92dvh);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable;background:var(--ivory);color:var(--forest);border:1px solid rgba(var(--forest-rgb),.18);box-shadow:0 30px 90px rgba(5,18,13,.38);padding:48px 54px 46px;transform:translateY(18px) scale(.985);transition:transform .28s cubic-bezier(.22,.7,.26,1)}
.membership-modal.open .membership-panel{transform:none}
.membership-close{position:absolute;top:24px;right:26px;width:48px;height:48px;display:grid;place-items:center;padding:0;background:transparent;color:var(--forest);border:1px solid rgba(var(--forest-rgb),.20);font:300 31px/1 var(--sans);cursor:pointer;transition:background .2s ease,color .2s ease}
.membership-close:hover{background:var(--forest);color:var(--ivory)}
.membership-close:focus-visible,.membership-call:focus-visible{outline:2px solid var(--yellow-deep);outline-offset:3px}
.membership-eyebrow{margin:0 0 14px;color:#826018;font:600 12px/1.35 var(--sans);letter-spacing:.22em;text-transform:uppercase}
.membership-panel h2{max-width:820px;margin:0;padding-right:58px;font:400 clamp(52px,5.2vw,78px)/.9 var(--serif);letter-spacing:-.045em;color:var(--forest)}
.membership-panel h2 em{font-style:italic;color:var(--yellow-deep)}
.membership-panel h2:focus{outline:none}
.membership-lede{max-width:760px;margin:20px 0 32px;color:var(--muted);font:400 16px/1.65 var(--sans)}
.membership-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.membership-group{min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.membership-group-head{min-height:114px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start;padding:23px 24px;border-bottom:1px solid var(--line)}
.membership-index{padding-top:5px;color:var(--yellow-deep);font:500 12px/1 var(--sans);letter-spacing:.12em}
.membership-group h3{font:400 clamp(29px,3vw,39px)/.95 var(--serif);letter-spacing:-.035em;color:var(--forest)}
.membership-group-head p{margin-top:9px;color:var(--muted);font:500 13px/1.4 var(--sans);letter-spacing:.03em}
.membership-prices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.membership-prices>div{min-width:0;padding:23px 24px 27px}
.membership-prices>div+div{border-left:1px solid var(--line)}
.membership-prices span{display:block;color:#826018;font:600 12px/1.35 var(--sans);letter-spacing:.11em;text-transform:uppercase}
.membership-prices strong{display:block;margin-top:13px;color:var(--forest);font:400 clamp(44px,4.4vw,62px)/.85 var(--serif);letter-spacing:-.055em;font-variant-numeric:tabular-nums}
.membership-junior{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;margin-top:18px;padding:20px 24px;border:1px solid var(--line);background:rgba(255,253,248,.38)}
.membership-junior span{display:block;color:#826018;font:600 12px/1.35 var(--sans);letter-spacing:.11em;text-transform:uppercase}
.membership-junior strong{display:block;margin-top:6px;font:400 27px/1.05 var(--serif);letter-spacing:-.025em}
.membership-junior p{color:var(--muted);font-size:14px;line-height:1.55}
.membership-actions{display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px;margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
.membership-actions p{max-width:560px;color:var(--muted);font:400 12px/1.55 var(--sans)}
.membership-call{min-width:300px;min-height:60px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--yellow);color:var(--forest);font:600 12px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.membership-call b{font-size:21px;font-weight:400;transition:transform .2s ease}
.membership-call:hover b{transform:translateX(4px)}
body.menu-open .mobile-actions,body.membership-open .mobile-actions{transform:translateY(160%);pointer-events:none}

@media(max-width:820px){
  .membership-modal{padding:12px}
  .membership-panel{width:100%;max-height:calc(100dvh - 24px);padding:38px 24px max(28px,env(safe-area-inset-bottom))}
  .membership-close{top:14px;right:14px;width:44px;height:44px}
  .membership-panel h2{font-size:clamp(46px,12vw,58px);line-height:.96;padding-right:42px}
  .membership-lede{margin:17px 0 24px}
  .membership-groups{grid-template-columns:1fr}
  .membership-group-head{min-height:0;padding:20px}
  .membership-prices>div{padding:20px 20px 23px}
  .membership-prices strong{font-size:46px}
  .membership-junior{grid-template-columns:1fr;gap:10px;padding:18px 20px}
  .membership-actions{grid-template-columns:1fr;gap:18px}
  .membership-call{width:100%;min-width:0}
}
@media(max-width:420px){
  .membership-modal{padding:0}
  .membership-panel{max-height:100dvh;border-left:0;border-right:0;padding:30px 16px max(24px,env(safe-area-inset-bottom))}
  .membership-eyebrow{padding-right:48px;line-height:1.45}
  .membership-panel h2{font-size:44px}
  .membership-group-head{grid-template-columns:28px minmax(0,1fr);gap:10px;padding:18px 16px}
  .membership-group h3{font-size:29px}
  .membership-prices>div{padding:18px 16px 20px}
  .membership-prices strong{font-size:40px}
  .membership-junior{padding:17px 16px}
  .membership-call{padding-inline:17px;letter-spacing:.08em}
}
@media(max-height:560px) and (max-width:980px){.membership-panel{max-height:calc(100dvh - 20px)}}

/* Production style block 21 */
/* V49 — supplied hole plans, presented without cropping or recolouring. */
.hole-stage{
  grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr)!important;
}
.hole-visual.hole-map-surface{
  position:relative;
  isolation:isolate;
  height:auto!important;
  min-height:clamp(400px,34vw,490px)!important;
  overflow:hidden;
  border-left:1px solid rgba(255,253,248,.12);
  background:
    radial-gradient(circle at 76% 18%,rgba(232,197,89,.095),transparent 25%),
    radial-gradient(circle at 18% 88%,rgba(255,253,248,.055),transparent 31%),
    #123a2c;
}
.hole-map-surface::before,
.hole-map-surface::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
}
.hole-map-surface::before{
  opacity:.16;
  background:
    repeating-radial-gradient(ellipse at 18% 95%,transparent 0 31px,rgba(255,253,248,.17) 32px 33px,transparent 34px 55px),
    repeating-radial-gradient(ellipse at 96% 2%,transparent 0 43px,rgba(255,253,248,.12) 44px 45px,transparent 46px 70px);
}
.hole-map-surface::after{
  inset:18px;
  border:1px solid rgba(255,253,248,.12);
  background:
    linear-gradient(90deg,transparent calc(50% - .5px),rgba(255,253,248,.055) 50%,transparent calc(50% + .5px)),
    linear-gradient(0deg,transparent calc(50% - .5px),rgba(255,253,248,.055) 50%,transparent calc(50% + .5px));
}
.hole-map-meta{
  position:absolute;
  z-index:5;
  top:32px;
  left:34px;
  right:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  color:rgba(255,253,248,.7);
  font:600 10px/1.35 var(--sans);
  letter-spacing:.15em;
  text-transform:uppercase;
}
.hole-map-meta span:first-child{
  display:flex;
  align-items:center;
  gap:10px;
}
.hole-map-meta span:first-child::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--yellow);
  box-shadow:0 0 0 4px rgba(232,197,89,.1);
}
.hole-map-surface>img{
  position:absolute;
  display:block;
  margin:0;
}
.hole-map-surface>img:not(.hole-aerial){
  z-index:2;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 60%;
  opacity:.86;
  transform:scale(1.02);
  filter:saturate(.86) contrast(.97) brightness(.72);
  transition:opacity .24s ease;
}
.hole-map-surface.has-aerial>img:not(.hole-aerial){opacity:0}
.hole-aerial{
  z-index:3;
  inset:76px 30px 34px;
  width:calc(100% - 60px)!important;
  height:calc(100% - 110px)!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:drop-shadow(0 12px 18px rgba(2,22,15,.24))!important;
  transform:none!important;
  opacity:1;
  transition:opacity .24s ease;
}
.hole-map-surface .hole-visual-overlay{
  z-index:1;
  pointer-events:none;
}
.hole-map-surface .hole-visual-overlay span{
  right:24px;
  bottom:15px;
  color:rgba(255,253,248,.07);
  font-size:clamp(118px,11vw,170px);
  font-weight:500;
  line-height:.72;
}
@media(max-width:1100px){
  .hole-stage{grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr)!important}
}
@media(max-width:980px){
  .hole-stage{grid-template-columns:1fr!important}
  .hole-visual.hole-map-surface{min-height:clamp(400px,64vw,520px)!important;border-left:0;border-top:1px solid rgba(255,253,248,.12)}
  .hole-aerial{inset:70px 24px 28px;width:calc(100% - 48px)!important;height:calc(100% - 98px)!important}
}
@media(max-width:640px){
  .hole-visual.hole-map-surface{min-height:clamp(320px,95vw,460px)!important}
  .hole-map-surface::after{inset:12px}
  .hole-map-meta{top:25px;left:22px;right:22px;gap:12px;font-size:9px;letter-spacing:.11em}
  .hole-aerial{inset:60px 14px 22px;width:calc(100% - 28px)!important;height:calc(100% - 82px)!important}
  .hole-map-surface .hole-visual-overlay span{right:16px;bottom:12px;font-size:105px}
}
@media(max-width:420px){
  .hole-map-meta{left:18px;right:18px;font-size:8px;letter-spacing:.08em}
  .hole-map-meta span:first-child{gap:7px}
  .hole-map-meta span:first-child::before{width:6px;height:6px;box-shadow:0 0 0 3px rgba(232,197,89,.1)}
  .hole-aerial{inset:56px 10px 18px;width:calc(100% - 20px)!important;height:calc(100% - 74px)!important}
}
@media(prefers-reduced-motion:reduce){
  .hole-aerial,.hole-map-surface>img:not(.hole-aerial){transition:none!important}
}

/* Production style block 22 */
/* Refined spacing, readable course plans and balanced phone layouts. */
.hole-tee,.score-tee{min-height:44px!important}
.hole-copy>p{font-size:14px!important;line-height:1.6!important}
.hole-metrics span{font-size:9px!important;line-height:1.4!important}
.rate-grid article{display:flex;flex-direction:column;min-width:0}
.rate-grid article>p{flex:1;min-height:0}
.rate-grid article>.rate-card-action{min-height:52px;margin-top:26px!important}
.final-cta .eyebrow.light{color:var(--yellow)}
.legal a{font-size:12px;line-height:1.6}
.membership-topline{position:relative}
.membership-topline .membership-close{top:-24px;right:-28px}
@media(min-width:981px){
  .rate-grid h3{min-height:1.8em}
}
@media(max-width:820px){
  .membership-topline{position:sticky;top:-38px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-38px -24px 22px;padding:14px 16px 14px 24px;background:var(--ivory);border-bottom:1px solid var(--line)}
  .membership-topline .membership-close{position:static;flex:0 0 44px}
  .membership-eyebrow{margin:0;padding:0;max-width:230px;line-height:1.5}
  .membership-panel h2{padding-right:0}
}
@media(max-width:760px){
  .hero{height:auto!important;min-height:100svh!important}
  .hero-content.section-shell{
    position:relative!important;inset:auto!important;transform:none!important;
    display:flex!important;flex-direction:column;justify-content:center!important;align-items:flex-start;
    width:calc(100% - 34px)!important;min-height:calc(100svh - 64px)!important;
    margin-inline:auto!important;padding:clamp(40px,7svh,72px) 0 118px!important;
  }
  .hero-content>*{flex-shrink:0}
  .hero-name{max-width:100%!important;transform:none!important;font-size:clamp(40px,10.5vw,58px)!important}
  .hero-display{width:100%;max-width:100%!important;font-size:clamp(56px,18.5vw,100px)!important;line-height:.84!important;transform:none!important}
  .hero-intro{max-width:440px!important}
  .hero-base-actions{left:17px!important;right:17px!important}
  .hero-box{font-size:10px!important;letter-spacing:.04em!important}
  .holes-head{display:grid!important;grid-template-columns:1fr;gap:24px!important}
  .hole-copy{display:grid;grid-template-columns:86px minmax(0,1fr);column-gap:22px;row-gap:18px;align-items:center}
  .hole-kicker{grid-column:1;grid-row:1;margin:0}
  .hole-number{grid-column:1;grid-row:2;font-size:76px!important;line-height:.8!important;margin:0!important}
  .hole-metrics{grid-column:2;grid-row:1 / 3;gap:8px!important;margin:0!important}
  .hole-metrics strong{font-size:28px!important}
  .hole-copy>p{grid-column:1 / -1;font-size:15px!important;line-height:1.65!important}
  .hole-map-meta{flex-wrap:wrap;row-gap:6px}
  .hole-map-meta span:first-child::before{flex-shrink:0}
  .hole-picker-wrap{padding-top:16px!important}
  .scorecard-total{display:flex!important;align-items:baseline;gap:10px!important}
  .scorecard-total strong{font-size:34px!important;line-height:1!important}
  .scorecard-total span{font-size:9px!important;margin-right:14px}
  .scorecard-total span:last-child{margin-right:0}
  .compact-score-table{min-width:560px!important}
  .compact-score-table th,.compact-score-table td{font-size:12px!important;padding:11px 8px!important}
  .scorecard-scroll-hint{margin:0 0 14px;color:var(--muted);font:400 12px/1.5 var(--sans)}
}
@media(max-width:420px){
  .membership-topline{top:-30px;margin:-30px -16px 22px;padding-left:16px}
}
@media(max-width:360px){
  .hero-box{font-size:9px!important;padding-inline:8px!important}
  .hole-copy{grid-template-columns:72px minmax(0,1fr);column-gap:16px}
  .hole-metrics strong{font-size:25px!important}
}

/* Production style block 23 */
/* V50 — published 2026 visitor fees, kept behind one clear action. */
body.fees-open{overflow:hidden}
.rates-intro{align-self:end}
.rates-intro>p{max-width:620px;color:rgba(255,253,248,.70);font-size:17px;line-height:1.65}
.green-fees-trigger{
  min-height:52px;margin-top:24px;padding:0 20px;display:inline-flex;align-items:center;justify-content:space-between;gap:38px;
  border:1px solid rgba(255,253,248,.28);background:transparent;color:var(--ivory);cursor:pointer;
  font:600 11px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;
  transition:background .2s ease,border-color .2s ease,color .2s ease
}
.green-fees-trigger b{font-size:19px;font-weight:400;transition:transform .2s ease}
.green-fees-trigger:hover{border-color:var(--yellow);background:var(--yellow);color:var(--forest)}
.green-fees-trigger:hover b{transform:translateX(4px)}
.green-fees-trigger:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}
.fees-panel{width:min(1240px,96vw);padding:42px 48px 40px}
.fees-panel h2{font-size:clamp(50px,4.7vw,72px)}
.fees-lede{margin-bottom:27px}
.fee-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.fee-group{min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.fee-group-head{min-height:92px;padding:20px 21px 18px;border-bottom:1px solid var(--line)}
.fee-group-head>span{display:block;margin-bottom:9px;color:#826018;font:600 10px/1.3 var(--sans);letter-spacing:.15em;text-transform:uppercase}
.fee-group h3{font:400 clamp(28px,2.5vw,37px)/.98 var(--serif);letter-spacing:-.035em;color:var(--forest)}
.fee-group-head p{margin-top:6px;color:var(--muted);font:500 12px/1.4 var(--sans)}
.fee-list{margin:0;padding:0}
.fee-list>div{min-height:44px;padding:9px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid rgba(var(--forest-rgb),.11)}
.fee-list>div:last-child{border-bottom:0}
.fee-list dt{color:var(--muted);font:500 12px/1.35 var(--sans)}
.fee-list dd{margin:0;color:var(--forest);font:600 17px/1 var(--serif);font-variant-numeric:tabular-nums;white-space:nowrap}
.fees-lower{display:grid;grid-template-columns:1.08fr .92fr;border-left:1px solid var(--line)}
.fee-detail{padding:20px 22px 21px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.fee-detail-kicker{margin:0 0 13px;color:#826018;font:600 10px/1.35 var(--sans);letter-spacing:.15em;text-transform:uppercase}
.twilight-times{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.twilight-times span,.seasonal-prices span{display:block;color:var(--muted);font:500 10px/1.35 var(--sans);letter-spacing:.06em;text-transform:uppercase}
.twilight-times strong{display:block;margin-top:4px;color:var(--forest);font:400 22px/1 var(--serif);white-space:nowrap}
.seasonal-window{max-width:510px;margin:0 0 14px;color:var(--muted);font:400 12px/1.55 var(--sans)}
.seasonal-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.seasonal-prices strong{display:block;margin-top:4px;color:var(--forest);font:400 22px/1 var(--serif);font-variant-numeric:tabular-nums}
.fees-actions{margin-top:20px;padding-top:20px}
.fees-notes strong{display:block;margin-bottom:5px;color:var(--forest);font:600 11px/1.35 var(--sans);letter-spacing:.11em;text-transform:uppercase}
.fees-notes p{font-size:12px}
body.fees-open .mobile-actions{transform:translateY(160%);pointer-events:none}
@media(max-width:980px){
  .rates-intro{margin-top:26px}
  .rates-intro>p{font-size:16px}
  .fees-panel{padding:38px 28px max(30px,env(safe-area-inset-bottom))}
  .fee-groups{grid-template-columns:1fr}
  .fee-group-head{min-height:0}
  .fees-lower{grid-template-columns:1fr}
}
@media(max-width:820px){
  .fees-panel{width:100%;max-height:calc(100dvh - 24px);padding:38px 24px max(28px,env(safe-area-inset-bottom))}
  .fees-panel h2{font-size:clamp(43px,11.5vw,56px)}
  .fee-group-head{padding:18px 20px 16px}
  .fee-list>div{padding-inline:20px}
  .twilight-times{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}
}
@media(max-width:420px){
  .green-fees-trigger{width:100%;gap:16px;padding-inline:17px;letter-spacing:.1em}
  .fees-panel{max-height:100dvh;padding:30px 16px max(24px,env(safe-area-inset-bottom))}
  .fees-panel h2{font-size:42px}
  .fees-lede{margin-bottom:22px}
  .fee-group-head,.fee-detail{padding-inline:16px}
  .fee-list>div{padding:10px 16px}
  .seasonal-prices{gap:8px}
  .twilight-times strong,.seasonal-prices strong{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
  .green-fees-trigger,.green-fees-trigger b{transition:none!important}
}

/* Production style block 24 */
/* V51 — clearer slideshow controls, visible hole numbers and buggy hire. */
.worth-pause{
  width:auto!important;height:48px!important;min-width:106px!important;padding:0 16px!important;
  display:inline-flex!important;align-items:center;justify-content:center;gap:10px;
  font:600 11px/1 var(--sans)!important;letter-spacing:.11em;text-transform:uppercase
}
.worth-pause:hover{border-color:var(--ivory)!important;background:var(--ivory)!important;color:var(--forest)!important}
.worth-pause[aria-pressed="true"]{border-color:var(--yellow)!important;background:var(--yellow)!important;color:var(--forest)!important}
.worth-pause .worth-pause-label{font:inherit!important;letter-spacing:inherit;transform:none!important}
.worth-pause-icon{position:relative;display:block!important;width:12px;height:14px;flex:0 0 12px;transform:none!important}
.worth-pause-icon::before,.worth-pause-icon::after{content:"";position:absolute;top:0;bottom:0;width:4px;background:currentColor}
.worth-pause-icon::before{left:0}
.worth-pause-icon::after{right:0}
.worth-pause[aria-pressed="true"] .worth-pause-icon::before{
  top:1px;bottom:auto;left:2px;width:0;height:0;background:transparent;
  border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor
}
.worth-pause[aria-pressed="true"] .worth-pause-icon::after{display:none}

.hole-map-surface .hole-visual-overlay{z-index:6;pointer-events:none}
.hole-map-surface .hole-visual-overlay span{
  top:82px!important;right:30px!important;bottom:auto!important;width:58px;height:58px;
  display:grid!important;place-items:center;background:rgba(7,31,22,.72);border:1px solid rgba(255,255,255,.42);
  color:#fff!important;text-shadow:0 2px 14px rgba(0,0,0,.35);backdrop-filter:blur(3px);
  font:600 26px/1 var(--sans)!important;letter-spacing:-.04em!important;font-variant-numeric:tabular-nums;
  opacity:1!important
}

.buggy-hire{padding:0 0 132px;background:var(--ivory);border-bottom:1px solid var(--line)}
.buggy-card{display:grid;grid-template-columns:minmax(0,.93fr) minmax(420px,1.07fr);min-height:590px;background:var(--forest);color:var(--ivory);overflow:hidden}
.buggy-photo{position:relative;min-height:590px;margin:0;overflow:hidden;background:#173c2d}
.buggy-photo::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);pointer-events:none}
.buggy-photo img{width:100%;height:100%;object-fit:cover;object-position:center 66%;filter:saturate(.94) contrast(1.02)}
.buggy-copy{display:flex;flex-direction:column;justify-content:center;padding:64px clamp(42px,5vw,76px)}
.buggy-copy h2{margin:0;color:var(--ivory);font:400 clamp(54px,5.6vw,78px)/.9 var(--serif);letter-spacing:-.045em}
.buggy-copy h2 em{color:var(--yellow);font-style:italic}
.buggy-copy>p:not(.eyebrow):not(.buggy-note){max-width:560px;margin-top:28px;color:rgba(255,253,248,.72);font-size:17px;line-height:1.72}
.buggy-price{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin:34px 0 28px;padding:22px 0;border-top:1px solid rgba(255,253,248,.2);border-bottom:1px solid rgba(255,253,248,.2)}
.buggy-price span{color:rgba(255,253,248,.68);font:600 11px/1.4 var(--sans);letter-spacing:.16em;text-transform:uppercase}
.buggy-price strong{color:var(--ivory);font:400 clamp(58px,5vw,76px)/.8 var(--serif);letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.buggy-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.buggy-actions .button{min-height:56px}
.buggy-note{color:rgba(255,253,248,.58);font:500 12px/1.5 var(--sans)}
@media(max-width:980px){
  .buggy-hire{padding-bottom:92px}
  .buggy-card{grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);min-height:520px}
  .buggy-photo{min-height:520px}
  .buggy-copy{padding:48px 38px}
  .buggy-copy h2{font-size:clamp(50px,6.8vw,66px)}
}
@media(max-width:760px){
  .worth-pause{height:44px!important;min-width:94px!important;padding-inline:13px!important;font-size:10px!important}
  .hole-map-surface .hole-visual-overlay span{top:68px!important;right:20px!important;width:52px;height:52px;font-size:23px!important}
  .buggy-hire{padding:0 0 76px}
  .buggy-card{grid-template-columns:1fr;min-height:0}
  .buggy-photo{min-height:clamp(340px,92vw,480px)}
  .buggy-photo img{object-position:center 82%}
  .buggy-copy{padding:40px 26px 42px}
  .buggy-copy h2{font-size:clamp(48px,13vw,60px)}
  .buggy-copy>p:not(.eyebrow):not(.buggy-note){margin-top:23px;font-size:16px;line-height:1.65}
  .buggy-price{margin:28px 0 25px}
}
@media(max-width:420px){
  .worth-pause{min-width:90px!important;padding-inline:11px!important;gap:8px}
  .hole-map-surface .hole-visual-overlay span{top:64px!important;right:14px!important;width:48px;height:48px;font-size:21px!important}
  .buggy-hire{padding-bottom:68px}
  .buggy-copy{padding:34px 20px 38px}
  .buggy-copy h2{font-size:47px}
  .buggy-price strong{font-size:58px}
  .buggy-actions{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
  .worth-pause{transition:none!important}
}

/* The closing visitor section now leads directly into the final course image. */
.visit + .final-wrap{padding-top:0!important}

/* Production style block 25 */
/* =========================================================
   V32 — clearer location heading + compact paper-map viewer
   ========================================================= */
.location-head h2{
  line-height:.94!important;
  letter-spacing:-.040em!important;
}
.location-head h2>span{display:block;white-space:nowrap}
.location-head h2>span+span{margin-top:.035em}
.paper-map-trigger{
  appearance:none;width:max-content;max-width:100%;min-height:46px;margin-top:18px;padding:0 18px;
  display:inline-flex;align-items:center;justify-content:center;gap:16px;
  border:1px solid rgba(255,253,248,.34);background:transparent;color:var(--ivory);cursor:pointer;
  font:600 11px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;
  transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease
}
.paper-map-trigger b{font-size:18px;font-weight:400;transition:transform .22s ease}
.paper-map-trigger:hover{background:var(--ivory);border-color:var(--ivory);color:var(--forest)}
.paper-map-trigger:hover b{transform:translateX(4px)}
.paper-map-trigger:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}
body.paper-map-open{overflow:hidden}
body.paper-map-open .mobile-actions{transform:translateY(160%);pointer-events:none}
.paper-map-panel{width:min(820px,94vw);padding:40px 46px 42px}
.paper-map-panel h2{font-size:clamp(48px,4.8vw,68px);line-height:.92}
.paper-map-figure{margin:30px 0 0}
.paper-map-frame{padding:12px;background:#e9e6dc;border:1px solid rgba(var(--forest-rgb),.17);box-shadow:0 18px 40px rgba(8,29,21,.13)}
.paper-map-frame img{width:100%;max-height:60dvh;object-fit:contain;background:#e9e6dc}
.paper-map-figure figcaption{max-width:640px;margin:16px 0 0;color:rgba(var(--forest-rgb),.68);font-size:13px;line-height:1.6}
.paper-map-actions{display:flex;justify-content:flex-end;margin-top:24px}
@media(max-width:760px){
  .location-head h2{font-size:clamp(52px,15vw,62px)!important;line-height:.95!important}
  .location-head h2>span+span{margin-top:.02em}
  .paper-map-trigger{width:100%;margin-top:17px;padding-inline:15px}
  .paper-map-panel{width:100%;max-height:100dvh;padding:30px 18px max(24px,env(safe-area-inset-bottom))}
  .paper-map-panel h2{font-size:clamp(43px,12vw,54px)}
  .paper-map-figure{margin-top:24px}
  .paper-map-frame{padding:7px}
  .paper-map-frame img{max-height:57dvh}
  .paper-map-actions{justify-content:stretch}
  .paper-map-actions .membership-call{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .paper-map-trigger,.paper-map-trigger b{transition:none!important}
}
