/* Contact forms share Antonia's existing colors, type and buttons. */
.contact-page{background:var(--sky);color:var(--navy)}
.contact-page .seo-breadcrumb{padding-top:calc(var(--header-h,100px) + 1.4rem)}
.contact-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,1fr);align-items:center;gap:clamp(2rem,5vw,5rem);padding-block:2.6rem 3.2rem}
.contact-hero h1{font-size:clamp(2.8rem,5.5vw,5rem);line-height:1.03;margin:.75rem 0 1rem;max-width:16ch}
.contact-hero h1 span{color:var(--red)}
.contact-hero .lead{max-width:49ch;font-size:clamp(1.05rem,1.4vw,1.22rem)}
.contact-shortcuts{background:var(--sun);border-radius:28px;padding:1.5rem 1.65rem;box-shadow:0 16px 35px -24px rgba(14,58,82,.35)}
.contact-card-kicker{font-size:.75rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.contact-shortcuts>a{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:78px;padding:1rem 0;border-bottom:1px solid rgba(14,58,82,.22);font-weight:800;line-height:1.2}
.contact-shortcuts>a:last-child{border-bottom:0;padding-bottom:0}
.contact-shortcuts>a>span:last-child{font-size:1.75rem}
.contact-shortcuts small{display:block;margin-top:.35rem;font-size:.88rem;font-weight:400}
.contact-shortcuts>a:hover,.contact-text-link:hover{color:var(--red-dark)}
.contact-section{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);align-items:start;gap:clamp(1.5rem,4vw,3rem);padding-bottom:clamp(3.5rem,7vw,6rem)}
.contact-form-card{min-width:0;padding:clamp(1.35rem,3vw,2.5rem);border:1px solid rgba(14,58,82,.14);border-radius:30px;background:var(--paper);box-shadow:0 18px 50px -32px rgba(14,58,82,.38)}
.contact-form-card h2{margin:.35rem 0 .7rem}
.contact-form-intro{font-size:.95rem;margin-bottom:1.5rem;max-width:57ch}
#contact-form{scroll-margin-top:calc(var(--header-h,100px) + 24px)}
.contact-field-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.1rem 1rem}
.contact-field{min-width:0}
.contact-field--wide{grid-column:1/-1}
.contact-field label{display:block;margin-bottom:.35rem;font-size:.9rem;font-weight:700}
.contact-optional{font-size:.84em;font-weight:400}
.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;min-width:0;min-height:50px;padding:.75rem .85rem;border:1.5px solid rgba(14,58,82,.38);border-radius:12px;background:#fff;color:var(--navy);font:inherit;font-size:1rem;line-height:1.4;transition:border-color .16s,box-shadow .16s}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{outline:3px solid var(--sun);outline-offset:2px;border-color:var(--navy);box-shadow:0 0 0 1px var(--navy)}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#476171;opacity:1}
.contact-field textarea{min-height:100px;resize:vertical}
.contact-message{margin-top:1.25rem}
.contact-details{min-width:0;margin:1.6rem 0 0;padding:1rem;border:1px solid rgba(14,58,82,.24);border-radius:16px;background:var(--sky-2)}
.contact-details legend{padding:0 .4rem;font-size:.88rem;font-weight:700;max-width:100%}
.contact-field-help{margin:.55rem 0 0;font-size:.82rem;line-height:1.5}
.contact-request-note{padding:.9rem 1rem;border-left:4px solid var(--sun);border-radius:0 12px 12px 0;background:var(--sky-2);font-size:.88rem;line-height:1.5;margin:1.25rem 0 .8rem}
.contact-privacy{font-size:.8rem;line-height:1.5;max-width:68ch}
.contact-privacy a,.contact-text-link{font-weight:700;text-decoration:underline;text-underline-offset:4px}
.contact-submit-row{display:flex;align-items:center;gap:1rem;margin-top:1.3rem;flex-wrap:wrap}
.contact-submit-row .btn{min-height:52px;font:inherit;font-weight:800}
.contact-submit-row p{font-size:.8rem;max-width:26ch;line-height:1.4}
.contact-submit-row .btn:disabled{cursor:wait;opacity:.75}
.contact-honey{display:none!important}
.contact-sidebar{display:grid;gap:1rem;min-width:0}
.contact-sidebar-intro h2{font-size:clamp(1.9rem,3vw,2.75rem);margin:.45rem 0 .8rem}
.contact-sidebar-intro p{font-size:.95rem;max-width:40ch}
.contact-location-card{padding:1.5rem 1.6rem;border:1px solid rgba(14,58,82,.2);border-radius:24px;background:var(--paper)}
.contact-location-card h3{font-family:var(--font-display);font-size:1.45rem;line-height:1.2;margin:.4rem 0 .6rem}
.contact-location-card address{font-size:.95rem;font-style:normal;line-height:1.55}
.contact-phone{display:block;width:fit-content;font-weight:800;font-size:1.16rem;margin:.8rem 0 .6rem;text-decoration:underline;text-underline-offset:4px}
.contact-text-link{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;font-size:.88rem}
.contact-order-note{padding:1rem .4rem}
.contact-order-note h3{font-family:var(--font-display);font-size:1.45rem;margin-bottom:.45rem}
.contact-order-note p{font-size:.9rem;margin-bottom:1rem;max-width:40ch}
.thank-you-page{min-height:100svh;display:grid;place-items:center;padding:2rem 1rem;background:var(--sky);color:var(--navy)}
.thank-you-card{width:min(690px,100%);padding:clamp(1.5rem,5vw,3rem);border-radius:30px;background:var(--paper);box-shadow:0 18px 44px -24px rgba(14,58,82,.35);text-align:center}
.thank-you-card img{width:96px;height:96px;margin:0 auto 1rem}
.thank-you-card h1{font-size:clamp(2rem,5vw,3rem);line-height:1.12;margin:.8rem 0 1rem}
.thank-you-card p{margin:0 auto 1rem;max-width:51ch}
.thank-you-card .contact-request-note{text-align:left;margin-block:1.3rem}
.thank-you-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin:1.6rem 0 1rem}
.thank-you-phone-links{font-size:.85rem}
.thank-you-phone-links a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:800px){.contact-hero,.contact-section{grid-template-columns:minmax(0,1fr)}.contact-hero{gap:1.5rem;padding-block:1.8rem 2rem}.contact-hero h1{max-width:none}.contact-shortcuts{padding:1.15rem 1.3rem}.contact-shortcuts>a{min-height:65px}.contact-sidebar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.contact-sidebar-intro,.contact-order-note{grid-column:1/-1}.contact-sidebar-intro h2 br{display:none}}
@media(max-width:540px){.contact-field-grid,.contact-sidebar{grid-template-columns:minmax(0,1fr)}.contact-form-card{border-radius:24px;padding:1.25rem}.contact-hero h1{font-size:clamp(2.5rem,10vw,3.5rem)}.contact-details{padding:.8rem}.contact-submit-row{align-items:stretch;flex-direction:column;gap:.65rem}.contact-submit-row .btn{justify-content:center;width:100%}.contact-submit-row p{max-width:none}.contact-location-card{padding:1.3rem}.thank-you-actions .btn{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.contact-field input,.contact-field select,.contact-field textarea{transition:none}}
