/* =====================================================================
   The Golf Place · site theme (Oct 2026)
   Translates the rebrand-demo design scheme onto the live pages.
   Every page's inline CSS was rewritten to use the tokens below, so the
   dark base and the lighter .is-light sections come from one place.
   Loaded after each page's own <style>, so these rules win.
   ===================================================================== */
:root{
  --bg:#0a150f;--bg-2:#0e1b14;
  --t-head:#f3ede0;--t-ink:#f3ede0;--t-body:rgba(243,237,224,.72);--t-soft:rgba(243,237,224,.52);
  --t-em:#cfa96e;--t-goldtext:#cfa96e;
  --s-warm:rgba(243,237,224,.03);--s-parch:rgba(243,237,224,.05);--s-linen:rgba(243,237,224,.065);
  --s-pine:#0e1b14;--s-deep:#08110c;--s-fern:rgba(243,237,224,.12);--s-nav:rgba(10,21,15,.94);
  --ln:243,237,224;
  --th-line:rgba(243,237,224,.1);
  --ease:cubic-bezier(.2,.7,.2,1);
}
/* lighter sections (the demo's .parch / .linen) */
.is-light{
  --t-head:#1f3528;--t-ink:#1a2318;--t-body:#4b5c4c;--t-soft:#607b64;--t-em:#374e3c;--t-goldtext:#8a6c35;
  --s-warm:#fbf8f1;--s-parch:#f3ede0;--s-linen:#ede4d0;--s-pine:#1f3528;--s-deep:#152a1e;--s-fern:#374e3c;
  --ln:31,53,40;--th-line:rgba(31,53,40,.13);
  background-color:#f3ede0 !important;color:#1a2318;
}

html{background:var(--bg)}
body{background:var(--bg) !important;color:var(--t-ink);font-weight:400;-webkit-font-smoothing:antialiased}
::selection{background:rgba(207,169,110,.35)}

