:root {
  --bg: #07111f;
  --bg-soft: #0d172a;
  --surface: #ffffff;
  --surface-2: #f5f8fc;
  --surface-3: #eaf0f8;
  --text: #0f172a;
  --text-soft: #475569;
  --line: rgba(15, 23, 42, 0.1);
  --line-strong: rgba(255, 255, 255, 0.12);
  --primary: #2563eb;
  --primary-2: #1d4ed8;
  --accent: #38bdf8;
  --success: #10b981;
  --shadow-lg: 0 24px 70px rgba(6, 18, 40, 0.18);
  --shadow-md: 0 12px 40px rgba(9, 20, 44, 0.1);
  --radius-xl: 28px;
  --radius-lg: 22px;
  --radius-md: 16px;
  --radius-sm: 12px;
  --container: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  color: var(--text);
  background:
    radial-gradient(circle at top left, rgba(56, 189, 248, 0.16), transparent 22%),
    radial-gradient(circle at top right, rgba(37, 99, 235, 0.18), transparent 20%),
    linear-gradient(180deg, #f8fbff 0%, #f3f7fc 100%);
  line-height: 1.6;
}

a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button { font: inherit; }

.skip-link {
  position: absolute;
  left: -999px;
  top: 1rem;
  background: #fff;
  padding: .75rem 1rem;
  border-radius: 999px;
}
.skip-link:focus { left: 1rem; z-index: 1000; }

.container {
  width: min(var(--container), calc(100% - 2rem));
  margin: 0 auto;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  backdrop-filter: blur(14px);
  background: rgba(7, 17, 31, 0.76);
  border-bottom: 1px solid rgba(255,255,255,0.08);
}

.nav-shell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 84px;
}

.brand {
  display: flex;
  align-items: center;
  gap: .85rem;
  color: #fff;
}
.brand-logo {
  width: 176px;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 10px 22px rgba(0, 0, 0, 0.22));
  flex-shrink: 0;
}
.brand-text {
  display: none;
  line-height: 1.1;
}
.brand-text strong { font-size: .98rem; }
.brand-text span { font-size: .78rem; color: rgba(255,255,255,.7); margin-top: .18rem; }

.site-nav {
  display: flex;
  align-items: center;
  gap: 1.3rem;
}
.site-nav > a:not(.btn) {
  color: rgba(255,255,255,0.82);
  font-weight: 500;
  font-size: .95rem;
}
.site-nav > a:not(.btn):hover { color: #fff; }

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: .85rem 1.2rem;
  border-radius: 999px;
  font-weight: 700;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
  border: 1px solid transparent;
}
.btn:hover { transform: translateY(-1px); }
.btn-primary {
  color: #fff;
  background: linear-gradient(135deg, var(--primary), var(--primary-2));
  box-shadow: 0 14px 34px rgba(37, 99, 235, 0.3);
}
.btn-secondary {
  color: #fff;
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.14);
}
.light-btn {
  background: rgba(255,255,255,0.1);
  color: #fff;
  border-color: rgba(255,255,255,0.16);
}

.nav-toggle {
  display: none;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(255,255,255,.06);
  padding: 0;
}
.nav-toggle span {
  display: block;
  width: 22px;
  height: 2px;
  background: #fff;
  margin: 5px auto;
}

.hero {
  position: relative;
  padding: 3.9rem 0 2rem;
  background:
    linear-gradient(180deg, rgba(7,17,31,0.97), rgba(10,18,36,0.95)),
    radial-gradient(circle at 15% 10%, rgba(56, 189, 248, 0.28), transparent 20%),
    radial-gradient(circle at 85% 15%, rgba(37, 99, 235, 0.24), transparent 22%);
  color: #fff;
}
.hero-grid {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 2rem;
  align-items: stretch;
}
.eyebrow,
.section-tag {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  margin: 0 0 1rem;
  padding: .42rem .78rem;
  border-radius: 999px;
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 700;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.1);
  color: #d6e7ff;
}
.section-tag { background: #e9f1ff; color: var(--primary-2); border-color: rgba(37,99,235,.08); }
.section-tag.light { background: rgba(255,255,255,.08); color: #dceafe; border-color: rgba(255,255,255,.12); }

.hero h1 {
  margin: 0;
  font-size: clamp(2.5rem, 5vw, 4.35rem);
  line-height: 1.02;
  letter-spacing: -0.04em;
  max-width: 11.5ch;
}
.hero-lead {
  font-size: 1.16rem;
  color: rgba(255,255,255,.9);
  max-width: 63ch;
  margin: 1.25rem 0 1rem;
}
.hero-support {
  max-width: 66ch;
  color: rgba(255,255,255,.76);
  margin: 0 0 1.5rem;
}
.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .85rem;
  margin-bottom: 1.3rem;
}
.hero-points {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: .75rem;
}
.hero-points li {
  display: flex;
  gap: .75rem;
  align-items: center;
  color: rgba(255,255,255,.86);
  font-weight: 500;
}
.hero-points li::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--success), var(--accent));
  box-shadow: 0 0 0 6px rgba(16,185,129,.12);
}

.hero-panel {
  display: grid;
  gap: 1rem;
}
.panel-card {
  padding: 1.25rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border: 1px solid rgba(255,255,255,.1);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.panel-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: .85rem;
}
.panel-logo {
  width: 140px;
  height: auto;
  object-fit: contain;
  opacity: .98;
}
.panel-card-large {
  padding: 1.6rem;
  min-height: 200px;
}
.panel-label {
  display: inline-flex;
  margin-bottom: .8rem;
  padding: .35rem .7rem;
  border-radius: 999px;
  font-size: .74rem;
  font-weight: 700;
  text-transform: uppercase;
  background: rgba(56,189,248,.16);
  color: #dff5ff;
}
.panel-card h2,
.panel-card h3 {
  margin: 0 0 .55rem;
  line-height: 1.15;
}
.panel-card h2 { font-size: 1.6rem; }
.panel-card h3 { font-size: 1.05rem; }
.panel-card p { margin: 0; color: rgba(255,255,255,.74); }
.panel-stack {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.proof-strip {
  padding: 1rem 0 0;
  margin-top: -1rem;
}
.proof-grid {
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: var(--shadow-md);
  border-radius: 24px;
  padding: 1rem;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: .9rem;
}
.proof-item {
  padding: .95rem 1rem;
  border-radius: 16px;
  background: linear-gradient(180deg, #fbfdff, #f4f8fc);
  border: 1px solid rgba(15,23,42,.06);
  font-weight: 700;
  color: #10203d;
  text-align: center;
}

.section { padding: 5rem 0; }
.section-heading {
  margin-bottom: 1.7rem;
  display: flex;
  flex-direction: column;
  gap: .55rem;
}
.section-heading.narrow { max-width: 760px; margin-left: auto; margin-right: auto; text-align: center; }
.section-heading.left-align { text-align: left; margin-left: 0; }
.section h2 {
  margin: 0;
  font-size: clamp(2rem, 3.6vw, 3rem);
  line-height: 1.08;
  letter-spacing: -0.03em;
}
.section-heading p:last-child,
.split-layout p,
.security-copy p,
.process-card p,
.buying-card,
.faq-list p,
.site-footer p,
.cta-shell p,
.service-card p,
.issue-card p,
.benefit-card p,
.check-card p,
.security-card p {
  color: var(--text-soft);
}

.split-layout {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 2rem;
  align-items: start;
}
.alt-gap { gap: 2.2rem; }
.issue-grid,
.check-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
.issue-card,
.check-card,
.benefit-card,
.security-card,
.process-card,
.buying-card,
.service-card,
.faq-list details {
  background: rgba(255,255,255,.88);
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
}
.issue-card,
.check-card,
.benefit-card,
.security-card,
.process-card,
.buying-card {
  padding: 1.2rem;
}
.issue-card h3,
.check-card h3,
.benefit-card h3,
.security-card h3,
.process-card h3,
.service-card h3 {
  margin: 0 0 .45rem;
  line-height: 1.18;
}
.issue-card:last-child { grid-column: span 2; }

.service-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2rem;
}
.service-card {
  padding: 1.35rem;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.service-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
  border-color: rgba(37,99,235,.2);
}
.icon-box {
  width: 54px;
  height: 54px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  margin-bottom: 1rem;
  background: linear-gradient(135deg, rgba(56,189,248,.15), rgba(37,99,235,.16));
}
.icon-box svg {
  width: 26px;
  height: 26px;
  fill: var(--primary-2);
}
.service-card ul {
  margin: 1rem 0 1.15rem;
  padding-left: 1.15rem;
  color: var(--text-soft);
}
.service-card li + li { margin-top: .45rem; }
.service-card a {
  font-weight: 700;
  color: var(--primary-2);
}

.benefit-grid,
.buying-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
.benefit-card h3 { font-size: 1.15rem; }
.buying-card {
  font-weight: 700;
  color: #10203d;
  display: flex;
  align-items: center;
  min-height: 100px;
}
.buying-grid { grid-template-columns: repeat(5, 1fr); }

.security-section {
  background: linear-gradient(180deg, #081223, #0c1730);
  color: #fff;
}
.security-shell {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 1.4rem;
  align-items: start;
}
.security-copy p { color: rgba(255,255,255,.76); }
.security-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
.security-card {
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border-color: var(--line-strong);
  box-shadow: none;
}
.security-card p { color: rgba(255,255,255,.72); }

.process-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}
.process-card span {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  margin-bottom: .9rem;
  font-weight: 800;
  color: var(--primary-2);
  background: #eaf1ff;
}

.faq-shell { max-width: 900px; }
.faq-list {
  display: grid;
  gap: .85rem;
}
.faq-list details { padding: 0 1rem; overflow: hidden; }
.faq-list summary {
  list-style: none;
  cursor: pointer;
  padding: 1.1rem 2.6rem 1.1rem 0;
  position: relative;
  font-weight: 700;
}
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after {
  content: "+";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.4rem;
  color: var(--primary-2);
}
.faq-list details[open] summary::after { content: "−"; }
.faq-list p { margin: 0 0 1rem; }

.cta-section {
  padding-top: 0;
}
.cta-shell {
  border-radius: 30px;
  padding: 2rem;
  background: linear-gradient(135deg, #0d1a31, #122347);
  color: #fff;
  display: grid;
  grid-template-columns: 1.3fr .7fr;
  gap: 1rem;
  box-shadow: var(--shadow-lg);
}
.cta-shell p { color: rgba(255,255,255,.76); max-width: 58ch; }
.cta-actions {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: .85rem;
}
.contact-line {
  color: #dbeafe;
  font-weight: 700;
}

.site-footer {
  padding: 2rem 0 2.6rem;
}
.footer-shell {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
  border-top: 1px solid rgba(15,23,42,.08);
  padding-top: 1.4rem;
}
.footer-brand {
  display: grid;
  gap: .4rem;
}
.footer-logo {
  width: 180px;
  height: auto;
  object-fit: contain;
}
.footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  font-weight: 600;
  color: var(--text-soft);
}

@media (max-width: 1080px) {
  .hero-grid,
  .split-layout,
  .security-shell,
  .cta-shell { grid-template-columns: 1fr; }
  .panel-stack,
  .proof-grid,
  .service-grid,
  .process-grid,
  .buying-grid { grid-template-columns: repeat(2, 1fr); }
  .hero h1 { max-width: 14ch; }
}

@media (max-width: 860px) {
  .issue-grid,
  .check-grid,
  .benefit-grid,
  .security-grid,
  .panel-stack,
  .proof-grid,
  .service-grid,
  .process-grid,
  .buying-grid { grid-template-columns: 1fr; }
  .issue-card:last-child { grid-column: auto; }
  .hero { padding-top: 2.5rem; }
  .section { padding: 4rem 0; }
}

@media (max-width: 640px) {
  .container { width: min(var(--container), calc(100% - 1.1rem)); }
  .nav-shell { min-height: 76px; }
  .brand-logo { width: 138px; }
  .panel-top { align-items: flex-start; flex-direction: column; }
  .panel-logo { width: 124px; }
  .hero h1 { font-size: 2.45rem; max-width: 100%; }
  .hero-lead { font-size: 1.04rem; }
  .btn { width: 100%; }
  .hero-actions { display: grid; }
  .cta-shell,
  .panel-card-large,
  .service-card,
  .issue-card,
  .check-card,
  .benefit-card,
  .security-card,
  .process-card,
  .buying-card { padding: 1rem; }
  .footer-shell { flex-direction: column; }
}


.hero-copy { padding-top: .5rem; }
.hero-image-card,
.feature-photo,
.security-photo,
.service-media {
  position: relative;
  overflow: hidden;
  border-radius: calc(var(--radius-lg) + 2px);
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(244,248,252,0.98));
  box-shadow: 0 20px 46px rgba(6, 18, 40, 0.16);
}
.hero-image-card::before,
.feature-photo::before,
.security-photo::before,
.service-media::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.6);
  z-index: 1;
}
.hero-image-card {
  min-height: 100%;
  padding: 12px;
  background:
    radial-gradient(circle at top right, rgba(56, 189, 248, 0.12), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(240,245,252,0.98));
}
.hero-image-card img {
  width: 100%;
  height: 100%;
  min-height: 0;
  aspect-ratio: 5 / 4;
  border-radius: calc(var(--radius-lg) - 8px);
  object-fit: cover;
  object-position: center center;
  background: #dfe9f7;
}
.hero-image-overlay {
  position: absolute;
  left: 1rem;
  right: 1rem;
  bottom: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  z-index: 2;
}
.hero-badge {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: .55rem .8rem;
  border-radius: 999px;
  background: rgba(7,17,31,.78);
  border: 1px solid rgba(255,255,255,.12);
  color: #fff;
  font-weight: 700;
  font-size: .85rem;
  backdrop-filter: blur(10px);
}
.service-card {
  overflow: hidden;
}
.service-media {
  margin: -1.35rem -1.35rem 1rem;
  padding: 10px;
  border-radius: calc(var(--radius-md) - 2px) calc(var(--radius-md) - 2px) 20px 20px;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  box-shadow: inset 0 -1px 0 rgba(15, 23, 42, 0.04);
}
.service-media img {
  width: 100%;
  aspect-ratio: 5 / 4;
  border-radius: 16px;
  object-fit: cover;
  object-position: center center;
  background: #dfe9f7;
}
.feature-photo {
  margin: 1.25rem 0 0;
  padding: 12px;
  background:
    radial-gradient(circle at top right, rgba(56, 189, 248, 0.12), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(244,248,252,0.98));
  border: 1px solid rgba(15, 23, 42, 0.08);
}
.feature-photo img,
.security-photo img {
  width: 100%;
  display: block;
  border-radius: calc(var(--radius-lg) - 8px);
  object-fit: cover;
}
.feature-photo img {
  aspect-ratio: 5 / 4;
  object-position: center center;
  background: #dfe9f7;
}
.security-photo {
  margin-top: 1.25rem;
  padding: 12px;
  border-color: rgba(255,255,255,.12);
  background:
    radial-gradient(circle at top right, rgba(56, 189, 248, 0.14), transparent 28%),
    linear-gradient(180deg, rgba(14,26,50,0.96), rgba(9,19,37,0.98));
}
.security-photo::before { box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08); }
.security-photo img {
  aspect-ratio: 5 / 4;
  object-fit: cover;
  object-position: center center;
  background: #0b1322;
}
.why-layout { align-items: stretch; }
.why-intro {
  display: flex;
  flex-direction: column;
}
.process-card {
  position: relative;
}
.process-card::after {
  content: "";
  position: absolute;
  inset: auto 1rem 0 1rem;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(37,99,235,.18), rgba(56,189,248,.38));
}
.buying-card {
  position: relative;
  padding-left: 2.1rem;
}
.buying-card::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--success), var(--accent));
  position: absolute;
  left: 1rem;
  top: 1.25rem;
  box-shadow: 0 0 0 6px rgba(16,185,129,.10);
}
.cta-shell {
  align-items: center;
}
.footer-brand strong {
  font-size: 1.02rem;
}

