:root{
  --bg:#05080E; --bg2:#080C14; --bg3:#070A11;
  --panel:#0A1118; --panel2:#0C1521;
  --text:#F4F8FC; --text2:#EAF1F8;
  --muted:#9CAEC1; --muted2:#A9BBCD; --muted3:#7E92A6; --muted4:#5F7488;
  --accent:#FFB23E; --accent2:#FFC766;
  --grad:linear-gradient(135deg,#FFC24B,#F2872B);
  --hair:rgba(127,196,239,.08); --hair2:rgba(127,196,239,.18);
  --f-head:'Sora',sans-serif; --f-body:'Hanken Grotesk',sans-serif; --f-mono:'JetBrains Mono',monospace;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0; background:var(--bg); font-family:var(--f-body); color:var(--text);}
img{max-width:100%;}
a{color:inherit;}
input::placeholder,textarea::placeholder{color:var(--muted4);}
@keyframes sh-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* Page frame, full width (scales to the whole screen) */
.wrap{width:100%; margin:0 auto; background:var(--bg2); overflow:hidden; position:relative;}

/* Responsive section padding (was padding:64px 40px etc.) */
.section{padding:64px 40px; background:var(--bg2);}
.section--tight{padding:44px 40px;}
.section--hero{padding:84px 40px 44px;}
.container{max-width:1120px;}

/* Grids that collapse on small screens */
.grid{display:grid; gap:36px; align-items:start;}
.grid-2{grid-template-columns:1.3fr 1fr;}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
.grid-footer{grid-template-columns:1.6fr 1fr 1fr 1fr;}
.grid--contact{grid-template-columns:1fr 1.1fr;}

/* Buttons */
.btn{display:inline-flex; align-items:center; gap:9px; border-radius:10px; text-decoration:none; font-family:var(--f-head); font-weight:700; cursor:pointer; border:none;}
.btn-primary{padding:13px 24px; background:var(--grad); color:#1A1206; font-size:14.5px; box-shadow:0 10px 30px rgba(242,135,43,.4);}
.btn-ghost{padding:9px 15px; border:1px solid rgba(143,163,184,.4); background:rgba(255,255,255,.03); color:#D6E2EF; font-weight:600; font-size:13px;}

.muted{color:var(--muted);}
.mono-label{font-family:var(--f-mono); font-size:11px; letter-spacing:1.5px; color:var(--muted4); text-transform:uppercase;}

@media (max-width:860px){
  .section,.section--tight,.section--hero{padding-left:20px; padding-right:20px;}
  .section--hero{padding-top:56px;}
  .grid-2,.grid-3,.grid-4,.grid-footer,.grid--contact{grid-template-columns:1fr; gap:28px;}
}
@media (max-width:560px){
  .section{padding-top:44px; padding-bottom:44px;}
}

/* ---- NAV ---- */
.nav{position:sticky; top:0; z-index:50; display:flex; align-items:center; justify-content:space-between;
  padding:12px 40px; backdrop-filter:blur(12px); background:rgba(8,12,20,.82); border-bottom:1px solid var(--hair);}
.nav__brand{display:flex; align-items:center; gap:12px; text-decoration:none;}
.nav__icon{width:34px; height:auto; display:block;}
.nav__logo--home{position:relative; width:74px; height:46px; flex:none; display:block;}
.nav__logo--home img{position:absolute; top:-5px; left:0; width:74px; height:auto;
  filter:drop-shadow(0 6px 14px rgba(0,0,0,.45));}
.nav__admin{position:absolute; top:-5px; left:0; width:74px; height:66px;}
.nav__admin--low{top:61px; height:48px;}
.nav__name{line-height:1; display:flex; flex-direction:column;}
.nav__name-1{font-family:var(--f-head); font-weight:800; font-size:16px; color:var(--text2); letter-spacing:1px;}
.nav__name-2{font-family:var(--f-head); font-weight:700; font-size:10px; color:var(--accent); letter-spacing:4.5px; margin-top:2px;}
.nav__links{display:flex; align-items:center; gap:22px;}
.nav__links>a{color:var(--muted2); font-size:14px; font-weight:500; text-decoration:none; white-space:nowrap;}
.nav__dd{position:relative;}
.nav__dd>span{display:inline-flex; align-items:center; gap:5px; color:var(--muted2); font-size:14px; font-weight:500; cursor:pointer;}
.nav__dd-menu{display:none; position:absolute; top:32px; right:0; width:290px; background:var(--panel2);
  border:1px solid var(--hair2); border-radius:14px; box-shadow:0 20px 50px rgba(0,0,0,.55); padding:14px; z-index:60;}
.dl-card{display:flex; align-items:center; gap:12px; padding:12px; border-radius:11px; text-decoration:none; margin-bottom:10px;}
.dl-card--amber{background:rgba(255,178,62,.1); border:1px solid rgba(255,178,62,.25);}
.dl-card--blue{background:rgba(127,196,239,.07); border:1px solid var(--hair2); margin-bottom:0; display:block;}
.dl-card b{font-family:var(--f-head); font-weight:700; font-size:14px; color:var(--text2); display:block;}
.dl-card small{font-size:12px; color:#8397AB;}
.dl-card__hd{display:flex; align-items:center; gap:10px; margin-bottom:10px;}
.dl-card__row{display:flex; gap:8px;}
.dl-card__row a{flex:1; text-align:center; padding:8px 6px; border-radius:8px; background:var(--panel);
  border:1px solid rgba(127,196,239,.22); color:#BBE2F7; font-family:var(--f-head); font-size:12px; font-weight:600; text-decoration:none;}
.nav__burger{display:none; background:none; border:none; cursor:pointer; padding:6px;}

/* ---- FOOTER ---- */
.footer{padding:54px 40px 40px; background:var(--bg3); border-top:1px solid var(--hair);}
.footer__grid{padding-bottom:36px; border-bottom:1px solid var(--hair);}
.footer__brand{display:flex; align-items:center; gap:12px; margin-bottom:16px;}
.footer__brand img{width:34px; height:auto;}
.footer__blurb{font-size:14px; color:var(--muted3); margin:0; line-height:1.6; max-width:300px;}
.footer__col{display:flex; flex-direction:column; gap:10px; margin-top:16px;}
.footer__col a{font-size:14px; color:var(--muted2); text-decoration:none;}
.footer__legal{display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding-top:24px;}
.footer__legal span{font-size:13px; color:var(--muted4);}
.footer__phone{font-family:var(--f-mono);}

/* ---- MOBILE ---- */
@media (max-width:860px){
  .nav{padding:12px 20px;}
  .nav__burger{display:block;}
  .nav__links{display:none; position:absolute; top:100%; left:0; right:0; flex-direction:column; align-items:stretch;
    gap:14px; padding:18px 20px; background:rgba(8,12,20,.98); border-bottom:1px solid var(--hair);}
  .nav__links--open{display:flex;}
  .nav__dd-menu{position:static; width:auto; margin-top:10px;}
  .footer{padding:44px 20px 32px;}
}

/* ---- FORM ---- */
.formcard{background:var(--panel); border:1px solid var(--hair2); border-radius:18px; padding:28px; max-width:760px;}
.formcard__h{font-family:var(--f-head); font-weight:800; font-size:24px; color:var(--text); margin:0 0 6px;}
.formcard__sub{color:var(--muted); margin:0 0 18px; line-height:1.6;}
.form__grid{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.field{margin:0 0 16px;}
.field--full{grid-column:1 / -1;}
.field label{display:block; font-family:var(--f-mono); font-size:10px; letter-spacing:1px; color:var(--accent); text-transform:uppercase; margin-bottom:7px;}
.field input,.field textarea{width:100%; padding:12px 14px; border-radius:10px; border:1px solid var(--hair2);
  background:var(--panel); color:var(--text2); font-size:14px; font-family:var(--f-body);}
.field textarea{resize:vertical;}
.chips{display:flex; flex-wrap:wrap; gap:9px;}
.chip{padding:9px 14px; border-radius:999px; border:1px solid rgba(127,196,239,.2); background:var(--panel);
  color:var(--muted2); font-size:13px; cursor:pointer; user-select:none;}
.chip--on{border-color:var(--accent); background:rgba(255,178,62,.15); color:var(--accent2);}
.cb{display:flex; align-items:center; gap:12px; cursor:pointer; margin:6px 0 18px;}
.cb__track{width:46px; height:26px; border-radius:13px; position:relative; flex:none; background:var(--grad); transition:.2s;}
.cb__knob{position:absolute; top:3px; left:23px; width:20px; height:20px; border-radius:50%; background:#fff; transition:.2s; box-shadow:0 1px 3px rgba(0,0,0,.4);}
.cb--off .cb__track{background:#2A3A4D;}
.cb--off .cb__knob{left:3px; background:#C7D4E2;}
.hp{position:absolute; left:-9999px; width:1px; height:1px; opacity:0;}
.form__status{font-size:13.5px; margin-top:14px; display:none;}
.form__status.ok{color:#6FD89A;}
.form__status.err{color:#FF8A8A;}
.formcard__done{text-align:center; padding:40px 10px;}
.formcard__done-h{font-family:var(--f-head); font-weight:800; font-size:24px; color:var(--text); margin-bottom:10px;}
.formcard__done-p{font-size:15px; color:var(--muted); line-height:1.6;}
.formcard__done-p a{color:var(--accent2); text-decoration:none; font-weight:700;}
@media (max-width:560px){ .form__grid{grid-template-columns:1fr;} .formcard{padding:20px;} }
