/* Contact page: existing workshop details and the shared feedback form. */
.contacts-page{padding-block:28px 80px}
.contacts-heading{margin-bottom:48px}
.contacts-eyebrow{margin-bottom:16px}
.contacts-column{min-width:0}
.contacts-heading h1{font-size:clamp(40px,4.5vw,64px)}
.contacts-heading>p:last-child{margin-top:20px;color:var(--muted);max-width:620px;font-size:16px}
.contacts-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:80px;align-items:start}
.contacts-information{padding-top:6px;min-width:0}
.contacts-list{display:grid;gap:28px;margin:0}
.contacts-list dt{font-size:14px;color:var(--muted);margin-bottom:6px}
.contacts-list dd{margin:0;font-size:18px;line-height:1.6;overflow-wrap:anywhere}
.contacts-list address{font:inherit;max-width:380px}
.contacts-phones a{display:block;width:fit-content;font-size:24px;font-weight:600;line-height:1.6}
.contacts-list a:hover{color:#9d3f20}
.contacts-route{margin-top:12px;font-size:14px}
.contacts-visit-note{margin-top:28px;font-size:14px;color:var(--muted);max-width:350px}
.contacts-form{min-width:0;width:100%;margin:0;scroll-margin-top:24px}
.contacts-form h2,.contacts-location h2{font-size:32px;letter-spacing:-.025em;line-height:1.2}
.contacts-form-intro{margin:14px 0 24px;font-size:15px;color:var(--muted);max-width:480px}
.contacts-form .group-feedback-form{padding:0;background:transparent;border-radius:0}
.contacts-form .feedback-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.contacts-form .feedback-field{min-width:0;font-size:14px;line-height:1.5;gap:7px}
.contacts-form input:not([type=checkbox]):not([type=hidden]),.contacts-form select,.contacts-form textarea{display:block;width:100%;min-width:0;min-height:50px;padding:12px 14px;font:inherit;font-size:16px;line-height:1.5;color:var(--ink);background:#fff;border:1px solid #bbc2b7;border-radius:4px}
.contacts-form textarea{min-height:124px;resize:vertical}
.contacts-form .feedback-consent{font-size:13px;line-height:1.65;margin:20px 0;gap:10px}
.contacts-form .feedback-consent input{width:18px;height:18px;margin:2px 0 0;accent-color:#243b2e}
.contacts-form .feedback-consent a{text-decoration:underline;text-underline-offset:3px}
.contacts-form [type=submit]{width:100%;min-height:50px}
.contacts-form [data-feedback-status]:not(:empty){margin-top:14px;font-size:14px}
.contacts-form .errorlist{padding-left:20px;margin:4px 0;font-size:14px}
.contacts-form .feedback-success{background:#e7ece3}
.contacts-location{margin-top:64px;padding-top:36px;border-top:1px solid var(--line)}
.contacts-map-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:24px}
.contacts-map-heading p{font-size:14px;color:var(--muted)}
.contacts-location .contact-map{display:block}
@media(min-width:801px){.contacts-form h2{font-size:clamp(40px,4.5vw,64px);letter-spacing:-.04em;line-height:1.08}.contacts-form-intro{margin-top:20px;font-size:16px}}
@media(max-width:1000px){.contacts-layout{gap:40px}.contacts-phones a{font-size:21px}}
@media(max-width:800px){.contacts-layout{grid-template-columns:1fr;gap:40px}.contacts-heading{margin-bottom:32px}.contacts-form{padding-top:32px;border-top:1px solid var(--line)}.contacts-map-heading{display:block}.contacts-map-heading p{margin-top:12px}.contacts-location{margin-top:44px}}
@media(max-width:480px){.contacts-page{padding-block:20px 48px}.contacts-heading>p:last-child{font-size:15px}.contacts-list{gap:24px}.contacts-list dd{font-size:16px}.contacts-phones a{font-size:22px}.contacts-form .feedback-grid{grid-template-columns:1fr}.contacts-form h2,.contacts-location h2{font-size:30px}}
