:root{
  --bg:#0a0a0b;
  --bg-rgb:10,10,11;
  --bg-elev:#131316;
  --bg-elev-2:#1a1a1e;
  --red:#ff2e43;
  --red-dim:#7a1520;
  --red-glow:rgba(255,46,67,.55);
  --ink:#f2f1ee;
  --ink-dim:#8d8d92;
  --line:#232327;
  --hex-opacity:.16;
  --grain-opacity:.035;
  --mark-glow-max:40px;
}
:root[data-theme="light"]{
  --bg:#fbfaf9;
  --bg-rgb:251,250,249;
  --bg-elev:#f1f0ee;
  --bg-elev-2:#e8e7e4;
  --red:#e0192d;
  --red-dim:#f2c3c8;
  --red-glow:rgba(224,25,45,.28);
  --ink:#151414;
  --ink-dim:#6b6a6d;
  --line:#e3e1de;
  --hex-opacity:.11;
  --grain-opacity:.02;
  --mark-glow-max:22px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:'Manrope',sans-serif;
  overflow-x:hidden;
  transition:background .3s ease, color .3s ease;
}
body.menu-open{overflow:hidden;}
.display{font-family:'Space Grotesk',sans-serif;overflow-wrap:break-word;word-break:break-word;}
.mono{font-family:'JetBrains Mono',monospace;}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px;}
.grain{
  position:fixed;inset:0;z-index:2;pointer-events:none;
  opacity:var(--grain-opacity);mix-blend-mode:overlay;
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="140" height="140"><filter id="n"><feTurbulence type="fractalNoise" baseFrequency="0.9" numOctaves="2" stitchTiles="stitch"/></filter><rect width="100%25" height="100%25" filter="url(%23n)"/></svg>');
}
.hexfield{
  position:fixed;inset:0;z-index:0;opacity:var(--hex-opacity);
  background-image:url('../img/hex-tile.png');
  background-size:340px 354px;
  animation:drift 90s linear infinite;
}
@keyframes drift{from{background-position:0 0;}to{background-position:-3400px 3540px;}}
@media(prefers-reduced-motion:reduce){.hexfield{animation:none;}}
nav{
  position:sticky;top:0;z-index:50;
  background-image:linear-gradient(rgba(var(--bg-rgb),.86), rgba(var(--bg-rgb),.86)), url('../img/hex-tile.png');
  background-size:auto, 340px 354px;
  background-repeat:repeat, repeat;
  background-attachment:fixed, fixed;
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--line);
  transition:background-color .3s ease, border-color .3s ease;
  animation:nav-drift 90s linear infinite;
}
@keyframes nav-drift{from{background-position:0 0, 0 0;}to{background-position:0 0, -3400px 3540px;}}
@media(prefers-reduced-motion:reduce){nav{animation:none;}}
nav .inner{display:flex;align-items:center;justify-content:space-between;padding:16px 0;}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);perspective:300px;}
.brand img{width:38px;height:38px;border-radius:50%;transform-style:preserve-3d;animation:tumble 16s ease-in-out infinite;}
.brand span{font-weight:700;letter-spacing:.06em;font-size:15px;}
.nav-links{list-style:none;display:flex;gap:26px;align-items:center;}
nav a{color:var(--ink-dim);text-decoration:none;font-size:14px;font-weight:500;transition:color .2s;}
nav a:hover{color:var(--ink);}
.nav-actions{display:flex;align-items:center;gap:16px;}
.lang-switch{display:flex;gap:2px;background:var(--bg-elev);border:1px solid var(--line);border-radius:7px;padding:2px;}
.lang-btn{background:none;border:none;cursor:pointer;font-family:'JetBrains Mono';font-size:11px;letter-spacing:.04em;color:var(--ink-dim);padding:6px 10px;border-radius:5px;transition:background .2s, color .2s;}
.lang-btn.is-active{background:var(--red);color:#0a0a0b;font-weight:700;}
.lang-btn:not(.is-active):hover{color:var(--ink);}
.burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;background:none;border:none;cursor:pointer;padding:0;}
.burger span{display:block;width:100%;height:2px;background:var(--ink);transition:transform .25s ease, opacity .25s ease;}
.burger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.burger.is-open span:nth-child(2){opacity:0;}
.burger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-menu{
  display:none;position:fixed;top:0;left:0;right:0;bottom:0;height:100vh;height:100dvh;z-index:60;
  background:var(--bg);flex-direction:column;align-items:flex-start;justify-content:flex-start;
  overflow-y:auto;padding-top:min(22vh,140px);opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .3s ease, visibility .3s;
}
.mobile-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;}
.mm-scan{position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg, transparent, var(--red), transparent);opacity:0;}
.mobile-menu.is-open .mm-scan{opacity:.7;animation:mm-scan-move 2.6s linear infinite;}
@keyframes mm-scan-move{0%{top:8%;}50%{top:92%;}100%{top:8%;}}
.mobile-menu-inner{width:100%;max-width:420px;padding:0 32px;position:relative;z-index:1;}
.mm-eyebrow{color:var(--red);font-size:12px;letter-spacing:.22em;margin-bottom:32px;}
.mm-link{
  display:flex;align-items:baseline;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);
  color:var(--ink);text-decoration:none;font-family:'Space Grotesk',sans-serif;font-size:26px;font-weight:600;
  opacity:0;transform:translateX(-18px);transition:opacity .4s ease, transform .4s ease, color .2s, border-color .2s;
}
.mm-num{color:var(--red-dim);font-size:13px;}
.mm-link:hover{color:var(--red);border-color:var(--red-dim);}
.mobile-menu.is-open .mm-link{opacity:1;transform:translateX(0);}
.mobile-menu.is-open .mm-link:nth-child(1){transition-delay:.05s;}
.mobile-menu.is-open .mm-link:nth-child(2){transition-delay:.1s;}
.mobile-menu.is-open .mm-link:nth-child(3){transition-delay:.15s;}
.mobile-menu.is-open .mm-link:nth-child(4){transition-delay:.2s;}
.mobile-menu.is-open .mm-link:nth-child(5){transition-delay:.25s;}
.mm-cta{margin-top:36px;width:100%;justify-content:center;opacity:0;transform:translateY(10px);transition:opacity .4s ease .3s, transform .4s ease .3s, box-shadow .2s, transform .15s;}
.mobile-menu.is-open .mm-cta{opacity:1;transform:translateY(0);}
@media(prefers-reduced-motion:reduce){.mm-scan{display:none;}.mm-link, .mm-cta{opacity:1;transform:none;transition:none;}}
.theme-toggle{--w:52px;--h:28px;position:relative;width:var(--w);height:var(--h);border-radius:999px;border:1px solid var(--line);background:var(--bg-elev);cursor:pointer;flex-shrink:0;padding:0;}
.theme-toggle .knob{position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;transition:transform .25s ease;transform:translateX(0);}
:root[data-theme="light"] .theme-toggle .knob{transform:translateX(24px);}
.theme-toggle .knob svg{width:13px;height:13px;stroke:#0a0a0b;fill:none;stroke-width:2;}
.theme-toggle .knob .icon-moon{display:none;}
:root[data-theme="light"] .theme-toggle .knob .icon-sun{display:none;}
:root[data-theme="light"] .theme-toggle .knob .icon-moon{display:block;}
.theme-toggle:focus-visible{outline:2px solid var(--red);outline-offset:2px;}
.btn{
  display:inline-flex;align-items:center;gap:8px;background:var(--red);color:#0a0a0b;font-weight:700;
  padding:11px 22px;border-radius:6px;font-size:14px;text-decoration:none;border:none;cursor:pointer;
  transition:transform .15s, box-shadow .2s;
}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--red-glow);}
.btn:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible{outline:2px solid var(--red);outline-offset:2px;}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line);}
.btn-ghost:hover{border-color:var(--red);box-shadow:none;}
section{position:relative;z-index:1;}
.hero{min-height:92vh;display:flex;align-items:center;padding:80px 0 60px;}
.hero-grid{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center;}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.18em;color:var(--red);margin-bottom:22px;}
.eyebrow::before{content:'';width:22px;height:1px;background:var(--red);}
.hero h1{font-size:clamp(40px,6vw,76px);line-height:1.02;font-weight:700;letter-spacing:-.01em;max-width:780px;}
.hero h1 .accent{color:var(--red);}
.hero p{margin-top:26px;color:var(--ink-dim);font-size:17px;line-height:1.6;max-width:520px;}
.hero-cta{margin-top:38px;display:flex;gap:16px;flex-wrap:wrap;}
.mark{position:relative;width:260px;height:260px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;will-change:transform;perspective:900px;}
.mark-inner{width:100%;height:100%;border-radius:50%;transform-style:preserve-3d;will-change:transform;animation:tumble 16s ease-in-out infinite;}
@keyframes tumble{
  0%{transform:rotateX(0deg) rotateY(0deg);}
  18%{transform:rotateX(18deg) rotateY(130deg);}
  36%{transform:rotateX(-14deg) rotateY(210deg);}
  54%{transform:rotateX(12deg) rotateY(270deg);}
  72%{transform:rotateX(-20deg) rotateY(330deg);}
  90%{transform:rotateX(8deg) rotateY(355deg);}
  100%{transform:rotateX(0deg) rotateY(360deg);}
}
@media(prefers-reduced-motion:reduce){.mark-inner{animation:none;}}
.mark-inner img{width:100%;height:100%;border-radius:50%;object-fit:cover;pointer-events:none;display:block;}
.mark::after{content:'';position:absolute;inset:-14px;border-radius:50%;border:1px solid var(--red-dim);animation:pulse 3.5s ease-in-out infinite;}
@keyframes pulse{0%,100%{box-shadow:0 0 0px var(--red-glow);opacity:.5;}50%{box-shadow:0 0 var(--mark-glow-max) 6px var(--red-glow);opacity:1;}}
@media(prefers-reduced-motion:reduce){.mark::after{animation:none;box-shadow:0 0 20px 2px var(--red-glow);}}
.divider{height:1px;background:var(--line);}
.about{padding:110px 0;}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;}
.about h2{font-size:clamp(28px,3.4vw,40px);font-weight:600;line-height:1.15;}
.about p{color:var(--ink-dim);margin-top:20px;line-height:1.7;font-size:16px;}
.laptop-stats{display:flex;align-items:center;justify-content:center;}
.laptop-photo{position:relative;width:100%;max-width:520px;aspect-ratio:1600/1288;}
.laptop-photo-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;}
.laptop-photo-screen{
  position:absolute;
  left:20%;top:10.5%;width:60%;height:45.3%;
  background:var(--bg);
  overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:5% 6%;
  perspective:600px;
}
.laptop-photo-screen::before{
  content:'';
  position:absolute;inset:0;
  background-image:url('../img/hex-tile.png');
  background-size:70px 73px;
  opacity:var(--hex-opacity);
  z-index:0;
  animation:laptop-hex-drift 90s linear infinite;
}
@keyframes laptop-hex-drift{from{background-position:0 0;}to{background-position:-700px 730px;}}
@media(prefers-reduced-motion:reduce){.laptop-photo-screen::before{animation:none;}}
.device-logo{
  position:relative;z-index:1;
  width:26%;
  flex-shrink:0;
  margin-bottom:6%;
  transform-style:preserve-3d;
  animation:tumble 16s ease-in-out infinite;
}
@media(prefers-reduced-motion:reduce){.device-logo{animation:none;}}
.device-stat-wrap{position:relative;z-index:1;width:100%;flex:1;min-height:0;}
.device-stat{
  position:absolute;inset:0;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:0 8%;
  opacity:0;
  animation:phone-cycle 16s ease-in-out infinite;
}
.device-stat b{
  display:inline-block;
  font-family:'Space Grotesk';font-size:clamp(13px,2.6vw,22px);font-weight:700;color:var(--red);
  padding-bottom:6px;margin-bottom:6px;
  border-bottom:2px dashed var(--red-dim);
}
.device-stat span{color:var(--ink-dim);font-size:clamp(8px,1.2vw,10.5px);letter-spacing:.03em;}
@keyframes phone-cycle{
  0%{opacity:0;transform:translateY(6px);}
  4%{opacity:1;transform:translateY(0);}
  21%{opacity:1;transform:translateY(0);}
  25%{opacity:0;transform:translateY(-6px);}
  100%{opacity:0;}
}
@media(prefers-reduced-motion:reduce){
  .device-stat{animation:none;opacity:0;}
  .device-stat:first-child{opacity:1;}
}
.services{padding:110px 0;}
.section-head{max-width:600px;margin-bottom:56px;}
.section-head h2{font-size:clamp(28px,3.4vw,40px);font-weight:600;}
.section-head p{color:var(--ink-dim);margin-top:14px;font-size:16px;}
.svc-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  grid-template-rows:repeat(2,minmax(180px,1fr));
  grid-template-areas:
    "a a b b c c"
    "a a d d e e";
  gap:1px;background:var(--line);border:1px solid var(--line);
}
.svc-card:nth-child(1){grid-area:a;}
.svc-card:nth-child(2){grid-area:b;}
.svc-card:nth-child(3){grid-area:c;}
.svc-card:nth-child(4){grid-area:d;}
.svc-card:nth-child(5){grid-area:e;}
.svc-card{
  background:var(--bg);padding:38px;position:relative;overflow:hidden;isolation:isolate;
  display:block;text-decoration:none;color:inherit;transition:background .25s, transform .25s;
}
.svc-card::before{content:'';position:absolute;top:0;left:0;bottom:0;width:2px;background:var(--red);transform:scaleY(0);transform-origin:top;transition:transform .25s ease;z-index:2;}
.svc-card:hover{background:var(--bg-elev);transform:translateY(-3px);}
.svc-card:hover::before{transform:scaleY(1);}
/* cursor-tracked spotlight glow, position set via JS custom props --mx/--my */
.svc-card::after{
  content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(480px circle at var(--mx,50%) var(--my,50%), rgba(255,46,67,.16), transparent 45%);
  opacity:0;transition:opacity .35s ease;
}
.svc-card:hover::after{opacity:1;}
.svc-card > *{position:relative;z-index:1;}
.ghost-num{position:absolute;top:-6px;right:14px;font-family:'Space Grotesk';font-size:76px;font-weight:700;color:var(--line);line-height:1;user-select:none;pointer-events:none;transition:color .25s;z-index:1;}
.svc-card:hover .ghost-num{color:var(--bg-elev-2);}
.svc-arrow{position:absolute;bottom:30px;right:32px;color:var(--red);font-size:18px;opacity:0;transform:translateX(-6px);transition:opacity .2s, transform .2s;z-index:1;}
.svc-card:hover .svc-arrow{opacity:1;transform:translateX(0);}
.svc-icon{width:44px;height:44px;border-radius:10px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--red);margin-bottom:20px;transition:border-color .2s, box-shadow .2s;}
.svc-icon svg{width:22px;height:22px;}
.svc-card:hover .svc-icon{border-color:var(--red-dim);box-shadow:0 0 22px var(--red-glow);}
.svc-card .num{font-family:'JetBrains Mono';color:var(--red-dim);font-size:13px;}
.svc-card h3{font-family:'Space Grotesk';font-size:22px;margin-top:16px;font-weight:600;}
.svc-card p{color:var(--ink-dim);margin-top:12px;font-size:14.5px;line-height:1.6;}
.svc-card .tags{margin-top:18px;display:flex;gap:8px;flex-wrap:wrap;}
.svc-card .tags span{font-family:'JetBrains Mono';font-size:11px;color:var(--ink-dim);border:1px solid var(--line);padding:4px 9px;border-radius:4px;}
.svc-card .tags .tag-hit{background:var(--red);color:#0a0a0b;border-color:var(--red);font-weight:700;}

/* the larger "flagship" card in the bento layout */
.svc-card.is-featured{display:flex;flex-direction:column;justify-content:center;padding:48px;}
.svc-card.is-featured .ghost-num{font-size:120px;top:-10px;}
.svc-card.is-featured .svc-icon{width:56px;height:56px;}
.svc-card.is-featured .svc-icon svg{width:26px;height:26px;}
.svc-card.is-featured h3{font-size:29px;margin-top:22px;}
.svc-card.is-featured p{font-size:15.5px;max-width:420px;}
.calculator{padding:110px 0;}
.calc-box{border:1px solid var(--line);border-radius:14px;padding:48px;display:flex;flex-direction:column;gap:34px;}
.calc-label{color:var(--red);font-size:12px;letter-spacing:.14em;margin-bottom:14px;}
.calc-options{display:flex;flex-wrap:wrap;gap:10px;}
.calc-opt{background:var(--bg-elev);border:1px solid var(--line);color:var(--ink);padding:12px 18px;border-radius:8px;font-family:'Manrope';font-size:14px;cursor:pointer;transition:border-color .2s, background .2s, color .2s;}
.calc-opt:hover{border-color:var(--red-dim);}
.calc-opt.is-selected{background:var(--red);border-color:var(--red);color:#0a0a0b;font-weight:700;}
.calc-step.is-hidden{display:none;}
.calc-input{background:var(--bg-elev);border:1px solid var(--line);border-radius:8px;padding:12px 16px;color:var(--ink);font-family:'Manrope';font-size:14px;width:100%;max-width:260px;outline:none;transition:border-color .2s;}
.calc-input:focus{border-color:var(--red);}
.calc-result{border-top:1px solid var(--line);padding-top:28px;display:flex;flex-direction:column;align-items:flex-start;gap:14px;}
.calc-result-label{color:var(--ink-dim);font-size:11px;letter-spacing:.14em;}
.calc-result-value{font-family:'Space Grotesk';font-size:clamp(24px,3.2vw,34px);font-weight:600;color:var(--ink);}
.calc-cta{margin-top:4px;}
.calc-disclaimer{text-align:center;color:var(--ink-dim);font-size:12px;margin-top:20px;max-width:520px;margin-left:auto;margin-right:auto;}
@media(max-width:640px){.calc-box{padding:28px;}.compare{max-height:480px;}}
.page-hero{padding:70px 0 40px;}
.page-hero .eyebrow{margin-bottom:18px;}
.page-hero h1{font-size:clamp(34px,5vw,56px);font-weight:700;line-height:1.05;max-width:700px;overflow-wrap:break-word;word-break:break-word;}
.page-hero p{margin-top:20px;color:var(--ink-dim);font-size:16.5px;line-height:1.6;max-width:560px;}
.domino-group{perspective:1400px;}
.domino-item{transform-origin:center bottom;transform:rotateX(-82deg);opacity:0;transition:transform .8s cubic-bezier(.34,1.65,.64,1), opacity .35s ease;}
.domino-group.is-visible .domino-item{transform:rotateX(0deg);opacity:1;}
.domino-group.is-visible .domino-item:nth-child(1){transition-delay:0s;}
.domino-group.is-visible .domino-item:nth-child(2){transition-delay:.18s;}
.domino-group.is-visible .domino-item:nth-child(3){transition-delay:.36s;}
.domino-group.is-visible .domino-item:nth-child(4){transition-delay:.54s;}
.domino-group.is-visible .domino-item:nth-child(5){transition-delay:.72s;}
.domino-group.is-visible .domino-item:nth-child(6){transition-delay:.9s;}
@media(prefers-reduced-motion:reduce){.domino-item{opacity:1;transform:none;transition:none;}}

/* ===== SERVICES DETAIL PAGE (redesigned) ===== */
.svc-detail{padding:40px 0 100px;}

.svc-quicknav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:32px;
}
.svc-quicknav a{
  display:flex;
  align-items:center;
  gap:8px;
  background:var(--bg-elev);
  border:1px solid var(--line);
  color:var(--ink-dim);
  padding:10px 18px;
  border-radius:8px;
  text-decoration:none;
  font-family:'Manrope',sans-serif;
  font-size:13.5px;
  transition:border-color .2s ease, color .2s ease, background .2s ease;
}
.svc-quicknav a:hover{border-color:var(--red-dim);color:var(--ink);}
.svc-quicknav .qn-num{font-family:'JetBrains Mono',monospace;color:var(--red-dim);font-size:11px;}

.svc-detail-item{
  position:relative;
  display:grid;
  grid-template-columns:220px 1fr;
  gap:44px;
  padding:52px 40px;
  background:var(--bg);
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
  scroll-margin-top:90px;
  transition:border-color .25s ease, transform .25s ease;
}
.svc-detail-item + .svc-detail-item{margin-top:20px;}
.svc-detail-item::before{
  content:'';
  position:absolute;top:0;left:0;bottom:0;width:3px;
  background:var(--red);
  transform:scaleY(0);
  transform-origin:top;
  transition:transform .3s ease;
}
.svc-detail-item:hover{border-color:var(--red-dim);transform:translateY(-3px);}
.svc-detail-item:hover::before{transform:scaleY(1);}

.svc-detail-ghost{
  position:absolute;
  top:-26px;right:10px;
  font-family:'Space Grotesk',sans-serif;
  font-weight:700;
  font-size:150px;
  line-height:1;
  color:var(--bg-elev);
  user-select:none;
  pointer-events:none;
  z-index:0;
  transition:color .25s ease;
}
.svc-detail-item:hover .svc-detail-ghost{color:var(--bg-elev-2);}
.svc-detail-item > div{position:relative;z-index:1;}

.svc-detail-num{font-family:'JetBrains Mono';color:var(--red-dim);font-size:14px;}
.svc-detail-item h3{font-family:'Space Grotesk';font-size:26px;font-weight:600;margin-top:10px;}

.svc-detail-item .svc-icon{
  width:60px;height:60px;
  border-radius:14px;
  background:var(--bg-elev);
  transition:border-color .25s ease, box-shadow .25s ease;
}
.svc-detail-item .svc-icon svg{width:28px;height:28px;}
.svc-detail-item:hover .svc-icon{
  border-color:var(--red-dim);
  box-shadow:0 0 26px var(--red-glow);
}

.svc-price-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:rgba(255,46,67,.08);
  border:1px solid var(--red-dim);
  color:var(--red);
  font-family:'JetBrains Mono',monospace;
  font-size:12px;
  padding:6px 12px;
  border-radius:20px;
  margin-top:16px;
}

