:root{
  --bg:#14181a;
  --bg-1:#191e20;
  --bg-2:#1f2426;
  --bg-card:#23292b;
  --line:rgba(243,246,244,.10);
  --line-strong:rgba(243,246,244,.18);
  --ink:#eef1ef;
  --ink-dim:#98a29d;
  --ink-faint:#68716d;
  --accent:#5fd9a6;
  --accent-dim:#3f9c77;
  --accent-soft:rgba(95,217,166,.12);
  --amber:#e7ab63;
  --amber-soft:rgba(231,171,99,.12);
  --radius:14px;
  --disp:'Sora',sans-serif;
  --body:'Sora',sans-serif;
  --mono:'Sora',sans-serif;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:var(--body);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit; text-decoration:none;}
img,svg{display:block; max-width:100%;}
.wrap{max-width:1240px; margin:0 auto; padding:0 32px;}
@media(max-width:720px){.wrap{padding:0 20px;}}

.eyebrow{
  font-family:var(--mono);
  font-size:12.5px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--accent);
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.eyebrow::before{content:'';width:6px;height:6px;background:var(--accent);border-radius:1px; display:inline-block; box-shadow:0 0 8px var(--accent);}

h1,h2,h3{font-family:var(--disp); font-weight:600; letter-spacing:-.01em; line-height:1.05;}

