:root{
  --r18-header-height:84px;
  --r18-shell-width:min(1440px, calc(100vw - 48px));
  --r18-cta-bg:linear-gradient(135deg,#071626 0%,#0b213d 52%,#1d6667 100%);
  --r18-cta-hover:linear-gradient(135deg,#0a1d31 0%,#112a49 52%,#237577 100%);
  --r18-cta-shadow:0 12px 28px rgba(7,18,36,.22);
  --r18-dark-surface:linear-gradient(180deg,#061123 0%,#081426 100%);
  --r18-dark-border:rgba(120,158,210,.16);
  --r18-text-soft:#96abc4;
}

html{scroll-padding-top:var(--r18-header-height);}
body.v20d2c-public,
body.r15-utility-page{
  margin:0 !important;
  padding-top:var(--r18-header-height) !important;
}
body.v20d2c-public .container,
body.r15-utility-page .container{
  width:var(--r18-shell-width) !important;
  max-width:1440px !important;
  margin-inline:auto !important;
}

/* Fixed stagnant header */
body.v20d2c-public .site-header.site-header--v20d2c,
body.r15-utility-page .site-header.site-header--v20d2c{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  z-index:1000 !important;
  transform:none !important;
  transition:none !important;
  box-shadow:0 10px 30px rgba(15,23,42,.08) !important;
  background:rgba(255,255,255,.97) !important;
  backdrop-filter:saturate(160%) blur(14px);
}
body.v20d2c-public .site-header--v20d2c.is-condensed,
body.r15-utility-page .site-header--v20d2c.is-condensed{
  transform:none !important;
  box-shadow:0 10px 30px rgba(15,23,42,.08) !important;
}
body.v20d2c-public .site-header--v20d2c .container.bar,
body.r15-utility-page .site-header--v20d2c .container.bar{
  min-height:var(--r18-header-height) !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:22px !important;
}
body.v20d2c-public .site-header--v20d2c .logo--brand,
body.r15-utility-page .site-header--v20d2c .logo--brand{
  gap:0 !important;
  min-width:auto !important;
  padding-left:0 !important;
}
body.v20d2c-public .site-header--v20d2c .logo--brand::before,
body.v20d2c-public .site-header--v20d2c .logo--brand::after,
body.r15-utility-page .site-header--v20d2c .logo--brand::before,
body.r15-utility-page .site-header--v20d2c .logo--brand::after{
  content:none !important;
  display:none !important;
}
body.v20d2c-public .site-header--v20d2c .logo--brand .wordmark-primary,
body.r15-utility-page .site-header--v20d2c .logo--brand .wordmark-primary{
  font-size:1.95rem !important;
  font-weight:900 !important;
  letter-spacing:-.045em !important;
}
body.v20d2c-public .site-header--v20d2c .site-header__desktop,
body.r15-utility-page .site-header--v20d2c .site-header__desktop{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:18px !important;
  min-width:0 !important;
  width:100% !important;
}
body.v20d2c-public .site-header--v20d2c .desktop-nav,
body.r15-utility-page .site-header--v20d2c .desktop-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:clamp(10px,1vw,18px) !important;
  flex-wrap:nowrap !important;
  min-width:0 !important;
}
body.v20d2c-public .site-header--v20d2c .desktop-nav a,
body.r15-utility-page .site-header--v20d2c .desktop-nav a{
  white-space:nowrap !important;
  font-size:clamp(.76rem,.82vw,.88rem) !important;
  letter-spacing:-.01em !important;
  color:#2d1b69 !important;
}
body.v20d2c-public .site-header--v20d2c .desktop-nav a.is-active,
body.v20d2c-public .site-header--v20d2c .desktop-nav a[aria-current="page"],
body.r15-utility-page .site-header--v20d2c .desktop-nav a.is-active,
body.r15-utility-page .site-header--v20d2c .desktop-nav a[aria-current="page"]{color:#0f172a !important;}
body.v20d2c-public .site-header--v20d2c .site-header__utility,
body.r15-utility-page .site-header--v20d2c .site-header__utility{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
  flex-wrap:nowrap !important;
}
body.v20d2c-public .site-header--v20d2c .btn-subtle,
body.r15-utility-page .site-header--v20d2c .btn-subtle,
body.v20d2c-public .site-header--v20d2c .mobile-contact-link,
body.r15-utility-page .site-header--v20d2c .mobile-contact-link,
body.v20d2c-public .site-header--v20d2c .nav-panel-actions .btn-subtle,
body.r15-utility-page .site-header--v20d2c .nav-panel-actions .btn-subtle{
  background:var(--r18-cta-bg) !important;
  color:#fff !important;
  border:1px solid rgba(119,214,199,.24) !important;
  box-shadow:var(--r18-cta-shadow) !important;
  min-width:110px !important;
  padding:.72rem 1rem !important;
}
body.v20d2c-public .site-header--v20d2c .btn-subtle:hover,
body.r15-utility-page .site-header--v20d2c .btn-subtle:hover,
body.v20d2c-public .site-header--v20d2c .mobile-contact-link:hover,
body.r15-utility-page .site-header--v20d2c .mobile-contact-link:hover,
body.v20d2c-public .site-header--v20d2c .nav-panel-actions .btn-subtle:hover,
body.r15-utility-page .site-header--v20d2c .nav-panel-actions .btn-subtle:hover{
  background:var(--r18-cta-hover) !important;
  color:#fff !important;
}
body.v20d2c-public .site-header--v20d2c .site-header__mobile,
body.r15-utility-page .site-header--v20d2c .site-header__mobile{display:none !important;}
@media (max-width:1260px){
  body.v20d2c-public .site-header--v20d2c .site-header__desktop,
  body.r15-utility-page .site-header--v20d2c .site-header__desktop{display:none !important;}
  body.v20d2c-public .site-header--v20d2c .site-header__mobile,
  body.r15-utility-page .site-header--v20d2c .site-header__mobile{display:flex !important;justify-content:flex-end !important;gap:0 !important;}
}

/* Remove top breathing space */
body.v20d2c-public .enterprise-breadcrumbs,
body.v20d2c-public .breadcrumb-nav,
body.r15-utility-page .enterprise-breadcrumbs,
body.r15-utility-page .breadcrumb-nav{padding-top:0 !important;margin-top:0 !important;}
body.v20d2c-public main#main,
body.v20d2c-public main,
body.r15-utility-page main#main,
body.r15-utility-page main.r15-utility-main{padding-top:0 !important;margin-top:0 !important;}

/* Hero and executive frame */
body.v20d2c-public .r16-summary-rail{align-self:stretch !important;overflow:visible !important;max-height:none !important;}
body.v20d2c-public .r16-summary-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important;}
@media (max-width:980px){
  body.v20d2c-public .r16-summary-grid{grid-template-columns:1fr !important;}
}
body.v20d2c-public .r18-hero-definition{max-width:72ch; color:#52667d; margin-top:10px;}

/* Proof section grammar */
body.v20d2c-public .r12-section-head,
body.v20d2c-public .r16-proof-head,
body.v20d2c-public .r18-proof-head,
body.r15-utility-page .r12-section-head,
body.r15-utility-page .r16-proof-head,
body.r15-utility-page .r18-proof-head{
  width:100% !important;
  max-width:100% !important;
  display:grid !important;
  gap:10px !important;
  margin-bottom:18px !important;
}
body.v20d2c-public .r12-section-head h2,
body.v20d2c-public .r16-proof-head h2,
body.v20d2c-public .r18-proof-head h3,
body.r15-utility-page .r12-section-head h2,
body.r15-utility-page .r16-proof-head h2,
body.r15-utility-page .r18-proof-head h3{
  margin:0 !important;
}
body.v20d2c-public .r12-section-head p,
body.v20d2c-public .r16-proof-head p,
body.v20d2c-public .r18-proof-head p,
body.r15-utility-page .r12-section-head p,
body.r15-utility-page .r16-proof-head p,
body.r15-utility-page .r18-proof-head p{max-width:100% !important; color:var(--r18-text-soft) !important;}
body.v20d2c-public .r18-definition,
body.r15-utility-page .r18-definition{
  color:#b8c8dc !important;
  font-size:1rem !important;
  line-height:1.7 !important;
  max-width:100% !important;
}

body.v20d2c-public .r12-diagram-shell,
body.r15-utility-page .r12-diagram-shell{
  width:100% !important;
  max-width:100% !important;
  padding:22px 22px 18px !important;
  border-radius:28px !important;
}
body.v20d2c-public .section-row.authority-network-row,
body.r15-utility-page .section-row.authority-network-row{width:100% !important;}
body.v20d2c-public .authority-network-card,
body.r15-utility-page .authority-network-card{
  width:100% !important;
  padding:18px !important;
  gap:0 !important;
}
body.v20d2c-public .authority-network-stage,
body.r15-utility-page .authority-network-stage{
  min-height:clamp(460px,54vw,820px) !important;
  padding:clamp(12px,1.5vw,20px) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
body.v20d2c-public .authority-network-card--hero-wide .authority-network-stage,
body.r15-utility-page .authority-network-card--hero-wide .authority-network-stage{min-height:clamp(520px,58vw,860px) !important;}
body.v20d2c-public .authority-network-card--map .authority-network-stage,
body.v20d2c-public .authority-network-card--technical .authority-network-stage,
body.v20d2c-public .authority-network-card--scorecard .authority-network-stage,
body.v20d2c-public .authority-network-card--scorecard-wide .authority-network-stage,
body.r15-utility-page .authority-network-card--map .authority-network-stage,
body.r15-utility-page .authority-network-card--technical .authority-network-stage,
body.r15-utility-page .authority-network-card--scorecard .authority-network-stage,
body.r15-utility-page .authority-network-card--scorecard-wide .authority-network-stage{min-height:clamp(500px,56vw,880px) !important;}
body.v20d2c-public .authority-network-stage img,
body.v20d2c-public .authority-network-stage svg,
body.r15-utility-page .authority-network-stage img,
body.r15-utility-page .authority-network-stage svg{
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  margin:0 auto !important;
  object-fit:contain !important;
  display:block !important;
}
body.v20d2c-public .r12-diagram-meta,
body.r15-utility-page .r12-diagram-meta{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  gap:10px !important;
  padding-top:12px !important;
}
body.v20d2c-public .r12-diagram-meta span,
body.r15-utility-page .r12-diagram-meta span{
  background:rgba(8,17,31,.58) !important;
  border:1px solid rgba(158,185,226,.18) !important;
  color:#a9b9cd !important;
  border-radius:999px !important;
  padding:7px 12px !important;
}

/* Support cards and commercial bands */
body.v20d2c-public .r12-band,
body.r15-utility-page .r12-band{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
}
body.v20d2c-public .r12-band-card,
body.r15-utility-page .r12-band-card,
body.v20d2c-public .r12-journey-card,
body.r15-utility-page .r12-journey-card{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  min-height:100% !important;
}
body.v20d2c-public .r12-band-card .r12-actions,
body.r15-utility-page .r12-band-card .r12-actions,
body.v20d2c-public .r12-journey-card .r12-actions,
body.r15-utility-page .r12-journey-card .r12-actions{margin-top:auto !important;}
body.v20d2c-public .r12-band-card small,
body.r15-utility-page .r12-band-card small{text-transform:uppercase !important;letter-spacing:.12em !important;font-weight:800 !important;}
body.v20d2c-public .r12-commercial-band,
body.v20d2c-public .r16-commercial-band,
body.r15-utility-page .r12-commercial-band,
body.r15-utility-page .r16-commercial-band{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:18px !important;
  align-items:center !important;
  padding:24px !important;
  background:linear-gradient(135deg,#0b1527 0%,#10223c 46%,#1d5f63 100%) !important;
  border:1px solid rgba(119,214,199,.18) !important;
}
body.v20d2c-public .r12-commercial-band .r12-actions,
body.v20d2c-public .r16-commercial-band .r12-actions,
body.r15-utility-page .r12-commercial-band .r12-actions,
body.r15-utility-page .r16-commercial-band .r12-actions{
  display:flex !important;
  gap:12px !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
}
@media (max-width:980px){
  body.v20d2c-public .r12-band,
  body.r15-utility-page .r12-band{grid-template-columns:1fr !important;}
  body.v20d2c-public .r12-commercial-band,
  body.v20d2c-public .r16-commercial-band,
  body.r15-utility-page .r12-commercial-band,
  body.r15-utility-page .r16-commercial-band{grid-template-columns:1fr !important;}
  body.v20d2c-public .r12-commercial-band .r12-actions,
  body.v20d2c-public .r16-commercial-band .r12-actions,
  body.r15-utility-page .r12-commercial-band .r12-actions,
  body.r15-utility-page .r16-commercial-band .r12-actions{justify-content:flex-start !important;}
}

/* Home commercial motion and buyer journey */
body.v20d2c-public .r16-commercial-motion .container{display:grid !important;gap:22px !important;max-width:1440px !important;}
body.v20d2c-public .r16-commercial-lead{max-width:100% !important;}
body.v20d2c-public .r16-step-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important;}
body.v20d2c-public .r16-step-card{min-height:100% !important;display:grid !important;align-content:start !important;gap:8px !important;}
body.v20d2c-public .r18-benchmark-head{margin-top:8px !important;}
body.v20d2c-public .r12-journey-grid{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:16px !important;}
body.v20d2c-public .r12-journey-card{padding:20px !important;}
body.v20d2c-public .r12-journey-card .btn{align-self:flex-start !important; min-width:128px !important;}
@media (max-width:1080px){
  body.v20d2c-public .r16-step-grid,
  body.v20d2c-public .r12-journey-grid{grid-template-columns:1fr !important;}
}

/* Utility pages tighter under header */
body.r15-utility-page main.r15-utility-main{padding-top:12px !important;}
body.r15-utility-page .r15-locked-center{min-height:calc(100dvh - var(--r18-header-height) - 16px) !important;align-items:start !important;padding-top:18px !important;}
body.r15-utility-page .r13-locked-card,
body.r15-utility-page .r16-signin-card{width:min(760px,100%) !important; margin-top:0 !important; box-shadow:0 22px 54px rgba(7,18,36,.08) !important;}

/* Research and subpage hero spacing */
body.v20d2c-public .r12-page-hero,
body.v20d2c-public .page-hero{padding-top:0 !important;}
body.v20d2c-public .subpage-tight .section{padding-top:52px !important; padding-bottom:52px !important;}

/* ensure no duplicate HTML helper blocks inside authority shells */
body.v20d2c-public .authority-network-card__header,
body.r15-utility-page .authority-network-card__header,
body.v20d2c-public .authority-network-badges,
body.r15-utility-page .authority-network-badges{display:none !important;}

/* Enterprise summary normalization */
body.v20d2c-public .enterprise-summary,
body.r15-utility-page .enterprise-summary{width:100% !important; max-width:100% !important;}
body.v20d2c-public .enterprise-summary__grid,
body.r15-utility-page .enterprise-summary__grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.95fr) !important;
  gap:24px !important;
  align-items:start !important;
}
body.v20d2c-public .enterprise-summary__chips,
body.r15-utility-page .enterprise-summary__chips{display:flex !important;flex-wrap:wrap !important;gap:10px !important;}
body.v20d2c-public .enterprise-link-grid,
body.r15-utility-page .enterprise-link-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important;margin-top:14px !important;}
body.v20d2c-public .enterprise-link-grid--single,
body.r15-utility-page .enterprise-link-grid--single{grid-template-columns:minmax(0,1fr) !important;}
body.v20d2c-public .enterprise-link-card,
body.r15-utility-page .enterprise-link-card{display:flex !important;align-items:center !important;justify-content:center !important;min-height:54px !important;text-align:center !important;}
@media (max-width:980px){
  body.v20d2c-public .enterprise-summary__grid,
  body.r15-utility-page .enterprise-summary__grid{grid-template-columns:1fr !important;}
  body.v20d2c-public .enterprise-link-grid,
  body.r15-utility-page .enterprise-link-grid{grid-template-columns:1fr !important;}
}


/* 2026-03-31 utility lock + mobile full-screen diagrams */
body.r15-utility-page,
body.r15-utility-page main.r15-utility-main,
body.r15-utility-page .r15-locked-center{overflow:hidden !important;}
@media (max-width:760px){
  body.r15-utility-page{overflow:hidden !important;}
  body.r15-utility-page main.r15-utility-main{
    min-height:calc(100dvh - var(--r18-header-height)) !important;
    display:grid !important;
    align-items:stretch !important;
  }
  body.r15-utility-page .r15-locked-center{
    min-height:calc(100dvh - var(--r18-header-height)) !important;
    padding-top:10px !important;
    padding-bottom:10px !important;
    align-items:center !important;
    overflow:hidden !important;
  }
  body.r15-utility-page .r13-locked-card,
  body.r15-utility-page .r15-redirect-card,
  body.r15-utility-page .r16-signin-card{
    width:min(100%, 620px) !important;
    max-height:calc(100dvh - var(--r18-header-height) - 20px) !important;
    overflow:hidden !important;
    padding:18px !important;
    border-radius:24px !important;
  }
  body.r15-utility-page .r15-redirect-card p,
  body.r15-utility-page .r16-signin-note{font-size:.95rem !important; line-height:1.45 !important;}
  body.r15-utility-page .r16-signin-support{display:none !important;}
  body.r15-utility-page .dashboard-form,
  body.r15-utility-page .r15-redirect-card .actions{gap:10px !important;}
  body.r15-utility-page .dashboard-form label span,
  body.r15-utility-page .r15-redirect-card .actions .btn{font-size:.92rem !important;}
  body.v20d2c-public .diagram-plate.authority-network-host,
  body.v20d2c-public .r12-diagram-shell,
  body.r15-utility-page .diagram-plate.authority-network-host,
  body.r15-utility-page .r12-diagram-shell{
    width:calc(100vw - 16px) !important;
    max-width:none !important;
    margin-inline:calc(50% - 50vw + 8px) !important;
    padding:14px !important;
    border-radius:22px !important;
  }
  body.v20d2c-public .authority-network-card,
  body.r15-utility-page .authority-network-card{padding:12px !important;}
  body.v20d2c-public .authority-network-stage,
  body.r15-utility-page .authority-network-stage{
    min-height:min(78vw,460px) !important;
    padding:8px !important;
  }
}
