/* ── Hero height ── */
.hero[data-astro-cid-bbe6dxrz] {
  min-height: 100vh;
}

/* ── Nav: Roboto + larger size ── */
.site-nav-links a,
.site-nav-links .nav-drop-trigger {
  font-family: Roboto, sans-serif !important;
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  letter-spacing: .02em !important;
  opacity: 1 !important;
}
.site-header[data-variant=hero] .site-nav-links a,
.site-header[data-variant=hero] .site-nav-links .nav-drop-trigger {
  color: #000 !important;
}
.site-header[data-variant=default] .site-nav-links a,
.site-header[data-variant=default] .site-nav-links .nav-drop-trigger,
.site-header:not([data-variant=hero]) .site-nav-links a,
.site-header:not([data-variant=hero]) .site-nav-links .nav-drop-trigger {
  color: var(--paper, #f0ede6) !important;
}
.site-nav-links > li > a:hover,
.site-nav-links .nav-drop-trigger:hover,
.site-nav-links .nav-drop-trigger[aria-expanded=true] {
  opacity: .75 !important;
}
.site-nav-links .nav-dropdown-menu a,
.site-nav-links .nav-dropdown-menu a:hover {
  opacity: 1 !important;
  color: #ffffff !important;
}
.site-nav-links .site-nav-cta {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--paper) !important;
}
.site-header[data-variant=hero] .site-nav-links .site-nav-cta.btn-dark {
  color: var(--paper) !important;
}
/* Dropdown items stay white on dark menu — never inherit hero black */
.site-header .nav-dropdown-menu a,
.site-header[data-variant=hero] .nav-dropdown-menu a,
.site-header[data-variant=default] .nav-dropdown-menu a,
.nav-dropdown-menu a {
  font-family: Roboto, sans-serif !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  opacity: 1 !important;
}
@media (max-width: 1024px) {
  .site-nav-links a,
  .site-nav-links .nav-drop-trigger {
    font-size: 1.35rem !important;
    color: var(--paper) !important;
  }
  .site-header[data-variant=hero] .site-nav-links[data-open=true] a,
  .site-header[data-variant=hero] .site-nav-links[data-open=true] .nav-drop-trigger {
    color: var(--paper) !important;
  }
}

/* ── Nav dropdown ── */
.site-nav-links .nav-dropdown {
  position: relative;
  list-style: none;
}
.site-nav-links .nav-dropdown > button,
.site-nav-links .nav-dropdown > a.nav-drop-trigger {
  font-family: Roboto, sans-serif;
  font-size: 1.2rem;
  font-weight: 700;
  color: inherit;
  text-decoration: none;
  opacity: 1;
  letter-spacing: .02em;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  transition: opacity .2s;
}
.site-header[data-variant=hero] .site-nav-links .nav-dropdown > button,
.site-header[data-variant=hero] .site-nav-links .nav-drop-trigger {
  color: var(--ink);
}
.site-nav-links .nav-dropdown > button:hover,
.site-nav-links .nav-dropdown > button[aria-expanded=true],
.site-nav-links .nav-drop-trigger:hover {
  opacity: 1;
}
.nav-drop-caret {
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid currentColor;
  opacity: .7;
}
.nav-dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  min-width: 260px;
  padding: .75rem 0 0; /* bridge gap so hover doesn't break */
  background: transparent;
  border: none;
  z-index: 10050;
  list-style: none;
  margin: 0;
}
.nav-dropdown-menu[data-open=true],
.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown:focus-within .nav-dropdown-menu {
  display: block;
}
.nav-dropdown-menu > li {
  background: #0a0a0a;
  border-left: 1px solid rgba(240, 237, 230, .15);
  border-right: 1px solid rgba(240, 237, 230, .15);
}
.nav-dropdown-menu > li:first-child {
  border-top: 1px solid rgba(240, 237, 230, .15);
  padding-top: .35rem;
}
.nav-dropdown-menu > li:last-child {
  border-bottom: 1px solid rgba(240, 237, 230, .15);
  padding-bottom: .35rem;
}
.nav-dropdown-menu a {
  display: block;
  padding: .65rem 1.15rem;
  font-family: Roboto, sans-serif !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  opacity: 1 !important;
  letter-spacing: .02em;
  text-decoration: none;
  white-space: nowrap;
  background: #0a0a0a;
}
.nav-dropdown-menu a:hover {
  color: #ffffff !important;
  background: rgba(229, 81, 50, .25) !important;
}
.site-header[data-variant=hero] .nav-dropdown-menu > li,
.site-header[data-variant=hero] .nav-dropdown-menu a {
  background: #0a0a0a;
  color: #ffffff !important;
}