.svc-detail-desc{color:var(--ink-dim);font-size:15.5px;line-height:1.65;max-width:620px;}
.svc-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:24px;}
.svc-detail-block h4{font-family:'JetBrains Mono';font-size:12px;letter-spacing:.1em;color:var(--red);margin-bottom:12px;}
.svc-detail-block ul{list-style:none;display:flex;flex-direction:column;gap:9px;}
.svc-detail-block li{color:var(--ink-dim);font-size:14px;line-height:1.5;padding-left:14px;position:relative;}
.svc-detail-block li::before{content:'';position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;background:var(--red-dim);}
@media(max-width:760px){
  .svc-detail-item{grid-template-columns:1fr;gap:22px;padding:32px 24px;}
  .svc-detail-ghost{font-size:90px;top:-10px;right:6px;}
  .svc-quicknav{gap:8px;}
  .svc-quicknav a{padding:9px 14px;font-size:13px;}
}
/* ===== /SERVICES DETAIL PAGE ===== */

.contacts-hero{padding:90px 0 60px;text-align:center;overflow-x:hidden;}
.contacts-hero .eyebrow{justify-content:center;}
.contacts-hero h1{font-size:clamp(40px,7vw,64px);font-weight:700;}

.capsule{
  position:relative;
  width:280px;height:280px;
  margin:64px auto 0;
  cursor:pointer;
  outline:none;
}
.capsule-ring{
  position:absolute;inset:-16px;border-radius:50%;
  border:1px solid var(--red-dim);
  animation:pulse 3.5s ease-in-out infinite;
  pointer-events:none;
}
.capsule:focus-visible .capsule-ring{border-color:var(--red);}

