:root{--o:#e8913f;--c:#222;--bg:#f6f4f0;--line:#c9c4ba;--mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,"Liberation Mono",monospace}
*{box-sizing:border-box}
body{margin:0;padding-top:34px;font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--c);background:var(--bg)}
.mono,.label,dt,.tel,.head-tel,.nav a{font-family:var(--mono)}
.wrap{max-width:1080px;margin:0 auto;padding:0 1rem}
a{color:var(--c);text-decoration-thickness:2px;text-underline-offset:3px;text-decoration-color:var(--o)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--c);outline-offset:2px}
.banner{position:fixed;top:0;left:0;right:0;z-index:10000;background:#111;color:#f1f1f1;font:12px/34px var(--mono);height:34px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 .5rem}
.watermark{position:fixed;inset:0;z-index:9000;pointer-events:none;overflow:hidden;display:flex;flex-direction:column;justify-content:space-around;align-items:center}
.watermark span{font:900 clamp(60px,14vw,170px)/1 Arial,Helvetica,sans-serif;color:#555;opacity:.06;transform:rotate(-30deg);letter-spacing:.1em;white-space:nowrap}
.site-header{background:#fff;border-bottom:2px solid var(--c)}
.head-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding-top:.7rem;padding-bottom:.7rem;flex-wrap:wrap}
.brand{font-weight:700;text-decoration:none;font-size:1.05rem}
.brand .mono{background:var(--o);padding:.1rem .35rem}
.head-tel{background:var(--o);color:var(--c);font-weight:700;padding:.5rem .8rem;text-decoration:none;border:2px solid var(--c)}
.nav{display:flex;flex-wrap:wrap;border-top:1px solid var(--line)}
.nav a{padding:.65rem 1rem;text-decoration:none;font-size:.9rem;text-transform:uppercase;letter-spacing:.05em;border-right:1px solid var(--line)}
.nav a:first-child{border-left:1px solid var(--line)}
.nav a[aria-current],.nav a:hover{background:var(--c);color:#fff}
.label{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .4rem}
h1{font-size:clamp(1.8rem,5vw,2.8rem);line-height:1.15;margin:.2rem 0 .8rem}
h2{font-size:1.25rem;border-bottom:1px solid var(--c);padding-bottom:.4rem;margin:2.2rem 0 1rem}
h2 .mono{background:var(--c);color:#fff;padding:.05rem .4rem;margin-right:.5rem;font-size:.9rem}
.hero{border-bottom:2px solid var(--c);background:#fff}
.hero-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:0}
.hero-art{border-right:1px solid var(--c);border-left:1px solid var(--c)}
.hero-art svg{display:block;width:100%;height:100%;min-height:260px}
.hero-cap{padding:1.5rem}
.big{font:700 1.8rem var(--mono);margin:.5rem 0}
.tel{font-weight:700}
.btn{display:inline-block;background:var(--o);color:var(--c);border:2px solid var(--c);padding:.6rem 1rem;font:700 .95rem var(--mono);text-decoration:none;cursor:pointer;margin:.2rem .3rem .2rem 0}
.btn.alt{background:#fff}
.btn:hover{background:var(--c);color:#fff}
.sheet{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--c);border-left:1px solid var(--c);margin:0 0 1rem;background:#fff}
.sheet.one{grid-template-columns:1fr}
.sheet div{border-right:1px solid var(--c);border-bottom:1px solid var(--c);padding:.7rem .9rem}
dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#444}
dd{margin:.2rem 0 0;font-weight:600;overflow-wrap:anywhere}
.cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--c);border-left:1px solid var(--c);background:#fff}
.card{display:flex;flex-direction:column;gap:.3rem;padding:1rem;border-right:1px solid var(--c);border-bottom:1px solid var(--c);text-decoration:none}
.card:hover{background:var(--o)}
.card strong{font-size:1.15rem}
.page-head{padding-top:1.8rem}
.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:2rem}
.field{margin-bottom:1rem}
label{display:block;font:600 .85rem var(--mono);text-transform:uppercase;margin-bottom:.25rem}
input,textarea{width:100%;font:inherit;padding:.6rem;border:2px solid var(--c);background:#fff;border-radius:0}
input[aria-invalid=true],textarea[aria-invalid=true]{border-color:#a30000;background:#fff5f5}
.err{display:block;color:#a30000;font-size:.9rem;min-height:1.1em}
.status{font-weight:700}
.note{font-size:.9rem;color:#444}
.site-footer{margin-top:3rem;background:var(--c);color:#fff;padding:1.5rem 0 1rem}
.site-footer a{color:#fff}
.site-footer p{margin:.15rem 0}
.foot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.site-footer .label{color:var(--o)}
.proposal{border-top:1px solid #666;margin-top:1.2rem!important;padding-top:.8rem;font-size:.9rem}
@media(max-width:760px){.hero-grid,.contact-grid,.cards,.foot-grid{grid-template-columns:1fr}.sheet{grid-template-columns:1fr 1fr}.hero-art{border-right:0}.nav a{flex:1;text-align:center;padding:.65rem .3rem;font-size:.8rem}.banner{font-size:10.5px}}