/* ---------- NAV ---------- */
header.site{
  position:sticky; top:0; z-index:50;
  background:rgba(10,12,13,.86);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.navrow{display:flex; align-items:center; justify-content:space-between; height:84px;}
@media(max-width:640px){.navrow{height:68px;}}
.logo{display:flex; align-items:center; gap:12px; font-family:var(--disp); font-weight:700; font-size:20px;}
.logo .mark{
  width:38px; height:38px; border-radius:9px;
  background:linear-gradient(155deg,var(--accent-soft),transparent);
  border:1px solid var(--line-strong);
  display:flex; align-items:center; justify-content:center;
  overflow:hidden; padding:0;
  color:var(--accent); font-size:18px;
}
.logo .mark img{width:100%; height:100%; object-fit:cover; display:block;}
.logo small{display:block; font-family:var(--mono); font-weight:400; font-size:9.5px; letter-spacing:.16em; color:var(--ink-faint); text-transform:uppercase;}
nav.links{display:flex; gap:34px;}
nav.links a{
  font-size:14px; color:var(--ink-dim); font-weight:500;
  padding:6px 0; border-bottom:1px solid transparent; transition:.15s;
}
nav.links a:hover, nav.links a.active{color:var(--ink); border-color:var(--accent);}
.nav-cta{display:flex; align-items:center; gap:18px;}
.navtel{font-family:var(--mono); font-size:13px; color:var(--ink-dim);}
.burger{display:none; flex-direction:column; justify-content:center; gap:5px; width:36px; height:36px; background:none; border:1px solid var(--line-strong); border-radius:8px; cursor:pointer; padding:0;}
.burger span{display:block; width:16px; height:2px; background:var(--ink); margin:0 auto; transition:.2s; border-radius:2px;}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.burger.open span:nth-child(2){opacity:0;}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-menu{
  display:none; flex-direction:column;
  background:var(--bg);
}
.mobile-menu.open{display:flex;}
@media(max-width:980px){
  nav.links{display:none;}
  .navtel{display:none;}
  .burger{display:flex;}
}
@media(max-width:560px){
  .nav-cta .btn-primary{display:none;}
}
@media(min-width:981px){.mobile-menu{display:none !important;}}

.btn{
  font-family:var(--body); font-weight:600; font-size:14px;
  padding:13px 22px; border-radius:999px; display:inline-flex; align-items:center; gap:8px;
  cursor:pointer; border:1px solid transparent; transition:.18s;
}
.btn-primary{background:var(--accent); color:#04140d;}
.btn-primary:hover{background:#5dffc4; transform:translateY(-1px);}
.btn-ghost{border-color:var(--line-strong); color:var(--ink);}
.btn-ghost:hover{border-color:var(--accent); color:var(--accent);}
.btn svg{width:15px;height:15px;}

/* ---------- CONSOLE CARD (signature device) ---------- */
.console{
  background:var(--bg-card);
  border:1px solid var(--line-strong);
  border-radius:var(--radius);
  position:relative;
  overflow:hidden;
}
.console::before{
  content:''; position:absolute; inset:0; pointer-events:none; border-radius:inherit;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
.console-bar{
  display:flex; align-items:center; justify-content:space-between;
  padding:12px 16px; border-bottom:1px solid var(--line);
  font-family:var(--mono); font-size:11.5px; color:var(--ink-faint); letter-spacing:.06em;
}
.console-dots{display:flex; gap:6px;}
.console-dots span{width:7px;height:7px;border-radius:50%; background:var(--line-strong);}
.console-body{padding:22px;}
@media(max-width:480px){.console-body{padding:18px;}}
.corner{position:absolute; width:14px; height:14px; border:1.5px solid var(--accent); opacity:.55;}
.corner.tl{top:-1px; left:-1px; border-right:none; border-bottom:none;}
.corner.br{bottom:-1px; right:-1px; border-left:none; border-top:none;}

/* ---------- HERO ---------- */
.hero{padding:88px 0 96px; position:relative; overflow:hidden;}
.hero-grid{position:relative; z-index:1;}
.hero-content{position:relative; z-index:2;}
.hero-visual{z-index:1;}
.hero-grid{display:grid; grid-template-columns:1.15fr .85fr; gap:56px; align-items:center; overflow:visible;}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr; gap:40px;} .hero{padding:56px 0 64px;}}
@media(max-width:640px){.hero{padding:44px 0 52px;}}
.hero h1{font-size:clamp(34px,5.2vw,68px); margin:22px 0 22px;}
.hero h1 .accent, .hero p.lead .accent{color:var(--accent);}
.hero p.lead{font-size:17px; color:var(--ink-dim); max-width:480px; margin-bottom:0; line-height:1.5;}
@media(max-width:640px){.hero p.lead{font-size:15.5px;}}
.hero-actions{display:flex; gap:14px; flex-wrap:wrap; margin:26px 0 0;}
.hero-actions .btn{flex:1 1 auto; justify-content:center;}
@media(min-width:481px){.hero-actions .btn{flex:0 1 auto;}}
.trust-row{display:flex; gap:20px 28px; flex-wrap:wrap;}
.trust-item{font-family:var(--mono); font-size:12.5px; color:var(--ink-faint);}
.trust-item b{color:var(--ink); font-weight:600;}

.hero-console .console-body{padding:20px;}
.metric-line{display:flex; justify-content:space-between; align-items:center; padding:11px 0; border-bottom:1px dashed var(--line);}
.metric-line:last-child{border-bottom:none;}
.metric-line .label{font-family:var(--mono); font-size:12px; color:var(--amber); text-transform:uppercase; letter-spacing:.06em;}
.metric-line .value{font-family:var(--mono); font-size:15px; font-weight:600;}
.value.up{color:var(--accent);}
.value.down{color:var(--amber);}
.spark{height:64px; margin:16px 0 6px;}
.hero-tag{
  display:inline-flex; align-items:center; gap:6px; margin-top:14px;
  font-family:var(--mono); font-size:11px; color:var(--accent); background:var(--accent-soft);
  padding:6px 10px; border-radius:6px; border:1px solid rgba(95,217,166,.25);
}

.hero-badges{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:20px;}
.hero-badge{
  font-family:var(--mono); font-size:11.5px; letter-spacing:.04em; text-transform:uppercase;
  color:var(--accent); background:var(--accent-soft); border:1px solid rgba(95,217,166,.3);
  padding:6px 12px; border-radius:999px;
}

.hero-features{display:flex; gap:28px; margin-top:36px; flex-wrap:wrap;}
.hero-feature{
  display:flex; align-items:flex-start; gap:10px; max-width:160px;
  padding:14px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.02);
}
.hero-feature svg{width:22px; height:22px; color:var(--accent); flex-shrink:0; margin-top:2px;}
.hero-feature span{font-size:13.5px; color:var(--ink-dim); line-height:1.4;}
@media(max-width:640px){.hero-features{gap:12px;} .hero-feature{max-width:none; flex:1 1 150px;}}

@media(max-width:980px){
  .hero-content{order:2; text-align:center;}
  .hero-visual{order:1;}
  .hero-badges{justify-content:center;}
  .hero-actions{justify-content:center;}
  .hero-features{justify-content:center;}
  .hero-feature{text-align:left;}
  .hero p.lead{margin-left:auto; margin-right:auto;}
}

.hero-visual{position:relative; transform:scale(1.5); transform-origin:center 42%; pointer-events:none;}
.hero-visual::before{
  content:''; position:absolute; z-index:0; pointer-events:none;
  width:108%; height:108%; top:50%; left:50%; transform:translate(-50%,-50%);
  border-radius:50%; background:#010103; filter:blur(40px);
}
.hero-visual img{position:relative; z-index:1;
  width:100%; height:auto; display:block;
  -webkit-mask-image: radial-gradient(ellipse 55% 55% at center, black 0%, black 62%, rgba(0,0,0,.45) 82%, transparent 99%);
  mask-image: radial-gradient(ellipse 55% 55% at center, black 0%, black 62%, rgba(0,0,0,.45) 82%, transparent 99%);
}
@media(max-width:980px){
  .hero-visual{transform:scale(1.18); transform-origin:center 45%; margin:24px auto 0; max-width:480px;}
  .hero-visual img{
    -webkit-mask-image: radial-gradient(ellipse 60% 60% at center, black 0%, black 62%, rgba(0,0,0,.45) 82%, transparent 99%);
    mask-image: radial-gradient(ellipse 60% 60% at center, black 0%, black 62%, rgba(0,0,0,.45) 82%, transparent 99%);
  }
  .hero{overflow:visible;}
}
@media(max-width:640px){.hero-visual{max-width:380px;}}

/* ---------- TRUST STRIP ---------- */
.strip{border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--bg-1);}
.strip .wrap{display:grid; grid-template-columns:repeat(4,1fr); gap:0;}
.strip-cell{padding:28px 32px; border-left:1px solid var(--line);}
.strip-cell:first-child{border-left:none;}
.strip-cell .num{font-family:var(--disp); font-size:18px; font-weight:700; color:var(--accent); height:48px; display:flex; align-items:center; line-height:1.2;}
.strip-cell .cap{font-family:var(--mono); font-size:11.5px; color:var(--amber); text-transform:uppercase; letter-spacing:.06em; margin-top:4px;}
@media(max-width:720px){
  .strip .wrap{grid-template-columns:1fr 1fr;}
  .strip-cell{border-left:none; border-top:1px solid var(--line); padding:22px 20px;}
  .strip-cell:nth-child(1),.strip-cell:nth-child(2){border-top:none;}
  .strip-cell:nth-child(even){border-left:1px solid var(--line);}
  .strip-cell .num{font-size:17px;}
}