@media (max-width: 1024px) {
  .nav-dropdown-menu {
    position: static;
    transform: none;
    border: none;
    border-left: 2px solid rgba(240, 237, 230, .2);
    margin: .5rem 0 0 0;
    padding: 0;
    background: transparent;
    display: none;
  }
  .nav-dropdown-menu > li {
    background: transparent;
    border: none;
    padding: 0;
  }
  .nav-dropdown-menu[data-open=true] {
    display: block;
  }
  .site-header[data-variant=hero] .nav-dropdown-menu a,
  .nav-dropdown-menu a {
    color: #ffffff !important;
    background: transparent !important;
  }
}

/* ── About Us short description ── */
.problem-desc {
  font-size: 1.05rem;
  line-height: 1.65;
  color: rgba(240, 237, 230, .55);
  max-width: 540px;
  margin: 1.25rem 0 0;
}

/* ── Services section — different box style (chamfered cards) ── */
.services-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.75rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
  max-width: min(1400px, 96%);
  width: 100%;
  padding: 0;
  box-sizing: border-box;
  align-self: stretch;
}
.svc-card {
  position: relative;
  background: rgba(240, 237, 230, .04);
  border: 1px solid rgba(240, 237, 230, .12);
  padding: 2.75rem 2.25rem 2.5rem;
  min-height: 240px;
  text-align: center;
  clip-path: polygon(22px 0, 100% 0, 100% 100%, 0 100%, 0 22px);
  transition: border-color .25s, background .25s, transform .25s;
  text-decoration: none;
  color: inherit;
  display: block;
}
.svc-icon {
  width: 48px;
  height: 48px;
  margin: 0 auto 1.25rem;
  color: var(--red);
}
.svc-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}
.svc-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 22px;
  height: 22px;
  border-top: 1px solid rgba(229, 81, 50, .7);
  border-left: 1px solid rgba(229, 81, 50, .7);
  background: linear-gradient(135deg, transparent 49%, rgba(229, 81, 50, .35) 50%);
}
.svc-card:hover {
  background: rgba(240, 237, 230, .07);
  border-color: rgba(229, 81, 50, .45);
  transform: translateY(-2px);
}
.svc-card-label {
  font-family: Chivo Mono, monospace;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--red);
  margin-bottom: 1.25rem;
}
.svc-card h3 {
  font-family: Chalet, Inter, sans-serif;
  font-size: 2rem;
  font-weight: 700;
  color: #ffffff !important;
  margin: 0 0 1.15rem;
  letter-spacing: 4px;
  line-height: 1.2;
  opacity: 1 !important;
  -webkit-text-fill-color: #ffffff;
  text-shadow: none;
  filter: none;
  mix-blend-mode: normal;
}
.svc-card p {
  font-size: 1.2rem;
  line-height: 1.7;
  color: rgba(240, 237, 230, .5);
  margin: 0;
  max-width: 38ch;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 640px) {
  .services-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  .svc-card {
    padding: 2.25rem 1.75rem 2rem;
    min-height: 0;
  }
  .svc-card-label {
    font-size: .85rem;
  }
  .svc-card h3 {
    font-size: 1.55rem;
  }
  .svc-card p {
    font-size: 1.05rem;
  }
}

/* ── Our Features — enhanced cards ── */
.illust-features .features-intro {
  text-align: center;
  max-width: 560px;
  margin: 0 auto 2.5rem;
}
.illust-features .features-intro p {
  color: rgba(240, 237, 230, .5);
  font-size: 1rem;
  line-height: 1.65;
  margin-top: 1rem;
}
.illust-card {
  position: relative;
  transition: background .25s, border-color .25s;
}
.illust-card .feat-icon {
  width: 36px;
  height: 36px;
  margin-bottom: 1rem;
  color: var(--red);
  opacity: .9;
}
.illust-card:hover {
  background: rgba(240, 237, 230, .03);
}
.illust-card:hover .illust-label {
  color: var(--red);
}

