:root{--accent:#059669;--accent-d:#047857;--accent-ink:#064E3B;--accent-50:#ECFDF5;--accent-tint:color-mix(in srgb,#059669 8%,transparent)}.page-hero{padding:clamp(120px,14vw,170px) 0 clamp(40px,5vw,64px);text-align:center}.page-hero h1{font-size:clamp(34px,4.6vw,54px);margin:18px 0 0}.page-hero .lead{font-size:clamp(16px,1.6vw,19px);color:var(--body);font-weight:500;max-width:620px;margin:18px auto 0;text-wrap:pretty}.contact-grid{display:grid;grid-template-columns:1fr 1.25fr;grid-gap:28px;gap:28px;align-items:start}.ways{display:grid;grid-gap:18px;gap:18px}.wcard{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:24px;display:flex;gap:16px;align-items:flex-start}.wcard .ic{width:44px;height:44px;flex:none;border-radius:12px;background:var(--accent-50);color:var(--accent);display:grid;place-items:center}.wcard .ic svg{width:20px;height:20px;stroke-width:1.8}.wcard h3{font-size:16px;margin:2px 0 4px}.wcard p{font-size:14px;color:var(--body);font-weight:500;line-height:1.55;margin:0}.wcard a.link{display:inline-block;margin-top:6px;font-size:14px;font-weight:700;color:var(--accent-d);text-decoration:none}.wcard a.link:hover{text-decoration:underline}.form-card{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:clamp(24px,3vw,36px)}.form-card h2{font-size:22px;margin:0 0 6px}.form-card .sub{font-size:14px;color:var(--body);font-weight:500;margin:0 0 22px}.frm{grid-gap:16px}.frm,.frm .row2{display:grid;gap:16px}.frm .row2{grid-template-columns:1fr 1fr;grid-gap:16px}.frm label{display:grid;grid-gap:7px;gap:7px;font-size:13px;font-weight:700;color:var(--ink)}.frm input,.frm select,.frm textarea{font:inherit;font-size:14.5px;font-weight:500;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:11px;padding:11px 13px;outline:none;transition:.13s;width:100%}.frm input:focus,.frm select:focus,.frm textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.frm textarea{min-height:110px;resize:vertical}.frm .sent{display:none;border:1.5px solid color-mix(in srgb,var(--accent) 30%,transparent);color:var(--accent-ink);border-radius:11px;padding:13px 15px;font-size:14px;font-weight:600}.frm .sent,.office{background:var(--accent-50)}.office{margin-top:18px;border-radius:var(--radius-lg);padding:24px}.office h3{font-size:15px;margin:0 0 8px}.office p{font-size:14px;color:var(--body);font-weight:500;line-height:1.6;margin:0}@media (max-width:860px){.contact-grid,.frm .row2{grid-template-columns:1fr}}