*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#07100f;color:#eff7f1;font-family:"Arial Narrow","Roboto Condensed","Arial",sans-serif;letter-spacing:.01em}
img{display:block;width:100%;height:100%;object-fit:cover}
.topline{position:fixed;z-index:20;left:22px;right:22px;top:18px;display:flex;gap:8px;justify-content:flex-end;mix-blend-mode:normal}
.topline a{color:#d8fff2;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:900;border:1px solid rgba(216,255,242,.34);padding:10px 14px;background:rgba(2,12,12,.58);backdrop-filter:blur(8px)}
.hero{position:relative;height:clamp(680px,86svh,760px);min-height:0;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.14)}
.hero img{object-position:center center}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,10,10,.92) 0 34%,rgba(3,10,10,.36) 64%,rgba(3,10,10,.04))}
.hero-copy{position:absolute;z-index:2;left:5vw;bottom:74px;max-width:min(660px,46vw);padding-top:92px}
.eyebrow{margin:0 0 14px;color:#ff4c3d;text-transform:uppercase;font-weight:900;font-size:13px}
.hero h1{margin:0;font-size:clamp(42px,5.1vw,72px);line-height:.95;text-transform:uppercase;max-width:660px;text-align:left}
.hero p:not(.eyebrow){max-width:610px;font-size:20px;line-height:1.35;color:#cfe0dc}
.cta,button{display:inline-flex;margin-top:18px;background:#ff3f2f;color:white;border:0;text-decoration:none;padding:15px 22px;text-transform:uppercase;font-weight:900;font-size:14px}
.risk-board{padding:46px 3vw;display:grid;grid-template-columns:minmax(240px,470px) 1fr;gap:34px;background:#0b1816;align-items:center}
.risk-board h2,.panel h2,.contact h2{margin:0;font-size:clamp(34px,5vw,72px);line-height:.95;text-transform:uppercase}
.plan-3d{margin:0;height:390px;border:1px solid rgba(216,255,242,.26);background:#06120f;box-shadow:0 28px 70px rgba(0,0,0,.28);overflow:hidden}
.plan-3d img{width:100%;height:100%;object-fit:cover;object-position:center}
.risk-scheme{position:relative;min-height:320px;border:1px solid rgba(216,255,242,.22);background:linear-gradient(135deg,rgba(216,255,242,.05),rgba(255,255,255,.01));overflow:hidden}
.risk-scheme:before{content:"";position:absolute;inset:34px 48px;border:1px solid rgba(216,255,242,.28);border-radius:44% 48% 42% 46%;transform:rotate(-7deg)}
.risk-scheme:after{content:"";position:absolute;left:12%;right:10%;top:50%;height:1px;background:rgba(216,255,242,.14);box-shadow:0 -70px 0 rgba(216,255,242,.08),0 70px 0 rgba(216,255,242,.08)}
.estate-line{position:absolute;left:18%;right:18%;top:22%;bottom:18%;border:1px dashed rgba(216,255,242,.18);transform:skew(-10deg)}
.house-core{position:absolute;left:44%;top:38%;width:116px;height:84px;display:grid;place-items:center;background:#eff7f1;color:#07100f;font-weight:900;text-transform:uppercase;clip-path:polygon(50% 0,100% 30%,100% 100%,0 100%,0 30%)}
.risk-node{position:absolute;z-index:2;min-width:96px;text-align:center;padding:10px 12px;background:#07100f;color:#eff7f1;font-weight:900;text-transform:uppercase;font-size:13px;line-height:1;border:1px solid #ff3f2f;box-shadow:0 0 0 4px rgba(255,63,47,.12)}
.risk-node:before{display:none}
.risk-node.gate{left:13%;bottom:20%}
.risk-node.perimeter{left:19%;top:16%}
.risk-node.service{right:8%;bottom:23%;min-width:140px}
.risk-node.guest{right:20%;top:17%}
.route{position:absolute;height:2px;background:#ff3f2f;transform-origin:left center;opacity:.9}
.main-route{left:21%;bottom:30%;width:37%;transform:rotate(-18deg)}
.service-route{right:20%;bottom:32%;width:28%;transform:rotate(162deg)}
.image-led,.response{display:grid;grid-template-columns:1.08fr .92fr;min-height:520px;border-top:1px solid rgba(255,255,255,.12)}
.image-led img,.response img{height:520px}
.response{grid-template-columns:.85fr 1.15fr}
.panel{padding:8vw 5vw;background:#101d1a;display:flex;flex-direction:column;justify-content:center}
.panel p:not(.eyebrow),.contact p{font-size:21px;line-height:1.45;color:#c9d7d4;max-width:620px}
.panel.red{background:#1b0e0d}
.contact{display:grid;grid-template-columns:1fr 420px;gap:50px;padding:58px 5vw;background:#e8eee8;color:#08100e}
.contact .eyebrow{color:#b2271e}
.contact p{color:#263331}
.contact form{display:grid;gap:12px;align-content:end}
.contact input{height:58px;border:1px solid #9aa8a3;background:white;padding:0 16px;font:inherit}
.contact button{margin:0;background:#07100f;color:white}
@media(max-width:820px){
  .topline{position:absolute;left:12px;right:12px;top:12px;flex-wrap:wrap;overflow:visible;justify-content:center}
  .hero{height:700px;min-height:0}
  .hero img{object-position:58% center}
  .hero:after{background:linear-gradient(180deg,rgba(3,10,10,.12),rgba(3,10,10,.92) 48%)}
  .hero-copy{left:24px;right:24px;top:auto;bottom:38px}
  .hero h1{font-size:48px}
  .hero p:not(.eyebrow){font-size:18px}
  .risk-board,.image-led,.response,.contact{grid-template-columns:1fr}
  .risk-scheme{min-height:300px}
  .plan-3d{height:310px}
  .house-core{left:37%;top:38%;width:100px;height:74px}
  .risk-node{font-size:12px;padding:9px 10px}
  .risk-node.service{right:6%}
  .risk-node.guest{right:12%}
  .image-led img,.response img{height:360px}
  .panel{padding:54px 24px}
  .contact{padding:58px 24px}
  .topline a{font-size:10px;padding:8px 10px;white-space:nowrap}
}
