.booking-direct-contact{display:inline-block;margin-top:16px;color:#c2d8ec;font-size:13px;line-height:1.5;border-bottom:1px solid #ffffff33;padding-bottom:5px}
.preview-booking-note{margin:14px 0 0;color:#94a5b8;font-size:12px;line-height:1.5}
.booking .booking-head>.preview-booking-note{display:block!important}
#highlights .studio-caption h3{min-width:0;overflow-wrap:normal}
#highlights .studio-caption>span{white-space:normal;text-align:right;max-width:145px;line-height:1.5}
.reference-cursor{border:1px solid #ffffff16}
.mobile-menu:not(.active){pointer-events:none}
.nav-shell.is-scrolled{background:#03070d!important}
#highlights .highlights-head{border-top:0!important}
#highlights .studio-solar img{filter:none}
#highlights .studio-solar::after{background:linear-gradient(transparent,#03080b26)}
/* Identical edge-to-edge gaps, including the join between the two loops. */
.brand-orbit{--brand-gap:clamp(55px,6vw,90px)}
.brand-orbit .logo-track{gap:0!important;animation-duration:38s!important}
.brand-orbit .logo-set{width:max-content;flex:none;justify-content:flex-start!important;gap:var(--brand-gap)!important;padding:0 var(--brand-gap) 0 0!important}
.brand-orbit .orbit-logo{width:auto!important;min-width:0!important;flex:none!important;justify-content:flex-start!important;gap:0!important;white-space:nowrap}
.brand-orbit.motion-paused .logo-track{animation-play-state:paused!important}
@media(max-width:700px){
 .brand-orbit{--brand-gap:48px}.brand-orbit .orbit-logo b{font-size:12px!important;letter-spacing:.09em!important}
}
@media(max-width:700px){#highlights .studio-caption{column-gap:12px}#highlights .studio-caption h3{font-size:20px!important}#highlights .studio-caption>span{max-width:105px;font-size:9px!important}}

/* Four corners assemble into one compact system; no leftover timeline rail. */
main .method::before,.method ol::before,.method ol::after,.method li::before,.method li::after{display:none!important;content:none!important}
main .method ol{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;padding:0!important;margin:26px 0 0!important}
main .method li{min-width:0;min-height:0!important;width:auto!important;margin:0!important;padding:0!important;border:0!important;background:none!important;transform:none!important;transition:none!important}
.method .method-card{position:relative;height:100%;box-sizing:border-box;min-height:174px;padding:24px 26px;border:1px solid #a3c5eb24;background:linear-gradient(125deg,#14243680,#0b121e60 65%);border-radius:8px;transform-origin:center;backface-visibility:hidden}
.method .method-card::after{content:"";position:absolute;top:-1px;left:26px;width:44px;height:1px;background:linear-gradient(90deg,#86c9f7aa,transparent)}
.method .method-symbol{display:block;width:30px;height:30px;margin-bottom:20px;color:#8fc6ee;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
main .method li h3{margin:0 0 8px!important;font-size:22px!important;line-height:1.15;color:#e6eef7!important}
main .method li p{margin:0!important;font-size:13px!important;line-height:1.6!important;max-width:320px}
#faq{align-items:start!important;column-gap:40px!important;row-gap:18px!important}
#faq .faq-head{margin:0!important}
#faq .faq-head h2{margin-bottom:0!important}
#faq .faq-list{margin:0!important}
@media(max-width:600px){
 #services{--service-image:url('/assets/services/position.webp')}
 main .method ol{gap:10px!important;margin-top:22px!important}
 .method .method-card{padding:18px 15px;min-height:158px}
 .method .method-card::after{left:15px;width:28px}
 .method .method-symbol{width:26px;height:26px;margin-bottom:18px}
 main .method li h3{font-size:18px!important}
 main .method li p{font-size:12px!important;line-height:1.55!important;hyphens:none}
 #faq{row-gap:18px!important}
}
@media(max-width:360px){.method .method-card{padding:16px 12px;min-height:166px}main .method li h3{font-size:16px!important}}

html.menu-is-open{overflow-y:hidden!important}
html.wheel-is-easing{scroll-behavior:auto!important}
.booking-availability-note{grid-column:1/-1;font-size:12px;line-height:1.6;color:#a9bbce;margin:0}
.booking-availability-retry{grid-column:1/-1;justify-self:start;border:1px solid #7bb6e84d;border-radius:6px;padding:9px 14px;background:#102033;color:#d3e8fa;font:inherit;font-size:12px;cursor:pointer}
.mobile-menu{overflow-y:auto;overscroll-behavior:contain;max-height:100vh;max-height:100dvh}
/* A clipped parent preserves sticky positioning; overflow:hidden did not. */
@media(max-width:900px){
 main .closing{overflow:visible!important}
 .closing .closing-sticky{height:100vh!important;height:100svh!important;min-height:0!important}
 @supports(overflow:clip){main .closing{overflow:clip!important}}
}
/* Keep the same finale active on tablets and landscape phones as well. */
@media(min-width:601px) and (max-width:900px){
 main .closing{--seam-open:0;--aperture-open:0;--title-reveal:0;--seam-drop:0;--action-reveal:0;--footer-reveal:0;min-height:0!important;padding:0!important;display:block!important;background:#010309!important;color:#fff!important}
 .closing .closing-sticky{position:sticky;top:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 28px 40px;overflow:hidden;isolation:isolate;text-align:center}
 .closing .closing-backdrop{position:absolute!important;inset:0!important;opacity:calc(.12 + var(--aperture-open)*.65)!important;clip-path:inset(calc((1 - var(--aperture-open))*50%) 0)!important;animation:none!important}
 .closing .closing-pulse{position:absolute!important;left:50%!important;top:calc(50% + var(--seam-drop)*50%)!important;width:100vw!important;transform:translateX(-50%) scaleX(var(--seam-open))!important;opacity:var(--seam-open)!important;animation:none!important}
 .closing .closing-beam{display:none!important}
 .closing h2{position:relative;z-index:8;order:1;margin:0!important;font-size:clamp(36px,6vw,54px)!important;line-height:1.05!important;opacity:var(--title-reveal)!important;transform:translateY(calc((1 - var(--title-reveal))*14px))!important;animation:none!important}
 .closing .closing-action{position:relative;z-index:8;order:2;margin:24px 0 0;opacity:var(--action-reveal)!important;transform:translateY(calc((1 - var(--action-reveal))*12px))!important}
 .closing .closing-action small{display:block;max-width:430px;margin:0 auto 18px;font-size:15px;line-height:1.5;color:#aab6c7;text-transform:none;letter-spacing:0}
 .closing .closing-mobile-label{display:none!important}
}
@media(max-height:550px) and (max-width:900px){
 .closing .closing-sticky{padding:60px 22px 24px!important}
 .closing .closing-action{margin-top:18px!important}
 .closing .closing-action small{font-size:13px!important;line-height:1.4!important}
 .closing h2{font-size:32px!important}
}
@media(max-width:600px){
 .booking .booking-services{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
 #booking .booking-service-btn{display:grid!important;grid-template-columns:minmax(0,1fr) 66px;align-items:center;gap:8px;min-height:58px!important;padding:10px 12px!important;text-align:left!important}
 .booking .booking-service-btn b{font-size:12px!important;line-height:1.4!important;hyphens:none;overflow-wrap:normal}
 .booking .booking-service-btn span{max-width:76px;margin:0!important;font-size:10px!important;line-height:1.45!important;text-align:right;hyphens:none;overflow-wrap:normal}
 #bookingForm input:not([type=checkbox]),#bookingForm textarea{font-size:16px!important}
}
