/* Fonts are served from this site: no Google request, no render-blocking @import. */
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/dm-sans-normal-400.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/fonts/playfair-display-normal-400.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400 500;font-display:swap;src:url(/assets/fonts/playfair-display-italic-400.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--ink:#101e18;--deep:#0c1812;--green:#183a2b;--gold:#d7b474;--paper:#f5f2eb;--muted:#5c6359;--line:#d9dfd4;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:var(--sans);background:var(--paper);line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}img{display:block;max-width:100%}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08;font-weight:400}h1,h2{font-family:var(--serif)}h1{font-size:clamp(3rem,5.6vw,5.8rem);letter-spacing:-.035em}h2{font-size:clamp(2.3rem,4vw,4rem);letter-spacing:-.03em}h3{font-size:1.45rem;font-family:var(--serif)}p{margin-bottom:1.25rem}a:hover{color:#a57b37}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ad843e;outline-offset:5px}[hidden]{display:none!important}.wrap{width:min(1280px,calc(100% - 96px));margin:auto}.section{padding:100px 0}.eyebrow{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;display:flex;align-items:center;gap:12px;margin:0 0 24px}.eyebrow::before{content:'';width:27px;height:1px;background:currentColor;opacity:.6}.gold{color:var(--gold)}.serif{font-family:var(--serif)}.italic{font-style:italic}.muted{color:var(--muted)}.lead{font-size:1.05rem;line-height:1.8;max-width:580px}.text-link{font-size:.8rem;display:inline-flex;align-items:center;gap:16px;border-bottom:1px solid currentColor;padding-bottom:6px;font-weight:600}.arrow{font-family:Arial,sans-serif;font-size:1.2rem;line-height:1}.button{display:inline-flex;justify-content:center;align-items:center;gap:20px;border:1px solid transparent;border-radius:2px;min-height:48px;padding:14px 23px;font-size:.76rem;letter-spacing:.03em;font-weight:600;transition:background .2s,color .2s}.button-gold{background:var(--gold);color:var(--deep)}.button-green{background:var(--green);color:white}.button-outline{border-color:#ffffff50;color:white}.button-paper{border-color:var(--line);color:var(--ink)}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.skip-link{position:fixed;left:16px;top:-100px;background:white;padding:12px;z-index:99}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;background:var(--deep);color:#f7f3e8;z-index:20;border-bottom:1px solid #ffffff12}.header-inner{height:91px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{width:63px;height:63px;object-fit:contain;border-radius:50%}.brand-name{font-size:1.05rem;font-family:var(--serif);line-height:1.35}.brand-name small{font-family:var(--sans);display:block;font-size:.51rem;letter-spacing:.26em;text-transform:uppercase;color:#cdbd9f;margin-top:3px}.site-nav{display:flex;align-items:center;gap:29px;font-size:.74rem}.site-nav a{white-space:nowrap}.site-nav a[aria-current=page]{color:var(--gold)}.site-nav .button{color:var(--deep);margin-left:5px;font-size:.7rem;min-height:41px;padding:10px 17px}.menu-toggle{display:none;border:0;background:none;color:white;width:44px;height:44px;font-size:1.45rem}.hero{position:relative;background:var(--deep);color:white;min-height:680px;isolation:isolate;overflow:hidden}.hero-scene{position:absolute;inset:0;z-index:-2;overflow:hidden}.hero-scene img{position:absolute;top:50%;transform:translateY(-50%);width:100%;height:330%;object-fit:cover;filter:brightness(.66) saturate(.7)}.hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,19,12,.96) 0%,rgba(8,19,12,.84) 28%,rgba(8,19,12,.2) 72%),linear-gradient(0deg,rgba(8,19,12,.7),transparent 55%)}.hero-inner{padding:92px 0 40px}.hero .eyebrow{color:var(--gold)}.hero h1{max-width:750px;margin-bottom:25px}.hero h1 em{color:var(--gold)}.hero .lead{color:#d3d8cf;max-width:470px;font-size:.97rem}.hero-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff25;padding-top:23px;margin-top:70px;gap:25px;font-size:.68rem;color:#dddcd0}.hero-bottom p{margin:0}.hero-bottom span{color:var(--gold);margin-right:10px}.hero-seal{position:absolute;right:7%;top:100px;width:106px;height:106px;border:1px solid #dfc08966;border-radius:50%;display:grid;place-content:center;text-align:center;transform:rotate(10deg);color:#efe2bf;background:#0a1b1066;font-size:.55rem;letter-spacing:.15em;text-transform:uppercase}.hero-seal strong{font-family:var(--serif);font-weight:400;font-size:2rem;letter-spacing:0;line-height:1.35}.facts-strip{background:#18372a;color:#f5f2e8}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding:28px 0}.fact{text-align:center;border-right:1px solid #ffffff20;padding:5px 20px}.fact:last-child{border:0}.fact strong{font-family:var(--serif);font-size:1.5rem;font-weight:400;display:block}.fact small{font-size:.63rem;letter-spacing:.11em;color:#b8c7ba;text-transform:uppercase}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:48px}.section-heading h2{max-width:700px;margin-bottom:0}.section-heading>p{max-width:330px;font-size:.86rem;color:var(--muted);margin-bottom:6px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.section-intro{max-width:610px}.section-intro h2{margin-bottom:24px}.photo-box{position:relative;overflow:hidden;min-height:490px;background:#182c20}.interior-photo{position:absolute;top:50%;transform:translateY(-50%);height:330%;width:100%;object-fit:cover}.photo-caption{position:absolute;bottom:0;left:0;right:0;padding:23px 25px;background:linear-gradient(0deg,#08190eed,#08190e00);color:white;font-size:.67rem;letter-spacing:.08em}.feature-list{padding:0;margin:28px 0 0;list-style:none}.feature-list li{display:flex;gap:15px;align-items:start;padding:15px 0;border-top:1px solid var(--line);font-size:.83rem}.feature-list .num{color:#76602f;font-size:.65rem;padding-top:4px}.feature-list strong{display:block;font-weight:600}.feature-list p{color:var(--muted);font-size:.77rem;margin:4px 0 0}.coaching-section{background:#eeeae1}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.plan-card{position:relative;padding:38px 40px;background:var(--paper);border:1px solid #d2d5c9}.plan-card.dark{background:var(--green);color:#fff;border-color:var(--green)}.plan-card .eyebrow{margin-bottom:24px}.plan-card h3{font-size:2.15rem;margin-bottom:14px}.plan-card .description{font-size:.86rem;color:var(--muted);max-width:440px;min-height:55px}.plan-card.dark .description{color:#ccd9cd}.plan-price{font-family:var(--serif);font-size:2.9rem;line-height:1.2;margin:28px 0 8px}.plan-price span{font-family:var(--sans);font-size:.65rem;letter-spacing:.05em;margin-right:7px}.plan-duration{font-size:.7rem;color:var(--muted)}.plan-card.dark .plan-duration{color:#c5d3c4}.plan-card ul{list-style:none;padding:18px 0 0;margin:20px 0 30px;border-top:1px solid #d0d6cb}.plan-card li{font-size:.8rem;padding:6px 0;display:flex;gap:12px}.plan-card li::before{content:'✓';color:#76602f}.plan-card.dark li::before{color:var(--gold)}.plan-card.dark ul{border-color:#ffffff25}.plan-card .button{width:100%;justify-content:space-between}.small-note{font-size:.73rem;color:var(--muted);margin:22px 0 0}.coaching-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;padding-top:45px;margin-top:45px;border-top:1px solid var(--line)}.step-number{color:#76602f;font-size:.7rem;letter-spacing:.1em;margin-bottom:15px}.coaching-steps h3{font-size:1.4rem;margin-bottom:13px}.coaching-steps p{font-size:.82rem;color:var(--muted);margin:0}.dark-section{background:var(--deep);color:#fff}.dark-section .muted,.dark-section p{color:#c0cabf}.dark-section .eyebrow{color:var(--gold)}.dark-section .text-link{color:var(--gold)}.community-photo{width:100%;height:510px;object-fit:cover;object-position:center 35%}.quote-line{font-family:var(--serif);font-size:1.7rem;color:#e7d3ae!important;line-height:1.4;border-left:1px solid var(--gold);padding-left:25px;margin:32px 0}.amenities-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.amenity{padding:38px 30px 32px;border-right:1px solid var(--line)}.amenity:first-child{padding-left:0}.amenity:last-child{border:0}.amenity .icon{font-size:1.6rem;color:#76602f;display:block;margin-bottom:26px}.amenity h3{font-size:1.8rem;margin-bottom:16px}.amenity p{font-size:.83rem;color:var(--muted);margin-bottom:20px}.amenity .meta{font-size:.67rem;letter-spacing:.08em;text-transform:uppercase}.visit-section{background:#e9e8de}.visit-section .split{gap:55px}.address-card{border:1px solid #d0d2c3;padding:38px;background:#f8f5ee}.address-card h3{font-size:1.7rem;margin-bottom:22px}.address-card dl{margin:0}.address-card dt{font-size:.64rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-top:23px;color:#76602f}.address-card dd{margin:7px 0;font-size:.87rem}.address-card .phone{font-family:var(--serif);font-size:1.65rem}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:0}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:25px;padding:22px 0;font-size:.91rem;font-weight:500}summary::-webkit-details-marker{display:none}summary::after{content:'+';font-size:1.3rem;font-weight:400;color:#76602f;line-height:1}details[open] summary::after{content:'−'}details p{max-width:900px;font-size:.86rem;color:var(--muted);padding-right:30px;margin-bottom:22px}.footer{background:var(--deep);color:#fff;padding:59px 0 25px}.footer-top{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:50px;margin-bottom:47px}.footer .brand{margin-bottom:20px}.footer p{font-size:.78rem;color:#aebbae;max-width:330px}.footer h3{font-family:var(--sans);font-size:.64rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:22px}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin:10px 0;font-size:.77rem;color:#c6cec3}.footer-bottom{border-top:1px solid #ffffff20;padding-top:23px;display:flex;justify-content:space-between;gap:25px;font-size:.64rem;color:#a8b3a5}.page-hero{background:var(--deep);color:#fff;padding:72px 0 70px;position:relative;overflow:hidden}.page-hero .eyebrow{color:var(--gold)}.page-hero h1{font-size:clamp(2.8rem,5vw,5.25rem);max-width:940px;margin-bottom:26px}.page-hero p{color:#c4cfbf;max-width:720px;font-size:.96rem;margin:0}.breadcrumb{font-size:.65rem;color:#8d9e8b;display:flex;gap:12px;margin-bottom:32px}.page-hero .hero-dot{position:absolute;width:240px;height:240px;border:1px solid #d5b67920;border-radius:50%;right:-30px;top:70px}.page-hero .hero-dot::before{content:'';position:absolute;inset:30px;border:1px solid #d5b67920;border-radius:50%}.schedule-strip{display:flex;gap:24px;flex-wrap:wrap;font-size:.75rem;border:1px solid var(--line);padding:20px 26px;margin-bottom:35px;background:#fff8}.schedule-strip span{padding-right:24px;border-right:1px solid var(--line)}.schedule-strip span:last-child{border:0;padding:0}.policy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.policy-card{padding:27px;background:#eaece2}.policy-card h3{font-size:1.35rem}.policy-card p{font-size:.81rem;color:var(--muted);margin:0}.form-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:75px;align-items:start}.form-aside{position:sticky;top:130px}.form-aside h2{font-size:3.2rem;margin-bottom:25px}.form-aside p{font-size:.87rem;color:var(--muted)}.form-panel{background:#fffdf7;padding:37px;border:1px solid var(--line)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.75rem;font-weight:600}.field label small{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;border:1px solid #ccd3c5;border-radius:1px;background:#fffefa;color:var(--ink);padding:11px 12px;font-size:.84rem;min-height:47px}textarea{resize:vertical;min-height:110px}.form-panel .button{width:100%;margin-top:26px}.form-help{font-size:.71rem;color:var(--muted);margin:18px 0 0;line-height:1.75}.form-status{font-size:.79rem;color:var(--green);margin:16px 0 8px}.fallback-link{font-size:.8rem;text-decoration:underline;color:var(--green)}.pricing-table-wrap{overflow-x:auto}.pricing-table{border-collapse:collapse;width:100%;margin:25px 0;background:#fffdf6}.pricing-table th,.pricing-table td{padding:19px 23px;text-align:left;border-bottom:1px solid var(--line);font-size:.84rem}.pricing-table thead{background:var(--green);color:white}.pricing-table th{font-weight:500}.pricing-table td:first-child{font-weight:600}.pricing-table caption{text-align:left;font-size:.8rem;margin-bottom:15px;color:var(--muted)}.price-value{font-family:var(--serif);font-size:3rem;color:#b39358}.cafe-menu{display:flex;flex-wrap:wrap;gap:10px}.cafe-menu span{border:1px solid var(--line);padding:10px 16px;font-size:.76rem;background:#fff9}.private-hire{padding:44px;background:#183a2b;color:white}.private-hire h3{font-size:2rem}.private-hire p{color:#c2d2c3;font-size:.86rem}.private-hire .price-value{color:var(--gold)}.community-gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px}.community-gallery img{width:100%;height:500px;object-fit:cover}.community-gallery figcaption{font-size:.7rem;color:var(--muted);margin-top:14px}.community-gallery figure{margin:0}.privacy-copy{max-width:860px}.privacy-copy h2{font-size:2rem;margin:36px 0 18px}.privacy-copy p,.privacy-copy li{font-size:.91rem;color:var(--muted)}.noscript-warning{background:#ffefc8;padding:16px;font-size:.85rem}.not-found{text-align:center;min-height:60vh}.back-to-top{font-size:.65rem;color:#b6bfaf}.notification{background:#e7eadf;border-left:3px solid #b39965;padding:18px 23px;font-size:.8rem;margin:30px 0 0}.mobile-coaching{display:none}
@media(min-width:1600px){.hero{min-height:760px}.hero-inner{padding-top:115px}.hero h1{font-size:6.1rem}.hero-bottom{margin-top:80px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.site-nav{gap:18px}.brand-name{font-size:.93rem}.split{gap:42px}.section{padding:75px 0}.hero-seal{right:4%;top:78px}.hero h1{font-size:4.7rem}.form-layout{gap:35px}.plan-card{padding:32px}.hero-bottom{margin-top:58px}}
@media(max-width:860px){.wrap{width:calc(100% - 44px)}.header-inner{height:76px}.brand img{width:52px;height:52px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--deep);padding:24px;box-shadow:0 15px 20px #0004}.site-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.site-nav>a{padding:13px 0}.site-nav .button{margin:14px 0 0;padding:13px}.hero{min-height:650px}.hero-inner{padding-top:74px}.hero h1{font-size:4.5rem;max-width:650px}.hero-seal{display:none}.hero::after{background:linear-gradient(90deg,#08130df5,#08130dbb 65%,#08130d80),linear-gradient(0deg,#08130dbb,transparent)}.hero-bottom{margin-top:60px}.section-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:35px}.section-heading>p{max-width:600px}.split{grid-template-columns:1fr;gap:36px}.photo-box{min-height:430px}.plan-card h3{font-size:1.85rem}.plan-price{font-size:2.45rem}.plan-grid{gap:18px}.plan-card{padding:28px}.plan-card .description{min-height:105px}.community-photo{height:540px;object-position:center 30%}.amenity{padding:28px 22px}.footer-top{grid-template-columns:1.4fr 1fr;gap:35px}.footer-top>div:last-child{grid-column:1/-1}.form-layout{grid-template-columns:1fr}.form-aside{position:static}.form-aside h2{font-size:2.7rem}.coaching-steps{gap:24px}.schedule-strip{gap:15px}.community-gallery img{height:400px}.page-hero{padding:55px 0}.page-hero .hero-dot{display:none}}
@media(max-width:580px){.wrap{width:calc(100% - 38px)}.section{padding:61px 0}.hero{min-height:655px}.hero-inner{padding-top:52px}.hero h1{font-size:3.3rem;line-height:1.09;max-width:400px}.hero .eyebrow{font-size:.58rem;letter-spacing:.13em;margin-bottom:24px}.hero .lead{font-size:.86rem;max-width:360px}.hero .actions{flex-direction:column;align-items:stretch;max-width:330px;gap:10px}.hero .actions .button{min-height:49px}.hero-bottom{margin-top:42px;align-items:start;flex-direction:column;gap:10px;font-size:.62rem;padding-top:20px}.facts{grid-template-columns:1fr 1fr;padding:14px 0}.fact{padding:13px 10px}.fact:nth-child(2){border:0}.fact strong{font-size:1.35rem}.fact small{font-size:.53rem;letter-spacing:.07em}.plan-grid{grid-template-columns:1fr;gap:22px}.plan-card{padding:30px}.plan-card .description{min-height:0}.plan-price{font-size:2.8rem}.coaching-steps{grid-template-columns:1fr;gap:28px;margin-top:35px;padding-top:35px}.coaching-steps .step-number{margin-bottom:10px}.photo-box{min-height:330px}.community-photo{height:390px}.amenities-grid{grid-template-columns:1fr}.amenity,.amenity:first-child{border-right:0;border-bottom:1px solid var(--line);padding:28px 0}.amenity .icon{margin-bottom:17px}.amenity:last-child{border:0}.address-card{padding:28px}.footer-top{grid-template-columns:1fr;gap:32px;margin-bottom:30px}.footer-top>div:last-child{grid-column:auto}.footer{padding-top:45px}.footer h3{margin-bottom:16px}.footer-bottom{flex-direction:column;gap:12px}.page-hero{padding:38px 0 47px}.page-hero h1{font-size:2.85rem}.page-hero p{font-size:.87rem}.breadcrumb{margin-bottom:25px}.policy-grid{grid-template-columns:1fr}.form-panel{padding:25px 20px}.form-grid{grid-template-columns:1fr;gap:18px}.field.full{grid-column:auto}.schedule-strip{flex-direction:column;gap:9px;padding:20px}.schedule-strip span{border:0;padding:0}.pricing-table th,.pricing-table td{padding:15px 12px;font-size:.72rem}.private-hire{padding:30px}.community-gallery{grid-template-columns:1fr}.community-gallery img{height:420px}summary{font-size:.84rem;padding:20px 0}.mobile-coaching{display:block;position:fixed;bottom:16px;right:16px;z-index:12;background:var(--gold);color:var(--deep);padding:13px 16px;box-shadow:0 3px 18px #0003;border-radius:2px;font-size:.72rem;font-weight:600}.footer-bottom{padding-bottom:65px}h2{font-size:2.6rem}.section-intro h2{font-size:2.6rem}}
body:has(form[data-whatsapp-form]) .mobile-coaching{display:none}
button:disabled{opacity:.55;cursor:not-allowed}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.site-header,.mobile-coaching,.menu-toggle,.hero-scene,.hero-seal{display:none}.hero,.page-hero,.dark-section,.footer{background:white;color:black}.hero::after{display:none}.section{padding:25px 0}.wrap{width:100%}.plan-card.dark{background:white;color:black}.hero{min-height:0}.hero h1 em{color:black}}

/* Table bookings and coaching remain available together on small screens. */
.hero-booking-details{max-width:620px;margin-top:24px;padding-top:20px;border-top:1px solid #ffffff30;color:#e5e9df;font-size:.82rem;line-height:1.75}.hero-booking-details p{margin-bottom:12px}.hero-booking-details strong{color:#fff}.hero-booking-details p a{text-decoration:underline;text-underline-offset:3px}.hero-booking-details .text-link{color:var(--gold);font-size:.75rem}.hero-intake-note{font-size:.79rem;color:#d3d8cf;max-width:600px;margin:22px 0 0}.mobile-booking-actions{display:none}
@media(max-width:580px){.hero-booking-details{font-size:.78rem}.hero-intake-note{font-size:.75rem}.mobile-booking-actions{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:12;background:var(--deep);padding:10px 14px max(10px,env(safe-area-inset-bottom));gap:10px;border-top:1px solid #ffffff20}.mobile-booking-actions a{display:flex;position:static;flex:1;align-items:center;justify-content:center;min-height:46px;padding:10px 9px;border-radius:2px;font-size:.73rem;font-weight:600;box-shadow:none}.mobile-booking-actions .mobile-booking{background:var(--gold);color:var(--deep)}.mobile-booking-actions .mobile-coaching{border:1px solid #d7b47480;background:transparent;color:#f5f2eb}.page-home .footer-bottom,.page-club .footer-bottom{padding-bottom:90px}}
@media print{.mobile-booking-actions{display:none}}

body.analytics-prompt-open .mobile-booking-actions{display:none}

/* Touch: hover only where a mouse can hover; instant press feedback; no input zoom on iOS */
@media(hover:hover) and (pointer:fine){.button-gold:hover{background:#edd1a0;color:var(--deep)}.button-green:hover{background:#29553d;color:white}.button-outline:hover{background:#ffffff12;color:white}.button-paper:hover{background:white}.site-nav a:hover{color:var(--gold)}}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.button,.site-nav a,.mobile-booking-actions a,.mobile-coaching{user-select:none;-webkit-user-select:none;touch-action:manipulation}
.button{transition:transform 120ms ease-out,background-color 120ms ease-out,color 120ms ease-out}
.button:active{transform:scale(.97)}
@media(prefers-reduced-motion:reduce){.button:active{transform:none}}
@media(pointer:coarse){input,select,textarea{font-size:16px}}

/* ---------- Phone refinements ----------
   Finger-sized hit areas (WCAG 2.2 asks for at least 24px; 44px is comfortable) and a readable text floor.
   The look is unchanged: underlines and spacing are redrawn inside the larger area. */
@media(max-width:860px),(pointer:coarse){
  .text-link{border-bottom:0;padding:12px 0;min-height:44px;background:linear-gradient(currentColor,currentColor) left calc(100% - 6px)/100% 1px no-repeat}
  .breadcrumb{gap:4px;align-items:center}
  .breadcrumb a,.footer li a,.footer-bottom a,.hero-bottom a,.skip-link{display:inline-flex;align-items:center;min-height:44px}
  .footer li{margin:0}
  .footer-bottom{gap:0}
  .site-nav>a{min-height:44px;display:flex;align-items:center}
  summary{min-height:44px}
}
@media(max-width:860px){
  .brand-name small{font-size:.65rem;letter-spacing:.12em}
  .fact small{font-size:.7rem}
  .hero .eyebrow{font-size:.68rem;letter-spacing:.1em}
  .footer h3,.address-card dt,.breadcrumb,.footer-bottom,.step-number,.feature-list .num,.amenity .meta,.learn-card-top,.learn-card-top span,.learn-byline,.learn-citation,.photo-caption,.hero-intake-note,.mobile-coaching,.form-help,.plan-duration,.small-note{font-size:max(.72rem,11.5px)}
  .hero-bottom,.hero-bottom p{font-size:max(.7rem,11.5px)}
  .eyebrow,.practice-scorecard-eyebrow{font-size:max(.7rem,11.5px)}
}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Brass-coloured numerals on dark sections stay gold; the darker brass is for light backgrounds. */
.dark-section .feature-list .num,.dark-section .step-number,.dark-section .amenity .icon{color:var(--gold)}

@media(max-width:860px),(pointer:coarse){.menu-toggle{min-width:44px}.practice-scorecard-white input{width:24px;height:24px}}
