/* A single, prominent booking action and a tighter coaching presentation. */
:root{--action:#edcb76;--action-hover:#f6d996}
.button{font-size:14px;font-weight:700;min-height:54px;padding:16px 24px;border-radius:3px;line-height:1.3;gap:22px}
.button-primary{background:var(--action);color:#17231d;border:1px solid var(--action);box-shadow:0 4px 12px #00000012;text-decoration:none}
.button-primary:hover{background:var(--action-hover);border-color:var(--action-hover);color:#17231d;box-shadow:0 6px 16px #00000020}
.button-primary:focus-visible{outline:3px solid #48633b;outline-offset:4px}
.button-secondary{border:1px solid #82907e;color:var(--paper);background:transparent}
.button-secondary:hover{background:#ffffff14}
.site-header{height:90px;position:sticky;top:0;z-index:25;box-shadow:0 2px 12px #10171308}
.site-header .nav-contact{margin-left:5px;min-height:48px;padding:13px 18px;font-size:13px;border-bottom:1px solid var(--action)}
.site-header .nav-contact:hover{text-decoration:none}
.site-header .nav-contact span{margin:0}
nav{gap:24px;font-size:13px}
.hero{min-height:630px}.hero-copy{padding-top:60px;padding-bottom:40px}.hero-photo{min-height:630px}
.hero h1{font-size:clamp(54px,5.4vw,80px);margin:24px 0}
.hero-intro{font-size:16px;line-height:1.75;max-width:420px}
.hero-actions{margin:30px 0 35px;gap:25px}.hero-actions .button{min-height:58px;font-size:15px;padding:18px 28px}
.hero-note{font-size:9px;letter-spacing:.13em}
.section-pad{padding-top:70px;padding-bottom:70px}
.student-paths{margin:34px 0 36px;gap:32px}.student-paths article{padding-bottom:0}
.student-paths p:not(.eyebrow),.approach-steps p{font-size:14px;line-height:1.75}
.approach-steps{gap:35px}
.approach-footer{align-items:center;margin-top:35px;font-size:14px}
.junior-copy{padding-top:0}.junior-copy h3{font:400 32px/1.2 var(--serif);margin:14px 0 22px}
.junior-copy p{line-height:1.75}.family-mission{line-height:1.75}
.travel-compact{grid-template-columns:1fr 1.15fr;gap:70px;padding-top:48px;padding-bottom:48px}
.travel-compact h2{font-size:42px;margin-top:16px}.travel-compact>div>p:not(.eyebrow){font-size:14px;line-height:1.8;margin-bottom:16px;color:#455440}
.travel-compact .button{margin-top:7px}
.featured-swing{display:grid;grid-template-columns:1fr .8fr;gap:80px;align-items:center;max-width:1050px;margin:auto}
.swing-intro h2{margin:20px 0 25px}.swing-intro>p:not(.eyebrow){font-size:15px;color:#c5cec0;line-height:1.8;margin-bottom:18px;max-width:440px}.swing-intro .button{margin-top:12px}
.featured-swing .video-wrap{aspect-ratio:9/11;max-height:430px}.featured-swing .video-card>p:not(.eyebrow){display:none}.featured-swing .video-card>.inline-link{display:none}.featured-swing .video-card>.eyebrow{margin-top:18px}.featured-swing .video-card h3{font-size:26px}
.about{gap:75px}.about-story>p:not(.eyebrow){font-size:14px;line-height:1.8}
.booking-invitation{background:#19291f;color:var(--paper);display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}
.booking-invitation .eyebrow{color:#b6c8ad}.booking-invitation h2{margin:20px 0}.booking-invitation>div>p:not(.eyebrow){max-width:440px;color:#c7d2c0;font-size:15px;line-height:1.8}
.booking-invitation-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.booking-invitation-actions .button{min-height:60px;font-size:16px;padding:18px 28px}.booking-invitation .booking-invitation-actions>p{font-size:12px;color:#d6dfcf}.booking-invitation-actions>a{font-size:13px;color:#d6dfcf}
.questions{padding-top:48px;padding-bottom:48px}.faq-list summary{font-size:14px}.faq-list details p{font-size:13px}
.connect-compact{display:flex;justify-content:space-between;align-items:center;text-align:left;gap:45px;padding-top:42px;padding-bottom:42px}
.connect-compact h2{font-size:38px;margin:15px 0}.connect-compact .email-link{font-size:14px;display:inline-block;margin:17px 0 0;border:0;padding:0}.connect-compact p{font-size:13px}.connect-compact .social-links{border:0;padding:0;margin:0;max-width:260px;gap:20px 26px;justify-content:flex-start}
.mobile-book .button{font-weight:700;white-space:nowrap}
.swings .section-heading>p:last-child{color:#c5cec0}
@media(max-width:1050px){nav{gap:14px}.site-header .nav-contact{font-size:12px;padding:12px 15px}.featured-swing{gap:45px}.hero h1{font-size:58px}.hero-intro{font-size:15px}.hero-actions{gap:18px}.hero-actions .button{padding:16px 21px}.about{gap:45px}}
@media(max-width:760px){html{scroll-padding-top:100px}.site-header{height:78px}.site-header nav{top:78px}.site-header .nav-contact{justify-content:center;align-self:stretch;padding:16px;font-size:15px;margin-top:10px}.hero-copy{padding:36px 7% 30px}.hero h1{font-size:clamp(48px,10.5vw,70px)}.hero-intro{font-size:15px;line-height:1.75}.hero-actions{gap:20px;margin-bottom:27px}.hero-actions .button{font-size:15px}.hero-photo{min-height:0}.section-pad{padding-top:48px;padding-bottom:48px}.student-paths{gap:0;margin:27px 0 32px}.student-paths article{padding:20px 0}.student-paths p:not(.eyebrow){margin:0;font-size:14px}.approach-steps p{font-size:14px}.approach-footer{align-items:flex-start}.approach-footer .button{width:100%;justify-content:center}.juniors .button{margin-top:0}.junior-copy h3{font-size:30px}.junior-copy p,.family-mission{font-size:14px}.travel-compact{grid-template-columns:1fr;gap:24px}.travel-compact h2{font-size:39px}.travel-compact .button{width:100%;justify-content:center}.featured-swing{grid-template-columns:1fr;gap:30px}.featured-swing .video-card{max-width:440px;width:100%;margin:auto}.featured-swing .video-wrap{max-height:460px;aspect-ratio:9/11}.swing-intro h2{font-size:44px}.swing-intro>p:not(.eyebrow){font-size:14px}.about{gap:30px}.about-story>p:not(.eyebrow){font-size:14px}.booking-invitation{grid-template-columns:1fr;gap:25px}.booking-invitation h2{font-size:46px}.booking-invitation-actions .button{width:100%;justify-content:center;font-size:15px;padding:18px}.booking-invitation-actions{align-items:center}.questions{gap:25px}.faq-list summary{font-size:14px}.connect-compact{display:block}.connect-compact h2{font-size:34px}.connect-compact .social-links{max-width:none;margin-top:25px;gap:22px}.mobile-book{padding:12px 5% calc(12px + env(safe-area-inset-bottom));z-index:30}.mobile-book>span{font-size:10px;max-width:155px}.mobile-book small{font-size:9px;line-height:1.5}.mobile-book .button{font-size:13px;min-height:50px;padding:14px 16px}.site-header .wordmark{font-size:11px}.site-header .wordmark span{font-size:10px}}

/* Privacy and native-date fallback */
#lesson-date-fallback[hidden]{display:none!important}
.privacy-link{font-family:Arial,sans-serif;font-size:.8rem;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
.privacy-choice h2{color:inherit}
.privacy-toggle{display:flex;align-items:flex-start;gap:.75rem;line-height:1.55;cursor:pointer}
.privacy-toggle input{width:1.25rem;height:1.25rem;margin-top:.2rem;flex:0 0 auto;accent-color:#edcb76}
.privacy-toggle:focus-within{outline:2px solid currentColor;outline-offset:8px}
.privacy-choice [data-analytics-status]{font-size:.95rem}
.article-body .privacy-choice p:not(.eyebrow){font-family:Arial,sans-serif;font-size:1rem;line-height:1.7;margin:1.1rem 0}
.privacy-choice .privacy-toggle{margin:1.5rem 0}
