/* ===================================================================
   BITSTREAKS — Healthcare & Life Sciences landing page
   Stylesheet. No framework, no Bootstrap.

   Layout note: the page is full-bleed. .container is width:100% with a
   fluid side gutter and NO max-width cap, so every section spans the
   whole viewport at any screen size rather than sitting in a fixed
   column like the source PDF comp.
   =================================================================== */

/* ---------- Tokens ---------- */
:root{
  --bg:#06040f;
  --bg-2:#0a0718;
  --bg-3:#0d0a1d;

  --violet:#a855f7;
  --violet-2:#8b5cf6;
  --magenta:#e879f9;
  --blue:#3b82f6;
  --cyan:#22d3ee;
  --sky:#38bdf8;

  --text:#eef0f6;
  --muted:#a8aec4;
  --dim:#7d849c;

  --line:rgba(255,255,255,.09);
  --line-2:rgba(255,255,255,.16);
  --card:rgba(255,255,255,.028);
  --card-2:rgba(255,255,255,.05);

  --grad:linear-gradient(95deg,#38bdf8 0%,#8b5cf6 48%,#e879f9 100%);
  --grad-btn:linear-gradient(95deg,#6366f1 0%,#a855f7 55%,#c026d3 100%);

  --r:18px;
  --r-lg:26px;
  --shadow:0 18px 50px rgba(0,0,0,.45);

  --display:"Outfit","Segoe UI",system-ui,sans-serif;
  --body:"Inter","Segoe UI",system-ui,sans-serif;

  /* fluid type: scales between a 360px phone and a 1920px desktop */
  --fs-xs:clamp(.688rem,.66rem + .12vw,.78rem);
  --fs-sm:clamp(.8rem,.77rem + .14vw,.9rem);
  --fs-base:clamp(.9rem,.86rem + .18vw,1.02rem);
  --fs-lead:clamp(.95rem,.9rem + .25vw,1.12rem);
  --fs-h3:clamp(1.05rem,.98rem + .34vw,1.3rem);
  --fs-h2:clamp(1.8rem,1.28rem + 2.3vw,3.5rem);
  --fs-h1:clamp(2.2rem,1.4rem + 3.6vw,5.9rem);
  --fs-stat:clamp(1.6rem,1.2rem + 1.7vw,2.6rem);

  --pad-y:clamp(64px,6vw,120px);
  --gutter:clamp(18px,4vw,80px);
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--body);
  font-size:var(--fs-base);
  line-height:1.72;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

main, section, .hero, .case {
  overflow-x: hidden;
}

h1,h2,h3,h4{font-family:var(--display);font-weight:600;line-height:1.14;margin:0 0 .5em;color:#fff;}
p{margin:0 0 1em;}
ul{margin:0;padding:0;list-style:none;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;display:block;}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;}
:focus-visible{outline:2px solid var(--violet);outline-offset:3px;border-radius:6px;}

/* full-bleed container — no max-width on purpose */
.container{width:100%;padding-inline:var(--gutter);margin:0 auto;}

.section{padding-block:var(--pad-y);position:relative;}
.section-alt{background:
  radial-gradient(1200px 600px at 12% 0%,rgba(139,92,246,.12),transparent 60%),
  radial-gradient(900px 500px at 92% 100%,rgba(56,189,248,.10),transparent 60%),
  var(--bg-2);}

.grad{
  background:var(--grad);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}

/* ---------- Shared type ---------- */
.eyebrow{
  font-size:var(--fs-xs);font-weight:600;color:var(--violet);
  text-transform:uppercase;margin:0 0 14px;
}
.spaced{letter-spacing:.34em;}
.tag{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 20px;border:1px solid var(--line-2);border-radius:999px;
  background:rgba(255,255,255,.04);
  font-size:var(--fs-xs);font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:#d9def0;margin-bottom:22px;
}
.tag-dot::before{
  content:"";width:8px;height:8px;border-radius:50%;
  background:var(--violet);box-shadow:0 0 12px var(--violet);
}
.section-head{text-align:center;max-width:1100px;margin:0 auto clamp(40px,4vw,68px);}
.section-title{font-size:var(--fs-h2);font-weight:400;letter-spacing:-.02em; color:#ffffff !important;}
.section-title.left{text-align:left;}
.section-lead{font-size:var(--fs-lead);color:var(--muted);max-width:74ch;margin-inline:auto;}
.section-lead.left{margin-inline:0;}
.section-lead.wide{max-width:96ch;}

/* ---------- Buttons ---------- */
section.contact .btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:14px 30px;border-radius:999px;
  font-family:var(--display);font-size:var(--fs-sm);font-weight:500;
  white-space:nowrap;transition:transform .2s,box-shadow .2s,background .2s,color .2s;
}
section.contact .btn-primary{background:var(--grad-btn) !important;color:#fff !important;box-shadow:0 10px 30px rgba(168,85,247,.32) !important; border-radius:100px !important; border-color:#ffffff !important;}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(168,85,247,.45);}
.btn-ghost{border:1px solid var(--line-2);color:#fff;background:rgba(255,255,255,.03);}
.btn-ghost:hover{border-color:var(--violet);background:rgba(168,85,247,.12);}
.btn-light{background:#fff;color:#0b0818 !important;}
.btn-light:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(255,255,255,.18);}

.ico-arrow{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round;flex:none;transition:transform .2s;}
.btn:hover .ico-arrow,.link-underline:hover .ico-arrow{transform:translateX(3px);}

.link-underline{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--display);font-size:var(--fs-sm);font-weight:500;color:#fff;
  padding-bottom:6px;border-bottom:1px solid var(--violet);
}
.link-underline.sm{font-size:var(--fs-xs);}
.link-underline:hover{border-color:var(--cyan);}

/* ---------- Icon chips ---------- */
.card-ico,.step-ico,.dtab-ico,.bene-ico,.strip-ico{
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  width:52px;height:52px;border-radius:14px;
  border:1px solid var(--line-2);background:rgba(255,255,255,.05);
}
.card-ico svg,.step-ico svg,.dtab-ico svg,.bene-ico svg,.strip-ico svg{
  width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round;
}
.card-ico.violet,.step-ico.violet,.dtab-ico{color:#c4a6ff;
  background:linear-gradient(150deg,rgba(168,85,247,.22),rgba(168,85,247,.05));
  border-color:rgba(168,85,247,.35);}
.card-ico.cyan,.step-ico.cyan{color:#8fe6ff;
  background:linear-gradient(150deg,rgba(34,211,238,.18),rgba(34,211,238,.04));
  border-color:rgba(34,211,238,.3);}
.card-ico.sm{width:42px;height:42px;border-radius:12px;}
.card-ico.sm svg{width:20px;height:20px;}
.card-ico.lg{width:60px;height:60px;border-radius:16px;}


body.page-template-health-industry {
    background-color: #06040f !important;
}
body.page-template-health-industry .entry-title,
body.page-template-health-industry .page-title,
body.page-template-health-industry h1.title {
    display: none !important;
}

/* ===================================================================
   HEADER
   =================================================================== */

.page-template-health-industry #sub-header {
    display: none !important;
}


.site-header{
  position:fixed;inset:0 0 auto 0;z-index:80;
  padding-block:18px;transition:background .3s,padding .3s,box-shadow .3s;
}
.site-header.is-stuck{
  background:rgba(6,4,15,.88);backdrop-filter:blur(14px);
  padding-block:10px;box-shadow:0 1px 0 var(--line);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;}
.brand-mark{
  font-family:var(--display);font-weight:700;font-size:clamp(1.1rem,.9rem + .7vw,1.6rem);
  letter-spacing:.02em;color:#fff;
}
.brand-mark.sm{font-size:1.1rem;}

.nav{display:flex;align-items:center;gap:40px;}
.nav-list{display:flex;align-items:center;gap:clamp(18px,2.2vw,44px);}
.nav-list a{font-size:var(--fs-sm);color:#dfe3f1;transition:color .2s;}
.nav-list a:hover{color:var(--violet);}
.nav-cta{display:none;}

.header-actions{display:flex;align-items:center;gap:16px;}
.nav-toggle{
  width:44px;height:44px;border-radius:12px;border:1px solid var(--line-2);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
}
.nav-toggle span{width:20px;height:2px;background:#fff;border-radius:2px;transition:.25s;}
.nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle.is-open span:nth-child(2){opacity:0;}
.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ===================================================================
   HERO
   =================================================================== */

body.page-template-health-industry .hero {
    margin-top: -80px !important;
    padding-top: 80px !important;
}
.content_heropart {
    position: absolute;
    left:7%;
    z-index: 9;
    width: 50%;
}

.hero{position:relative;padding-top:0;padding-bottom:clamp(40px,4vw,70px);overflow:hidden;}
.hero-glow{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(760px 520px at 78% 18%,rgba(139,92,246,.30),transparent 62%),
    radial-gradient(620px 440px at 96% 52%,rgba(56,189,248,.20),transparent 60%),
    radial-gradient(520px 420px at 4% 8%,rgba(99,102,241,.18),transparent 60%);
}
.hero-grid{
    position: relative;
    z-index: 1;
    display: flex;
    gap: 0;
    align-items: center;
    padding-right: 0;
    justify-content: flex-end;
}
.hero-title{
	font-size: var(--fs-h1) !important;
    font-weight: 900 !important;
    letter-spacing: -.02em;
    margin-bottom: 24px;
    color: #ffffff !important;
    line-height: 100px !important;
    margin-top: 0;
}
.hero-lead{font-size:var(--fs-lead);color:var(--muted);max-width:60ch;margin-bottom:34px;}
.hero-lead strong{color:#fff;font-weight:500;}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:26px;}

/* hero capability strip */
.hero-strip{
  display:grid;grid-template-columns:repeat(3,1fr) auto;
  gap:clamp(18px,2.4vw,44px);align-items:center;
  margin-top:clamp(40px,5vw,72px);padding-top:clamp(24px,3vw,40px);
  border-top:1px solid var(--line);
}
.hero-strip li{display:flex;align-items:center;gap:14px;}
.hero-strip li + li{border-left:1px solid var(--line);padding-left:clamp(18px,2.4vw,44px);}
.strip-ico{width:44px;height:44px;border-radius:12px;color:#8fe6ff;}
.strip-ico svg{width:22px;height:22px;}
.strip-tx b{display:block;font-family:var(--display);font-size:var(--fs-sm);font-weight:500;color:#fff;}
.strip-tx small{display:block;font-size:var(--fs-xs);color:var(--dim);}
.strip-note{
  font-size:var(--fs-xs);letter-spacing:.3em;text-transform:uppercase;
  color:rgba(255,255,255,.26);line-height:1.9;text-align:right;
}

/* ---------- Device mock (hero) ---------- */
.hero-art{position:relative;min-height:clamp(320px,34vw,520px);max-width:100%;}
.device-stack{position:relative;height:100%;min-height:inherit;}
.device{
  position:absolute;border-radius:14px;overflow:hidden;
  background:linear-gradient(160deg,#141033,#0a0820);
  border:1px solid var(--line-2);box-shadow:var(--shadow);
}
.device-laptop{left:0;top:8%;width:82%;aspect-ratio:16/10;}
.device-phone{right:0;bottom:2%;width:31%;aspect-ratio:9/18;border-radius:22px;z-index:3;}
.device-bar{
  display:flex;align-items:center;gap:6px;padding:9px 12px;
  background:rgba(255,255,255,.05);border-bottom:1px solid var(--line);
}
.device-bar i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.25);}
.device-screen{padding:clamp(12px,1.6vw,22px);}
.ds-eyebrow{font-family:var(--display);font-size:clamp(.6rem,.5rem + .3vw,.82rem);color:#a5b4fc;margin:0 0 8px;}
.ds-eyebrow span{font-size:.62em;letter-spacing:.18em;color:var(--dim);}
.ds-title{font-family:var(--display);font-size:clamp(.78rem,.55rem + .9vw,1.45rem);
  line-height:1.2;color:#fff;margin:0 0 8px;}
.ds-title.sm{font-size:clamp(.66rem,.5rem + .55vw,1rem);}
.ds-text{font-size:clamp(.55rem,.45rem + .28vw,.76rem);color:var(--muted);margin:0 0 12px;}
.ds-btn{
  display:inline-block;padding:6px 14px;border-radius:999px;background:var(--grad-btn);
  font-size:clamp(.55rem,.45rem + .25vw,.72rem);color:#fff;
}
.ds-btn.sm{padding:5px 12px;}
.ds-row{display:flex;gap:8px;margin-top:14px;}
.ds-row span{
  flex:1;padding:8px 6px;border-radius:8px;background:rgba(255,255,255,.05);
  border:1px solid var(--line);font-size:clamp(.45rem,.36rem + .2vw,.6rem);
  color:var(--muted);text-align:center;
}
.ds-thumb{margin-top:12px;height:34%;border-radius:10px;
  background:radial-gradient(circle at 40% 40%,rgba(139,92,246,.6),rgba(6,4,15,.9));}
.orb{position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none;}
.orb-1{width:70px;height:70px;left:-4%;bottom:18%;
  background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.55),rgba(56,189,248,.25) 45%,transparent 70%);}
.orb-2{width:42px;height:42px;left:18%;bottom:4%;
  background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.5),rgba(139,92,246,.3) 45%,transparent 70%);}
.orb-3{width:26px;height:26px;left:52%;top:2%;
  background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.6),rgba(34,211,238,.3) 45%,transparent 70%);}

/* ===================================================================
   GRIDS / CARDS
   =================================================================== */
.grid{display:grid;gap:clamp(18px,1.8vw,30px);}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));}

