/* ============================================================
   V7 — full-bleed image heroes, visual process, launch offer,
   expanded testimonials and image-rich About page.
   ============================================================ */

:root{
  --v7-ink:#061124;
  --v7-blue:#0877f9;
  --v7-cyan:#18d4da;
  --v7-violet:#7757ff;
  --v7-lime:#c8ff65;
  --v7-warm:#ffb15a;
}

/* ---------- Full-width photographic internal heroes ---------- */
.hero--page-image,
.about-hero-v5,
.services-hero-v5,
.service-detail-hero-v5,
.portfolio-hero-v6,
.case-hero-v2,
.nf-v6{
  position:relative;
  isolation:isolate;
  min-height:620px;
  padding:0!important;
  overflow:hidden;
  background:#061124!important;
}

.hero--page-image::after,
.about-hero-v5::before,
.services-hero-v5::before,
.service-detail-hero-v5::before,
.portfolio-hero-v6::before,
.case-hero-v2::before,
.nf-v6::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(2,9,22,.92) 0%,rgba(2,9,22,.76) 38%,rgba(2,9,22,.28) 72%,rgba(2,9,22,.36) 100%),
    linear-gradient(0deg,rgba(2,9,22,.88) 0%,transparent 58%);
}

.hero--page-image::before,
.about-hero-v5::after,
.services-hero-v5::after,
.service-detail-hero-v5::after,
.portfolio-hero-v6::after,
.case-hero-v2::after,
.nf-v6::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:6px;
  z-index:5;
  background:linear-gradient(90deg,var(--v7-blue),var(--v7-violet),var(--v6-pink),var(--v6-orange));
}

.page-hero-layout-v6,
.about-hero-grid,
.services-hero-layout,
.service-detail-hero-grid,
.portfolio-hero-grid,
.case-hero-grid,
.nf-grid-v6{
  position:relative;
  z-index:auto;
  min-height:620px;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:180px;
  padding-bottom:82px;
}

.hero--page-image .hero-copy,
.hero--page-image .article,
.about-hero-copy,
.services-hero-copy,
.service-detail-copy,
.portfolio-hero-grid>div:first-child,
.case-hero-copy,
.nf-copy-v6{
  position:relative;
  z-index:4;
  width:min(860px,78%);
  max-width:860px!important;
}

.hero--page-image h1,
.about-hero-v5 h1,
.services-hero-v5 h1,
.service-detail-hero-v5 h1,
.portfolio-hero-v6 h1,
.case-hero-v2 h1{
  max-width:14ch!important;
  margin:18px 0 24px;
  color:#fff;
  font-size:clamp(3rem,6vw,6rem)!important;
  line-height:.96!important;
  letter-spacing:-.055em;
  text-wrap:balance;
}

.article-hero-v6 h1{max-width:22ch!important;font-size:clamp(2.65rem,5vw,5.2rem)!important}
.hero--page-image .lead,
.about-hero-v5 .lead,
.services-hero-v5 .lead,
.service-detail-hero-v5 .lead,
.portfolio-hero-v6 .lead,
.case-hero-v2 .lead,
.case-hero-v2 .case-hero-sub,
.nf-v6 .lead{max-width:780px;color:rgba(255,255,255,.9)!important;text-shadow:0 2px 20px rgba(0,0,0,.35)}

.hero--page-image .eyebrow,
.about-hero-v5 .eyebrow,
.services-hero-v5 .eyebrow,
.service-detail-hero-v5 .eyebrow,
.portfolio-hero-v6 .eyebrow,
.case-hero-v2 .eyebrow{color:#87efff}

.page-hero-image-v6,
.about-header-image-v6,
.services-header-image-v6,
.service-header-image-v6,
.portfolio-header-image-v6,
.case-browser{
  position:absolute!important;
  left:50%!important;
  top:0!important;
  width:100vw!important;
  height:100%!important;
  min-height:0!important;
  margin:0 0 0 -50vw!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  transform:none!important;
  overflow:hidden!important;
  z-index:0!important;
  background:#07101f!important;
}

.page-hero-image-v6::before,
.page-hero-image-v6::after,
.services-header-image-v6::after,
.service-header-image-v6::before,
.portfolio-header-image-v6::before{display:none!important}

.page-hero-image-v6 img,
.about-header-photo-v6,
.services-header-image-v6>img,
.service-header-photo-v6,
.portfolio-header-image-v6 img,
.case-browser-screen,
.case-browser-screen img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
  filter:saturate(1.12) contrast(1.04)!important;
  transform:none!important;
}

