.contact-page{--contact-muted:var(--color-text-secondary)}.contact-intro{padding-block:50px 62px;position:relative}.contact-intro h1{max-width:850px;font-size:clamp(54px,6.5vw,88px)}.contact-intro>p:not(.eyebrow){max-width:570px;font-size:var(--text-body)}.contact-hero-flower{color:var(--color-text-accent);position:absolute;top:112px;right:4%;transform:rotate(-18deg)}.contact-signature-art{border-radius:48% 48% 3px 3px;width:250px;height:310px;position:absolute;top:60px;right:1%;overflow:hidden}.contact-signature-art img{object-fit:cover}@media (min-width:1101px){.contact-intro h1{max-width:calc(100% - 300px)}}@media (max-width:1100px){.contact-signature-art{display:none}}.contact-kicker{font-size:var(--text-micro);letter-spacing:1.8px;color:var(--color-text-accent);display:block}.contact-main-grid{gap:var(--space-20);grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;padding-bottom:85px;display:grid}.contact-main-grid>*,.contact-info-row>div{min-width:0}.contact-reach{padding-top:23px}.contact-reach h2,.contact-form-panel h2{font-size:var(--text-title-lg);letter-spacing:-.8px;margin-block:14px;line-height:1.1}.contact-reach-intro{font-size:var(--text-small);color:var(--contact-muted);max-width:300px}.contact-info-list{margin-top:30px}.contact-info-row{align-items:flex-start;gap:var(--space-5);border-top:1px solid var(--line);padding:23px 0;display:flex}.contact-info-row>svg{color:var(--color-text-accent);flex-shrink:0;margin-top:2px}.contact-info-row dt{font-size:var(--text-micro);letter-spacing:.6px;margin-bottom:9px;font-weight:600}.contact-info-row dd{font-size:var(--text-small);overflow-wrap:anywhere;margin:0;line-height:1.8}.contact-info-row a{text-underline-offset:5px;min-height:32px;text-decoration:underline;-webkit-text-decoration-color:var(--color-border);text-decoration-color:var(--color-border);align-items:center;gap:9px;display:inline-flex}.contact-info-row a svg{flex-shrink:0}.contact-info-row p{font-size:var(--text-micro);color:var(--contact-muted);margin-top:6px}.contact-page address{font-style:normal}.contact-form-panel{background:var(--color-surface);border:1px solid var(--color-surface-selected);padding:36px}.contact-form-panel>p,.contact-prepared>p{font-size:var(--text-small);color:var(--contact-muted);line-height:1.9}.contact-required{font-size:var(--text-micro);color:var(--contact-muted);margin:var(--space-6) 0 18px}.contact-input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 18px;display:grid}.contact-input{flex-direction:column;gap:9px;min-width:0;display:flex}.contact-input.full{grid-column:1/-1}.contact-input label{font-size:var(--text-caption);font-weight:500}.contact-input label span{color:var(--contact-muted);font-weight:400;font-size:var(--text-micro)}.contact-input input,.contact-input textarea{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-input);width:100%;min-width:0;color:var(--ink);font-size:var(--text-body);min-height:51px;transition:border-color var(--duration-control) var(--ease-control), box-shadow var(--duration-control) var(--ease-control);padding:14px}.contact-input textarea{resize:vertical;line-height:1.8}.contact-input input:focus-visible,.contact-input textarea:focus-visible{outline:2px solid var(--color-border-control);outline-offset:3px;box-shadow:0 0 0 5px #d9c6ab33}.contact-input [aria-invalid=true]{border-color:var(--color-text-accent)}.contact-error{color:var(--color-error);font-size:var(--text-micro)}.contact-error-summary{color:var(--color-error);background:var(--color-error-surface);border-left:2px solid var(--color-text-accent);font-size:var(--text-caption);margin-bottom:var(--space-5);padding:14px}.contact-field-hint{justify-content:space-between;gap:var(--space-3);font-size:var(--text-micro);color:var(--contact-muted);margin-top:10px;display:flex}.contact-field-hint span{font-variant-numeric:tabular-nums;flex-shrink:0}.contact-privacy{font-size:var(--text-micro);color:var(--contact-muted);margin-top:23px}.contact-privacy a{text-underline-offset:3px;padding-block:7px;text-decoration:underline;display:inline-block}.contact-form-note{gap:var(--space-3);border-top:1px solid var(--line);margin-top:var(--space-3);color:var(--contact-muted);font-size:var(--text-micro);padding-top:19px;line-height:1.8;display:flex}.contact-form-note svg{flex-shrink:0;margin-top:3px}.contact-submit{width:100%;min-height:54px;margin-top:22px}.contact-prepared{overflow-wrap:anywhere}.contact-prepared>svg{color:var(--color-text-accent);margin-top:25px}.contact-message-preview{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:var(--text-caption);background:var(--color-surface-soft);border-left:2px solid var(--color-champagne);padding:var(--space-5);margin-block:var(--space-6);line-height:1.9}.contact-form-actions{flex-wrap:wrap;align-items:center;gap:15px;display:flex}.contact-prepared [role=status]{margin-top:15px}.contact-direct-email{font-size:var(--text-caption);text-underline-offset:4px;padding-block:14px;text-decoration:underline;display:block}.contact-location{border:1px solid var(--color-border);grid-template-columns:.9fr 1.1fr;margin-bottom:70px;display:grid;box-shadow:0 24px 64px -40px #624c3740}.contact-location-copy{background:var(--color-surface-soft);min-width:0;padding:clamp(28px,4vw,56px)}.location-signature{color:var(--color-text-accent);align-items:center;gap:14px;display:flex}.location-signature>svg{box-sizing:content-box;border:1px solid var(--color-border);border-radius:50%;padding:13px}.location-address-card{border-left:1px solid var(--color-text-accent);margin-block:30px 24px;padding-left:22px}.location-studio-name{letter-spacing:.1em;color:var(--color-text-accent);margin-bottom:15px;font-size:12px;display:block}.contact-location .studio-address{font-size:16px;line-height:1.8}.contact-location .studio-address strong{font-size:18px}.location-directions{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:24px;min-height:64px;margin-top:24px;padding:15px 0;font-size:15px;display:flex}.location-directions small{color:var(--contact-muted);margin-top:5px;font-size:12px;display:block}.location-directions>svg{flex-shrink:0;transition:transform .18s}.location-directions:hover{color:var(--color-text-accent)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.location-directions:hover>svg{transform:translate(2px,-2px)}}.contact-location h2{margin-block:var(--space-6);font-size:clamp(36px,4vw,50px);line-height:1.1}.contact-location address{font-size:var(--text-small);max-width:340px;line-height:1.9}.contact-location-copy>p{font-size:var(--text-micro);color:var(--contact-muted);margin:var(--space-4) 0}.contact-location .text-button{min-height:44px}.contact-booking-cta{border-block:1px solid var(--color-border);align-items:center;gap:35px;padding:43px;display:flex}.contact-booking-cta>svg{color:var(--color-text-accent);flex-shrink:0}.contact-booking-cta>div{flex:1}.contact-booking-cta h2{font-size:var(--text-title-lg);margin-block:17px;line-height:1.1}.contact-booking-cta p{font-size:var(--text-caption);color:var(--contact-muted);max-width:420px}.contact-booking-cta .button{flex-shrink:0}@media (max-width:1050px){.contact-main-grid{gap:35px}.contact-hero-flower{opacity:.65;width:125px;right:0}.contact-form-panel{padding:27px}.contact-location-copy{padding:30px}.contact-booking-cta{padding-inline:var(--space-5);gap:25px}}@media (max-width:800px){.contact-main-grid,.contact-location{grid-template-columns:1fr}.contact-reach{padding-top:0}.contact-info-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:25px;display:grid}.contact-info-row{gap:var(--space-3)}.contact-booking-cta{flex-wrap:wrap}.contact-booking-cta>div{flex-basis:75%}.contact-booking-cta .button{margin-left:70px}.contact-hero-flower{display:none}}@media (max-width:540px){.contact-intro{padding-block:var(--space-8)}.contact-intro h1{font-size:var(--text-title-xl)}.contact-info-list,.contact-input-grid{grid-template-columns:1fr}.contact-main-grid{padding-bottom:45px}.contact-form-panel{padding:25px 19px}.contact-input input,.contact-input textarea{font-size:var(--text-input)}.contact-location{margin-bottom:45px}.contact-location-copy{padding:var(--space-7) 23px}.contact-map iframe{min-height:325px}.contact-booking-cta{padding:30px 5px;display:block}.contact-booking-cta>svg{margin-bottom:23px}.contact-booking-cta .button{width:100%;margin:25px 0 0}.contact-booking-cta h2{font-size:var(--text-title-md)}.contact-form-actions .button{width:100%}}.contact-map{background:var(--color-surface-soft);flex-direction:column;min-width:0;display:flex}.contact-map iframe{border:0;flex:1;width:100%;min-height:365px;display:block}.contact-map-consent{justify-content:center;align-items:center;gap:var(--space-5);min-height:365px;padding:var(--space-7);text-align:center;color:var(--color-text-secondary);flex-direction:column;flex:1;display:flex}.contact-map-consent p{max-width:42ch;font-size:var(--text-caption);line-height:1.7}.contact-map-caption{font-size:var(--text-caption);color:var(--color-text-secondary);padding:12px 16px}.contact-form-fields{border:0;min-width:0;margin:0;padding:0}.contact-reference{overflow-wrap:anywhere;font-size:var(--text-caption)}
