:root{--ink:#0f172a;--mut:#475569;--acc:#be123c;--accd:#9f1239;--line:#cbd5e1}
*{box-sizing:border-box}
body{margin:0;font:16px/1.55 system-ui,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;overflow-wrap:anywhere}
.skip{position:absolute;left:-999px;top:0;background:#000;color:#fff;padding:10px 14px;z-index:10}
.skip:focus{left:8px;top:8px}
.demo{margin:0;background:#fef3c7;color:#78350f;text-align:center;padding:8px 12px;font-size:14px;font-weight:600}
.wrap{max-width:1040px;margin:0 auto;padding:0 16px}
.top{border-bottom:4px solid var(--acc)}
.top .wrap{padding-top:14px;padding-bottom:14px}
.logo{font-weight:800;font-size:20px;color:var(--ink);text-decoration:none}
h1{font-size:2.2rem;margin:28px 0 6px}
.lead{color:var(--mut);margin:0 0 24px}
.grid{display:grid;gap:24px;padding-bottom:36px}
h2{font-size:1.25rem;margin:0 0 12px}
address{font-style:normal}
address p{margin:0 0 12px;display:flex;flex-direction:column}
.k{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--mut)}
a{color:var(--acc);font-weight:600}
.hours{border-collapse:collapse;margin-bottom:20px}
.hours th,.hours td{text-align:left;padding:6px 20px 6px 0;border-bottom:1px solid var(--line)}
.map{aspect-ratio:16/9;border-radius:12px;background:linear-gradient(135deg,#e2e8f0 25%,#cbd5e1 25% 50%,#e2e8f0 50% 75%,#cbd5e1 75%);background-size:40px 40px;display:grid;place-items:center;color:var(--ink);font-weight:700}
.formbox{background:#fff1f2;border:1px solid #fecdd3;border-radius:16px;padding:20px}
.f{margin-bottom:14px}
label{display:block;font-weight:600;margin-bottom:4px}
input:not([type=checkbox]),select,textarea{font:inherit;width:100%;padding:12px;border:2px solid var(--ink);border-radius:8px;background:#fff}
.chk{display:flex;gap:10px;align-items:flex-start;margin-bottom:16px}
.chk input{width:22px;height:22px;margin-top:2px;flex:none}.chk label{font-weight:400;margin:0}
.btn{font:700 17px system-ui,sans-serif;background:var(--acc);color:#fff;border:2px solid var(--acc);border-radius:10px;padding:14px 26px;cursor:pointer;width:100%}
.btn:hover,.btn:focus-visible{background:var(--accd);border-color:var(--accd)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2563eb;outline-offset:2px}
.foot{background:var(--ink);color:#e2e8f0;padding:18px 0;font-size:14px}
@media(min-width:800px){.grid{grid-template-columns:1fr 1fr;gap:44px}.btn{width:auto}h1{font-size:3rem}}
