/* Pinehaven: full landscape, richer greens and visible interaction feedback. */
:root{--ink:#0a422f;--green:#096344;--deep:#063d2c;--muted:#536d5d;--paper:#eef4e3;--pale:#dcecbf;--fresh:#c9f675;--emerald:#0b7952;--line:#d1dfc8;--ease-out:cubic-bezier(.23,1,.32,1)}
body{overflow-x:clip}h2 em,h3 em{font-style:normal;color:var(--green)}
.btn{position:relative;isolation:isolate;gap:22px;overflow:visible;transition:background-color 200ms ease,color 200ms ease,border-color 200ms ease,transform 140ms var(--ease-out);border-radius:5px}
.btn:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:linear-gradient(110deg,transparent 20%,#ffffff2b 48%,transparent 73%);opacity:0;transform:translateX(-25%);transition:opacity 200ms ease,transform 500ms var(--ease-out);pointer-events:none}
.btn:after{content:'';position:absolute;inset:0;z-index:-2;border-radius:inherit;box-shadow:0 12px 32px #a5eb5966;opacity:0;transition:opacity 200ms ease;pointer-events:none}
.btn-arrow{display:inline-grid;place-items:center;font-size:19px;line-height:1;transition:transform 200ms var(--ease-out)}
.btn:focus-visible,.plain-btn:focus-visible,.footer a:focus-visible{outline:3px solid var(--fresh);outline-offset:5px}
.plain-btn,.text-link,.text-button,.hole-tabs button,.preview-days button,.preview-slots a,.booking-days button,.time-slot,.category-tabs button,.menu-tabs button,.membership-row,.lesson-row{transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease,transform 180ms var(--ease-out)}
.btn:active{transform:scale(.97)}
body[data-page='/'] .site-header{position:fixed;inset:0 0 auto;height:92px;background:transparent;color:white;border:0;transition:background-color 220ms ease,color 220ms ease,box-shadow 220ms ease}
body[data-page='/'] .site-header:before{content:'';position:absolute;inset:0 0 -40px;background:linear-gradient(#092f2e83,transparent);pointer-events:none;z-index:-1}
body[data-page='/'] .header-book{background:#ffffff13;color:white;border-color:#ffffff8c;backdrop-filter:blur(12px)}
body[data-page='/'] .desktop-nav a:after{background:var(--fresh)}
body[data-page='/'] .menu-toggle i{background:white}
body[data-page='/'].is-scrolled .site-header,body[data-page='/'].menu-is-open .site-header{background:#fff;color:var(--ink);box-shadow:0 4px 30px #073d2810}
body[data-page='/'].is-scrolled .site-header:before,body[data-page='/'].menu-is-open .site-header:before{display:none}
body[data-page='/'].is-scrolled .header-book{background:var(--green);border-color:var(--green);color:#fff}
body[data-page='/'].is-scrolled .menu-toggle i,body[data-page='/'].menu-is-open .menu-toggle i{background:var(--green)}
.mobile-menu{color:var(--ink)}
.hero{padding:0}.hero-frame{height:100svh;min-height:740px;max-height:none;border-radius:0;overflow:hidden}.hero-caption{padding:20px var(--gutter);background:var(--deep);color:#eff7df;font-size:11px;letter-spacing:.05em}
.hero-land{transform:scale(calc(1 + var(--hero-p,0)*.06))}.hero-subject{transform:translateY(calc(var(--hero-p,0)*-22px)) scale(calc(1 + var(--hero-p,0)*.09))}.hero-word{color:#0b5139;transform:translateY(calc(var(--hero-p,0)*-65px));font-weight:500}
.hero-bottom{bottom:44px}.hero-tagline{font-size:clamp(38px,4.3vw,70px);font-weight:500}.finder{padding:17px;border-radius:6px;box-shadow:0 16px 50px #063f3026;min-width:50%}.finder .btn{background:var(--fresh);color:var(--deep);border-color:var(--fresh);font-weight:700}.hero-copy:before{background:radial-gradient(ellipse at left bottom,#06321fcc,transparent 75%);inset:-35px -50px -35px -35px}
.hero-ready .tracer-line{stroke:#e3ffb2;stroke-width:3.4}.tracer-glow{stroke-width:10}
.intro{background:#f0f5df;max-width:none;padding-top:110px;padding-bottom:100px}.intro h2{font-size:clamp(42px,5.8vw,88px);line-height:1.03}.intro h2 em{color:var(--emerald)}.intro-kicker{font-size:10px;letter-spacing:.16em;margin-bottom:24px;font-weight:700}.intro-lead{margin-top:30px;max-width:39ch}.intro-top{grid-template-columns:1.1fr .65fr;gap:8vw;align-items:center}.intro-detail{aspect-ratio:1.1;border-radius:48% 48% 5px 5px;max-width:450px;justify-self:end}.intro-detail img{object-position:60% center}.facts{margin-block:55px;border-color:#b7caa4}.facts strong{font-size:clamp(40px,4vw,64px);color:var(--emerald)}.facts span{color:var(--ink)}.intro-panels{gap:24px;grid-template-columns:1.1fr 1fr}.guest-panel{background:white;grid-template-columns:.9fr 1fr;min-height:420px}.guest-panel>div{padding:34px;gap:24px}.guest-panel h3{font-size:35px}.group-panel{padding:0;display:block;background:var(--deep);isolation:isolate;min-height:420px}.group-panel>.photo{position:absolute;inset:0;z-index:-2;border-radius:0}.group-panel>.photo img{height:100%;object-fit:cover}.group-panel:after{content:'';position:absolute;inset:20% 0 0;background:linear-gradient(transparent,#063421e8);z-index:-1}.group-panel-copy{position:relative;height:100%;padding:38px;display:flex;align-items:start;justify-content:end;flex-direction:column;gap:20px}.group-panel-copy .label{color:var(--fresh)}.group-panel h3{font-size:35px}.group-panel p{max-width:34ch}.group-panel .btn{background:var(--fresh);border-color:var(--fresh);color:var(--deep)}
.landscape-story{height:clamp(600px,85svh,1000px);position:relative;isolation:isolate;overflow:hidden;background:var(--deep);clip-path:inset(5% 3% round 12px);will-change:clip-path}
.landscape-story>img{width:100%;height:120%;object-fit:cover;position:absolute;left:0;top:-10%;z-index:-2}.landscape-story:after{content:'';position:absolute;inset:15% 35% 0 0;background:linear-gradient(90deg,#053b2a99,transparent);z-index:-1;pointer-events:none}.landscape-copy{position:absolute;left:var(--gutter);top:25%;color:#fff;display:grid;justify-items:start;gap:25px}.landscape-copy>p{font-size:10px;font-weight:600;letter-spacing:.16em}.landscape-copy h2{font-size:clamp(70px,10vw,150px);line-height:.9}.landscape-copy h2 em{color:var(--fresh)}.round-link{width:68px;height:68px;border:1px solid #ffffff99;border-radius:50%;display:grid;place-items:center;font-size:31px;background:#ffffff12;transition:background-color 180ms ease,color 180ms ease,transform 180ms var(--ease-out)}.landscape-caption{position:absolute;bottom:35px;right:var(--gutter);color:white;font-size:11px}
.course-section{width:100%;max-width:none;border-radius:0;background:var(--deep);color:#fff;padding-block:100px}.course-section .section-head{align-items:start;margin-bottom:55px}.course-section .lead,.course-section .small{color:#c3d8c6}.course-section h2{font-size:clamp(40px,5.4vw,80px)}.course-layout{grid-template-columns:1.65fr 1fr;gap:55px}.course-map{background:#174d3b;border-radius:8px;box-shadow:0 25px 60px #001b1a55;overflow:hidden;position:relative}.course-map svg{display:block;aspect-ratio:800/530}.course-info{gap:22px}.hole-number{font-size:clamp(70px,8vw,122px);color:var(--fresh)}.course-info h3{font-size:34px}.course-info .stats>div{background:#ffffff0d;border:1px solid #ffffff29;padding:14px}.course-info .stats dt{color:#c3d8c6}.course-info .stats dd{color:#fff;font-size:30px}.course-info>p{font-size:15px;line-height:1.7}.course-controls .plain-btn:not(.dark){background:#ffffff13;color:white;border:1px solid #ffffff50}.course-controls .dark{background:var(--fresh);color:var(--deep)}.hole-tabs{gap:8px;margin-top:40px;scrollbar-color:var(--fresh) var(--deep)}.hole-tabs button{background:#ffffff0b;color:#fff;border:1px solid #ffffff30;min-width:43px;min-height:43px}.hole-tabs button[aria-selected=true]{background:var(--fresh);border-color:var(--fresh);color:var(--deep)}.course-section .text-link{color:var(--fresh)}.course-route{stroke-dasharray:1;stroke-dashoffset:1;stroke:#e7ffad;stroke-width:2.6}.changing .course-route{animation:hole-trace 1.5s var(--ease-out) .2s forwards}.course-map.changing image{animation:hole-image .65s var(--ease-out) both}.course-map .map-label{font:500 12px Manrope,Arial,sans-serif;fill:white;letter-spacing:.04em}.course-map .map-mark{fill:#fff;stroke:#143e2e;stroke-width:2}.course-map .map-ball{fill:#efffba;filter:drop-shadow(0 2px 4px #153c22);offset-rotate:0deg}.changing .map-ball{animation:hole-ball 1.5s var(--ease-out) .2s both}
.course-map.changing .course-route{animation:hole-trace 1.5s var(--ease-out) .2s forwards}
@keyframes hole-trace{to{stroke-dashoffset:0}}@keyframes hole-image{from{opacity:.4;transform:scale(1.025)}to{opacity:1;transform:none}}@keyframes hole-ball{from{offset-distance:0%}to{offset-distance:100%}}
.home-booking{background:#fff;gap:6vw;padding-block:110px}.home-booking h2{font-size:clamp(38px,4.9vw,72px)}.home-booking .paper{background:#e9f0d8;border:1px solid #d4e1bb;border-radius:8px;box-shadow:12px 18px 0 #f6f8ee}.home-booking .paper>h3{font-size:32px}.preview-days button[aria-pressed=true],.seg button[aria-pressed=true]{background:var(--green);color:white}.preview-slots a{background:#f0f5e7;border:1px solid #d9e5cc}.preview-slots span{background:#f5f5f2;color:#73816f}.rates{border-color:#becead}
.home-membership{max-width:none;background:var(--emerald);color:#fff;padding-block:0 95px;position:relative}.membership-photo{height:390px;margin-inline:calc(-1 * var(--gutter));overflow:hidden}.membership-photo .photo{height:115%;margin-top:-25px;border-radius:0}.membership-photo img{object-position:50% 60%}.membership-content{position:relative;margin-top:-62px;padding-top:55px;background:var(--emerald);border-radius:25px 25px 0 0}.home-membership .section-head{padding-inline:35px;gap:60px}.home-membership h2{font-size:clamp(43px,5vw,78px)}.home-membership h2 em{color:var(--fresh)}.home-membership .lead{color:#e3f3e7}.home-membership .estimator{background:#ffffff10;border:1px solid #ffffff35;color:white;margin-bottom:20px}.home-membership .estimator select{background:#07553a;color:#fff;border-color:#ffffff60}.home-membership .estimator .text-link{color:var(--fresh)}.home-membership .membership-row{color:white;border-color:#ffffff3b;padding-inline:24px;border-radius:5px}.home-membership .membership-row p,.home-membership .membership-row small{color:#e3f3e7}.home-membership .membership-row.is-match{background:var(--fresh);color:var(--deep)}.home-membership .membership-row.is-match p,.home-membership .membership-row.is-match small{color:#285b3a}.membership-row>span{font-weight:500}
.academy-feature{padding-block:115px;gap:7vw;align-items:center}.academy-feature h2{font-size:clamp(40px,5vw,75px)}.academy-photos{position:relative;padding:0 30px 80px 0}.academy-main{height:650px;border-radius:8px}.academy-main img{object-position:48% center}.academy-inset{width:54%;aspect-ratio:1.2;position:absolute;right:0;bottom:0;border:9px solid #fff;border-radius:5px;box-shadow:0 20px 50px #0c472520}.lesson-row{padding-inline:12px;margin-inline:-12px;border-radius:4px}.academy-feature .btn{margin-top:25px}
.clubhouse-feature{max-width:none;background:#e3eecf;padding-block:100px}.clubhouse-feature h2{font-size:clamp(42px,5vw,76px)}.house-mosaic{display:grid;grid-template-columns:1.35fr 1fr;gap:24px;align-items:start}.house-main{aspect-ratio:1.25}.house-table{aspect-ratio:.95;margin-top:90px}.house-mosaic .photo{border-radius:8px}.clubhouse-bottom{margin-top:38px}.clubhouse-bottom p{font-size:18px}.closing{max-width:none;padding:0}.closing-frame{border-radius:0;height:80svh;min-height:620px;overflow:hidden}.closing-frame>img{height:118%;top:-9%;object-position:50% 50%}.closing-copy{padding:var(--gutter);max-width:750px;gap:30px}.closing-copy h2{font-size:clamp(44px,6.2vw,95px);line-height:1}.closing-copy .btn{background:var(--fresh);border-color:var(--fresh);color:var(--deep);min-height:62px;font-size:16px;padding-inline:30px}.closing-scrim{background:linear-gradient(90deg,#073c2b99,transparent);right:25%}
.footer{margin:0;border-radius:0;padding-top:0;background:#043b2a;color:#fff;overflow:hidden}.footer-invitation{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:65px;border-bottom:1px solid #ffffff30;margin-bottom:60px}.footer-invitation h2{font-size:clamp(34px,4vw,60px)}.footer-invitation em{color:var(--fresh)}.footer-cta{background:var(--fresh);border-color:var(--fresh);color:var(--deep);font-size:15px;min-height:64px}.footer-top{padding-bottom:40px}.footer nav a{display:table;padding:6px 10px;margin-left:-10px;border-radius:4px;min-height:35px;transition:background-color 160ms ease,color 160ms ease,transform 180ms var(--ease-out)}.footer-top .text-link{padding:7px 12px;border:1px solid #ffffff70;border-radius:4px;font-size:12px;transition:color 180ms ease,background-color 180ms ease}.footer h3{color:var(--fresh)}.footer-word{font-weight:500;color:var(--fresh);font-size:16.1vw;line-height:.82;letter-spacing:-.08em;margin:40px -4px -7px}.footer-legal a{padding:6px;border-radius:4px;transition:color 180ms ease,background-color 180ms ease}.live-dot{background:var(--fresh)}
.page-hero{padding-bottom:0}.page-title h1{color:var(--green)}.page-cover{border-radius:8px;box-shadow:0 18px 50px #0d4a2520}.page-hero+.section:not(.course-section){padding-top:95px}.junior{background:#e3eecf}.season-grid article{background:#e7f0d8;padding:30px;border-radius:7px}.package.is-selected,.category-tabs button[aria-selected=true]{background:var(--green);color:#fff}.team-grid article{background:#f0f5e8;border-radius:8px}.team-grid .initials{background:var(--green);color:var(--fresh)}.enquiry .form-shell{background:#eaf2dd;border-radius:8px}.enquiry h2{color:var(--green)}.joining-ruler .is-past .step-mark{background:var(--fresh)}
@media(hover:hover) and (pointer:fine){.btn:hover,.btn.light:hover,.btn.outline:hover,.header-book:hover{background:var(--fresh);border-color:var(--fresh);color:var(--deep);transform:translateY(-2px)}.btn:hover:before{opacity:1;transform:translateX(25%)}.btn:hover:after{opacity:1}.btn:hover .btn-arrow{transform:translate(3px,-3px)}.finder .btn:hover,.footer-cta:hover,.closing-copy .btn:hover{background:#e0ffad;border-color:#e0ffad;color:var(--deep)}.plain-btn:hover,.hole-tabs button:hover,.preview-slots a:hover,.time-slot:not(:disabled):hover,.booking-days button:hover{background:var(--fresh);color:var(--deep)}.preview-days button:hover{background:#d7efa9;color:var(--deep)}.round-link:hover{background:var(--fresh);border-color:var(--fresh);color:var(--deep);transform:rotate(8deg)}.desktop-nav a:hover{color:var(--fresh)}.is-scrolled .desktop-nav a:hover,body:not([data-page='/']) .desktop-nav a:hover{color:var(--green)}.text-link:hover,.text-button:hover{color:var(--emerald)}.footer nav a:hover{background:var(--fresh);color:var(--deep);transform:translateX(4px)}.footer .text-link:hover,.footer-legal a:hover{background:var(--fresh);color:var(--deep);border-color:var(--fresh)}.lesson-row:hover{background:#e7f2d5;transform:translateX(5px)}.membership-row:hover{background:#ffffff18;transform:translateX(4px)}.home-membership .membership-row.is-match:hover{background:#dcffa0}.photo:hover img{transform:scale(1.045)}}
@media(min-width:851px){.js [data-sc-in]:not(.sc-in){transform:translateY(42px)}.js .photo[data-sc-in]:not(.sc-in){transform:translateY(35px) scale(.98);clip-path:inset(12% 0 0 round 8px)}}
@media(max-width:1100px){.hero-bottom{display:flex;flex-direction:row;align-items:end}.hero-copy{position:relative;bottom:auto;max-width:47%}.hero-tagline{font-size:44px}.finder{max-width:none;width:52%;min-width:0;grid-template-columns:1fr 1fr;gap:12px;padding:18px}.finder label{padding-inline:5px}.finder label:nth-child(2){border:0}.finder .btn{grid-column:1/-1;margin:0}.intro-panels{grid-template-columns:1fr 1fr}.guest-panel{grid-template-columns:1fr}.guest-panel .photo{height:260px;min-height:0}.group-panel{min-height:550px}.course-layout{gap:35px;grid-template-columns:1.35fr 1fr}.course-info h3{font-size:28px}.course-info .stats>div{padding:10px}.academy-main{height:560px}.membership-photo{height:340px}.footer-invitation{gap:25px}}
@media(max-width:850px){body[data-page='/'] .site-header{height:76px}.hero-frame{min-height:750px}.intro-top{grid-template-columns:1fr .65fr;gap:35px}.intro h2{font-size:55px}.intro-panels{grid-template-columns:1fr 1fr}.guest-panel>div{padding:25px}.guest-panel h3,.group-panel h3{font-size:30px}.group-panel-copy{padding:26px}.course-layout{grid-template-columns:1fr}.course-info{grid-template-columns:100px 1fr;gap:20px}.course-info>.stats{grid-column:2}.hole-number{font-size:90px}.landscape-story{height:700px}.academy-feature{gap:30px}.academy-main{height:570px}.academy-inset{width:65%;border-width:6px}.house-table{margin-top:60px}.footer-invitation{align-items:start}.footer-cta{font-size:13px;padding:15px}}
@media(max-width:600px){body[data-page='/'] .site-header{height:76px}.hero-frame{height:100svh;min-height:760px;max-height:none;overflow:hidden;background:#94c2db}.hero-frame:before{display:none}.hero-word{max-width:none}.hero-subject img{width:67%;height:67%}.hero-bottom{bottom:20px;left:20px;right:20px;display:grid;gap:24px}.hero-copy{position:relative;bottom:auto;left:0;max-width:100%;padding:0}.hero-tagline{font-size:38px;line-height:1.05;margin-bottom:12px}.hero-copy>p+p{font-size:12px}.finder{width:100%;min-height:0;grid-template-columns:1fr 1fr;gap:12px;padding:15px;border-radius:5px}.finder label{padding:0 10px;gap:4px}.finder label:first-child{padding-left:0}.finder select{font-size:14px;min-height:30px}.finder .btn{min-height:47px;margin:0;font-size:13px}.hero-caption{padding:16px 22px;font-size:10px}.intro{padding-top:65px;padding-bottom:60px}.intro h2{font-size:49px}.intro-top{grid-template-columns:1fr;gap:35px}.intro-kicker{font-size:9px;margin-bottom:18px}.intro-lead{font-size:16px;margin-top:24px}.intro-detail{max-width:82%;aspect-ratio:1.35;border-radius:40% 40% 5px 5px}.facts{margin-block:35px;gap:12px}.facts strong{font-size:34px}.intro-panels{grid-template-columns:1fr;gap:22px}.guest-panel{grid-template-columns:1fr}.guest-panel .photo{height:280px}.guest-panel>div{padding:30px}.guest-panel h3{font-size:35px}.group-panel{min-height:450px}.group-panel-copy{padding:30px}.group-panel h3{font-size:34px}.landscape-story{height:650px;clip-path:inset(3% 3% round 8px)}.landscape-story>img{object-position:58% center}.landscape-copy{top:25%;gap:25px;right:20px}.landscape-copy h2{font-size:82px}.landscape-copy>p{font-size:8px;max-width:24ch}.landscape-story:after{right:0;background:linear-gradient(90deg,#07372288,transparent)}.landscape-caption{bottom:24px;left:22px;right:22px;font-size:10px}.round-link{width:58px;height:58px;font-size:25px}.course-section{width:100%;padding:65px 22px}.course-section h2{font-size:42px}.course-section .section-head{margin-bottom:32px}.course-info{grid-template-columns:70px 1fr;gap:15px}.hole-number{font-size:72px}.course-info h3{font-size:27px}.course-info .stats{gap:5px}.course-info .stats dd{font-size:23px}.course-info .stats dt{font-size:8px}.course-info .stats>div{padding:8px}.course-info>p{font-size:14px}.course-map{border-radius:5px}.course-map svg{min-height:0}.hole-tabs{gap:7px;margin-top:28px}.hole-tabs button{min-width:43px;min-height:43px}.home-booking{padding-block:65px;gap:40px}.home-booking h2{font-size:41px}.home-booking .paper{margin:0;padding:25px;box-shadow:6px 9px 0 #f6f8ee}.home-booking .paper>h3{font-size:29px}.home-membership{padding-bottom:65px}.membership-photo{height:310px}.membership-photo img{object-position:54% center}.membership-content{margin-top:-35px;padding-top:35px;border-radius:15px 15px 0 0}.home-membership .section-head{padding-inline:0;gap:25px}.home-membership h2{font-size:48px}.home-membership .estimator{padding:20px}.home-membership .membership-row{padding:23px 15px}.home-membership .membership-row>span{font-size:19px}.home-membership .membership-row h3{font-size:20px}.academy-feature{padding-block:65px;gap:35px}.academy-feature h2{font-size:45px}.academy-photos{order:-1;padding-right:20px;padding-bottom:60px}.academy-main{height:460px}.academy-inset{width:55%;border-width:6px}.academy-feature .btn{width:100%;font-size:13px;gap:16px}.clubhouse-feature{padding-block:65px}.clubhouse-feature h2{font-size:40px}.house-mosaic{grid-template-columns:1fr;gap:18px}.house-main{aspect-ratio:1.4}.house-table{aspect-ratio:1.45;width:88%;margin-top:0;justify-self:end}.clubhouse-bottom{margin-top:28px;gap:23px}.clubhouse-bottom p{font-size:16px}.clubhouse-bottom .btn{font-size:12px;gap:15px}.closing-frame{height:720px;min-height:0}.closing-frame>img{object-position:57% center}.closing-copy{padding:28px 22px;gap:28px;bottom:55px;top:auto}.closing-copy h2{font-size:49px}.closing-copy p{font-size:15px}.closing-copy .btn{min-height:58px;font-size:15px}.closing-scrim{right:0;top:20%;background:linear-gradient(0deg,#043d2bdb,transparent)}.footer{padding-inline:22px}.footer-invitation{flex-direction:column;gap:28px;padding-block:45px;margin-bottom:45px}.footer-invitation h2{font-size:35px}.footer-cta{width:100%;justify-content:space-between;font-size:13px;min-height:58px;padding-inline:20px}.footer-top{gap:32px 20px}.footer nav a{font-size:12px;padding:8px;min-height:39px;margin-left:-8px}.footer .brand{font-size:24px}.footer-word{font-size:16.1vw;margin:35px -2px -3px}.footer-legal{gap:10px}.footer-legal a{font-size:9px}.page-hero+.section:not(.course-section){padding-top:65px}.page-cover{border-radius:5px}.season-grid article{padding:25px}.btn{white-space:normal;text-align:left}}
@media(prefers-reduced-motion:reduce){.landscape-story{clip-path:none;will-change:auto}.landscape-story>img,.membership-photo .photo,.closing-frame>img{transform:none!important}.hero-land,.hero-subject,.hero-word{transform:none!important}.course-route{stroke-dasharray:1!important;stroke-dashoffset:0!important}.map-ball{offset-distance:100%!important}.course-map image{animation:none!important}.btn:hover,.membership-row:hover,.lesson-row:hover,.footer nav a:hover{transform:none!important}.photo[data-sc-in]{clip-path:none!important}}
/* Shared focus feedback remains visible on touch and keyboard. */
.hero{max-width:none;margin:0}
.home-booking>div,.intro-top>div,.academy-feature>div,.course-info,.membership-content{min-width:0}
@media(max-width:1100px){.home-booking{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.academy-feature h2{font-size:clamp(35px,11.3vw,45px)}}
@media(max-width:600px){.course-section h2{font-size:clamp(33px,10.5vw,42px)}}
.junior,.junior h2,.junior h3,.junior-groups span{color:var(--ink)}
.junior .lead,.junior-groups p{color:#365a42}
.btn:focus-visible{background:var(--fresh);border-color:var(--fresh);color:var(--deep)}
.footer nav a:focus-visible,.footer-legal a:focus-visible{background:var(--fresh);color:var(--deep)}
.footer .btn:focus-visible{color:var(--deep)}
@media(hover:hover) and (pointer:fine){.footer .btn:hover{color:var(--deep)}}
@media(hover:hover) and (pointer:fine){body[data-page='/'] .header-book:hover{background:var(--fresh);border-color:var(--fresh);color:var(--deep)}}
