/* Shared presentation for all six pages. */
:root { --site-accent:#805b36; --site-ink:#30271e; --site-muted:#625346; }
body { font-family:Inter,sans-serif; }
h1,h2,h3,h4 { font-family:"Plus Jakarta Sans",sans-serif; }
main h1, #hero-slider-section h2 { font-size:clamp(2.25rem,4vw,3.5rem); line-height:1.15; font-weight:700; letter-spacing:-.025em; }
main .text-headline-lg, main .text-headline-md { font-size:clamp(1.75rem,3vw,2.5rem); line-height:1.2; letter-spacing:-.015em; }
main .text-headline-sm { font-size:1.25rem; line-height:1.4; }
main .site-section { padding-top:3rem; padding-bottom:3rem; }
main .page-intro { padding-top:2rem; padding-bottom:3rem; }
main #hero-slider-section { padding:0; height:clamp(32rem,65vh,38rem)!important; }
main .rounded-xl, main .rounded-2xl, main .rounded-3xl { border-radius:1rem; }
a.inline-flex[class*="bg-"],button[class*="bg-primary-container"] { min-height:44px; padding:.75rem 1.5rem; border-radius:.5rem; font-size:.875rem; font-weight:600; line-height:1.4; text-align:center; }
a.inline-flex.bg-primary-container,button.bg-primary-container { background-color:var(--site-accent); color:#fff; }
a.inline-flex.bg-primary-container:hover,button.bg-primary-container:hover { background-color:#614124; }
header nav a { font-family:"Plus Jakarta Sans",sans-serif; font-size:.875rem; line-height:1.4; }
header nav a[aria-current="page"] { font-weight:700; color:var(--site-accent); }
#mobile-drawer { max-height:calc(100dvh - 80px); overflow-y:auto; }
#mobile-drawer a { min-height:44px; display:flex; align-items:center; }
a:focus-visible,button:focus-visible,[tabindex]:focus-visible { outline:3px solid var(--site-accent); outline-offset:4px; }
.slider-dot { min-width:44px; min-height:44px; position:relative; background:transparent!important; }
.slider-dot::after { content:""; position:absolute; top:19px; left:10px; width:24px; height:6px; border-radius:999px; background:#ffffff66; }
.slider-dot.bg-white::after { background:#fff; }
#pilates-lightbox button,#gallery-lightbox button { min-width:44px; min-height:44px; }
#pilates-lightbox > div,#gallery-lightbox > div { max-height:calc(100dvh - 2rem); overflow-y:auto; }
.studio-related { background:#ece1d2!important; color:var(--site-ink)!important; }
.studio-related h2 { color:var(--site-ink); }
.studio-related .text-on-tertiary-container { color:var(--site-muted); }
.studio-related .text-primary-fixed-dim,.studio-related a.text-primary-fixed { color:var(--site-accent); }
.studio-related .bg-surface\/5 { background:#f3ece1; }
@media(min-width:1024px) { main .site-section { padding-top:5rem; padding-bottom:5rem; } main .page-intro { padding-top:3rem; padding-bottom:3rem; } }
@media(max-width:639px) {
 header .font-headline-sm { font-size:1rem; } header .font-label-sm { font-size:.625rem; }
 #hero-slider-section .pt-2.flex { flex-wrap:wrap; gap:.5rem; }
 #hero-slider-section .relative.z-10 { padding-bottom:4rem; }
 main .p-10,main .p-8 { padding:1.5rem; }
}
@media(hover:none) { [onclick^="openPilatesLightbox"] .opacity-0 { opacity:1; background:linear-gradient(transparent,#30271eb3); } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }main h1[class], #hero-slider-section h2[class] { font-size:clamp(2.25rem,4vw,3.5rem); line-height:1.15; font-weight:700; }
main .section-continuation { padding-top:0; }
main h2.text-headline-md.mt-1 { font-size:clamp(1.5rem,2.5vw,2rem); }
[onclick^="openLightbox"],[onclick^="openPilatesLightbox"] { aspect-ratio:4/3; height:auto; }
#hero-slider-section button:not(.slider-dot) { min-width:44px; min-height:44px; }
