.back-link{font-size:.85rem;color:var(--gold-light);text-decoration:underline;text-underline-offset:5px}
.detail-hero h1{font-size:clamp(2.6rem,4.9vw,4.8rem);overflow-wrap:anywhere}
.detail-hero .hero-photo{height:420px;max-width:330px}
.detail-body{max-width:1040px;margin:0 auto;padding:30px clamp(20px,6vw,80px) 60px}
.detail-section{padding:42px 0;border-bottom:1px solid var(--line)}
.detail-section h2,.detail-contact h2,.related-pages h2{font:600 clamp(1.8rem,3vw,2.7rem)/1.2 var(--serif);color:var(--wine)}
.detail-section p{max-width:76ch;font-size:1.06rem;line-height:1.8}
.detail-contact{background:var(--wine-deep);color:var(--ivory);padding:60px max(20px,calc((100vw - 880px)/2))}
.detail-contact h2,.detail-contact .section-kicker{color:var(--gold-light)}
.detail-contact .button-outline{margin-top:0}
.detail-contact p a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.related-pages{max-width:1040px;margin:auto;padding:40px clamp(20px,6vw,80px) 70px}
.related-pages>a{display:block;padding:18px 0;border-bottom:1px solid var(--line);color:var(--wine);font-weight:600}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
@media(max-width:620px){.detail-hero h1{font-size:clamp(2.3rem,10vw,3.6rem)}.detail-hero .hero-photo{height:330px;max-width:260px}.detail-body{padding-top:10px;padding-bottom:30px}.detail-section{padding:28px 0}.detail-contact{padding:44px 20px}.detail-contact .button{white-space:normal;letter-spacing:.06em}.detail-section p{font-size:1rem}.related-pages{padding-bottom:44px}}