/* ---------- SECTION shell ---------- */
.section{padding:96px 0;}
.section.alt{background:var(--bg-1);}
.section-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:44px; gap:24px; flex-wrap:wrap;}
.section-head h2{font-size:clamp(26px,3.4vw,40px);}
.section-head p{color:var(--ink-dim); max-width:420px; font-size:15px;}
@media(max-width:720px){.section{padding:64px 0;} .section-head{margin-bottom:32px;}}
@media(max-width:480px){.section{padding:52px 0;}}

/* ---------- HOW IT WORKS ---------- */
.steps{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden;}
.step{background:var(--bg-card); padding:30px 26px; position:relative;}
.step .idx{font-family:var(--mono); color:var(--accent); font-size:13px; margin-bottom:18px; display:block;}
.step h3{font-size:18px; margin-bottom:10px;}
.step p{font-size:13.5px; color:var(--ink-dim);}
.step-arrow{position:absolute; right:-11px; top:50%; transform:translateY(-50%); width:22px; height:22px; color:var(--ink-faint); z-index:2;}
@media(max-width:900px){.steps{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.steps{grid-template-columns:1fr;}}

/* ---------- SERVICE TABS ---------- */
.tabs-nav{display:inline-flex; gap:6px; padding:5px; background:var(--bg-card); border:1px solid var(--line-strong); border-radius:999px; margin-bottom:36px; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch;}
.tabs-nav::-webkit-scrollbar{display:none;}
.tab-btn{
  font-family:var(--mono); font-size:12.5px; letter-spacing:.04em; text-transform:uppercase;
  padding:10px 18px; border-radius:999px; color:var(--ink-dim); cursor:pointer; border:none; background:transparent; transition:.15s;
  display:flex; align-items:center; gap:7px; white-space:nowrap; flex-shrink:0;
}
@media(max-width:480px){.tab-btn{padding:9px 14px; font-size:11.5px;}}
.tab-btn.active{background:var(--accent); color:#04140d;}
.scope-tab-btn{
  font-family:var(--mono); font-size:12.5px; letter-spacing:.04em; text-transform:uppercase;
  padding:10px 18px; border-radius:999px; color:var(--ink-dim); cursor:pointer; border:none; background:transparent; transition:.15s;
}
.scope-tab-btn.active{background:var(--accent); color:#04140d;}
.scope-panel{display:none;}
.scope-panel.active{display:block;}
.scope-list li{font-size:14.5px;}
.tabpanel{display:none;}
.tabpanel.active{display:block;}
.case-slider-wrap{position:relative; --fade-l:0px; --fade-r:0px;
  -webkit-mask-image: linear-gradient(to right, transparent 0, black var(--fade-l), black calc(100% - var(--fade-r)), transparent 100%);
  mask-image: linear-gradient(to right, transparent 0, black var(--fade-l), black calc(100% - var(--fade-r)), transparent 100%);
}
.case-grid{
  display:flex; gap:22px; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch;
  padding-bottom:8px; scrollbar-width:none;
}
.case-grid::-webkit-scrollbar{display:none;}
.case-grid > *{scroll-snap-align:start; flex:0 0 340px;}
@media(max-width:640px){.case-grid > *{flex-basis:82vw;}}
.slider-nav{display:flex; gap:10px; justify-content:flex-end; margin:-8px 0 22px;}
.slider-btn{
  width:42px; height:42px; border-radius:999px; border:1px solid var(--line-strong); background:var(--bg-card);
  color:var(--ink); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:.15s;
}
.slider-btn:hover{border-color:var(--accent); color:var(--accent);}
.slider-btn:disabled{opacity:.35; cursor:default; pointer-events:none;}
.slider-btn svg{width:18px; height:18px;}

.case-card{display:flex; flex-direction:column; height:100%;}
.case-card .console-body{flex:1; display:flex; flex-direction:column;}
.case-num{font-family:var(--mono); font-size:11px; color:var(--amber); letter-spacing:.08em; text-transform:uppercase;}
.case-card h3{font-size:20px; margin:10px 0 14px; min-height:52px;}
.case-visual{
  border-radius:10px; margin-bottom:16px;
  background:radial-gradient(circle at 30% 20%, rgba(95,217,166,.16), transparent 60%), var(--bg-2);
  border:1px solid var(--line);
  display:flex; align-items:center; justify-content:center; color:var(--accent); opacity:.9;
  overflow:hidden; position:relative;
}
.case-visual img{width:100%; height:auto; display:block;}
.geo-tag{
  font-family:var(--mono); font-size:11px; color:var(--ink-dim); border:1px solid var(--line-strong);
  padding:4px 10px; border-radius:6px; display:inline-block; margin-bottom:14px; width:fit-content;
}
.case-metrics{display:flex; gap:18px; margin-top:auto; padding-top:14px; border-top:1px solid var(--line);}
.case-metrics div span{display:block;}
.case-metrics .mlabel{font-family:var(--mono); font-size:10px; color:var(--amber); text-transform:uppercase;}
.case-metrics .mval{font-family:var(--mono); font-size:15px; font-weight:600; color:var(--accent); margin-top:2px;}
.case-link{
  margin-top:16px; font-family:var(--body); font-size:13.5px; font-weight:600; color:var(--ink);
  display:flex; align-items:center; justify-content:center; gap:8px; width:100%;
  border:1px solid var(--line-strong); border-radius:999px; padding:12px 18px;
  transition:.18s;
}
.case-card:hover .case-link{color:#04140d; background:var(--accent); border-color:var(--accent);}
.case-link svg{width:14px;height:14px; transition:.15s;}
.case-card:hover .case-link svg{transform:translateX(3px);}

/* ---------- BIG STAT BAND ---------- */
.bigstat{padding:100px 0;}
.bigstat-card{
  background:var(--bg-card); border:1px solid var(--line-strong); border-radius:24px;
  padding:64px; position:relative; overflow:hidden;
}
@media(max-width:900px){.bigstat-card{padding:40px 28px;}}
.bigstat-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:60px; align-items:center;}
@media(max-width:900px){.bigstat-grid{grid-template-columns:1fr; gap:36px;} .bigstat{padding:56px 0;}}
.bigstat .num{font-family:var(--disp); font-size:clamp(64px,14vw,140px); font-weight:700; line-height:.85; color:var(--accent); letter-spacing:-.02em;}
.bigstat .num sup{font-size:.35em; vertical-align:20px;}
.bigstat-cap{font-family:var(--mono); font-size:13px; color:var(--ink-dim); text-transform:uppercase; letter-spacing:.08em; margin-top:14px; max-width:220px;}
.bigstat-text h2{font-size:clamp(24px,3vw,32px); margin-bottom:18px; line-height:1.25;}
.bigstat-text p{color:var(--ink-dim); font-size:16px; margin-bottom:0; max-width:480px;}
.bigstat-divider{height:1px; background:var(--line); margin:28px 0;}
.bigstat-question{display:block; font-family:var(--disp); color:var(--accent); font-size:16px; margin-bottom:6px;}
.bigstat-link{display:inline-flex; align-items:center; gap:8px; font-family:var(--disp); font-weight:600; font-size:18px; color:var(--ink); margin-bottom:28px;}
.bigstat-link svg{width:18px; height:18px; transition:.15s;}
.bigstat-link:hover svg{transform:translateX(3px);}
.bigstat-btn{display:inline-flex; align-items:center; gap:10px;}
.bigstat-btn svg{width:16px; height:16px;}

/* ---------- PRICING ---------- */
.price-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
@media(max-width:900px){.price-grid{grid-template-columns:1fr;}}
.price-card .console-body{padding:28px;}
.price-card.featured{border-color:var(--accent);}
.price-tag{font-family:var(--mono); font-size:11px; color:var(--amber); text-transform:uppercase; letter-spacing:.08em; margin-bottom:14px; display:block;}
.price-amt{font-family:var(--disp); font-size:42px; font-weight:700; margin-bottom:6px;}
.price-amt span{font-size:16px; color:var(--ink-faint); font-weight:500;}
.price-name{font-size:15px; color:var(--ink-dim); margin-bottom:22px;}
.price-list{list-style:none; margin-bottom:26px;}
.price-list li{
  font-size:13.5px; color:var(--ink-dim); padding:9px 0; border-top:1px solid var(--line);
  display:flex; gap:10px; align-items:flex-start;
}
.price-list li:first-child{border-top:none;}
.price-list li svg{width:14px;height:14px; flex-shrink:0; color:var(--accent); margin-top:2px;}
.price-card .btn{width:100%; justify-content:center;}

/* ---------- FAQ ---------- */
.faq-list{max-width:820px;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-q{
  padding:22px 4px; display:flex; justify-content:space-between; align-items:center; cursor:pointer;
  font-size:16px; font-weight:500;
}
.faq-q .plus{width:20px; height:20px; position:relative; flex-shrink:0;}
.faq-q .plus::before, .faq-q .plus::after{content:''; position:absolute; background:var(--accent); border-radius:2px;}
.faq-q .plus::before{width:14px;height:2px; top:9px; left:3px;}
.faq-q .plus::after{width:2px;height:14px; left:9px; top:3px; transition:.2s;}
.faq-item.open .plus::after{opacity:0;}
.faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
.faq-a p{padding:0 4px 22px; color:var(--ink-dim); font-size:14.5px; max-width:640px;}
.faq-item.open .faq-a{max-height:200px;}

/* ---------- CTA BAND ---------- */
.cta-band{
  background:linear-gradient(120deg, var(--accent-soft), transparent 60%), var(--bg-card);
  border:1px solid var(--line-strong); border-radius:20px; padding:56px; text-align:center; position:relative; overflow:hidden;
}
.cta-band h2{font-size:clamp(24px,3.6vw,38px); margin-bottom:14px;}
.cta-band p{color:var(--ink-dim); margin-bottom:26px;}
@media(max-width:640px){.cta-band{padding:36px 24px; border-radius:16px;}}

/* ---------- FORM ---------- */
.form-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:60px;}
@media(max-width:900px){.form-grid{grid-template-columns:1fr;}}
.form-side h2{font-size:clamp(30px,3.6vw,42px); margin-bottom:16px;}
.form-side p{color:var(--ink-dim); margin-bottom:26px; max-width:400px;}
.form-side .contact-line{display:flex; align-items:center; gap:10px; font-family:var(--mono); font-size:14px; color:var(--ink-dim); margin-bottom:12px;}
.field{margin-bottom:18px;}
.field label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:.06em; color:var(--accent); display:block; margin-bottom:8px;}
.field input, .field select{
  width:100%; background:var(--bg-2); border:1px solid var(--line-strong); border-radius:9px; padding:13px 14px;
  color:var(--ink); font-family:var(--body); font-size:14px;
}
.field input:focus{outline:none; border-color:var(--accent);}
.row2{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
@media(max-width:520px){.row2{grid-template-columns:1fr;}}
.radio-group{display:flex; gap:10px; flex-wrap:wrap;}
.radio-chip{
  font-family:var(--mono); font-size:12.5px; padding:10px 14px; border:1px solid var(--line-strong); border-radius:8px;
  color:var(--ink-dim); cursor:pointer;
}
.radio-chip input{display:none;}
.radio-chip.picked{border-color:var(--accent); color:var(--accent); background:var(--accent-soft);}

/* ---------- FOOTER ---------- */
footer{border-top:1px solid var(--line); padding:64px 0 28px; background:var(--bg-1);}
.foot-top{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; margin-bottom:56px;}
@media(max-width:820px){.foot-top{grid-template-columns:1fr 1fr; row-gap:36px;}}
.foot-col h4{font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:.08em; color:var(--ink-faint); margin-bottom:16px;}
.foot-col a, .foot-col span{display:block; font-size:14px; color:var(--ink-dim); margin-bottom:10px;}
.foot-col a:hover{color:var(--accent);}
.foot-brand p{color:var(--ink-dim); font-size:14px; max-width:280px; margin:14px 0 20px;}
.social-row{display:flex; gap:10px;}
.social-row a{
  width:36px;height:36px; border:1px solid var(--line-strong); border-radius:9px; display:flex; align-items:center; justify-content:center;
  color:var(--ink-dim);
}
.social-row a:hover{border-color:var(--accent); color:var(--accent);}
.foot-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:26px; border-top:1px solid var(--line); flex-wrap:wrap; gap:12px;}
.foot-bottom span, .foot-bottom a{font-family:var(--mono); font-size:11.5px; color:var(--ink-faint);}

/* sticky mini CTA */
.sticky-cta{
  position:fixed; bottom:22px; right:22px; z-index:60;
  display:flex; align-items:center; gap:10px;
  background:var(--accent); color:#04140d; padding:14px 20px; border-radius:999px;
  font-weight:600; font-size:14px; box-shadow:0 10px 30px rgba(95,217,166,.25);
}
@media(max-width:640px){.sticky-cta{left:20px; right:20px; justify-content:center;}}

/* ===== case-page specific styles ===== */
:root{
  --bg:#14181a; --bg-1:#191e20; --bg-2:#1f2426; --bg-card:#23292b;
  --line:rgba(243,246,244,.10); --line-strong:rgba(243,246,244,.18);
  --ink:#eef1ef; --ink-dim:#98a29d; --ink-faint:#68716d;
  --accent:#5fd9a6; --accent-dim:#3f9c77; --accent-soft:rgba(95,217,166,.12);
  --amber:#e7ab63; --amber-soft:rgba(231,171,99,.12);
  --radius:14px;
  --disp:'Sora',sans-serif; --body:'Sora',sans-serif; --mono:'Sora',sans-serif;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--bg); color:var(--ink); font-family:var(--body); line-height:1.5; -webkit-font-smoothing:antialiased; overflow-x:hidden;}
a{color:inherit; text-decoration:none;}
img,svg{display:block; max-width:100%;}
.wrap{max-width:1240px; margin:0 auto; padding:0 32px;}
@media(max-width:720px){.wrap{padding:0 20px;}}
.eyebrow{font-family:var(--mono); font-size:12.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--accent); display:inline-flex; align-items:center; gap:8px;}
.eyebrow::before{content:'';width:6px;height:6px;background:var(--accent);border-radius:1px; display:inline-block; box-shadow:0 0 8px var(--accent);}
h1,h2,h3{font-family:var(--disp); font-weight:600; letter-spacing:-.01em; line-height:1.05;}

