:root{--bg:#111214;--panel:#1d1e20;--panel2:#29292b;--lime:#C5A46D;--text:#f3f4ee;--muted:#ada9a2;--line:#41403d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand,.btn,.kicker{font-family:Manrope,sans-serif}h1,h2{font-weight:800;letter-spacing:-.07em;line-height:1.06}h2{font-size:clamp(3rem,6vw,6.3rem)}em{color:var(--lime);font-style:normal}.site-header{height:90px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff17;position:relative;z-index:10;background:#111214}.brand{display:flex;align-items:center;gap:13px}.brand-mark{font-size:37px;letter-spacing:-.13em;font-weight:800;line-height:1}.mark-dot{color:var(--lime)}.brand-text{font-size:14px;font-weight:800;letter-spacing:.08em;line-height:1.1}.brand-text small{display:block;font-size:9px;letter-spacing:.28em;margin-top:5px;color:var(--muted)}nav{display:flex;align-items:center;gap:34px}nav>a{font-size:12px;font-weight:700}nav>a:not(.nav-cta):hover{color:var(--lime)}.nav-cta{background:var(--lime);color:#171512;padding:17px 20px;display:flex;gap:22px}.menu-toggle{display:none}.hero{position:relative;display:grid;grid-template-columns:55% 45%;min-height:720px;overflow:hidden}.hero-content{padding:115px 5% 60px 9%;position:relative;z-index:2}.eyebrow,.kicker{font-size:11px;letter-spacing:.19em;font-weight:800;color:var(--lime)}.eyebrow{display:flex;align-items:center;gap:12px}.green-line{height:2px;width:24px;background:var(--lime)}.eyebrow-sep{color:#657064}.hero h1{font-size:clamp(3.5rem,6.6vw,7.6rem);margin:38px 0 28px;white-space:nowrap}.hero p{color:#bbc4b9;line-height:1.8;max-width:480px;font-size:15px}.hero-actions{display:flex;gap:12px;margin:36px 0 75px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 23px;font-size:12px;font-weight:800;letter-spacing:.03em;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px)}.btn-primary{background:var(--lime);color:#171512}.btn-outline{border:1px solid #7d7263;color:var(--text)}.hero-meta{display:flex;align-items:center;gap:28px}.hero-meta div{display:flex;flex-direction:column;gap:6px}.hero-meta strong{font-size:24px;font-family:Manrope,sans-serif}.hero-meta small{font-size:9px;letter-spacing:.12em;color:var(--muted)}.meta-divider{height:35px;width:1px;background:#4d5a4d}.hero-image{position:relative;overflow:hidden;min-height:660px;background:linear-gradient(140deg,#18251b,#050908 80%);border-left:1px solid #3e513e}.hero-image:before{content:'';position:absolute;top:12%;left:7%;width:87%;height:59%;border:13px solid #050706;background:#0b1110;box-shadow:0 0 0 3px #3a433b,0 0 100px #C5A46D1a}.screen-scene{position:absolute;top:calc(12% + 13px);left:calc(7% + 13px);width:calc(87% - 26px);height:calc(59% - 26px);overflow:hidden;background:linear-gradient(#6f9fa7 0%,#b4c9b0 51%,#467c43 52%,#244e29 100%)}.scene-sky{position:absolute;inset:0 0 47%;background:radial-gradient(ellipse at 70% 15%,#d6dfbd,#789b9a 75%)}.scene-hills{position:absolute;top:42%;left:-10%;width:120%;height:28%;border-radius:50% 50% 0 0;background:#244b32}.scene-fairway{position:absolute;bottom:-35%;left:22%;width:62%;height:77%;border-radius:50% 50% 0 0;background:linear-gradient(90deg,#4b8b4a,#85a75e,#478445);transform:perspective(200px) rotateX(12deg)}.scene-pin{position:absolute;top:51%;left:57%;height:17%;border-left:2px solid #f5f5e9}.scene-pin:before{content:'';position:absolute;top:0;left:0;width:17px;height:11px;background:#f2f3e6;clip-path:polygon(0 0,100% 40%,0 100%)}.floor-perspective{position:absolute;left:-20%;right:-20%;bottom:-35%;height:65%;background:repeating-linear-gradient(100deg,#0c1a12,#18291c 17%,#111b14 30%);transform:perspective(380px) rotateX(56deg);border-top:4px solid #293c2a}.ball{position:absolute;bottom:18%;left:50%;width:9px;height:9px;background:#fff;border-radius:50%;box-shadow:0 0 15px #fff}.hero-image-caption{position:absolute;right:8%;bottom:6%;font-size:10px;letter-spacing:.15em;color:#d7e6d0;display:flex;align-items:center;gap:10px}.caption-pulse{height:8px;width:8px;background:var(--lime);border-radius:50%;box-shadow:0 0 10px var(--lime)}.vertical-label{position:absolute;right:10px;top:110px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.24em;color:#c1d1bd}.ticker{background:var(--lime);color:#171512;display:flex;justify-content:space-around;gap:22px;padding:22px 12px;align-items:center;font:800 12px Manrope,sans-serif;letter-spacing:.12em;white-space:nowrap;overflow:hidden}.ticker b{font-size:22px}.section{padding:125px 9%}.section-intro{display:flex;justify-content:space-between;align-items:end;gap:60px}.section-intro p{max-width:370px;line-height:1.9;color:var(--muted)}.section h2{margin:25px 0 0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:70px}.feature-card{min-height:310px;background:var(--panel);border:1px solid var(--line);padding:28px;display:flex;flex-direction:column}.feature-num{font-size:11px;color:#9b8a74}.feature-icon{font-size:54px;color:var(--lime);margin:auto 0 30px}.feature-card h3{font-size:20px;letter-spacing:-.03em}.feature-card p{font-size:14px;line-height:1.7;color:var(--muted);margin-bottom:0}.pricing-section{background:#202022;padding:110px 9%;display:grid;grid-template-columns:1fr 420px;gap:80px;align-items:center}.pricing-copy h2{margin:25px 0}.pricing-copy>p{max-width:400px;color:var(--muted);line-height:1.8}.pricing-copy ul{list-style:none;padding:0;margin:35px 0}.pricing-copy li{margin:15px 0;font-size:14px}.pricing-copy li span{color:var(--lime);margin-right:14px}.price-card{background:#F0E8DA;color:#231e18;padding:38px}.price-card-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:800}.price-badge{border:1px solid #8d9e84;border-radius:20px;padding:8px;font-size:9px}.price{font:800 clamp(6rem,12vw,9rem) Manrope,sans-serif;letter-spacing:-.1em;margin:25px 0 0}.price>span{font-size:45px;vertical-align:top;letter-spacing:0}.price small{font-size:17px;letter-spacing:0;font-weight:600;color:#665e52}.price-card>p{font-size:14px;color:#655d52;margin:0 0 32px}.price-card .btn{display:flex;background:#25211b;color:#FFF7EA}.price-note{display:block;color:#665e52;margin-top:20px;font-size:11px;line-height:1.5}.steps-section{text-align:center}.steps-section h2{margin:25px 0 65px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;text-align:left}.steps article{border-top:1px solid #6b5d4b;padding-top:25px}.steps article>span{font:800 60px Manrope;color:var(--lime)}.steps h3{margin-top:35px}.steps p{color:var(--muted);line-height:1.8;font-size:14px}.membership{display:grid;grid-template-columns:1fr 1fr;background:#272524}.membership>div:first-child{padding:110px 14% 110px 18%}.membership h2{margin:30px 0}.membership p{color:#d0c6b8;line-height:1.9;max-width:390px}.text-link{display:inline-block;margin-top:22px;border-bottom:1px solid var(--lime);color:var(--lime);font-weight:800;font-size:12px;padding-bottom:10px}.membership-art{background:radial-gradient(circle at center,#544636,#152019 65%);display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:400px}.membership-art span{font:800 clamp(8rem,20vw,20rem) Manrope;letter-spacing:-.16em;color:#C5A46D;opacity:.8}.membership-art small{letter-spacing:.3em;font-size:11px}.faq-section{display:grid;grid-template-columns:1fr 1fr;gap:80px}.faq-list{padding-top:10px}.faq-list details{border-bottom:1px solid #49433b;padding:23px 0}.faq-list summary{display:flex;justify-content:space-between;cursor:pointer;list-style:none;font-weight:700;font-size:15px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--lime);font-size:22px}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{font-size:14px;color:var(--muted);line-height:1.8;margin:15px 20px 0 0}.booking-section{text-align:center;padding:125px 20px;background:radial-gradient(ellipse at 50% 100%,#493D2E,#17201B 70%)}.booking-section h2{margin:25px 0}.booking-section p{color:var(--muted)}.booking-section .btn{margin-top:25px}.booking-section small{display:block;color:#b8a995;margin-top:20px}footer{padding:55px 9% 30px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-top p{font-size:12px;letter-spacing:.1em;color:var(--muted)}.footer-bottom{border-top:1px solid #49433b;margin-top:50px;padding-top:25px;font-size:10px;letter-spacing:.1em;color:var(--muted)}.footer-bottom a{color:var(--lime)}@media(max-width:1050px){nav{gap:15px}.hero-content{padding-left:6%}.hero h1{font-size:clamp(3.3rem,6vw,6rem)}.pricing-section{grid-template-columns:1fr 370px;gap:30px}.section{padding:90px 6%}}@media(max-width:760px){.site-header{height:75px}.menu-toggle{display:block;border:0;background:none;color:var(--lime);font-size:27px}nav{display:none;position:absolute;top:75px;left:0;right:0;background:#1c1c1e;padding:24px 5%;flex-direction:column;align-items:stretch;gap:22px;border-bottom:1px solid var(--line)}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-content{padding:80px 6% 35px}.hero h1{font-size:clamp(3.2rem,11vw,6rem);white-space:normal}.hero-actions{margin-bottom:50px}.hero-image{min-height:400px;border-left:0}.hero-meta{gap:15px;flex-wrap:wrap}.hero-meta strong{font-size:20px}.hero-meta small{font-size:8px}.vertical-label{display:none}.ticker{justify-content:flex-start}.section-intro,.footer-top,.footer-bottom{display:block}.feature-grid,.steps,.pricing-section,.membership,.faq-section{grid-template-columns:1fr}.feature-grid{margin-top:40px}.feature-card{min-height:240px}.pricing-section{padding:80px 6%}.price-card{max-width:480px}.section{padding:80px 6%}.steps{gap:30px}.membership>div:first-child{padding:80px 8%}.membership-art{min-height:260px}.faq-section{gap:35px}.footer-top p{margin-top:30px}.footer-bottom>*{display:block;margin:15px 0}.hero .btn{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* Smooth Swing official brand assets */
.brand-logo{display:block;width:210px;max-height:67px;object-fit:contain;object-position:left center;mix-blend-mode:screen}
.site-header .brand{flex-shrink:0}
.hero-image.real-photo{background:#101011 url("assets/smooth-swing-simulator.jpg") center center/cover no-repeat;min-height:650px}
.hero-image.real-photo::before{display:none}
.hero-image.real-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.65))}
.hero-image.real-photo .hero-image-caption{z-index:1;color:white}
.membership-art{padding:45px}.membership-art img{width:min(100%,440px);height:auto;mix-blend-mode:screen}.membership-art small{margin-top:15px}
@media(max-width:760px){.brand-logo{width:165px;max-height:58px}.hero-image.real-photo{min-height:390px;background-position:center center}}

