body.contact{flex-direction:column;min-height:100vh;display:flex}.contact .wrap{width:100%}.btn:disabled{opacity:.6;cursor:default}main.wrap{flex:1;padding:128px 24px 72px}.back{font:500 13px/1 var(--font-ui);color:var(--fg-muted);align-items:center;gap:6px;padding:6px 0;text-decoration:none;display:inline-flex}.back:hover{color:var(--fg)}.back svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.chead{max-width:60ch;margin-top:18px}.chead h1{font-size:clamp(30px,4vw,44px);line-height:1.08}.chead p{color:var(--fg-muted);max-width:52ch;margin-top:12px;font-size:17px}.ctwo{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:start;gap:24px;margin-top:30px;display:grid}.cside{flex-direction:column;gap:12px;min-width:0;display:flex;position:sticky;top:94px}.mapcard{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-lift);aspect-ratio:5/4;min-height:300px;position:relative;overflow:hidden}.mapcard canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.mapcard .mlbl{border-radius:var(--radius-pill);background:color-mix(in srgb,var(--bg-panel) 90%,transparent);border:1px solid var(--border);box-shadow:var(--shadow-float);font:600 12px/1 var(--font-ui);color:var(--fg);align-items:center;gap:8px;padding:6px 10px;display:inline-flex;position:absolute;top:14px;left:14px}.mapcard .mlbl i{background:var(--accent);border-radius:50%;width:7px;height:7px}.mapcard .mlbl small{font:400 12px/1 var(--font-ui);color:var(--fg-muted)}.mapcard .mcredit{font:400 10.5px/1 var(--font-ui);color:var(--fg-faint);background:color-mix(in srgb,var(--bg-panel) 80%,transparent);border-radius:6px;padding:4px 7px;position:absolute;bottom:10px;right:12px}.writes{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.writes div{background:color-mix(in srgb,var(--bg-panel) 70%,transparent);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--fg-muted);padding:12px 13px;font-size:13px;line-height:1.45}.writes b{font:600 13px/1.3 var(--font-ui);color:var(--fg);align-items:center;gap:7px;margin-bottom:4px;display:flex}.writes svg{width:14px;height:14px;stroke:var(--accent);fill:none;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;flex:none}@media (width>=861px){.ctwo{align-items:stretch}.cside{align-self:start}.ccard{flex-direction:column;display:flex}.ccard form{flex-direction:column;flex:1;display:flex}.ccard form .grid{flex:1;grid-template-rows:auto auto 1fr}.ccard form .field.full{min-height:0}.ccard form .field.full textarea{flex:1}}.ccard{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-lift);min-width:0;padding:26px 28px 28px}.req{color:var(--accent);margin-left:2px;font-weight:600}.reqnote{color:var(--fg-faint);margin-top:8px;font-size:12px;display:block}.reqnote .req{margin:0 3px 0 0}.grid{grid-template-columns:1fr 1fr;gap:16px 18px;display:grid}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field.full{grid-column:1/-1}.field label{font:500 13px/1.3 var(--font-ui);color:var(--fg)}.field label small{color:var(--fg-faint);margin-left:4px;font-weight:400}.field input,.field textarea{width:100%;min-width:0;height:40px;color:var(--fg);background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);font:400 14px/1.4 var(--font-ui);transition:border-color var(--dur-micro) ease;appearance:none;padding:0 11px}.field textarea{resize:vertical;height:auto;min-height:150px;padding:9px 11px;line-height:1.5}.field input:focus,.field textarea:focus{border-color:var(--accent)}.field input::placeholder,.field textarea::placeholder{color:var(--fg-faint)}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--danger)}.field .err{color:var(--danger);font-size:12px;line-height:1.4;display:none}.fail{color:var(--danger);margin-top:18px;font-size:13px;line-height:1.45}.fail[hidden]{display:none}.fail:target{display:block}.fail a{color:inherit;text-underline-offset:3px}.field.bad .err{display:block}.hp{opacity:0;width:1px;height:1px;position:absolute;top:0;left:-9999px;overflow:hidden}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.foot{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;margin-top:22px;padding-top:18px;display:flex}.note{color:var(--fg-muted);max-width:44ch;font-size:12.5px;line-height:1.5}.note a{color:var(--fg-muted);text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:3px}.note a:hover{color:var(--fg);text-decoration-color:var(--fg-muted)}.alt{color:var(--fg-faint);margin-top:16px;font-size:13px}.alt a{color:var(--fg-muted);text-decoration:none}.alt a:hover{color:var(--fg)}.sent{padding:14px 0 6px;display:none}.sent .ok{background:var(--accent-dim);width:44px;height:44px;color:var(--accent);border-radius:50%;place-items:center;margin-bottom:16px;display:grid}.sent .ok svg{stroke:currentColor;fill:none;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.sent h2{font-size:24px;line-height:1.15}.sent p{color:var(--fg-muted);margin-top:8px;font-size:15px}.sent .acts{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.ccard.is-sent form{display:none}.ccard.is-sent .sent{display:block}.ccard.is-sent+.alt{display:none}footer{z-index:1;color:var(--fg-faint);text-align:center;padding:20px 24px 28px;font-size:12px;position:relative}footer a{color:var(--fg-faint);margin:0 7px;text-decoration:none}footer a:hover{color:var(--fg)}@media (width<=860px){.ctwo{grid-template-columns:1fr;gap:18px}.cside{order:-1;position:static}.mapcard{aspect-ratio:16/10;min-height:0}}@media (width<=640px){main.wrap{padding-top:100px}.mapcard{aspect-ratio:4/3;min-height:0}.writes{grid-template-columns:1fr}.ccard{padding:20px 18px 22px}.grid{grid-template-columns:1fr}.foot{flex-direction:column;align-items:stretch}.foot .btn{justify-content:center}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.sent-card{max-width:560px;margin-top:18px}.sent h1{font-size:24px;line-height:1.15}
