/* ================= QUIZ MODAL ================= */
#quiz{position:fixed;inset:0;z-index:300;display:none}
#quiz.open{display:block}
#quizBd{position:absolute;inset:0;background:rgba(3,17,38,.72);backdrop-filter:blur(8px);
  animation:fade .35s var(--ease) both}
@keyframes fade{from{opacity:0}to{opacity:1}}
#quizBox{position:relative;max-width:1000px;margin:clamp(14px,4vh,52px) auto;background:#fff;
  border-radius:clamp(18px,2vw,26px);overflow:hidden;display:grid;grid-template-columns:326px 1fr;
  grid-template-rows:minmax(0,1fr);
  max-height:calc(100dvh - clamp(28px,8vh,104px));box-shadow:0 60px 140px -40px rgba(0,0,0,.6);
  animation:pop .45s var(--ease) both}
@keyframes pop{from{opacity:0;transform:translateY(26px) scale(.985)}to{opacity:1;transform:none}}
.q-aside{background:linear-gradient(165deg,var(--navy-deep),#062E60);color:#fff;padding:36px 32px;
  display:flex;flex-direction:column;position:relative;overflow:hidden}
.q-aside::before{content:"";position:absolute;width:300px;height:300px;left:-110px;bottom:-130px;border-radius:50%;
  background:radial-gradient(circle,rgba(242,176,46,.22),transparent 70%)}
.q-aside .brand{margin:0 0 30px}
.q-aside h2{font-size:1.42rem;letter-spacing:-.03em;margin-bottom:12px;position:relative}
.q-aside p{font-size:.9rem;color:#A9C6E6;position:relative}
.q-steps{list-style:none;padding:0;margin:32px 0 0;display:grid;gap:3px;position:relative}
.q-steps li{display:flex;gap:12px;align-items:center;font-size:.88rem;color:#7EA3CC;padding:8px 0;
  transition:color .35s}
.q-steps li i{flex:none;width:22px;height:22px;border-radius:50%;border:1.5px solid rgba(255,255,255,.24);
  display:grid;place-items:center;font-style:normal;font-size:.68rem;font-weight:700;transition:all .35s var(--ease)}
.q-steps li.on{color:#fff}
.q-steps li.on i{background:var(--gold);border-color:var(--gold);color:#2A1A00}
.q-steps li.done i{background:rgba(255,255,255,.2);border-color:transparent;color:#fff}
.q-secure{margin-top:auto;padding-top:26px;font-size:.78rem;color:#89A9CB;display:flex;gap:9px;align-items:flex-start;position:relative}
.q-main{display:flex;flex-direction:column;min-height:0}
.q-bar{height:4px;background:var(--mist);flex:none}
.q-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--navy),var(--navy-soft));
  transition:width .55s var(--ease)}
.q-body{padding:clamp(26px,3.2vw,46px);overflow-y:auto;flex:1;min-height:0}
.q-count{font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep)}
.q-body h3{font-size:clamp(1.35rem,2.3vw,1.85rem);margin:12px 0 6px}
.q-hint{color:var(--muted);font-size:.93rem;margin-bottom:26px}
.q-opts{display:grid;gap:10px}
.q-opts.two{grid-template-columns:1fr 1fr}
.q-opt{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1.5px solid var(--line-in);
  border-radius:14px;background:#fff;cursor:pointer;text-align:left;font-size:.98rem;font-weight:500;
  transition:all .25s var(--ease);width:100%}
.q-opt:hover{border-color:var(--navy-soft);background:#FAFCFF;transform:translateX(3px)}
.q-opt i{flex:none;width:22px;height:22px;border-radius:50%;border:1.8px solid var(--line-in);
  display:grid;place-items:center;transition:all .25s var(--ease)}
.q-opt.sq i{border-radius:7px}
.q-opt[aria-checked="true"]{border-color:var(--navy);background:#F3F8FF;font-weight:600}
.q-opt[aria-checked="true"] i{background:var(--navy);border-color:var(--navy)}
.q-opt[aria-checked="true"] i::after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}
.q-opt.sq[aria-checked="true"] i::after{width:11px;height:7px;border-radius:0;background:none;
  border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-2px)}
.q-foot{display:flex;gap:12px;align-items:center;padding:20px clamp(26px,3.2vw,46px);
  border-top:1px solid var(--line);background:#FBFCFE;flex:none}
.q-foot .sp{margin-left:auto}
#qBack{background:#fff;border:1.5px solid var(--line-in);border-radius:999px;color:var(--muted);
  cursor:pointer;font-weight:600;font-size:.92rem;display:inline-flex;gap:8px;align-items:center;padding:11px 20px}
#qBack:hover{color:var(--navy);border-color:var(--navy)}
.q-err{display:flex;gap:9px;align-items:center;margin-top:16px;padding:11px 14px;border-radius:10px;
  background:#FCEDEC;border:1px solid #E7B7B4;color:#8E2C27;font-size:.88rem;font-weight:500}
#qBack{min-height:44px}
#qClose{position:absolute;top:14px;right:16px;z-index:4;width:44px;height:44px;border-radius:50%;
  border:1px solid var(--line);background:#fff;cursor:pointer;display:grid;place-items:center;
  color:var(--muted);transition:all .25s}
#qClose:hover{background:var(--ink);border-color:var(--ink);color:#fff;transform:rotate(90deg)}
.q-done{text-align:center;padding:clamp(30px,5vw,60px) 10px}
.q-done.plain{text-align:left;padding:clamp(26px,4vw,44px) 0}
.q-done.plain .tick{margin:0 0 22px}
.q-done.plain .q-hint,.q-done.plain .q-sum,.q-done.plain p{margin-left:0;margin-right:0}
.q-act{display:flex;gap:11px;justify-content:center;flex-wrap:wrap;margin-top:26px}
.q-done .tick{width:76px;height:76px;border-radius:50%;background:var(--green-soft);color:var(--green);
  display:grid;place-items:center;margin:0 auto 24px;animation:pop .5s .1s var(--ease) both}
.q-done .tick.no{background:var(--mist);color:var(--navy)}
.q-done h3{outline:none}
.q-est{max-width:430px;margin:26px auto 0;padding:18px 22px;border-radius:16px;text-align:left;
  background:linear-gradient(150deg,var(--navy-deep),#062E60);color:#fff}
.q-est span{display:block;font-size:.74rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:#8FB6E4}
.q-est b{display:block;font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;letter-spacing:-.035em;
  font-size:1.5rem;margin:6px 0 4px;font-variant-numeric:tabular-nums}
.q-est small{font-size:.76rem;color:#A6C2E0}
.q-sum{text-align:left;max-width:430px;margin:26px auto 0;border:1px solid var(--line);border-radius:16px;
  padding:20px 22px;background:#FBFCFE}
.q-sum div{display:flex;justify-content:space-between;gap:16px;padding:8px 0;font-size:.9rem;border-bottom:1px dashed var(--line)}
.q-sum div:last-child{border:none}
.q-sum span{color:var(--muted)}
.q-sum b{text-align:right;font-weight:600}

/* ================= VIDEO LIGHTBOX ================= */
#lb{position:fixed;inset:0;z-index:290;display:none}
#lb.open{display:grid;place-items:center}
#lb .bd{position:absolute;inset:0;background:rgba(3,17,38,.86);backdrop-filter:blur(8px)}
#lb .box{position:relative;z-index:2;width:min(390px,88vw);border-radius:22px;overflow:hidden;
  background:#0A2540;box-shadow:0 50px 120px -40px rgba(0,0,0,.7);animation:pop .4s var(--ease) both}
#lb img{width:100%;aspect-ratio:9/14;object-fit:cover;opacity:.55}
#lb .cap{position:absolute;inset:auto 0 0 0;padding:22px 24px;color:#fff;
  background:linear-gradient(to top,rgba(3,20,45,.95),transparent)}
#lb .cap b{display:block;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:1.1rem}
#lb .cap span{font-size:.82rem;color:#B7CEE8}
#lb .mid{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:26px}
#lb .mid p{font-size:.86rem;color:#CFE0F3;max-width:26ch;margin-top:14px}
#lb .pl{width:64px;height:64px;border-radius:50%;background:var(--gold);display:grid;place-items:center;margin:0 auto}
#lbClose{position:absolute;top:12px;right:12px;z-index:3;width:44px;height:44px;border-radius:50%;
  border:1px solid rgba(255,255,255,.4);background:rgba(0,0,0,.4);color:#fff;cursor:pointer;display:grid;place-items:center}
.vid{border:0;padding:0;font:inherit;color:inherit;text-align:left}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}

/* ================= RESPONSIVE ================= */
@media(max-width:1080px){
  #est{grid-template-columns:1fr}
  .shead{grid-template-columns:1fr;align-items:start}
  .about{grid-template-columns:1fr}
  .lead-grid{grid-template-columns:1fr}
  .proc{grid-template-columns:repeat(2,1fr);row-gap:34px}
  .proc::before,.proc::after{display:none}
  .stats{grid-template-columns:1fr 1fr}
  #quizBox{grid-template-columns:1fr}
  .q-aside{padding:24px 26px}
  .q-steps,.q-secure,.q-aside p{display:none}
  .q-aside h2{font-size:1.2rem}
}
.hdr-cta .sm{display:none}
@media(max-width:900px){
  body{font-size:16px}
  #nav,.hdr-cta .btn-line{display:none}
  #burger{display:flex}
  #hdr .wrap{height:70px}
  #topbar .tb-links{display:none}
  .svc{grid-template-columns:1fr}
  .pillars{grid-template-columns:1fr}
  .trust-list{grid-template-columns:1fr}
  #mbar{display:flex}
  body{padding-bottom:74px}
  .quote{grid-template-columns:1fr;gap:6px}
  .ft-top{grid-template-columns:1fr 1fr}
  #estWrap{margin-top:-84px}
  #hero{margin-top:-70px;padding-top:70px}
  .hero-in{padding-bottom:130px}
  .q-opts.two{grid-template-columns:1fr}
  .frow{grid-template-columns:1fr}
}
@media(max-width:560px){
  .brand small{display:none}
  .brand{min-width:0}
  .brand b{font-size:.88rem;white-space:normal;line-height:1.12}
  .brand img{width:30px;height:30px}
  #hdr .hdr-cta .btn-gold{padding:9px 13px;font-size:.8rem}
  #hdr .wrap{gap:10px}
  .hdr-cta .lg{display:none}
  .hdr-cta .sm{display:inline}
  .proc{grid-template-columns:1fr}
  .ft-top{grid-template-columns:1fr}
  .hero-marks img{height:24px}
  .stat b{font-size:2.1rem}
}
/* mobile nav sheet */
#msheet{position:fixed;inset:0;z-index:130;background:rgba(3,17,38,.6);backdrop-filter:blur(6px);display:none}
#msheet.open{display:block}
#msheet .panel{position:absolute;top:0;right:0;bottom:0;width:min(340px,86vw);background:#fff;
  padding:26px 24px;display:flex;flex-direction:column;gap:4px;animation:slideIn .4s var(--ease) both}
@keyframes slideIn{from{transform:translateX(100%)}to{transform:none}}
#msheet a{padding:15px 0;border-bottom:1px solid var(--line);font-family:"Plus Jakarta Sans",sans-serif;
  font-weight:700;font-size:1.05rem;letter-spacing:-.02em}
#msheet .btn{margin-top:22px}
#msClose{align-self:flex-end;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);
  background:#fff;cursor:pointer;display:grid;place-items:center;color:var(--muted);margin-bottom:8px}
#msClose:hover{background:var(--ink);border-color:var(--ink);color:#fff}

/* ---------- плеер в модалке видеоотзыва ---------- */
#lbPlayer:empty{display:none}
#lbPlayer{position:absolute;inset:0;background:#000;border-radius:inherit;overflow:hidden}
#lbPlayer video,#lbPlayer iframe{width:100%;height:100%;border:0;display:block;object-fit:cover}