.card{
  padding:clamp(24px,2vw,34px);border-radius:var(--r);
  border:1px solid var(--line);background:var(--card);
  transition:transform .25s,border-color .25s,background .25s;
}
.card:hover{transform:translateY(-4px);border-color:rgba(168,85,247,.4);background:var(--card-2);}
.card-num header{display:flex;align-items:center;gap:16px;margin-bottom:20px;}
.card-n{font-family:var(--display);font-size:var(--fs-sm);color:var(--dim);}
.card h3{font-size:var(--fs-h3) !important;margin-bottom:10px; color:#ffffff !important;}
.card p{font-size:var(--fs-sm);color:var(--muted);margin:0;}

/* ---------- Who we serve ---------- */
.serve{
  border-radius:var(--r);border:1px solid var(--line);overflow:hidden;
  background:var(--card);position:relative;transition:transform .25s,border-color .25s;
}
.serve:hover,.serve.is-active{transform:translateY(-4px);border-color:rgba(168,85,247,.55);}
.serve.is-active{box-shadow:0 0 0 1px rgba(168,85,247,.3),0 18px 50px rgba(168,85,247,.16);}
/* Image slots — replace each .serve-art background with a real photo */
.serve-art{
  position:absolute;inset:0;z-index:0;opacity:.5;
  background-size:cover;background-position:center;
}
.art-hospital{background:linear-gradient(115deg,rgba(10,7,24,.96) 42%,rgba(10,7,24,.25)),
  radial-gradient(circle at 78% 42%,#3b4f8f,#101a3a 60%);}
.art-dna{background:linear-gradient(115deg,rgba(10,7,24,.96) 42%,rgba(10,7,24,.25)),
  radial-gradient(circle at 78% 42%,#7b3fbf,#160f33 62%);}
.art-pills{background:linear-gradient(115deg,rgba(10,7,24,.96) 42%,rgba(10,7,24,.25)),
  radial-gradient(circle at 78% 46%,#4763c9,#141a3a 62%);}
.art-lab{background:linear-gradient(115deg,rgba(10,7,24,.96) 42%,rgba(10,7,24,.25)),
  radial-gradient(circle at 78% 44%,#2f6fb5,#0f1a33 62%);}
.art-device{background:linear-gradient(115deg,rgba(10,7,24,.96) 42%,rgba(10,7,24,.25)),
  radial-gradient(circle at 78% 44%,#4a6ea8,#111730 62%);}
.art-app{background:linear-gradient(115deg,rgba(10,7,24,.96) 42%,rgba(10,7,24,.25)),
  radial-gradient(circle at 78% 46%,#6c4bb8,#141031 62%);}
.serve-body{position:relative;z-index:1;padding:clamp(24px,2vw,32px);}
.serve-body .card-ico{border-radius:50%;margin-bottom:22px;}
.serve h3{font-size:var(--fs-h3) !important;margin-bottom:12px; color:#ffffff !important;}
.serve p{font-size:var(--fs-sm);color:var(--muted);max-width:34ch;margin-bottom:22px;}

/* ---------- Stats ---------- */
.stats{
  display:grid;grid-template-columns:repeat(4,1fr);
  margin-top:clamp(40px,4vw,64px);text-align:center;
}
.stats li{padding:12px clamp(10px,1.5vw,26px);}
.stats li + li{border-left:1px solid var(--line);}
.stats b{display:block;font-family:var(--display);font-size:var(--fs-stat);
  font-weight:600;color:var(--violet);line-height:1.1;}
.stats span{font-size:var(--fs-sm);color:var(--muted);}

/* ===================================================================
   CASE STUDIES
   =================================================================== */

.image_size_cases .case-grid {
    padding-right: 0;
    grid-template-columns: minmax(0, 0.52fr) minmax(0, .6fr);
}
.image_size_cases .case-copy {
    width: 100%;
    max-width: 700px;
}

.all_custom_cases img {z-index:9; position:relative; max-width:100%; height:auto;}
.work-head{
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:34px;margin-bottom:clamp(36px,4vw,60px);flex-wrap:wrap;
}
.cases{display:flex;flex-direction:column;}
.case{padding-block:clamp(40px,4.5vw,76px);position:relative;}
.case:nth-child(odd){background:
  radial-gradient(900px 480px at 8% 50%,rgba(99,102,241,.14),transparent 62%),var(--bg-2);}
.case:nth-child(even){background:
  radial-gradient(900px 480px at 92% 50%,rgba(168,85,247,.14),transparent 62%),var(--bg-3);}
.case-grid{
  display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:clamp(28px,3.5vw,68px);align-items:center;
}
.case-rev .case-copy{order:2;}
.case-rev .case-art{order:1;}
.chip {
  display:inline-block;padding:7px 18px;border-radius:999px;
  border:1px solid rgba(99,102,241,.55);background:rgba(99,102,241,.1);
  font-size:var(--fs-xs);font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:#c7d0ff;margin-bottom:20px;
}
.case h3{font-size:clamp(1.4rem,2rem + 1.5vw,4.3rem) !important;font-weight:500;margin-bottom:16px; color:#ffffff !important;}
.case-copy > p{font-size:var(--fs-sm);color:var(--muted);max-width:52ch;margin-bottom:26px;}
.case-stats{display:flex;flex-wrap:wrap;gap:clamp(18px,2.4vw,40px);margin-bottom:28px;}
.case-stats li{position:relative;padding-right:clamp(18px,2.4vw,40px);}
.case-stats li:not(:last-child)::after{
  content:"";position:absolute;right:0;top:6px;bottom:6px;width:1px;background:var(--line);
}
.case-stats b{display:block;font-family:var(--display);font-size:clamp(1.3rem,.9rem + 1.3vw,2rem);
  font-weight:600;color:var(--cyan);line-height:1.1;}
.case-stats span{font-size:var(--fs-xs);color:var(--dim);}

/* browser mock used for every case-study screenshot slot */
.case-art{position:relative; max-width:100%;}
.mock{
  border-radius:14px;overflow:hidden;border:1px solid var(--line-2);
  background:linear-gradient(160deg,#f4f7ff,#dfe7fb);box-shadow:var(--shadow);
}
.mock-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;
  background:#e8edfb;border-bottom:1px solid rgba(10,7,24,.08);}
.mock-bar i{width:8px;height:8px;border-radius:50%;background:rgba(10,7,24,.18);}
.mock-brand{margin-left:10px;font-family:var(--display);font-weight:600;
  font-size:var(--fs-xs);color:#2a3566;}
.mock-body{padding:clamp(18px,2vw,34px);}
.mock-title{font-family:var(--display);font-weight:600;color:#131a3a;
  font-size:clamp(1rem,.7rem + 1vw,1.6rem);line-height:1.18;margin:0 0 8px;}
.mock-title.lg{font-size:clamp(1.1rem,.7rem + 1.5vw,2rem);}
.mock-title em{font-style:normal;color:#6d28d9;}
.mock-eyebrow{font-size:var(--fs-xs);letter-spacing:.16em;text-transform:uppercase;
  color:#6d28d9;margin:0 0 10px;}
.mock-sub{font-size:var(--fs-xs);color:#455179;margin:0 0 16px;max-width:46ch;}
.mock-btn{display:inline-block;padding:8px 18px;border-radius:999px;
  background:linear-gradient(95deg,#4f46e5,#7c3aed);color:#fff;
  font-size:var(--fs-xs);margin-right:8px;}
.mock-btn.ghost{background:#fff;color:#2a3566;border:1px solid rgba(10,7,24,.12);}
.mock-row{display:flex;gap:10px;margin-top:20px;}
.mock-row span{flex:1;padding:10px 8px;border-radius:10px;background:#fff;
  border:1px solid rgba(10,7,24,.07);font-size:var(--fs-xs);color:#455179;text-align:center;}
.mock-lg .mock-body{min-height:clamp(220px,22vw,330px);}

/* per-case accent wash behind each screenshot mock */
.case-art::before{
  content:"";position:absolute;inset:-12% -8%;z-index:0;border-radius:50%;
  filter:blur(60px);opacity:.55;pointer-events:none;
}
.case-art > .mock{position:relative;z-index:1;}
.art-senior::before{background:radial-gradient(circle,#2f6fb5,transparent 68%);}
.art-nexora::before{background:radial-gradient(circle,#7b3fbf,transparent 68%);}
.art-medisure::before{background:radial-gradient(circle,#4763c9,transparent 68%);}
.art-caresync::before{background:radial-gradient(circle,#5b46b8,transparent 68%);}
.art-globalcare::before{background:radial-gradient(circle,#3b4f8f,transparent 68%);}
.art-clinnova::before{background:radial-gradient(circle,#2f6fb5,transparent 68%);}

.brand{display:inline-flex;align-items:center;transition:opacity .2s;}
.brand:hover{opacity:.85;}

/* ===================================================================
   PROCESS STEPS
   =================================================================== */
.step{
  position:relative;padding:clamp(26px,2.2vw,38px);border-radius:var(--r-lg);
  border:1px solid var(--line);
  background:linear-gradient(165deg,rgba(168,85,247,.10),rgba(255,255,255,.02) 45%);
  transition:transform .25s,border-color .25s;
}
.step:nth-child(even){background:linear-gradient(165deg,rgba(56,189,248,.10),rgba(255,255,255,.02) 45%);}
.step:hover{transform:translateY(-5px);border-color:rgba(168,85,247,.45);}
.step-n{position:absolute;top:clamp(26px,2.2vw,38px);right:clamp(26px,2.2vw,38px);
  font-family:var(--display);font-size:var(--fs-sm);color:var(--dim);}
.step-ico{width:62px;height:62px;border-radius:50%;margin-bottom:26px;}
.step-ico svg{width:28px;height:28px;}
.step h3{font-size:clamp(1.05rem,.9rem + .55vw,1.45rem) !important;font-weight:500;margin-bottom:14px; color:#ffffff !important;}
.step p{font-size:var(--fs-sm);color:var(--muted);margin-bottom:22px;}

/* ===================================================================
   WHAT WE DELIVER (tabs)
   =================================================================== */
.deliver{
  display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,2fr);
  gap:clamp(20px,2.4vw,40px);align-items:start;
}
.deliver-list{display:flex;flex-direction:column;}
.dtab{
  display:flex;align-items:center;gap:16px;width:100%;text-align:left;
  padding:clamp(14px,1.3vw,20px);border-radius:16px !important;
  border:1px solid transparent;border-bottom-color:var(--line);
  transition:background .25s,border-color .25s,transform .2s;
}
.dtab:last-child{border-bottom-color:transparent;}
.dtab:hover{background:rgba(255,255,255,.035);}
.dtab.is-active{
  border-color:rgba(168,85,247,.5);
  background:linear-gradient(100deg,rgba(168,85,247,.24),rgba(99,102,241,.08));
  box-shadow:0 10px 30px rgba(168,85,247,.16);
}
.dtab-tx b{display:block;font-family:var(--display);font-size:var(--fs-sm);
  font-weight:600;color:#fff;margin-bottom:2px;}
.dtab-tx small{display:block;font-size:var(--fs-xs);color:var(--muted);line-height:1.5;}
.dtab-arrow{width:18px;height:18px;margin-left:auto;flex:none;
  fill:none;stroke:var(--dim);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.dtab.is-active .dtab-arrow{stroke:#fff;}

.deliver-preview{
  position:relative;padding:clamp(18px,1.8vw,30px);
  border-radius:var(--r-lg);border:1px solid rgba(139,92,246,.35);
  overflow:hidden;
}
.deliver-preview img {
  border-radius: 20px;
  max-width: 100%;
  height: auto;
}
.deliver-note{
  position:absolute;top:18px;right:clamp(18px,2vw,34px);z-index:2;
  font-family:var(--display);font-size:var(--fs-xs);color:var(--muted);
  line-height:1.7;text-align:left;max-width:180px;
}
.deliver-note svg{width:52px;height:52px;fill:none;stroke:var(--dim);
  stroke-width:1.4;stroke-linecap:round;margin-top:4px;}
.deliver-stage{transition:opacity .28s ease,transform .28s ease;}
.deliver-stage.is-fading{opacity:0;transform:translateY(8px);}

.deliver-bene{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.2vw,20px);margin-top:18px;}
.deliver-bene li{display:flex;align-items:center;gap:12px;padding:14px 16px;
  border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line);
  font-family:var(--display);font-size:var(--fs-sm);color:#fff;line-height:1.35;}
.bene-ico{width:42px;height:42px;border-radius:12px;color:#c4a6ff;}
.bene-ico svg{width:20px;height:20px;}

.deliver-nav{display:flex;align-items:center;justify-content:space-between;
  gap:20px;margin-top:clamp(24px,2.4vw,38px);}
.dots{display:flex;gap:10px;}
.dot{
	width: 10px !important;
    height: 10px !important;
    border-radius: 65px !important;
    background: rgb(255 255 255 / .2) !important;
    transition: .25s;
    padding: 5px 10px 5px 10px !important;
}
.dot.is-active{background:var(--violet) !important;box-shadow:0 0 12px var(--violet) !important;width:26px !important;border-radius:999px;}
.arrows{display:flex;gap:12px;}
#testimonials .arrow{
  width:52px !important;height:52px !important;border-radius:100% !important;border:1px solid var(--line-2) !important;
  display:flex;align-items:center;justify-content:center;transition:.22s; padding: initial !important;}
#testimonials .arrow svg{width:20px !important;height:20px !important;fill:none;stroke:#fff !important;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round;}
.arrow:hover{border-color:var(--violet);background:rgba(168,85,247,.14);}
.arrow-on{border-color:var(--violet);background:rgba(168,85,247,.18);}

/* ===================================================================
   TRUST
   =================================================================== */
.trust-grid {
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr) minmax(0,1fr);
  gap:clamp(18px,2vw,36px);align-items:center;
}
.trust-col{display:flex;flex-direction:column;gap:clamp(14px,1.4vw,22px);}
.trust-card{
  display:flex;gap:18px;padding:clamp(20px,1.7vw,28px);border-radius:var(--r);
  border:1px solid var(--line);background:var(--card);transition:transform .25s,border-color .25s;
}
.trust-card:hover{transform:translateY(-3px);border-color:rgba(168,85,247,.4);}
.trust-card h3{font-size:var(--fs-h3) !important;margin-bottom:8px; color:#ffffff !important;}
.trust-card p{font-size:var(--fs-sm);color:var(--muted);margin:0;}

.trust-center{text-align:center;padding:20px 0;}
.shield{position:relative;width:min(280px,72%);margin:0 auto 24px;aspect-ratio:120/140;}
.shield > svg{width:100%;height:100%;fill:none;stroke:none;}
.shield > svg path{fill:rgba(139,92,246,.18);stroke:rgba(196,165,255,.85);stroke-width:2;}
.shield-cross{position:absolute;inset:0;margin:auto;width:32%;height:32%;}
.shield-cross::before,.shield-cross::after{
  content:"";position:absolute;inset:0;margin:auto;border-radius:4px;
  background:linear-gradient(180deg,#fff,#dcd2ff);box-shadow:0 0 30px rgba(196,165,255,.8);
}
.shield-cross::before{width:32%;height:100%;}
.shield-cross::after{width:100%;height:32%;}
.ring{position:absolute;inset:-14%;border-radius:50%;border:1px dashed rgba(168,85,247,.35);}
.ring-2{inset:-30%;border-color:rgba(56,189,248,.2);}
.shield-cap{font-size:var(--fs-xs);letter-spacing:.24em;text-transform:uppercase;color:var(--dim);margin:0;}

.trust-cta{
  display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1.2fr) auto;
  gap:clamp(18px,2.4vw,40px);align-items:center;
  margin-top:clamp(26px,3vw,46px);padding:clamp(24px,2.4vw,40px);
  border-radius:var(--r-lg);border:1px solid var(--line);background:var(--card);
}
.trust-cta h3{font-size:var(--fs-h3) !important;margin:0;color:#ffffff !important;}
.trust-cta p{font-size:var(--fs-sm);color:var(--muted);margin:0;
  padding-left:clamp(18px,2.4vw,40px);border-left:1px solid var(--line);}

/* ===================================================================
   TESTIMONIALS
   =================================================================== */
.tst-grid{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  gap:clamp(30px,3.4vw,64px);align-items:center;
}
.tst-feats{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(16px,1.8vw,28px);margin:30px 0 34px;}
.tst-feats li{display:flex;gap:14px;}
.tst-feats b{display:block;font-family:var(--display);font-size:var(--fs-sm);color:#fff;}
.tst-feats small{display:block;font-size:var(--fs-xs);color:var(--muted);line-height:1.55;}

.tst-slider{position:relative;}
.tst-count{text-align:right;font-family:var(--display);font-size:var(--fs-sm);
  color:#fff;margin:0 0 20px;padding-bottom:8px;border-bottom:1px solid var(--violet);
  width:fit-content;margin-left:auto;}
.tst-viewport{overflow:hidden;border-radius:var(--r-lg);}
.tst-track{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1);}
.quote{
  flex:0 0 100%;margin:0;padding:clamp(26px,2.6vw,46px);
  border-radius:var(--r-lg);border:1px solid rgba(139,92,246,.4);
  background:linear-gradient(150deg,rgba(139,92,246,.16),rgba(6,4,15,.7));
}
.quote-mark{font-family:var(--display);font-size:4rem;line-height:.6;color:rgba(255,255,255,.35);display:block;margin-bottom:18px;}
.quote blockquote{margin:0 0 30px;font-size:clamp(1rem,.85rem + .6vw,1.35rem);
  line-height:1.6;color:#fff;font-weight:300;font-family:var(--display);}
.quote figcaption{display:flex;align-items:center;gap:16px;}
.avatar{
  width:54px;height:54px;border-radius:50%;flex:none;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(150deg,#6366f1,#a855f7);
  font-family:var(--display);font-weight:600;color:#fff;
}
.who b{display:block;font-family:var(--display);font-size:var(--fs-base);color:#fff;}
.who small{display:block;font-size:var(--fs-xs);color:var(--muted);line-height:1.5;}
.stars{margin-left:auto;color:#fbbf24;letter-spacing:2px;font-size:var(--fs-base);}
.tst-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:26px;}

/* ===================================================================
   CONTACT
   =================================================================== */

.dewide_column {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
}
.full_column {
    margin-bottom: 20px;
}
.full_column textarea {
    height:120px !important;
}
.for_submit .wpcf7-submit {
    background: var(--grad-btn) !important;
    color: #fff !important;
    box-shadow: 0 10px 30px rgb(168 85 247 / .32) !important;
    border-radius: 100px !important;
    border-color: #ffffff !important;
	width: auto;
    padding: 14px 30px !important;
}

.contact{background:var(--bg-2);}
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
.contact-left{
  position:relative;
  background:
    radial-gradient(700px 500px at 20% 20%,rgba(99,102,241,.22),transparent 62%),
    radial-gradient(600px 460px at 10% 100%,rgba(168,85,247,.24),transparent 62%),
    var(--bg);
  border-radius:0 var(--r-lg) var(--r-lg) 0;
}
.contact-left-in{padding:clamp(40px,5vw,110px) var(--gutter);}
.contact-right{background:#fff;color:#171a2b;}
.contact-right-in{padding:clamp(40px,5vw,110px) var(--gutter);}

.call-card{
  display:flex;gap:clamp(16px,1.8vw,28px);align-items:center;margin-top:clamp(28px,3vw,48px);
  padding:clamp(18px,1.6vw,26px);border-radius:var(--r-lg);
  border:1px solid rgba(168,85,247,.4);
  background:linear-gradient(120deg,rgba(168,85,247,.22),rgba(6,4,15,.5));
}
/* image slot — portrait photo 480 x 640 px */
.call-photo{
  width:clamp(110px,12vw,170px);aspect-ratio:3/4;flex:none;border-radius:16px;
  background:radial-gradient(circle at 50% 30%,#4c5590,#1a1636 70%);
  border:1px solid var(--line-2);
}
.call-photo img {border-radius:20px;}
.contact .call-tx h3{font-size:clamp(1.15rem,.95rem + .7vw,1.6rem) !important;font-weight:500;margin-bottom:10px; color:#ffffff !important;}
.call-tx p {font-size:var(--fs-sm);color:var(--muted);margin-bottom:20px;}

.form-title{font-size:var(--fs-h2);font-weight:400;color:#171a2b;letter-spacing:-.02em;}
.form-lead{font-size:var(--fs-lead);color:#5b6079;max-width:52ch;margin-bottom:34px;}
.form{display:flex;flex-direction:column;gap:16px;}
.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.field{position:relative;}
.field-ico{
  position:absolute;left:18px;top:19px;width:20px;height:20px;pointer-events:none;color:#8b90ab;
}
.field-area .field-ico{top:20px;}
.field-ico svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round;}

section.contact input,section.contact select,section.contact textarea{
  width:100%;padding:17px 18px 17px 18px !important;border-radius:12px !important;
  border:1px solid #e2e5f0 !important;background:#f7f8fc !important;color:#171a2b;
  font-family:var(--body) !important;font-size:var(--fs-sm) !important;line-height:1.5;
  transition:border-color .2s,background .2s,box-shadow .2s;
}
.field textarea{min-height:150px;resize:vertical;padding-top:18px;}
.field select{appearance:none;cursor:pointer;color:#5b6079;}
.field input::placeholder,.field textarea::placeholder{color:#8b90ab;}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:var(--violet);background:#fff;
  box-shadow:0 0 0 4px rgba(168,85,247,.12);
}
.field-caret{position:absolute;right:18px;top:20px;width:18px;height:18px;
  fill:none;stroke:#8b90ab;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;}
.counter{position:absolute;right:16px;bottom:14px;font-size:var(--fs-xs);color:#8b90ab;}
.err{margin:6px 0 0;font-size:var(--fs-xs);color:#d6336c;min-height:0;}
.field.has-err input,.field.has-err textarea{border-color:#d6336c;background:#fff5f8;}

.form-foot{display:flex;align-items:center;gap:clamp(18px,2.4vw,40px);flex-wrap:wrap;margin-top:6px;}
.secure{display:flex;align-items:flex-start;gap:10px;margin:0;
  font-size:var(--fs-xs);color:#6b7089;line-height:1.5;}
.secure svg{width:20px;height:20px;flex:none;fill:none;stroke:#8b90ab;stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round;}
.form-status{margin:4px 0 0;font-size:var(--fs-sm);min-height:1.4em;}
.form-status.ok{color:#0f9d58;}
.form-status.bad{color:#d6336c;}

/* ===================================================================
   FOOTER
   =================================================================== */
.site-footer{padding-block:38px;border-top:1px solid var(--line);background:var(--bg);}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.site-footer p{margin:0;font-size:var(--fs-xs);color:var(--dim);}
.footer-links{display:flex;gap:24px;font-size:var(--fs-xs);color:var(--muted);}
.footer-links a:hover{color:var(--violet);}

/* ===================================================================
   REVEAL ANIMATION
   =================================================================== */
.reveal{opacity:0;transform:translateY(26px);
  transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);}
.reveal.is-in{opacity:1;transform:none;}

/* ===================================================================
   RESPONSIVE
   =================================================================== */
@media (max-width:1450px){
 .case h3 {
    font-size: clamp(1.4rem, 1.5rem + 1vw, 4.3rem);
}
  .content_heropart {
      position: relative;
      left: auto;
      width: 100%;
  }
  :root {
      --fs-lead: clamp(.95rem, .7rem + .25vw, 1.12rem);
      --fs-h1: clamp(2.2rem, 1.4rem + 2.2vw, 5.9rem);
  }
  .btn {
      padding: 11px 25px;
  }
}

@media (max-width:1180px){
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr));}
  .trust-grid{grid-template-columns:1fr;}
  .trust-center{order:-1;}
  .shield{width:min(240px,50%);}
  .trust-cta{grid-template-columns:1fr;text-align:center;justify-items:center;}
  .trust-cta p{padding-left:0;border-left:0;}
}

@media (max-width:1024px){

      .hero-strip li + li br {
        display: none;
    }

  #testimonials .tst-slider {
    overflow: hidden;
}
    .content_heropart {
        padding: 0 18px;
    }
  .image_size_cases .case-copy {
      width: 100%;
      max-width: 100%;
  }
  .image_size_cases .case-grid {
      grid-template-columns: 1fr;
  }
  .hero-grid {
      padding: 0;
      flex-direction: column;
  }
  .nav{
      position:fixed;inset:0 0 auto 0;flex-direction:column;align-items:stretch;gap:0;
      padding:92px var(--gutter) 30px;background:rgba(6,4,15,.98);backdrop-filter:blur(16px);
      transform:translateY(-104%);transition:transform .35s cubic-bezier(.4,0,.2,1);
      border-bottom:1px solid var(--line);
  }
  .nav.is-open{transform:none;}
  .nav-list{flex-direction:column;align-items:stretch;gap:0;}
  .nav-list a{display:block;padding:15px 0;border-bottom:1px solid var(--line);font-size:1rem;}
  .nav-cta{display:inline-flex;justify-content:center;margin-top:20px;}
  .header-cta{display:none;}

  .hero-art{order:-1;min-height:clamp(260px,52vw,420px);width:100%;}
  .hero-strip{grid-template-columns:repeat(3,1fr);}
  .strip-note{display:none;}

  .grid-3{grid-template-columns:repeat(2,minmax(0,1fr));}
  .deliver{grid-template-columns:1fr;}
  .case-grid{grid-template-columns:1fr;}
  .case-rev .case-copy{order:1;}
  .case-rev .case-art{order:2;}
  .tst-grid{grid-template-columns:1fr;}
  .contact-grid{grid-template-columns:1fr;}
  .contact-left{border-radius:0;}
}

@media (max-width:760px){
  .grid-3,.grid-4,.tst-feats,.field-row,.deliver-bene{grid-template-columns:1fr;}
  .stats{grid-template-columns:repeat(2,1fr);gap:18px 0;}
  .stats li:nth-child(3){border-left:0;}
  .hero-strip{grid-template-columns:1fr;gap:18px;}
  .hero-strip li + li{border-left:0;padding-left:0;}
  .case-stats{gap:18px;}
  .case-stats li{padding-right:18px;}
  .deliver-note{display:none;}
  .quote figcaption{flex-wrap:wrap;}
  .stars{margin-left:0;width:100%;}
  .footer-inner{justify-content:center;text-align:center;}
}

@media (max-width:480px){
  .stats{grid-template-columns:1fr;}
  .stats li + li{border-left:0;border-top:1px solid var(--line);}
  .case-stats li:not(:last-child)::after{display:none;}
  .btn{width:100%;justify-content:center;}
  .hero-actions{gap:16px;}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .reveal{opacity:1;transform:none;transition:none;}
  .tst-track,.deliver-stage,.btn,.card,.serve,.step,.trust-card{transition:none;}
}