.contact-layout{display:grid;grid-gap:48px;gap:48px}@media (min-width:1024px){.contact-layout{grid-template-columns:1fr 1fr}}.contact-column h2{font-size:22px;margin-bottom:20px}.contact-details{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.contact-details h2{font-size:14px;color:var(--muted);margin-bottom:4px}.contact-details a{color:var(--accent-hover);text-decoration:none}.contact-map{position:relative;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface)}.contact-map iframe{display:block;width:100%;height:320px;border:0}.contact-map-directions{position:absolute;top:12px;right:12px;padding:8px 14px;font-size:13px;font-weight:600;color:var(--ink);background:var(--bg);border-radius:var(--radius-sm);text-decoration:none;box-shadow:0 2px 8px rgba(19,27,46,.18)}.contact-map-directions:hover{background:var(--surface)}.contact-form .btn{margin-top:4px}.contact-form-success{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:32px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.contact-form-success h3{font-size:19px}.contact-form-success p{color:var(--muted)}.faq-section{border-top:1px solid var(--line)}.faq-section h2{font-size:26px;margin-bottom:24px}.faq-list{display:flex;flex-direction:column;gap:12px;max-width:720px}.faq-item{border:1px solid var(--line);border-radius:var(--radius-md);padding:16px 20px;background:var(--surface)}.faq-item summary{cursor:pointer;font-weight:600;color:var(--ink);list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";float:right;color:var(--muted)}.faq-item[open] summary:after{content:"\2212"}.faq-item p{margin:12px 0 0;color:var(--ink-soft)}