.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,56px);align-items:start}
.form-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow);padding:clamp(28px,4vw,40px);position:relative;overflow:hidden}
.form-wrap>.flagstrip{position:absolute;inset-inline:0;top:0}
.contact-aside{display:flex;flex-direction:column;gap:16px}
.hours{background:var(--green-800);color:#eaf2ec;border-radius:var(--r-lg);padding:26px;position:relative;overflow:hidden}
.hours .deco{position:absolute;inset:0;opacity:.4;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.1) 1px,transparent 0);background-size:26px 26px}
.hours h4{color:#fff;font-family:var(--font-display);font-size:1.15rem;margin-bottom:14px;position:relative}
.hours .row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1);position:relative;font-size:.96rem}
.hours .row:last-child{border:0}
.hours .row b{color:var(--gold)}
.socials{display:flex;gap:10px;margin-top:6px}
.socials a{width:46px;height:46px;border-radius:13px;background:var(--surface);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;color:var(--green-700);transition:.18s}
.socials a:hover{background:var(--green-700);color:#fff;border-color:var(--green-700);transform:translateY(-2px)}
.socials a svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8}
.map .ph{height:240px}
@media (max-width:880px){.contact-grid{grid-template-columns:1fr}}

.form-error{color:var(--red);font-size:.85rem;font-weight:500;margin-top:-2px}
