.booking-page{--booking-hero: clamp(2.25rem, 3.8vw, 3.75rem);--booking-section: 2rem;--booking-heading: 1.5rem;--booking-point: 1.25rem;--booking-body: 1.0625rem;--booking-space: 4.5rem;--booking-measure: 65ch;--booking-quick: .16s;--booking-enter: .52s}.visual-site .booking-page>.section-space{padding-block:var(--booking-space)}.visual-site .booking-page .page-hero .page-hero-inner{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:3rem;min-height:480px}.visual-site .booking-page .page-hero .page-hero-copy{order:0;padding-block:2.5rem 3rem}.visual-site .booking-page .page-hero .page-hero-copy h1{margin:1rem 0 1.5rem;max-width:21ch;font-size:var(--booking-hero);font-weight:600;line-height:1.08;letter-spacing:-.015em;text-transform:none;text-wrap:balance}.visual-site .booking-page .page-hero .page-hero-copy h1 .text-primary{color:inherit}.visual-site .booking-page .page-hero .page-hero-copy>p{max-width:56ch;font-size:var(--booking-body);line-height:1.7;margin-bottom:1.75rem}.visual-site .booking-page .page-hero .page-hero-visual{order:1}.visual-site .booking-page .page-hero .page-hero-visual--portrait{height:440px}.visual-site .booking-page .page-hero .page-hero-visual .visual-monogram{font-size:240px}.visual-site .booking-page :is(.page-hero,.booking-section) .button{min-height:52px;font-size:.875rem;transition:transform var(--booking-quick) var(--motion-ease)}.visual-site .booking-page .button:hover{transform:none}.visual-site .booking-page .button:hover svg{transform:none}.visual-site .booking-page .button svg{transition:transform var(--booking-quick) var(--motion-ease)}.visual-site .booking-page :is(.content-section-title,.faq-layout .section-title){margin:0 0 1.5rem;font-size:var(--booking-section);font-weight:600;line-height:1.15;letter-spacing:-.01em;text-transform:none}.visual-site .booking-page .service-points{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.visual-site .booking-page .service-point{padding-top:1.25rem}.visual-site .booking-page .service-point h3{font-family:var(--font-sans);font-size:var(--booking-point);font-weight:600;line-height:1.4;letter-spacing:-.01em;text-transform:none;margin-bottom:.75rem}.visual-site .booking-page .service-point p{font-size:1rem;line-height:1.7}.visual-site .booking-page .reading-column{margin-inline:0;max-width:var(--booking-measure);font-size:var(--booking-body)}.visual-site .booking-page .booking-article-heading{margin:0 0 1rem;font-family:var(--font-sans);font-size:var(--booking-heading);font-weight:600;line-height:1.35;letter-spacing:-.015em;text-transform:none;text-wrap:balance}.visual-site .booking-page .reading-column p{margin-bottom:1rem;font-size:var(--booking-body);line-height:1.75}.visual-site .booking-page .content-text-section+.content-text-section{margin-top:2.5rem}.visual-site .booking-page .faq-layout{grid-template-columns:minmax(0,1fr);gap:1.5rem}.visual-site .booking-page .faq-layout>div>p{font-size:1rem;line-height:1.7}.visual-site .booking-page .faq-layout .eyebrow{margin-bottom:.75rem}.visual-site .booking-page .faq-list{max-width:var(--booking-measure);font-size:var(--booking-body)}.visual-site .booking-page .faq-list summary{padding-block:1.25rem;line-height:1.6}.visual-site .booking-page .faq-list details p{margin:0 0 1.5rem;max-width:60ch;line-height:1.75}.visual-site .booking-page .booking-inner{min-height:340px}.visual-site .booking-page .booking-copy{padding-block:3rem}.visual-site .booking-page .booking-copy h2{margin:1rem 0;font-size:2.5rem;font-weight:600;line-height:1.15;text-transform:none}.visual-site .booking-page .booking-copy p{line-height:1.7}@keyframes booking-intro{0%{opacity:.72;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes booking-answer{0%{opacity:.55;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:no-preference){.booking-page .page-hero .page-hero-copy{animation:booking-intro var(--booking-enter) var(--motion-ease) both}.booking-page .faq-list details[open]>p{animation:booking-answer .24s var(--motion-ease)}.visual-site .booking-page .button:focus-visible svg{transform:translate(2px,-2px)}}@media(hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.visual-site .booking-page .button:hover svg{transform:translate(2px,-2px)}}@media(max-width:900px){.booking-page{--booking-space: 3rem;--booking-body: 1rem}.visual-site .booking-page .service-points{grid-template-columns:minmax(0,1fr);gap:1.5rem}.visual-site .booking-page .service-point p{max-width:var(--booking-measure)}.visual-site .booking-page .page-hero .page-hero-inner{gap:1.5rem}.visual-site .booking-page .page-hero .page-hero-visual--portrait{height:340px}}@media(max-width:760px){.visual-site .booking-page .page-hero .page-hero-inner{grid-template-columns:minmax(0,1fr);gap:0;min-height:0}.visual-site .booking-page .page-hero .page-hero-copy{padding-block:1.5rem}.visual-site .booking-page .page-hero .page-hero-copy h1{max-width:22ch}.visual-site .booking-page .page-hero .page-hero-visual--portrait{height:240px;width:min(100%,310px)}.visual-site .booking-page .page-hero .page-hero-visual .visual-monogram{font-size:200px}.visual-site .booking-page .booking-copy h2{font-size:var(--booking-section)}}@media(prefers-reduced-motion:reduce){.booking-page *,.booking-page *:before,.booking-page *:after{animation:none!important;transition:none!important}.visual-site .booking-page .button:is(:hover,:active,:focus-visible),.visual-site .booking-page .button:is(:hover,:focus-visible) svg,.visual-site .booking-page .text-link:is(:hover,:focus-visible) svg{transform:none}}
