.contact-hero{padding:72px 0 54px;background:var(--brand);color:var(--cream)}
    .contact-hero h1{max-width:860px;margin:12px 0 18px;font:clamp(3.5rem,7vw,7rem)/.88 var(--serif);letter-spacing:-.065em}
    .contact-hero p{max-width:650px;color:#ddd6d0;font-size:1.05rem}
    .contact-main{padding:70px 0;background:var(--cream)}
    .contact-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:58px;align-items:start}
    .contact-card{padding:34px;background:var(--white);border-top:6px solid var(--accent)}
    .contact-card h2,.location h2{margin:10px 0 16px;font:clamp(2.3rem,4.5vw,4.2rem)/.94 var(--serif);letter-spacing:-.05em}
    .contact-card p{color:#5c5753}.contact-card .button{width:100%;margin:12px 0 18px}
    .contact-card address{font-style:normal;padding-top:22px;border-top:1px solid var(--line)}
    .contact-card a:not(.button){font-weight:800}
    .photo-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}
    .photo-guide span{padding:13px 10px;background:var(--mist);font-size:.72rem;text-align:center;text-transform:uppercase;letter-spacing:.07em}
    .location{padding:70px 0;background:var(--white)}
    .map-frame{display:block;width:100%;height:430px;border:0;background:#d8d3ca}
    .location-actions{display:flex;gap:18px;flex-wrap:wrap;margin-top:25px}
    .location-actions a:not(.button){display:inline-flex;align-items:center;border-bottom:2px solid var(--accent);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
    .access{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
    .access div{padding:20px;border-top:1px solid var(--line)}.access strong{display:block;font:1.25rem var(--serif)}.access span{font-size:.82rem;color:#625e59}
    @media(max-width:760px){.contact-hero{padding:48px 0 38px}.contact-hero h1{font-size:3.5rem}.contact-main,.location{padding:48px 0}.contact-layout{grid-template-columns:1fr;gap:28px}.contact-card{padding:25px}.photo-guide,.access{grid-template-columns:1fr}.photo-guide{gap:6px}.map-frame{height:350px}.location-actions{display:grid}.location-actions .button{width:100%}}