@media (max-width: 860px) { .service-media { margin: -1rem -1rem 1rem; } }


.included-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}
.included-card {
  padding: 1.15rem;
  background: rgba(255,255,255,.9);
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
}
.included-card h3 {
  margin: 0 0 .45rem;
  font-size: 1.02rem;
  line-height: 1.2;
}
.included-card p { margin: 0; color: var(--text-soft); }
.managed-hero .hero-copy { padding-top: .3rem; }
.managed-panel-stack { grid-template-columns: repeat(3, 1fr); }
.managed-problem-layout { align-items: start; }
.managed-security-photo img,
.managed-feature-photo img {
  aspect-ratio: 5 / 4;
  object-fit: cover;
}
@media (max-width: 1080px) {
  .included-grid,
  .managed-panel-stack { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 860px) {
  .included-grid,
  .managed-panel-stack { grid-template-columns: 1fr; }
}


.cyber-hero .hero-copy { padding-top: .35rem; }
.cyber-hero .hero-panel { align-content: start; }
.cyber-panel-stack { grid-template-columns: repeat(3, 1fr); }
.cyber-threat-layout,
.cyber-struggle-layout,
.cyber-trust-layout { align-items: start; }
.cyber-security-photo img,
.cyber-feature-photo img {
  aspect-ratio: 5 / 4;
  object-fit: cover;
}
.cyber-benefit-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1rem;
}
@media (max-width: 1180px) {
  .cyber-panel-stack,
  .cyber-benefit-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 860px) {
  .cyber-panel-stack,
  .cyber-benefit-grid { grid-template-columns: 1fr; }
}


/* Interaction and animation system */
.site-header,
.nav-shell,
.brand-logo,
.site-nav > a:not(.btn),
.btn,
.service-card,
.issue-card,
.check-card,
.benefit-card,
.security-card,
.process-card,
.buying-card,
.included-card,
.proof-item,
.panel-card,
.hero-image-card img,
.service-media img,
.feature-photo img,
.security-photo img {
  will-change: transform, opacity, box-shadow;
}

.site-header {
  transition: background .28s ease, border-color .28s ease, box-shadow .28s ease;
}
.nav-shell {
  transition: min-height .28s ease, padding .28s ease;
}
.brand-logo {
  transition: width .28s ease, transform .28s ease;
}
.site-header.is-scrolled {
  background: rgba(7, 17, 31, 0.9);
  border-bottom-color: rgba(255,255,255,.1);
  box-shadow: 0 14px 34px rgba(4, 12, 28, .24);
}
.site-header.is-scrolled .nav-shell {
  min-height: 72px;
}
.site-header.is-scrolled .brand-logo {
  width: 164px;
}

.site-nav > a:not(.btn) {
  position: relative;
  transition: color .22s ease-out;
}
.site-nav > a:not(.btn)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.35rem;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--accent), #fff);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .24s ease-out;
}

.btn {
  transition: transform .22s ease-out, box-shadow .22s ease-out, background .22s ease-out, border-color .22s ease-out, color .22s ease-out;
}
.btn-primary::after {
  content: "→";
  margin-left: .5rem;
  transition: transform .2s ease-out;
}

.hero-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .9rem;
  margin-top: 1.35rem;
}
.metric-card {
  padding: 1rem 1.05rem;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.09), rgba(255,255,255,.04));
  border: 1px solid rgba(255,255,255,.1);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.metric-card span {
  display: block;
  color: rgba(255,255,255,.76);
  font-size: .92rem;
}
.metric-value {
  display: block;
  font-size: clamp(1.6rem, 2.2vw, 2.2rem);
  line-height: 1;
  letter-spacing: -.04em;
  margin-bottom: .28rem;
}

.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .5s ease-out, transform .5s ease-out;
}
.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.reveal-group > * {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .5s ease-out, transform .5s ease-out;
}
.reveal-group.is-visible > * {
  opacity: 1;
  transform: translateY(0);
}

.expandable-card {
  position: relative;
  cursor: pointer;
  transition: transform .24s ease-out, box-shadow .24s ease-out, border-color .24s ease-out, background .24s ease-out;
}
.expand-toggle {
  position: absolute;
  top: .95rem;
  right: .95rem;
  width: 36px;
  height: 36px;
  border-radius: 12px;
  border: 1px solid rgba(37,99,235,.12);
  background: #eff5ff;
  color: var(--primary-2);
  display: inline-grid;
  place-items: center;
  font-weight: 800;
  transition: transform .25s ease-out, background .25s ease-out, color .25s ease-out;
  pointer-events: none;
}
.expandable-card h3 {
  padding-right: 2.8rem;
}
.expandable-content {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .25s ease-out, opacity .25s ease-out, margin-top .25s ease-out;
  opacity: .72;
  margin-top: 0;
}
.expandable-content-inner {
  overflow: hidden;
}
.expandable-card.is-expanded {
  border-color: rgba(37,99,235,.22);
  box-shadow: var(--shadow-lg);
}
.expandable-card.is-expanded .expandable-content {
  grid-template-rows: 1fr;
  opacity: 1;
  margin-top: .4rem;
}
.expandable-card.is-expanded .expand-toggle {
  transform: rotate(45deg);
  background: linear-gradient(135deg, rgba(56,189,248,.16), rgba(37,99,235,.18));
}
.js-ready .expandable-card:not(.is-expanded) p {
  display: none;
}
.js-ready .expandable-card:not(.is-expanded) .expandable-content p {
  display: block;
}

.timeline-grid {
  position: relative;
}
.timeline-grid::before {
  content: "";
  position: absolute;
  left: 2rem;
  right: 2rem;
  top: 24px;
  height: 2px;
  background: linear-gradient(90deg, rgba(37,99,235,.12), rgba(56,189,248,.28));
  border-radius: 999px;
}
.timeline-node {
  position: relative;
  transition: transform .24s ease-out, box-shadow .24s ease-out, border-color .24s ease-out;
}
.timeline-node::after {
  transform: scaleX(.35);
  transform-origin: left center;
  transition: transform .28s ease-out;
}
.timeline-node span {
  position: relative;
  z-index: 1;
  transition: transform .24s ease-out, background .24s ease-out, color .24s ease-out, box-shadow .24s ease-out;
}

.image-tile,
.hero-image-card,
.feature-photo,
.security-photo,
.service-media {
  isolation: isolate;
}
.hero-image-card::after,
.feature-photo::after,
.security-photo::after,
.service-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8,18,35,0) 35%, rgba(8,18,35,.16) 100%);
  opacity: 0;
  transition: opacity .3s ease-out;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine) {
  .site-nav > a:not(.btn):hover::after,
  .site-nav > a:not(.btn):focus-visible::after {
    transform: scaleX(1);
  }
  .btn:hover,
  .btn:focus-visible {
    transform: translateY(-2px);
  }
  .btn-primary:hover,
  .btn-primary:focus-visible {
    box-shadow: 0 18px 40px rgba(37, 99, 235, 0.38);
    filter: brightness(1.04);
  }
  .btn-primary:hover::after,
  .btn-primary:focus-visible::after {
    transform: translateX(3px);
  }
  .btn-secondary:hover,
  .btn-secondary:focus-visible,
  .light-btn:hover,
  .light-btn:focus-visible {
    background: rgba(255,255,255,0.13);
    border-color: rgba(255,255,255,.18);
    box-shadow: 0 10px 24px rgba(8,18,35,.18);
  }
  .service-card:hover,
  .issue-card:hover,
  .check-card:hover,
  .benefit-card:hover,
  .security-card:hover,
  .process-card:hover,
  .buying-card:hover,
  .included-card:hover,
  .proof-item:hover,
  .panel-card:hover,
  .expandable-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-lg);
    border-color: rgba(37,99,235,.18);
  }
  .service-card:hover .icon-box,
  .process-card:hover span,
  .expandable-card:hover .expand-toggle {
    background: linear-gradient(135deg, rgba(56,189,248,.2), rgba(37,99,235,.22));
  }
  .service-card:hover .icon-box svg {
    fill: #0f4fe0;
  }
  .timeline-node:hover::after {
    transform: scaleX(1);
  }
  .timeline-node:hover span {
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(37,99,235,.16);
  }
  .hero-image-card:hover::after,
  .feature-photo:hover::after,
  .security-photo:hover::after,
  .service-media:hover::after {
    opacity: 1;
  }
  .hero-image-card:hover img,
  .feature-photo:hover img,
  .security-photo:hover img,
  .service-media:hover img {
    transform: scale(1.03);
  }
  .hero-image-card:hover .hero-badge {
    background: rgba(7,17,31,.88);
  }
}

.hero-image-card img,
.feature-photo img,
.security-photo img,
.service-media img {
  transition: transform .3s ease-out;
}

@media (max-width: 1080px) {
  .hero-metrics { grid-template-columns: repeat(3, 1fr); }
  .timeline-grid::before { display: none; }
}
@media (max-width: 860px) {
  .site-header.is-scrolled .nav-shell { min-height: 76px; }
  .site-header.is-scrolled .brand-logo { width: 138px; }
  .hero-metrics { grid-template-columns: 1fr; }
  .timeline-grid::before { display: none; }
  .reveal,
  .reveal-group > * { transition-duration: .4s; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
  }
  .reveal,
  .reveal-group > *,
  .reveal.is-visible,
  .reveal-group.is-visible > * {
    opacity: 1 !important;
    transform: none !important;
  }
}