.capsule-door{
  position:absolute;inset:0;
  border-radius:50%;
  background:var(--bg-elev);
  border:2px solid var(--red-dim);
  transition:transform .7s cubic-bezier(.65,0,.35,1), opacity .55s ease;
  z-index:2;
}
.capsule-door-left{clip-path:inset(0 50% 0 0);}
.capsule-door-right{clip-path:inset(0 0 0 50%);}
.capsule-door img{
  position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;
  pointer-events:none;
}
.capsule.is-open .capsule-door-left{transform:translateX(-135%) rotateY(-35deg);opacity:0;}
.capsule.is-open .capsule-door-right{transform:translateX(135%) rotateY(35deg);opacity:0;}
@media(prefers-reduced-motion:reduce){
  .capsule-door{transition:opacity .3s ease;}
  .capsule.is-open .capsule-door-left, .capsule.is-open .capsule-door-right{transform:none;opacity:0;}
}

.capsule-hint{
  position:absolute;bottom:-38px;left:0;right:0;width:100%;
  color:var(--ink-dim);font-size:11px;letter-spacing:.14em;text-align:center;
  padding:0 6px;
  transition:opacity .3s ease;
}
.capsule.is-open .capsule-hint{opacity:0;pointer-events:none;visibility:hidden;}

.capsule-content{
  position:absolute;inset:0;
  display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:22px;
  opacity:0;transform:scale(.82);
  transition:opacity .5s ease .18s, transform .5s ease .18s;
  pointer-events:none;
  z-index:1;
  max-width:100%;
}
.capsule.is-open .capsule-content{opacity:1;transform:scale(1);pointer-events:auto;}