/* Champagne gold finishing touches */
.hero-glow{background:radial-gradient(circle,#C5A46D15,transparent 65%)}
:focus-visible{outline:3px solid #C5A46D;outline-offset:3px}

/* Membership tiers */
.membership-plans{background:#242323}.membership-heading{max-width:720px;margin-bottom:45px}.membership-heading h2{margin:22px 0}.membership-heading p,.membership-note{color:var(--muted);line-height:1.8}.membership-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.membership-plan{border:1px solid #64543e;background:#171719;padding:38px;display:flex;flex-direction:column;gap:22px}.gold-plan{border-top:5px solid #C5A46D}.silver-plan{border-top:5px solid #c6c9ce}.plan-label{font:800 13px Manrope,sans-serif;letter-spacing:.15em;color:#C5A46D}.silver-plan .plan-label{color:#d3d8dd}.plan-price{font:800 clamp(2.7rem,5vw,4.2rem) Manrope,sans-serif;letter-spacing:-.06em}.plan-price span{font:500 15px 'DM Sans',sans-serif;letter-spacing:0;color:var(--muted)}.membership-plan ul{list-style:none;margin:0;padding:0}.membership-plan li{padding:14px 0;border-bottom:1px solid #ffffff1c;line-height:1.5}.membership-plan li:before{content:'✓';color:#C5A46D;margin-right:10px}.silver-plan li:before{color:#d3d8dd}.plan-extra{font-size:13px;color:var(--muted);line-height:1.6;margin:0}.membership-plan .btn{margin-top:auto}.membership-note{margin:26px 0 0;font-size:12px}@media(max-width:760px){.membership-grid{grid-template-columns:1fr}.membership-plan{padding:27px}}

/* Contact details */
.contact-section { background:#171b1b; }
.contact-details { max-width:750px; margin-top:24px; display:grid; gap:12px; }
.contact-details p { margin:0; line-height:1.75; }
.contact-details strong { color:#c5a46d; }
.contact-details a { color:#f4f0e9; text-decoration:underline; text-decoration-color:#c5a46d; text-underline-offset:4px; overflow-wrap:anywhere; }
.contact-details a:hover { color:#c5a46d; }

/* Hero refresh: actual full enclosure visible beside headline */
.hero{grid-template-columns:minmax(0,49%) minmax(0,51%);min-height:650px;align-items:stretch}
.hero-content{padding:86px 4% 52px 9%}
.hero h1{font-size:clamp(3.3rem,5.45vw,6.5rem);margin:28px 0 22px}
.hero-actions{margin:26px 0 43px}
.hero-image.real-photo{background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent 30%),url("assets/hero-enclosure.jpg");background-position:center center;background-size:cover;min-height:650px}
.hero-image.real-photo::after{display:none}
.hero-image-caption{background:#121212c9;padding:12px 14px;border:1px solid #C5A46D66;bottom:5%;right:5%}
@media(max-width:1100px){.hero{grid-template-columns:52% 48%}.hero h1{font-size:clamp(3rem,5.1vw,5.4rem)}.hero-content{padding-left:6%}.hero-meta{gap:14px}}
@media(max-width:760px){.hero{grid-template-columns:1fr;min-height:auto}.hero-content{padding:62px 6% 35px}.hero h1{font-size:clamp(3.1rem,11vw,5.5rem)}.hero-image.real-photo{min-height:300px;aspect-ratio:1.7;background-position:center center}.hero-actions{margin-bottom:32px}}

/* Centered, text-only homepage hero */
.hero{display:flex;justify-content:center;align-items:center;min-height:640px;text-align:center;background:radial-gradient(ellipse at 50% 42%,#29251f 0%,#161719 52%,#111214 85%)}
.hero-content{width:100%;max-width:1050px;margin:0 auto;padding:95px 30px 85px;display:flex;flex-direction:column;align-items:center}
.hero .eyebrow{justify-content:center;flex-wrap:wrap;line-height:1.8}
.hero h1{font-size:clamp(3.4rem,8vw,7.7rem);white-space:normal;margin:32px 0 24px}
.hero p{max-width:620px;margin:0 auto;text-align:center}
.hero-actions{justify-content:center;margin:34px 0 50px}
.hero-meta{justify-content:center;flex-wrap:wrap}
@media(max-width:760px){.hero{min-height:auto}.hero-content{padding:75px 20px 65px}.hero h1{font-size:clamp(2.9rem,11vw,5.5rem)}.hero-actions{margin:30px 0 38px}.hero-meta{gap:14px}.hero-meta strong{font-size:18px}}

/* Actual facility photo below the centered homepage headline */
.facility-photo-section{padding:82px max(6%,calc((100% - 1200px)/2)) 95px;background:#19191b;text-align:center}
.facility-photo-heading{max-width:780px;margin:0 auto 32px}
.facility-photo-heading h2{font-size:clamp(2.2rem,4.8vw,4.4rem);margin:17px 0 16px}
.facility-photo-heading p{color:var(--muted);line-height:1.7}
.facility-photo{margin:0;border:1px solid #66533c;background:#101112;padding:10px;box-shadow:0 22px 60px #0005}
.facility-photo img{display:block;width:100%;height:auto;max-height:680px;object-fit:contain}
.facility-photo figcaption{padding:15px 8px 7px;color:#bcb5aa;font-size:12px}
@media(max-width:760px){.facility-photo-section{padding:60px 5% 65px}.facility-photo{padding:6px}.facility-photo-heading h2{font-size:clamp(2rem,8vw,3rem)}}


/* First-time booking account setup */
.first-booking-section{padding:90px 6%;background:#171719}
.first-booking-card{max-width:1050px;margin:0 auto;padding:clamp(28px,5vw,58px);border:1px solid #756044;background:linear-gradient(135deg,#222120 0%,#171719 72%);box-shadow:0 22px 60px #0004}
.first-booking-heading{text-align:center;max-width:790px;margin:0 auto 38px}
.first-booking-heading h2{font-size:clamp(2.2rem,5vw,4.3rem);margin:18px 0}
.first-booking-heading p,.account-step p,.first-booking-tip{color:var(--muted);line-height:1.8}
.first-booking-lead{max-width:700px;margin:0 auto}
.account-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.account-step{display:flex;align-items:flex-start;gap:20px;padding:25px;background:#111214;border:1px solid #ffffff1c}
.account-step-number{font:800 32px Manrope,sans-serif;color:var(--lime);line-height:1}
.account-step h3{font-size:15px;letter-spacing:.08em;margin:0 0 9px}
.account-step p{font-size:14px;margin:0}
.first-booking-good-news{margin-top:22px;padding:20px 23px;background:#C5A46D18;border-left:3px solid var(--lime);color:#e9e3d9;line-height:1.8}
.first-booking-good-news strong,.first-booking-tip strong{color:var(--lime)}
.first-booking-tip{margin:22px 0 0;font-size:14px}
.first-booking-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:28px;padding-top:22px;border-top:1px solid #ffffff20}
.first-booking-footer p{margin:0;color:#e8e2d8;font-weight:600}
.first-booking-footer .btn{flex-shrink:0}
@media(max-width:760px){.first-booking-section{padding:60px 5%}.account-steps{grid-template-columns:1fr}.first-booking-footer{align-items:flex-start;flex-direction:column}.first-booking-card{padding:27px 20px}}
