/* Dianna Spira: preserve the original palette and site sections. */
:root{--banner-height:78px;--ds-accent:#c3f36b}.ds-brand-logo{display:block;width:202px;height:52px;object-fit:contain;object-position:left center}.ds-footer-logo{width:245px;max-width:100%;height:auto}.top-banner{display:flex;align-items:center;justify-content:space-between;height:var(--banner-height);z-index:70}.site-logo{display:flex;align-items:center;line-height:1;padding:0;max-width:none}.top-project-cta,.top-project-cta:hover,.top-project-cta:focus-visible{display:inline-flex!important;align-items:center!important;justify-content:center!important;position:static!important;transform:none!important;height:42px;min-height:42px;margin:0;padding:0 22px!important;line-height:1!important;vertical-align:middle;background:var(--ds-accent);color:#17221a;border:1px solid var(--ds-accent);border-radius:0;filter:none!important;text-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;animation:none!important;box-shadow:none;font-size:10px;letter-spacing:1px;transition:color .2s ease,background-color .2s ease,box-shadow .2s ease!important}.top-project-cta:hover,.top-project-cta:focus-visible{background:transparent!important;color:var(--ds-accent)!important;border-color:var(--ds-accent)!important;box-shadow:0 0 12px #c3f36b55,inset 0 0 6px #c3f36b18!important}.marketing-navigation{display:none!important}.menu-panel{top:var(--banner-height)!important;height:auto;min-height:52px;padding:18px 4vw;z-index:65;background:rgba(17,28,21,.91);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);gap:25px;flex-wrap:wrap;transform:translateY(-110%);visibility:hidden;opacity:0;pointer-events:none;transition:transform .36s ease,opacity .25s ease,visibility .36s}.menu-panel.open{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}.menu-link,.menu-link:hover,.menu-link:focus-visible{font-size:10px;color:#fff!important;letter-spacing:1px;animation:none!important;transform:none!important;filter:none!important;text-shadow:none!important;transition:color .2s ease!important}.menu-link:hover,.menu-link:focus-visible{color:var(--ds-accent)!important}.menu-button{line-height:1.4}.contact-stage{z-index:75;pointer-events:none}.contact-panel,.contact-panel.booking-expanded,.contact-panel.contact-expanded,.contact-panel.login-expanded{position:fixed;top:calc(var(--banner-height) + 20px);right:20px;bottom:auto;left:auto;width:min(790px,calc(100vw - 40px));height:min(660px,calc(100dvh - var(--banner-height) - 40px));max-height:calc(100dvh - var(--banner-height) - 40px);min-height:0;padding:28px 30px 20px;overflow:hidden;overscroll-behavior:contain;visibility:hidden}.contact-panel.open{visibility:visible}.contact-panel.login-expanded{height:min(340px,calc(100dvh - var(--banner-height) - 40px));max-height:calc(100dvh - var(--banner-height) - 40px)}#compactPanelInner{height:100%;min-height:0;overflow:hidden}.contact-close{top:8px;right:10px}.booking-shell{height:100%;min-height:0}.booking-head{flex:0 0 auto}.booking-track{width:400%;height:100%}.booking-step{width:25%;flex:0 0 25%;height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding-right:0}.booking-step>.form-grid,.booking-step>.review-card,.booking-step>.ys-result{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding-right:8px}.booking-step>.compact-panel-title,.booking-step>.compact-sub{flex:0 0 auto}.booking-nav{position:relative;flex:0 0 auto;bottom:auto;display:flex;align-items:center;justify-content:flex-end;gap:9px;margin:0;padding:12px 0 0;min-height:50px;background:transparent;z-index:2}.booking-error{flex:0 0 auto;min-height:16px;margin-top:4px}.booking-time-step .booking-time-scroll-zone{max-height:none;flex:1 1 90px;min-height:0;margin-top:5px}.booking-time-step .calendar-grid{flex:0 0 auto;gap:4px}.booking-time-step .calendar-day{min-height:0;height:30px;padding:0;font-size:12px}.booking-time-step .calendar-head{min-height:30px;margin:0 0 5px}.booking-time-step .booking-nav{padding-top:8px;min-height:44px;margin:0}.booking-time-step .compact-sub{margin:0 0 8px}.booking-time-step .time-scroll{overscroll-behavior:contain}.contact-layout{display:flex;height:100%;min-height:0;overflow:hidden}.contact-form-block{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}.contact-form-block>.compact-panel-title,.contact-form-block>.compact-sub{flex:0 0 auto}.contact-form-block>.form-grid{min-height:0;flex:1;align-content:start;overflow:auto;overscroll-behavior:contain}.contact-form-block>.form-grid>.full:has(#contactSend){position:sticky;bottom:0;padding:12px 0;background:#1b2529;z-index:2}.contact-form-block .form-note{flex:none;margin:5px 0}.contact-bottom{display:none!important}.contact-map-wing{display:none!important}.contact-success-copy{height:100%;overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column}.contact-success-actions{margin-top:auto;padding:16px 0 0;position:sticky;bottom:0;background:#1a252a}.ys-prefix-box{height:38px;min-width:40px;padding:0 8px;font-size:14px;line-height:1;color:var(--ds-accent);border-color:#c3f36b75}.code-dash{display:inline-block;color:var(--ds-accent);font-size:20px;line-height:1;margin:0 2px}.ys-login-row{align-items:center;flex-wrap:nowrap;gap:8px}.ys-go{align-self:center}.intake-page-panel{z-index:76;top:calc(var(--banner-height) + 12px);left:20px;right:20px;bottom:18px;overflow:hidden;overscroll-behavior:contain}.intake-page-panel.gate-mode{height:230px;max-height:calc(100dvh - var(--banner-height) - 30px)}.intake-page-panel.gate-mode.expanded{height:calc(100dvh - var(--banner-height) - 30px);bottom:18px;max-height:calc(100dvh - var(--banner-height) - 30px)}.intake-page-inner{top:30px;right:26px;left:26px;bottom:20px}.intake-page-panel.gate-mode .intake-page-inner{bottom:18px}#intakePageInner{height:100%;min-height:0}.intake-shell{height:100%;min-height:0;overflow:hidden}.intake-head{flex:0 0 auto}.intake-page-panel.expanded .intake-head{display:none}#intakeFormHost.revealed{overflow:hidden;padding:0;flex:1;min-height:0;height:100%}.fitness-intake{height:100%;display:flex;flex-direction:column;min-height:0}.fitness-intake>h2{font-size:26px;margin:0 0 8px}.fitness-intake>.compact-sub{margin:0 0 8px}.fitness-intake #fitnessIntake{display:flex;flex:1;min-height:0;flex-direction:column;overflow:hidden}.fitness-tabs{flex:none;margin:8px 0 12px}.fitness-tabs button{padding:10px 12px}.fitness-intake [data-fitness-panel]{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding-right:12px}.fitness-intake #fitnessNote{margin:5px 0;flex:none}.fitness-intake .booking-nav{flex:none;padding:10px 0 0;margin:0}.dashboard-content{overscroll-behavior:contain}.ds-scrollable{overscroll-behavior:contain}.ds-test-code{font-size:12px;color:#c3f36b}.contact-panel .glass-field{min-height:39px}.contact-panel textarea.glass-field{min-height:65px}.login-expanded #compactPanelInner{overflow:auto;overscroll-behavior:contain}.review-row{padding:7px 0}.ys-result-code{color:var(--ds-accent)}
@media(max-width:900px){.menu-panel{gap:18px}.contact-panel,.contact-panel.booking-expanded,.contact-panel.contact-expanded,.contact-panel.login-expanded{width:calc(100vw - 32px);right:16px;top:calc(var(--banner-height) + 12px);height:calc(100dvh - var(--banner-height) - 28px);max-height:calc(100dvh - var(--banner-height) - 28px)}.contact-panel.login-expanded{height:min(350px,calc(100dvh - var(--banner-height) - 28px))}.booking-head .compact-panel-title{font-size:27px;margin-bottom:12px}.booking-head .compact-sub{font-size:11px;margin:0 0 12px}.intake-page-panel{left:12px;right:12px}.menu-link{font-size:10px}.ds-brand-logo{width:185px}.contact-panel .form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){:root{--banner-height:70px}.ds-brand-logo{width:165px;height:45px}.top-banner{padding:0 15px}.top-project-cta,.top-project-cta:hover,.top-project-cta:focus-visible{height:38px;min-height:38px;min-width:126px;padding:0 12px!important;font-size:8px;letter-spacing:.6px}.menu-panel{gap:16px 20px;justify-content:flex-start;padding:18px 20px}.contact-panel,.contact-panel.booking-expanded,.contact-panel.contact-expanded,.contact-panel.login-expanded{padding:28px 16px 14px;width:calc(100vw - 20px);right:10px}.compact-panel-title{font-size:25px;margin-bottom:12px}.compact-sub{font-size:11px;line-height:1.4}.booking-step>.form-grid{gap:8px}.booking-step .project-choice{gap:6px}.booking-step .project-choice button{min-width:105px;padding:8px;font-size:9px}.booking-step>.form-grid>.project-choice{grid-column:1/-1}.contact-panel .glass-field{font-size:12px;padding:9px}.booking-step textarea.glass-field{height:60px;min-height:60px;resize:none}.booking-nav .blue-action{font-size:10px;padding:10px 12px;min-height:36px}.ys-boxes{gap:4px}.ys-digit{width:27px!important;height:36px!important}.ys-prefix-box{min-width:34px;height:36px;padding:0 5px;font-size:12px}.ys-login-row{gap:4px;flex-wrap:wrap}.ys-go{min-height:36px;margin-top:3px}.code-dash{font-size:16px;margin:0}.intake-page-inner{left:14px;right:14px;top:30px}.intake-page-panel.gate-mode{height:255px}.fitness-tabs{gap:5px;margin:7px 0}.fitness-tabs button{padding:8px 4px;font-size:10px;flex:1 1 40%}.fitness-intake>h2{font-size:22px}.fitness-intake>.compact-sub{font-size:10px}.fitness-intake [data-fitness-panel]{padding-right:6px}.fitness-intake label{font-size:12px}.fitness-intake .booking-nav{min-height:43px;padding-top:8px}.booking-time-step .calendar-day{height:26px}.booking-time-step .time-grid{grid-template-columns:repeat(3,1fr)}.booking-time-step .time-slot{padding:7px 4px;font-size:10px}.booking-time-step .calendar-weekday{padding:3px 0;font-size:9px}.booking-time-step .booking-time-scroll-zone{flex-basis:70px}.review-row{font-size:11px;grid-template-columns:76px 1fr}.intake-price-summary{display:none!important}}
@media(max-height:650px){.contact-panel .compact-panel-title{font-size:23px;margin-bottom:10px}.booking-head .compact-sub{margin-bottom:8px}.booking-time-step .calendar-day{height:23px}.booking-time-step .calendar-head{height:25px;min-height:25px}.contact-panel{padding-top:25px!important}.booking-nav{min-height:40px;padding-top:7px}.booking-nav .blue-action{padding:8px 12px}.fitness-intake>h2{font-size:21px}.fitness-tabs button{padding:7px}.intake-page-panel.gate-mode{height:220px}}

.intake-page-panel>.panel-close{top:8px!important;right:12px!important}.contact-form-block{flex:1 1 auto!important}.fitness-intake{margin:0!important;padding:0!important;border:0!important}.contact-panel .ys-role-switch{flex:none}.intake-gate-profile{overflow:auto;overscroll-behavior:contain}.intake-gate .ys-login-row{margin-top:8px}
.contact-panel{transition:transform .72s cubic-bezier(.22,.72,.22,1),visibility 0s .72s!important}.contact-panel.open{transition:transform .72s cubic-bezier(.22,.72,.22,1),visibility 0s!important}@media(max-width:350px){.ds-brand-logo{width:145px}.top-project-cta,.top-project-cta:hover,.top-project-cta:focus-visible{min-width:112px;padding:0 8px!important;font-size:7px}.top-banner{padding:0 12px}}
