.contact-location{grid-column:1/-1;display:grid;grid-template-columns:.72fr 1.28fr;gap:32px;align-items:center;margin-top:4px;padding-top:38px;border-top:1px solid var(--line,#ebd9e2)}.location-copy h3{margin:10px 0;font:600 29px "Playfair Display",serif}.location-copy p{font-size:14px;line-height:1.75}.location-link{display:inline-block;margin-top:8px;padding-bottom:3px;border-bottom:1px solid currentColor;font-size:13px;font-weight:700}.map-shell{min-height:330px;overflow:hidden;border-radius:20px;background:#f8edf3}.contact-map{display:block;width:100%;height:100%;min-height:330px;border:0}.contact-page{background:#fffdfd}.contact-hero{padding:92px 8%;text-align:center;background:#f8edf3}.contact-hero .eyebrow{justify-content:center}.contact-hero h1{max-width:760px;margin:18px auto;font:600 clamp(43px,6vw,72px)/1.05 "Playfair Display",serif;letter-spacing:-2px}.contact-hero p{max-width:660px;margin:0 auto;color:#686368;line-height:1.75}.contact-hero .hero-buttons{justify-content:center}.contact-details{max-width:1120px;margin:auto;padding:76px 6%;display:grid;grid-template-columns:.72fr 1.28fr;gap:52px}.contact-cards{display:grid;gap:12px}.contact-card{padding:22px;border:1px solid #ebd9e2;border-radius:16px;background:#fff}.contact-card span{display:block;margin-bottom:8px;color:#d7669c;font-size:11px;font-weight:700;letter-spacing:1px}.contact-card strong,.contact-card a{font:600 17px/1.55 "Playfair Display",serif}.contact-form-section{max-width:1120px;margin:0 auto 76px;padding:50px 6%;display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:start;background:#faf8e9;border-radius:22px}.contact-form-section h2{font:600 clamp(34px,4vw,48px)/1.15 "Playfair Display",serif}.contact-page .form{padding:31px;border-radius:20px;background:#f8edf3}.contact-page .fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-page .fields input,.contact-page .fields textarea{width:100%;padding:13px;border:0;border-radius:8px;font:12px "DM Sans";background:#fff}.contact-page .fields textarea{grid-column:span 2;height:100px}.contact-page .form .primary{width:100%;margin-top:14px}.contact-page .footer{padding:38px 7%;background:#252525;color:#fff}.contact-page .footer nav{display:flex;gap:20px}@media(max-width:760px){.contact-location,.contact-details,.contact-form-section{grid-template-columns:1fr}.contact-location{gap:20px;padding-top:28px}.map-shell,.contact-map{min-height:280px}.contact-hero{padding:65px 7%}.contact-details{padding:55px 7%;gap:28px}.contact-form-section{margin:0 5% 55px;padding:32px 6%;gap:25px}.contact-page .fields{grid-template-columns:1fr}.contact-page .fields textarea{grid-column:auto}}
