.contact-page { background: #f7f4ed; }
.contact-page .contact-header { position: relative; background: linear-gradient(90deg,#750914,#d7192d); }
.contact-map { height: 520px; background: #ddd; }
.contact-map iframe { width: 100%; height: 100%; border: 0; display: block; }
.contact-content { padding: 95px 7vw 110px; display: grid; grid-template-columns: .8fr 1.2fr; gap: 10vw; }
.contact-heading .section-kicker { color: #d7192d; }
.contact-heading h1 { margin: 28px 0 24px; font: 400 clamp(64px,8vw,125px)/.9 Georgia,serif; letter-spacing: -.055em; }
.contact-heading p { max-width: 430px; color: #726a65; line-height: 1.8; }
.contact-details { border-top: 1px solid rgba(133,13,26,.18); }
.contact-row { display: grid; grid-template-columns: 160px 1fr; gap: 30px; padding: 28px 0; border-bottom: 1px solid rgba(133,13,26,.18); }
.contact-row>span { color: #d7192d; text-transform: uppercase; letter-spacing: .13em; font-size: 9px; font-weight: 700; }
.contact-row strong { display: block; margin-bottom: 7px; font: 400 23px/1.2 Georgia,serif; }
.contact-row p,.contact-row a { margin: 0; color: #5f5955; line-height: 1.7; }
.contact-row a:hover { color: #d7192d; }
.contact-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 35px; }
.contact-actions a { min-width: 210px; padding: 17px 20px; color: #fff; background: #d7192d; text-transform: uppercase; letter-spacing: .1em; font-size: 10px; text-align: center; }
.contact-actions a:last-child { background: #292a27; }
@media (max-width:900px) { .contact-map { height: 430px; }.contact-content { grid-template-columns:1fr; gap:55px; padding:75px 7vw; } }
@media (max-width:560px) { .contact-map { height: 360px; }.contact-row { grid-template-columns:1fr; gap:10px; }.contact-heading h1 { font-size:70px; }.contact-actions a { width:100%; } }