.capsule-link{display:flex;flex-direction:column;align-items:center;gap:3px;text-decoration:none;color:var(--ink);width:100%;text-align:center;}
.capsule-link-label{color:var(--red-dim);font-size:10px;letter-spacing:.16em;}
.capsule-link-value{font-family:'Space Grotesk';font-size:15px;font-weight:600;transition:color .2s ease;overflow-wrap:anywhere;max-width:100%;}
.capsule-link:hover .capsule-link-value{color:var(--red);}

.capsule-status{display:flex;flex-direction:column;align-items:center;gap:5px;width:100%;text-align:center;}
.contact-clock{font-family:'JetBrains Mono';font-size:11px;color:var(--ink-dim);letter-spacing:.03em;}

.contacts-cta{display:block;width:fit-content;margin:64px auto 0;}

@media(max-width:480px){
  .capsule{width:220px;height:220px;margin-top:48px;}
  .capsule-link-value{font-size:13.5px;}
}
.team{padding:70px 0 20px;}

:root{
  --accent-lead:#ff5fa8;
  --accent-lead-glow:rgba(255,95,168,.45);
  --accent-gold:#d9a441;
  --accent-gold-glow:rgba(217,164,65,.4);
}

.team-mag{
  display:grid;grid-template-columns:1.15fr 1fr;
  border:1px solid var(--line);border-radius:16px;overflow:hidden;
  margin-top:24px;
}

