/* Contact-only layouts; shared typography, buttons, spacing and colors. */
.contact-page .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.contact-page .contact-hero{padding-block:var(--space-12) var(--space-8)}
.contact-page .contact-hero h1{font-size:clamp(2.75rem,5.1vw,5rem);max-width:18ch}
.contact-page .contact-hero>p:last-child{margin-top:var(--space-6);color:var(--muted)}
.contact-page .navigation a[aria-current="page"]{text-decoration:underline;text-underline-offset:.4em}
.contact-page .contact-details{display:grid;gap:var(--space-8);padding-bottom:var(--section)}
.contact-page .contact-information h2{font-size:2.2rem;margin-bottom:var(--space-4)}
.contact-page address{font-style:normal}
.contact-page .contact-list{margin:var(--space-6) 0;display:grid;gap:var(--space-4)}
.contact-page .contact-list dt{font-size:var(--text-label);color:var(--muted)}
.contact-page .contact-list dd{margin:0;overflow-wrap:anywhere}
.contact-page .contact-list a{max-width:100%}
.contact-page .contact-connect{display:grid;align-content:start;gap:var(--space-8);min-width:0}
.contact-page .contact-actions{align-content:start;align-items:stretch;flex-direction:column}
.contact-page .contact-inquiry-skin{min-width:0}
.contact-page .contact-inquiry-skin .inquiry-section{display:block;scroll-margin-top:7rem}
.contact-page .contact-inquiry-skin .inquiry-heading{position:static;max-width:58rem}
.contact-page .contact-inquiry-skin .inquiry-form{margin-top:var(--space-8)}
.contact-page .contact-note{font-size:var(--text-small);color:var(--muted);margin-top:var(--space-6)}
.contact-page .contact-map{background:var(--surface-garden);border:1px solid var(--line);min-height:19rem;padding:var(--space-8);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;overflow-wrap:anywhere}
.contact-page .contact-map-title{font:500 2.2rem/1.1 var(--serif);letter-spacing:-.035em}
.contact-page .contact-map>p:last-child{font-size:var(--text-small);margin-top:var(--space-6)}
.contact-page .contact-hours{margin:0}
.contact-page .contact-hours>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-4);border-bottom:1px solid var(--line);padding-block:var(--space-4)}
.contact-page .contact-hours dd{margin:0}
.contact-page .contact-special-title{font-size:2rem;margin-top:var(--space-8)}
@media(min-width:48rem){.contact-page .contact-hero{padding-top:var(--space-16)}.contact-page .contact-list{grid-template-columns:1fr 1fr}}
@media(min-width:64rem){.contact-page .contact-details{grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:clamp(3rem,6vw,6rem)}}

.contact-page .hours-block{display:block;white-space:nowrap}
.contact-page .contact-time-group{margin-top:var(--space-10,3rem)}
.contact-page .contact-time-group h3{font-size:clamp(1.6rem,3vw,2rem);margin-bottom:var(--space-6)}
.contact-page .contact-hours>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem}
.contact-page .contact-list a,.contact-page #social-media a{min-height:44px;display:inline-flex;align-items:center}
.contact-page #oeffnungszeiten>.split{align-items:start}

/* Phase 6E: functional contact information with composed surfaces. */
.contact-page .contact-information{padding:clamp(1.5rem,4vw,2.5rem);border:1px solid rgb(112 82 46 / .24);border-radius:var(--radius-medium);background:var(--linen)}
.contact-page .contact-list dt{color:var(--brass-ink);font-weight:700;letter-spacing:.08em}
.contact-page .contact-map{border-color:rgb(112 82 46 / .28);border-radius:var(--radius-large);background:linear-gradient(145deg,var(--surface-garden),var(--sand))}
.contact-page .contact-hours>div{border-bottom-color:rgb(112 82 46 / .25)}
.contact-page #social-media{padding-block:var(--section)}
@media(forced-colors:active){.contact-page .contact-information,.contact-page .contact-map{border-color:CanvasText}}
/* Phase 6E.2: quieter operational information hierarchy. */
.contact-page .contact-hero{position:relative;border-bottom:1px solid rgb(112 82 46 / .2)}
.contact-page .contact-information{background:linear-gradient(145deg,var(--linen),#f7f3ec);box-shadow:inset 0 1px 0 rgb(255 255 255 / .7)}
.contact-page .contact-list>div{padding-top:var(--space-3);border-top:1px solid rgb(112 82 46 / .22)}
.contact-page .contact-actions .button{width:100%}
.contact-page .contact-map{box-shadow:var(--shadow-lift)}
.contact-page .contact-time-group{padding:clamp(1.25rem,3vw,2rem);border:1px solid rgb(112 82 46 / .22);border-radius:var(--radius-medium);background:rgb(249 247 242 / .48)}
.contact-page #oeffnungszeiten>.split{gap:clamp(2.5rem,6vw,6rem)}
@media(max-width:30rem){.contact-page .contact-time-group{padding:var(--space-5)}}