/* Image polish update */
.hero-panel,
.security-shell,
.split-layout,
.why-layout {
  align-items: start;
}
.hero-image-card,
.feature-photo,
.security-photo {
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(242,247,253,.98));
}
.hero {
  overflow: clip;
}
.service-media {
  background: linear-gradient(180deg, #f8fbff 0%, #eef4fb 100%);
}
.feature-photo,
.security-photo {
  max-width: 560px;
}
.security-shell .security-photo,
.split-layout .feature-photo,
.why-layout .feature-photo {
  width: 100%;
}
@media (max-width: 1080px) {
  .feature-photo,
  .security-photo {
    max-width: 100%;
  }
}
@media (max-width: 860px) {
  .hero-image-card img,
  .service-media img,
  .feature-photo img,
  .security-photo img {
    padding: .5rem;
  }
}


/* Conversion and resource sections */
.support-process-grid,
.trust-grid,
.resource-grid,
.form-grid,
.contact-grid {
  display:grid;
  gap:1.25rem;
}
.support-process-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.support-step,
.trust-card,
.resource-card,
.contact-card,
.lead-form,
.cta-band,
.doc-card {
  background:rgba(255,255,255,0.96);
  border:1px solid rgba(118,139,184,0.16);
  border-radius:22px;
  box-shadow:0 14px 40px rgba(6,18,38,0.08);
}
.support-step,
.trust-card,
.resource-card,
.contact-card,
.doc-card {
  padding:1.4rem;
}
.support-step .step-number {
  width:2.75rem;height:2.75rem;border-radius:999px;display:grid;place-items:center;
  background:linear-gradient(135deg,#2b6ef2,#55b6ff);color:#fff;font-weight:800;margin-bottom:1rem;
  box-shadow:0 10px 24px rgba(43,110,242,0.24);
}
.support-step p,
.trust-card p,
.resource-card p,
.contact-card p,
.doc-card p {margin:0.45rem 0 0;color:var(--muted,#52607a)}
.trust-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
.trust-card h3,.resource-card h3,.contact-card h3,.doc-card h3 {margin:0;font-size:1.02rem}
.cta-band {
  display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.5rem 1.6rem;
  background:linear-gradient(135deg,rgba(13,24,49,0.96),rgba(16,45,74,0.96));
  color:#fff;border-color:rgba(255,255,255,0.08);
}
.cta-band p,.cta-band h2{margin:0}
.cta-band p{color:rgba(255,255,255,0.78);margin-top:0.45rem;max-width:42rem}
.cta-band .cta-actions-inline{display:flex;flex-wrap:wrap;gap:0.9rem}
.resource-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.resource-card .resource-link{display:inline-flex;margin-top:1rem;font-weight:700}
.resource-card ul{margin:0.9rem 0 0;padding-left:1.1rem;color:var(--muted,#52607a)}
.lead-shell {display:grid;grid-template-columns:1.05fr .95fr;gap:1.5rem;align-items:start}
.doc-card {
  background:linear-gradient(180deg,rgba(246,249,255,0.98),rgba(232,240,252,0.88));
}
.doc-card .doc-preview {
  margin-top:1rem;padding:1rem 1rem 1rem 1.1rem;border-radius:16px;background:#fff;border:1px solid rgba(118,139,184,0.18)
}
.doc-card .doc-preview ul{margin:0;padding-left:1.05rem;color:var(--muted,#52607a)}
.lead-form {padding:1.5rem;background:#fff}
.lead-form form{display:grid;gap:0.9rem}
.lead-form .field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.9rem}
.lead-form label{display:grid;gap:0.42rem;font-weight:600;color:var(--heading,#0d1831)}
.lead-form input,.lead-form select,.lead-form textarea {
  width:100%;border:1px solid rgba(118,139,184,0.26);background:#f8fbff;border-radius:14px;padding:0.9rem 1rem;
  font:inherit;color:#0d1831;outline:none;transition:border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{border-color:#2b6ef2;box-shadow:0 0 0 4px rgba(43,110,242,0.12);background:#fff}
.lead-form small{color:var(--muted,#52607a)}
.inline-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.85rem;margin-top:1.1rem}
.inline-checklist li{list-style:none;padding:0.95rem 1rem;border-radius:16px;background:rgba(255,255,255,0.7);border:1px solid rgba(118,139,184,0.16)}
.contact-grid{grid-template-columns:1.1fr .9fr}
.contact-stack{display:grid;gap:1rem}
.contact-card strong{display:block;font-size:1.05rem;color:var(--heading,#0d1831)}
.contact-card a{font-weight:700}
.resources-mini{margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid rgba(118,139,184,0.14);display:grid;gap:0.85rem}
.page-hero-compact .hero-grid{align-items:start}
.page-hero-compact .hero-panel{align-self:stretch}
.security-assessment-shell .hero-image-card img,
.guide-shell .hero-image-card img{aspect-ratio:1/1;object-fit:cover}
@media (max-width: 1080px){
  .support-process-grid,.trust-grid,.resource-grid,.lead-shell,.contact-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 760px){
  .support-process-grid,.trust-grid,.resource-grid,.lead-shell,.contact-grid,.lead-form .field-grid,.inline-checklist{grid-template-columns:1fr}
  .cta-band{padding:1.25rem;align-items:flex-start}
}

.section-note{margin-top:1rem;color:#66748d}.center-text{text-align:center}


/* Photo polish */
img[src*="hero-tech"],
.hero-image-card img[src*="hero-tech"] { object-position: 52% 24%; }
img[src*="projects-rack"],
.service-media img[src*="projects-rack"] { object-position: 56% 22%; }
img[src*="managed-monitoring"] { object-position: 50% 34%; }
img[src*="security-soc"] { object-position: 50% 32%; }
img[src*="client-support"] { object-position: 50% 28%; }

.service-card:hover .service-media img,
.feature-photo:hover img,
.security-photo:hover img,
.hero-image-card:hover img {
  transform: scale(1.02);
}
.hero-image-card img,
.service-media img,
.feature-photo img,
.security-photo img {
  transition: transform .32s ease-out, filter .32s ease-out;
}
.service-media:hover,
.feature-photo:hover,
.security-photo:hover,
.hero-image-card:hover {
  box-shadow: 0 26px 56px rgba(6, 18, 40, 0.18);
  border-color: rgba(37, 99, 235, 0.12);
}

@media (max-width: 860px) {
  .hero-image-card,
  .feature-photo,
  .security-photo,
  .service-media { padding: 9px; }
  .hero-image-card img,
  .feature-photo img,
  .security-photo img,
  .service-media img,
  .managed-security-photo img,
  .managed-feature-photo img,
  .cyber-security-photo img,
  .cyber-feature-photo img { aspect-ratio: 4 / 3; }
  .service-media { margin: -1rem -1rem 1rem; }
}


/* Industries page */
.industries-hero .hero-grid,
.industry-page .hero-grid {
  grid-template-columns: 1.05fr .95fr;
}
.industry-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}
.industry-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: .95rem;
  min-height: 100%;
  padding: 1.35rem;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(244,248,255,0.98));
  border: 1px solid rgba(148,163,184,.22);
  box-shadow: 0 18px 40px rgba(15,23,42,.08);
}
.industry-card p { margin: 0; color: var(--muted); }
.industry-card .industry-link,
.resource-link,
.service-card > a,
.text-link {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  margin-top: auto;
  font-weight: 700;
}
.industry-card .industry-link::after,
.resource-link::after,
.service-card > a::after,
.text-link::after {
  content: '→';
  transition: transform .2s ease;
}
.industry-card:hover .industry-link::after,
.resource-card:hover .resource-link::after,
.service-card:hover > a::after,
.text-link:hover::after {
  transform: translateX(3px);
}
.industry-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(37,99,235,.12), rgba(56,189,248,.16));
  color: var(--primary-2);
  border: 1px solid rgba(37,99,235,.12);
}
.industry-icon svg { width: 24px; height: 24px; fill: currentColor; }
.common-needs-grid,
.trust-bullet-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 1rem;
}
.need-card,
.trust-bullet {
  padding: 1rem 1.05rem;
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(148,163,184,.2);
  box-shadow: 0 12px 28px rgba(15,23,42,.06);
  color: var(--ink-2);
  font-weight: 600;
}
.need-card::before,
.trust-bullet::before {
  content: '';
  width: 10px;
  height: 10px;
  border-radius: 999px;
  display: inline-block;
  margin-right: .7rem;
  background: linear-gradient(135deg, var(--success), var(--accent));
  box-shadow: 0 0 0 6px rgba(16,185,129,.10);
  vertical-align: middle;
}
.service-card.compact-card { padding-top: 1.45rem; }
.hero-panel .industry-visual-stack {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr 1fr;
}
.industry-visual-stack .panel-card:first-child { grid-column: 1 / -1; }
.page-breadcrumbs {
  margin-bottom: 1rem;
  color: rgba(255,255,255,.72);
  font-size: .92rem;
}
.page-breadcrumbs a { color: rgba(255,255,255,.82); }
.industry-page .proof-grid { grid-template-columns: repeat(4, 1fr); }
.industry-page .split-layout { align-items: start; }
@media (max-width: 1080px) {
  .industry-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .common-needs-grid, .trust-bullet-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .industry-grid,
  .common-needs-grid,
  .trust-bullet-grid,
  .hero-panel .industry-visual-stack {
    grid-template-columns: 1fr;
  }
}


/* Resource center enhancements */
.section-tight { padding-top: 1.2rem; padding-bottom: 1.2rem; }
.resources-hub-hero .hero-grid,
.article-hero .hero-grid { align-items: start; }
.resource-filters {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 1rem;
}
.resource-filter {
  appearance: none;
  border: 1px solid rgba(37,99,235,.14);
  background: rgba(255,255,255,.88);
  color: var(--text);
  font: inherit;
  font-weight: 700;
  line-height: 1;
  padding: .85rem 1rem;
  border-radius: 999px;
  cursor: pointer;
  transition: transform .22s ease-out, box-shadow .22s ease-out, border-color .22s ease-out, background-color .22s ease-out, color .22s ease-out;
}
.resource-filter:hover,
.resource-filter:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 14px 26px rgba(15,23,42,.08);
  border-color: rgba(37,99,235,.22);
}
.resource-filter.is-active {
  background: linear-gradient(135deg, var(--primary), var(--primary-2));
  color: #fff;
  box-shadow: 0 16px 30px rgba(37,99,235,.22);
}
.resource-library .resource-card {
  display: flex;
  flex-direction: column;
  gap: .85rem;
  min-height: 100%;
}
.resource-card-head { display:flex; align-items:center; justify-content:space-between; gap:.8rem; }
.resource-category {
  display: inline-flex;
  align-items: center;
  padding: .38rem .7rem;
  border-radius: 999px;
  font-size: .74rem;
  text-transform: uppercase;
  letter-spacing: .06em;
  font-weight: 800;
  color: var(--primary-2);
  background: rgba(37,99,235,.08);
  border: 1px solid rgba(37,99,235,.12);
}
.resource-card-article h3,
.resource-card-download h3 { font-size: 1.08rem; line-height: 1.3; }
.resource-card.is-hidden {
  display: none !important;
}
.article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
  gap: 1.5rem;
  align-items: start;
}
.article-shell {
  background: rgba(255,255,255,.97);
  border: 1px solid rgba(118,139,184,.16);
  border-radius: 24px;
  box-shadow: 0 18px 48px rgba(7,17,31,.08);
  padding: 1.7rem;
}
.article-meta {
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  align-items:center;
  margin-bottom:1.15rem;
  color: var(--text-soft);
  font-weight:600;
}
.article-section + .article-section {
  border-top: 1px solid rgba(148,163,184,.16);
  margin-top: 1.3rem;
  padding-top: 1.3rem;
}
.article-section h2 {
  margin: 0 0 .7rem;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  line-height: 1.2;
}
.article-section p { margin: 0; color: var(--text-soft); }
.article-inline-cta {
  margin-top: 1.4rem;
  padding-top: 1.35rem;
  border-top: 1px solid rgba(148,163,184,.18);
}
.article-inline-cta h2,
.article-inline-cta p { margin: 0; }
.article-inline-cta p { margin-top: .55rem; color: var(--text-soft); }
.article-inline-cta .hero-actions { margin-top: 1rem; margin-bottom: 0; }
.article-sidebar {
  display:grid;
  gap: 1rem;
}
.sidebar-resource-grid {
  grid-template-columns: 1fr;
}
.sidebar-resource-grid .resource-card {
  padding: 1.15rem;
}
.resource-card p,
.article-shell p,
.article-sidebar p,
.lead-form p,
.doc-card p { text-wrap: pretty; }
@media (max-width: 1080px) {
  .article-layout { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .resource-filters { gap: .55rem; }
  .resource-filter { width: 100%; justify-content: center; }
  .article-shell { padding: 1.2rem; }
}


.link-stack {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem 1rem;
  margin-top: .25rem;
}
.link-stack .text-link {
  margin-top: 0;
  font-size: .95rem;
}
.location-page .trust-bullet-grid {
  grid-template-columns: repeat(3, minmax(0,1fr));
}
.location-page .trust-bullet-grid .trust-bullet:last-child:nth-child(5) {
  grid-column: 2 / 3;
}
@media (max-width: 900px) {
  .location-page .trust-bullet-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
  .location-page .trust-bullet-grid .trust-bullet:last-child:nth-child(5) {
    grid-column: auto;
  }
}
@media (max-width: 640px) {
  .location-page .trust-bullet-grid,
  .location-page .issue-grid {
    grid-template-columns: 1fr;
  }
  .location-page .issue-card:last-child {
    grid-column: auto;
  }
}


/* Cybersecurity Risk Score Tool */
.risk-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
  gap: 1.4rem;
  align-items: start;
}
.risk-tool-shell,
.risk-result-card {
  background: rgba(255,255,255,.98);
  border: 1px solid rgba(118,139,184,.18);
  border-radius: 28px;
  box-shadow: 0 20px 54px rgba(7,17,31,.09);
  padding: 1.55rem;
}
.risk-tool-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(230px,.42fr);
  gap: 1rem;
  align-items: end;
  margin-bottom: 1.2rem;
}
.risk-tool-head h2,
.risk-summary-card h2,
.risk-result-card h2 { margin: 0 0 .45rem; font-size: clamp(1.55rem, 2.2vw, 2rem); line-height: 1.08; }
.risk-tool-head p,
.risk-summary-card p,
.risk-result-card p { margin: 0; color: var(--text-soft); }
.risk-progress-wrap {
  padding: 1rem 1rem .95rem;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(37,99,235,.06), rgba(56,189,248,.04));
  border: 1px solid rgba(37,99,235,.08);
}
.risk-progress-meta {
  display: flex;
  justify-content: space-between;
  gap: .75rem;
  font-size: .9rem;
  font-weight: 700;
  color: var(--text);
  margin-bottom: .7rem;
}
.risk-progress-bar {
  position: relative;
  height: 10px;
  border-radius: 999px;
  background: rgba(148,163,184,.22);
  overflow: hidden;
}
.risk-progress-bar span {
  position: absolute;
  inset: 0 auto 0 0;
  width: 0;
  background: linear-gradient(135deg, var(--primary), var(--accent));
  border-radius: inherit;
  transition: width .35s ease;
}
.risk-question-stage {
  position: relative;
  min-height: 390px;
}
.risk-question-card {
  display: grid;
  gap: 1rem;
  animation: fadeSlideUp .35s ease;
}
.risk-question-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  align-items: center;
  color: var(--text-soft);
  font-size: .95rem;
  font-weight: 700;
}
.risk-question-card h3 { margin: 0; font-size: clamp(1.4rem, 2vw, 1.85rem); line-height: 1.15; }
.risk-question-support { color: var(--text-soft); margin-top: -.2rem; }
.risk-answer-grid {
  display: grid;
  gap: .9rem;
}
.risk-answer {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: .9rem;
  padding: 1rem 1rem 1rem .95rem;
  border-radius: 20px;
  border: 1px solid rgba(118,139,184,.18);
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(245,248,252,.98));
  cursor: pointer;
  transition: transform .2s ease-out, box-shadow .2s ease-out, border-color .2s ease-out, background .2s ease-out;
  box-shadow: 0 10px 24px rgba(7,17,31,.05);
}
.risk-answer input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.risk-answer-indicator {
  width: 22px;
  height: 22px;
  border-radius: 999px;
  border: 2px solid rgba(37,99,235,.3);
  background: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: .12rem;
  flex-shrink: 0;
  transition: border-color .2s ease, background .2s ease, transform .2s ease;
}
.risk-answer-indicator::after {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--primary);
  transform: scale(0);
  transition: transform .2s ease;
}
.risk-answer-copy strong {
  display: block;
  color: var(--text);
  font-size: 1rem;
  line-height: 1.35;
}
.risk-answer-copy span {
  display: block;
  margin-top: .2rem;
  color: var(--text-soft);
  font-size: .93rem;
}
.risk-answer:hover,
.risk-answer:focus-within {
  transform: translateY(-4px);
  box-shadow: 0 18px 32px rgba(7,17,31,.08);
  border-color: rgba(37,99,235,.32);
}
.risk-answer.is-selected {
  border-color: rgba(37,99,235,.52);
  background: linear-gradient(180deg, rgba(235,243,255,.96), rgba(248,250,255,.98));
  box-shadow: 0 18px 34px rgba(37,99,235,.12);
}
.risk-answer.is-selected .risk-answer-indicator {
  border-color: var(--primary);
  background: rgba(37,99,235,.08);
}
.risk-answer.is-selected .risk-answer-indicator::after {
  transform: scale(1);
}
.risk-nav-actions {
  display: flex;
  justify-content: space-between;
  gap: .8rem;
  margin-top: 1.25rem;
}
.risk-nav-actions .btn[disabled] {
  opacity: .5;
  pointer-events: none;
}
.risk-side-column {
  display: grid;
  gap: 1rem;
}
.risk-link-card { padding: 1.2rem; }
.risk-gate-section[hidden],
.risk-results-section[hidden] { display: none; }
.risk-summary-icon {
  width: 56px;
  height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(37,99,235,.12), rgba(56,189,248,.14));
  color: var(--primary-2);
  margin-bottom: 1rem;
}
.risk-summary-icon svg { width: 28px; height: 28px; fill: currentColor; }
.risk-result-top {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: start;
}
.risk-score-badge {
  min-width: 140px;
  padding: 1rem 1.1rem;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(229,238,252,.86));
  border: 1px solid rgba(37,99,235,.14);
  text-align: center;
}
.risk-score-badge strong {
  display: block;
  font-size: clamp(2rem, 5vw, 3rem);
  line-height: 1;
  letter-spacing: -.04em;
}
.risk-score-badge span { color: var(--text-soft); font-weight: 600; }
.risk-result-card.is-lower { border-color: rgba(16,185,129,.22); box-shadow: 0 20px 54px rgba(16,185,129,.09); }
.risk-result-card.is-moderate { border-color: rgba(245,158,11,.24); box-shadow: 0 20px 54px rgba(245,158,11,.11); }
.risk-result-card.is-higher { border-color: rgba(239,68,68,.22); box-shadow: 0 20px 54px rgba(239,68,68,.11); }
#risk-band-tag.risk-lower { background: rgba(16,185,129,.12); color: #047857; border-color: rgba(16,185,129,.18); }
#risk-band-tag.risk-moderate { background: rgba(245,158,11,.12); color: #b45309; border-color: rgba(245,158,11,.18); }
#risk-band-tag.risk-higher { background: rgba(239,68,68,.1); color: #b91c1c; border-color: rgba(239,68,68,.16); }
.risk-recommendation-grid .service-card { min-height: 100%; }
.risk-recommendation-grid .service-card h3 { margin-bottom: .45rem; }
.risk-result-actions { margin-top: 1rem; margin-bottom: 0; }
.risk-proof-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
@keyframes fadeSlideUp {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 1080px) {
  .risk-layout,
  .risk-tool-head { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .risk-tool-shell,
  .risk-result-card { padding: 1.15rem; border-radius: 24px; }
  .risk-question-stage { min-height: auto; }
  .risk-result-top { flex-direction: column; }
  .risk-score-badge { width: 100%; }
  .risk-proof-grid { grid-template-columns: 1fr; }
}
@media (hover: none) and (pointer: coarse) {
  .risk-answer:hover { transform: none; box-shadow: 0 10px 24px rgba(7,17,31,.05); }
}


/* SEO/navigation audit enhancements */
.site-header.is-scrolled {
  background: rgba(7, 17, 31, 0.9);
  box-shadow: 0 14px 30px rgba(5, 12, 25, 0.18);
}
.site-header.is-scrolled .nav-shell { min-height: 76px; }

.nav-item-group {
  position: relative;
  display: flex;
  align-items: center;
}
.nav-parent {
  border: 0;
  background: transparent;
  color: rgba(255,255,255,0.82);
  font-weight: 500;
  font-size: .95rem;
  padding: 0;
  cursor: pointer;
  transition: color .2s ease;
}
.nav-parent:hover,
.nav-item-group:hover > .nav-parent,
.nav-item-group:focus-within > .nav-parent { color: #fff; }

.nav-submenu {
  position: absolute;
  top: calc(100% + .9rem);
  left: 50%;
  transform: translateX(-50%);
  min-width: 260px;
  padding: .85rem;
  border-radius: 18px;
  background: rgba(8, 18, 35, 0.98);
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: var(--shadow-lg);
  display: grid;
  gap: .2rem;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}
.nav-submenu a {
  color: rgba(255,255,255,0.86);
  padding: .55rem .65rem;
  border-radius: 12px;
  font-size: .94rem;
}
.nav-submenu a:hover {
  color: #fff;
  background: rgba(255,255,255,.06);
}
.nav-item-group:hover > .nav-submenu,
.nav-item-group:focus-within > .nav-submenu,
.nav-item-group.is-open > .nav-submenu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}

.footer-shell-rich {
  display: grid;
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
  gap: 2rem;
  align-items: start;
}
.footer-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.2rem;
}
.footer-col h3 {
  margin: 0 0 .7rem;
  font-size: .95rem;
}
.footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: .45rem;
}
.footer-col a {
  color: var(--text-soft);
  transition: color .2s ease;
}
.footer-col a:hover { color: var(--primary-2); }
.footer-bottom {
  border-top: 1px solid rgba(15,23,42,.08);
  margin-top: 1rem;
  padding-top: 1rem;
}
.footer-brand p { max-width: 38ch; }

