:root{
  --bg:#EEEEEC;
  --ink:#141414;
  --accent:#1D4ED8;
  --rule:rgba(20,20,20,.22);
  --mute:rgba(20,20,20,.62);
  --mono:'JetBrains Mono', ui-monospace, 'Courier New', monospace;
  --body:'Source Sans 3', system-ui, sans-serif;
}

*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--body);
  font-size:17px;
  line-height:1.55;
}
a{color:var(--ink);}

/* ---------- status strip ---------- */
.head{border-bottom:3px solid var(--ink);}
.statusbar{
  border-bottom:1px solid var(--ink);
  background:var(--ink);
  color:var(--bg);
}
.statusbar__wrap{
  max-width:1120px;margin:0 auto;padding:9px 20px;
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;
  font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;
}
.brand{font-weight:700;letter-spacing:.3em;}
.sep{opacity:.5;}
.status-item{opacity:.82;}
.statusbar .stamp{margin-left:auto;}

.stamp{
  font-family:var(--mono);font-size:10px;font-weight:700;
  letter-spacing:.18em;text-transform:uppercase;
  padding:5px 10px;border:2px solid var(--accent);color:var(--accent);
  display:inline-block;transform:rotate(-1.2deg);white-space:nowrap;
}
.stamp--live::before{content:"\25CF";margin-right:7px;}
.stamp--no{border-color:var(--ink);color:var(--ink);transform:rotate(1.5deg);}

.navbar{
  max-width:1120px;margin:0 auto;padding:0 20px;
  display:flex;flex-wrap:wrap;gap:0;
  font-family:var(--mono);font-size:11px;letter-spacing:.16em;
}
.navbar a{
  padding:12px 16px 12px 0;margin-right:16px;
  text-decoration:none;color:var(--mute);border-bottom:2px solid transparent;
}
.navbar a:hover,.navbar a:focus{color:var(--accent);border-bottom-color:var(--accent);}

/* ---------- panels ---------- */
.panel{
  border:3px solid var(--ink);
  background:var(--bg);
  padding:28px;
  box-shadow:9px 9px 0 var(--ink);
}
.hero{max-width:1120px;margin:30px auto 34px;}
.label{
  font-family:var(--mono);font-size:11px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;color:var(--mute);
  margin:0 0 10px;
}
h1{
  font-family:var(--mono);font-weight:700;
  font-size:clamp(1.6rem,4.4vw,2.7rem);line-height:1.12;
  margin:0 0 16px;letter-spacing:-.01em;
}
h2{
  font-family:var(--mono);font-weight:700;
  font-size:clamp(1.2rem,3vw,1.6rem);margin:0;letter-spacing:-.01em;
}
h3.label{margin-top:22px;}
.lede{max-width:62ch;margin:0 0 22px;font-size:1.03rem;}
.body{margin:0 0 12px;max-width:68ch;}
.body a{color:var(--accent);}

.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;}
.btn{
  font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;text-decoration:none;
  background:var(--accent);color:#EEEEEC;
  border:2px solid var(--ink);padding:14px 22px;
  box-shadow:5px 5px 0 var(--ink);cursor:pointer;display:inline-block;
}
.btn:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink);}
.btn:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{
  outline:3px solid var(--accent);outline-offset:2px;
}
.textlink{
  font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--accent);
  text-decoration:none;border-bottom:1px dashed var(--accent);
}
.textlink:hover{border-bottom-style:solid;}

.metagrid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:0;margin:28px 0 0;border-top:1px solid var(--ink);
}
.metagrid > div{padding:14px 16px 14px 0;border-bottom:1px solid var(--rule);}
.metagrid dt{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--mute);margin-bottom:6px;}
.metagrid dd{margin:0;font-size:.95rem;}
.metagrid--doc{margin-top:0;}

/* ---------- sections ---------- */
.section{max-width:1120px;margin:0 auto;padding:46px 20px;border-top:1px solid var(--rule);}
.section:first-of-type{border-top:0;}
.section__head{
  display:flex;flex-wrap:wrap;align-items:center;gap:16px;
  margin-bottom:22px;padding-bottom:12px;border-bottom:3px solid var(--ink);
}
.section__head .stamp{margin-left:auto;}

.panel--refusal{border-left:10px solid var(--accent);}
.refusal__line{
  font-family:var(--mono);font-weight:700;
  font-size:clamp(1.05rem,2.6vw,1.45rem);line-height:1.3;
  margin:0 0 14px;
}

.scope{
  display:grid;grid-template-columns:1fr 1fr;gap:0;margin:26px 0 0;
  border:2px solid var(--ink);
}
.scope__col{padding:20px;border-right:2px solid var(--ink);}
.scope__col:last-child{border-right:0;}
.scope__col--no{background:rgba(20,20,20,.05);}
.scope dt{
  font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.2em;
  padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid var(--ink);
}
.scope dd{
  margin:0 0 10px;padding-left:22px;position:relative;font-size:.95rem;
}
.scope dd::before{
  content:"+";position:absolute;left:0;top:-1px;
  font-family:var(--mono);font-weight:700;color:var(--accent);
}
.scope__col--no dd::before{content:"\00D7";color:var(--ink);}