/* ── Our Process — attractive step track ── */
.our-process-section {
  position: relative;
  padding: 3.5rem 1.5rem 1.5rem;
  overflow: hidden;
  background:
    radial-gradient(ellipse 70% 50% at 50% 0%, rgba(229, 81, 50, .12), transparent 60%),
    radial-gradient(ellipse 40% 40% at 80% 80%, rgba(229, 81, 50, .05), transparent 50%),
    var(--ink, #0a0a0a);
}
.our-process-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(240, 237, 230, .03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(240, 237, 230, .03) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: radial-gradient(ellipse 80% 70% at 50% 40%, #000 20%, transparent 75%);
  pointer-events: none;
}

/* Homepage Our Process — distinct background (home only) */
main.content #our-process.our-process-section {
  background:
    radial-gradient(ellipse 55% 45% at 15% 20%, rgba(229, 81, 50, .18), transparent 55%),
    radial-gradient(ellipse 50% 40% at 90% 85%, rgba(229, 81, 50, .1), transparent 50%),
    linear-gradient(160deg, #141816 0%, #0c0e0d 45%, #101210 100%) !important;
  border-top: 1px solid rgba(240, 237, 230, .06);
  border-bottom: 1px solid rgba(240, 237, 230, .06);
}
main.content #our-process.our-process-section::before {
  background-image:
    repeating-linear-gradient(
      -32deg,
      transparent 0,
      transparent 11px,
      rgba(240, 237, 230, .035) 11px,
      rgba(240, 237, 230, .035) 12px
    ),
    linear-gradient(rgba(240, 237, 230, .04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(240, 237, 230, .04) 1px, transparent 1px);
  background-size: auto, 56px 56px, 56px 56px;
  mask-image: radial-gradient(ellipse 85% 75% at 50% 45%, #000 15%, transparent 78%);
  opacity: 1;
}
main.content #our-process.our-process-section::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 70% 30%, rgba(229, 81, 50, .08), transparent 28%),
    linear-gradient(90deg, rgba(10, 10, 10, .35), transparent 18%, transparent 82%, rgba(10, 10, 10, .35));
  z-index: 0;
}
main.content #our-process .process-inner {
  z-index: 1;
}
main.content #our-process .process-track {
  background: rgba(10, 10, 10, .45);
  border-color: rgba(240, 237, 230, .14);
  backdrop-filter: blur(6px);
}

.process-inner {
  position: relative;
  z-index: 1;
  max-width: 1100px;
  margin: 0 auto;
}
.process-header {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 3.5rem;
}
.process-badge {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin-bottom: 1.25rem;
  font-family: Chivo Mono, monospace;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--red);
  border: 1px solid rgba(229, 81, 50, .45);
  padding: .4rem .75rem;
}
.process-title {
  font-family: Chalet, Inter, sans-serif;
  font-size: clamp(2rem, 4.5vw, 2rem);
  font-weight: 700;
  color: var(--paper, #f0ede6);
 
  line-height: 1.15;
  margin: 0 0 1rem;
}
.process-lead {
  font-size: 1.05rem;
  line-height: 1.65;
  color: rgba(240, 237, 230, .55);
  margin: 0;
}
.process-track {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  border: 1px solid rgba(240, 237, 230, .1);
  background: rgba(240, 237, 230, .02);
}
.process-step {
  position: relative;
  padding: 2.25rem 1.5rem 2rem;
  border-right: 1px solid rgba(240, 237, 230, .1);
  transition: background .25s;
}
.process-step:last-child {
  border-right: none;
}
.process-step:hover {
  background: rgba(229, 81, 50, .06);
}
.process-step-num {
  font-family: Chivo Mono, monospace;
  font-size: .85rem;
  font-weight: 700;
  letter-spacing: .12em;
  color: var(--red);
  margin-bottom: 1.5rem;
}
.process-step-line {
  position: absolute;
  top: 2.55rem;
  left: calc(1.5rem + 2.2em);
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(229, 81, 50, .7), rgba(240, 237, 230, .12));
}
.process-step:last-child .process-step-line {
  display: none;
}
.process-step h3 {
  font-family: Chalet, Inter, sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--paper, #f0ede6);
  margin: 0 0 .75rem;
 
}
.process-step p {
  font-size: 15px;
  line-height: 1.65;
  color: rgba(240, 237, 230, .5);
  margin: 0;
}
@media (max-width: 1024px) {
  .process-track {
    grid-template-columns: 1fr 1fr;
  }
  .process-step:nth-child(2) {
    border-right: none;
  }
  .process-step:nth-child(1),
  .process-step:nth-child(2) {
    border-bottom: 1px solid rgba(240, 237, 230, .1);
  }
  .process-step-line {
    display: none;
  }
}
@media (max-width: 560px) {
  .our-process-section {
    padding: 4rem 1.25rem;
  }
  .process-track {
    grid-template-columns: 1fr;
  }
  .process-step {
    border-right: none;
    border-bottom: 1px solid rgba(240, 237, 230, .1);
  }
  .process-step:last-child {
    border-bottom: none;
  }
}