@media (max-width: 1180px) {
  .footer-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .nav-item-group { display: block; }
  .nav-parent {
    width: 100%;
    text-align: left;
    color: rgba(255,255,255,0.86);
    padding: .35rem 0;
  }
  .nav-submenu {
    position: static;
    transform: none;
    min-width: 0;
    margin-top: .4rem;
    padding: .35rem 0 0 .75rem;
    border: 0;
    box-shadow: none;
    background: transparent;
    display: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .nav-item-group.is-open > .nav-submenu { display: grid; }
  .nav-item-group:hover > .nav-submenu,
  .nav-item-group:focus-within > .nav-submenu { transform: none; }
  .footer-shell-rich { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .footer-grid { grid-template-columns: 1fr; }
}


.local-map-block{display:grid;grid-template-columns:1fr 1.15fr;gap:1.4rem;align-items:stretch;padding:1.25rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:var(--shadow-md)}
.local-map-copy h2{margin:.35rem 0 .75rem}
.local-nap a,.footer-local-links a{color:var(--primary-2);font-weight:700}
.map-embed-wrap{overflow:hidden;border-radius:18px;border:1px solid var(--line);min-height:320px;background:#dbe7f5}
.map-embed-wrap iframe{width:100%;height:100%;min-height:320px;border:0}
.review-signal-card{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.4rem;border-radius:22px;background:linear-gradient(135deg,#0d172a,#152645);color:#fff;box-shadow:var(--shadow-lg)}
.review-signal-card h3{margin:.1rem 0 .45rem}
.review-signal-card p{margin:0;color:rgba(255,255,255,.78)}
.footer-local-links{margin-top:.65rem;line-height:1.7}
.service-area-links{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1rem}
.service-area-links a{padding:.55rem .8rem;border-radius:999px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow-sm,0 8px 24px rgba(9,20,44,.06));font-weight:600;color:var(--primary-2)}
.nap-consistency-block{margin-top:1rem;padding:1rem 1.1rem;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-md)}
.authority-link-list{display:flex;flex-wrap:wrap;gap:.65rem}
@media (max-width: 900px){.local-map-block{grid-template-columns:1fr}.review-signal-card{flex-direction:column;align-items:flex-start}}


/* === Global design system audit + rebuild overrides === */
:root{
  --container: 1200px;
  --section-space: clamp(4.25rem, 8vw, 6.75rem);
  --section-space-tight: clamp(2.5rem, 4vw, 3.5rem);
  --content-max: 72ch;
  --heading-tight: 1.08;
  --body-size: 1.02rem;
  --shadow-soft: 0 16px 38px rgba(7,17,31,.09);
  --shadow-hover: 0 22px 54px rgba(7,17,31,.14);
  --card-border: rgba(116, 137, 172, 0.18);
}
html { -webkit-text-size-adjust: 100%; }
body{
  font-size: var(--body-size);
  text-rendering: optimizeLegibility;
}
main{display:block}
.container{
  width:min(var(--container), calc(100% - 2rem));
}
p, li{max-width: var(--content-max)}
h1,h2,h3{
  color: var(--text);
  letter-spacing: -.03em;
}
h1{
  line-height: .98;
  font-weight: 800;
}
h2{
  font-size: clamp(1.8rem, 3vw, 2.8rem);
  line-height: var(--heading-tight);
  margin: 0 0 .9rem;
}
h3{
  font-size: clamp(1.05rem, 1.6vw, 1.28rem);
  line-height: 1.18;
}
p + p{ margin-top: .85rem; }
.section{
  padding: var(--section-space) 0;
}
.section.section-tight,
.resources-filter-wrap,
.article-layout-wrap{
  padding-top: var(--section-space-tight);
  padding-bottom: var(--section-space-tight);
}
.section-heading,
.article-shell > h2:first-child{
  margin-bottom: 1.4rem;
}
.section-heading p,
.hero-support,
.hero-lead,
.subheadline{
  max-width: 66ch;
}
.hero{
  padding: clamp(4.2rem, 8vw, 6.4rem) 0 clamp(2.6rem, 5vw, 3.6rem);
}
.hero-grid,
.split-layout{
  align-items: center;
}
.hero h1{
  max-width: 12ch;
}
.hero-copy > *:last-child{ margin-bottom: 0; }
.site-header{
  transition: background .25s ease, box-shadow .25s ease, border-color .25s ease, transform .25s ease;
}
.site-header.is-scrolled{
  background: rgba(7,17,31,.88);
  box-shadow: 0 16px 36px rgba(7,17,31,.22);
}
.nav-shell{ min-height: 78px; }
.site-nav > a:not(.btn),
nav a{
  position: relative;
  transition: color .2s ease;
}
.site-nav > a:not(.btn)::after,
nav a::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:-.4rem;
  height:2px;
  border-radius:999px;
  background: linear-gradient(90deg, var(--accent), #fff);
  transform: scaleX(0);
  transform-origin:left center;
  transition: transform .22s ease;
}
.site-nav > a:not(.btn):hover::after,
nav a:hover::after{ transform: scaleX(1); }

.btn,
.btn-primary,
.btn-secondary,
.light-btn{
  min-height: 50px;
  gap: .55rem;
  box-shadow: none;
}
.btn:hover,
.btn-primary:hover,
.btn-secondary:hover,
.light-btn:hover{
  transform: translateY(-2px);
}
.btn-primary,
.btn-primary:link{
  box-shadow: 0 14px 30px rgba(37,99,235,.22);
}
.btn-secondary,
.light-btn{
  backdrop-filter: blur(10px);
}
.hero-image-card,
.feature-photo,
.security-photo,
.service-media,
.cyber-feature-photo,
.managed-security-photo,
.managed-feature-photo,
.cyber-security-photo{
  border-radius: 24px;
  border: 1px solid var(--card-border);
  box-shadow: var(--shadow-soft);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,248,252,.98));
}
.hero-image-card,
.feature-photo,
.security-photo,
.service-media,
.cyber-feature-photo,
.managed-security-photo,
.managed-feature-photo,
.cyber-security-photo{
  padding: 10px;
}
.hero-image-card img,
.feature-photo img,
.security-photo img,
.service-media img,
.cyber-feature-photo img,
.managed-security-photo img,
.managed-feature-photo img,
.cyber-security-photo img{
  width:100%;
  height:100%;
  border-radius: 16px;
  object-fit: cover;
  transform: translateZ(0);
  transition: transform .32s ease, filter .32s ease;
  background: #dfe9f7;
}
.hero-image-card img{
  aspect-ratio: 16 / 9 !important;
}
.service-media img{
  aspect-ratio: 1 / 1 !important;
}
.feature-photo img,
.security-photo img,
.cyber-feature-photo img,
.managed-security-photo img,
.managed-feature-photo img,
.cyber-security-photo img{
  aspect-ratio: 4 / 3 !important;
}
img[src*="hero-tech"]{ object-position: 54% 18% !important; }
img[src*="projects-rack"]{ object-position: 50% 18% !important; }
img[src*="managed-monitoring"]{ object-position: 50% 30% !important; }
img[src*="security-soc"]{ object-position: 50% 26% !important; }
img[src*="client-support"]{ object-position: 50% 24% !important; }

.service-card,
.issue-card,
.benefit-card,
.check-card,
.security-card,
.process-card,
.buying-card,
.industry-card,
.resource-card,
.contact-card,
.doc-card,
.support-step,
.trust-card,
.faq-list details,
.card{
  border-color: var(--card-border);
  box-shadow: var(--shadow-soft);
}
.service-card,
.issue-card,
.benefit-card,
.check-card,
.security-card,
.process-card,
.buying-card,
.industry-card,
.resource-card,
.contact-card,
.doc-card,
.support-step,
.trust-card,
.card{
  transition: transform .24s ease-out, box-shadow .24s ease-out, border-color .24s ease-out;
}
@media (hover:hover) and (pointer:fine){
  .service-card:hover,
  .issue-card:hover,
  .benefit-card:hover,
  .check-card:hover,
  .security-card:hover,
  .process-card:hover,
  .buying-card:hover,
  .industry-card:hover,
  .resource-card:hover,
  .contact-card:hover,
  .doc-card:hover,
  .support-step:hover,
  .trust-card:hover,
  .card:hover{
    transform: translateY(-6px);
    box-shadow: var(--shadow-hover);
    border-color: rgba(37,99,235,.24);
  }
}
.icon-box,
.industry-icon,
.support-step .step-number{
  flex-shrink: 0;
}
.service-grid,
.issue-grid,
.check-grid,
.benefit-grid,
.security-grid,
.resource-grid,
.trust-grid,
.support-process-grid,
.card-grid{
  align-items: stretch;
}
.service-card,
.industry-card,
.resource-card,
.card{
  min-height: 100%;
  display:flex;
  flex-direction:column;
}
.service-card > a,
.industry-link,
.resource-link{
  margin-top: auto;
}
.footer-shell,
.site-footer{
  margin-top: 0;
}
.footer-shell{
  border-top: 1px solid rgba(15,23,42,.08);
}
.footer-logo{
  width: 172px;
  height: auto;
  object-fit: contain;
}
.footer-col a{
  color: #5b6a84;
}
.footer-col a:hover{
  color: var(--primary-2);
}
.footer-bottom,
.footer-bottom p{
  max-width: none;
}
.logo{
  display:inline-flex;
  align-items:center;
  min-height: 72px;
  color:#fff;
  font-weight:800;
  letter-spacing:-.02em;
  font-size:1.05rem;
}
.site-header > .container{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  min-height:78px;
}
.site-header nav{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:1rem 1.25rem;
}
.site-header nav a{
  color: rgba(255,255,255,.84);
  font-weight:600;
}
.site-header nav a:hover{ color:#fff; }
.hero > .container > h1,
.hero > .container > .subheadline,
.hero > .container > .btn-primary,
.hero > .container > .btn-secondary{
  position: relative;
  z-index: 1;
}
.subheadline{
  font-size: 1.14rem;
  color: rgba(255,255,255,.88);
  margin: 1rem 0 1.2rem;
}
.feature-list{
  list-style:none;
  padding:0;
  margin:1rem 0 0;
  display:grid;
  gap:.8rem;
}
.feature-list li{
  position:relative;
  padding-left:1.25rem;
  color: var(--text-soft);
}
.feature-list li::before{
  content:"";
  position:absolute;
  left:0; top:.66rem;
  width:.48rem; height:.48rem;
  border-radius:999px;
  background: linear-gradient(135deg, var(--primary), var(--accent));
  box-shadow: 0 0 0 6px rgba(37,99,235,.08);
}
.card-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:1.2rem;
}
.card{
  padding: 1.35rem;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,248,255,.98));
  border: 1px solid var(--card-border);
}
.card h3{ margin:0 0 .5rem; }
.card p{ margin:0 0 .9rem; color:var(--text-soft); }
.card a{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  font-weight:700;
  margin-top:auto;
}
.card a::after{ content:'→'; transition: transform .2s ease; }
.card:hover a::after{ transform: translateX(3px); }