.team-mag-portrait{position:relative;min-height:560px;background:var(--bg-elev);}
.team-mag-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;pointer-events:none;}
.team-mag[data-active="infernus"] .team-mag-slide[data-member="infernus"],
.team-mag[data-active="chief"] .team-mag-slide[data-member="chief"],
.team-mag[data-active="randomdude"] .team-mag-slide[data-member="randomdude"]{opacity:1;pointer-events:auto;}
.team-mag-slide img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(12%);position:relative;z-index:1;}
.card-rain{position:absolute;inset:0;width:100%;height:100%;opacity:.9;pointer-events:none;z-index:2;mix-blend-mode:screen;}

.team-mag-info{padding:52px 48px;display:flex;flex-direction:column;justify-content:center;}
.team-mag-text{display:none;}
.team-mag[data-active="infernus"] .team-mag-text[data-member="infernus"],
.team-mag[data-active="chief"] .team-mag-text[data-member="chief"],
.team-mag[data-active="randomdude"] .team-mag-text[data-member="randomdude"]{display:block;}

.team-mag-role{font-family:'JetBrains Mono';font-size:12px;letter-spacing:.14em;}
.team-mag-text[data-member="infernus"] .team-mag-role{color:var(--red);}
.team-mag-text[data-member="chief"] .team-mag-role{color:var(--accent-lead);}
.team-mag-text[data-member="randomdude"] .team-mag-role{color:var(--accent-gold);}

.team-mag-name{font-family:'Space Grotesk';font-size:clamp(32px,4vw,44px);font-weight:700;color:var(--ink);margin-top:10px;}

.team-status{display:flex;align-items:center;gap:7px;margin-top:16px;margin-bottom:20px;}
.status-dot{width:7px;height:7px;border-radius:50%;background:var(--ink-dim);flex-shrink:0;}
.status-dot.is-online{background:#3ddc84;box-shadow:0 0 8px rgba(61,220,132,.7);animation:status-pulse 2s ease-in-out infinite;}
@keyframes status-pulse{0%,100%{opacity:1;}50%{opacity:.55;}}
.status-text{font-family:'JetBrains Mono';font-size:11px;color:var(--ink-dim);}
@media(prefers-reduced-motion:reduce){.status-dot.is-online{animation:none;}}

.team-mag-desc{color:var(--ink-dim);font-size:15px;line-height:1.65;max-width:420px;}

.team-mag-tabs{display:flex;gap:14px;margin-top:36px;}
.team-mag-tab{
  width:56px;height:56px;border-radius:50%;overflow:hidden;
  border:2px solid var(--line);padding:0;cursor:pointer;background:none;
  opacity:.5;filter:grayscale(70%);
  transition:opacity .25s ease, filter .25s ease, border-color .25s ease, box-shadow .25s ease, transform .2s ease;
}
.team-mag-tab img{width:100%;height:100%;object-fit:cover;display:block;}
.team-mag-tab:hover{opacity:.85;transform:translateY(-2px);}
.team-mag-tab[data-member="infernus"].is-active{opacity:1;filter:grayscale(0%);border-color:var(--red);box-shadow:0 0 16px var(--red-glow);}
.team-mag-tab[data-member="chief"].is-active{opacity:1;filter:grayscale(0%);border-color:var(--accent-lead);box-shadow:0 0 16px var(--accent-lead-glow);}
.team-mag-tab[data-member="randomdude"].is-active{opacity:1;filter:grayscale(0%);border-color:var(--accent-gold);box-shadow:0 0 16px var(--accent-gold-glow);}

@media(max-width:860px){
  .team-mag{grid-template-columns:1fr;}
  .team-mag-portrait{min-height:0;aspect-ratio:4/3;}
  .team-mag-info{padding:36px 30px;}
}
@media(max-width:480px){
  .team-mag-info{padding:28px 24px;}
  .team-mag-name{font-size:26px;}
  .team-mag-tab{width:48px;height:48px;}
}
.approach{padding:40px 0 100px;}
.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:20px;}
.approach-card{background:var(--bg);padding:36px;}
.approach-card .mono{color:var(--red-dim);font-size:12px;}
.approach-card h3{font-family:'Space Grotesk';font-size:19px;font-weight:600;margin-top:14px;}
.approach-card p{color:var(--ink-dim);font-size:14px;line-height:1.6;margin-top:10px;}
@media(max-width:760px){.approach-grid{grid-template-columns:1fr;}}

/* HEXAGON GRID -- "Принципы" on team page. Desktop behaviour is UNCHANGED
   from the version that was working well -- only the mobile media query
   at the bottom of this block was touched. */