/* ---------- type ---------- */
.section-h,.page-hero-h1,.hero-h1,.cta-band-h{font-weight:400;letter-spacing:-.005em}
.section-h em,.cta-band-h em,.page-hero-h1 em{color:var(--t-em) !important}
.hero-h1-sub em,.hero-h1-sub{color:var(--gold-light) !important}
.section-body,.section-sub,.section-lede{color:var(--t-body)}
.label-small,.page-hero-label,.hero-eyebrow,.section-label,.eyebrow{display:inline-flex !important;align-items:center;gap:12px;letter-spacing:.3em !important;color:var(--gold) !important}
.label-small::before,.page-hero-label::before,.hero-eyebrow::before,.section-label::before{content:"";width:28px;height:1px;background:currentColor;flex-shrink:0}
.is-light .label-small,.is-light .section-label{color:#8a6c35 !important}

/* ---------- buttons (demo: squared, 52px, gold with dark ink) ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:12px;font-weight:600;letter-spacing:.2em;padding:16px 30px;min-height:52px;border:1px solid transparent;border-radius:0;transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease)}
.btn:active{transform:translateY(1px)}
.btn-gold{background:var(--gold) !important;color:#0f1f16 !important;border-color:var(--gold) !important}
.btn-gold:hover{background:#e3c789 !important;border-color:#e3c789 !important}
.btn-pine{background:rgba(243,237,224,.07) !important;color:var(--parchment) !important;border:1px solid rgba(243,237,224,.22) !important}
.btn-pine:hover{background:rgba(243,237,224,.12) !important;border-color:var(--gold) !important}
.btn-ghost,.btn-outline,.btn-outline-light{background:transparent !important;color:var(--parchment) !important;border:1px solid rgba(243,237,224,.38) !important}
.btn-ghost:hover,.btn-outline:hover,.btn-outline-light:hover{border-color:var(--gold) !important;color:var(--gold-light) !important;background:transparent !important}
.is-light .btn-pine{background:#1f3528 !important;border-color:#1f3528 !important}
.is-light .btn-pine:hover{background:#374e3c !important}
.is-light .btn-ghost,.is-light .btn-outline{color:#1f3528 !important;border-color:#1f3528 !important}
.is-light .btn-ghost:hover,.is-light .btn-outline:hover{background:#1f3528 !important;color:#f3ede0 !important}

/* ---------- nav ---------- */
.nav{background:rgba(10,21,15,.94) !important;border-bottom:1px solid rgba(243,237,224,.07) !important}
.nav-links a{font-size:10.5px;letter-spacing:.14em;color:rgba(243,237,224,.72);white-space:nowrap}
@media (max-width:1380px){.nav-links a:not(.nav-book):not(.nav-member){padding:0 9px !important;letter-spacing:.11em}.nav-logo-text,.nav-logo-sep{display:none !important}}
@media (max-width:1100px){.nav-links{display:none !important}.nav-hamburger{display:flex !important}.nav-drawer{display:flex !important}}
.nav-links a:hover,.nav-links a[aria-current=page],.nav-links a.active{color:var(--parchment) !important}
.nav-book{background:var(--gold) !important;color:#0f1f16 !important;padding:13px 20px !important;font-size:10.5px !important;letter-spacing:.16em !important;white-space:nowrap}
.nav-book:hover{background:#e3c789 !important}
.nav-member{border:0 !important;color:var(--gold-light) !important;padding:10px 6px !important;font-size:10.5px !important;white-space:nowrap}
.nav-member:hover{background:transparent !important;color:var(--parchment) !important}
.nav-dropdown-menu-inner{background:#102119 !important;border:1px solid rgba(243,237,224,.1);border-radius:0 !important;box-shadow:0 18px 40px rgba(0,0,0,.45) !important}
.nav-dropdown-menu-inner::before{border-bottom-color:#102119 !important}
.nav-dropdown-menu li a{color:rgba(243,237,224,.8) !important}
.nav-dropdown-menu li a:hover{background:rgba(207,169,110,.14) !important;color:var(--parchment) !important}
.nav-drawer{background:#0a150f !important}
.nav-drawer ul li a{font-style:normal !important;display:flex !important;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(243,237,224,.1) !important;opacity:1 !important}
.nav-drawer ul li a::after{content:"\2192";font-family:'Raleway',sans-serif;font-size:16px;color:var(--gold)}

/* ---------- page heroes ---------- */
.page-hero{background:radial-gradient(120% 140% at 0% 0%,#14281c 0%,#0a150f 55%,#060d09 100%) !important;border-bottom:1px solid rgba(243,237,224,.06)}
.page-hero-topo,.page-hero [class*="topo"]{opacity:.07 !important;-webkit-mask-image:linear-gradient(180deg,transparent,#000 25%,#000 75%,transparent);mask-image:linear-gradient(180deg,transparent,#000 25%,#000 75%,transparent)}
.page-hero-h1{text-shadow:0 2px 18px rgba(0,0,0,.4)}
.page-hero-sub{color:rgba(243,237,224,.82) !important}

/* PuttView contour art: barely there, faded at the edges (never on photos) */
[class$="-topo"]:not(.hero-topo):not(.page-hero-topo){opacity:.06 !important;-webkit-mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent);mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent)}
.is-light [class$="-topo"]{opacity:.12 !important}

/* ---------- surfaces ---------- */
[class$="-bg"]{border-top:1px solid transparent}
[class$="-bg"]+[class$="-bg"]:not(.is-light){border-top-color:var(--th-line)}
.cta-band{background:radial-gradient(120% 160% at 100% 100%,#14281c 0%,#0a150f 60%) !important;border-top:1px solid rgba(243,237,224,.07)}
.cta-band-sub{color:rgba(243,237,224,.7) !important}
img{border-radius:0}

/* ---------- footer (demo) ---------- */
footer{background:#0d1c14 !important;border-top:1px solid rgba(243,237,224,.07) !important}
.footer-head{color:var(--gold) !important;font-size:10.5px !important;letter-spacing:.26em !important}
.footer-tag{color:rgba(243,237,224,.62) !important}
footer ul a{color:rgba(243,237,224,.72) !important}
footer ul a:hover{color:var(--parchment) !important}
footer p,footer address,footer li{color:rgba(243,237,224,.68)}
.footer-bottom{color:rgba(243,237,224,.45) !important;border-top-color:rgba(243,237,224,.1) !important}

/* ---------- forms on dark ---------- */
input:not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea{background-color:rgba(243,237,224,.05);color:var(--t-head);border-color:rgba(243,237,224,.22)}
input::placeholder,textarea::placeholder{color:rgba(243,237,224,.38)}
select option{color:#1a2318;background:#fff}
.is-light input:not([type=checkbox]):not([type=radio]),.is-light select,.is-light textarea{background-color:#fff;color:#1a2318;border-color:rgba(31,53,40,.2)}
.is-light input::placeholder,.is-light textarea::placeholder{color:rgba(26,35,24,.4)}

/* ---------- golf ball cursor (desktop) ---------- */
body.has-ball .cursor,body.has-ball .cursor-ring,body.has-ball .cursor-dot{display:none !important}
@media (hover:hover) and (pointer:fine){
  body.has-ball,body.has-ball a,body.has-ball button,body.has-ball summary,body.has-ball label,body.has-ball [onclick]{cursor:none}
  body.has-ball input,body.has-ball textarea,body.has-ball select{cursor:auto}
  .cursor-ball{position:fixed;top:0;left:0;width:26px;height:26px;margin:-13px 0 0 -13px;pointer-events:none;z-index:100000;transition:width .2s,height .2s,margin .2s,opacity .2s;will-change:transform}
  .cursor-ball svg{width:100%;height:100%;display:block}
  body.hovering .cursor-ball{width:36px;height:36px;margin:-18px 0 0 -18px}
  body.typing .cursor-ball{opacity:0}
}

/* =====================================================================
   HOME HERO: video background, left aligned (demo)
   ===================================================================== */
.hero.th-video{background:#000 !important;isolation:isolate}
.th-media{position:absolute;inset:0;z-index:0;background:#000}
.th-media video{width:100%;height:100%;object-fit:cover;display:block}
.th-media::after{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(5,9,6,.95) 0%,rgba(5,9,6,.9) 35%,rgba(5,9,6,.72) 60%,rgba(5,9,6,.42) 85%,rgba(5,9,6,.3) 100%),
  linear-gradient(180deg,rgba(5,9,6,.65) 0%,rgba(5,9,6,0) 22%,rgba(5,9,6,0) 50%,rgba(5,9,6,.75) 82%,#000 100%)}
.hero.th-video .hero-topo{display:none}
.hero.th-video .hero-content{align-items:flex-start !important;text-align:left !important;width:100%;max-width:1240px;margin:0 auto;padding-left:clamp(20px,5vw,72px) !important;padding-right:clamp(20px,5vw,72px) !important}
.hero.th-video .hero-h1,.hero.th-video .hero-h1-sub,.hero.th-video .hero-sub,.hero.th-video .hero-eyebrow{text-shadow:0 2px 18px rgba(0,0,0,.55)}
.hero.th-video .hero-h1{font-size:clamp(44px,7.4vw,104px);line-height:.98}
.hero.th-video .hero-h1-sub{font-size:clamp(42px,7vw,98px);line-height:1}
.hero.th-video .hero-rule{width:56px !important;height:2px !important;background:var(--gold) !important;margin:26px 0 24px !important}
.hero.th-video .hero-sub{margin:0 0 26px !important;max-width:560px !important;color:rgba(243,237,224,.88) !important;font-size:clamp(16px,1.6vw,19px) !important;line-height:1.75 !important}
.hero.th-video .suites-inline-badge{margin:0 0 26px !important}
.hero.th-video .hero-actions{justify-content:flex-start !important}
.hero.th-video .hero-bar{max-width:1240px;width:100%;margin:0 auto;border-top:1px solid rgba(243,237,224,.12);padding:0 clamp(20px,5vw,72px)}
.hero.th-video .hero-bar-item{border-right:0 !important;padding-left:0 !important}
.hero.th-video .bar-num{font-style:normal !important;color:var(--parchment) !important;font-size:clamp(20px,2.4vw,30px) !important}
.hero.th-video .bar-label{color:rgba(243,237,224,.55) !important;letter-spacing:.2em !important}
.hero.th-video .hero-eyebrow{justify-content:flex-start}
/* phones: no video (never downloaded), clean green gradient */
@media (max-width:760px){
  .th-media{background:radial-gradient(120% 90% at 0% 0%,#1d3a28 0%,#0d1c14 55%,#050906 100%)}
  .th-media::after{background:linear-gradient(180deg,rgba(5,9,6,0) 60%,#000 100%)}
  .hero.th-video .hero-actions{flex-direction:column;align-items:stretch !important;width:100%}
  .hero.th-video .hero-bar{padding:0 20px}
}
/* the gold scrolling ticker: calmer, like the demo */
.ticker{background:#0d1c14 !important;border-top:1px solid rgba(243,237,224,.08);border-bottom:1px solid rgba(243,237,224,.08)}
.ticker-track span{color:rgba(243,237,224,.6) !important}
.ticker-track .sep{color:var(--gold) !important}

/* =====================================================================
   NEW: Upcoming events
   ===================================================================== */
.up-events{background:var(--bg-2);padding:clamp(64px,9vw,120px) clamp(20px,5vw,72px);border-top:1px solid rgba(243,237,224,.07)}
.up-inner{max-width:1080px;margin:0 auto}
.up-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:clamp(32px,4vw,52px)}
.up-head .section-h{margin-top:14px}
.up-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.up-grid.n2{grid-template-columns:repeat(2,minmax(0,1fr))}
.up-card{display:flex;flex-direction:column;background:rgba(243,237,224,.04);border:1px solid rgba(243,237,224,.1);text-decoration:none;color:inherit;transition:border-color .25s,transform .25s var(--ease),background .25s}
.up-card:hover{border-color:rgba(207,169,110,.55);transform:translateY(-3px);background:rgba(243,237,224,.06)}
.up-img{position:relative;aspect-ratio:16/9;overflow:hidden;background:#0e1b14}
.up-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.up-card:hover .up-img img{transform:scale(1.03)}
.up-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,9,6,0) 45%,rgba(5,9,6,.55) 100%)}
.up-date{position:absolute;top:16px;left:16px;z-index:1;background:var(--gold);color:#0f1f16;text-align:center;padding:8px 12px;min-width:58px}
.up-date small{display:block;font-size:9.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.up-date b{display:block;font-family:'Gloock',serif;font-weight:400;font-size:28px;line-height:1.05}
.up-body{padding:22px 24px 26px;display:flex;flex-direction:column;gap:10px;flex:1}
.up-where{font-size:10.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.up-body h3{font-family:'Gloock',serif;font-weight:400;font-size:clamp(22px,2.2vw,27px);line-height:1.15;color:var(--parchment)}
.up-body p{font-size:15px;line-height:1.65;color:rgba(243,237,224,.72)}
.up-cta{margin-top:auto;padding-top:8px;font-size:11.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-light)}
.up-cta::after{content:" \2192"}
@media (max-width:980px){.up-grid,.up-grid.n2{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.up-grid,.up-grid.n2{grid-template-columns:1fr}}

/* =====================================================================
   NEW: membership selling (perks grid + private club logo strip)
   ===================================================================== */
.th-perks-wrap{margin:clamp(40px,5vw,64px) 0 clamp(36px,4vw,52px)}
.th-perks-h{font-family:'Gloock',serif;font-weight:400;font-size:clamp(26px,3vw,38px);line-height:1.15;color:var(--parchment);margin:14px 0 8px}
.th-perks-h em{color:var(--gold-light)}
.th-perks-sub{color:rgba(243,237,224,.72);max-width:620px;font-size:16px;line-height:1.75;margin-bottom:28px}
.perks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(243,237,224,.12);border-left:1px solid rgba(243,237,224,.12)}
.perks>div{padding:clamp(24px,2.8vw,38px);border-right:1px solid rgba(243,237,224,.12);border-bottom:1px solid rgba(243,237,224,.12)}
.perks .big{font-family:'Gloock',serif;font-size:clamp(42px,4.6vw,64px);line-height:1;color:var(--gold-light)}
.perks h3{font-family:'Gloock',serif;font-weight:400;font-size:clamp(20px,1.9vw,24px);color:var(--parchment);margin:14px 0 8px}
.perks p{color:rgba(243,237,224,.72);font-size:15px;line-height:1.65}
@media (max-width:900px){.perks{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.perks{grid-template-columns:1fr}.perks .big{font-size:44px}}
.logo-strip{display:block;margin:40px auto 0;max-width:1000px;text-align:center;text-decoration:none;color:inherit}
.logo-strip .ls-h{display:block;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(243,237,224,.6);margin-bottom:18px}
.logo-strip .ls-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px 30px}
.logo-strip img{height:40px;width:auto;max-width:96px;object-fit:contain;filter:brightness(0) invert(1);opacity:.62;transition:opacity .2s}
.logo-strip:hover img{opacity:.9}
.logo-strip .ls-link{display:inline-block;margin-top:18px;font-size:11.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-light);border-bottom:1px solid currentColor;padding-bottom:3px}
@media (max-width:640px){.logo-strip img{height:34px;max-width:84px}.logo-strip .ls-row{gap:16px 22px}}
.th-join{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:36px}
.th-join-note{text-align:center;font-size:13px;color:rgba(243,237,224,.55);margin-top:12px}
/* membership page: private club logo grid */
.club-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:36px}
@media (max-width:900px){.club-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:520px){.club-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.club-tile{height:150px;display:grid;grid-template-rows:1fr auto;justify-items:center;align-items:center;gap:8px;padding:18px 12px 14px;background:rgba(243,237,224,.04);border:1px solid rgba(243,237,224,.1);text-align:center;transition:border-color .2s}
.club-tile:hover{border-color:rgba(184,151,90,.55)}
.club-tile img{width:auto;height:auto;max-width:80%;max-height:72px;object-fit:contain;filter:brightness(0) invert(1);opacity:.8}
.club-tile b{font-size:11px;font-weight:600;letter-spacing:.04em;line-height:1.3;color:rgba(243,237,224,.7)}
.club-more{border-style:dashed;border-color:var(--gold);text-decoration:none;color:inherit;grid-template-rows:1fr;align-content:center}
.club-more b{display:block;font-family:'Gloock',serif;font-weight:400;font-size:19px;color:var(--gold-light);margin-bottom:6px;letter-spacing:0}
.club-more small{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(243,237,224,.6)}
@media (max-width:640px){.club-tile{height:128px}.club-tile img{max-height:56px}}

/* auto-expiring promo blocks stay hidden once their date passes (theme.js) */
[data-expired]{display:none !important}

/* old decorative ellipse rings: keep them as a whisper on dark */
[style*="pointer-events:none"] > svg,[class$="-topo"] > svg{opacity:.35}
.up-img.up-cream{background:#f5efe1}
.up-img.up-cream img{object-fit:contain;padding:14px 0 10px}
.up-img.up-cream::after{display:none}

/* small solid pieces that must stay opaque on dark */
.nav-hamburger span{background:#f3ede0 !important}
.btn-parchment{background:#f3ede0 !important;color:#0f1f16 !important;border-color:#f3ede0 !important}
.btn-parchment:hover{background:#e3c789 !important;border-color:#e3c789 !important}
.modal{background:#102119 !important;border:1px solid rgba(243,237,224,.12)}
/* facility: Club Suites band, gold accent on dark instead of a solid gold block */
.coming-soon-band{background:radial-gradient(120% 160% at 100% 0%,#2a2414 0%,#0e1b14 55%,#0a150f 100%) !important;border-top:1px solid rgba(207,169,110,.35);border-bottom:1px solid rgba(207,169,110,.35)}
.coming-soon-tag{color:var(--gold) !important}
.coming-soon-h{color:#f3ede0 !important}.coming-soon-h em{color:var(--gold-light) !important}
.coming-soon-sub{color:rgba(243,237,224,.75) !important}
.coming-soon-band .btn-pine{background:var(--gold) !important;color:#0f1f16 !important;border-color:var(--gold) !important}
