@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, .16);--line-soft: rgba(61, 74, 88, .1);--shadow: 0 22px 60px rgba(61, 74, 88, .1);--soft-shadow: 0 14px 34px rgba(61, 74, 88, .07);--section-dark: #233140;--header-bg: rgba(248, 245, 241, .94);--header-border: rgba(61, 74, 88, .12);--header-link: #4f5b67;--header-link-active: #3d4a58;--nav-menu-bg: #fffdf9;--panel-soft: rgba(255, 253, 249, .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(.22, .61, .36, 1)}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:105px}main [id]{scroll-margin-top:105px}body{margin:0;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{color:var(--charcoal);text-decoration-thickness:1px;text-underline-offset:.22em}a:hover{color:var(--clay-deep)}p{margin:0 0 1.25rem}h1,h2,h3,h4{color:var(--charcoal);font-family:var(--serif);font-weight:480;line-height:1.06;letter-spacing:.005em;margin:0;text-wrap:balance}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}h3{font-family:var(--sans-display);font-size:1.32rem;line-height:1.28;letter-spacing:.02em}h4{font-family:var(--sans-display);font-size:1.2rem;line-height:1.3}ul{margin:0;padding-left:1.2rem}li+li{margin-top:.45rem}.eyebrow{color:var(--slate);display:flex;align-items:center;gap:.9rem;font-family:var(--sans-display);font-size:.72rem;letter-spacing:.32em;margin-bottom:1.4rem;text-transform:uppercase}.eyebrow:before{content:"";display:inline-block;width:2.2rem;height:1px;background:var(--clay);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:#fffdf9cc}.section-dark h2,.section-dark h3,.section-dark .eyebrow{color:var(--paper)}.section-dark .eyebrow:before{background:var(--clay)}.section-dark a{color:var(--paper)}.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 h2+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}.service-detail-section .section-heading p{max-width:none}.section-heading>div{max-width:none}.section-heading>div p{max-width:none}.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 .26s var(--ease-lux),color .26s var(--ease-lux),border-color .26s 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:transparent;border-color:#3d4a5857}.button-secondary:hover{border-color:var(--charcoal);color:var(--charcoal);background:#3d4a580a}.section-dark .button-primary,.cta-band .button-primary{background:var(--clay);border-color:var(--clay);color:#2a2019}.section-dark .button-primary:hover,.cta-band .button-primary:hover{background:var(--paper);border-color:var(--paper);color:var(--charcoal)}.section-dark .button-secondary,.cta-band .button-secondary{border-color:#f8f5f166;color:var(--paper)}.section-dark .button-secondary:hover,.cta-band .button-secondary:hover{border-color:var(--paper);background:#f8f5f114;color:var(--paper)}.skip-link{background:var(--charcoal);color:var(--paper);left:1rem;padding:.6rem 1rem;position:absolute;top:-4rem;transition:top .2s 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{align-items:center;display:inline-flex;flex-shrink:0;margin-right:auto;text-decoration:none}.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;text-decoration:none;transition:color .2s ease}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--header-link-active)}.site-nav>a[aria-current=page]:not(.nav-book),.nav-dropdown [aria-current=page].nav-dropdown-trigger{border-bottom:1px solid var(--clay);padding-bottom:.3rem}.nav-dropdown{align-items:center;display:inline-flex;position:relative}.nav-dropdown:before{content:"";height:.9rem;left:-.75rem;position:absolute;right:-.75rem;top:100%}.nav-dropdown-trigger{align-items:center;display:inline-flex;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 .2s var(--ease-lux),transform .2s var(--ease-lux),visibility .2s;visibility:hidden;z-index:30}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{opacity:1;pointer-events:auto;transform:translate(-50%);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 .24s var(--ease-lux),color .24s var(--ease-lux),border-color .24s 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:transparent;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 .24s ease,opacity .2s ease;width:100%}.hero{overflow:hidden;position:relative}.home-hero{align-items:flex-end;display:flex;min-height:clamp(500px,75svh,780px)}.hero-poster,.hero-video{height:100%;inset:0;position:absolute;width:100%}.hero-poster img,.hero-video{height:100%;object-fit:cover;width:100%}.home-hero:after{background:linear-gradient(to top,#171f28c7,#171f284d 44%,#171f281f 70%,#171f2838);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:#f8f5f1d9}.hero-copy .eyebrow:before{background:var(--clay)}.hero-copy h1{color:var(--white);margin-bottom:1.4rem}.hero-copy p{color:#f8f5f1db;font-size:1.06rem;line-height:1.75;max-width:640px}.hero-copy .button-secondary{border-color:#f8f5f170;color:var(--paper)}.hero-copy .button-secondary:hover{background:#f8f5f11a;border-color:var(--paper);color:var(--paper)}.hero-copy .button-primary{background:var(--paper);border-color:var(--paper);color:var(--charcoal)}.hero-copy .button-primary:hover{background:var(--clay);border-color:var(--clay);color:#2a2019}@keyframes gfmc-hero-in{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}.hero-copy>*{animation:none}.memberships-hero,.services-hero,.training-hero,.about-hero,.book-hero,.pilates-hero{align-items:flex-end;display:flex;min-height:clamp(480px,66svh,720px);position:relative}.memberships-hero:before,.services-hero:before,.training-hero:before,.about-hero:before,.book-hero:before,.pilates-hero:before{content:"";inset:0;position:absolute;background-position:center;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)}.memberships-hero:after,.services-hero:after,.training-hero:after,.about-hero:after,.book-hero:after,.pilates-hero:after{background:linear-gradient(to top,#171f28db,#171f287a 52%,#171f283d);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)}.hero .hero-copy .eyebrow{color:#f8f5f1d9}.hero .hero-copy .eyebrow:before{background:var(--clay)}.hero .hero-copy p{color:#f8f5f1db;font-size:1.05rem;max-width:640px}.hero .hero-copy h1{font-size:clamp(2.8rem,5.4vw,4.6rem);margin-bottom:1.3rem}.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-primary:hover{background:var(--clay);border-color:var(--clay);color:#2a2019}.hero .hero-copy .button-secondary{border-color:#f8f5f170;color:var(--paper)}.hero .hero-copy .button-secondary:hover{background:#f8f5f11a;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){.pricing-grid,.footer-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 .24s var(--ease-lux),transform .24s var(--ease-lux);z-index:50}.site-nav.is-open{opacity:1;pointer-events:auto;transform:none}.site-nav>a,.nav-dropdown{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:transparent;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){.split,.split.reverse,.routine-intro-grid,.membership-results-layout,.contact-grid{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))}.pricing-grid,.contact-form,.footer-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}}
.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%}}