/* nav (shared) */
header.site{position:sticky; top:0; z-index:50; background:rgba(10,12,13,.86); backdrop-filter:blur(14px); border-bottom:1px solid var(--line);}
.navrow{display:flex; align-items:center; justify-content:space-between; height:84px;}
.logo{display:flex; align-items:center; gap:12px; font-family:var(--disp); font-weight:700; font-size:20px;}
.logo .mark{width:38px; height:38px; border-radius:9px; background:linear-gradient(155deg,var(--accent-soft),transparent); border:1px solid var(--line-strong); display:flex; align-items:center; justify-content:center; overflow:hidden; padding:0;}
.logo .mark img{width:100%; height:100%; object-fit:cover; display:block;}
.logo small{display:block; font-family:var(--mono); font-weight:400; font-size:9.5px; letter-spacing:.16em; color:var(--ink-faint); text-transform:uppercase;}
nav.links{display:flex; gap:34px;}
nav.links a{font-size:14px; color:var(--ink-dim); font-weight:500; padding:6px 0; border-bottom:1px solid transparent; transition:.15s;}
nav.links a:hover, nav.links a.active{color:var(--ink); border-color:var(--accent);}
.nav-cta{display:flex; align-items:center; gap:18px;}
.navtel{font-family:var(--mono); font-size:13px; color:var(--ink-dim);}
.burger{display:none; flex-direction:column; justify-content:center; gap:5px; width:36px; height:36px; background:none; border:1px solid var(--line-strong); border-radius:8px; cursor:pointer; padding:0;}
.burger span{display:block; width:16px; height:2px; background:var(--ink); margin:0 auto; transition:.2s; border-radius:2px;}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.burger.open span:nth-child(2){opacity:0;}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-menu{display:none; flex-direction:column; background:var(--bg);}
.mobile-menu.open{display:flex;}
@media(max-width:980px){
  nav.links{display:none;} .navtel{display:none;} .burger{display:flex;}
}
@media(min-width:981px){.mobile-menu{display:none !important;}}
@media(max-width:560px){.nav-cta .btn-primary{display:none;} .navrow{height:68px;}}