.portfolio-header-image-v6 img,.case-browser-screen img{object-position:top center!important}
.page-hero-image-v6 figcaption,
.about-header-logo-v6,
.about-header-image-v6 .about-global-grid,
.about-header-image-v6 .global-node,
.services-header-image-v6>figcaption,
.services-header-image-v6 .services-hero-cap-grid-v5,
.service-header-overlay-v6,
.service-header-image-v6 .service-visual-caption-v5,
.portfolio-header-image-v6 figcaption,
.case-browser-bar{display:none!important}

.page-hero-color,.service-detail-glow,.case-hero-glow,.about-hero-glow,.services-hero-grid-bg{display:none!important}
.hero--page-image .hero-actions,
.about-hero-v5 .hero-actions,
.services-hero-v5 .hero-actions,
.service-detail-hero-v5 .hero-actions,
.portfolio-hero-v6 .hero-actions,
.case-hero-v2 .hero-actions{justify-content:flex-start}
.service-hero-tech,.case-tag-row{position:relative;z-index:4}

/* ---------- Homepage process: large image + six compact stages ---------- */
.home-process-v7{padding-top:110px;padding-bottom:110px}
.home-process-layout-v7{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.55fr);gap:28px;align-items:stretch;margin-top:48px}
.home-process-media-v7{position:relative;min-height:650px;margin:0;overflow:hidden;border-radius:30px;background:#0a1730;box-shadow:0 28px 70px rgba(24,47,92,.18)}
.home-process-media-v7::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,10,24,.92),rgba(3,10,24,.08) 65%)}
.home-process-media-v7 img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(1.14);transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.home-process-media-v7:hover img{transform:scale(1.045)}
.home-process-media-copy-v7{position:absolute;z-index:2;left:30px;right:30px;bottom:30px;display:grid;gap:8px;color:#fff}
.home-process-media-copy-v7 span{font:600 .72rem var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#8ff5ff}
.home-process-media-copy-v7 b{font:600 clamp(1.6rem,2.5vw,2.5rem) var(--font-display);line-height:1.06}
.home-process-badge-v7{position:absolute;z-index:3;right:22px;top:22px;display:grid;place-items:center;width:104px;height:104px;border:1px solid rgba(255,255,255,.28);border-radius:50%;color:#fff;background:rgba(5,15,35,.66);backdrop-filter:blur(14px);box-shadow:0 16px 36px rgba(0,0,0,.22)}
.home-process-badge-v7 strong{font:700 2rem var(--font-display);line-height:1;color:var(--v7-lime)}
.home-process-badge-v7 span{font:600 .63rem var(--font-mono);text-transform:uppercase;letter-spacing:.08em}
.home-process-steps-v7{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
.home-process-steps-v7 .step{min-width:0;padding:28px!important;border:1px solid #dfe7f4;border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 14px 34px rgba(23,54,105,.08)}
.home-process-steps-v7 .step:nth-child(3n+1){border-top:4px solid var(--v7-violet)}
.home-process-steps-v7 .step:nth-child(3n+2){border-top:4px solid var(--v7-cyan)}
.home-process-steps-v7 .step:nth-child(3n){border-top:4px solid var(--v6-orange)}
.home-process-steps-v7 .step .n{display:inline-grid;place-items:center;width:38px;height:38px;margin-bottom:20px;border-radius:11px;color:#fff;background:var(--v7-ink);font-size:.72rem}
.home-process-steps-v7 .step h3{margin-bottom:10px;font-size:1.12rem}
.home-process-steps-v7 .step p{font-size:.92rem;line-height:1.62}

/* ---------- Homepage launch offer ---------- */
.offer-v7{padding:115px 0;background:radial-gradient(700px circle at 5% 15%,rgba(119,87,255,.13),transparent 58%),radial-gradient(700px circle at 96% 85%,rgba(24,212,218,.15),transparent 58%),#f6f9ff}
.offer-shell-v7{display:grid;grid-template-columns:minmax(0,.9fr) minmax(540px,1.1fr);min-height:690px;border:1px solid rgba(28,53,96,.12);border-radius:38px;overflow:hidden;background:#fff;box-shadow:0 38px 100px rgba(23,45,88,.17)}
.offer-media-v7{position:relative;min-height:690px;overflow:hidden;background:#071326}
.offer-media-v7>img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(1.16) contrast(1.03);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.offer-shell-v7:hover .offer-media-v7>img{transform:scale(1.035)}
.offer-media-scrim{position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,10,25,.96),rgba(3,10,25,.12) 72%),linear-gradient(90deg,transparent,rgba(3,10,25,.35))}
.offer-media-copy-v7{position:absolute;z-index:2;left:42px;right:42px;bottom:42px;color:#fff}
.offer-media-copy-v7 .eyebrow{color:#8ff5ff}
.offer-media-copy-v7 h2{max-width:11ch;margin:16px 0;font-size:clamp(2.55rem,4.3vw,4.7rem);line-height:.98;letter-spacing:-.05em;color:#fff}
.offer-media-copy-v7 p{max-width:480px;color:rgba(255,255,255,.82)}
.offer-proof-v7{position:absolute;z-index:3;left:30px;top:30px;display:grid;grid-template-columns:44px 1fr;column-gap:12px;align-items:center;padding:15px 18px;border:1px solid rgba(255,255,255,.3);border-radius:18px;color:#fff;background:rgba(4,14,32,.68);backdrop-filter:blur(14px);box-shadow:0 18px 44px rgba(0,0,0,.22)}
.offer-proof-v7>span{grid-row:1/3;display:grid;place-items:center;width:44px;height:44px;border-radius:13px;color:#11220c;background:var(--v7-lime);font-weight:900}
.offer-proof-v7 b{font-size:.9rem}.offer-proof-v7 small{color:rgba(255,255,255,.68);font-size:.68rem}
.offer-card-v7{display:flex;flex-direction:column;justify-content:center;padding:48px 52px;color:#142241;background:radial-gradient(420px circle at 100% 0%,rgba(24,212,218,.10),transparent 58%),#fff}
.offer-topline-v7{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:20px;font:600 .68rem var(--font-mono);text-transform:uppercase;letter-spacing:.08em}
.offer-topline-v7 span{color:#175ee5}.offer-topline-v7 b{color:#60708a}
.offer-topline-v7 i{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:#28c978;box-shadow:0 0 0 6px rgba(40,201,120,.12);animation:v7Pulse 1.8s ease-in-out infinite}
.offer-card-v7>h3{max-width:17ch;margin:0 0 16px;font-size:clamp(2rem,3.1vw,3.25rem);line-height:1.02;letter-spacing:-.04em;color:#071a3e}
.offer-lead-v7{margin:0 0 25px;color:#52627c;line-height:1.72}
.offer-countdown-v7{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:10px}
.offer-countdown-v7>div{display:grid;place-items:center;min-height:85px;border:1px solid #dfe7f3;border-radius:16px;background:linear-gradient(145deg,#f9fbff,#eef4ff)}
.offer-countdown-v7 strong{font:700 clamp(1.45rem,2.3vw,2.2rem) var(--font-display);line-height:1;color:#0a2453;font-variant-numeric:tabular-nums}
.offer-countdown-v7 span{margin-top:7px;color:#708099;font:600 .58rem var(--font-mono);text-transform:uppercase;letter-spacing:.09em}
.offer-deadline-v7{margin:0 0 22px;text-align:right;color:#8290a6;font-size:.72rem}.offer-deadline-v7 strong{color:#4f607b}
.offer-benefits-v7{display:grid;gap:10px}
.offer-benefits-v7>span{display:grid;grid-template-columns:38px 1fr;column-gap:12px;align-items:center;padding:13px 15px;border:1px solid #e3eaf5;border-radius:15px;background:#fbfcff}
.offer-benefits-v7 i{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border-radius:11px;color:#185cdc;background:#eaf2ff;font:700 .7rem var(--font-mono);font-style:normal}
.offer-benefits-v7 b{font-size:.88rem;color:#132a51}.offer-benefits-v7 small{margin-top:3px;color:#728099;font-size:.68rem;line-height:1.45}
.offer-benefits-v7 .offer-benefit-featured-v7{border-color:rgba(88,166,48,.35);background:linear-gradient(135deg,#f6ffe9,#efffe8)}
.offer-benefits-v7 .offer-benefit-featured-v7 i{color:#17380c;background:var(--v7-lime);font-size:1.2rem}
.offer-actions-v7{display:flex;align-items:center;gap:18px;margin-top:22px}
.offer-call-v7{color:#28517f;font-weight:700;font-size:.82rem;text-decoration:underline;text-underline-offset:4px}
.offer-terms-v7{margin:15px 0 0;color:#8a97aa;font-size:.66rem;line-height:1.5}
@keyframes v7Pulse{50%{opacity:.5;transform:scale(.78)}}

/* ---------- Nine-review grid ---------- */
.tcard{height:100%;border-top:4px solid var(--v7-blue);background:linear-gradient(155deg,#fff 65%,rgba(8,119,249,.055))}
.tcard:nth-child(3n+2){border-top-color:var(--v7-cyan);background:linear-gradient(155deg,#fff 65%,rgba(24,212,218,.07))}
.tcard:nth-child(3n){border-top-color:var(--v6-orange);background:linear-gradient(155deg,#fff 65%,rgba(255,138,52,.07))}
.tcard blockquote p{line-height:1.68}
.tcard .stars{letter-spacing:.12em;color:#ffad22}

/* ---------- About page visual story ---------- */
.about-gallery-v7{padding-top:110px;padding-bottom:120px}
.about-gallery-grid-v7{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:repeat(2,270px);gap:18px;margin-top:48px}
.about-gallery-grid-v7 figure{position:relative;margin:0;overflow:hidden;border-radius:24px;background:#0a1831;box-shadow:0 18px 45px rgba(25,53,98,.13)}
.about-gallery-main-v7{grid-row:1/3}
.about-gallery-grid-v7 img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(1.12);transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .4s ease}
.about-gallery-grid-v7 figure:hover img{transform:scale(1.055);filter:saturate(1.25)}
.about-gallery-grid-v7 figcaption{position:absolute;z-index:2;left:15px;right:15px;bottom:15px;display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid rgba(255,255,255,.22);border-radius:14px;color:#fff;background:rgba(3,11,27,.72);backdrop-filter:blur(12px)}
.about-gallery-grid-v7 figcaption span{color:#87efff;font:600 .65rem var(--font-mono)}
.about-gallery-grid-v7 figcaption b{font-size:.79rem}

@media(max-width:1050px){
  .home-process-layout-v7{grid-template-columns:1fr}
  .home-process-media-v7{min-height:480px}
  .offer-shell-v7{grid-template-columns:1fr}
  .offer-media-v7{min-height:560px}
  .about-gallery-grid-v7{grid-template-columns:1fr 1fr;grid-template-rows:430px 250px 250px}
  .about-gallery-main-v7{grid-column:1/3;grid-row:auto}
}

@media(max-width:760px){
  .hero--page-image,.about-hero-v5,.services-hero-v5,.service-detail-hero-v5,.portfolio-hero-v6,.case-hero-v2,.nf-v6{min-height:560px}
  .page-hero-layout-v6,.about-hero-grid,.services-hero-layout,.service-detail-hero-grid,.portfolio-hero-grid,.case-hero-grid,.nf-grid-v6{min-height:560px;padding-top:135px;padding-bottom:62px}
  .hero--page-image .hero-copy,.hero--page-image .article,.about-hero-copy,.services-hero-copy,.service-detail-copy,.portfolio-hero-grid>div:first-child,.case-hero-copy,.nf-copy-v6{width:100%}
  .hero--page-image h1,.about-hero-v5 h1,.services-hero-v5 h1,.service-detail-hero-v5 h1,.portfolio-hero-v6 h1,.case-hero-v2 h1{font-size:clamp(2.55rem,12vw,4.25rem)!important}
  .hero--page-image::after,.about-hero-v5::before,.services-hero-v5::before,.service-detail-hero-v5::before,.portfolio-hero-v6::before,.case-hero-v2::before,.nf-v6::before{background:linear-gradient(90deg,rgba(2,9,22,.9),rgba(2,9,22,.58)),linear-gradient(0deg,rgba(2,9,22,.94),transparent 70%)}
  .home-process-v7,.offer-v7,.about-gallery-v7{padding-top:82px;padding-bottom:82px}
  .home-process-media-v7{min-height:420px;border-radius:23px}
  .home-process-steps-v7{grid-template-columns:1fr!important}
  .offer-shell-v7{border-radius:26px}
  .offer-media-v7{min-height:510px}
  .offer-media-copy-v7{left:25px;right:25px;bottom:27px}
  .offer-proof-v7{left:18px;right:18px;top:18px}
  .offer-card-v7{padding:34px 22px}
  .offer-countdown-v7{gap:6px}
  .offer-countdown-v7>div{min-height:74px;border-radius:12px}
  .offer-actions-v7{align-items:stretch;flex-direction:column}
  .offer-call-v7{text-align:center}
  .about-gallery-grid-v7{grid-template-columns:1fr;grid-template-rows:repeat(5,270px)}
  .about-gallery-main-v7{grid-column:auto}
}

@media(prefers-reduced-motion:reduce){
  .offer-topline-v7 i{animation:none}
  .offer-media-v7>img,.home-process-media-v7 img,.about-gallery-grid-v7 img{transition:none}
}