.tablewrap{margin-top:30px;}
.svc{width:100%;border-collapse:collapse;border:2px solid var(--ink);}
.svc caption{
  font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--mute);
  text-align:left;padding-bottom:8px;
}
.svc th{
  font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  text-align:left;padding:11px 14px;background:var(--ink);color:var(--bg);
  border-right:1px solid rgba(238,238,236,.25);
}
.svc th:last-child{border-right:0;}
.svc td{
  padding:14px;border-top:1px solid var(--rule);border-right:1px solid var(--rule);
  font-size:.95rem;vertical-align:top;
}
.svc td:last-child{border-right:0;}
.svc tbody tr:nth-child(even){background:rgba(20,20,20,.04);}
.svc td strong{font-family:var(--mono);font-size:.92rem;}
.svc td:nth-child(2){font-family:var(--mono);font-size:.82rem;color:var(--accent);letter-spacing:.04em;}
.footnote{font-size:.88rem;color:var(--mute);max-width:70ch;margin:18px 0 0;}

/* ---------- form ---------- */
.panel--form{border-width:6px;box-shadow:12px 12px 0 var(--accent);}
.form__intro{margin-bottom:22px;}
.form{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px;}
.field{display:flex;flex-direction:column;}
.field--wide{grid-column:1 / -1;}
.field label{
  font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;margin-bottom:8px;
}
input[type="text"],input[type="tel"],textarea{
  font-family:var(--mono);font-size:.9rem;color:var(--ink);
  background:transparent;border:2px solid var(--ink);padding:12px 13px;width:100%;
}
input::placeholder,textarea::placeholder{color:rgba(20,20,20,.4);}
textarea{resize:vertical;}
.check{flex-direction:row;flex-wrap:wrap;align-items:flex-start;gap:10px;}
.check input{margin-top:4px;width:18px;height:18px;accent-color:var(--accent);flex:0 0 auto;}
.check label{
  font-family:var(--body);font-size:.9rem;letter-spacing:0;text-transform:none;
  font-weight:400;margin:0;max-width:60ch;
}
.check label a{color:var(--accent);}
.err{
  font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--accent);min-height:14px;margin-top:6px;display:block;width:100%;
}
.form__foot{
  grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:20px;
  border-top:1px solid var(--rule);padding-top:20px;
}
.formstatus{
  grid-column:1 / -1;font-family:var(--mono);font-size:12px;letter-spacing:.08em;
  margin:0;padding:0;
}
.formstatus.is-ok{border:2px solid var(--accent);color:var(--accent);padding:12px 14px;}
.formstatus.is-bad{border:2px dashed var(--ink);padding:12px 14px;}

/* ---------- footer ---------- */
.foot{border-top:3px solid var(--ink);background:var(--ink);color:var(--bg);margin-top:20px;}
.foot__grid{
  max-width:1120px;margin:0 auto;padding:36px 20px 18px;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:26px;
}
.foot .label{color:rgba(238,238,236,.55);}
.foot .body{color:rgba(238,238,236,.92);font-size:.93rem;}
.foot a{color:var(--bg);text-decoration:none;border-bottom:1px solid rgba(238,238,236,.4);}
.foot a:hover{border-bottom-color:var(--bg);}
.social{list-style:none;margin:0;padding:0;font-family:var(--mono);font-size:11px;letter-spacing:.06em;}
.social li{display:flex;align-items:center;gap:9px;margin-bottom:10px;}
.social svg{width:16px;height:16px;flex:0 0 auto;fill:none;stroke:var(--bg);stroke-width:1.6;}
.social svg .fill{fill:var(--bg);stroke:none;}
.foot__rule{
  max-width:1120px;margin:0 auto;padding:14px 20px 28px;
  border-top:1px solid rgba(238,238,236,.25);
  font-family:var(--mono);font-size:10px;letter-spacing:.24em;color:rgba(238,238,236,.6);
}

/* ---------- responsive ---------- */
@media (max-width:760px){
  body{font-size:16px;}
  .panel{padding:20px;box-shadow:6px 6px 0 var(--ink);}
  .panel--form{border-width:4px;box-shadow:7px 7px 0 var(--accent);}
  .hero{margin:20px 14px 24px;}
  .section{padding:34px 14px;}
  .statusbar .stamp{margin-left:0;}
  .scope{grid-template-columns:1fr;}
  .scope__col{border-right:0;border-bottom:2px solid var(--ink);}
  .scope__col:last-child{border-bottom:0;}
  .form{grid-template-columns:1fr;}
  .svc thead{display:none;}
  .svc,.svc tbody,.svc tr,.svc td{display:block;width:100%;}
  .svc tr{border-top:2px solid var(--ink);}
  .svc tr:first-child{border-top:0;}
  .svc td{border-right:0;}
  .svc td::before{
    content:attr(data-l);display:block;
    font-family:var(--mono);font-size:9px;letter-spacing:.2em;color:var(--mute);
    margin-bottom:5px;
  }
}