@media(max-width:980px){
  .mobile-menu{
    position:fixed; inset:0; z-index:100;
    background:var(--bg); display:none;
    flex-direction:column; padding:0;
    justify-content:flex-start; gap:0;
    overflow-y:auto;
  }
  .mobile-menu.open{display:flex;}
  .mm-top{
    display:flex; align-items:center; justify-content:space-between;
    padding:0 24px; height:76px; flex-shrink:0;
    border-bottom:1px solid var(--line);
  }
  .mm-close{
    width:40px; height:40px;
    background:none; border:1px solid var(--line-strong); border-radius:9px; color:var(--ink); cursor:pointer;
    display:flex; align-items:center; justify-content:center; padding:0; transition:.15s;
  }
  .mm-close:hover{border-color:var(--accent); color:var(--accent);}
  .mm-close svg{width:18px; height:18px;}
  .mm-links{display:flex; flex-direction:column; padding:8px 24px 0;}
  .mobile-menu .mm-links a{
    display:flex; align-items:baseline; gap:14px;
    padding:18px 0; font-family:var(--disp); font-weight:600; font-size:26px;
    color:var(--ink); border-bottom:1px solid var(--line); transition:.15s;
  }
  .mobile-menu .mm-links a .mm-idx{
    font-family:var(--mono); font-size:12px; font-weight:400; color:var(--ink-faint); letter-spacing:.05em;
  }
  .mobile-menu .mm-links a.active, .mobile-menu .mm-links a:hover{color:var(--accent);}
  .mobile-menu .mm-links a.active .mm-idx, .mobile-menu .mm-links a:hover .mm-idx{color:var(--accent);}
  .mobile-menu .mm-cta{
    margin:28px 24px 32px; padding:18px 24px; font-size:16px; justify-content:space-between;
    background:var(--accent) !important; color:#04140d !important;
  }
  .mobile-menu .mm-cta svg{color:#04140d;}
  body.menu-open{overflow:hidden;}
}
.btn{font-family:var(--body); font-weight:600; font-size:14px; padding:13px 22px; border-radius:999px; display:inline-flex; align-items:center; gap:8px; cursor:pointer; border:1px solid transparent; transition:.18s;}
.btn-primary{background:var(--accent); color:#04140d;}
.btn-primary:hover{background:#5dffc4; transform:translateY(-1px);}
.btn-ghost{border-color:var(--line-strong); color:var(--ink);}
.btn-ghost:hover{border-color:var(--accent); color:var(--accent);}
.btn svg{width:15px;height:15px;}

/* console signature */
.console{background:var(--bg-card); border:1px solid var(--line-strong); border-radius:var(--radius); position:relative; overflow:hidden;}
.console-bar{display:flex; align-items:center; justify-content:space-between; padding:12px 16px; border-bottom:1px solid var(--line); font-family:var(--mono); font-size:11.5px; color:var(--ink-faint); letter-spacing:.06em;}
.console-dots{display:flex; gap:6px;}
.console-dots span{width:7px;height:7px;border-radius:50%; background:var(--line-strong);}
.console-body{padding:22px;}
.corner{position:absolute; width:14px; height:14px; border:1.5px solid var(--accent); opacity:.55;}
.corner.tl{top:-1px; left:-1px; border-right:none; border-bottom:none;}
.corner.br{bottom:-1px; right:-1px; border-left:none; border-top:none;}

/* breadcrumb */
.crumb{padding:26px 0 0; font-family:var(--mono); font-size:12.5px; color:var(--ink-faint); display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
.crumb a{color:var(--ink-dim);}
.crumb a:hover{color:var(--accent);}
.crumb .sep{color:var(--line-strong);}
.crumb .curr{color:var(--accent);}

/* case header */
.case-hero{padding:36px 0 70px;}
.case-hero-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:56px; margin-top:26px; align-items:start;}
@media(max-width:980px){.case-hero-grid{grid-template-columns:1fr; gap:32px;} .case-hero{padding:24px 0 48px;}}
.case-hero h1{font-size:clamp(28px,4.4vw,54px); margin-bottom:26px;}
.case-meta-row{display:flex; gap:10px 14px; flex-wrap:wrap; margin-bottom:30px;}
@media(max-width:480px){.tagpill{font-size:10.5px; padding:6px 11px;}}
.tagpill{font-family:var(--mono); font-size:11.5px; color:var(--ink-dim); border:1px solid var(--line-strong); padding:7px 13px; border-radius:999px; display:inline-flex; align-items:center; gap:7px;}
.tagpill.accentpill{color:var(--accent); border-color:rgba(95,217,166,.3); background:var(--accent-soft);}

.headline-stat{display:flex; gap:28px 36px; margin-bottom:8px; flex-wrap:wrap;}
.headline-stat div .n{font-family:var(--disp); font-size:clamp(30px,5vw,44px); font-weight:700; color:var(--accent);}
.headline-stat div .l{font-family:var(--mono); font-size:11px; color:var(--amber); text-transform:uppercase; letter-spacing:.06em; margin-top:2px;}

.log-lines .line{display:flex; gap:14px; padding:16px 0; border-top:1px solid var(--line);}
.log-lines .line:first-child{border-top:none;}
.log-lines .tag{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:.06em; width:100px; flex-shrink:0; padding-top:2px;}
@media(max-width:520px){
  .log-lines .line{flex-direction:column; gap:6px;}
  .log-lines .tag{width:auto;}
}
.log-lines .tag.problem{color:var(--amber);}
.log-lines .tag.solution{color:var(--ink-dim);}
.log-lines .tag.result{color:var(--accent);}
.log-lines p{font-size:14.5px; color:var(--ink-dim); line-height:1.6;}
.log-lines p b{color:var(--ink); font-weight:600;}

.case-visual-hero{display:flex; flex-direction:column; position:relative;}
.case-visual-hero img{width:100%; height:auto; display:block;}
.visual-tags{padding:14px 18px; display:flex; justify-content:space-between; font-family:var(--mono); font-size:11px; color:var(--ink-dim); border-top:1px solid var(--line);}

/* results section */
.view-case .section{padding:70px 0;}
.section.alt{background:var(--bg-1);}
@media(max-width:720px){.view-case .section{padding:48px 0;}}
.results-console .console-bar{padding:16px 20px;}
.results-tabs{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:26px;}
.rtab{font-family:var(--mono); font-size:11.5px; padding:9px 15px; border:1px solid var(--line-strong); border-radius:999px; color:var(--ink-dim); white-space:nowrap;}
@media(max-width:480px){.rtab{font-size:10.5px; padding:8px 12px;}}
.rtab.on{border-color:var(--accent); color:var(--accent); background:var(--accent-soft);}

.chart-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-bottom:26px;}
@media(max-width:900px){.chart-grid{grid-template-columns:1fr;}}
.chart-card{background:var(--bg-2); border:1px solid var(--line); border-radius:10px; padding:18px;}
.chart-card .ch-head{display:flex; justify-content:space-between; font-family:var(--mono); font-size:10.5px; color:var(--ink-faint); text-transform:uppercase; margin-bottom:14px;}
.chart-card svg{width:100%; height:76px;}
.chart-card .before-after{display:flex; justify-content:space-between; margin-top:14px; font-family:var(--mono); font-size:12px;}
.chart-card .before-after .b{color:var(--amber);}
.chart-card .before-after .a{color:var(--accent);}
.chart-card .arrow-note{text-align:center; font-family:var(--mono); font-size:10px; color:var(--ink-faint); margin-top:4px;}

.result-pills{display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
@media(max-width:900px){.result-pills{grid-template-columns:1fr;}}
.rpill{background:var(--accent-soft); border:1px solid rgba(95,217,166,.3); border-radius:12px; padding:18px 20px; text-align:center;}
.rpill .k{font-family:var(--mono); font-size:11px; color:var(--ink-dim); text-transform:uppercase; letter-spacing:.06em;}
.rpill .v{font-family:var(--disp); font-size:22px; font-weight:700; color:var(--accent); margin-top:4px;}

/* insight */
.insight{display:grid; grid-template-columns:auto 1fr; gap:16px 22px; align-items:flex-start; max-width:760px; margin-top:52px;}
.insight .quote-mark{font-family:var(--disp); font-size:clamp(38px,7vw,56px); color:var(--accent); line-height:.6;}
.insight p{font-size:clamp(15px,2.4vw,17px); color:var(--ink); line-height:1.6; font-family:var(--disp); font-weight:500;}
@media(max-width:640px){.insight{margin-top:36px;}}
.insight span{display:block; margin-top:14px; font-family:var(--mono); font-size:12px; color:var(--ink-faint);}

/* cta band */
.cta-band{background:linear-gradient(120deg, var(--accent-soft), transparent 60%), var(--bg-card); border:1px solid var(--line-strong); border-radius:20px; padding:56px; text-align:center;}
.cta-band h2{font-size:clamp(22px,3.6vw,38px); margin-bottom:14px;}
.cta-band p{color:var(--ink-dim); margin-bottom:26px;}
@media(max-width:640px){.cta-band{padding:32px 22px; border-radius:16px;}}

/* prev/next */
.pn-row{display:flex; justify-content:space-between; gap:16px; padding:60px 0 10px; flex-wrap:wrap;}
@media(max-width:640px){.pn-row{padding:40px 0 6px;}}
.pn-card{flex:1; min-width:240px; border:1px solid var(--line-strong); border-radius:12px; padding:16px; display:flex; align-items:center; gap:16px;}
.pn-card .pn-thumb{width:64px; height:64px; border-radius:8px; overflow:hidden; flex-shrink:0; background:var(--bg-2);}
.pn-card .pn-thumb img{width:100%; height:100%; object-fit:cover; display:block;}
.pn-card .pn-thumb.pn-icon{display:flex; align-items:center; justify-content:center; border:1px solid var(--line-strong); background:var(--accent-soft);}
.pn-card .pn-thumb.pn-icon svg{width:26px; height:26px; color:var(--accent);}
.pn-card .pn-text{display:flex; flex-direction:column; gap:6px;}
.pn-card .dir{font-family:var(--mono); font-size:10.5px; color:var(--amber); text-transform:uppercase; display:flex; align-items:center; gap:6px;}
.pn-card.next{flex-direction:row-reverse; text-align:right;}
.pn-card.next .pn-text{align-items:flex-end;}
.pn-card h4{font-family:var(--disp); font-size:16px;}
.pn-card:hover{border-color:var(--accent);}
@media(max-width:640px){
  .pn-row{flex-direction:column;}
  .pn-card.next{flex-direction:row; text-align:left;}
  .pn-card.next .pn-text{align-items:flex-start;}
  .pn-card.next .dir{flex-direction:row;}
}

/* form */
.form-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:60px;}
@media(max-width:900px){.form-grid{grid-template-columns:1fr;}}
.form-side h2{font-size:clamp(30px,3.6vw,42px); margin-bottom:16px;}
.form-side p{color:var(--ink-dim); margin-bottom:26px; max-width:400px;}
.field{margin-bottom:18px;}
.field label{font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:.06em; color:var(--accent); display:block; margin-bottom:8px;}
.field input{width:100%; background:var(--bg-2); border:1px solid var(--line-strong); border-radius:9px; padding:13px 14px; color:var(--ink); font-family:var(--body); font-size:14px;}
.field input:focus{outline:none; border-color:var(--accent);}
.row2{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
@media(max-width:520px){.row2{grid-template-columns:1fr;}}
.radio-group{display:flex; gap:10px; flex-wrap:wrap;}
.radio-chip{font-family:var(--mono); font-size:12.5px; padding:10px 14px; border:1px solid var(--line-strong); border-radius:8px; color:var(--ink-dim); cursor:pointer;}
.radio-chip input{display:none;}
.radio-chip.picked{border-color:var(--accent); color:var(--accent); background:var(--accent-soft);}

/* footer */
footer{border-top:1px solid var(--line); padding:64px 0 28px; background:var(--bg-1);}
.foot-top{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; margin-bottom:56px;}
@media(max-width:820px){.foot-top{grid-template-columns:1fr 1fr; row-gap:36px;}}
.foot-col h4{font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:.08em; color:var(--ink-faint); margin-bottom:16px;}
.foot-col a, .foot-col span{display:block; font-size:14px; color:var(--ink-dim); margin-bottom:10px;}
.foot-col a:hover{color:var(--accent);}
.foot-brand p{color:var(--ink-dim); font-size:14px; max-width:280px; margin:14px 0 20px;}
.social-row{display:flex; gap:10px;}
.social-row a{width:36px;height:36px; border:1px solid var(--line-strong); border-radius:9px; display:flex; align-items:center; justify-content:center; color:var(--ink-dim);}
.social-row a:hover{border-color:var(--accent); color:var(--accent);}
.foot-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:26px; border-top:1px solid var(--line); flex-wrap:wrap; gap:12px;}
.foot-bottom span, .foot-bottom a{font-family:var(--mono); font-size:11.5px; color:var(--ink-faint);}
.view[hidden]{display:none;}

/* sticky mini CTA — з'являється при скролі вниз, ховається вгорі та біля форми */
.sticky-cta{
  opacity:0; visibility:hidden; pointer-events:none;
  transform:translateY(18px) scale(.96);
  transition:opacity .28s ease, transform .28s cubic-bezier(.2,.8,.3,1), visibility .28s;
}
.sticky-cta.is-visible{
  opacity:1; visibility:visible; pointer-events:auto;
  transform:none;
}
@media(prefers-reduced-motion:reduce){
  .sticky-cta{transition:opacity .01s linear, visibility .01s; transform:none;}
  .sticky-cta.is-visible{transform:none;}
}

/* Атрибути width/height на <img> стоять для захисту від скачків верстки (CLS).
   Це правило гарантує, що вони не задають реальну висоту й не розтягують картинку. */
.console img, .case-visual img, .case-visual-hero img, .hero-visual img{height:auto;}

.lang-switch{display:flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.02);}
.lang-switch a{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-faint);padding:5px 9px;border-radius:999px;line-height:1;transition:.2s;}
.lang-switch a:hover{color:var(--ink);background:rgba(255,255,255,.05);}
.lang-switch a.active{color:#04140d;background:var(--accent);font-weight:600;}
.mobile-menu .lang-switch{margin:0 0 16px;align-self:flex-start;}
@media(max-width:980px){header.site .lang-switch{display:none;}}