.cta{
  padding: var(--section-space-tight) 0 var(--section-space);
}
.cta > .container{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding: 1.75rem;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(7,17,31,.97), rgba(14,39,66,.96));
  box-shadow: 0 22px 54px rgba(7,17,31,.18);
  color:#fff;
}
.cta h2{ color:#fff; margin:0; }
.cta p{ color: rgba(255,255,255,.76); margin:.45rem 0 0; max-width: 44rem; }
.cta .btn-secondary{ color:#fff; }
.site-footer{
  background: linear-gradient(180deg, rgba(7,17,31,.98), rgba(8,16,30,1));
  color:#fff;
  padding: 2rem 0;
}
.site-footer .container p{
  color: rgba(255,255,255,.72);
  max-width:none;
}
.resource-filter .filter-chip,
.resource-filter button{
  min-height: 42px;
}
figure{ margin:0; }

@media (max-width: 1080px){
  .hero-grid,
  .split-layout{
    grid-template-columns: 1fr;
  }
  .card-grid{
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
  .cta > .container{
    flex-direction:column;
    align-items:flex-start;
  }
}
@media (max-width: 760px){
  .container{ width:min(var(--container), calc(100% - 1.2rem)); }
  .section{ padding: 3.4rem 0; }
  .hero{ padding-top: 3.6rem; }
  .hero h1{ max-width: 100%; }
  .card-grid,
  .service-grid,
  .issue-grid,
  .check-grid,
  .benefit-grid,
  .security-grid{
    grid-template-columns: 1fr !important;
  }
  .site-header > .container{
    min-height: 72px;
  }
  .site-header nav{
    gap:.85rem 1rem;
  }
  .service-media img{
    aspect-ratio: 4 / 3 !important;
  }
  .hero-image-card img,
  .feature-photo img,
  .security-photo img{
    aspect-ratio: 4 / 3 !important;
  }
}
@media (hover:none){
  .service-card:hover,
  .issue-card:hover,
  .benefit-card:hover,
  .check-card:hover,
  .security-card:hover,
  .process-card:hover,
  .buying-card:hover,
  .industry-card:hover,
  .resource-card:hover,
  .contact-card:hover,
  .doc-card:hover,
  .support-step:hover,
  .trust-card:hover,
  .card:hover{
    transform:none;
    box-shadow:var(--shadow-soft);
    border-color:var(--card-border);
  }
}


/* Image system implementation */
:root{
  --image-radius: 20px;
}
img[loading="lazy"]{content-visibility:auto;}
.hero-image-card,
.service-media,
.feature-photo,
.security-photo,
.industry-hero-image,
.risk-hero-image{
  overflow:hidden;
}
.hero-image-card img,
.industry-hero-image img,
.risk-hero-image img{
  aspect-ratio:16/9 !important;
  width:100%;
  height:auto;
  object-fit:cover;
  object-position:center center;
}
.service-media img{aspect-ratio:1/1 !important;object-fit:cover;object-position:center center;}
.feature-photo img,
.security-photo img{aspect-ratio:4/3 !important;object-fit:cover;object-position:center center;}
.service-icon-media{
  margin:0 0 1rem !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  max-width:120px;
  width:120px;
  align-self:flex-start;
}
.service-icon-media::before{display:none !important;}
.service-icon-media img{
  aspect-ratio:1/1 !important;
  border-radius:22px !important;
  border:1px solid rgba(37,99,235,.14);
  box-shadow:0 16px 32px rgba(15,23,42,.10);
  background:linear-gradient(180deg,#fff,#eff6ff);
}
@media (hover:hover) and (pointer:fine){
  .service-icon-media img:hover{transform:translateY(-2px);}
}
.hero-image-card img[src*="homepage-hero-network-operations"]{object-position:center 50% !important;}
.hero-image-card img[src*="managed-it-monitoring-hero"]{object-position:center 36% !important;}
.hero-image-card img[src*="cybersecurity-hero-security-operations"]{object-position:center 50% !important;}
.hero-image-card img[src*="it-infrastructure-deployment"]{object-position:center 44% !important;}
.hero-image-card img[src*="industries-hero-professionals"]{object-position:center 48% !important;}
.hero-image-card img[src*="sacramento-digital-network"]{object-position:center 52% !important;}
.hero-image-card img[src*="resource-center-hero"]{object-position:center 45% !important;}
.hero-image-card img[src*="cybersecurity-risk-dashboard"]{object-position:center 50% !important;}
.security-photo img[src*="system-monitoring-dashboard"]{object-position:center 50% !important;}
.security-photo img[src*="layered-cybersecurity-protection"]{object-position:center 50% !important;}
.industry-hero-image{grid-column:1 / -1; margin-bottom:.25rem;}
.industry-hero-image img{aspect-ratio:4/3 !important;}
.hero-panel .industry-visual-stack{grid-template-columns:repeat(2,minmax(0,1fr));}
.hero-panel .industry-visual-stack .hero-image-card{grid-column:1 / -1;}
.risk-hero-panel{display:grid;gap:1rem;align-content:start;}
.risk-hero-image{order:-1;}
@media (max-width:1080px){
  .service-icon-media{width:104px;max-width:104px;}
}
@media (max-width:760px){
  .service-icon-media{width:96px;max-width:96px;}
  .hero-image-card img,
  .risk-hero-image img{aspect-ratio:16/10 !important;}
}


/* Conversion, authority, and polish upgrades */
.site-header.is-scrolled .nav-shell{min-height:72px}
.site-header.is-scrolled .brand-logo{width:164px}
.site-nav > a:not(.btn), .nav-parent{position:relative}
.site-nav > a:not(.btn)::after, .nav-parent::after{content:"";position:absolute;left:0;bottom:-.35rem;width:100%;height:2px;background:linear-gradient(90deg,var(--accent),transparent);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
.site-nav > a:not(.btn):hover::after, .nav-parent:hover::after{transform:scaleX(1)}
.hero-actions .btn-primary{background:linear-gradient(135deg,#0ea5e9,#2563eb)}
.section{padding:4.6rem 0}
.section-heading.narrow{max-width:760px}
.section-heading h2, .section h2{letter-spacing:-.03em}
p, li{max-width:72ch}
.authority-section{padding-top:1.75rem}
.authority-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
.authority-card,.feature-card.compact-card{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(37,99,235,.10);border-radius:var(--radius-md);padding:1.1rem 1rem 1rem;box-shadow:var(--shadow-md);transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease}
.authority-card:hover,.feature-card.compact-card:hover,.service-card:hover,.issue-card:hover,.benefit-card:hover,.trust-card:hover,.included-card:hover,.process-card:hover,.resource-card:hover,.industry-card:hover{transform:translateY(-6px);box-shadow:0 18px 44px rgba(11,31,62,.16);border-color:rgba(37,99,235,.22)}
.authority-card .icon-box,.feature-card .icon-box{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#e6f4ff,#eef6ff);color:var(--primary);font-size:1.2rem;margin-bottom:.8rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.card-grid.four-up{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.card-grid.two-up{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.card-arrow{display:inline-flex;align-items:center;gap:.35rem;margin-top:auto;font-weight:700;color:var(--primary-2);transition:transform .2s ease}
.compact-card:hover .card-arrow{transform:translateX(4px)}
.compact-card p{margin-bottom:0}
.process-grid-five{grid-template-columns:repeat(5,minmax(0,1fr))}
.sitewide-offer-band{border:1px solid rgba(255,255,255,.12);background:linear-gradient(135deg,#081527,#0f2745)}
.footer-cta-strip{padding:0 0 1rem}
.footer-cta-shell{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.4rem 1.5rem;border-radius:var(--radius-lg);background:linear-gradient(135deg,#0a1830,#123055);color:#fff;box-shadow:var(--shadow-lg)}
.footer-cta-shell h2{margin:.35rem 0 .5rem;color:#fff}
.review-signal-card,.cta-band,.authority-card,.feature-card.compact-card{backdrop-filter:blur(8px)}
.local-support-layout .check-list{margin-top:1rem}
.check-list{list-style:none;padding:0;display:grid;gap:.65rem}
.check-list li{padding-left:1.5rem;position:relative}
.check-list li::before{content:"";position:absolute;left:0;top:.55rem;width:9px;height:9px;border-radius:999px;background:linear-gradient(135deg,var(--success),var(--accent));box-shadow:0 0 0 5px rgba(16,185,129,.12)}
.inline-link-row a{font-weight:700;color:var(--primary-2)}
.resource-card,.service-card,.issue-card,.benefit-card,.trust-card,.included-card,.process-card,.industry-card,.support-step{padding:1.15rem 1rem!important}
.service-card h3,.issue-card h3,.benefit-card h3,.trust-card h3,.included-card h3,.process-card h3,.industry-card h3,.support-step h3{margin-top:.2rem}
.hero-image-card img,.section-visual img,.resource-hero img{aspect-ratio:16/9;object-fit:cover;width:100%;border-radius:calc(var(--radius-lg) - 6px)}
.card-media img,.service-card img,.industry-card img,.resource-card img{aspect-ratio:1/1;object-fit:cover;width:100%}
.industry-page .hero-image-card img,.industry-hero img{aspect-ratio:4/3}
.site-footer{margin-top:0}
@media (max-width: 1100px){.authority-grid,.process-grid-five,.card-grid.four-up{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-cta-shell{flex-direction:column;align-items:flex-start}}
@media (max-width: 760px){.section{padding:3.5rem 0}.authority-grid,.card-grid.two-up,.card-grid.four-up,.process-grid-five{grid-template-columns:1fr}.footer-cta-shell{padding:1.15rem}.hero-actions .btn{width:100%}}


/* --- Enhanced conversion + authority polish --- */
.site-header.is-scrolled { box-shadow: 0 16px 38px rgba(2,12,27,.24); }
.hero { overflow: clip; }
.hero h1 { max-width: 13ch; }
.proof-strip { padding: 0 0 1.2rem; }
.proof-grid { display:grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .9rem; }
.proof-item {
  background: linear-gradient(180deg,#fff,rgba(255,255,255,.92));
  border: 1px solid rgba(37,99,235,.08);
  box-shadow: 0 10px 26px rgba(7,17,31,.06);
  border-radius: 18px;
  padding: 1rem 1.05rem;
  font-weight: 700;
  color: #0f2745;
  text-align:center;
}
.authority-card, .feature-card, .service-card, .industry-card, .benefit-card, .issue-card, .need-card, .check-card, .resource-card, .trust-bullet, .process-card {
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease;
}
@media (hover:hover) and (pointer:fine) {
  .authority-card:hover, .feature-card:hover, .service-card:hover, .industry-card:hover, .benefit-card:hover, .issue-card:hover, .need-card:hover, .check-card:hover, .resource-card:hover, .trust-bullet:hover, .process-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 48px rgba(10,20,40,.12);
    border-color: rgba(37,99,235,.18);
  }
  .feature-card:hover .card-arrow,
  .service-card:hover a::after,
  .industry-card:hover .industry-link::after,
  .text-link:hover::after { transform: translateX(4px); }
}
.card-arrow, .service-card a::after, .industry-link::after, .text-link::after {
  content: '→'; display:inline-block; margin-left:.35rem; transition: transform .22s ease;
}
.section { padding: 4.75rem 0; }
.section.section-tight { padding: 3.4rem 0; }
.section-heading { margin-bottom: 1.8rem; }
.section-heading.narrow { max-width: 760px; }
.service-card, .feature-card, .benefit-card, .issue-card, .industry-card, .check-card, .need-card {
  padding: 1.35rem;
  border-radius: 22px;
  border: 1px solid rgba(15,23,42,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,251,255,.96));
  box-shadow: 0 10px 28px rgba(8,18,36,.06);
}
.service-card ul { padding-left: 1rem; margin: .8rem 0 1rem; }
.icon-box {
  width: 2.9rem; height: 2.9rem; display:grid; place-items:center; border-radius: 14px;
  background: linear-gradient(135deg, rgba(37,99,235,.12), rgba(56,189,248,.14));
  color: var(--primary-2); font-weight: 800; margin-bottom: .95rem; border: 1px solid rgba(37,99,235,.08);
}
.process-grid.timeline-grid { grid-template-columns: repeat(5,minmax(0,1fr)); position:relative; gap: 1rem; }
.process-card { position:relative; overflow:hidden; }
.process-card::before { content:''; position:absolute; inset:0 auto 0 0; width:4px; background: linear-gradient(180deg, var(--accent), var(--primary)); opacity:.55; }
.process-step { display:inline-grid; place-items:center; width:2.4rem; height:2.4rem; border-radius:999px; background:linear-gradient(135deg,var(--primary),var(--accent)); color:#fff; font-weight:800; margin-bottom:.9rem; box-shadow:0 10px 20px rgba(37,99,235,.24); }
.process-card:hover .process-step { box-shadow:0 0 0 8px rgba(37,99,235,.12), 0 10px 20px rgba(37,99,235,.24); }
.sitewide-offer-band, .review-signal-card { border-radius: 24px; }
.sitewide-offer-band { background: linear-gradient(135deg, #0b1a33 0%, #10254c 55%, #12335f 100%); color:#fff; border:1px solid rgba(255,255,255,.1); box-shadow: 0 24px 52px rgba(8,18,36,.2); }
.sitewide-offer-band .section-tag { background: rgba(255,255,255,.08); color:#dbeafe; border-color:rgba(255,255,255,.1); }
.cta-band, .review-signal-card, .footer-cta-shell { padding: 1.6rem 1.7rem; }
.footer-grid-expanded { grid-template-columns: repeat(5, minmax(0,1fr)); gap: 1.35rem; }
.footer-col ul { list-style:none; margin:.85rem 0 0; padding:0; display:grid; gap:.5rem; }
.footer-col a, .footer-local-links a, .footer-brand a { color: rgba(255,255,255,.78); }
.footer-col a:hover, .footer-local-links a:hover, .footer-brand a:hover { color:#fff; }
.related-cities-section .feature-card, .resource-pathways .feature-card, .related-services-section .feature-card { min-height: 100%; }
.text-link { font-weight:700; color: var(--primary-2); }
.text-link::after { color: currentColor; }
.faq-item { border:1px solid rgba(15,23,42,.08); background:#fff; border-radius:18px; padding: .2rem 1rem; box-shadow:0 10px 24px rgba(10,20,40,.05); }
.faq-item + .faq-item { margin-top:.8rem; }
.faq-item summary { cursor:pointer; list-style:none; font-weight:700; padding: 1rem 0; }
.faq-item p { padding: 0 0 1rem; margin:0; color: var(--text-soft); }
.benefit-grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap:1rem; }
.card-grid.four-up, .card-grid.three-up { display:grid; gap:1rem; }
.card-grid.four-up { grid-template-columns: repeat(4,minmax(0,1fr)); }
.card-grid.three-up { grid-template-columns: repeat(3,minmax(0,1fr)); }
.reveal { opacity:0; transform: translateY(28px); transition: opacity .55s ease, transform .55s ease; }
.reveal.is-visible, .reveal-group.is-visible, .reveal-group.is-visible > * { opacity:1; transform:none; }
.reveal-group > * { opacity:0; transform: translateY(28px); transition: opacity .55s ease, transform .55s ease; }
.review-signal-card { display:flex; justify-content:space-between; align-items:center; gap:1rem; background:linear-gradient(180deg,#fff,#f7fbff); border:1px solid rgba(37,99,235,.08); box-shadow:0 18px 36px rgba(8,18,36,.07); }
.footer-cta-strip { background:linear-gradient(135deg,#081426,#0b1e38 58%, #0f315c); color:#fff; }
.footer-cta-shell { display:flex; align-items:center; justify-content:space-between; gap:1.2rem; }
.section .split-layout, .hero-grid, .footer-shell-rich { align-items: stretch; }
.hero-image-card { overflow:hidden; }
.hero-image-card img { width:100%; height:100%; object-fit:cover; }
@media (max-width: 1100px){
  .proof-grid, .process-grid.timeline-grid, .footer-grid-expanded, .card-grid.four-up { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .card-grid.three-up { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px){
  .section { padding: 3.7rem 0; }
  .proof-grid, .process-grid.timeline-grid, .footer-grid-expanded, .card-grid.four-up, .card-grid.three-up { grid-template-columns: 1fr; }
  .review-signal-card, .footer-cta-shell { flex-direction:column; align-items:flex-start; }
}


/* Scoped dark-surface contrast fix */
.hero,
.security-section,
.cta-shell,
.cta-band,
.site-footer,
[class*="page-hero"],
[class*="hero-section"],
[class*="section-dark"] {
  color: #ffffff;
}

.hero :is(h1,h2,h3,h4,h5,h6,strong),
.security-section :is(h1,h2,h3,h4,h5,h6,strong),
.cta-shell :is(h1,h2,h3,h4,h5,h6,strong),
.cta-band :is(h1,h2,h3,h4,h5,h6,strong),
.site-footer :is(h1,h2,h3,h4,h5,h6,strong),
[class*="page-hero"] :is(h1,h2,h3,h4,h5,h6,strong),
[class*="hero-section"] :is(h1,h2,h3,h4,h5,h6,strong),
[class*="section-dark"] :is(h1,h2,h3,h4,h5,h6,strong) {
  color: #ffffff;
}

.hero :is(p,li,span,label,small),
.security-section :is(p,li,span,label,small),
.cta-shell :is(p,li,span,label,small),
.cta-band :is(p,li,span,label,small),
.site-footer :is(p,li,span,label,small),
[class*="page-hero"] :is(p,li,span,label,small),
[class*="hero-section"] :is(p,li,span,label,small),
[class*="section-dark"] :is(p,li,span,label,small) {
  color: rgba(255,255,255,0.86);
}

.hero a:not(.btn),
.security-section a:not(.btn),
.cta-shell a:not(.btn),
.cta-band a:not(.btn),
.site-footer a:not(.btn),
[class*="page-hero"] a:not(.btn),
[class*="hero-section"] a:not(.btn),
[class*="section-dark"] a:not(.btn) {
  color: #ffffff;
}

.hero a:not(.btn):hover,
.security-section a:not(.btn):hover,
.cta-shell a:not(.btn):hover,
.cta-band a:not(.btn):hover,
.site-footer a:not(.btn):hover,
[class*="page-hero"] a:not(.btn):hover,
[class*="hero-section"] a:not(.btn):hover,
[class*="section-dark"] a:not(.btn):hover {
  color: #93c5fd;
}

.panel-card,
.security-card,
.cta-shell,
.cta-band,
.hero-panel,
.site-footer {
  color: #ffffff;
}
.panel-card h2,
.panel-card h3,
.security-card h2,
.security-card h3,
.cta-shell h2,
.cta-band h2,
.site-footer h2,
.site-footer h3 {
  color: #ffffff;
}
.panel-card p,
.security-card p,
.cta-shell p,
.cta-band p,
.site-footer p,
.site-footer li,
.site-footer span {
  color: rgba(255,255,255,0.82);
}


/* Restored hero image visibility safeguards */
.hero-image-card img,
.feature-photo img,
.security-photo img,
.service-media img {
  display: block;
  max-width: 100%;
}
.page-hero-compact .hero-image-card {
  min-height: 100%;
}

/* Hero conversion refinements */
.hero-micro-signals{
  display:flex;
  flex-wrap:wrap;
  gap:.8rem 1.1rem;
  align-items:center;
  margin:.2rem 0 1.1rem;
  color:rgba(255,255,255,.86);
  font-size:.92rem;
  font-weight:600;
}
.hero-micro-signals span{
  position:relative;
  padding-left:1rem;
}
.hero-micro-signals span::before{
  content:"";
  position:absolute;
  left:0;
  top:.48rem;
  width:6px;
  height:6px;
  border-radius:999px;
  background:var(--accent, #38bdf8);
  box-shadow:0 0 0 4px rgba(56,189,248,.14);
}
.hero .btn-risk{
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.12);
  color:#fff;
}
.hero .btn-risk:hover{
  background:rgba(255,255,255,.18);
  color:#fff;
}
.hero .stat-card,
.hero .panel-card,
.hero .hero-stat-card{
  color:#fff;
}
.hero .stat-card p,
.hero .panel-card p,
.hero .hero-stat-card p{
  color:rgba(255,255,255,.84);
}
@media (max-width: 760px){
  .hero-micro-signals{gap:.55rem .85rem;font-size:.86rem;}
}


/* Final surgical polish */
.authority-band{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  padding:0;
}
.authority-pill{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:.7rem 1rem;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:var(--shadow-sm);
  font-weight:700;
  color:var(--ink-1);
}
.authority-pill:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-md);
}
.metric-card{
  min-width:0;
}
.metric-value{
  display:inline-block;
  min-width:4ch;
}


/* Homepage capability grid polish */
.proof-grid--capabilities{
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: stretch;
}
.proof-item-card{
  min-height: 184px;
  padding: 1.15rem 1rem 1.05rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .9rem;
  text-align: center;
  transition: transform .24s ease-out, box-shadow .24s ease-out, border-color .24s ease-out;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}
.proof-item-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.12);
  border-color: rgba(37,99,235,.16);
}
.proof-item-card h3{
  margin: 0;
  font-size: 1rem;
  line-height: 1.28;
  color: #10203d;
}
.proof-item-icon{
  width: 58px;
  height: 58px;
  margin: 0;
  flex: 0 0 auto;
}
.proof-item-icon svg{
  width: 28px;
  height: 28px;
  fill: var(--primary-2);
}
@media (max-width: 1180px){
  .proof-grid--capabilities{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 820px){
  .proof-grid--capabilities{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 560px){
  .proof-grid--capabilities{
    grid-template-columns: 1fr;
  }
  .proof-item-card{
    min-height: 0;
  }
}


/* Badge row refinement */
.authority-band-section{
  padding-top: 1rem;
  padding-bottom: 1.15rem;
}
.authority-band{
  justify-content: center;
  gap: 1rem;
}
.authority-pill{
  min-height: 48px;
  padding: .8rem 1.2rem;
  border-radius: 999px;
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(37,99,235,.08);
  box-shadow: 0 10px 24px rgba(15,23,42,.06);
  backdrop-filter: blur(6px);
}
.authority-pill:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(15,23,42,.1);
  border-color: rgba(37,99,235,.16);
}
@media (max-width: 900px){
  .authority-band{
    justify-content: flex-start;
  }
}


/* Homepage hero reassurance row */
.hero-reassurance-row{
  display:flex;
  flex-wrap:wrap;
  gap:.65rem 1rem;
  align-items:center;
  margin:.2rem 0 1rem;
  color:rgba(255,255,255,.86);
  font-size:.88rem;
  line-height:1.4;
}
.hero-reassurance-item{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  white-space:nowrap;
}
.hero-reassurance-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-size:.72rem;
  font-weight:800;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  flex:0 0 auto;
}
@media (max-width: 760px){
  .hero-reassurance-row{
    gap:.55rem .85rem;
    font-size:.84rem;
    margin:.15rem 0 .95rem;
  }
  .hero-reassurance-item{
    white-space:normal;
  }
}

/* header nav standardization */
.site-nav .nav-cta{white-space:nowrap;}
.site-nav > a, .site-nav .nav-parent{white-space:nowrap;}


/* March 2026 hero conversion and Sacramento trust panel refinements */
.hero-actions .hero-tertiary-cta{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.14);
  color:#fff;
}
.hero-actions .hero-tertiary-cta:hover{
  background:rgba(255,255,255,.16);
  color:#fff;
}
.hero .hero-metrics{
  grid-template-columns:repeat(2,minmax(0,1fr));
  max-width:32rem;
}
.sac-hero-image img{
  aspect-ratio:16/10 !important;
  min-height:320px;
}
.sac-hero-trust-panel{
  display:grid;
  gap:.9rem;
  padding:1.2rem 1.2rem 1.1rem;
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.06));
}
.sac-hero-trust-panel h3{
  margin:0;
  font-size:1.1rem;
}
.sac-hero-trust-intro{
  margin:0;
  color:rgba(255,255,255,.78);
  font-size:.95rem;
}
.sac-hero-trust-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:.7rem;
}
.sac-hero-trust-list li{
  display:flex;
  align-items:flex-start;
  gap:.7rem;
  color:rgba(255,255,255,.92);
  font-weight:600;
  line-height:1.4;
}
.sac-trust-check{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:20px;
  height:20px;
  flex:0 0 auto;
  border-radius:999px;
  background:rgba(56,189,248,.14);
  border:1px solid rgba(56,189,248,.28);
  color:#dff5ff;
  font-size:.78rem;
  font-weight:800;
  margin-top:.05rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
@media (max-width: 760px){
  .hero .hero-metrics{max-width:none;}
  .sac-hero-image img{min-height:240px;}
  .sac-hero-trust-panel{padding:1rem;}
}

/* March 2026 homepage hero proof panel refinement */
.hero-panel{
  grid-template-rows:auto auto;
  align-self:start;
}
.hero-image-card--homepage{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:unset;
  height:auto;
  padding:0;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(8,18,35,.96) 0%, rgba(10,22,42,.9) 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 22px 60px rgba(2,8,20,.24);
}
.hero-image-card--homepage::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at center, rgba(56,189,248,.16), rgba(56,189,248,0) 62%);
  pointer-events:none;
  z-index:0;
}
.hero-image-card--homepage::after{
  opacity:1;
  background:linear-gradient(180deg, rgba(8,18,35,.02) 0%, rgba(8,18,35,.18) 100%);
}
.hero-image-card--homepage img,
.hero-image-card img[src*="homepage-hero-abso-technician"]{
  position:relative;
  z-index:1;
  width:100% !important;
  height:auto !important;
  max-width:100%;
  max-height:none;
  min-height:0 !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block;
  border-radius:calc(var(--radius-lg) - 6px);
  filter:drop-shadow(0 18px 40px rgba(3,10,22,.28));
}
.hero-image-card--homepage .hero-image-overlay{
  left:1.15rem;
  right:1.15rem;
  bottom:1.15rem;
  gap:.65rem;
  z-index:2;
}
.hero-panel .panel-stack{
  align-self:end;
}
@media (max-width: 1100px){
  .hero-panel .panel-stack{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (max-width: 760px){
  .hero-image-card--homepage .hero-image-overlay{
    left:.95rem;
    right:.95rem;
    bottom:.95rem;
  }
}

/* March 2026 global hero consistency pass */
.hero-panel,
.hero-panel--media-fill,
.hero-panel--stacked{
  min-width:0;
}
.hero-panel--media-fill{
  align-self:stretch;
  align-content:stretch;
}
.hero-panel--media-fill > .hero-image-card{
  height:100%;
  min-height:clamp(320px, 34vw, 560px);
}
.page-hero-compact .hero-panel--media-fill > .hero-image-card,
.resources-hub-hero .hero-panel--media-fill > .hero-image-card,
.article-hero .hero-panel--media-fill > .hero-image-card,
.guide-shell .hero-panel--media-fill > .hero-image-card,
.risk-hero .hero-panel--media-fill > .hero-image-card{
  min-height:clamp(300px, 30vw, 460px);
}
.hero-panel--stacked{
  align-content:start;
}
.hero-panel--stacked > .hero-image-card{
  min-height:clamp(260px, 24vw, 360px);
}
.hero-panel--media-fill > .hero-image-card:not(.hero-image-card--homepage) img,
.hero-panel--stacked > .hero-image-card:not(.hero-image-card--homepage) img,
.hero-panel--media-fill > .industry-visual-stack .hero-image-card img,
.hero-panel--stacked > .industry-visual-stack .hero-image-card img,
.hero-panel--stacked > .risk-hero-image img,
.hero-panel--media-fill > .risk-hero-image img{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center center;
  display:block;
}
.hero-panel--media-fill > .hero-image-card:not(.hero-image-card--homepage){
  padding:12px;
}
.hero-panel--media-fill > .hero-image-card:not(.hero-image-card--homepage) img,
.hero-panel--stacked > .hero-image-card:not(.hero-image-card--homepage) img{
  border-radius:calc(var(--radius-lg) - 8px);
}
.hero-panel--stacked .panel-stack,
.hero-panel--stacked .sac-hero-trust-panel,
.hero-panel--stacked .industry-visual-stack,
.hero-panel--stacked .risk-overview-card{
  margin-top:0;
}
.hero-panel--stacked .panel-card,
.hero-panel--stacked .sac-hero-trust-panel,
.hero-panel--stacked .risk-overview-card{
  border-radius:var(--radius-lg);
}
.resources-hub-hero .hero-panel--media-fill > .hero-image-card,
.article-hero .hero-panel--media-fill > .hero-image-card,
.guide-shell .hero-panel--media-fill > .hero-image-card,
.security-assessment-shell .hero-panel--media-fill > .hero-image-card{
  box-shadow:0 20px 46px rgba(6,18,40,.16);
}
.resources-hub-hero .hero-panel--media-fill > .hero-image-card img,
.article-hero .hero-panel--media-fill > .hero-image-card img,
.guide-shell .hero-panel--media-fill > .hero-image-card img,
.security-assessment-shell .hero-panel--media-fill > .hero-image-card img{
  object-position:center 42%;
}
.page-hero-compact .hero-grid,
.resources-hub-hero .hero-grid,
.article-hero .hero-grid,
.guide-shell .hero-grid,
.risk-hero .hero-grid{
  align-items:stretch;
}
.hero-panel--stacked .hero-image-overlay{
  left:1rem;
  right:1rem;
  bottom:1rem;
}
.hero-panel--stacked .hero-badge,
.hero-panel--media-fill .hero-badge{
  box-shadow:0 10px 24px rgba(2,8,20,.16);
}
.hero-panel--stacked .panel-stack,
.hero-panel--stacked .industry-visual-stack,
.hero-panel--stacked .risk-overview-card,
.hero-panel--stacked .sac-hero-trust-panel,
.hero-panel--media-fill + .panel-stack{
  gap:1rem;
}
@media (max-width: 1080px){
  .hero-panel--media-fill > .hero-image-card{
    min-height:clamp(300px, 42vw, 460px);
  }
  .hero-panel--stacked > .hero-image-card{
    min-height:clamp(240px, 36vw, 320px);
  }
}
@media (max-width: 760px){
  .hero-panel--media-fill > .hero-image-card,
  .page-hero-compact .hero-panel--media-fill > .hero-image-card,
  .resources-hub-hero .hero-panel--media-fill > .hero-image-card,
  .article-hero .hero-panel--media-fill > .hero-image-card,
  .guide-shell .hero-panel--media-fill > .hero-image-card,
  .risk-hero .hero-panel--media-fill > .hero-image-card{
    min-height:260px;
  }
  .hero-panel--stacked > .hero-image-card{
    min-height:220px;
  }
}



.hero-image-card img{
  border:4px solid #ffffff;
  box-sizing:border-box;
}

.it-projects-hero img,
img[src*="it-infrastructure-deployment"]{
  object-position:top center !important;
}


/* Mobile navigation state fix */
.mobile-nav-overlay,
.mobile-nav-close {
  display: none;
}

body.mobile-nav-open {
  overflow: hidden;
  touch-action: none;
}

@media (max-width: 860px) {
  .site-header {
    z-index: 1000;
  }

  .site-header .nav-shell {
    position: relative;
  }

  .site-header .nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1004;
    pointer-events: auto;
  }

  .site-header .site-nav {
    position: fixed !important;
    inset: 0 0 0 auto !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: 0 !important;
    width: min(86vw, 360px);
    max-width: 360px;
    height: 100dvh;
    margin: 0 !important;
    padding: max(1rem, env(safe-area-inset-top)) 1rem max(1.25rem, env(safe-area-inset-bottom));
    border-radius: 0 !important;
    border-left: 1px solid rgba(255,255,255,.08);
    border-top: 0 !important;
    background: linear-gradient(180deg, rgba(7, 17, 31, 0.985), rgba(10, 18, 36, 0.985)) !important;
    box-shadow: -18px 0 48px rgba(0,0,0,.35);
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: .85rem !important;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(100%, 0, 0) !important;
    transition: transform .24s ease, opacity .2s ease, visibility .2s ease;
    z-index: 1003;
  }

  .site-header .site-nav:not(.is-open) {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(100%, 0, 0) !important;
  }

  .site-header .site-nav.is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0, 0, 0) !important;
  }

  .mobile-nav-overlay {
    display: block;
    position: fixed;
    inset: 0;
    border: 0;
    padding: 0;
    margin: 0;
    background: rgba(2, 12, 27, 0.62);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .2s ease, visibility .2s ease;
    z-index: 1001;
  }

  .mobile-nav-overlay.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .mobile-nav-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: flex-end;
    width: 44px;
    height: 44px;
    margin: 0 0 .35rem auto;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.06);
    color: #fff;
    font-size: 1.8rem;
    line-height: 1;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  .site-header .site-nav.is-open .mobile-nav-close {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .site-nav > a:not(.btn),
  .nav-parent {
    padding: .45rem 0;
  }

  .nav-submenu {
    padding-left: .85rem;
  }
}

@media (min-width: 861px) {
  body.mobile-nav-open {
    overflow: visible;
    touch-action: auto;
  }

  .site-header .site-nav {
    position: static !important;
    inset: auto !important;
    width: auto;
    max-width: none;
    height: auto;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 1.3rem !important;
    overflow: visible;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
  }

  .mobile-nav-overlay {
    display: none !important;
  }

  .mobile-nav-close {
    display: none !important;
  }
}


/* Authority trust conversion optimization */
.site-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.site-metric-card{padding:1.25rem 1rem;border:1px solid rgba(37,99,235,.1);border-radius:var(--radius-md);background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:var(--shadow-md);text-align:center}.site-metric-card .metric-value{display:block;font-size:clamp(1.8rem,3vw,2.5rem);font-weight:800;color:var(--primary);margin-bottom:.35rem}.site-metric-card span{display:block;color:var(--ink-2);font-weight:600}.footer-region-signal{margin-top:.85rem;padding-top:.85rem;border-top:1px solid rgba(255,255,255,.1)}.site-enhancement + .site-enhancement{padding-top:0}.timeline-card{position:relative}.timeline-card::before{content:"";position:absolute;left:50%;top:-18px;transform:translateX(-50%);width:10px;height:10px;border-radius:999px;background:var(--primary)}@media (max-width:1100px){.site-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.site-metric-grid{grid-template-columns:1fr}.site-metric-card{padding:1.1rem .9rem}}
/* --- Lead generation engine pass --- */
.footer-cta-shell--leadgen{
  align-items:flex-start;
}
.footer-cta-copy{max-width:760px}
.footer-cta-reassurance{
  margin:.65rem 0 0;
  color:rgba(255,255,255,.86);
  font-weight:600;
}
.footer-guide-links{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem 1rem;
  margin-top:1rem;
  font-size:.95rem;
  color:rgba(255,255,255,.86);
}
.footer-guide-links span{font-weight:700;color:#fff}
.footer-guide-links a{color:#fff;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.2)}
.footer-guide-links a:hover{border-color:rgba(255,255,255,.7)}
.cta-actions-inline--stacked{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:.8rem;
  min-width:min(320px,100%);
}
.footer-cta-phone{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.9rem 1.1rem;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  text-decoration:none;
  font-weight:700;
  background:rgba(255,255,255,.08);
}
.footer-cta-phone:hover{background:rgba(255,255,255,.14)}
.form-honeypot{position:absolute !important;left:-9999px !important;opacity:0 !important;pointer-events:none !important}
.conversion-assurance{
  margin:0 0 1rem;
  padding:1rem 1rem 1rem;
  border-radius:18px;
  border:1px solid rgba(37,99,235,.12);
  background:linear-gradient(180deg,#fff,#f8fbff);
  box-shadow:0 10px 30px rgba(7,17,31,.05);
}
.compact-list{margin:.8rem 0 0}
.site-nav-static{display:flex;align-items:center;gap:1rem}
.hero--compact h1{max-width:14ch}
@media (max-width:760px){
  .footer-guide-links{flex-direction:column;align-items:flex-start}
  .cta-actions-inline--stacked{min-width:0;width:100%}
  .site-nav-static{display:none}
}


/* Final UX polish overrides */
:root{--focus-ring:0 0 0 3px rgba(14,165,233,.18),0 0 0 1px rgba(37,99,235,.24)}
html{scroll-behavior:smooth}body{overflow-x:hidden}img{max-width:100%;height:auto}.section{scroll-margin-top:5.75rem}
.btn,.nav-toggle,.mobile-nav-close,.site-nav a,.site-nav button,input,textarea,select{-webkit-tap-highlight-color:transparent}
.btn,.nav-toggle,.mobile-nav-close{min-height:46px}
.btn:focus-visible,.nav-toggle:focus-visible,.mobile-nav-close:focus-visible,.site-nav a:focus-visible,.site-nav button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:14px}
.hero,.section,.site-footer{overflow-x:clip}.container{width:min(1180px,calc(100% - 2rem))}
@media (max-width:760px){.container{width:min(100%,calc(100% - 1.15rem))}h1{line-height:1.06}h2{line-height:1.12}.section{padding:3.1rem 0}.hero{padding-top:1rem}.hero-copy > * + *{margin-top:.9rem}.hero-actions{gap:.75rem}.site-header .nav-shell{gap:.75rem}}
.authority-card,.feature-card,.service-card,.industry-card,.benefit-card,.issue-card,.need-card,.check-card,.resource-card,.process-card,.proof-card,.proof-item-card,.support-step,.included-card{position:relative;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease,background-color .24s ease;will-change:transform}
.authority-card::after,.feature-card::after,.service-card::after,.industry-card::after,.benefit-card::after,.issue-card::after,.need-card::after,.check-card::after,.resource-card::after,.process-card::after,.proof-card::after,.proof-item-card::after,.support-step::after,.included-card::after{content:"→";position:absolute;right:1rem;bottom:.9rem;font-weight:800;color:rgba(37,99,235,.72);transform:translateX(-6px);opacity:0;transition:transform .24s ease,opacity .24s ease;pointer-events:none}
.authority-card:hover::after,.feature-card:hover::after,.service-card:hover::after,.industry-card:hover::after,.benefit-card:hover::after,.issue-card:hover::after,.need-card:hover::after,.check-card:hover::after,.resource-card:hover::after,.process-card:hover::after,.proof-card:hover::after,.proof-item-card:hover::after,.support-step:hover::after,.included-card:hover::after,.authority-card:focus-within::after,.feature-card:focus-within::after,.service-card:focus-within::after,.industry-card:focus-within::after,.benefit-card:focus-within::after,.issue-card:focus-within::after,.need-card:focus-within::after,.check-card:focus-within::after,.resource-card:focus-within::after,.process-card:focus-within::after,.proof-card:focus-within::after,.proof-item-card:focus-within::after,.support-step:focus-within::after,.included-card:focus-within::after{opacity:1;transform:translateX(0)}
.card-grid,.proof-grid,.service-grid,.authority-grid,.benefit-grid,.process-grid,.industry-grid,.issue-grid,.check-grid,.included-grid{align-items:stretch}
.process-grid.timeline-grid{gap:1rem}.process-grid.timeline-grid::before{content:"";position:absolute;left:4%;right:4%;top:28px;height:2px;background:linear-gradient(90deg,rgba(14,165,233,.25),rgba(37,99,235,.35),rgba(14,165,233,.25));z-index:0}.process-grid.timeline-grid > *{position:relative;z-index:1}.timeline-card::before{box-shadow:0 0 0 8px rgba(255,255,255,.95),0 8px 18px rgba(37,99,235,.18);transition:transform .24s ease,box-shadow .24s ease,background-color .24s ease}.timeline-card:hover::before{transform:translateX(-50%) scale(1.16);box-shadow:0 0 0 10px rgba(255,255,255,.98),0 10px 24px rgba(37,99,235,.25)}@media (max-width:900px){.process-grid.timeline-grid::before{display:none}}
.metric-card,.site-metric-card{border:1px solid rgba(37,99,235,.1);background:linear-gradient(180deg,#fff,#f7fbff)}.hero-panel img,.hero-image-card img,.card-media img{display:block}input,textarea,select{font:inherit}textarea{min-height:140px}.site-footer .footer-grid-expanded{gap:1.2rem}.footer-region-signal{font-size:.98rem}.site-nav a.is-current{color:#fff}


/* Repair pass: preserve dark hero metric cards and readable stat text */
.hero .metric-card{
  background: linear-gradient(180deg, rgba(255,255,255,.09), rgba(255,255,255,.04));
  border: 1px solid rgba(255,255,255,.1);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.hero .metric-card .metric-value{color:#fff;display:block;}
.hero .metric-card span{color:rgba(255,255,255,.78);}
.hero .metric-card.site-metric-card{background:linear-gradient(180deg,#fff,#f7fbff);border:1px solid rgba(37,99,235,.1);box-shadow:var(--shadow-md)}
.hero .metric-card.site-metric-card .metric-value{color:var(--primary)}
.hero .metric-card.site-metric-card span{color:var(--ink-2)}


/* Stabilization pass: dark hero metrics and mobile-safe stat cards */
.hero .hero-metrics .metric-card{background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.05)) !important;border:1px solid rgba(255,255,255,.14) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 18px 40px rgba(2,6,23,.18) !important;}
.hero .hero-metrics .metric-card .metric-value{color:#fff !important;opacity:1 !important;text-shadow:none !important;}
.hero .hero-metrics .metric-card span{color:rgba(255,255,255,.82) !important;opacity:1 !important;}
.hero-metrics{align-items:stretch}
@media (max-width:760px){.hero .hero-metrics .metric-card{min-height:auto;padding:1rem}.hero-metrics{grid-template-columns:1fr 1fr}.hero-metrics .metric-card{width:100%}}
@media (max-width:520px){.hero-metrics{grid-template-columns:1fr}}


/* Critical mobile navigation hardening */
html.nav-preload .site-header .site-nav,
.site-header .site-nav[aria-hidden="true"]{
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

@media (max-width: 860px) {
  html.nav-preload .site-header .site-nav,
  .site-header .site-nav,
  body:not(.mobile-nav-open) .site-header .site-nav[aria-hidden="true"] {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: min(86vw, 360px) !important;
    max-width: 360px !important;
    height: 100dvh !important;
    margin: 0 !important;
    transform: translate3d(100%, 0, 0) !important;
  }

  body:not(.mobile-nav-open) .mobile-nav-overlay {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .site-header .site-nav > .mobile-nav-close:first-child {
    display: inline-flex !important;
  }
}

@media (min-width: 861px) {
  html.nav-preload .site-header .site-nav,
  .site-header .site-nav[aria-hidden="false"] {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
  }
}



/* === Navigation structural rebuild === */
.site-header{position:sticky;top:0;z-index:1200;background:rgba(7,17,31,.82);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
.site-header .nav-shell{display:flex;align-items:center;gap:1rem;min-height:84px}
.site-header .brand{flex:0 0 auto}
.site-header .brand-logo{width:176px;height:auto}
.site-header .nav-toggle{margin-left:auto;display:none;align-items:center;justify-content:center;flex:0 0 auto}
.site-header .site-nav{flex:1 1 auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-width:0}
.site-header .nav-main{display:flex;align-items:center;justify-content:center;gap:1.35rem;flex:1 1 auto;min-width:0}
.site-header .nav-actions{display:flex;align-items:center;gap:.8rem;flex:0 0 auto}
.site-header .nav-phone{display:inline-flex;align-items:center;color:rgba(255,255,255,.84);font-weight:700;font-size:.95rem;white-space:nowrap}
.site-header .nav-mobile-only{display:none !important}
.site-header .nav-item-group{display:flex;align-items:center;position:relative}
.site-header .nav-parent,.site-header .nav-main>a{color:rgba(255,255,255,.84);font-weight:600;font-size:.95rem;letter-spacing:.01em}
.site-header .nav-main>a:hover,.site-header .nav-parent:hover,.site-header .nav-item-group:hover>.nav-parent,.site-header .nav-item-group:focus-within>.nav-parent{color:#fff}
.site-header .nav-submenu{top:calc(100% + 1rem);left:50%;transform:translateX(-50%);min-width:240px;padding:.8rem;border-radius:18px;background:rgba(8,18,35,.98);border:1px solid rgba(255,255,255,.08);box-shadow:0 24px 70px rgba(6,18,40,.24);display:grid;gap:.2rem;opacity:0;visibility:hidden;pointer-events:none}
.site-header .nav-submenu a{padding:.58rem .7rem;border-radius:12px;color:rgba(255,255,255,.88);font-size:.94rem}
.site-header .nav-submenu a:hover{background:rgba(255,255,255,.06);color:#fff}
.site-header .nav-item-group:hover>.nav-submenu,.site-header .nav-item-group:focus-within>.nav-submenu,.site-header .nav-item-group.is-open>.nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.site-header .nav-cta{white-space:nowrap;box-shadow:0 14px 34px rgba(37,99,235,.3)}
.site-header .mobile-nav-close{display:none}
.mobile-nav-overlay{display:none}
@media (max-width: 1080px){.site-header .nav-phone{display:none}}
@media (max-width: 860px){
  html.nav-preload .site-header .site-nav{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transform:translateY(-8px) !important}
  .site-header .nav-shell{min-height:76px}
  .site-header .brand-logo{width:148px}
  .site-header .nav-toggle{display:inline-flex}
  .site-header .site-nav{position:fixed !important;inset:0 !important;width:100vw !important;height:100dvh !important;max-width:none !important;margin:0 !important;padding:max(1rem,env(safe-area-inset-top)) 1.15rem max(1.5rem,env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(7,17,31,.985),rgba(10,18,36,.985)) !important;display:flex !important;flex-direction:column !important;align-items:stretch !important;justify-content:flex-start !important;gap:1rem !important;overflow-y:auto;opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transform:translateY(-12px) !important;transition:opacity .22s ease,visibility .22s ease,transform .22s ease;z-index:1203;border:0 !important;border-radius:0 !important;box-shadow:none !important}
  .site-header .site-nav.is-open{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;transform:none !important}
  .site-header .mobile-nav-close{display:inline-flex;align-items:center;justify-content:center;align-self:flex-end;width:46px;height:46px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;font-size:1.9rem;line-height:1;cursor:pointer;margin:0 0 .25rem auto}
  .site-header .nav-main{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.2rem;flex:0 0 auto}
  .site-header .nav-main>a,.site-header .nav-parent{display:flex;width:100%;justify-content:space-between;align-items:center;padding:.9rem 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:1.08rem}
  .site-header .nav-item-group{display:block}
  .site-header .nav-parent::after{content:'+';position:static;transform:none;background:none;width:auto;height:auto;color:rgba(255,255,255,.7);font-size:1.1rem}
  .site-header .nav-item-group.is-open>.nav-parent::after{content:'−';color:#fff}
  .site-header .nav-submenu{position:static;left:auto;top:auto;transform:none;min-width:0;padding:.35rem 0 .2rem .8rem;border:0;background:transparent;box-shadow:none;display:none;opacity:1;visibility:visible;pointer-events:auto}
  .site-header .nav-item-group.is-open>.nav-submenu{display:grid}
  .site-header .nav-submenu a{padding:.65rem 0;color:rgba(255,255,255,.8);border-bottom:1px solid rgba(255,255,255,.06)}
  .site-header .nav-actions{margin-top:auto;display:grid;gap:.85rem;padding-top:1rem}
  .site-header .nav-phone{display:none}
  .site-header .nav-mobile-only{display:flex !important}
  .site-header .nav-cta{width:100%;min-height:50px}
  .mobile-nav-overlay{display:block;position:fixed;inset:0;background:rgba(2,12,27,.62);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;z-index:1201;border:0}
  .mobile-nav-overlay.is-visible{opacity:1;visibility:visible;pointer-events:auto}
  body.mobile-nav-open{overflow:hidden;touch-action:none}
}
@media (min-width:861px){
  .site-header .site-nav{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;transform:none !important}
  .site-header .mobile-nav-close,.mobile-nav-overlay{display:none !important}
  body.mobile-nav-open{overflow:visible;touch-action:auto}
}



/* === Desktop sticky header alignment fix (balanced 3-zone layout) === */
@media (min-width: 1081px) {
  .site-header .nav-shell {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(1rem, 2vw, 2rem);
    min-height: 86px;
  }

  .site-header .brand {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    margin: 0;
  }

  .site-header .brand-logo {
    width: 176px;
    max-width: none;
  }

  .site-header .site-nav {
    flex: 1 1 auto;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    column-gap: clamp(1rem, 1.8vw, 1.9rem);
  }

  .site-header .nav-main {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(.9rem, 1.2vw, 1.35rem);
    padding-inline: clamp(.35rem, 1vw, .85rem);
  }

  .site-header .nav-main > a,
  .site-header .nav-item-group {
    flex: 0 0 auto;
  }

  .site-header .nav-actions {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: .85rem;
    margin-left: 0;
    white-space: nowrap;
  }

  .site-header .nav-phone {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    padding: 0;
    margin: 0;
  }

  .site-header .nav-cta {
    flex: 0 0 auto;
    margin: 0;
  }
}

@media (min-width: 1081px) and (max-width: 1220px) {
  .site-header .nav-main {
    gap: .95rem;
    padding-inline: .25rem;
  }

  .site-header .nav-parent,
  .site-header .nav-main > a,
  .site-header .nav-phone {
    font-size: .92rem;
  }

  .site-header .nav-cta {
    padding-inline: 1rem;
  }
}
