@keyframes gfmc-hero-in{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@font-face{font-family:"Pontano Sans";src:url(assets/fonts/pontano-sans.woff2)format("woff2");font-weight:300 700;font-display:swap}@font-face{font-family:"Cormorant Garamond";src:url(assets/fonts/cormorant-garamond.woff2)format("woff2");font-weight:300 700;font-display:swap}:root{color-scheme:light;--blvd-widget-chrome-offset:200px;--paper:#f8f5f1;--cream:#e4ebf1;--mist:#9ca7b3;--mist-soft:#edf2f5;--sage:#b6b7a5;--sage-dark:#526477;--clay:#c6a98d;--clay-deep:#76583f;--honey-soft:#edf3f6;--redwood:#8a5d52;--slate:#536273;--ink:#3d4a58;--charcoal:#3d4a58;--white:#ffffff;--line:rgba(61, 74, 88, 0.16);--line-soft:rgba(61, 74, 88, 0.1);--shadow:0 22px 60px rgba(61, 74, 88, 0.1);--soft-shadow:0 14px 34px rgba(61, 74, 88, 0.07);--section-dark:#233140;--header-bg:rgba(248, 245, 241, 0.94);--header-border:rgba(61, 74, 88, 0.12);--header-link:#4f5b67;--header-link-active:#3d4a58;--nav-menu-bg:#fffdf9;--panel-soft:rgba(255, 253, 249, 0.86);--serif:"Cormorant Garamond", "Times New Roman", serif;--sans-display:"Tenor Sans", Arial, sans-serif;--sans:"Avenir Next", Avenir, "Pontano Sans", Arial, sans-serif;--radius:2px;--radius-arch:2px;--max:1240px;--pad-x:clamp(1.25rem, 4vw, 2.5rem);--ease-lux:cubic-bezier(0.22, 0.61, 0.36, 1)}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:105px}main [id]{scroll-margin-top:105px}body{color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:17.5px;line-height:1.72;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.nav-open{overflow:hidden}img{display:block;max-width:100%}a,h1,h2,h3{color:var(--charcoal)}a{text-decoration-thickness:1px;text-underline-offset:.22em}a:hover{color:var(--clay-deep)}p{margin:0 0 1.25rem}h1,h2,h3{font-weight:480;text-wrap:balance}h1,h2{font-family:var(--serif);line-height:1.06;letter-spacing:.005em}h3{font-size:1.32rem;line-height:1.28;letter-spacing:.02em}.eyebrow,h3,h4{font-family:var(--sans-display)}body,h1,h2,h3,h4,ul{margin:0}h4{color:var(--charcoal);font-weight:480;letter-spacing:.005em;text-wrap:balance;font-size:1.2rem;line-height:1.3}h1{font-size:clamp(3.1rem,6.4vw,5.6rem)}h2{font-size:clamp(2.35rem,3.8vw,3.5rem)}h2+p{margin-top:1.1rem}ul{padding-left:1.2rem}li+li{margin-top:.45rem}.eyebrow{color:var(--slate);display:flex;align-items:center;gap:.9rem;font-size:.72rem;letter-spacing:.32em;margin-bottom:1.4rem;text-transform:uppercase}.eyebrow::before{content:"";display:inline-block;width:2.2rem;height:1px;flex:0 0 auto}.section{padding:clamp(5rem,9vw,8.5rem) var(--pad-x)}.section-tight{padding:clamp(3rem,5vw,4.5rem) var(--pad-x)}.section-cream{background:var(--cream)}.section-mist{background:var(--mist-soft)}.section-dark{background:var(--section-dark);color:rgba(255,253,249,.8)}.section-dark .eyebrow,.section-dark a,.section-dark h2,.section-dark h3{color:var(--paper)}.eyebrow::before,.hero .hero-copy .eyebrow::before,.hero-copy .eyebrow::before,.section-dark .eyebrow::before{background:var(--clay)}.section-dark a:hover{color:var(--clay)}.container{margin:0 auto;max-width:var(--max);width:100%}.narrow{max-width:820px}.split{align-items:center;display:grid;gap:clamp(2.5rem,5vw,5rem);grid-template-columns:minmax(0,1fr) minmax(320px,.85fr)}.split.reverse{grid-template-columns:minmax(320px,.86fr) minmax(0,1fr)}.section-heading{align-items:flex-end;display:flex;gap:clamp(2rem,5vw,5rem);justify-content:space-between;margin-bottom:clamp(2.5rem,5vw,4rem)}.section-heading.section-heading-stack{margin-bottom:1.4rem}.section-heading>div,.section-heading>div h2+p,.section-heading>div p,.service-detail-section .section-heading p{max-width:none}.service-detail-section{padding-bottom:clamp(2.5rem,4vw,4rem);padding-top:clamp(3rem,5vw,4.5rem)}.service-detail-section .section-heading{margin-bottom:1.6rem}.section-heading p{max-width:460px;margin-bottom:.35rem;font-size:.98rem;color:var(--slate)}.section-heading h2+p{max-width:720px}.button-row{display:grid;gap:.9rem;grid-auto-columns:1fr;grid-auto-flow:column;margin-top:2rem;width:fit-content}.button{align-items:center;border:1px solid var(--charcoal);border-radius:var(--radius);color:var(--charcoal);cursor:pointer;display:inline-flex;font-family:var(--sans-display);font-size:.78rem;gap:.6rem;justify-content:center;letter-spacing:.24em;line-height:1;padding:1.05rem 2.1rem;text-align:center;text-decoration:none;text-transform:uppercase;transition:background 260ms var(--ease-lux),color 260ms var(--ease-lux),border-color 260ms var(--ease-lux);white-space:nowrap}.button-primary{background:var(--charcoal);color:var(--paper)}.button-primary:hover{background:var(--clay-deep);border-color:var(--clay-deep);color:var(--white)}.button-secondary{background:0 0;border-color:rgba(61,74,88,.34)}.button-secondary:hover{border-color:var(--charcoal);color:var(--charcoal);background:rgba(61,74,88,.04)}.cta-band .button-primary,.section-dark .button-primary{background:var(--clay);border-color:var(--clay);color:#2a2019}.cta-band .button-primary:hover,.section-dark .button-primary:hover{background:var(--paper);border-color:var(--paper);color:var(--charcoal)}.cta-band .button-secondary,.section-dark .button-secondary{border-color:rgba(248,245,241,.4);color:var(--paper)}.cta-band .button-secondary:hover,.section-dark .button-secondary:hover{border-color:var(--paper);background:rgba(248,245,241,.08);color:var(--paper)}.skip-link{background:var(--charcoal);color:var(--paper);left:1rem;padding:.6rem 1rem;position:absolute;top:-4rem;transition:top 200ms ease;z-index:60}.skip-link:focus{top:1rem}.site-header{background:var(--header-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--header-border);position:sticky;top:0;z-index:40}.header-inner{align-items:center;display:flex;gap:1rem;justify-content:flex-start;margin:0 auto;max-width:1520px;min-height:88px;padding:.75rem var(--pad-x)}.brand,.site-nav a{text-decoration:none}.brand{align-items:center;display:inline-flex;flex-shrink:0;margin-right:auto}.brand-logo{display:block;height:auto;max-height:58px;width:min(340px,34vw)}.brand-logo-light{display:none!important}.site-nav{align-items:center;display:flex;gap:clamp(1.1rem,2vw,1.9rem)}.site-nav a{color:var(--header-link);font-family:var(--sans-display);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;transition:color 200ms ease}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--header-link-active)}.nav-dropdown [aria-current=page].nav-dropdown-trigger,.site-nav>a[aria-current=page]:not(.nav-book){border-bottom:1px solid var(--clay);padding-bottom:.3rem}.nav-dropdown,.nav-dropdown-trigger{align-items:center;display:inline-flex}.nav-dropdown{position:relative}.nav-dropdown::before{content:"";height:.9rem;left:-.75rem;position:absolute;right:-.75rem;top:100%}.nav-dropdown-trigger{gap:.45rem}.nav-dropdown-trigger::after{border-bottom:1px solid currentColor;border-right:1px solid currentColor;content:"";height:.36rem;margin-top:-.2rem;opacity:.6;transform:rotate(45deg);width:.36rem}.nav-dropdown-menu{background:var(--nav-menu-bg);border:1px solid var(--header-border);border-radius:var(--radius);box-shadow:var(--shadow);display:grid;gap:.1rem;left:50%;min-width:250px;opacity:0;padding:.7rem;pointer-events:none;position:absolute;top:calc(100% + .7rem);transform:translate(-50%,.4rem);transition:opacity 200ms var(--ease-lux),transform 200ms var(--ease-lux),visibility 200ms;visibility:hidden;z-index:30}.nav-dropdown:focus-within .nav-dropdown-menu,.nav-dropdown:hover .nav-dropdown-menu{opacity:1;pointer-events:auto;transform:translate(-50%,0);visibility:visible}.site-nav .nav-dropdown-menu a{border-radius:var(--radius);display:block;font-size:.74rem;line-height:1.25;padding:.68rem .85rem;white-space:nowrap}.site-nav .nav-dropdown-menu a:hover{background:var(--mist-soft);color:var(--header-link-active)}.site-nav .nav-book{align-items:center;background:var(--charcoal);border:1px solid var(--charcoal);border-radius:var(--radius);color:var(--paper);display:inline-flex;padding:.78rem 1.5rem;transition:background 240ms var(--ease-lux),color 240ms var(--ease-lux),border-color 240ms var(--ease-lux)}.site-nav a.nav-book,.site-nav a.nav-book[aria-current=page]{color:var(--paper)}.site-nav .nav-book:hover{background:var(--clay-deep);border-color:var(--clay-deep);color:var(--white)}.nav-toggle{appearance:none;background:0 0;border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;display:none;flex-direction:column;gap:5px;height:46px;justify-content:center;padding:0 11px;width:52px}.nav-toggle span{background:var(--charcoal);display:block;height:1px;transition:transform 240ms ease,opacity 200ms ease;width:100%}.hero{overflow:hidden;position:relative}.home-hero{align-items:flex-end;display:flex;min-height:clamp(500px,75svh,780px)}.hero-poster{height:100%;width:100%}.hero-poster,.hero-video{inset:0;position:absolute}.hero-poster img,.hero-video{height:100%;object-fit:cover;width:100%}.home-hero::after{background:linear-gradient(to top,rgba(23,31,40,.78)0,rgba(23,31,40,.3) 44%,rgba(23,31,40,.12) 70%,rgba(23,31,40,.22) 100%);content:"";inset:0;position:absolute}.hero-content{padding:clamp(4rem,8vw,7rem) var(--pad-x) clamp(4rem,7vw,6.5rem);position:relative;width:100%;z-index:2}.hero-copy{max-width:820px}.hero-copy .eyebrow{color:rgba(248,245,241,.85)}.hero-copy h1{color:var(--white);margin-bottom:1.4rem}.hero .hero-copy p,.hero-copy p{color:rgba(248,245,241,.86);max-width:640px}.hero-copy p{font-size:1.06rem;line-height:1.75}.hero-copy .button-secondary{border-color:rgba(248,245,241,.44);color:var(--paper)}.hero-copy .button-secondary:hover{background:rgba(248,245,241,.1);border-color:var(--paper);color:var(--paper)}.hero-copy .button-primary{background:var(--paper);border-color:var(--paper);color:var(--charcoal)}.hero .hero-copy .button-primary:hover,.hero-copy .button-primary:hover{background:var(--clay);border-color:var(--clay);color:#2a2019}.hero-copy>*{animation:none}.about-hero,.book-hero,.memberships-hero,.pilates-hero,.services-hero,.training-hero{align-items:flex-end;display:flex;min-height:clamp(480px,66svh,720px);position:relative}.memberships-hero::before{background-position:center}.memberships-hero::before,.services-hero::before,.training-hero::before{content:"";inset:0;position:absolute;background-size:cover}.about-hero::before,.book-hero::before{background-position:center}.about-hero::before,.book-hero::before,.pilates-hero::before{content:"";inset:0;position:absolute;background-size:cover}.memberships-hero::before{background-image:url(assets/gfmc-hero-sauna.webp)}.pilates-hero::before{background-image:url(assets/pilates-why-studio.webp);background-position:center 60%}.services-hero::before{background-image:url(assets/gfmc-hero-studio.webp);background-position:center 48%}.training-hero::before{background-image:url(assets/personal-training-lisa.webp);background-position:center 30%}.about-hero::before{background-image:url(assets/studio-space.webp)}.book-hero::before{background-image:url(assets/book-studio.webp)}.about-hero::after,.book-hero::after,.memberships-hero::after,.pilates-hero::after,.services-hero::after,.training-hero::after{background:linear-gradient(to top,rgba(23,31,40,.86)0,rgba(23,31,40,.48) 52%,rgba(23,31,40,.24) 100%);content:"";inset:0;position:absolute}.services-hero .hero-copy{max-width:960px}.services-hero .hero-copy h1{font-size:clamp(2.6rem,4.8vw,4.2rem)}.hero .hero-content{position:relative;z-index:2}.hero .hero-copy h1{color:var(--white);font-size:clamp(2.8rem,5.4vw,4.6rem);margin-bottom:1.3rem}.hero .hero-copy .eyebrow{color:rgba(248,245,241,.85)}.hero .hero-copy p{font-size:1.05rem}.home-hero .hero-copy h1{font-size:clamp(3.1rem,6.4vw,5.6rem)}.hero .hero-copy .button-primary{background:var(--paper);border-color:var(--paper);color:var(--charcoal)}.hero .hero-copy .button-secondary{border-color:rgba(248,245,241,.44);color:var(--paper)}.hero .hero-copy .button-secondary:hover{background:rgba(248,245,241,.1);border-color:var(--paper);color:var(--paper)}@media (max-width:1240px){.brand-logo{width:min(280px,28vw)}.site-nav{gap:1rem}.site-nav a{font-size:.74rem}}@media (max-width:1100px){.footer-grid,.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1020px){.nav-toggle{display:flex}.site-nav{align-items:flex-start;background:var(--paper);border-bottom:1px solid var(--line);display:grid;gap:0;justify-items:stretch;left:0;max-height:calc(100dvh - 88px);opacity:0;overflow-y:auto;padding:1rem var(--pad-x) 2rem;pointer-events:none;position:fixed;right:0;top:88px;transform:translateY(-8px);transition:opacity 240ms var(--ease-lux),transform 240ms var(--ease-lux);z-index:50}.site-nav.is-open{opacity:1;pointer-events:auto;transform:none}.nav-dropdown,.site-nav>a{border-bottom:1px solid var(--line-soft);padding:1.1rem 0;width:100%}.site-nav a{font-size:.92rem}.nav-dropdown{display:grid;gap:.4rem}.nav-dropdown::before{display:none}.nav-dropdown-menu{border:0;box-shadow:none;background:0 0;left:0;min-width:0;opacity:1;padding:.2rem 0 0 1rem;pointer-events:auto;position:static;transform:none;visibility:visible}.site-nav .nav-book{justify-content:center;margin-top:1.2rem;padding:1rem 1.5rem;width:100%}.body.nav-open{overflow:hidden}}@media (max-width:980px){.contact-grid,.membership-results-layout,.routine-intro-grid,.split,.split.reverse{grid-template-columns:minmax(0,1fr)}.routine-intro-grid .routine-intro-image{min-height:0;aspect-ratio:4/3}.section-heading{align-items:flex-start;flex-direction:column;gap:1rem}.card-grid{grid-template-columns:minmax(0,1fr)}.service-card img{aspect-ratio:16/10}.home-hero{min-height:clamp(560px,88svh,820px)}}@media (max-width:640px){.pilates-hero::before{background-image:url(assets/pilates-why-studio-mobile.webp)}.services-hero::before{background-image:url(assets/gfmc-hero-studio-mobile.webp)}.about-hero::before{background-image:url(assets/studio-space-mobile.webp)}body{font-size:16.5px}.header-inner{min-height:72px}.site-nav{top:72px;max-height:calc(100dvh - 72px)}.brand-logo{max-height:48px;width:min(240px,calc(100vw - 6.5rem))}.contact-form,.footer-grid,.pricing-grid{grid-template-columns:minmax(0,1fr)}.button{width:100%}.button-row{grid-auto-flow:row;grid-auto-columns:unset;width:100%}.hero-copy .button-row{max-width:360px}}.team-card img{aspect-ratio:5/4;height:auto;max-height:320px;object-fit:cover;width:100%}.about-hero::before{background-image:url("assets/gfmc-hero-studio.webp");background-position:center 42%}.about-hero::after{background:linear-gradient(to top,rgba(23,31,40,.8) 0,rgba(23,31,40,.42) 52%,rgba(23,31,40,.18) 100%)}.about-hero .hero-copy{position:relative}.about-hero .hero-copy::before{background:radial-gradient(102% 100% at 30% 52%,rgba(16,22,29,.74) 0,rgba(16,22,29,.7) 55%,rgba(16,22,29,.42) 82%,rgba(16,22,29,0) 100%);border-radius:28px;content:"";filter:blur(5px);inset:-2.25rem -3.5rem -2.5rem -2.75rem;pointer-events:none;position:absolute;z-index:-1}.team-card-body .team-card-cta{margin-top:1.1rem}.package-card p.package-term{color:var(--slate);font-size:.78rem;letter-spacing:.06em;margin-top:.45rem;text-transform:uppercase}.about-story-section p+p{margin-top:1.05rem}@media (max-width:1020px){.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{left:0;opacity:1;pointer-events:auto;transform:none;visibility:visible}}@media (max-width:640px){.about-hero::before{background-image:url("assets/gfmc-hero-studio-mobile.webp")}}
.site-nav>a,.nav-dropdown-trigger{white-space:nowrap}.pt-hero .hero-copy{position:relative}.pt-hero .hero-copy::before{background:radial-gradient(102% 100% at 30% 52%,rgba(16,22,29,.74) 0,rgba(16,22,29,.7) 55%,rgba(16,22,29,.42) 82%,rgba(16,22,29,0) 100%);border-radius:28px;content:"";filter:blur(5px);inset:-2.25rem -3.5rem -2.5rem -2.75rem;pointer-events:none;position:absolute;z-index:-1}
.contact-form-inline{gap:1.4rem;grid-template-rows:none;height:auto;margin-top:1.8rem}.contact-form-inline .form-row-full textarea{height:auto;min-height:120px}.contact-section .field-optional{letter-spacing:.12em;opacity:.6;text-transform:none}@media (max-width:780px){.contact-form input,.contact-form select,.contact-form textarea{min-height:44px;padding-bottom:.6rem}.contact-form .button{min-height:46px;width:100%}}