.hex-grid{
  --hexW:220px;
  --hexH:calc(var(--hexW) * 0.866);
  display:flex;flex-wrap:wrap;
  justify-content:center;
  margin-top:56px;
  padding-bottom:calc(var(--hexH) * 0.5);
}
.hex-item{
  width:var(--hexW);
  margin:0 calc(var(--hexW) * -0.125) calc(var(--hexH) * -0.25);
}
.hex-item:nth-child(even){margin-top:calc(var(--hexH) * 0.5);}
.hex-shape{
  width:100%;aspect-ratio:1/0.866;
  background:var(--bg-elev);
  clip-path:polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
  position:relative;overflow:hidden;
  transition:transform .25s ease;
}
.hex-item:hover .hex-shape{transform:scale(1.045);z-index:5;}
.hex-icon{position:absolute;top:14%;left:50%;transform:translateX(-50%);width:52%;aspect-ratio:1/1;color:var(--red);}
.hex-icon svg{width:100%;height:100%;display:block;}
.icon-piece{animation:piece-drift 2.6s ease-in-out infinite;transform-origin:center;}
@keyframes piece-drift{0%,100%{transform:translate(0,0);}50%{transform:translate(4px,-6px);}}
.icon-link{stroke-dasharray:60;stroke-dashoffset:60;animation:link-draw 3s ease-in-out infinite;}
.icon-link:nth-child(1){animation-delay:0s;}
.icon-link:nth-child(2){animation-delay:.3s;}
.icon-link:nth-child(3){animation-delay:.6s;}
@keyframes link-draw{0%{stroke-dashoffset:60;opacity:.4;}30%,60%{stroke-dashoffset:0;opacity:1;}100%{stroke-dashoffset:0;opacity:.4;}}
.icon-keymove{animation:key-slide 3.2s ease-in-out infinite;transform-origin:left center;}
@keyframes key-slide{0%,15%{transform:translateX(0);}45%,65%{transform:translateX(14px);}90%,100%{transform:translateX(0);}}
.icon-pulse{animation:signal-travel 2.2s ease-in-out infinite;}
@keyframes signal-travel{0%{transform:translateX(0);opacity:0;}10%{opacity:1;}90%{opacity:1;}100%{transform:translateX(48px);opacity:0;}}
.icon-hourglass svg{animation:hourglass-flip 4s ease-in-out infinite;transform-origin:center;}
@keyframes hourglass-flip{0%,40%{transform:rotate(0deg);}50%,90%{transform:rotate(180deg);}100%{transform:rotate(360deg);}}
.icon-ring{opacity:0;animation:ring-ping 2.4s ease-out infinite;transform-origin:center;}
.icon-ring-2{animation-delay:.8s;}
.icon-ring-3{animation-delay:1.6s;}
@keyframes ring-ping{0%{transform:scale(.6);opacity:.9;}100%{transform:scale(2.1);opacity:0;}}
.hex-item:hover .hex-icon *{animation-play-state:paused;}
.hex-scrim{position:absolute;left:0;right:0;bottom:0;padding:0 22px 18px;text-align:center;transition:opacity .25s ease;}
.hex-num{color:var(--red);font-size:11px;letter-spacing:.1em;opacity:.85;}
.hex-scrim h3{font-family:'Space Grotesk';font-size:15px;font-weight:600;color:var(--ink);margin-top:2px;}
.hex-overlay{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  padding:0 30px;text-align:center;background:rgba(5,5,6,.9);
  opacity:0;transition:opacity .25s ease;
}
.hex-overlay p{color:#f2f1ee;font-size:12.5px;line-height:1.55;}
.hex-item:hover .hex-overlay{opacity:1;}
.hex-item:hover .hex-scrim{opacity:0;}
.hex-hint{text-align:center;color:var(--ink-dim);font-size:12px;margin-top:20px;}
@media(prefers-reduced-motion:reduce){
  .icon-piece, .icon-link, .icon-keymove, .icon-pulse, .hex-icon svg, .icon-ring{animation:none;}
  .hex-shape, .hex-scrim, .hex-overlay{transition:none;}
}
@media(max-width:760px){.hex-grid{--hexW:150px;}}

/* MOBILE FIX (only this block changed): the hexagon's clip-path was cutting
   off the scrim/overlay text because they're children of the clipped
   .hex-shape. Rather than restructure the DOM (which is what broke desktop
   hover before), we just turn the hex into a plain unclipped rounded card
   on small screens, with everything shown at once (no hover on touch
   anyway) -- desktop rules above are completely untouched. */
@media(max-width:560px){
  .hex-grid{--hexW:auto;flex-direction:column;align-items:center;padding-bottom:0;}
  .hex-item{width:240px;margin:0 0 20px !important;}
  .hex-shape{
    clip-path:none;
    aspect-ratio:unset;
    height:auto;
    border-radius:14px;
    border:1px solid var(--line);
    padding:28px 22px 24px;
    display:flex;
    flex-direction:column;
    align-items:center;
    overflow:visible;
    transform:none !important;
  }
  .hex-icon{
    position:static;
    width:64px;
    transform:none;
    margin-bottom:16px;
  }
  .hex-scrim{
    position:static;
    opacity:1 !important;
    padding:0;
  }
  .hex-overlay{
    position:static;
    opacity:1 !important;
    background:none;
    padding:14px 0 0;
    display:block;
  }
  .hex-overlay p{color:var(--ink-dim);}
  .hex-hint{display:none;}
}

.faq-clean{max-width:720px;margin:56px auto 0;}
.faq-clean-item{padding:36px 0;}
.faq-clean-item:first-child{padding-top:0;}

.faq-clean-q{
  display:flex;align-items:flex-start;gap:18px;width:100%;
  background:none;border:none;cursor:pointer;padding:0;text-align:left;
}
.faq-clean-index{
  flex-shrink:0;color:var(--red-dim);font-family:'JetBrains Mono';font-size:12px;letter-spacing:.1em;
  padding-top:9px;
}
.faq-clean-question{
  flex:1;
  font-family:'Space Grotesk',sans-serif;
  font-weight:400;
  font-size:clamp(21px,2.6vw,27px);
  line-height:1.32;
  color:var(--ink);
  transition:color .25s ease;
}
.faq-clean-q:hover .faq-clean-question{color:var(--ink-dim);}
.faq-clean-item.is-open .faq-clean-question{color:var(--ink);font-weight:500;}

.faq-clean-toggle{flex-shrink:0;position:relative;width:14px;height:14px;margin-top:11px;}
.faq-clean-toggle::before, .faq-clean-toggle::after{
  content:'';position:absolute;top:50%;left:50%;background:var(--red-dim);
  transition:transform .3s ease, background .25s ease;
}
.faq-clean-toggle::before{width:14px;height:1px;transform:translate(-50%,-50%);}
.faq-clean-toggle::after{width:1px;height:14px;transform:translate(-50%,-50%);}
.faq-clean-item.is-open .faq-clean-toggle::before{background:var(--red);}
.faq-clean-item.is-open .faq-clean-toggle::after{transform:translate(-50%,-50%) scaleY(0);}

.faq-clean-a-wrap{
  display:grid;grid-template-rows:0fr;
  transition:grid-template-rows .5s cubic-bezier(.4,0,.2,1);
  margin-left:50px;
}
.faq-clean-item.is-open .faq-clean-a-wrap{grid-template-rows:1fr;}
.faq-clean-a-inner{overflow:hidden;}
.faq-clean-a{
  font-family:'Manrope',sans-serif;
  font-size:15.5px;line-height:1.7;color:var(--ink-dim);
  max-width:580px;
  padding-top:18px;
  opacity:0;transform:translateY(-6px);
  transition:opacity .4s ease, transform .4s ease;
}
.faq-clean-item.is-open .faq-clean-a{opacity:1;transform:translateY(0);transition-delay:.1s;}
.faq-clean-a a{color:var(--red);text-decoration:underline;}

@media(prefers-reduced-motion:reduce){
  .faq-clean-a-wrap{transition:none;}
  .faq-clean-a{transition:opacity .3s ease;transform:none;}
  .faq-clean-toggle::before, .faq-clean-toggle::after{transition:none;}
}

@media(max-width:480px){
  .faq-clean-question{font-size:19px;}
  .faq-clean-item{padding:26px 0;}
  .faq-clean-q{gap:12px;}
  .faq-clean-a-wrap{margin-left:0;}
}
.error-page{min-height:80vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:60px 0;}
.error-page .mono{color:var(--red-dim);font-size:13px;letter-spacing:.14em;}
.error-page h1{font-family:'Space Grotesk';font-size:clamp(60px,12vw,140px);font-weight:700;line-height:1;margin:16px 0;}
.error-page p{color:var(--ink-dim);font-size:16px;max-width:420px;margin:0 auto 28px;}
.error-cube{width:140px;height:140px;margin:0 auto 24px;opacity:.85;}
.error-art{display:block;margin:48px auto 0;max-width:360px;width:100%;height:auto;border-radius:12px;border:1px solid var(--line);filter:grayscale(20%);}
.journey-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px;}
.journey-tab{background:var(--bg-elev);border:1px solid var(--line);color:var(--ink-dim);padding:11px 18px;border-radius:8px;font-family:'Manrope';font-size:13.5px;cursor:pointer;transition:border-color .2s, color .2s, background .2s;}
.journey-tab:hover{border-color:var(--red-dim);color:var(--ink);}
.journey-tab.is-active{background:var(--red);border-color:var(--red);color:#0a0a0b;font-weight:700;}
.journey-panel{display:none;}
.journey-panel.is-active{display:block;}
.journey{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:44px;}
.journey-line{position:absolute;top:6px;left:0;right:0;height:1px;background:var(--line);}
.journey-item{position:relative;padding:0 16px 0 0;}
.journey-dot{width:13px;height:13px;border-radius:50%;background:var(--bg);border:2px solid var(--red);position:relative;z-index:1;margin-bottom:20px;}
.journey-num{color:var(--red-dim);font-size:12px;margin-bottom:6px;}
.journey-item h4{font-family:'Space Grotesk';font-size:16.5px;font-weight:600;margin-bottom:8px;}
.journey-item p{color:var(--ink-dim);font-size:13.5px;line-height:1.55;}
@media(max-width:860px){
  .journey{grid-template-columns:1fr;gap:28px;margin-top:36px;}
  .journey-line{top:0;bottom:0;left:6px;right:auto;width:1px;height:auto;}
  .journey-item{padding-left:32px;}
  .journey-dot{position:absolute;left:0;top:2px;margin-bottom:0;}
}
.process{padding:110px 0;}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:50px;}
.step{border-left:1px solid var(--line);padding-left:20px;}
.step .n{font-family:'Space Grotesk';color:var(--red);font-size:14px;}
.step h4{font-family:'Space Grotesk';font-size:18px;margin-top:12px;font-weight:600;}
.step-list{list-style:none;margin-top:14px;display:flex;flex-direction:column;gap:9px;}
.step-list li{color:var(--ink-dim);font-size:13.5px;line-height:1.5;padding-left:14px;position:relative;}
.step-list li::before{content:'';position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;background:var(--red-dim);}
.process-note{margin-top:48px;color:var(--ink-dim);font-size:14px;border-top:1px solid var(--line);padding-top:24px;}
.cta{padding:110px 0;}
.cta-box{border:1px solid var(--line);border-radius:14px;padding:64px;background:radial-gradient(circle at 20% 20%, rgba(255,46,67,.08), transparent 60%);display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;}
.cta-box h2{font-size:clamp(26px,3vw,36px);font-weight:600;}
.cta-box p{color:var(--ink-dim);margin-top:16px;line-height:1.6;}
.contact-links{margin-top:28px;display:flex;flex-direction:column;gap:10px;}
.contact-links a{color:var(--ink);text-decoration:none;font-family:'JetBrains Mono';font-size:14px;border-bottom:1px solid var(--line);padding-bottom:2px;width:fit-content;transition:border-color .2s, color .2s;}
.contact-links a:hover{color:var(--red);border-color:var(--red);}
form{display:flex;flex-direction:column;gap:12px;}
form input, form textarea{background:var(--bg-elev);border:1px solid var(--line);border-radius:6px;padding:13px 15px;color:var(--ink);font-family:'Manrope';font-size:14px;outline:none;transition:border-color .2s;}
form input:focus, form textarea:focus{border-color:var(--red);}
form textarea{resize:none;min-height:90px;}
.form-note{font-size:12px;color:var(--ink-dim);margin-top:4px;}
.hp-field{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden;opacity:0;}
.consent-check{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:var(--ink-dim);line-height:1.5;cursor:pointer;}
.consent-check input{margin-top:3px;flex-shrink:0;accent-color:var(--red);}
.consent-check a{color:var(--red);text-decoration:underline;}
.consent-check a:hover{color:var(--ink);}
.form-success{border:1px solid var(--red-dim);border-radius:8px;padding:24px;background:rgba(255,46,67,.06);font-size:15px;line-height:1.6;color:var(--ink);}
.form-success strong{display:block;color:var(--red);font-family:'Space Grotesk';font-size:18px;margin-bottom:8px;}
html{scrollbar-width:thin;scrollbar-color:var(--red-dim) var(--bg-elev);}
::-webkit-scrollbar{width:10px;height:10px;}
::-webkit-scrollbar-track{background:var(--bg-elev);}
::-webkit-scrollbar-thumb{background:var(--red-dim);border-radius:6px;}
::-webkit-scrollbar-thumb:hover{background:var(--red);}
.cookie-notice{position:fixed;left:0;right:0;bottom:0;z-index:400;background:var(--bg-elev);border-top:1px solid var(--line);transform:translateY(100%);transition:transform .35s ease;}
.cookie-notice.is-visible{transform:translateY(0);}
.cookie-notice-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 28px;flex-wrap:wrap;}
.cookie-notice p{color:var(--ink-dim);font-size:13.5px;line-height:1.5;max-width:640px;margin:0;}
.cookie-accept{flex-shrink:0;padding:10px 22px;font-size:13px;}
@media(max-width:600px){.cookie-notice-inner{padding:16px 18px;}.cookie-accept{width:100%;text-align:center;justify-content:center;}}
.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0%;background:var(--red);z-index:300;box-shadow:0 0 8px var(--red-glow);transition:width .08s linear;}
@media(prefers-reduced-motion:reduce){.scroll-progress{transition:none;}}
.copy-toast{position:fixed;z-index:999;background:var(--red);color:#0a0a0b;font-family:'JetBrains Mono';font-size:12px;font-weight:700;padding:8px 14px;border-radius:6px;pointer-events:none;opacity:0;transform:translateY(6px);transition:opacity .15s ease, transform .15s ease;}
.copy-toast.is-visible{opacity:1;transform:translateY(0);}
.rate-ticker{display:flex;align-items:center;gap:24px;flex-wrap:wrap;}
.rate-item{display:flex;align-items:center;gap:6px;}
.rate-label{color:var(--red-dim);font-size:10px;letter-spacing:.06em;}
.rate-value{font-family:'Space Grotesk';font-size:13px;font-weight:600;color:var(--ink);}
@media(max-width:760px){.rate-ticker{order:3;width:100%;justify-content:center;margin-top:14px;}}
footer{position:relative;z-index:1;border-top:1px solid var(--line);padding:36px 0;}
footer .inner{display:flex;justify-content:space-between;align-items:center;color:var(--ink-dim);font-size:13px;flex-wrap:wrap;gap:8px 16px;}
footer a{color:var(--ink-dim);}
.footer-privacy-link{text-decoration:underline;}
.footer-privacy-link:hover{color:var(--ink);}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease;}
.reveal.is-visible{opacity:1;transform:translateY(0);}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}}
@media(max-width:1024px){
  .wrap{padding:0 24px;}
  .hero{min-height:auto;padding:60px 0 50px;}
  .about{padding:80px 0;}
  .services{padding:80px 0;}
  .process{padding:80px 0;}
  .cta{padding:80px 0;}
}
@media(max-width:860px){
  .nav-links{display:none !important;}
  .btn-desktop{display:none !important;}
  .burger{display:flex !important;}
  .mobile-menu{display:flex !important;}
  .hero-grid{grid-template-columns:1fr;text-align:left;}
  .mark{width:180px;height:180px;order:-1;margin:0 auto 8px;}
  .about-grid{grid-template-columns:1fr;gap:36px;}
  .svc-grid{grid-template-columns:1fr;grid-template-rows:none;grid-template-areas:none;}
  .svc-card{grid-area:auto !important;}
  .svc-card.is-featured{padding:32px;}
  .svc-card.is-featured .ghost-num{font-size:84px;}
  .svc-card.is-featured h3{font-size:23px;}
  .steps{grid-template-columns:1fr 1fr;gap:32px 24px;}
  .cta-box{grid-template-columns:1fr;padding:40px;gap:36px;}
}
@media(max-width:480px){
  .wrap{padding:0 18px;}
  nav .inner{padding:13px 0;}
  .nav-actions{gap:8px;}
  .lang-switch{padding:1px;}
  .lang-btn{padding:5px 8px;font-size:10px;}
  .theme-toggle{--w:44px;--h:24px;}
  .theme-toggle .knob{width:18px;height:18px;}
  :root[data-theme="light"] .theme-toggle .knob{transform:translateX(18px);}
  .burger{margin-left:0;width:28px;}
  .brand span{font-size:12px;}
  .brand img{width:30px;height:30px;}
  .hero{padding:36px 0 30px;}
  .hero h1{font-size:clamp(32px,9vw,44px);}
  .hero p{font-size:15.5px;}
  .hero-cta{gap:12px;}
  .hero-cta .btn, .hero-cta .btn-ghost{flex:1 1 auto;justify-content:center;text-align:center;}
  .mark{width:140px;height:140px;}
  .about{padding:56px 0;}
  .about h2{font-size:26px;}
  .laptop-photo{max-width:230px;}
  .services{padding:56px 0;}
  .section-head{margin-bottom:36px;}
  .svc-card{padding:26px;}
  .svc-card h3{font-size:19px;}
  .process{padding:56px 0;}
  .steps{grid-template-columns:1fr;gap:28px;}
  .cta{padding:56px 0;}
  .cta-box{padding:28px;border-radius:12px;}
  .cta-box h2{font-size:24px;}
  .mobile-menu a{padding:14px 18px;}
}
@media(max-width:380px){
  .wrap{padding:0 14px;}
  .brand span{font-size:11px;}
  .nav-actions{gap:6px;}
  .hero h1{font-size:8.5vw;}
  .mark{width:118px;height:118px;}
  .eyebrow{font-size:11px;}
}
@media(max-height:480px) and (orientation:landscape){
  .hero{min-height:auto;padding:28px 0;}
  .mark{width:110px;height:110px;}
}