/* ── Home blog section ── */
.home-blog-section {
  padding: 5rem 1.5rem;
  background: var(--ink, #0a0a0a);
}
.home-blog-inner {
  max-width: 1140px;
  margin: 0 auto;
}
.home-blog-header {
  text-align: center;
  max-width: 560px;
  margin: 0 auto 3rem;
}
.home-blog-header .badge {
  display: inline-flex;
  margin-bottom: 1rem;
  color: var(--red);
  border: 1px solid rgba(229, 81, 50, .45);
  padding: .35rem .75rem;
  font-family: Chivo Mono, monospace;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.home-blog-header h2 {
  margin: 0 0 .75rem;
  color: var(--paper, #f0ede6);
}
.home-blog-header p {
  margin: 0;
  color: rgba(240, 237, 230, .55);
  line-height: 1.6;
}
.home-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}
.home-blog-card {
  display: flex;
  flex-direction: column;
  gap: .85rem;
  padding: 1.75rem 1.5rem;
  border: 1px solid rgba(240, 237, 230, .12);
  background: linear-gradient(160deg, rgba(229, 81, 50, .06), transparent 50%), rgba(240, 237, 230, .03);
  text-decoration: none;
  color: inherit;
  transition: border-color .25s, transform .25s;
  min-height: 260px;
}
.home-blog-card:hover {
  border-color: rgba(229, 81, 50, .5);
  transform: translateY(-3px);
}
.home-blog-tag {
  font-family: Chivo Mono, monospace;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--red);
}
.home-blog-card h3 {
  font-family: Chalet, Inter, sans-serif;
  font-size: 1.35rem;
  line-height: 1.25;
  margin: 0;
  color: var(--paper, #f0ede6);
  letter-spacing: 2px;
}
.home-blog-card p {
  margin: 0;
  color: rgba(240, 237, 230, .5);
  line-height: 1.6;
  flex: 1;
  font-size: .95rem;
}
.home-blog-more {
  font-family: Chivo Mono, monospace;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .06em;
  color: var(--red);
}
@media (max-width: 1024px) {
  .home-blog-grid { grid-template-columns: 1fr; }
}

/* ═══════════════════════════════════════════
   Uniform section spacing (equal top/bottom)
   ═══════════════════════════════════════════ */
:root {
  --section-pad-y: 5rem;
  --section-pad-x: 1.5rem;
}

/* Neutralize old spacer hacks in the HTML */
main.content > div[style*="padding-bottom"],
main.content > div[style*="padding-top"] {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}
main.content > div[style*="padding"] .section-divider {
  display: none !important;
}

/* Homepage major sections — same equal padding */
.problem-section,
.signal-section.problem-section,
.offline-section,
.offline-section.three-col,
.our-process-section,
.illust-features,
.stats-strip,
.faq-section,
.home-blog-section,
.cta-section,
.promise-section,
.terminal-section {
  padding-top: var(--section-pad-y) !important;
  padding-bottom: var(--section-pad-y) !important;
  box-sizing: border-box;
}

/* Keep horizontal padding where sections already use it */
.our-process-section,
.home-blog-section {
  padding-left: var(--section-pad-x) !important;
  padding-right: var(--section-pad-x) !important;
}

/* CTA: equal top/bottom (was 12rem / 16rem) + tighter content */
.cta-section[data-astro-cid-ne56ttnc] {
  padding: var(--section-pad-y) var(--section-pad-x) !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.cta-section .cta-container,
.cta-container[data-astro-cid-ne56ttnc] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 auto;
}
.cta-section .cta-logo-wrap,
.cta-logo-wrap[data-astro-cid-ne56ttnc] {
  margin: 0 auto !important;
}
.cta-section .cta-heading-wrap,
.cta-heading-wrap[data-astro-cid-ne56ttnc] {
  margin: 0 !important;
}
.cta-section .cta-btn-wrap,
.cta-btn-wrap[data-astro-cid-ne56ttnc] {
  margin: 0 !important;
}
.cta-section .cta-fine-print,
.cta-fine-print[data-astro-cid-ne56ttnc] {
  margin: 0 !important;
}
.cta-section h2.glitch-text,
.cta-section .glitch-text {
  margin: 0 !important;
}

/* FAQ was padding-bottom: 0 — force equal */
.faq-section[data-astro-cid-al2ca2vr] {
  padding: var(--section-pad-y) 0 !important;
}

/* Services / offline intro */
.offline-section[data-astro-cid-vn4tu6jo],
section#services.offline-section {
  padding: var(--section-pad-y) var(--section-pad-x) !important;
}

/* Stats strip — equal 4-column alignment */
.stats-strip,
.stats-strip[data-astro-cid-ayriwarr],
section.stats-strip {
  display: block !important;
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: var(--sec-y, 3.5rem) 0 !important;
  border: none !important;
  box-sizing: border-box !important;
}
.stats-strip-container,
.stats-strip .container {
  width: min(1100px, calc(100% - 3rem)) !important;
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.stats-title {
  margin: 0 0 1.75rem !important;
  text-align: center;
  font-size: clamp(1.8rem, 4vw, 2.6rem);
  line-height: 1.15;
  letter-spacing: -.02em;
}
.stats-strip-inner {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border-top: 1px solid var(--border, rgba(240, 237, 230, .14));
  border-bottom: 1px solid var(--border, rgba(240, 237, 230, .14));
  box-sizing: border-box;
}
.stats-strip .stat-box,
.stat-box[data-astro-cid-ayriwarr] {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: .75rem !important;
  min-width: 0 !important;
  width: 100% !important;
  padding: 1.75rem !important;
  border-right: 1px solid var(--border, rgba(240, 237, 230, .14)) !important;
  border-bottom: none !important;
  box-sizing: border-box !important;
}
.stats-strip .stat-box:last-child,
.stats-strip .stat-box[data-astro-cid-ayriwarr]:last-child {
  border-right: none !important;
}
.stats-strip .stat-label,
.stats-strip .stat-label[data-astro-cid-ayriwarr] {
  display: block;
  width: 100%;
  color: var(--red, #ed462d);
  letter-spacing: .12em;
  text-transform: uppercase;
}
.stats-strip .stat-value,
.stats-strip .stat-value[data-astro-cid-ayriwarr] {
  display: block;
  width: 100%;
  font-family: Chalet, Inter, sans-serif;
  font-size: clamp(2rem, 3vw, 2.5rem) !important;
  line-height: 1 !important;
  min-height: 1em;
}
.stats-strip .stat-note,
.stats-strip .stat-note[data-astro-cid-ayriwarr] {
  display: block;
  width: 100%;
  min-height: 0;
  line-height: 1.5;
  font-size: 15px;
  font-family: Roboto, Instrument Sans, system-ui, sans-serif;
  letter-spacing: 0;
  word-spacing: normal;
  overflow-wrap: break-word;
  word-break: normal;
  text-shadow: none;
  filter: none;
}
.stats-strip .stat-label,
.stats-strip .stat-value,
.stats-strip .stat-note {
  text-shadow: none !important;
  filter: none !important;
}
@media (max-width: 1024px) {
  .stats-strip-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .stats-strip .stat-box {
    border-right: 1px solid var(--border, rgba(240, 237, 230, .14)) !important;
  }
  .stats-strip .stat-box:nth-child(2n) {
    border-right: none !important;
  }
  .stats-strip .stat-box:nth-child(-n+2) {
    border-bottom: 1px solid var(--border, rgba(240, 237, 230, .14)) !important;
  }
}
@media (max-width: 768px) {
  .stats-strip,
  .stats-strip[data-astro-cid-ayriwarr],
  section.stats-strip {
    padding: 2rem 0 !important;
  }
  .stats-strip-container,
  .stats-strip .container {
    width: min(1100px, calc(100% - 3rem)) !important;
  }
  .stats-strip-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .stats-strip .stat-box,
  .stat-box[data-astro-cid-ayriwarr] {
    border-right: 1px solid var(--border, rgba(240, 237, 230, .14)) !important;
    border-bottom: 1px solid var(--border, rgba(240, 237, 230, .14)) !important;
    padding: 1.5rem !important;
    gap: .55rem !important;
  }
  .stats-strip .stat-box:nth-child(2n) {
    border-right: none !important;
  }
  .stats-strip .stat-box:nth-child(n+3),
  .stats-strip .stat-box:last-child {
    border-bottom: none !important;
  }
  .stats-strip .stat-label,
  .stats-strip .stat-label[data-astro-cid-ayriwarr] {
    letter-spacing: .08em;
    font-size: .68rem;
  }
  .stats-strip .stat-value,
  .stats-strip .stat-value[data-astro-cid-ayriwarr] {
    font-size: 1.65rem !important;
  }
  .stats-strip .stat-note,
  .stats-strip .stat-note[data-astro-cid-ayriwarr] {
    font-size: .68rem;
    line-height: 1.4;
    white-space: normal !important;
    overflow: visible !important;
  }
  .stats-strip .stat-box {
    overflow: visible !important;
  }
}

/* About/problem outer — add equal section padding around the box */
.problem-section[data-astro-cid-oo6sugl5],
.signal-section.problem-section,
#about-us {
  padding: 2rem var(--section-pad-x, 1.5rem) !important;
}

/* Section dividers — no extra visual gap stacking */
.section-divider {
  margin: 0 !important;
  height: 0 !important;
  border: none !important;
  opacity: 0 !important;
  pointer-events: none;
}

/* Features */
.illust-features[data-astro-cid-l5aavh2a] {
  padding: var(--section-pad-y) 0 !important;
}

/* Process + blog already covered; lock values */
.our-process-section {
  padding: 3.5rem 1.5rem 1.5rem !important;
}
.home-blog-section {
  padding: var(--section-pad-y) var(--section-pad-x) !important;
}

/* Footer — match rhythm (legacy); site-footer uses its own spacing */
footer[data-astro-cid-sz7xmlte]:not(.site-footer) {
  padding-top: var(--section-pad-y) !important;
  padding-bottom: var(--section-pad-y) !important;
}
footer.site-footer[data-astro-cid-sz7xmlte] {
  padding: 3.5rem 2rem 0 !important;
  background: #2a2e2b !important;
}

@media (max-width: 768px) {
  :root {
    --section-pad-y: 4rem;
    --section-pad-x: 1.25rem;
  }
}

/* Plain white text — kill scanline/noise overlays on content */
.scanlines,
.noise,
.rgb-fringe {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* Headings + service titles: solid plain white */
.svc-card h3,
.intro-title,
.process-title,
.section-title,
.home-blog-card h3,
.faq-title,
.display,
.problem-headline,
.cta-section h2,
.glitch-text {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
}

/* About Us — tighter inner padding */
.problem-top[data-astro-cid-oo6sugl5],
#about-us .problem-top {
  padding: 1.5rem 1.5rem 1.25rem !important;
}
#about-us .problem-card,
.problem-card[data-astro-cid-oo6sugl5] {
  padding: 1.35rem !important;
}

/* Services headline — keep exactly 2 lines */
.intro-headline-wrap[data-astro-cid-vn4tu6jo],
.offline-section .intro-headline-wrap {
  max-width: 920px !important;
}
.intro-title[data-astro-cid-vn4tu6jo],
.offline-section .intro-title {
  white-space: normal !important;
}
.intro-title-line {
  white-space: nowrap;
  display: inline-block;
}
@media (max-width: 640px) {
  .intro-title-line {
    white-space: normal;
  }
}

/* Our Services — match About Us spacing */
section.offline-section,
section#services.offline-section,
section[data-astro-cid-vn4tu6jo],
.offline-section.three-col {
  padding: 2rem 1.5rem !important;
}

/* CTA vortex — softer background */
.cta-vortex-wrap,
.cta-vortex-wrap[data-astro-cid-ne56ttnc] {
  opacity: .35 !important;
}
.cta-vortex-img,
.cta-vortex-img[data-astro-cid-ne56ttnc] {
  opacity: 1;
}

/* CTA — breathing room above logo */
.cta-section,
.cta-section[data-astro-cid-ne56ttnc] {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}
.cta-section .cta-logo-wrap,
.cta-logo-wrap[data-astro-cid-ne56ttnc] {
  margin: 0 auto .5rem !important;
}
.cta-section h2,
.cta-section[data-astro-cid-ne56ttnc] h2[data-astro-cid-ne56ttnc],
.cta-section .glitch-text {
  margin-bottom: 1rem !important;
}

/* ── Site footer (4-column, all pages) ── */
footer.site-footer,
footer[data-astro-cid-sz7xmlte].site-footer,
.site-footer {
  background: #2a2e2b !important;
  border-top: none !important;
  padding: 3.5rem 2rem 0 !important;
  position: relative;
  overflow: hidden;
  z-index: 100;
  color: #f0ede6;
}
.site-footer-inner {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
  box-sizing: border-box;
}
.site-footer-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1.1fr;
  gap: 2.5rem 2rem;
  padding-bottom: 3rem;
}
.site-footer-brand .site-footer-logo img,
.site-footer-brand img {
  height: 46px;
  width: auto;
  max-width: 180px;
  filter: invert(1);
  display: block;
}
.site-footer-brand p {
  margin: 1.15rem 0 0;
  color: rgba(240, 237, 230, .72);
  font-size: .92rem;
  line-height: 1.65;
  max-width: 280px;
}
.site-footer-col h3 {
  margin: 0 0 1.25rem;
  font-family: Roboto, Chivo Mono, sans-serif;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #e55132;
}
.site-footer-col ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.site-footer-col li {
  margin: 0 0 .65rem;
}
.site-footer-col a {
  color: rgba(240, 237, 230, .88);
  text-decoration: none;
  font-size: .92rem;
  transition: color .2s;
}
.site-footer-col a:hover {
  color: #e55132;
}
.site-footer-contact p {
  margin: 0 0 .4rem;
  color: rgba(240, 237, 230, .88);
  font-size: .92rem;
  line-height: 1.55;
}
.site-footer-contact a {
  color: rgba(240, 237, 230, .88);
  text-decoration: none;
}
.site-footer-contact a:hover {
  color: #e55132;
}
.site-footer-social {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  margin-top: 1.25rem;
}
.site-footer-social a {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #1f2320;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #f0ede6;
  transition: background .2s, color .2s;
}
.site-footer-social a:hover {
  background: #e55132;
  color: #0a0a0a;
}
.site-footer-social svg {
  width: 16px;
  height: 16px;
  display: block;
}
.site-footer-bottom {
  border-top: 1px solid rgba(240, 237, 230, .12);
  padding: 1.35rem 0 1.75rem;
}
.site-footer-bottom span {
  color: rgba(240, 237, 230, .45);
  font-size: .8rem;
  letter-spacing: .02em;
}
.site-footer .footer-watermark {
  display: none !important;
}
@media (max-width: 1024px) {
  .site-footer-grid {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 560px) {
  .site-footer-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .site-footer-brand p {
    max-width: none;
  }
}

/* ── About Us surveillance eye — stronger digital animation ── */
.problem-eye-wrapper[data-astro-cid-oo6sugl5] {
  position: relative;
}
.problem-eye-wrapper[data-astro-cid-oo6sugl5]::before {
  content: "";
  position: absolute;
  inset: 8%;
  border-radius: 50%;
  background: conic-gradient(from 0deg, transparent 0deg, transparent 300deg, rgba(229, 81, 50, .28) 340deg, transparent 360deg);
  animation: eyeSweep 4s linear infinite;
  pointer-events: none;
  z-index: 1;
  mix-blend-mode: screen;
}
.problem-eye-wrapper[data-astro-cid-oo6sugl5]::after {
  content: "";
  position: absolute;
  inset: 18%;
  border-radius: 50%;
  border: 1px solid rgba(229, 81, 50, .35);
  animation: eyeRingPulse 2.8s ease-out infinite;
  pointer-events: none;
  z-index: 1;
}
.problem-eye-svg[data-astro-cid-oo6sugl5] {
  position: relative;
  z-index: 2;
}
.eye-linework[data-astro-cid-oo6sugl5] {
  opacity: .5 !important;
  transition: opacity .25s;
}
.problem-eye-col[data-astro-cid-oo6sugl5]:hover .eye-linework[data-astro-cid-oo6sugl5] {
  opacity: .7 !important;
}
#eye-pupil {
  filter: drop-shadow(0 0 8px rgba(237, 70, 45, .85));
  animation: eyePupilGlow 1.8s ease-in-out infinite;
}
.eye-monitor-label {
  animation: eyeMonitorBlink 1.6s steps(1, end) infinite;
}
@keyframes eyeSweep {
  to { transform: rotate(360deg); }
}
@keyframes eyeRingPulse {
  0% { transform: scale(.85); opacity: .8; }
  70% { transform: scale(1.25); opacity: 0; }
  100% { transform: scale(1.25); opacity: 0; }
}
@keyframes eyePupilGlow {
  0%, 100% { filter: drop-shadow(0 0 6px rgba(237, 70, 45, .7)); }
  50% { filter: drop-shadow(0 0 14px rgba(237, 70, 45, 1)); }
}
@keyframes eyeMonitorBlink {
  0%, 70% { opacity: .7; }
  71%, 100% { opacity: .15; }
}

/* Extra line breaks only on small screens */
br.m-break { display: none; }

/* Homepage mobile layout */
@media (max-width: 768px) {
  .hero[data-astro-cid-bbe6dxrz] {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    min-height: auto;
  }
  .hero-content[data-astro-cid-bbe6dxrz] {
    width: 100% !important;
    max-width: 100% !important;
    padding: 1.5rem 1.25rem 2rem !important;
    box-sizing: border-box !important;
  }
  .hero[data-astro-cid-bbe6dxrz] h1[data-astro-cid-bbe6dxrz] {
    font-size: clamp(1.7rem, 8.4vw, 2.15rem) !important;
    line-height: 1.08 !important;
    max-width: 100% !important;
    margin-bottom: 1.25rem !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }
  br.m-break {
    display: block;
  }
  .hero-sub[data-astro-cid-bbe6dxrz] {
    font-size: 1rem !important;
    margin-bottom: 1.5rem !important;
    max-width: 100% !important;
  }
  .hero-actions[data-astro-cid-bbe6dxrz] {
    flex-direction: column;
    width: 100%;
    gap: .75rem;
  }
  .hero-actions[data-astro-cid-bbe6dxrz] .btn-chamfer {
    width: 100%;
    justify-content: center;
    box-sizing: border-box;
  }
  .hero-watermark {
    max-width: 55%;
    height: auto;
  }
  .problem-headline[data-astro-cid-oo6sugl5],
  .intro-title[data-astro-cid-vn4tu6jo],
  .process-title,
  .section-title,
  .svc-card h3 {
    letter-spacing: 0 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
    max-width: 100%;
  }
  .problem-headline[data-astro-cid-oo6sugl5],
  .intro-title[data-astro-cid-vn4tu6jo],
  .process-title,
  .section-title {
    font-size: clamp(1.55rem, 7.4vw, 2.05rem) !important;
    line-height: 1.15 !important;
  }
  .intro-title-line {
    white-space: normal !important;
    display: inline !important;
  }
  .process-header {
    margin-bottom: 2rem;
  }
  .our-process-section {
    padding: 2.5rem 1.25rem !important;
  }
  .illust-grid[data-astro-cid-l5aavh2a] {
    margin-top: 2rem !important;
    gap: 1rem !important;
  }
}

/* Purdie Media mark — replaces old Rig SVG */
img.hero-watermark {
  object-fit: contain;
}
img.cta-oversized-svg {
  object-fit: contain;
  filter: invert(1);
}
img.cta-logo,
img.cta-logo[data-astro-cid-ne56ttnc] {
  height: 64px;
  width: auto;
  object-fit: contain;
  filter: invert(1);
}
img.cta-logo-glow,
img.cta-logo-glow[data-astro-cid-ne56ttnc] {
  height: 64px;
  width: auto;
  object-fit: contain;
  filter: invert(1) blur(8px) !important;
  opacity: .55;
}
