/* =========================================================
   HospiEdge Premium Site CSS (drop-in replacement)
   File: /assets/css/site.css
   Notes:
   - Keeps your existing class names working
   - Adds a premium SaaS look + better spacing/typography
   - Works with your existing _partials and pages
========================================================= */

:root{
  color-scheme: light;
  --bg:#0b0f17;
  --text:#0b1220;
  --text-dark:#e5e7eb;
  --brand:#3b82f6;
  --brand2:#06b6d4;
  --brand-deep:#1e40af;
  --muted:#475d73;
  --border:rgba(15,23,42,.12);
  --surface:#ffffff;
  --surface-alt:#f8fafc;
  --radius:16px;
  --shadow:0 14px 48px rgba(2,8,23,.10);
  --shadow-sm:0 10px 28px rgba(2,8,23,.08);
  --shadow-lift:0 22px 60px rgba(2,8,23,.16);
  --container:1180px;

  --ring:rgba(59,130,246,.28);
  --ring-strong:rgba(6,182,212,.30);
  --glass:rgba(255,255,255,.82);

  --h1:clamp(2.2rem,5vw,3.8rem);
  --h2:clamp(1.85rem,3.4vw,2.65rem);
  --h3:1.22rem;

  --font-display:'Sora',system-ui,sans-serif;
  --font-body:'DM Sans',system-ui,sans-serif;
}

*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{
  font-family:var(--font-body),-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  color:var(--text);
  background:#fff;
  font-size:16px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  scroll-padding-top:9rem;
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
.site-main{
  flex:1 0 auto;
}
p{ text-wrap:pretty; }

a{ color:inherit; text-decoration:none; }
a:hover{ text-decoration:none; }
html{ -webkit-text-size-adjust:100%; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible{
  outline:3px solid rgba(37,99,235,.28);
  outline-offset:3px;
  box-shadow:0 0 0 6px rgba(37,99,235,.12);
}
img{ max-width:100%; height:auto; display:block; }

.visually-hidden,
.sr-only{
  position:absolute !important;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0, 0, 0, 0);
  white-space:nowrap;
  border:0;
}

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

.skip-link{
  position:absolute;
  left:-9999px;
  top:10px;
}
.skip-link:focus{
  left:10px;
  background:#fff;
  padding:.55rem .85rem;
  border-radius:10px;
  border:1px solid var(--border);
  z-index:1000;
  box-shadow:var(--shadow-sm);
}

section{ padding:5.4rem 0; }
.surface{
  background:var(--surface-alt);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}

/* =========================================================
   Header / Nav
========================================================= */
.site-header{
  position:sticky;
  top:0;
  z-index:60;
  background:var(--glass);
  backdrop-filter: blur(14px) saturate(160%);
  -webkit-backdrop-filter: blur(14px) saturate(160%);
  border-bottom:1px solid var(--border);
  transition: background .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.site-header.is-scrolled{
  background:rgba(255,255,255,.92);
  border-bottom-color:rgba(15,23,42,.10);
  box-shadow:0 14px 34px rgba(2,8,23,.08);
}
.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:84px;
  gap:1rem;
}

.logo{
  display:inline-flex;
  align-items:center;
  gap:.65rem;
  font-weight:800;
  letter-spacing:-.02em;
}
.logo-mark{
  display:inline-grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:12px;
  background:linear-gradient(140deg, var(--brand), var(--brand2));
  color:#fff;
  box-shadow:0 10px 28px rgba(59,130,246,.30);
}
.site-logo{
  height:68px;
  width:auto;
  aspect-ratio:1 / 1;
  object-fit:contain;
}
.site-nav{
  display:flex;
  align-items:center;
  gap:1.25rem;
}
.site-nav ul{
  display:flex;
  list-style:none;
  gap:.9rem;
  padding:0;
  margin:0;
}
.site-nav a{
  padding:.55rem .65rem;
  border-radius:12px;
  color:var(--muted);
  font-weight:600;
  transition: color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}
.site-nav a:hover{
  color:var(--text);
  background:rgba(15,23,42,.045);
}
.site-nav a.active{
  color:var(--text);
  background:rgba(59,130,246,.08);
  box-shadow: inset 0 0 0 1px rgba(59,130,246,.16);
}

.site-nav a:focus-visible,
.nav-link-secondary:focus-visible,
.menu-toggle:focus-visible{
  color:var(--text);
  background:rgba(59,130,246,.10);
  border-color:rgba(59,130,246,.24);
}

.nav-actions{
  display:flex;
  align-items:center;
  gap:.85rem;
  margin-left:.35rem;
}
.nav-link-secondary{
  display:inline-flex;
  align-items:center;
  color:var(--text);
  font-weight:700;
  padding:.55rem .3rem;
  white-space:nowrap;
}
.nav-link-secondary:hover{
  color:var(--brand);
}
.nav-cta{ margin-left:0; }

.menu-toggle{
  display:none;
  border:1px solid var(--border);
  background:#fff;
  width:48px;
  height:48px;
  border-radius:14px;
  padding:.35rem;
  box-shadow:0 6px 18px rgba(2,8,23,.06);
  touch-action:manipulation;
  cursor:pointer;
}
.menu-toggle span{
  display:block;
  width:22px;
  height:2px;
  margin:5px auto;
  background:#0f172a;
  border-radius:2px;
}
body.nav-open{
  overflow:hidden;
}


/* =========================================================
   Typography
========================================================= */
h1,h2,h3{
  font-family:var(--font-display);
  margin:0 0 .85rem;
  letter-spacing:-.03em;
  line-height:1.15;
  text-wrap:balance;
}
.hero h1{ font-size:var(--h1); }
.section-head h2{ font-size:var(--h2); }
.card h3{ font-size:var(--h3); }

.page-title{
  font-size:var(--h2);
  margin:0 0 .85rem;
}

.lead, .section-head p{
  color:var(--muted);
  font-size:1.08rem;
  max-width:760px;
}

/* =========================================================
   Hero (premium)
========================================================= */
.hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(900px 600px at 8% 10%, rgba(30,64,175,.5), transparent 55%),
    radial-gradient(700px 500px at 88% 20%, rgba(8,145,178,.32), transparent 55%),
    radial-gradient(400px 300px at 50% 90%, rgba(15,23,42,.6), transparent 70%),
    linear-gradient(165deg, #060a14 0%, #0d1424 55%, #081520 100%);
  color:var(--text-dark);
  padding:6.6rem 0 5.6rem;
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    radial-gradient(1px 1px at 20% 35%, rgba(255,255,255,.06) 0%, transparent 0%),
    radial-gradient(1px 1px at 75% 55%, rgba(255,255,255,.04) 0%, transparent 0%),
    radial-gradient(1px 1px at 48% 72%, rgba(255,255,255,.05) 0%, transparent 0%);
  background-size:320px 320px, 280px 280px, 240px 240px;
  pointer-events:none;
}
.hero::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:140px;
  background:linear-gradient(to bottom, transparent, rgba(255,255,255,.025));
  pointer-events:none;
}
.hero p{
  font-size:clamp(1rem,2vw,1.15rem);
  max-width:760px;
  color:#d1d5db;
  position:relative;
  z-index:1;
}
.hero .container{ position:relative; z-index:1; }

.badge{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:.38rem .9rem;
  background:rgba(30,64,175,.18);
  color:#bfe0ff;
  font-family:var(--font-display);
  font-weight:700;
  font-size:.82rem;
  letter-spacing:.04em;
  text-transform:uppercase;
  border:1px solid rgba(147,197,253,.2);
  backdrop-filter:blur(8px);
}

/* =========================================================
   Layout / Cards / Grids
========================================================= */
.grid-3, .grid-2{
  display:grid;
  gap:1.1rem;
}
.grid-3{ grid-template-columns:repeat(3, minmax(0,1fr)); }
.grid-2{ grid-template-columns:repeat(2, minmax(0,1fr)); }

.card{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:1.5rem;
  box-shadow:var(--shadow);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.card:hover{
  transform: translateY(-2px);
  box-shadow:0 18px 60px rgba(2,8,23,.14);
  border-color:rgba(59,130,246,.18);
}
.card p{
  color:var(--muted);
  margin:0;
}

/* Subtle "featured" variant if you want to add class="card featured" */
.card.featured{
  border-color:rgba(6,182,212,.24);
  box-shadow:0 18px 64px rgba(6,182,212,.10);
}

/* =========================================================
   Buttons
========================================================= */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  min-height:46px;
  border-radius:14px;
  padding:.72rem 1.05rem;
  font-weight:800;
  font-family:var(--font-display);
  font-size:.95rem;
  letter-spacing:-.01em;
  border:1px solid transparent;
  transition: transform .12s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
  cursor:pointer;
  user-select:none;
  touch-action:manipulation;
  will-change:transform;
  max-width:100%;
  white-space:normal;
  line-height:1.35;
}
.btn:active{ transform: translateY(1px); }
.btn-primary{
  background:linear-gradient(135deg, #1d4ed8 0%, #2563eb 45%, #0891b2 100%);
  color:#fff;
  box-shadow:0 10px 28px rgba(37,99,235,.30), inset 0 1px 0 rgba(255,255,255,.15);
}
.btn-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 16px 40px rgba(37,99,235,.40), inset 0 1px 0 rgba(255,255,255,.15);
}
.btn-secondary{
  background:#fff;
  color:var(--text);
  border-color:rgba(15,23,42,.14);
  box-shadow:0 10px 22px rgba(2,8,23,.06);
}
.btn-secondary:hover{
  color:var(--text);
  border-color:rgba(15,23,42,.24);
  box-shadow:0 14px 30px rgba(2,8,23,.09);
}
.btn-ghost{
  background:transparent;
  border-color:rgba(229,231,235,.22);
  color:#fff;
}
.btn-ghost:hover{
  border-color:rgba(229,231,235,.45);
  background:rgba(255,255,255,.04);
}

.cta-row{
  display:flex;
  flex-wrap:wrap;
  gap:.9rem;
  margin-top:1.8rem;
}

/* =========================================================
   Tables
========================================================= */
.table-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  border:1px solid var(--border);
  border-radius:var(--radius);
  background:#fff;
  box-shadow:var(--shadow-sm);
}
table{
  width:100%;
  border-collapse:collapse;
  min-width:640px;
}
th,td{
  padding:1rem 1.05rem;
  text-align:left;
  border-bottom:1px solid var(--border);
  vertical-align:top;
}
th{
  background:#f1f5f9;
  font-size:.9rem;
  letter-spacing:.01em;
}
tbody tr:hover td{
  background:rgba(59,130,246,.035);
}
caption{
  text-align:left;
  font-weight:700;
}
th[scope="row"]{
  font-weight:800;
  color:#0f172a;
  background:#fff;
}

/* =========================================================
   FAQ / Accordion
========================================================= */
.faq-item{
  border:1px solid var(--border);
  border-radius:14px;
  margin-bottom:.9rem;
  background:#fff;
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}
.faq-question{
  width:100%;
  text-align:left;
  background:transparent;
  border:0;
  padding:1.05rem 1.05rem;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-weight:900;
  cursor:pointer;
  color:var(--text);
}
.faq-question span{
  display:inline-grid;
  place-items:center;
  width:26px;
  height:26px;
  border-radius:10px;
  background:rgba(59,130,246,.08);
  border:1px solid rgba(59,130,246,.16);
  color:var(--brand);
}
.faq-answer{
  padding:0 1.05rem 1.05rem;
  color:var(--muted);
}
.faq-answer[hidden]{ display:none; }

/* =========================================================
   Forms
========================================================= */
.form-grid{ display:grid; gap:.95rem; }
label{ font-weight:700; color:var(--text); }
input, textarea{
  width:100%;
  border:1px solid var(--border);
  border-radius:14px;
  padding:.85rem .9rem;
  font:inherit;
  background:#fff;
  box-shadow:0 10px 22px rgba(2,8,23,.04);
  transition: border-color .18s ease, box-shadow .18s ease;
}
textarea{ min-height:170px; resize:vertical; }
input:focus, textarea:focus{
  outline:none;
  border-color:rgba(59,130,246,.45);
  box-shadow:0 0 0 4px var(--ring);
}
button:focus:not(:focus-visible),
a:focus:not(:focus-visible){
  outline:none;
}
.alert-success{
  margin-bottom:1rem;
  border:1px solid #86efac;
  background:#f0fdf4;
  color:#166534;
  border-radius:14px;
  padding:.85rem 1rem;
  box-shadow:0 10px 20px rgba(22,101,52,.08);
}
.alert-error{
  margin-bottom:1rem;
  border:1px solid #fecaca;
  background:#fef2f2;
  color:#991b1b;
  border-radius:14px;
  padding:.85rem 1rem;
  box-shadow:0 10px 20px rgba(153,27,27,.08);
}
.form-note{
  margin:0 0 1rem;
  color:#475569;
  font-size:.96rem;
}

/* =========================================================
   Shared premium sections
========================================================= */
.section-shell{
  background:#fff;
  border:1px solid rgba(15,23,42,.12);
  border-radius:20px;
  box-shadow:var(--shadow);
  padding:2rem;
}
.section-shell.center{
  text-align:center;
}
.section-shell.center p{
  max-width:780px;
  margin-inline:auto;
}
.section-shell .cta-row{
  margin-top:1.1rem;
}

.section-head.centered{
  text-align:center;
  margin:0 auto 2rem;
  max-width:860px;
}
.content-jump-links{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  margin-top:1.15rem;
}
.content-jump-links a{
  display:inline-flex;
  align-items:center;
  padding:.55rem .9rem;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(15,23,42,.12);
  color:#0f172a;
  font-weight:700;
  font-size:.92rem;
  box-shadow:0 10px 24px rgba(15,23,42,.06);
  transition:transform .18s ease, border-color .18s ease, background .18s ease;
}
.content-jump-links a:hover{
  transform:translateY(-1px);
  background:#f8fbff;
  border-color:rgba(59,130,246,.22);
}
.content-cta-band{
  background:linear-gradient(135deg, #08111f 0%, #0f172a 58%, #1d4ed8 100%);
  border:1px solid rgba(191,219,254,.16);
  border-radius:22px;
  box-shadow:0 24px 60px rgba(2,8,23,.18);
  padding:1.65rem;
  color:#fff;
}
.content-cta-band h2,
.content-cta-band h3{
  color:#fff;
  margin:0 0 .55rem;
}
.content-cta-band p{
  margin:0;
  max-width:780px;
  color:rgba(226,232,240,.94);
}
.content-cta-band .eyebrow{
  background:rgba(255,255,255,.12);
  color:#fff;
}
.content-cta-band .cta-row{
  margin-top:1rem;
}
.content-cta-band .btn-secondary,
.content-cta-band .btn-ghost{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.24);
  color:#fff;
}
.content-cta-band .btn-secondary:hover,
.content-cta-band .btn-ghost:hover{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.3);
}
.guide-kpis {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:1rem;
}
.guide-kpi {
  border:1px solid var(--border, rgba(15,23,42,.12));
  border-radius:14px;
  background:#fff;
  padding:1rem;
  box-shadow:var(--shadow-sm, 0 10px 28px rgba(2,8,23,.08));
}
.guide-kpi p { margin:0; }
.guide-kpi .kpi-label {
  font-size:.8rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--muted, #64748b);
  font-weight:700;
}
.guide-kpi .kpi-value {
  margin-top:.3rem;
  font-size:1.35rem;
  color:var(--text, #0b1220);
  font-weight:800;
}
.product-card{ display:flex; flex-direction:column; gap:.8rem; }
.product-card .stat-line{ margin:0; color:var(--muted, #64748b); }
.product-card .stat-line strong{ color:var(--text, #0b1220); }
.product-card .cta-row{ justify-content:flex-start; }
.legal-summary-card ul{
  margin:0;
  padding-left:1.05rem;
  color:var(--muted, #64748b);
  line-height:1.7;
}
.legal-note{
  border-left:4px solid #2563eb;
  background:#eff6ff;
  padding:1rem 1.1rem;
  border-radius:14px;
  margin-top:1rem;
}
.platform-proof-head{
  max-width:920px;
  margin-bottom:1.5rem;
}
.platform-proof-badge{
  display:inline-flex;
  align-items:center;
  padding:.34rem .72rem;
  border-radius:999px;
  background:rgba(37,99,235,.08);
  color:#1d4ed8;
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:.75rem;
}
.platform-proof-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:1rem;
}
.platform-proof-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.12);
  border-radius:18px;
  box-shadow:var(--shadow-sm);
  padding:1.35rem;
}
.platform-proof-card h3{
  margin-bottom:.55rem;
}
.platform-proof-card p{
  margin:0;
  color:#475569;
}
.platform-proof-strip{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);
  gap:1rem;
  margin-top:1.25rem;
  padding:1.3rem;
  border:1px solid rgba(15,23,42,.12);
  border-radius:20px;
  background:linear-gradient(135deg, #fff, #f8fbff);
  box-shadow:var(--shadow-sm);
}
.platform-proof-strip h3{
  margin-bottom:.65rem;
}
.platform-proof-list{
  margin:0;
  padding-left:1.05rem;
  color:#475569;
}
.platform-proof-list li + li{
  margin-top:.45rem;
}
.platform-proof-actions{
  display:flex;
  flex-wrap:wrap;
  align-content:flex-start;
  gap:.8rem;
}
.platform-confidence-head{
  max-width:860px;
}
.platform-confidence-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:1rem;
}
.confidence-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.12);
  border-radius:18px;
  box-shadow:var(--shadow-sm);
  padding:1.35rem;
}
.confidence-card h3{
  margin-bottom:.55rem;
}
.confidence-card p{
  margin:0;
  color:var(--muted);
}
.platform-confidence-actions{
  justify-content:center;
}

.review-path-head{
  max-width:920px;
}
.review-path-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:1rem;
}
.review-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.12);
  border-radius:18px;
  box-shadow:var(--shadow-sm);
  padding:1.35rem;
}
.review-card h3{
  margin-bottom:.55rem;
}
.review-card p{
  margin:0;
  color:var(--muted);
}
.review-path-strip{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);
  gap:1rem;
  margin-top:1.25rem;
  padding:1.3rem;
  border:1px solid rgba(15,23,42,.12);
  border-radius:20px;
  background:linear-gradient(135deg, #fff, #f8fbff);
  box-shadow:var(--shadow-sm);
}
.review-step-list{
  margin:0;
  padding-left:1.15rem;
  color:#475569;
}
.review-step-list li + li{
  margin-top:.45rem;
}
.review-path-actions{
  display:flex;
  flex-wrap:wrap;
  align-content:flex-start;
  gap:.8rem;
}

/* =========================================================
   Shared page systems: pricing, products, publishing
========================================================= */
.eyebrow{
  display:inline-flex;
  align-items:center;
  padding:.28rem .72rem;
  border-radius:999px;
  background:rgba(37,99,235,.08);
  color:#1d4ed8;
  font-family:var(--font-display);
  font-size:.74rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  margin-bottom:.75rem;
  border:1px solid rgba(37,99,235,.1);
}

.products-hero{ padding-bottom:5.8rem; }
.products-hero p,
.pricing-hero p{ max-width:900px; }

.products-hero-summary{ margin-top:2rem; }
.author-followup{ font-size:1.05rem; }
.hero-summary,
.bundle-facts,
.product-grid,
.cost-grid,
.he-gallery-grid,
.pricing-grid,
.bundle-grid,
.notes-grid,
.compare-grid,
.decision-grid{
  display:grid;
  gap:1rem;
}
.hero-summary,
.bundle-facts,
.product-grid,
.cost-grid,
.he-gallery-grid,
.bundle-grid,
.notes-grid,
.compare-grid,
.decision-grid{
  grid-template-columns:repeat(3, minmax(0,1fr));
}
.pricing-grid{
  display:grid;
  gap:1rem;
  grid-template-columns:repeat(2, minmax(0,1fr));
  align-items:stretch;
}
.hero-panel,
.bundle-card,
.product-card,
.cost-card,
.reader-highlight,
.he-photo-card,
.pricing-card,
.note-card,
.compare-card,
.decision-card,
.pricing-summary,
.reader-benefit-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.12);
  border-radius:18px;
  box-shadow:0 16px 42px rgba(2,8,23,.08);
}
.hero-panel{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.14);
  color:#fff;
  padding:1.15rem;
}
.hero-panel strong{
  display:block;
  font-size:1.05rem;
  margin-bottom:.35rem;
}
.hero-panel span{ color:rgba(226,232,240,.88); }
.bundle-card,
.product-card,
.cost-card,
.reader-highlight,
.pricing-card,
.note-card,
.compare-card,
.decision-card,
.reader-benefit-card{ padding:1.35rem; }
.bundle-card p,
.product-card p,
.cost-card p,
.reader-highlight p,
.pricing-card p,
.note-card p,
.compare-card p,
.decision-card p,
.pricing-summary p,
.reader-benefit-card p{ margin:0; color:#475569; }
.bundle-card h3,
.product-card h3,
.cost-card h3,
.reader-highlight h3,
.note-card h3,
.compare-card h3,
.decision-card h3,
.reader-benefit-card h3{ font-size:1.12rem; margin-bottom:.55rem; }
.product-card .meta{ margin-top:1rem; display:grid; gap:.7rem; }
.product-card .meta strong{ display:block; color:#0f172a; margin-bottom:.2rem; font-size:.95rem; }
.product-card .cta-row{ margin-top:1rem; }
.reader-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(0, .85fr);
  gap:1rem;
}
.reader-highlight ul,
.pricing-summary ul{
  margin:1rem 0 0;
  padding-left:1.1rem;
  color:#475569;
}
.reader-highlight li + li,
.pricing-summary li + li{ margin-top:.45rem; }
.table-wrap{ margin-top:2rem; }
.cost-grid{ margin-top:2rem; }
.he-photo-card{ padding:0; overflow:hidden; }
.he-photo-card img,
.he-photo-placeholder{
  width:100%;
  height:260px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg, #eef2ff, #e2e8f0);
  color:#334155;
  font-weight:700;
}
.he-photo-card figcaption{
  padding:1rem;
  color:#64748b;
  border-top:1px solid rgba(15,23,42,.08);
}
.value-summary-card{ margin-top:1.5rem; }
.section-shell .closing-title{ margin-bottom:.5rem; }
.section-shell .closing-copy{ max-width:780px; margin:0 auto; color:#475569; }

.price-mark{
  display:block;
  font-size:clamp(1.85rem, 4vw, 2.5rem);
  line-height:1;
  margin:.8rem 0;
  color:#0f172a;
  font-weight:800;
}
.pricing-card.featured{
  border-color:rgba(37,99,235,.22);
  box-shadow:0 22px 54px rgba(37,99,235,.14);
}
.pricing-card ul{ margin:1rem 0 0; padding-left:1rem; color:#334155; }
.pricing-card li{ margin-bottom:.45rem; }
.pricing-summary{
  padding:1.45rem;
  background:linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
}
.pricing-summary strong{ color:#0f172a; }
.pricing-actions{ justify-content:center; }

.publishing-hero-copy{ max-width:800px; position:relative; z-index:1; }
.publishing-hero-copy .lead-secondary{ font-size:1.08rem; margin-top:-1rem; max-width:760px; }
.publishing-hero .btn-ghost{ border-color:rgba(255,255,255,.3); color:#fff; }
.reader-benefit-head{ margin-bottom:2.5rem; text-align:center; }
.author-grid{ align-items:center; }
.author-badge{
  background:#f8fafc;
  border:1px solid rgba(15,23,42,.12);
  color:#0f172a;
}
.author-title{ font-size:clamp(2rem, 4vw, 2.5rem); margin-top:.5rem; }
.author-intro{ font-size:1.15rem; line-height:1.8; color:var(--text); }
.author-copy p{ margin-bottom:1rem; }
.author-visual{ position:relative; padding:2rem; }
.author-books-display{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:1.5rem;
  transform:rotate(-2deg);
  transition:transform .35s ease;
}
.author-books-display:hover{ transform:rotate(0deg) scale(1.02); }
.media-placeholder{
  width:100%;
  min-height:220px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1.5rem;
  text-align:center;
  background:linear-gradient(135deg,#eef2ff,#e2e8f0);
  color:#0f172a;
}
.media-placeholder strong,
.media-placeholder span{
  display:block;
  font-size:1.02rem;
  font-weight:700;
  letter-spacing:-.01em;
}
.media-placeholder small{
  display:block;
  margin-top:.4rem;
  color:#475569;
  line-height:1.5;
}
.author-books-display img,
.author-books-display .author-book-card{
  width:100%;
  border-radius:8px;
  box-shadow:0 20px 35px rgba(2,8,23,.14);
  border:1px solid rgba(15,23,42,.06);
}
.author-books-display img:nth-child(2),
.author-books-display .author-book-card:nth-child(2){ margin-top:3rem; }
.author-availability{
  margin-top:2.5rem;
  padding:2rem;
  border:1px solid rgba(15,23,42,.10);
  border-radius:14px;
  background:#f8fafc;
  box-shadow:0 10px 24px rgba(2,8,23,.06);
}
.author-availability h4{
  margin:0 0 1.25rem;
  font-size:.85rem;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:#64748b;
  font-weight:700;
}
.catalog-section{ padding:4rem 0; }
.book-row{
  display:grid;
  grid-template-columns:280px 1fr;
  gap:4rem;
  padding:5rem 0;
  border-bottom:1px solid rgba(15,23,42,.10);
  align-items:start;
}
.book-row:last-child{ border-bottom:none; }
.book-cover-wrap{ text-align:center; }
.book-cover-large,
.book-cover-placeholder{
  width:100%;
  border-radius:8px;
  box-shadow:0 15px 35px rgba(2,8,23,.15), 0 5px 15px rgba(2,8,23,.10);
  position:sticky;
  top:120px;
  transition:transform .2s ease, box-shadow .2s ease;
  border:1px solid rgba(15,23,42,.04);
}
.book-cover-large:hover,
.book-cover-placeholder:hover{ transform:translateY(-5px); box-shadow:0 20px 40px rgba(2,8,23,.18); }
.book-cover-placeholder{
  min-height:380px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1.5rem;
  text-align:center;
  background:linear-gradient(135deg,#dbeafe,#e2e8f0);
  color:#0f172a;
}
.book-cover-placeholder span{
  display:block;
  font-size:1.2rem;
  font-weight:800;
  letter-spacing:-.02em;
}
.book-cover-placeholder small{
  display:block;
  margin-top:.55rem;
  color:#475569;
  line-height:1.5;
}
.book-content h3{ font-size:2.25rem; margin-bottom:.25rem; }
.book-subtitle{
  font-size:1.2rem;
  color:#2563eb;
  margin-bottom:1.5rem;
  display:block;
  font-weight:600;
  letter-spacing:-.01em;
}
.book-meta{
  background:#f8fafc;
  padding:2rem;
  border-radius:14px;
  margin:2rem 0;
  border-left:4px solid #2563eb;
  box-shadow:0 8px 18px rgba(2,8,23,.05);
}
.book-meta h4{ font-size:1.1rem; margin-top:0; margin-bottom:1rem; color:#0f172a; }
.book-meta ul{ margin:0; padding-left:1.25rem; color:#0f172a; }
.book-meta li{ margin-bottom:.75rem; line-height:1.6; }
.book-meta li strong{ color:#0f172a; }
.store-buttons{ display:flex; gap:1rem; margin-top:2rem; flex-wrap:wrap; }
.book-small-grid{ padding-top:3rem; }
.book-small-grid .card{ text-align:center; }
.book-small-grid .card img{
  display:block;
  margin:0 auto 1.5rem;
  width:150px;
  border-radius:6px;
  box-shadow:0 10px 20px rgba(2,8,23,.12);
  object-fit:cover;
  object-position:center;
}
.book-small-grid .card p{ font-size:.95rem; margin-bottom:1.5rem; flex-grow:1; }
.book-small-grid .cta-row{ justify-content:center; margin-top:auto; }
.apply-section .grid-2{ align-items:start; }
.apply-intro{ margin-bottom:1.5rem; }
.criteria-list{ margin:0; padding-left:1.25rem; line-height:1.8; color:#0f172a; }
.criteria-list li + li{ margin-top:.35rem; }

@media (max-width: 1080px){
  .hero-summary,
  .bundle-facts,
  .product-grid,
  .cost-grid,
  .he-gallery-grid,
  .reader-grid,
  .pricing-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}

/* =========================================================
   Footer
========================================================= */
.site-footer {
  background:#020617;
  color:#b4c3d6;
  padding:3.5rem 0 2rem;
  border-top:1px solid rgba(255,255,255,.06);
  margin-top:auto;
  flex-shrink:0;
}
.site-footer .container {
  max-width:1240px;
  margin:0 auto;
  padding:0 1.5rem;
}
.footer-grid {
  display:grid;
  grid-template-columns:minmax(0,1.4fr) repeat(2, minmax(0, .9fr));
  gap:2.5rem;
  margin-bottom:2rem;
}
.footer-brand-logo {
  display:block;
  width:auto;
  height:60px;
  aspect-ratio:1 / 1;
  object-fit:contain;
  margin-bottom:1rem;
}
.footer-branding p {
  margin:1rem 0 0;
  max-width:420px;
  color:#cbd5e1;
  line-height:1.65;
}
.footer-inline-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:1.25rem;
}
.footer-nav-col h2 {
  color:#fff;
  font-size:.92rem;
  font-weight:700;
  margin:0 0 1rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.footer-nav-col ul {
  list-style:none;
  padding:0;
  margin:0;
}
.footer-nav-col li + li {
  margin-top:.8rem;
}
.footer-nav-col a,
.footer-email {
  color:#c8d5e2;
  text-decoration:none;
  font-size:1rem;
  font-weight:500;
  transition:color .2s ease;
}
.footer-nav-col a:hover,
.footer-email:hover {
  color:#fff;
}
.footer-bottom {
  border-top:1px solid rgba(255,255,255,.1);
  padding-top:1.4rem;
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:center;
  font-size:.9rem;
  color:#9fb2c6;
}

/* =========================================================
   Utilities
========================================================= */
.section-head{ margin-bottom:2rem; max-width:820px; }
.section-head h2{ margin:0 0 .75rem; }
.section-head p{ margin:0; }

.hr{
  height:1px;
  background:var(--border);
  border:0;
  margin:2rem 0;
}

/* =========================================================
   Responsive
========================================================= */

@media (max-width: 1100px) {
  .guide-kpis { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .platform-confidence-grid,
  .review-path-grid,
  .footer-grid,
  .notes-grid,
  .compare-grid,
  .decision-grid,
  .bundle-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px){
  section{ padding:4.2rem 0; }
  .grid-3, .grid-2, .footer-grid, .reader-grid, .pricing-grid, .hero-summary, .bundle-facts, .product-grid, .cost-grid, .he-gallery-grid{ grid-template-columns:1fr; }
  .book-row{ grid-template-columns:1fr; gap:2.5rem; padding:3rem 0; }
  .book-cover-large{ max-width:240px; margin:0 auto; position:static; }
  .book-content{ text-align:center; }
  .book-meta{ text-align:left; }
  .store-buttons{ justify-content:center; }
  .author-visual{ padding:0; }
  .site-nav{
    position:absolute;
    top:100%;
    left:0;
    right:0;
    background:#fff;
    border-bottom:1px solid var(--border);
    padding:1rem;
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:1rem;
    box-shadow:0 18px 40px rgba(2,8,23,.10);
  }
  .site-nav.open{ display:flex; }
  .site-nav ul{ flex-direction:column; gap:.55rem; }
  .site-nav .nav-actions{
    flex-direction:column;
    align-items:stretch;
    gap:.65rem;
    margin-left:0;
  }
  .menu-toggle{ display:inline-grid; place-items:center; }

  .nav-cta{ margin-left:0; width:100%; }
}

@media (max-width: 768px) {
  .site-footer {
    padding-top: 4.5rem;
  }
  .footer-bottom {
    flex-direction: column;
    text-align: center;
  }
  .footer-inline-actions .btn {
    width:100%;
  }
  .section-shell {
    padding: 1.5rem;
  }
}

@media (max-width: 640px) {
  .container{ width:min(var(--container), calc(100% - 1.25rem)); }
  section{ padding:3.65rem 0; }
  .hero{ padding:4.8rem 0 3.95rem; }
  .hero p,
  .lead,
  .section-head p{ font-size:1rem; }
  .badge{ font-size:.78rem; }
  .cta-row{ flex-direction:column; align-items:stretch; gap:.7rem; }
  .cta-row > .btn,
  .cta-row > a.btn{ width:100%; }
  .card,
  .section-shell,
  .platform-proof-card,
  .platform-proof-strip,
  .review-path-strip,
  .product-side-card,
  .product-inline-nav,
  .product-cta-band,
  .product-mini-card{ padding:1.15rem; }
  .site-logo{ height:52px; }
  .header-inner{ min-height:82px; }
  .footer-grid{ gap:2rem; }
  .footer-brand-logo{ height:56px; }
  .site-footer .container{ padding:0 1rem; }
  th,td{ padding:.8rem .85rem; font-size:.95rem; }
  table{ min-width:560px; }
  .faq-question{ align-items:flex-start; gap:.75rem; }
  .product-anchor-links{ flex-wrap:nowrap; overflow-x:auto; padding-bottom:.2rem; scrollbar-width:none; }
  .product-anchor-links::-webkit-scrollbar{ display:none; }
  .product-anchor-links a{ white-space:nowrap; }
}

@media (max-width: 900px){
  .header-inner{ min-height:86px; }
  .site-logo{ height:58px; }
  .site-nav{ max-height:calc(100vh - 86px); overflow-y:auto; padding-bottom:calc(1rem + env(safe-area-inset-bottom)); }
  .site-nav a,
  .site-nav .nav-actions > *,
  .site-nav .btn,
  .site-nav .nav-link-secondary{ width:100%; justify-content:center; text-align:center; }
}


@media (max-width: 640px) {
  .guide-kpis { grid-template-columns:1fr; }
  .content-jump-links{ flex-wrap:nowrap; overflow-x:auto; padding-bottom:.15rem; scrollbar-width:none; }
  .content-jump-links::-webkit-scrollbar{ display:none; }
  .content-jump-links a{ white-space:nowrap; }
  .content-cta-band{ padding:1.15rem; }
}

/* =========================================================
   Entrance animations
========================================================= */
@keyframes fade-up{
  from{ opacity:0; transform:translateY(18px); }
  to{   opacity:1; transform:translateY(0); }
}
@keyframes fade-in{
  from{ opacity:0; }
  to{   opacity:1; }
}

.hero .container > *{
  animation: fade-up .55s ease both;
}
.hero .container > *:nth-child(1){ animation-delay:.05s; }
.hero .container > *:nth-child(2){ animation-delay:.15s; }
.hero .container > *:nth-child(3){ animation-delay:.25s; }
.hero .container > *:nth-child(4){ animation-delay:.35s; }

/* Card hover — consistent lift across card types */
.card:hover,
.entry-card:hover,
.app-card:hover,
.flow-card:hover,
.value-card:hover,
.guide-card:hover,
.faq-mini:hover,
.platform-proof-card:hover,
.confidence-card:hover,
.review-card:hover,
.pricing-card:hover,
.bundle-card:hover,
.decision-card:hover,
.product-mini-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-lift);
  border-color:rgba(59,130,246,.16);
}

/* =========================================================
   Reduced motion
========================================================= */
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto !important; }
  *{ transition:none !important; animation:none !important; }
}



/* =========================================================
   Product page polish helpers
========================================================= */
.product-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  gap:1.25rem;
  align-items:start;
}
.product-hero-copy p{ max-width:900px; }
.product-hero-side{ display:grid; gap:.9rem; }
.product-side-card,
.product-inline-nav,
.product-cta-band,
.product-mini-card{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);
  border-radius:20px;
  box-shadow:0 18px 42px rgba(2,8,23,.16);
}
.product-side-card,
.product-inline-nav,
.product-cta-band{ padding:1.1rem; color:#fff; }
.product-side-card .eyebrow,
.product-cta-band .eyebrow{ background:rgba(255,255,255,.14); color:#fff; margin-bottom:.7rem; }
.product-side-card h2,
.product-side-card h3,
.product-inline-nav h3,
.product-cta-band h2,
.product-cta-band h3{ color:#fff; font-size:1.1rem; margin:0 0 .45rem; }
.product-side-card p,
.product-inline-nav p,
.product-cta-band p{ margin:0; color:rgba(226,232,240,.92); }
.product-side-points,
.product-checklist{ list-style:none; padding:0; margin:.8rem 0 0; display:grid; gap:.55rem; }
.product-side-points li,
.product-checklist li{ position:relative; padding-left:1.15rem; color:rgba(241,245,249,.96); }
.product-side-points li::before,
.product-checklist li::before{ content:'•'; position:absolute; left:0; top:0; color:#bfdbfe; font-weight:700; }
.product-inline-nav{ background:#fff; border:1px solid rgba(15,23,42,.12); box-shadow:0 16px 34px rgba(15,23,42,.08); color:var(--text); }
.product-inline-nav h3,
.product-inline-nav p{ color:inherit; }
.product-anchor-links{ display:flex; flex-wrap:wrap; gap:.65rem; margin-top:.85rem; }
.product-anchor-links a{ display:inline-flex; align-items:center; padding:.5rem .85rem; border-radius:999px; background:#f8fbff; border:1px solid rgba(59,130,246,.2); font-size:.9rem; font-weight:700; color:#0f172a; transition:transform .18s ease, background .18s ease, border-color .18s ease; }
.product-anchor-links a:hover{ transform:translateY(-1px); background:#eff6ff; border-color:rgba(59,130,246,.34); }
.product-summary-grid,
.decision-grid,
.product-mini-grid{ display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
.product-mini-grid.two-up,
.decision-grid.two-up{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.product-mini-card{ background:#fff; border:1px solid rgba(15,23,42,.12); box-shadow:0 14px 30px rgba(15,23,42,.08); padding:1.15rem; color:var(--text); }
.product-mini-card h3{ margin:0 0 .45rem; font-size:1.08rem; }
.product-mini-card p{ margin:0; color:var(--color-text-muted); }
.product-mini-card .meta-label{ display:block; font-size:.8rem; text-transform:uppercase; letter-spacing:.08em; font-weight:800; color:var(--color-text-soft); margin-bottom:.55rem; }
.product-cta-band{ background:linear-gradient(135deg, rgba(8,17,31,.96), rgba(15,23,42,.96) 55%, rgba(29,78,216,.88)); border-color:rgba(191,219,254,.16); margin-top:1.4rem; }
.product-cta-band .cta-row{ margin-top:1rem; }
.product-cta-band .btn-secondary,
.product-cta-band .btn-ghost{ background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.22); color:#fff; }
.product-cta-band .btn-secondary:hover,
.product-cta-band .btn-ghost:hover{ background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.3); }
.stack-note{ margin-top:1rem; color:var(--color-text-muted); max-width:880px; }
@media (max-width: 1024px){
  .product-hero-grid,
  .product-summary-grid,
  .decision-grid,
  .product-mini-grid{ grid-template-columns:1fr; }
  .product-mini-grid.two-up,
  .decision-grid.two-up{ grid-template-columns:1fr; }
}


/* =========================================================
   Visual proof system
========================================================= */
.visual-proof-system{ position:relative; }
.visual-proof-head p{ max-width:860px; }
.visual-proof-highlights{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin:1.25rem 0 1.5rem;
}
.visual-proof-highlight{
  display:inline-flex;
  align-items:center;
  padding:.55rem .9rem;
  border-radius:999px;
  background:linear-gradient(180deg, #eff6ff, #f8fbff);
  border:1px solid rgba(59,130,246,.18);
  color:#0f172a;
  font-weight:700;
  font-size:.92rem;
  box-shadow:0 10px 24px rgba(59,130,246,.08);
}
.visual-proof-layout{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);
  gap:1.25rem;
  align-items:start;
}
.visual-proof-browser{
  border-radius:24px;
  border:1px solid rgba(15,23,42,.1);
  background:linear-gradient(180deg, #0f172a, #111827 18%, #f8fafc 18%, #ffffff 100%);
  box-shadow:0 24px 60px rgba(15,23,42,.14);
  overflow:hidden;
}
.visual-proof-browser-top{
  min-height:76px;
  padding:1rem 1.15rem 1.05rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}
.visual-proof-browser-top p{
  margin:0;
  color:#dbe7ff;
  font-weight:700;
  font-size:.98rem;
}
.visual-proof-browser-dots{ display:flex; gap:.45rem; }
.visual-proof-browser-dots span{
  width:.78rem;
  height:.78rem;
  border-radius:999px;
  background:rgba(255,255,255,.32);
}
.visual-proof-workspace{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
  padding:1.2rem;
}
.visual-proof-panel{
  min-height:100%;
  padding:1.05rem;
  border-radius:18px;
  border:1px solid rgba(15,23,42,.1);
  background:linear-gradient(180deg, #ffffff, #f8fbff);
  box-shadow:0 14px 30px rgba(15,23,42,.06);
}
.visual-proof-panel-label,
.visual-proof-side-label{
  display:inline-flex;
  align-items:center;
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:800;
  color:#2563eb;
  background:rgba(37,99,235,.08);
  border-radius:999px;
  padding:.35rem .6rem;
  margin-bottom:.7rem;
}
.visual-proof-panel h3{
  margin:0 0 .45rem;
  font-size:1.1rem;
}
.visual-proof-panel p{
  margin:0;
  color:#475569;
}
.visual-proof-list,
.visual-proof-side-list{
  margin:.9rem 0 0;
  padding-left:1.05rem;
  color:#334155;
}
.visual-proof-list li,
.visual-proof-side-list li{ margin-bottom:.58rem; }
.visual-proof-sidebar{ display:grid; gap:1rem; }
.visual-proof-side-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.1);
  border-radius:20px;
  box-shadow:0 14px 32px rgba(15,23,42,.07);
  padding:1.15rem;
}
.visual-proof-side-list-ordered{ padding-left:1.2rem; }
.privacy-note-inline{
  margin-top:1rem;
  padding:1rem 1.1rem;
  border:1px solid rgba(59,130,246,.18);
  border-radius:16px;
  background:linear-gradient(180deg, #f8fbff, #eff6ff);
}
.privacy-note-inline p:last-child{ margin-bottom:0; }
@media (max-width: 1080px){
  .visual-proof-layout,
  .visual-proof-workspace{ grid-template-columns:1fr; }
}


/* =========================
   Shared form utilities
   ========================= */
.form-honeypot{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}

/* =========================
   Contact page (moved from inline block)
   ========================= */
/* --- PREMIUM DESIGN SYSTEM & VARIABLES --- */
  body.page-contact{
    --brand-primary: #2563eb;
    --brand-primary-hover: #1d4ed8;
    --brand-dark: #0f172a;
    --brand-darker: #020617;
    --text-main: #1e293b;
    --text-muted: #43576b;
    --bg-main: #ffffff;
    --bg-surface: #f8fafc;
    --border-soft: rgba(226, 232, 240, 0.8);
    --shadow-sm: 0 2px 4px rgba(0,0,0,0.05);
    --shadow-md: 0 10px 15px -3px rgba(0,0,0,0.05), 0 4px 6px -4px rgba(0,0,0,0.025);
    --shadow-lg: 0 20px 25px -5px rgba(0,0,0,0.08), 0 8px 10px -6px rgba(0,0,0,0.04);
    --radius-md: 12px;
    --radius-lg: 20px;
    --transition-smooth: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  }

  /* --- GLOBAL TYPOGRAPHY & UTILITIES --- */
  body.page-contact{
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    color: var(--text-main);
    background: var(--bg-surface); /* Slightly off-white background for the contact page */
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
  }

  body.page-contact h1, body.page-contact h2, body.page-contact h3, body.page-contact h4, body.page-contact h5, body.page-contact h6{
    color: var(--brand-dark);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.2;
    margin-bottom: 1rem;
  }

  body.page-contact p{
    color: var(--text-muted);
    font-size: 1.05rem;
    margin-bottom: 1.5rem;
  }

  body.page-contact .container{
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 1.5rem;
  }

  /* --- BADGES & BUTTONS --- */
  body.page-contact .badge{
    display: inline-block;
    padding: 0.4rem 1rem;
    background: rgba(37, 99, 235, 0.1);
    color: var(--brand-primary);
    border-radius: 999px;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 1.5rem;
  }

  body.page-contact .btn{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.85rem 1.75rem;
    border-radius: 999px;
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none;
    transition: var(--transition-smooth);
    border: 2px solid transparent;
    cursor: pointer;
    text-align: center;
  }

  body.page-contact .btn-primary{
    background: linear-gradient(135deg, var(--brand-primary), #1e40af);
    color: #ffffff !important;
    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.25);
  }

  body.page-contact .btn-primary:hover{
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(37, 99, 235, 0.35);
    filter: brightness(1.1);
  }

  /* --- HERO SECTION --- */
  .contact-hero{
    background: radial-gradient(circle at top center, #1e293b 0%, var(--brand-darker) 100%);
    color: #ffffff;
    text-align: center;
    padding: 8rem 0 12rem 0; /* Extra bottom padding for the overlapping card */
    position: relative;
    overflow: hidden;
  }

  .contact-hero::before{
    content: '';
    position: absolute;
    top: -30%;
    left: 50%;
    transform: translateX(-50%);
    width: 80vw;
    height: 80vw;
    background: radial-gradient(circle, rgba(37, 99, 235, 0.15) 0%, transparent 60%);
    pointer-events: none;
  }

  .contact-hero .section-head{
    position: relative;
    z-index: 1;
    max-width: 760px;
    margin: 0 auto;
  }

  .contact-hero .badge{
    background: rgba(255, 255, 255, 0.1);
    color: #f8fafc;
    border: 1px solid rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(8px);
  }

  .contact-hero h1{
    color: #ffffff !important;
    font-size: clamp(2.5rem, 5vw, 4rem);
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 1.25rem;
    text-shadow: 0 4px 12px rgba(0,0,0,0.4);
  }

  .contact-hero .lead{
    color: #e2ebf7 !important;
    font-size: 1.25rem;
    line-height: 1.7;
    margin: 0 auto;
  }

  /* --- FORM & CARD STYLING --- */
  body.page-contact .form-wrapper{
    margin-top: -8rem; /* Pulls the card up into the hero section */
    position: relative;
    z-index: 10;
    padding-bottom: 6rem;
  }

  body.page-contact .card{
    background: var(--bg-main);
    border-radius: var(--radius-lg);
    padding: 3rem;
    border: 1px solid var(--border-soft);
    box-shadow: var(--shadow-lg);
  }

  body.page-contact .form-grid label{
    display: block;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: var(--brand-dark);
    font-size: 0.95rem;
  }

  body.page-contact .form-grid input[type="text"], body.page-contact .form-grid input[type="email"], body.page-contact .form-grid select, body.page-contact .form-grid textarea{
    width: 100%;
    padding: 0.85rem 1.25rem;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    font-family: inherit;
    font-size: 1rem;
    margin-bottom: 1.5rem;
    transition: var(--transition-smooth);
    background: var(--bg-surface);
    color: var(--text-main);
    box-sizing: border-box;
  }

  body.page-contact .form-grid textarea{
    min-height: 150px;
    resize: vertical;
  }

  body.page-contact .form-grid input:focus, body.page-contact .form-grid select:focus, body.page-contact .form-grid textarea:focus{
    outline: none;
    border-color: var(--brand-primary);
    background: var(--bg-main);
    box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.15);
  }

  body.page-contact .form-grid button[type="submit"]{
    width: 100%;
    margin-top: 1rem;
    padding: 1rem;
    font-size: 1.1rem;
  }

  body.page-contact .field-row{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 1.25rem;
    align-items: start;
  }

  body.page-contact .field-row > div{
    min-width: 0;
  }

  body.page-contact .field-hint{
    display: block;
    color: var(--text-muted);
    font-size: 0.9rem;
    margin-top: -0.9rem;
    margin-bottom: 1.15rem;
  }

  /* --- ALERTS & CALLOUTS --- */
  body.page-contact .alert{
    padding: 1rem 1.25rem;
    border-radius: var(--radius-md);
    margin-bottom: 1.5rem;
    font-size: 0.95rem;
    line-height: 1.6;
    box-shadow: var(--shadow-sm);
  }

  body.page-contact .alert-success{
    background-color: #ecfdf5;
    border: 1px solid #a7f3d0;
    border-left: 4px solid #10b981;
    color: #047857;
  }

  body.page-contact .alert-error{
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    border-left: 4px solid #ef4444;
    color: #b91c1c;
  }

  body.page-contact .alert-error strong{
    display: block;
    margin-bottom: 0.5rem;
    color: #991b1b;
  }

  body.page-contact .alert-error ul{
    margin: 0;
    padding-left: 1.25rem;
  }

  body.page-contact .alert-error li{
    margin-bottom: 0.25rem;
  }

  body.page-contact .contact-intro{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1.5rem;
  }

  body.page-contact .contact-intro .info-card{
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: var(--radius-md);
    padding: 1.25rem;
    box-shadow: var(--shadow-sm);
  }

  body.page-contact .contact-intro .info-card h2{
    font-size: 1rem;
    margin-bottom: 0.45rem;
  }

  body.page-contact .contact-intro .info-card p{
    margin: 0;
    font-size: 0.98rem;
  }

  body.page-contact .contact-note{
    margin-top: 1rem;
    padding: 1rem 1.15rem;
    border-radius: var(--radius-md);
    background: #eff6ff;
    border: 1px solid rgba(37, 99, 235, 0.18);
    color: #1e3a8a;
    font-size: 0.98rem;
  }

  body.page-contact .contact-shell{
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
    gap: 1.5rem;
    align-items: start;
    margin-top: 1.5rem;
  }

  body.page-contact .contact-side-stack{
    display: grid;
    gap: 1rem;
  }

  body.page-contact .contact-side-card{
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: var(--radius-md);
    padding: 1.35rem;
    box-shadow: var(--shadow-sm);
  }

  body.page-contact .contact-side-card h2, body.page-contact .contact-side-card h3{
    font-size: 1rem;
    margin-bottom: 0.55rem;
  }

  body.page-contact .contact-side-card p{
    margin: 0;
    font-size: 0.98rem;
  }

  body.page-contact .contact-side-card ul{
    margin: 0.85rem 0 0;
    padding-left: 1.1rem;
    color: var(--text-muted);
  }

  body.page-contact .contact-side-card li + li{
    margin-top: 0.45rem;
  }

  body.page-contact .contact-side-card .cta-row{
    margin-top: 1rem;
  }

  body.page-contact .contact-mini-note{
    margin-top: 0.85rem;
    padding: 0.9rem 1rem;
    border-radius: 12px;
    background: #f8fafc;
    border: 1px solid rgba(148, 163, 184, 0.24);
    color: #334155;
    font-size: 0.95rem;
  }

  @media (max-width: 980px){
    body.page-contact .contact-shell{
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 900px){
    body.page-contact .contact-intro, body.page-contact .field-row{
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 720px){
    .contact-hero{
      padding: 5.5rem 0 7rem;
    }

    .contact-hero .lead{
      font-size: 1.05rem;
    }

    body.page-contact .form-wrapper{
      margin-top: -4.5rem;
      padding-bottom: 4rem;
    }

    body.page-contact .card{
      padding: 1.5rem;
    }

    body.page-contact .contact-intro .info-card, body.page-contact .contact-side-card{
      padding: 1.1rem;
    }
  }

.contact-hero-actions{
  justify-content:center;
  margin-top:1.25rem;
}

body.page-contact .contact-form-shell{
  max-width:980px;
}


/* Pass 206 visibility refinement: stronger public-page copy contrast without layout changes */
body.page-contact p,
body.page-contact .contact-intro .info-card p,
body.page-contact .contact-side-card p,
body.page-contact .contact-side-card ul,
body.page-engineering p,
body.page-engineering .field-help,
body.page-engineering .eng-list,
body.page-engineering .eng-callout-subtext {
  color: var(--text-muted);
}

.contact-hero .lead,
.engineering-hero p {
  color: #e2ebf7 !important;
}


/* =========================
   Engineering page (moved from inline block)
   ========================= */
/* --- PREMIUM DESIGN SYSTEM & VARIABLES --- */
  body.page-engineering{
    --brand-primary: #2563eb;
    --brand-primary-hover: #1d4ed8;
    --brand-dark: #0f172a;
    --brand-darker: #020617;
    --text-main: #1e293b;
    --text-muted: #43576b;
    --bg-main: #ffffff;
    --bg-surface: #f8fafc;
    --border-soft: rgba(226, 232, 240, 0.8);
    --shadow-sm: 0 2px 4px rgba(0,0,0,0.05);
    --shadow-md: 0 10px 15px -3px rgba(0,0,0,0.05), 0 4px 6px -4px rgba(0,0,0,0.025);
    --shadow-lg: 0 20px 25px -5px rgba(0,0,0,0.08), 0 8px 10px -6px rgba(0,0,0,0.04);
    --radius-md: 12px;
    --radius-lg: 20px;
    --transition-smooth: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  }

  /* --- GLOBAL TYPOGRAPHY & UTILITIES --- */
  body.page-engineering{
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    color: var(--text-main);
    background: var(--bg-main);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
  }

  body.page-engineering h1, body.page-engineering h2, body.page-engineering h3, body.page-engineering h4, body.page-engineering h5, body.page-engineering h6{
    color: var(--brand-dark);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.2;
    margin-bottom: 1rem;
  }

  body.page-engineering p{
    color: var(--text-muted);
    font-size: 1.05rem;
    margin-bottom: 1.5rem;
  }

  body.page-engineering .container{
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 1.5rem;
  }

  body.page-engineering section{
    padding: 6rem 0;
  }

  body.page-engineering .surface{
    background-color: var(--bg-surface);
    border-top: 1px solid var(--border-soft);
    border-bottom: 1px solid var(--border-soft);
  }

  body.page-engineering .section-head{
    max-width: 800px;
    margin-bottom: 3rem;
  }

  body.page-engineering .section-head h2{ font-size: 2.5rem; }
  body.page-engineering .section-head p{ font-size: 1.15rem; }

  /* Grid Layouts */
  body.page-engineering .grid-2{ display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); gap: 2rem; }
  body.page-engineering .grid-3{ display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 2rem; }

  /* --- BADGES & BUTTONS --- */
  body.page-engineering .badge{
    display: inline-block;
    padding: 0.4rem 1rem;
    background: rgba(37, 99, 235, 0.1);
    color: var(--brand-primary);
    border-radius: 999px;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 1.5rem;
  }

  body.page-engineering .cta-row{
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 2rem;
  }

  body.page-engineering .btn{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.85rem 1.75rem;
    border-radius: 999px;
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none;
    transition: var(--transition-smooth);
    border: 2px solid transparent;
    cursor: pointer;
    text-align: center;
  }

  body.page-engineering .btn-primary{
    background: linear-gradient(135deg, var(--brand-primary), #1e40af);
    color: #ffffff !important;
    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.25);
  }

  body.page-engineering .btn-primary:hover{
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(37, 99, 235, 0.35);
    filter: brightness(1.1);
  }

  body.page-engineering .btn-secondary{
    background: transparent;
    color: var(--text-main) !important;
    border-color: #cbd5e1;
  }

  body.page-engineering .btn-secondary:hover{
    background: var(--bg-main);
    border-color: #94a3b8;
    transform: translateY(-2px);
    box-shadow: var(--shadow-sm);
  }

  body.page-engineering .btn-ghost{
    background: transparent;
    border-color: transparent;
    color: var(--brand-primary) !important;
  }

  body.page-engineering .btn-ghost:hover{
    background: var(--bg-surface);
    border-color: #cbd5e1;
  }

  /* --- HERO SECTION --- */
  .engineering-hero{
    background: radial-gradient(circle at top right, #1e293b 0%, var(--brand-darker) 100%);
    color: #ffffff;
    padding: 8rem 0 6rem 0;
    position: relative;
    overflow: hidden;
  }

  .engineering-hero::before{
    content: '';
    position: absolute;
    top: -20%;
    left: 20%;
    width: 60vw;
    height: 60vw;
    background: radial-gradient(circle, rgba(37, 99, 235, 0.15) 0%, transparent 60%);
    pointer-events: none;
  }

  .engineering-hero > .container{
    position: relative;
    z-index: 1;
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
  }

  .engineering-hero .badge{
    background: rgba(255, 255, 255, 0.1);
    color: #f8fafc;
    border: 1px solid rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(8px);
  }

  .engineering-hero h1{
    color: #ffffff !important;
    font-size: clamp(2.5rem, 5vw, 4rem);
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 1.5rem;
    text-shadow: 0 4px 12px rgba(0,0,0,0.4);
  }

  .engineering-hero p{
    color: #e2ebf7 !important;
    font-size: 1.25rem;
    line-height: 1.7;
    margin-bottom: 2.5rem;
  }

  .engineering-hero .cta-row{
    justify-content: center;
  }

  .engineering-hero .btn-ghost{
    border-color: rgba(255,255,255,0.3);
    color: #fff !important;
  }

  .engineering-hero .btn-ghost:hover{
    background: rgba(255,255,255,0.1);
    border-color: #fff;
  }

  /* --- HERO INFO CARDS (FIXED VISIBILITY) --- */
  .engineering-hero .hero-info-grid{
    margin-top: 3.5rem;
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    text-align: left;
  }

  .engineering-hero .hero-info-grid .card{
    /* Forcing a light glassmorphic background so text is always visible regardless of external CSS */
    background: rgba(255, 255, 255, 0.95) !important; 
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
    padding: 1.5rem;
    border-radius: var(--radius-md);
    transition: var(--transition-smooth);
  }

  .engineering-hero .hero-info-grid .card:hover{
    background: #ffffff !important;
    border-color: rgba(255, 255, 255, 0.8);
    transform: translateY(-4px);
  }

  .engineering-hero .hero-info-grid .card div:first-child{
    color: var(--brand-dark) !important; /* Forces dark text */
    font-size: 1.1rem;
    margin-bottom: 0.5rem;
  }

  .engineering-hero .hero-info-grid .card div:last-child{
    color: var(--text-muted) !important; /* Forces dark gray text */
    font-size: 0.95rem;
  }

  @media (max-width: 768px){
    .engineering-hero .hero-info-grid{ grid-template-columns: 1fr; }
  }

  @media (max-width: 980px){
    .engineering-hero > .container{
      max-width: none;
    }
  }

  /* --- CARD STYLING --- */
  body.page-engineering .card{
    background: var(--bg-main);
    border-radius: var(--radius-lg);
    padding: 2.5rem;
    border: 1px solid var(--border-soft);
    box-shadow: var(--shadow-sm);
    transition: var(--transition-smooth);
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
  }

  body.page-engineering section .grid-3 .card:hover, body.page-engineering section .grid-2 .card:not(.form-grid):not(.no-hover):hover{
    transform: translateY(-6px);
    box-shadow: var(--shadow-lg);
    border-color: #cbd5e1;
  }

  body.page-engineering section .grid-3 .card::before{
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--brand-primary), #4f46e5);
    opacity: 0;
    transition: opacity 0.3s ease;
  }

  body.page-engineering section .grid-3 .card:hover::before{
    opacity: 1;
  }

  body.page-engineering .card h3{
    font-size: 1.35rem;
    margin-bottom: 0.75rem;
  }

  /* --- CALLOUTS --- */
  body.page-engineering .callout{
    background: var(--bg-surface);
    border: 1px solid var(--border-soft);
    border-left: 4px solid var(--brand-primary);
    padding: 1.25rem 1.5rem;
    border-radius: var(--radius-md);
    font-size: 0.95rem;
    line-height: 1.6;
    color: var(--text-main);
  }

  body.page-engineering .callout strong{
    color: var(--brand-dark);
    display: block;
    margin-bottom: 0.25rem;
    font-size: 1.05rem;
  }

  /* --- PRICING TABLES --- */
  body.page-engineering table{
    width: 100%;
    border-collapse: collapse;
    font-size: 1rem !important;
    text-align: left;
    min-width: 800px;
  }

  body.page-engineering th, body.page-engineering td{
    padding: 1.25rem 1.5rem !important;
    border-bottom: 1px solid var(--border-soft) !important;
    vertical-align: middle;
  }

  body.page-engineering th{
    background: var(--bg-surface) !important;
    font-weight: 700;
    color: var(--brand-dark);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.85rem !important;
  }

  body.page-engineering tbody tr{
    transition: background-color 0.2s ease;
  }

  body.page-engineering tbody tr:hover{
    background-color: rgba(248, 250, 252, 0.6);
  }

  body.page-engineering tbody tr:last-child td{
    border-bottom: none !important;
  }

  body.page-engineering td strong{
    color: var(--brand-dark);
  }

  body.page-engineering .table-wrapper{
    overflow-x: auto;
    border-radius: var(--radius-md);
    border: 1px solid var(--border-soft);
    box-shadow: var(--shadow-sm);
    background: var(--bg-main);
  }

  /* --- FORM STYLING --- */
  body.page-engineering .form-grid{
    background: var(--bg-surface);
    padding: 2.5rem;
    border-radius: var(--radius-lg);
    border: 1px solid var(--border-soft);
    box-shadow: var(--shadow-md);
  }

  body.page-engineering .form-grid label{
    display: block;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: var(--brand-dark);
    font-size: 0.95rem;
  }

  body.page-engineering .form-grid input[type="text"], body.page-engineering .form-grid input[type="email"], body.page-engineering .form-grid select, body.page-engineering .form-grid textarea{
    width: 100%;
    padding: 0.85rem 1.25rem;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    font-family: inherit;
    font-size: 1rem;
    margin-bottom: 1.5rem;
    transition: var(--transition-smooth);
    background: var(--bg-main);
    color: var(--text-main);
    box-sizing: border-box;
  }

  body.page-engineering .form-grid select{
    appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 1em;
  }

  body.page-engineering .form-grid input:focus, body.page-engineering .form-grid select:focus, body.page-engineering .form-grid textarea:focus{
    outline: none;
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.15);
  }

  body.page-engineering .form-grid button[type="submit"]{
    width: 100%;
    margin-top: 0.5rem;
    margin-bottom: 1rem;
    padding: 1rem;
    font-size: 1.1rem;
  }

  body.page-engineering .field-row{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 1.25rem;
    align-items: start;
  }

  body.page-engineering .field-row > div{
    min-width: 0;
  }

  body.page-engineering .field-help{
    display: block;
    color: var(--text-muted);
    font-size: 0.9rem;
    margin-top: -0.9rem;
    margin-bottom: 1.15rem;
  }
body.page-engineering, body.page-engineering td, body.page-engineering th{
    font-family: Inter, system-ui, -apple-system, sans-serif;
}

  @media (max-width: 720px){
    body.page-engineering .container{
      padding: 0 1rem;
    }

    body.page-engineering section{
      padding: 4.4rem 0;
    }

    .engineering-hero{
      padding: 6.2rem 0 4.6rem 0;
    }

    .engineering-hero p{
      font-size: 1.08rem;
      margin-bottom: 1.6rem;
    }

    body.page-engineering .card, body.page-engineering .form-grid{
      padding: 1.5rem;
    }

    .engineering-hero .hero-info-grid{
      margin-top: 2.25rem;
      gap: 1rem;
    }

    .engineering-hero .hero-info-grid .card{
      padding: 1.15rem !important;
    }
  }

.engineering-hero{
  padding-bottom:6rem;
}

.engineering-secondary-actions{
  margin-top:0.85rem;
}


/* =========================================================
   Stage 13 shared page systems: home, pricing, products, utilities
========================================================= */
body.page-home .home-hero p,
.home-hero p{ max-width:860px; }
body.page-home .entry-grid,
body.page-home .layer-grid,
body.page-home .rhythm-grid,
body.page-home .implementation-grid,
body.page-home .faq-grid{ display:grid; gap:1rem; }
body.page-home .entry-grid,
body.page-home .layer-grid,
body.page-home .rhythm-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
body.page-home .implementation-grid{ grid-template-columns:repeat(4, minmax(0, 1fr)); }
body.page-home .faq-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
body.page-home .entry-card,
body.page-home .layer-card,
body.page-home .rhythm-card,
body.page-home .implementation-card,
body.page-home .faq-item,
body.page-pricing .faq-item,
body.page-pricing .route-card,
body.page-pricing .include-card,
body.page-pricing .trust-card,
body.page-pricing .rollout-card,
body.page-pricing .note-card,
body.page-pos .fit-card,
body.page-pos .cap-card,
body.page-pos .check-card,
body.page-pos .rollout-card,
body.page-pos .pricing-card,
body.page-pos .faq-item,
body.page-pos .related-links a,
body.page-operations .step-card,
body.page-operations .faq-item,
body.page-operations .related-links a,
body.page-operations .visual-card,
body.page-scheduling .step-card,
body.page-scheduling .faq-item,
body.page-scheduling .related-links a,
body.page-scheduling .visual-card,
body.page-table .step,
body.page-table .he-photo-card,
body.page-table .related-resources a,
body.page-table .faq-item,
body.page-table .pricing-option{
  background:#fff;
  border:1px solid rgba(15,23,42,.12);
  border-radius:16px;
  padding:1.15rem;
  box-shadow:0 10px 30px rgba(15,23,42,.05);
}
body.page-home .entry-card a.card-link,
body.page-home .layer-card a.card-link,
body.page-pricing .related-links a,
body.page-pos .related-links a,
body.page-operations .related-links a,
body.page-scheduling .related-links a,
body.page-table .related-resources a{ display:block; font-weight:700; }
body.page-home .entry-card a.card-link,
body.page-home .layer-card a.card-link{ display:inline-block; margin-top:.75rem; color:#2563eb; }
body.page-home .decision-table,
body.page-pricing .comparison-table,
body.page-pos .comparison-table,
body.page-operations .comparison-table,
body.page-scheduling .comparison-table,
body.page-table .comparison-table{
  overflow-x:auto; border:1px solid rgba(15,23,42,.12); border-radius:16px; background:#fff;
}
body.page-home .decision-table table{ width:100%; min-width:920px; border-collapse:collapse; }
body.page-pricing .comparison-table table{ width:100%; min-width:980px; border-collapse:collapse; }
body.page-pos .comparison-table table{ width:100%; min-width:900px; border-collapse:collapse; }
body.page-operations .comparison-table table,
body.page-scheduling .comparison-table table{ width:100%; min-width:920px; border-collapse:collapse; }
body.page-table .comparison-table table{ width:100%; min-width:880px; border-collapse:collapse; }
body.page-home .decision-table th,
body.page-home .decision-table td,
body.page-pricing .comparison-table th,
body.page-pricing .comparison-table td,
body.page-pos .comparison-table th,
body.page-pos .comparison-table td,
body.page-operations .comparison-table th,
body.page-operations .comparison-table td,
body.page-scheduling .comparison-table th,
body.page-scheduling .comparison-table td,
body.page-table .comparison-table th,
body.page-table .comparison-table td{ padding:1rem; border-bottom:1px solid rgba(15,23,42,.1); text-align:left; vertical-align:top; }
body.page-home .decision-table th,
body.page-pricing .comparison-table th,
body.page-pos .comparison-table th,
body.page-operations .comparison-table th,
body.page-scheduling .comparison-table th,
body.page-table .comparison-table th{ background:#f8fafc; font-size:.95rem; }
body.page-home .decision-table tbody tr:last-child td,
body.page-pricing .comparison-table tbody tr:last-child td,
body.page-pos .comparison-table tbody tr:last-child td,
body.page-operations .comparison-table tbody tr:last-child td,
body.page-scheduling .comparison-table tbody tr:last-child td,
body.page-table .comparison-table tbody tr:last-child td{ border-bottom:0; }
body.page-pricing .pricing-hero p,
body.page-pos .pos-hero p,
body.page-operations .ops-hero p,
body.page-scheduling .sched-hero p,
.pricing-hero p,
.pos-hero p,
.ops-hero p,
.sched-hero p{ max-width:860px; }
body.page-table .table-hero p,
.table-hero p{ max-width:820px; }
body.page-table .table-hero .cta-row,
.table-hero .cta-row{ margin-top:1.4rem; }
body.page-table .table-hero .hero-sub,
.table-hero .hero-sub{ color:#dbe7ff; margin-top:1rem; font-size:1rem; }
body.page-pricing .route-grid,
body.page-pricing .include-grid,
body.page-pricing .trust-grid,
body.page-pricing .faq-grid,
body.page-pricing .rollout-grid,
body.page-pos .fit-grid,
body.page-pos .cap-grid,
body.page-pos .checklist-grid,
body.page-pos .rollout-grid,
body.page-pos .pricing-grid,
body.page-pos .faq-grid,
body.page-pos .related-links,
body.page-operations .ops-grid,
body.page-operations .faq-list,
body.page-operations .related-links,
body.page-operations .visual-grid,
body.page-scheduling .sched-grid,
body.page-scheduling .faq-list,
body.page-scheduling .related-links,
body.page-scheduling .visual-grid,
body.page-table .faq-list,
body.page-table .related-resources,
body.page-table .he-gallery-grid,
body.page-table .pricing-options,
body.page-table .shift-steps{ display:grid; gap:1rem; }
body.page-pricing .route-grid,
body.page-pricing .include-grid,
body.page-pricing .trust-grid,
body.page-pos .fit-grid,
body.page-pos .cap-grid,
body.page-pos .pricing-grid,
body.page-operations .ops-grid,
body.page-operations .visual-grid,
body.page-scheduling .sched-grid,
body.page-scheduling .visual-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
body.page-pricing .rollout-grid,
body.page-operations .implementation-steps,
body.page-scheduling .implementation-steps{ display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:.95rem; }
body.page-pricing .faq-grid,
body.page-pos .faq-grid,
body.page-pos .related-links,
body.page-table .related-resources{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
body.page-pos .checklist-grid,
body.page-table .pricing-options{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
body.page-table .shift-steps{ grid-template-columns:repeat(5, minmax(0, 1fr)); gap:.9rem; }
body.page-pricing .route-card .eyebrow{ display:inline-block; margin-bottom:.65rem; }
body.page-pricing .route-card .price{ font-size:2rem; font-weight:800; color:#0f172a; margin:.25rem 0 .65rem; }
body.page-pricing .route-card ul,
body.page-pricing .decision-list,
body.page-pos .check-card ul,
body.page-operations .checklist,
body.page-scheduling .checklist,
body.page-table .checklist,
body.page-table .plan-points{ margin:0; padding-left:1.1rem; }
body.page-pricing .route-card li,
body.page-pricing .decision-list li,
body.page-pos .check-card li,
body.page-operations .checklist li,
body.page-scheduling .checklist li,
body.page-table .checklist li{ margin-bottom:.55rem; color:#475569; }
body.page-pricing .route-actions,
body.page-table .plan-actions{ display:flex; flex-wrap:wrap; gap:.75rem; }
body.page-pricing .route-actions{ margin-top:1rem; }
body.page-pricing .decision-band{ background:linear-gradient(135deg, rgba(59,130,246,.08), rgba(6,182,212,.08)); border:1px solid rgba(15,23,42,.12); border-radius:18px; padding:1.25rem; box-shadow:0 10px 30px rgba(15,23,42,.06); }
body.page-pricing .decision-band p:last-child{ margin-bottom:0; }
body.page-pos .related-links small,
body.page-operations .faq-item p,
body.page-operations .step-card p,
body.page-operations .related-links small,
body.page-scheduling .faq-item p,
body.page-scheduling .step-card p,
body.page-scheduling .related-links small,
body.page-table .step p,
body.page-table .he-photo-card figcaption,
body.page-table .related-resources small,
body.page-table .faq-item p{ margin:0; color:#475569; }
body.page-pos .related-links small,
body.page-table .related-resources small{ display:block; margin-top:.35rem; font-weight:500; }
body.page-operations .step-card h3,
body.page-operations .faq-item h3,
body.page-scheduling .step-card h3,
body.page-scheduling .faq-item h3,
body.page-table .step h3,
body.page-table .faq-item h3{ margin-bottom:.45rem; font-size:1.02rem; }
body.page-table .faq-item h3{ font-size:1.05rem; margin-bottom:.4rem; }
body.page-operations .visual-card,
body.page-scheduling .visual-card,
body.page-table .he-photo-card{ overflow:hidden; padding:0; }
body.page-operations .visual-card img,
body.page-scheduling .visual-card img,
body.page-table .he-photo-card img{ width:100%; height:220px; object-fit:cover; display:block; }
body.page-operations .visual-card figcaption,
body.page-scheduling .visual-card figcaption{ padding:.85rem .95rem; color:#475569; font-size:.95rem; }
body.page-table .he-photo-card figcaption{ padding:.8rem .9rem; font-size:.95rem; }
body.page-table .quick-links{ margin-top:1.25rem; display:flex; flex-wrap:wrap; gap:.65rem; }
body.page-table .quick-links a{ border:1px solid rgba(59,130,246,.24); background:#f8fbff; color:#0f172a; border-radius:999px; padding:.45rem .8rem; font-size:.9rem; font-weight:600; }
body.page-table .pricing-option{ display:flex; flex-direction:column; gap:.9rem; border-radius:18px; padding:1.2rem; box-shadow:0 14px 34px rgba(15,23,42,.06); }
body.page-table .pricing-option.featured{ border-color:rgba(37,99,235,.3); box-shadow:0 18px 42px rgba(37,99,235,.12); }
body.page-table .plan-kicker{ display:inline-flex; align-items:center; gap:.45rem; font-size:.84rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:#1d4ed8; }
body.page-table .plan-price{ font-size:clamp(2rem, 5vw, 3rem); line-height:1; margin:0; color:#0f172a; }
body.page-table .plan-price small{ font-size:.95rem; color:var(--color-text-soft); font-weight:700; }
body.page-table .plan-note{ margin:0; color:#475569; }
body.page-table .plan-points{ color:#334155; }
body.page-table .plan-points li + li{ margin-top:.4rem; }
body.page-table .feedback-choice{ border:1px solid rgba(15,23,42,.1); border-radius:14px; background:#f8fafc; padding:.95rem; }
body.page-table .feedback-choice legend{ font-weight:700; color:#0f172a; margin-bottom:.55rem; }
body.page-table .feedback-choice label{ display:flex; gap:.7rem; align-items:flex-start; padding:.65rem 0; color:#334155; cursor:pointer; }
body.page-table .feedback-choice label + label{ border-top:1px solid rgba(15,23,42,.08); }
body.page-table .feedback-choice input{ margin-top:.2rem; }
body.page-table .feedback-choice strong{ display:block; color:#0f172a; margin-bottom:.15rem; }
body.page-table .plan-meta{ font-size:.92rem; color:var(--color-text-soft); }
.hero-inline-link{ color:#fff; text-decoration:underline; }
.heading-flush{ margin-top:0; }
.heading-tight{ margin-bottom:.45rem; }
.heading-tight-table{ margin-bottom:.4rem; }
.section-top-gap-sm{ margin-top:1rem; }
.section-top-gap-md{ margin-top:1.5rem; }
.section-card-centered{ margin-top:1.2rem; text-align:center; }
.table-card-gap{ margin-top:1.3rem; }
.cta-center{ justify-content:center; }
.cta-row-tight{ margin-top:1rem; }
.cta-row-tight-sm{ margin-top:.8rem; }
.table-cta-tight{ margin-top:1.25rem; }

body.page-engineering .card-flat-pad{ padding:1.5rem; box-shadow:none; }
body.page-engineering .eyebrow-strong{ font-weight:700; letter-spacing:.02em; }
body.page-engineering .subtle-top-gap{ margin-top:.2rem; }
body.page-engineering .anchor-links-top{ margin-top:1rem; }
body.page-engineering .figure-card-media{ padding:0; overflow:hidden; margin:0; }
body.page-engineering .media-image-250{ width:100%; height:250px; object-fit:cover; display:block; }
body.page-engineering .media-placeholder-250{ min-height:250px; }
body.page-engineering .figure-caption-subtle{ padding:1rem 1rem 1.1rem; color:#475569; }
body.page-engineering .eng-list{ margin:0; padding-left:1.05rem; color:var(--text-muted); line-height:1.7; }
body.page-engineering .text-no-margin{ margin:0; }
body.page-engineering .section-head-centered-lg{ text-align:center; margin:0 auto 3rem auto; }

@media (max-width:1080px){
  body.page-home .entry-grid,
  body.page-home .layer-grid,
  body.page-home .rhythm-grid,
  body.page-pricing .route-grid,
  body.page-pricing .include-grid,
  body.page-pricing .trust-grid,
  body.page-pos .fit-grid,
  body.page-pos .cap-grid,
  body.page-pos .pricing-grid,
  body.page-operations .ops-grid,
  body.page-operations .implementation-steps,
  body.page-operations .visual-grid,
  body.page-operations .related-links,
  body.page-scheduling .sched-grid,
  body.page-scheduling .implementation-steps,
  body.page-scheduling .visual-grid,
  body.page-scheduling .related-links{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  body.page-home .implementation-grid,
  body.page-pricing .rollout-grid,
  body.page-pos .rollout-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media (max-width:980px){
  body.page-table .shift-steps{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  body.page-table .he-gallery-grid,
  body.page-table .related-resources,
  body.page-table .pricing-options{ grid-template-columns:1fr; }
}
@media (max-width:760px){
  body.page-home .entry-grid,
  body.page-home .layer-grid,
  body.page-home .rhythm-grid,
  body.page-home .implementation-grid,
  body.page-home .faq-grid,
  body.page-pricing .route-grid,
  body.page-pricing .include-grid,
  body.page-pricing .trust-grid,
  body.page-pricing .faq-grid,
  body.page-pricing .rollout-grid,
  body.page-pos .fit-grid,
  body.page-pos .cap-grid,
  body.page-pos .checklist-grid,
  body.page-pos .rollout-grid,
  body.page-pos .pricing-grid,
  body.page-pos .faq-grid,
  body.page-pos .related-links,
  body.page-operations .ops-grid,
  body.page-operations .implementation-steps,
  body.page-operations .visual-grid,
  body.page-operations .related-links,
  body.page-scheduling .sched-grid,
  body.page-scheduling .implementation-steps,
  body.page-scheduling .visual-grid,
  body.page-scheduling .related-links{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  body.page-table .shift-steps{ grid-template-columns:1fr; }
}


/* Stage 14: resource + label shared page styles */
body.page-label .label-hero p{ max-width:860px; }
body.page-label .fit-grid,
body.page-label .cap-grid,
body.page-label .checklist-grid,
body.page-label .rollout-grid,
body.page-label .pricing-grid,
body.page-label .faq-grid,
body.page-label .related-links,
body.page-resources-index .guide-grid,
body.page-resources-index .route-grid,
body.page-resources-index .workflow-grid,
body.page-resources-index .note-grid,
body.page-resource-operations .resource-grid,
body.page-resource-operations .faq-list,
body.page-resource-operations .related-links,
body.page-resource-operations .implementation-steps,
body.page-resource-scheduling .resource-grid,
body.page-resource-scheduling .faq-list,
body.page-resource-scheduling .related-links,
body.page-resource-scheduling .implementation-steps,
body.page-resource-compare .compare-grid,
body.page-resource-compare .faq-list,
body.page-resource-compare .related-links,
body.page-resource-compare .implementation-steps,
body.page-resource-waitlist .checklist,
body.page-resource-waitlist .implementation-list,
body.page-resource-waitlist .faq-list,
body.page-resource-waitlist .related-links{ display:grid; gap:.95rem; }

body.page-label .fit-grid,
body.page-label .cap-grid,
body.page-label .pricing-grid,
body.page-resources-index .guide-grid,
body.page-resources-index .route-grid,
body.page-resources-index .note-grid,
body.page-resource-operations .resource-grid,
body.page-resource-scheduling .resource-grid,
body.page-resource-compare .compare-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
body.page-label .checklist-grid,
body.page-label .faq-grid,
body.page-label .related-links,
body.page-resource-operations .related-links,
body.page-resource-scheduling .related-links,
body.page-resource-compare .related-links,
body.page-resource-waitlist .implementation-list,
body.page-resource-waitlist .related-links{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
body.page-label .rollout-grid,
body.page-resources-index .workflow-grid,
body.page-resource-operations .implementation-steps,
body.page-resource-scheduling .implementation-steps,
body.page-resource-compare .implementation-steps{ grid-template-columns:repeat(4, minmax(0, 1fr)); }

body.page-resources-index .resource-hero p,
.resource-hero p,
body.page-resource-waitlist .guide-hero p,
.guide-hero p,
body.page-resource-waitlist .guide-hero .hero-sub,
.guide-hero .hero-sub{ max-width:860px; }
body.page-resource-waitlist .bread{ margin-bottom:1rem; color:#cbd5e1; font-size:.95rem; }
body.page-resource-waitlist .bread a{ color:#fff; text-decoration:underline; }
body.page-resource-waitlist .hero-sub{ color:#dbe7ff; margin-top:1rem; }
body.page-resource-waitlist .quick-jump{ margin-top:1.25rem; display:flex; flex-wrap:wrap; gap:.65rem; }
body.page-resource-waitlist .quick-jump a{ border:1px solid rgba(59,130,246,.24); background:#f8fbff; color:#0f172a; border-radius:999px; padding:.45rem .8rem; font-size:.9rem; font-weight:600; }

body.page-label .fit-card,
body.page-label .cap-card,
body.page-label .check-card,
body.page-label .rollout-card,
body.page-label .pricing-card,
body.page-label .faq-item,
body.page-label .related-links a,
body.page-resources-index .guide-card,
body.page-resources-index .route-card,
body.page-resources-index .workflow-card,
body.page-resources-index .note-card,
body.page-resource-operations .faq-item,
body.page-resource-operations .related-links a,
body.page-resource-operations .step-card,
body.page-resource-scheduling .faq-item,
body.page-resource-scheduling .related-links a,
body.page-resource-scheduling .step-card,
body.page-resource-compare .faq-item,
body.page-resource-compare .related-links a,
body.page-resource-compare .step-card,
body.page-resource-waitlist .implementation-step,
body.page-resource-waitlist .faq-item,
body.page-resource-waitlist .related-links a{ background:#fff; border:1px solid rgba(15,23,42,.12); border-radius:14px; padding:1rem; box-shadow:0 10px 30px rgba(15,23,42,.05); }
body.page-label .fit-card,
body.page-label .cap-card,
body.page-label .check-card,
body.page-label .rollout-card,
body.page-label .pricing-card,
body.page-label .faq-item,
body.page-label .related-links a,
body.page-resources-index .guide-card,
body.page-resources-index .route-card,
body.page-resources-index .workflow-card,
body.page-resources-index .note-card{ border-radius:16px; padding:1.15rem; }

body.page-label .comparison-table,
body.page-resources-index .decision-table,
body.page-resource-operations .comparison-table,
body.page-resource-scheduling .comparison-table,
body.page-resource-compare .comparison-table,
body.page-resource-waitlist .comparison-table{ overflow-x:auto; background:#fff; border:1px solid rgba(15,23,42,.12); border-radius:14px; }
body.page-label .comparison-table table,
body.page-resource-operations .comparison-table table,
body.page-resource-scheduling .comparison-table table{ width:100%; min-width:900px; border-collapse:collapse; }
body.page-resources-index .decision-table table,
body.page-resource-compare .comparison-table table{ width:100%; min-width:920px; border-collapse:collapse; }
body.page-resource-waitlist .comparison-table table{ width:100%; min-width:860px; border-collapse:collapse; }
body.page-label .comparison-table th,
body.page-label .comparison-table td,
body.page-resources-index .decision-table th,
body.page-resources-index .decision-table td,
body.page-resource-operations .comparison-table th,
body.page-resource-operations .comparison-table td,
body.page-resource-scheduling .comparison-table th,
body.page-resource-scheduling .comparison-table td,
body.page-resource-compare .comparison-table th,
body.page-resource-compare .comparison-table td,
body.page-resource-waitlist .comparison-table th,
body.page-resource-waitlist .comparison-table td{ padding:.95rem 1rem; border-bottom:1px solid rgba(15,23,42,.1); text-align:left; vertical-align:top; }
body.page-label .comparison-table th,
body.page-resources-index .decision-table th,
body.page-resource-operations .comparison-table th,
body.page-resource-scheduling .comparison-table th,
body.page-resource-compare .comparison-table th,
body.page-resource-waitlist .comparison-table th{ background:#f8fafc; font-size:.95rem; }
body.page-label .comparison-table tbody tr:last-child td,
body.page-resources-index .decision-table tbody tr:last-child td,
body.page-resource-operations .comparison-table tbody tr:last-child td,
body.page-resource-scheduling .comparison-table tbody tr:last-child td,
body.page-resource-compare .comparison-table tbody tr:last-child td,
body.page-resource-waitlist .comparison-table tbody tr:last-child td{ border-bottom:0; }

body.page-label .check-card ul,
body.page-resource-operations .checklist,
body.page-resource-scheduling .checklist,
body.page-resource-compare .checklist{ margin:0; padding-left:1.1rem; }
body.page-label .check-card li,
body.page-resource-operations .checklist li,
body.page-resource-scheduling .checklist li,
body.page-resource-compare .checklist li,
body.page-resource-waitlist .checklist li{ margin-bottom:.6rem; color:#475569; }
body.page-label .related-links a,
body.page-resource-operations .related-links a,
body.page-resource-scheduling .related-links a,
body.page-resource-compare .related-links a,
body.page-resource-waitlist .related-links a{ display:block; font-weight:700; }
body.page-label .related-links small,
body.page-resource-operations .faq-item p,
body.page-resource-operations .step-card p,
body.page-resource-operations .related-links small,
body.page-resource-scheduling .faq-item p,
body.page-resource-scheduling .step-card p,
body.page-resource-scheduling .related-links small,
body.page-resource-compare .faq-item p,
body.page-resource-compare .step-card p,
body.page-resource-compare .related-links small,
body.page-resource-waitlist .implementation-step p,
body.page-resource-waitlist .faq-item p,
body.page-resource-waitlist .related-links small{ margin:0; color:#475569; }
body.page-label .related-links small,
body.page-resource-operations .related-links small,
body.page-resource-scheduling .related-links small,
body.page-resource-compare .related-links small,
body.page-resource-waitlist .related-links small{ display:block; margin-top:.35rem; font-weight:500; }
body.page-resource-operations .faq-item h3,
body.page-resource-operations .step-card h3,
body.page-resource-scheduling .faq-item h3,
body.page-resource-scheduling .step-card h3,
body.page-resource-compare .faq-item h3,
body.page-resource-compare .step-card h3,
body.page-resource-waitlist .implementation-step h3,
body.page-resource-waitlist .faq-item h3{ margin-bottom:.45rem; font-size:1.05rem; }
body.page-resources-index .guide-card a.card-link,
body.page-resources-index .route-card a.card-link{ font-weight:700; display:inline-block; margin-top:.75rem; color:#2563eb; }


.resource-support-card-wrap,
.resource-cta-top{ margin-top:1rem; }
.resource-support-card{ text-align:center; }
.resource-support-card h3{ margin-top:0; }
.resource-support-card p{ margin-bottom:1rem; }
.resource-support-card .cta-row{ justify-content:center; }

.resource-platform-hero p,
.guide-hero p{ max-width:820px; }
body.page-resource-guide .bread{ margin-bottom:1rem; color:#e2e8f0; font-size:.96rem; }
body.page-resource-guide .bread a{ color:#fff; text-decoration:underline; }

body.page-resource-platform .faq-list,
body.page-resource-platform .related-links,
body.page-resource-guide .faq-list,
body.page-resource-guide .related-links,
body.page-resource-floor-plan .layout-grid,
body.page-resource-host-stand .ops-grid,
body.page-resource-host-stand .stage-grid,
body.page-resource-seating .decision-grid,
body.page-resource-waitlist .workflow-grid{ display:grid; gap:.95rem; }

body.page-resource-platform .related-links,
body.page-resource-guide .related-links,
body.page-resource-floor-plan .layout-grid,
body.page-resource-host-stand .stage-grid,
body.page-resource-seating .decision-grid,
body.page-resource-waitlist .workflow-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }

body.page-resource-host-stand .ops-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); }

body.page-resource-platform .faq-item,
body.page-resource-platform .related-links a,
body.page-resource-guide .faq-item,
body.page-resource-guide .related-links a{ background:#fff; border:1px solid rgba(15,23,42,.12); border-radius:14px; padding:1rem; box-shadow:0 10px 30px rgba(15,23,42,.05); }

body.page-resource-platform .faq-item h3,
body.page-resource-guide .faq-item h3{ margin-bottom:.45rem; font-size:1.05rem; }

body.page-resource-platform .faq-item p,
body.page-resource-platform .related-links small,
body.page-resource-guide .faq-item p,
body.page-resource-guide .related-links small{ margin:0; color:#334155; }

body.page-resource-platform .related-links a,
body.page-resource-guide .related-links a{ display:block; font-weight:700; }

body.page-resource-platform .related-links small,
body.page-resource-guide .related-links small{ display:block; margin-top:.35rem; font-weight:600; }

body.page-resource-floor-plan .signal-list li,
body.page-resource-seating .outcomes li{ margin-bottom:.55rem; color:#475569; }


/* Pass 92: component-level aliases for shared pricing, comparison, and workflow blocks */
.route-grid,
.include-grid,
.trust-grid,
.rollout-grid,
.fit-grid,
.cap-grid,
.checklist-grid,
.pricing-grid,
.workflow-grid{
  display:grid;
  gap:1rem;
}

.route-grid,
.include-grid,
.trust-grid,
.fit-grid,
.cap-grid,
.pricing-grid{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.rollout-grid{
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:.95rem;
}

.checklist-grid{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.workflow-grid{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:.95rem;
}

.route-card,
.include-card,
.trust-card,
.rollout-card,
.note-card,
.fit-card,
.cap-card,
.check-card,
.implementation-step{
  background:#fff;
  border:1px solid rgba(15,23,42,.12);
  border-radius:16px;
  padding:1.15rem;
  box-shadow:0 10px 30px rgba(15,23,42,.05);
}

.route-card .eyebrow{ display:inline-block; margin-bottom:.65rem; }
.route-card .price{ font-size:2rem; font-weight:800; color:#0f172a; margin:.25rem 0 .65rem; }
.route-card ul,
.decision-list,
.check-card ul{ margin:0; padding-left:1.1rem; }
.route-card li,
.decision-list li,
.check-card li{ margin-bottom:.55rem; color:#475569; }
.route-actions{ display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1rem; }

.decision-band{
  background:linear-gradient(135deg, rgba(59,130,246,.08), rgba(6,182,212,.08));
  border:1px solid rgba(15,23,42,.12);
  border-radius:18px;
  padding:1.25rem;
  box-shadow:0 10px 30px rgba(15,23,42,.06);
}

.decision-band p:last-child{ margin-bottom:0; }

.decision-table,
.comparison-table{
  overflow-x:auto;
  border:1px solid rgba(15,23,42,.12);
  border-radius:16px;
  background:#fff;
}

.decision-table table,
.comparison-table table{
  width:100%;
  border-collapse:collapse;
}

.decision-table th,
.decision-table td,
.comparison-table th,
.comparison-table td{
  padding:1rem;
  border-bottom:1px solid rgba(15,23,42,.1);
  text-align:left;
  vertical-align:top;
}

.decision-table th,
.comparison-table th{
  background:#f8fafc;
  font-size:.95rem;
}

.decision-table tbody tr:last-child td,
.comparison-table tbody tr:last-child td{ border-bottom:0; }

.implementation-step h3{ margin-bottom:.45rem; font-size:1.05rem; }
.implementation-step p{ margin:0; color:#475569; }

@media (max-width:1080px){
  .route-grid,
  .include-grid,
  .trust-grid,
  .fit-grid,
  .cap-grid,
  .pricing-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .rollout-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:980px){
  .workflow-grid{ grid-template-columns:1fr; }
}

@media (max-width:760px){
  .route-grid,
  .include-grid,
  .trust-grid,
  .rollout-grid,
  .fit-grid,
  .cap-grid,
  .checklist-grid,
  .pricing-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 980px){
  body.page-resource-platform .related-links,
  body.page-resource-guide .related-links,
  body.page-resource-floor-plan .layout-grid,
  body.page-resource-host-stand .ops-grid,
  body.page-resource-host-stand .stage-grid,
  body.page-resource-seating .decision-grid,
  body.page-resource-waitlist .workflow-grid{ grid-template-columns:1fr; }
}

body.page-engineering .eng-max-960{ max-width:960px; }
body.page-engineering .eng-max-1100{ max-width:1100px; }
body.page-engineering .eng-grid-gap-3{ gap:3rem; }
body.page-engineering .eng-grid-gap-md{ gap:1.5rem; }
body.page-engineering .eng-stack-gap{ display:flex; flex-direction:column; gap:1.5rem; }
body.page-engineering .eng-card-pad-lg{ padding:2rem; }
body.page-engineering .eng-card-pad-xl{ padding:2.5rem; }
body.page-engineering .eng-card-block{ margin-top:2rem; padding:2.25rem; }
body.page-engineering .eng-list-gap-lg{ margin:0 0 1.5rem 0; }
body.page-engineering .eng-list-gap-md{ margin:0 0 1.25rem 0; }
body.page-engineering .eng-callout-pad{ padding:1rem; }
body.page-engineering .eng-text-gap{ margin:0 0 1rem 0; }
body.page-engineering .eng-cta-row-reset{ margin-top:0; }
body.page-engineering .eng-form-reset{ margin:0; }
body.page-engineering .eng-callout-success,
body.page-engineering .eng-callout-error{ margin-bottom:2rem; }
body.page-engineering .eng-callout-success{ border-left-color:#10b981; background:#ecfdf5; }
body.page-engineering .eng-callout-error,
body.page-engineering .eng-callout-error-lite{ border-left-color:#ef4444; background:#fef2f2; }
body.page-engineering .eng-status-success{ color:#047857; }
body.page-engineering .eng-status-error{ color:#b91c1c; }
body.page-engineering .eng-status-danger{ color:#991b1b; }
body.page-engineering .eng-error-list{ margin:.5rem 0 0 1.05rem; color:#991b1b; }
body.page-engineering .eng-heading-lg{ margin-top:0; font-size:1.5rem; }
body.page-engineering .eng-heading-md{ margin-top:0; font-size:1.45rem; }
body.page-engineering .eng-heading-bottom-gap{ margin-bottom:1.5rem; }
body.page-engineering .eng-top-gap-lg{ margin-top:1.5rem; }
body.page-engineering .eng-top-gap-md{ margin-top:1rem; }
body.page-engineering .eng-top-gap-md-sm{ margin-top:1.2rem; }
body.page-engineering .eng-top-gap-xl{ margin-top:2rem; }
body.page-engineering .eng-top-gap-2xl{ margin-top:2.5rem; }
body.page-engineering .eng-copy-top-gap{ margin-top:.75rem; }
body.page-engineering .eng-callout-reset{ margin:0; }
body.page-engineering .eng-callout-violet{ border-left-color:#8b5cf6; }
body.page-engineering .eng-callout-sky{ border-left-color:#0ea5e9; }
body.page-engineering .eng-callout-blue{ border-left-color:#2563eb; }
body.page-engineering .eng-callout-subtext{ color:var(--text-muted); display:block; margin-top:.5rem; }
body.page-engineering .eng-btn-top-fit{ margin-top:.9rem; width:fit-content; }
body.page-engineering .eng-center-note{ margin:2rem 0 0; color:var(--text-main); font-weight:500; text-align:center; }
body.page-engineering .eng-heading-reset{ margin-top:0; }
body.page-engineering .eng-copy-reset{ margin:0; }
body.page-engineering .eng-grid-gap-2{ gap:2rem; }
body.page-engineering .eng-top-gap-125{ margin-top:1.25rem; }
body.page-engineering .eng-honeypot{ position:absolute; left:-9999px; }

@media (max-width:1080px){
  body.page-label .fit-grid,
  body.page-label .cap-grid,
  body.page-label .pricing-grid,
  body.page-resources-index .guide-grid,
  body.page-resources-index .route-grid,
  body.page-resources-index .note-grid,
  body.page-resources-index .workflow-grid,
  body.page-resource-operations .resource-grid,
  body.page-resource-operations .implementation-steps,
  body.page-resource-operations .related-links,
  body.page-resource-scheduling .resource-grid,
  body.page-resource-scheduling .implementation-steps,
  body.page-resource-scheduling .related-links,
  body.page-resource-compare .compare-grid,
  body.page-resource-compare .implementation-steps,
  body.page-resource-compare .related-links{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media (max-width:920px){
  body.page-resource-waitlist .implementation-list,
  body.page-resource-waitlist .related-links{ grid-template-columns:1fr; }
}
@media (max-width:760px){
  body.page-label .fit-grid,
  body.page-label .cap-grid,
  body.page-label .checklist-grid,
  body.page-label .rollout-grid,
  body.page-label .pricing-grid,
  body.page-label .faq-grid,
  body.page-label .related-links,
  body.page-resources-index .guide-grid,
  body.page-resources-index .route-grid,
  body.page-resources-index .workflow-grid,
  body.page-resources-index .note-grid,
  body.page-resource-operations .resource-grid,
  body.page-resource-operations .implementation-steps,
  body.page-resource-operations .related-links,
  body.page-resource-scheduling .resource-grid,
  body.page-resource-scheduling .implementation-steps,
  body.page-resource-scheduling .related-links,
  body.page-resource-compare .compare-grid,
  body.page-resource-compare .implementation-steps,
  body.page-resource-compare .related-links{ grid-template-columns:1fr; }
}


/* Stage 15: about/support hub shared styles */
.about-hero-summary{ margin-top:1.6rem; }
.about-anchor-links{ margin-top:1rem; }
body.page-about .about-visual-card{ padding:0; overflow:hidden; margin:0; }
body.page-about .about-visual-image{ width:100%; height:250px; object-fit:cover; display:block; }
body.page-about .about-visual-placeholder{ min-height:250px; }
body.page-about .about-visual-caption{ padding:1rem 1rem 1.1rem; color:#475569; }
body.page-about .about-decision-grid{ margin-top:1.25rem; }
body.page-feedback-agreement .feedback-summary-card{ text-align:center; }
body.page-feedback-agreement .feedback-summary-title{ margin-bottom:.5rem; }
body.page-feedback-agreement .feedback-summary-actions{ justify-content:center; }
body.page-products-guides .products-guides-hero,
.products-guides-hero{ padding-bottom:4.6rem; }

/* Stage 15: products hub shared styles */
body.page-products-index .products-hero,
.products-hero {
    padding-bottom: 5.8rem;
  }

  body.page-products-index .products-hero p,
.products-hero p {
    max-width: 900px;
  }

  body.page-products-index .products-hero-grid,
body.page-products-index .buy-path-grid,
.products-hero-grid,
.buy-path-grid {
    display: grid;
    gap: 1rem;
  }

  body.page-products-index .products-hero-grid,
.products-hero-grid {
    grid-template-columns: minmax(0, 1.18fr) minmax(300px, 0.82fr);
    align-items: start;
  }

  body.page-products-index .buy-path-grid,
.buy-path-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.page-products-index .hero-summary,
body.page-products-index .bundle-facts,
body.page-products-index .product-grid,
body.page-products-index .cost-grid,
body.page-products-index .he-gallery-grid,
.hero-summary,
.bundle-facts,
.product-grid,
.cost-grid,
.he-gallery-grid {
    display: grid;
    gap: 1rem;
  }

  body.page-products-index .hero-summary,
body.page-products-index .bundle-facts,
body.page-products-index .product-grid,
body.page-products-index .cost-grid,
body.page-products-index .he-gallery-grid,
.hero-summary,
.bundle-facts,
.product-grid,
.cost-grid,
.he-gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.page-products-index .hero-panel,
body.page-products-index .bundle-card,
body.page-products-index .product-card,
body.page-products-index .cost-card,
body.page-products-index .reader-highlight,
body.page-products-index .he-photo-card,
.hero-panel,
.bundle-card,
.product-card,
.cost-card,
.reader-highlight,
.he-photo-card {
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 18px;
    box-shadow: 0 16px 42px rgba(2, 8, 23, 0.08);
  }

  body.page-products-index .hero-panel,
.hero-panel {
    background: rgba(255,255,255,0.08);
    border-color: rgba(255,255,255,0.14);
    color: #fff;
    padding: 1.15rem;
  }

  body.page-products-index .hero-panel strong,
.hero-panel strong {
    display: block;
    font-size: 1.05rem;
    margin-bottom: 0.35rem;
  }

  body.page-products-index .hero-panel span,
.hero-panel span {
    color: rgba(226, 232, 240, 0.88);
  }

  body.page-products-index .eyebrow {
    display: inline-flex;
    align-items: center;
    padding: 0.28rem 0.68rem;
    border-radius: 999px;
    background: rgba(37, 99, 235, 0.08);
    color: #1d4ed8;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    margin-bottom: 0.75rem;
  }

  body.page-products-index .bundle-card,
body.page-products-index .product-card,
body.page-products-index .cost-card,
body.page-products-index .reader-highlight {
    padding: 1.4rem;
  }

  body.page-products-index .bundle-card p,
body.page-products-index .product-card p,
body.page-products-index .cost-card p,
body.page-products-index .reader-highlight p {
    margin: 0;
    color: #475569;
  }

  body.page-products-index .bundle-card h3,
body.page-products-index .product-card h3,
body.page-products-index .cost-card h3,
body.page-products-index .reader-highlight h3 {
    font-size: 1.12rem;
    margin-bottom: 0.55rem;
  }

  body.page-products-index .product-card .meta {
    margin-top: 1rem;
    display: grid;
    gap: 0.7rem;
  }

  body.page-products-index .product-card .meta strong {
    display: block;
    color: #0f172a;
    margin-bottom: 0.2rem;
    font-size: 0.95rem;
  }

  body.page-products-index .product-card .cta-row {
    margin-top: 1rem;
  }

  body.page-products-index .product-card ul {
    margin: 0.85rem 0 0;
    padding-left: 1rem;
    color: #475569;
  }

  body.page-products-index .product-card li + li {
    margin-top: 0.35rem;
  }

  body.page-products-index .reader-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
    gap: 1rem;
  }

  body.page-products-index .reader-highlight ul {
    margin: 1rem 0 0;
    padding-left: 1.1rem;
    color: #475569;
  }

  body.page-products-index .reader-highlight li + li {
    margin-top: 0.45rem;
  }

  body.page-products-index .table-wrap {
    margin-top: 2rem;
  }

  body.page-products-index .cost-grid {
    margin-top: 2rem;
  }

  body.page-products-index .he-photo-card {
    padding: 0;
    overflow: hidden;
  }

  body.page-products-index .he-photo-card img,
body.page-products-index .he-photo-placeholder {
    width: 100%;
    height: 260px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #eef2ff, #e2e8f0);
    color: #334155;
    font-weight: 700;
  }

  body.page-products-index .he-photo-card figcaption {
    padding: 1rem;
    color: #64748b;
    border-top: 1px solid rgba(15,23,42,.08);
  }

  @media (max-width: 1080px) {
    body.page-products-index .products-hero-grid,
body.page-products-index .hero-summary,
body.page-products-index .bundle-facts,
body.page-products-index .product-grid,
body.page-products-index .cost-grid,
body.page-products-index .he-gallery-grid,
body.page-products-index .reader-grid,
body.page-products-index .buy-path-grid,
.buy-path-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.page-products-index .products-hero-grid,
.products-hero-grid {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 720px) {
    body.page-products-index .hero-summary,
body.page-products-index .bundle-facts,
body.page-products-index .product-grid,
body.page-products-index .cost-grid,
body.page-products-index .he-gallery-grid,
body.page-products-index .reader-grid,
body.page-products-index .buy-path-grid,
.buy-path-grid {
      grid-template-columns: 1fr;
    }

    body.page-products-index .products-hero,
.products-hero {
      padding-bottom: 4.4rem;
    }

    body.page-products-index .bundle-card,
body.page-products-index .product-card,
body.page-products-index .cost-card,
body.page-products-index .reader-highlight {
      padding: 1.15rem;
    }

    body.page-products-index .he-photo-card img,
body.page-products-index .he-photo-placeholder {
      height: 220px;
    }
  }

.products-index-hero-summary{ margin-top:2rem; }
body.page-products-index .products-index-inline-nav{ align-self:stretch; }
body.page-products-index .products-index-bottom-line{ margin-top:1.5rem; }
body.page-products-index .products-index-bottom-line-title{ margin-bottom:.55rem; }
body.page-products-index .products-index-bottom-line-copy{ margin:0; color:#475569; }
body.page-products-index .products-index-close-title{ margin-bottom:.5rem; }
body.page-products-index .products-index-close-copy{ max-width:780px; margin:0 auto; color:#475569; }


/* =========================================================
   Stage 16 support / guide page centralization
========================================================= */
body.page-product-guide .guide-hero-tight,
body.page-build-cost-methodology .build-hero-tight{ padding-bottom:4.6rem; }

body.page-product-guide .guide-list,
body.page-product-guide .step-list{
  margin:0;
  padding-left:1.1rem;
  color:var(--muted, #64748b);
  line-height:1.65;
}
body.page-product-guide .guide-list li{ margin:0 0 .5rem 0; }
body.page-product-guide .step-list li{ margin-bottom:.65rem; }
body.page-product-guide .route{
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size:.83rem;
  color:#0f172a;
  background:#f1f5f9;
  padding:.12rem .35rem;
  border-radius:6px;
}
.guide-nav{ margin-top:1.2rem; }
body.page-product-guide .guide-cta-row-spaced{ margin-top:.8rem; }
body.page-product-guide .guide-section-head,
body.page-build-cost-methodology .build-section-head{
  text-align:center;
  margin:0 auto 2rem auto;
}
body.page-product-guide .guide-section-head-900,
body.page-build-cost-methodology .build-section-head-900{ max-width:900px; }
body.page-product-guide .guide-section-head-920{ max-width:920px; }
body.page-product-guide .guide-section-head-940{ max-width:940px; }
body.page-product-guide .guide-section-head-960,
body.page-build-cost-methodology .build-section-head-960{ max-width:960px; }
body.page-build-cost-methodology .build-section-head-980{ max-width:980px; }
body.page-product-guide .guide-section-head-compact{ margin-bottom:1.5rem; }
body.page-product-guide .check-grid{ display:grid; gap:1rem; }
body.page-guide-operations .check-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
body.page-guide-scheduling .check-grid,
body.page-guide-table .check-grid{ grid-template-columns:repeat(4, minmax(0, 1fr)); }
body.page-product-guide .playbook-wrap,
body.page-build-cost-methodology .table-wrap{
  overflow-x:auto;
  border:1px solid var(--border, rgba(15,23,42,.12));
  border-radius:14px;
  background:#fff;
  box-shadow:var(--shadow-sm, 0 10px 28px rgba(2,8,23,.08));
}
body.page-build-cost-methodology .table-wrap{ border-radius:12px; }
body.page-product-guide .playbook,
body.page-build-cost-methodology .calc-table{
  width:100%;
  border-collapse:collapse;
}
body.page-guide-operations .playbook{ min-width:900px; }
body.page-guide-scheduling .playbook,
body.page-guide-table .playbook{ min-width:980px; }
body.page-build-cost-methodology .calc-table{ min-width:760px; }
body.page-product-guide .playbook th,
body.page-product-guide .playbook td,
body.page-build-cost-methodology .calc-table th,
body.page-build-cost-methodology .calc-table td{
  border-bottom:1px solid var(--border, rgba(15,23,42,.12));
  padding:.9rem;
  text-align:left;
  vertical-align:top;
}
body.page-build-cost-methodology .calc-table th,
body.page-build-cost-methodology .calc-table td{ padding:.85rem .95rem; }
body.page-product-guide .playbook th,
body.page-build-cost-methodology .calc-table th{
  background:#f8fafc;
  color:var(--text, #0b1220);
  font-size:.82rem;
  letter-spacing:.05em;
  text-transform:uppercase;
}
body.page-product-guide .playbook td,
body.page-build-cost-methodology .subtle,
body.page-product-guide .context-note{ color:#334155; }
body.page-product-guide .playbook td strong,
body.page-build-cost-methodology .calc-table td strong,
body.page-build-cost-methodology .summary-stat strong,
body.page-build-cost-methodology .adjust-list strong{
  color:var(--text, #0b1220);
}
body.page-product-guide .runbook-grid,
body.page-product-guide .context-grid,
body.page-build-cost-methodology .split-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:1rem;
}
body.page-build-cost-methodology .split-grid{ margin-top:1rem; }
body.page-product-guide .routine-grid,
body.page-build-cost-methodology .summary-grid{ display:grid; gap:1rem; }
body.page-product-guide .routine-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
body.page-build-cost-methodology .summary-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
body.page-build-cost-methodology .method-grid{ display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:1rem; }
body.page-product-guide .runbook-card,
body.page-build-cost-methodology .summary-stat,
body.page-build-cost-methodology .method-card,
body.page-build-cost-methodology .scenario{
  border:1px solid var(--border, rgba(15,23,42,.12));
  border-radius:14px;
  background:#fff;
  padding:1rem;
  box-shadow:var(--shadow-sm, 0 10px 28px rgba(2,8,23,.08));
}
body.page-build-cost-methodology .summary-stat,
body.page-build-cost-methodology .scenario{ border-radius:12px; }
body.page-product-guide .runbook-card h3,
body.page-build-cost-methodology .method-card h3,
body.page-build-cost-methodology .worksheet h3,
body.page-build-cost-methodology .build-heading-reset{ margin-top:0; }
body.page-build-cost-methodology .summary-stat strong{
  display:block;
  font-size:1.2rem;
  margin-bottom:.35rem;
}
body.page-build-cost-methodology .method-card h3{ font-size:1rem; margin-bottom:.5rem; }
body.page-product-guide details.inventory{
  margin-top:.8rem;
  border:1px solid var(--border, rgba(15,23,42,.12));
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
body.page-product-guide details.inventory summary{
  cursor:pointer;
  font-weight:700;
  color:var(--text, #0b1220);
  padding:.85rem 1rem;
  background:#f8fafc;
}
body.page-product-guide .inventory-block{ padding:.9rem 1rem; }
body.page-product-guide .inventory-block pre{
  margin:0;
  white-space:pre-wrap;
  word-break:break-word;
  color:#334155;
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size:.82rem;
  line-height:1.5;
}
body.page-product-guide #content .btn.btn-secondary,
body.page-product-guide #content .btn.btn-secondary:link,
body.page-product-guide #content .btn.btn-secondary:visited,
body.page-product-guide #content .btn.btn-secondary:hover,
body.page-product-guide #content .btn.btn-secondary:focus{ color:#0b1220 !important; }
body.page-build-cost-methodology .worksheet{ margin-top:1.25rem; }
body.page-build-cost-methodology .adjust-list{ margin:0; padding:0; list-style:none; }
body.page-build-cost-methodology .adjust-list li{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  padding:.55rem 0;
  border-bottom:1px dashed rgba(148, 163, 184, .45);
  color:#334155;
}
body.page-build-cost-methodology .adjust-list li:last-child{ border-bottom:none; }
body.page-build-cost-methodology .kpi{ margin:.9rem 0 0; font-weight:700; color:#0b1220; }
body.page-build-cost-methodology .build-table-wrap-spaced{ margin-top:1.25rem; }
body.page-build-cost-methodology .build-text-reset{ margin:0; }
body.page-build-cost-methodology .build-text-top-reset{ margin-top:0; }
body.page-build-cost-methodology .build-container-narrow{ max-width:980px; }

@media (max-width:1120px){
  body.page-build-cost-methodology .summary-grid,
  body.page-build-cost-methodology .method-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  body.page-build-cost-methodology .split-grid{ grid-template-columns:1fr; }
}
@media (max-width:1100px){
  body.page-product-guide .check-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  body.page-product-guide .runbook-grid,
  body.page-product-guide .routine-grid,
  body.page-product-guide .context-grid{ grid-template-columns:1fr; }
}
@media (max-width:680px){
  body.page-build-cost-methodology .summary-grid,
  body.page-build-cost-methodology .method-grid{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  body.page-product-guide .check-grid{ grid-template-columns:1fr; }
}


/* Stage 24 workflow diagram system */
.workflow-diagram-section{ background:linear-gradient(180deg, rgba(248,250,252,.92), rgba(255,255,255,1)); }
.workflow-diagram-grid{ display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1.28fr); gap:clamp(1.5rem, 3vw, 2.5rem); align-items:center; }
.workflow-diagram-copy{ display:grid; gap:1rem; }
.workflow-diagram-copy h2{ margin:0; }
.workflow-diagram-lead{ margin:0; color:#334155; max-width:60ch; }
.workflow-diagram-points{ margin:0; padding:0; list-style:none; display:grid; gap:.8rem; }
.workflow-diagram-points li{ position:relative; padding:0 0 0 1.4rem; color:var(--text, #0f172a); }
.workflow-diagram-points li::before{ content:""; position:absolute; left:0; top:.58rem; width:.58rem; height:.58rem; border-radius:999px; background:linear-gradient(135deg, #2563eb, #14b8a6); box-shadow:0 0 0 .25rem rgba(37,99,235,.12); }
.workflow-diagram-actions{ display:flex; flex-wrap:wrap; gap:.85rem; }
.workflow-diagram-figure{ margin:0; padding:clamp(.75rem, 1.8vw, 1rem); border-radius:28px; border:1px solid rgba(148,163,184,.22); background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(248,250,252,.98)); box-shadow:0 28px 64px rgba(15,23,42,.12); }
.workflow-diagram-figure img{ display:block; width:100%; height:auto; border-radius:22px; }
.workflow-diagram-figure figcaption{ margin-top:.9rem; color:#334155; font-size:.96rem; line-height:1.6; }
body.page-home .workflow-diagram-section,
body.page-pricing .workflow-diagram-section,
body.page-operations .workflow-diagram-section,
body.page-scheduling .workflow-diagram-section,
body.page-table .workflow-diagram-section,
body.page-pos .workflow-diagram-section,
body.page-label .workflow-diagram-section{ overflow:hidden; }
@media (max-width:1100px){ .workflow-diagram-grid{ grid-template-columns:1fr; } }
@media (max-width:640px){ .workflow-diagram-actions{ flex-direction:column; align-items:flex-start; } .workflow-diagram-figure{ border-radius:22px; } }


/* =========================================================
   Stage 26 mobile hardening
========================================================= */
th, td, .route, .kpi-value {
  overflow-wrap: anywhere;
}

h1, h2, h3, p, figcaption {
  overflow-wrap: normal;
  word-break: normal;
}

.site-nav a,
.btn,
.menu-toggle,
.hero-note-list,
.hero-note-list li,
.hero-note-list a,
.cta-row a,
.content-jump-links a,
.product-anchor-links a,
.jump-link {
  overflow-wrap: normal;
  word-break: normal;
}

.site-nav a,
.site-nav .btn,
.site-nav .nav-link-secondary,
.menu-toggle {
  white-space: nowrap;
}

.btn,
.content-jump-links a,
.product-anchor-links a,
.jump-link {
  white-space: normal;
}

main,
section,
.container,
.grid-2,
.grid-3,
.hero-summary,
.bundle-facts,
.product-grid,
.cost-grid,
.he-gallery-grid,
.pricing-grid,
.bundle-grid,
.notes-grid,
.compare-grid,
.decision-grid,
.guide-kpis,
.product-hero-grid,
.product-summary-grid,
.product-mini-grid,
.visual-proof-layout,
.visual-proof-workspace,
.platform-proof-grid,
.platform-confidence-grid,
.review-path-grid,
.workflow-diagram-grid,
.workflow-diagram-copy,
.workflow-diagram-figure,
.footer-grid,
.book-row,
.author-grid,
.contact-shell,
.contact-intro,
.field-row,
.products-hero-grid,
.buy-path-grid,
.entry-grid,
.layer-grid,
.rhythm-grid,
.implementation-grid,
.faq-grid,
.route-grid,
.include-grid,
.trust-grid,
.rollout-grid,
.fit-grid,
.cap-grid,
.checklist-grid,
.ops-grid,
.sched-grid,
.visual-grid,
.shift-steps,
.related-links,
.related-resources,
.guide-grid,
.workflow-grid,
.note-grid,
.check-grid,
.runbook-grid,
.context-grid,
.routine-grid,
.summary-grid,
.method-grid,
.split-grid{
  min-width:0;
}

@media (max-width: 1024px){
  .platform-proof-strip,
  .review-path-strip,
  .visual-proof-layout,
  .visual-proof-workspace,
  .workflow-diagram-grid,
  .workflow-diagram-copy,
  .workflow-diagram-figure,
  .products-hero-grid,
  .buy-path-grid,
  .reader-grid,
  .product-hero-grid,
  .product-summary-grid,
  .product-mini-grid,
  .product-mini-grid.two-up,
  .decision-grid,
  .decision-grid.two-up,
  .guide-kpis,
  .platform-proof-grid,
  .platform-confidence-grid,
  .review-path-grid,
  .footer-grid,
  body.page-products-guides .grid-3{
    grid-template-columns:1fr;
  }

  body.page-home .implementation-grid,
  body.page-pricing .rollout-grid,
  body.page-operations .implementation-steps,
  body.page-scheduling .implementation-steps,
  body.page-table .shift-steps,
  body.page-build-cost-methodology .method-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 820px){
  body{ scroll-padding-top:7rem; }

  .platform-proof-actions,
  .review-path-actions,
  .workflow-diagram-actions,
  .store-buttons,
  .footer-inline-actions,
  .route-actions,
  .plan-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .platform-proof-actions > *,
  .review-path-actions > *,
  .workflow-diagram-actions > *,
  .store-buttons > *,
  .footer-inline-actions > *,
  .route-actions > *,
  .plan-actions > *{
    width:100%;
  }

  .content-jump-links,
  .product-anchor-links,
  body.page-table .quick-links,
  .about-anchor-links{
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:.2rem;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }

  .content-jump-links::-webkit-scrollbar,
  .product-anchor-links::-webkit-scrollbar,
  body.page-table .quick-links::-webkit-scrollbar,
  .about-anchor-links::-webkit-scrollbar{
    display:none;
  }

  .content-jump-links a,
  .product-anchor-links a,
  body.page-table .quick-links a,
  .about-anchor-links a{
    white-space:nowrap;
  }

  body.page-products-guides .cta-row,
  body.page-products-guides .cta-row > .btn,
  body.page-products-guides .cta-row > a.btn{
    width:100%;
  }
}

@media (max-width: 680px){
  .container{ width:min(var(--container), calc(100% - 1rem)); }
  .site-logo{ height:48px; }
  .header-inner{ min-height:76px; gap:.75rem; }
  .menu-toggle{ width:44px; height:44px; border-radius:12px; }
  .site-nav{ padding:.85rem; }
  .site-nav a{ padding:.75rem .85rem; }
  .nav-actions{ width:100%; }

  .hero,
  .products-hero,
  .products-guides-hero,
  .contact-hero,
  .engineering-hero,
  body.page-publishing .publishing-hero{
    padding-top:4.75rem;
    padding-bottom:4rem;
  }

  .section-shell,
  .card,
  .platform-proof-card,
  .platform-proof-strip,
  .review-card,
  .review-path-strip,
  .visual-proof-panel,
  .visual-proof-side-card,
  .guide-kpi,
  .product-mini-card,
  .content-cta-band,
  .product-side-card,
  .product-inline-nav,
  .product-cta-band,
  .contact-side-card,
  body.page-contact .card,
  body.page-engineering .card,
  body.page-products-index .bundle-card,
  body.page-products-index .product-card,
  body.page-products-index .cost-card,
  body.page-products-index .reader-highlight{
    padding:1rem;
    border-radius:16px;
  }

  body.page-home .implementation-grid,
  body.page-pricing .rollout-grid,
  body.page-operations .implementation-steps,
  body.page-scheduling .implementation-steps,
  body.page-table .shift-steps,
  body.page-build-cost-methodology .method-grid,
  body.page-guide-scheduling .check-grid,
  body.page-guide-table .check-grid{
    grid-template-columns:1fr;
  }

  body.page-home .decision-table table,
  body.page-pricing .comparison-table table,
  body.page-pos .comparison-table table,
  body.page-operations .comparison-table table,
  body.page-scheduling .comparison-table table,
  body.page-table .comparison-table table,
  body.page-label .comparison-table table,
  body.page-resource-operations .comparison-table table,
  body.page-resource-scheduling .comparison-table table,
  body.page-resource-compare .comparison-table table,
  body.page-resource-waitlist .comparison-table table,
  body.page-guide-operations .playbook,
  body.page-guide-scheduling .playbook,
  body.page-guide-table .playbook,
  body.page-build-cost-methodology .calc-table,
  body.page-engineering table{
    min-width:640px;
  }

  body.page-publishing .author-books-display{
    grid-template-columns:1fr;
    gap:1rem;
    transform:none;
  }

  body.page-publishing .author-books-display img:nth-child(2),
  body.page-publishing .author-books-display .author-book-card:nth-child(2){
    margin-top:0;
  }

  body.page-publishing .author-availability{
    padding:1.35rem;
  }

  body.page-publishing .book-content h3{
    font-size:clamp(1.6rem, 7vw, 2rem);
  }

  body.page-publishing .book-subtitle{
    font-size:1.05rem;
  }
}

@media (max-width: 520px){
  .container{ width:min(var(--container), calc(100% - .875rem)); }
  .site-logo{ height:44px; }
  .header-inner{ min-height:72px; }
  section{ padding:3.25rem 0; }
  .hero,
  .products-hero,
  .products-guides-hero,
  .contact-hero,
  .engineering-hero,
  body.page-publishing .publishing-hero{
    padding-top:4.25rem;
    padding-bottom:3.5rem;
  }

  .hero h1,
  .contact-hero h1,
  .engineering-hero h1{
    letter-spacing:-.025em;
  }

  .badge,
  .eyebrow,
  .platform-proof-badge,
  .workflow-diagram-copy .eyebrow,
  .visual-proof-highlight{
    font-size:.74rem;
  }

  .btn,
  body.page-contact .btn,
  body.page-engineering .btn{
    min-height:44px;
    padding:.78rem .95rem;
  }

  th, td{
    padding:.75rem;
    font-size:.93rem;
  }

  table,
  body.page-home .decision-table table,
  body.page-pricing .comparison-table table,
  body.page-pos .comparison-table table,
  body.page-operations .comparison-table table,
  body.page-scheduling .comparison-table table,
  body.page-table .comparison-table table,
  body.page-label .comparison-table table,
  body.page-resource-operations .comparison-table table,
  body.page-resource-scheduling .comparison-table table,
  body.page-resource-compare .comparison-table table,
  body.page-resource-waitlist .comparison-table table,
  body.page-guide-operations .playbook,
  body.page-guide-scheduling .playbook,
  body.page-guide-table .playbook,
  body.page-build-cost-methodology .calc-table,
  body.page-engineering table{
    min-width:560px;
  }

  body.page-publishing .book-cover-large,
  body.page-publishing .book-cover-placeholder{
    max-width:220px;
  }
}


/* =========================================================
   Premium upgrade layer — UX, trust, visual hierarchy
   Applied via frontend-design + web-design-guidelines audit
========================================================= */

/* Hero sidecard: glassmorphism so it reads against the dark hero */
.hero-sidecard{
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.13) !important;
  color:#e2e8f0 !important;
  backdrop-filter:blur(16px) saturate(140%);
  -webkit-backdrop-filter:blur(16px) saturate(140%);
  box-shadow:0 20px 50px rgba(0,0,0,.3) !important;
}
.hero-sidecard h2{
  color:#f1f5f9;
  font-size:1.35rem;
}
.hero-sidecard p{
  color:rgba(203,213,225,.9) !important;
}
.decision-mini{
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.1) !important;
  color:#e2e8f0;
}
.decision-mini strong{
  color:#f1f5f9 !important;
}
.decision-mini span{
  color:#93c5fd !important;
}
.decision-mini p{
  color:rgba(203,213,225,.85) !important;
  font-size:.93rem;
}
.panel-note{
  background:rgba(30,64,175,.2) !important;
  border:1px solid rgba(147,197,253,.18) !important;
  color:#bfdbfe !important;
}

/* Flow step badges — richer than flat black */
.flow-step{
  background:linear-gradient(135deg, #1e3a8a, #1d4ed8) !important;
  box-shadow:0 4px 14px rgba(29,78,216,.35);
  font-size:.72rem !important;
  letter-spacing:.08em !important;
}

/* Flow cards — subtle gradient to differentiate from flat white */
.flow-card{
  background:linear-gradient(160deg, #ffffff 0%, #f0f7ff 100%) !important;
  border-color:rgba(59,130,246,.1) !important;
}

/* Featured entry card — stronger call-out */
.entry-card.featured{
  border-color:rgba(37,99,235,.24) !important;
  box-shadow:0 24px 56px rgba(37,99,235,.15), inset 0 0 0 1px rgba(37,99,235,.08) !important;
  background:linear-gradient(180deg, #fff 0%, #f8fbff 100%);
}
.entry-card.featured .entry-price{
  color:#1d4ed8;
}

/* Closing card — more premium, less generic white box */
.closing-card{
  background:linear-gradient(160deg, #060a14 0%, #0d1424 60%, #0f1f3d 100%);
  border:1px solid rgba(59,130,246,.16) !important;
  color:#e2e8f0;
  padding:3rem 2.2rem !important;
}
.closing-card h2{
  color:#f1f5f9;
  font-size:clamp(1.5rem, 3vw, 2.1rem);
}
.closing-card p{
  color:rgba(203,213,225,.9);
}
.closing-card .btn-primary{
  background:linear-gradient(135deg, #fff 0%, #f0f7ff 100%) !important;
  color:#1d4ed8 !important;
  box-shadow:0 10px 28px rgba(0,0,0,.2) !important;
}
.closing-card .btn-secondary{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(255,255,255,.2) !important;
  color:#e2e8f0 !important;
}
.closing-card .btn-secondary:hover{
  background:rgba(255,255,255,.14) !important;
  border-color:rgba(255,255,255,.3) !important;
}

/* Hero jump links — horizontal scroll on all screen sizes */
@media (max-width: 720px){
  .home-anchor-row{
    flex-wrap:nowrap !important;
    overflow-x:auto;
    padding-bottom:.25rem;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .home-anchor-row::-webkit-scrollbar{ display:none; }
  .jump-link{
    white-space:nowrap;
    flex-shrink:0;
    width:auto !important;
  }
}

/* Section-head h2 — slightly richer color for contrast */
.section-head h2{
  color:#080f1e;
}

/* App card CTA "Learn more" specificity — make the eyebrow app name bolder */
.app-card .eyebrow{
  font-size:.72rem;
  letter-spacing:.08em;
}
.app-card h3{
  font-size:1.16rem;
}

/* Visual cards — taller images on large screens */
@media (min-width: 900px){
  .visual-card img{
    height:300px;
  }
}

/* Stats row in hero — bolder number presentation */
.hero-stat strong{
  font-family:var(--font-display);
  font-size:1.06rem !important;
  letter-spacing:-.02em;
}

/* Chip row in hero — tighter label treatment */
.hero-chip strong{
  font-family:var(--font-display);
  letter-spacing:-.02em;
}

/* platform-confidence section — subtle gradient to distinguish from plain surface */
.platform-confidence{
  background:linear-gradient(180deg, #f0f7ff 0%, #f8fafc 100%) !important;
  border-top:1px solid rgba(37,99,235,.1) !important;
  border-bottom:1px solid rgba(37,99,235,.08) !important;
}

/* Transition prop on cards that didn't have it */
.entry-card,
.app-card,
.flow-card,
.value-card,
.guide-card,
.faq-mini,
.platform-proof-card,
.confidence-card,
.review-card,
.pricing-card,
.bundle-card,
.decision-card,
.product-mini-card{
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}


/* =========================================================
   Real upgrade layer — section headings, typography, cards
   frontend-design + web-design-guidelines v2
========================================================= */

/* --- Section-head h2 accent underline --- */
.section-head h2,
.platform-proof-head h2,
.platform-confidence-head h2{
  position:relative;
  padding-bottom:.75rem;
  margin-bottom:.85rem;
}
.section-head h2::after,
.platform-proof-head h2::after,
.platform-confidence-head h2::after{
  content:'';
  position:absolute;
  left:0;
  bottom:0;
  width:40px;
  height:3px;
  background:linear-gradient(90deg, var(--brand), var(--brand2));
  border-radius:2px;
}

/* --- Better lead / section description text --- */
.lead,
.section-head p,
.platform-proof-head p,
.platform-confidence-head p{
  font-size:1.12rem;
  line-height:1.78;
  color:var(--muted);
  max-width:720px;
}

/* --- App cards: thin top accent bar for identity --- */
.app-card{
  border-top:3px solid transparent;
  background-clip:padding-box;
  transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.app-card:hover{
  border-top-color:var(--brand);
}

/* --- Guide cards: left accent on hover --- */
.guide-card{
  border-left:3px solid transparent;
  transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.guide-card:hover{
  border-left-color:var(--brand2);
}

/* --- Value cards: slightly warmer off-white --- */
.value-card{
  background:linear-gradient(160deg, #ffffff 0%, #f9fbfe 100%);
}

/* --- Entry card: featured gets a left bar --- */
.entry-card.featured{
  border-left:4px solid #1d4ed8;
}

/* --- Flow card numbers: brand gradient badge already applied, add counter --- */
.flow-grid{
  counter-reset:flow-step;
}
.flow-card{
  counter-increment:flow-step;
}

/* --- Hero stat: slightly taller to breathe --- */
.hero-stats{
  gap:0.85rem;
}

/* --- Section head max-width: slightly wider for widescreen --- */
.section-head{
  max-width:860px;
}

/* --- Better app-card h3 eyebrow spacing --- */
.app-card .eyebrow{
  margin-bottom:0.6rem;
}

/* --- Better entry-price font --- */
.entry-price{
  font-family:var(--font-display);
  letter-spacing:-.03em;
}

/* --- Better hero-sidecard heading --- */
.hero-sidecard h2{
  font-size:1.3rem !important;
  line-height:1.3;
}

/* --- Reader card section: give it more presence --- */
.reader-grid .reader-card:first-child{
  background:linear-gradient(160deg, #f0f7ff 0%, #ffffff 100%);
  border-color:rgba(37,99,235,.12);
}

/* --- FAQ mini cards: slightly more padding when used as cards --- */
.faq-mini h3{
  color:#0f172a;
  font-size:1rem;
  line-height:1.45;
}

/* --- Accordion FAQ items used in homepage context --- */
.faq-accordion-wrap .faq-item{
  margin-bottom:0.65rem;
}
.faq-accordion-wrap .faq-question{
  font-size:1.02rem;
  line-height:1.5;
  padding:1.1rem 1.2rem;
}
.faq-accordion-wrap .faq-answer{
  padding:0 1.2rem 1.1rem;
  font-size:1rem;
  line-height:1.72;
}
.faq-accordion-wrap .faq-answer p{
  margin:0;
}

/* --- Section head centered variant --- */
.section-head.centered{
  text-align:center;
}
.section-head.centered h2::after{
  left:50%;
  transform:translateX(-50%);
}

/* --- Better cta-row margin in cards --- */
.app-card .cta-row,
.entry-card .cta-row,
.guide-card .cta-row,
.reader-card .cta-row{
  margin-top:1.2rem;
}


.verify-band{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);
  gap:1.1rem;
  align-items:start;
  padding:1.35rem;
  border:1px solid rgba(15,23,42,.12);
  border-radius:20px;
  background:linear-gradient(135deg, rgba(15,23,42,.035), rgba(59,130,246,.07));
  box-shadow:0 14px 36px rgba(15,23,42,.06);
}
.verify-band-copy h2{
  margin-bottom:.55rem;
}
.verify-band-copy p{
  margin:0;
  color:#475569;
}
.verify-band-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  align-content:flex-start;
  justify-content:flex-start;
}
.verify-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
  margin-top:1rem;
}
.verify-grid.verify-grid-three{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.verify-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.12);
  border-radius:18px;
  padding:1.2rem;
  box-shadow:0 10px 30px rgba(15,23,42,.05);
}
.verify-card h3{
  margin:.35rem 0 .5rem;
  font-size:1.08rem;
}
.verify-card p{
  margin:0;
  color:#475569;
}
@media (max-width: 980px){
  .verify-band,
  .verify-grid.verify-grid-three{
    grid-template-columns:1fr;
  }
}
@media (max-width: 720px){
  .verify-grid{
    grid-template-columns:1fr;
  }
}

body.page-products .page-route-grid,
body.page-products-index .page-route-grid,
body.page-pricing .page-route-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:1rem;
}
body.page-products .page-route-card,
body.page-products-index .page-route-card,
body.page-pricing .page-route-card{
  background:linear-gradient(165deg, #ffffff 0%, #f8fbff 100%);
  border:1px solid rgba(15,23,42,.12);
  border-radius:20px;
  padding:1.25rem;
  box-shadow:0 16px 38px rgba(15,23,42,.06);
}
body.page-products .page-route-card--featured,
body.page-products-index .page-route-card--featured,
body.page-pricing .page-route-card--featured{
  border-color:rgba(37,99,235,.24);
  box-shadow:0 22px 48px rgba(37,99,235,.12);
}
body.page-products .page-route-card h2,
body.page-products-index .page-route-card h2,
body.page-products .page-route-card h3,
body.page-products-index .page-route-card h3,
body.page-pricing .page-route-card h3{
  margin:.35rem 0 .55rem;
  font-size:1.08rem;
}
body.page-products .page-route-card p,
body.page-products-index .page-route-card p,
body.page-pricing .page-route-card p{
  margin:0;
  color:#475569;
}
body.page-products .page-route-card .cta-row,
body.page-products-index .page-route-card .cta-row,
body.page-pricing .page-route-card .cta-row{
  margin-top:1rem;
}
body.page-products .page-route-head,
body.page-products-index .page-route-head,
body.page-pricing .page-route-head{
  margin-top:1.35rem;
}
@media (max-width: 720px){
  body.page-products .page-route-grid,
  body.page-products-index .page-route-grid,
  body.page-pricing .page-route-grid{
    grid-template-columns:1fr;
  }
}

body.page-home .quick-route-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:1rem;
}
body.page-home .quick-route-card{
  background:linear-gradient(165deg, #ffffff 0%, #f8fbff 100%);
  border:1px solid rgba(15,23,42,.12);
  border-radius:20px;
  padding:1.25rem;
  box-shadow:0 16px 38px rgba(15,23,42,.06);
}
body.page-home .quick-route-card h3{
  margin:.35rem 0 .55rem;
  font-size:1.08rem;
}
body.page-home .quick-route-card p{
  margin:0;
  color:#475569;
}
body.page-home .quick-route-card .cta-row{
  margin-top:1rem;
}
body.page-home .quick-route-card:first-child{
  border-color:rgba(37,99,235,.24);
  box-shadow:0 22px 48px rgba(37,99,235,.12);
}
@media (max-width: 1080px){
  body.page-home .quick-route-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px){
  body.page-home .quick-route-grid{
    grid-template-columns:1fr;
  }
}

/* Responsive: mobile section-head h2 no accent shift */
@media (max-width: 640px){
  .section-head h2,
  .platform-proof-head h2,
  .platform-confidence-head h2{
    padding-bottom:.6rem;
  }
}

/* =========================================================
   "Why is this included?" modal
========================================================= */
.he-modal-backdrop{
  position:fixed;
  inset:0;
  z-index:900;
  background:rgba(2,8,23,.62);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1.25rem;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease;
}
.he-modal-backdrop.open{
  opacity:1;
  pointer-events:auto;
}
.he-modal{
  background:#fff;
  border-radius:22px;
  box-shadow:0 30px 80px rgba(2,8,23,.28);
  max-width:580px;
  width:100%;
  padding:2rem 2rem 1.75rem;
  position:relative;
  transform:translateY(16px) scale(.98);
  transition:transform .22s ease, opacity .22s ease;
  opacity:0;
  max-height:90vh;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.he-modal-backdrop.open .he-modal{
  transform:translateY(0) scale(1);
  opacity:1;
}
.he-modal-close{
  position:absolute;
  top:1.1rem;
  right:1.1rem;
  width:36px;
  height:36px;
  border-radius:50%;
  border:1px solid rgba(15,23,42,.16);
  background:#f8fafc;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.25rem;
  line-height:1;
  color:var(--color-text-soft);
  transition:background .15s ease, color .15s ease;
}
.he-modal-close:hover{
  background:#e2e8f0;
  color:#0f172a;
}
.he-modal-eyebrow{
  display:inline-flex;
  align-items:center;
  padding:.28rem .72rem;
  border-radius:999px;
  background:rgba(37,99,235,.08);
  color:#1d4ed8;
  font-size:.74rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  border:1px solid rgba(37,99,235,.1);
  margin-bottom:.75rem;
}
.he-modal h2{
  font-size:1.55rem;
  margin:0 0 .5rem;
  letter-spacing:-.03em;
  color:#0f172a;
}
.he-modal-lead{
  color:#475569;
  margin:0 0 1.25rem;
  font-size:1rem;
  line-height:1.6;
}
.he-modal-items{
  display:grid;
  gap:.75rem;
  margin-bottom:1.4rem;
}
.he-modal-item{
  display:grid;
  grid-template-columns:28px 1fr;
  gap:.65rem;
  align-items:start;
}
.he-modal-icon{
  width:28px;
  height:28px;
  border-radius:50%;
  background:rgba(37,99,235,.09);
  border:1px solid rgba(37,99,235,.14);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.9rem;
  flex-shrink:0;
  margin-top:.12rem;
}
.he-modal-item-body strong{
  display:block;
  color:#0f172a;
  font-size:.97rem;
  margin-bottom:.15rem;
}
.he-modal-item-body p{
  margin:0;
  color:var(--color-text-soft);
  font-size:.92rem;
  line-height:1.58;
}
.he-modal-footer{
  border-top:1px solid rgba(15,23,42,.09);
  padding-top:1.1rem;
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  align-items:center;
}
.he-modal-note{
  font-size:.84rem;
  color:var(--color-text-soft);
  margin:0;
  flex:1;
  min-width:160px;
}
.he-modal-note strong{ color:var(--color-text-strong); }

/* Inline "why-free" trigger button */
.btn-why-free{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  font-size:.82rem;
  font-weight:700;
  color:#2563eb;
  border:1px solid rgba(37,99,235,.2);
  background:rgba(37,99,235,.05);
  border-radius:999px;
  padding:.28rem .75rem;
  cursor:pointer;
  transition:background .15s ease, border-color .15s ease;
  text-decoration:none;
  font-family:inherit;
}
.btn-why-free:hover{
  background:rgba(37,99,235,.1);
  border-color:rgba(37,99,235,.3);
}
.btn-why-free::before{
  content:"?";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:16px;
  height:16px;
  border-radius:50%;
  background:#2563eb;
  color:#fff;
  font-size:.7rem;
  font-weight:900;
  flex-shrink:0;
}

/* Offer callout strip used on pricing + product pages */
.offer-callout{
  background:linear-gradient(135deg, #eff6ff 0%, #f0f9ff 100%);
  border:1px solid rgba(37,99,235,.18);
  border-radius:18px;
  padding:1.5rem 1.65rem;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:1.1rem;
  margin-top:2rem;
}
.offer-callout-copy{
  flex:1;
  min-width:200px;
}
.offer-callout-copy strong{
  display:block;
  color:#1d4ed8;
  font-size:1.02rem;
  margin-bottom:.25rem;
}
.offer-callout-copy p{
  margin:0;
  color:var(--color-text-muted);
  font-size:.94rem;
  line-height:1.58;
}
.offer-callout-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  align-items:center;
}
@media (max-width:640px){
  .he-modal{ padding:1.4rem 1.2rem 1.2rem; }
  .he-modal h2{ font-size:1.25rem; }
  .offer-callout{ flex-direction:column; }
  .he-modal-items{ gap:.6rem; }
}

/* Tier pricing (Operations standalone plans) */
.ops-tier-grid{
  display:grid;
  gap:1rem;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.ops-tier-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.12);
  border-radius:18px;
  box-shadow:0 10px 28px rgba(2,8,23,.07);
  padding:1.5rem 1.35rem 1.35rem;
  display:flex;
  flex-direction:column;
  gap:.5rem;
}
.ops-tier-card.featured-tier{
  border-color:rgba(37,99,235,.28);
  box-shadow:0 18px 50px rgba(37,99,235,.13);
}
.ops-tier-name{
  font-size:1.1rem;
  font-weight:800;
  color:#0f172a;
  margin:0;
}
.ops-tier-price{
  font-size:clamp(1.6rem,3vw,2.1rem);
  font-weight:900;
  color:#0f172a;
  line-height:1;
  margin:.35rem 0 0;
}
.ops-tier-price small{
  font-size:.78rem;
  font-weight:700;
  color:var(--color-text-soft);
  letter-spacing:.02em;
}
.ops-tier-annual{
  font-size:.84rem;
  color:var(--color-text-soft);
  margin:0;
}
.ops-tier-desc{
  font-size:.92rem;
  color:var(--color-text-muted);
  margin:.15rem 0 .5rem;
  line-height:1.58;
}
.ops-tier-list{
  margin:.25rem 0 0;
  padding-left:1rem;
  color:#334155;
  font-size:.88rem;
  flex:1;
}
.ops-tier-list li + li{ margin-top:.35rem; }
.ops-tier-card .cta-row{ margin-top:1rem; }
@media (max-width:900px){
  .ops-tier-grid{ grid-template-columns:1fr; }
}

/* =========================
   Pass 86 class-level hero text-width aliases
   ========================= */
.resource-platform-hero p,
.guide-hero p,
.resource-explainer-hero p {
  max-width: 820px;
}

.guide-hero .bread {
  margin-bottom: 1rem;
  color: #cbd5e1;
  font-size: .95rem;
}

.guide-hero .bread a {
  color: #fff;
  text-decoration: underline;
}

.guide-hero-tight,
.build-hero-tight,
.products-guides-hero {
  padding-bottom: 4.6rem;
}

/* =========================
   Pass 210 auxiliary-page visibility sweep
   Tightens caption and helper-copy contrast on shared guide/workflow/FAQ
   components plus the engineering methodology page without changing layout.
   ========================= */
.faq-mini p,
.workflow-diagram-figure figcaption,
.resource-support-card p,
body.page-engineering .figure-caption-subtle,
body.page-engineering .eng-callout-subtext,
body.page-product-guide .step-list,
body.page-product-guide .context-note,
body.page-build-cost-methodology .subtle,
body.page-build-cost-methodology .adjust-list li {
  color: #334155;
}

.faq-mini p,
.workflow-diagram-figure figcaption,
.resource-support-card p,
body.page-product-guide .step-list,
body.page-product-guide .context-note,
body.page-build-cost-methodology .subtle,
body.page-build-cost-methodology .adjust-list li {
  line-height: 1.72;
}

body.page-build-cost-methodology .summary-stat,
body.page-build-cost-methodology .method-card,
body.page-build-cost-methodology .scenario {
  border-color: rgba(15, 23, 42, 0.14);
}

body.page-build-cost-methodology .summary-stat strong,
body.page-build-cost-methodology .adjust-list strong {
  color: #0b1220;
}


/* =========================================================
   Pass 462 — public hero distinctiveness system
========================================================= */
.page-hero-shared{
  padding:5.3rem 0 4.5rem;
}
.page-hero-shared .hero-shell{
  position:relative;
  z-index:1;
}
.page-hero-shared .hero-layout{
  display:grid;
  gap:1.25rem;
  align-items:start;
}
.page-hero-shared.hero-has-aside .hero-layout{
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
}
.page-hero-shared .hero-main,
.page-hero-shared .hero-aside{
  min-width:0;
}
.page-hero-shared .hero-main{
  display:grid;
  gap:1rem;
}
.page-hero-shared .hero-main > h1{
  max-width:12ch;
  margin-bottom:0;
}
.page-hero-shared .hero-shell-lead{
  margin:0;
  max-width:62ch;
}
.page-hero-shared .hero-aside{
  display:grid;
  gap:.95rem;
  align-content:start;
}
.page-hero-shared .hero-support-note,
.page-hero-shared .hero-proof-strip,
.page-hero-shared .content-jump-links{
  margin-top:0;
}
.page-hero-shared .hero-proof-strip{
  display:grid;
  gap:.85rem;
  grid-template-columns:1fr;
}
.page-hero-shared .hero-proof-item,
.page-hero-shared .hero-support-note{
  border-radius:20px;
  border:1px solid rgba(148,163,184,.18);
  padding:1rem 1.05rem;
  box-shadow:0 18px 40px rgba(15,23,42,.08);
}
.page-hero-shared .hero-proof-item{
  background:rgba(255,255,255,.08);
}
.page-hero-shared .hero-proof-item strong,
.page-hero-shared .hero-proof-item span{
  display:block;
}
.page-hero-shared .hero-proof-item strong{
  margin-bottom:.28rem;
}
.page-hero-shared .hero-support-note{
  background:rgba(255,255,255,.05);
}
.page-hero-shared .hero-note-list{
  margin:0;
  padding-left:1rem;
  display:grid;
  gap:.65rem;
}
.page-hero-shared .hero-note-list li{
  color:inherit;
}
.page-hero-shared .hero-action-note{
  margin:0;
  font-size:.96rem;
}
.page-hero-shared .hero-action-note a{
  font-weight:700;
}
.page-hero-shared .content-jump-links{
  gap:.6rem;
}
.page-hero-shared .content-jump-links a{
  box-shadow:none;
  font-size:.88rem;
}
.page-hero-shared .hero-panel{
  backdrop-filter:none;
}
.page-hero-shared.hero-no-aside .hero-main > h1{
  max-width:14ch;
}

.hero-variant--split{
  background:
    radial-gradient(720px 420px at 4% 0%, rgba(59,130,246,.26), transparent 60%),
    radial-gradient(560px 360px at 88% 16%, rgba(20,184,166,.18), transparent 62%),
    linear-gradient(165deg, #07101d 0%, #0d1729 58%, #0a1525 100%);
}
.hero-variant--split .hero-main{
  padding:1.1rem 0;
}
.hero-variant--split .hero-proof-item,
.hero-variant--split .hero-support-note{
  background:rgba(255,255,255,.08);
  color:#e2e8f0;
}
.hero-variant--split .hero-proof-item span,
.hero-variant--split .hero-note-list,
.hero-variant--split .hero-action-note,
.hero-variant--split .hero-action-note a{
  color:#dbe7ff;
}

.hero-variant--route{
  background:
    linear-gradient(180deg, #08111f 0%, #0f172a 64%, #ffffff 64%, #ffffff 100%);
  color:#fff;
}
.hero-variant--route .hero-main{
  padding:1.1rem 0 1.2rem;
}
.hero-variant--route .hero-main > h1,
.hero-variant--route .hero-shell-lead,
.hero-variant--route .hero-action-note,
.hero-variant--route .hero-action-note a{
  color:#f8fafc;
}
.hero-variant--route .hero-aside{
  background:#ffffff;
  border-radius:24px;
  padding:1rem;
  border:1px solid rgba(15,23,42,.1);
  box-shadow:0 24px 60px rgba(15,23,42,.16);
}
.hero-variant--route .hero-proof-item,
.hero-variant--route .hero-support-note{
  background:#f8fbff;
  color:#0f172a;
}
.hero-variant--route .hero-proof-item span,
.hero-variant--route .hero-note-list,
.hero-variant--route .content-jump-links a{
  color:#334155;
}

.hero-variant--decision,
.hero-variant--trust,
.hero-variant--utility{
  background:
    linear-gradient(180deg, #f8fbff 0%, #eef4ff 52%, #ffffff 100%);
  color:#0f172a;
}
.hero-variant--decision .hero-main,
.hero-variant--trust .hero-main,
.hero-variant--utility .hero-main{
  background:#ffffff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:28px;
  padding:1.3rem;
  box-shadow:0 24px 60px rgba(15,23,42,.08);
}
.hero-variant--decision .hero-main > h1,
.hero-variant--trust .hero-main > h1,
.hero-variant--utility .hero-main > h1,
.hero-variant--decision .hero-shell-lead,
.hero-variant--trust .hero-shell-lead,
.hero-variant--utility .hero-shell-lead,
.hero-variant--decision .hero-action-note,
.hero-variant--trust .hero-action-note,
.hero-variant--utility .hero-action-note,
.hero-variant--decision .hero-action-note a,
.hero-variant--trust .hero-action-note a,
.hero-variant--utility .hero-action-note a{
  color:#0f172a;
}
.hero-variant--decision .badge,
.hero-variant--trust .badge,
.hero-variant--utility .badge,
.hero-variant--editorial .badge,
.hero-variant--resource .badge,
.hero-variant--contact .badge{
  background:#eff6ff;
  color:#1d4ed8;
  border-color:rgba(59,130,246,.16);
}
.hero-variant--decision .hero-proof-item,
.hero-variant--decision .hero-support-note,
.hero-variant--trust .hero-proof-item,
.hero-variant--trust .hero-support-note,
.hero-variant--utility .hero-proof-item,
.hero-variant--utility .hero-support-note{
  background:#ffffff;
  color:#0f172a;
}
.hero-variant--decision .hero-proof-item span,
.hero-variant--trust .hero-proof-item span,
.hero-variant--utility .hero-proof-item span,
.hero-variant--decision .hero-note-list,
.hero-variant--trust .hero-note-list,
.hero-variant--utility .hero-note-list{
  color:#475569;
}
.hero-variant--decision .content-jump-links a,
.hero-variant--trust .content-jump-links a,
.hero-variant--utility .content-jump-links a{
  background:#ffffff;
}
.hero-variant--decision .hero-panel,
.hero-variant--trust .hero-panel,
.hero-variant--utility .hero-panel{
  background:#f8fbff;
  border-color:rgba(15,23,42,.08);
  color:#0f172a;
}
.hero-variant--decision .hero-panel span,
.hero-variant--trust .hero-panel span,
.hero-variant--utility .hero-panel span{
  color:#475569;
}
.hero-variant--decision .hero-layout{
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
}
.hero-variant--decision-compact .hero-layout{
  grid-template-columns:minmax(0,1fr) minmax(300px,.84fr);
}
.hero-variant--decision-compact .hero-main > h1{
  max-width:11ch;
}
.hero-variant--trust .hero-layout{
  grid-template-columns:minmax(0,1fr) minmax(340px,.95fr);
}
.hero-variant--utility .hero-main > h1{
  max-width:14ch;
}

.hero-variant--editorial,
.hero-variant--resource,
.hero-variant--contact{
  background:
    linear-gradient(180deg, #ffffff 0%, #f8fafc 56%, #ffffff 100%);
  color:#0f172a;
}
.hero-variant--editorial .hero-main,
.hero-variant--resource .hero-main,
.hero-variant--contact .hero-main{
  padding:.85rem 0;
}
.hero-variant--editorial .hero-main > h1,
.hero-variant--resource .hero-main > h1,
.hero-variant--contact .hero-main > h1,
.hero-variant--editorial .hero-shell-lead,
.hero-variant--resource .hero-shell-lead,
.hero-variant--contact .hero-shell-lead,
.hero-variant--editorial .hero-action-note,
.hero-variant--resource .hero-action-note,
.hero-variant--contact .hero-action-note,
.hero-variant--editorial .hero-action-note a,
.hero-variant--resource .hero-action-note a,
.hero-variant--contact .hero-action-note a{
  color:#0f172a;
}
.hero-variant--editorial .hero-main > h1,
.hero-variant--resource .hero-main > h1,
.hero-variant--contact .hero-main > h1{
  max-width:13ch;
}
.hero-variant--editorial .hero-panel,
.hero-variant--resource .hero-panel,
.hero-variant--contact .hero-panel{
  background:#ffffff;
  border-color:rgba(15,23,42,.08);
  color:#0f172a;
  box-shadow:0 14px 34px rgba(15,23,42,.06);
}
.hero-variant--editorial .hero-panel span,
.hero-variant--resource .hero-panel span,
.hero-variant--contact .hero-panel span{
  color:#475569;
}
.hero-variant--editorial .hero-proof-item,
.hero-variant--editorial .hero-support-note,
.hero-variant--resource .hero-proof-item,
.hero-variant--resource .hero-support-note,
.hero-variant--contact .hero-proof-item,
.hero-variant--contact .hero-support-note{
  background:#ffffff;
  color:#0f172a;
}
.hero-variant--editorial .hero-proof-item span,
.hero-variant--resource .hero-proof-item span,
.hero-variant--contact .hero-proof-item span,
.hero-variant--editorial .hero-note-list,
.hero-variant--resource .hero-note-list,
.hero-variant--contact .hero-note-list{
  color:#475569;
}
.hero-variant--editorial .content-jump-links a,
.hero-variant--resource .content-jump-links a,
.hero-variant--contact .content-jump-links a{
  background:#ffffff;
}
.hero-variant--editorial .hero-layout,
.hero-variant--resource .hero-layout,
.hero-variant--contact .hero-layout{
  grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);
}
.hero-variant--editorial{
  border-bottom:1px solid rgba(15,23,42,.06);
}
.hero-variant--resource{
  background:
    radial-gradient(640px 240px at 8% 0%, rgba(191,219,254,.45), transparent 65%),
    linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
}
.hero-variant--contact{
  background:
    radial-gradient(520px 260px at 88% 6%, rgba(56,189,248,.12), transparent 65%),
    linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}



.hero-variant--policy{
  background:
    radial-gradient(620px 300px at 92% 2%, rgba(245,158,11,.16), transparent 64%),
    linear-gradient(180deg, #f8fafc 0%, #f5f7fb 54%, #ffffff 100%);
  color:#0f172a;
  border-bottom:1px solid rgba(15,23,42,.06);
}
.hero-variant--policy .hero-layout{
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  align-items:stretch;
}
.hero-variant--policy .hero-main{
  position:relative;
  background:#ffffff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:30px;
  padding:1.45rem;
  box-shadow:0 22px 54px rgba(15,23,42,.08);
  overflow:hidden;
}
.hero-variant--policy .hero-main::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:10px;
  background:linear-gradient(90deg, #0f172a 0%, #475569 42%, #f59e0b 100%);
}
.hero-variant--policy .hero-main > *{
  position:relative;
}
.hero-variant--policy .hero-main > h1,
.hero-variant--policy .hero-shell-lead,
.hero-variant--policy .hero-action-note,
.hero-variant--policy .hero-action-note a{
  color:#0f172a;
}
.hero-variant--policy .badge{
  background:#fff7ed;
  color:#b45309;
  border-color:rgba(245,158,11,.22);
}
.hero-variant--policy .hero-summary{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}
.hero-variant--policy .hero-panel{
  background:#f8fafc;
  border-color:rgba(15,23,42,.08);
  color:#0f172a;
  box-shadow:none;
}
.hero-variant--policy .hero-panel span{
  color:#475569;
}
.hero-variant--policy .hero-aside{
  background:#fffbeb;
  border:1px solid rgba(245,158,11,.2);
  border-radius:28px;
  padding:1.05rem;
  box-shadow:0 24px 56px rgba(15,23,42,.08);
}
.hero-variant--policy .hero-proof-item,
.hero-variant--policy .hero-support-note{
  background:#ffffff;
  border-color:rgba(245,158,11,.16);
  box-shadow:none;
  color:#0f172a;
}
.hero-variant--policy .hero-proof-item strong{
  color:#7c2d12;
}
.hero-variant--policy .hero-proof-item span,
.hero-variant--policy .hero-note-list,
.hero-variant--policy .hero-action-note,
.hero-variant--policy .hero-action-note a{
  color:#475569;
}
.hero-variant--policy .content-jump-links a{
  background:#ffffff;
  border-color:rgba(245,158,11,.2);
  color:#92400e;
}
body.page-legal .legal-route-section .section-head{
  max-width:760px;
}
body.page-legal .legal-route-section .proof-route-card h3{
  max-width:18ch;
}
.hero-variant--company{
  background:
    radial-gradient(620px 280px at 8% 6%, rgba(191,219,254,.48), transparent 65%),
    linear-gradient(180deg, #f8fbff 0%, #ffffff 72%);
  color:#0f172a;
  border-bottom:1px solid rgba(15,23,42,.06);
}
.hero-variant--company .hero-layout{
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
}
.hero-variant--company .hero-main{
  position:relative;
  overflow:hidden;
  background:#ffffff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:32px;
  padding:1.45rem;
  box-shadow:0 26px 60px rgba(15,23,42,.08);
}
.hero-variant--company .hero-main::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:6px;
  background:linear-gradient(180deg, #0f172a 0%, #1d4ed8 55%, #38bdf8 100%);
}
.hero-variant--company .hero-main > *{
  position:relative;
}
.hero-variant--company .hero-main > h1,
.hero-variant--company .hero-shell-lead,
.hero-variant--company .hero-action-note,
.hero-variant--company .hero-action-note a{
  color:#0f172a;
}
.hero-variant--company .badge{
  background:#eff6ff;
  color:#1d4ed8;
  border-color:rgba(59,130,246,.18);
}
.hero-variant--company .hero-summary{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  margin-top:.25rem;
}
.hero-variant--company .hero-panel{
  background:#f8fbff;
  border-color:rgba(15,23,42,.08);
  color:#0f172a;
  box-shadow:none;
  min-height:100%;
}
.hero-variant--company .hero-panel span{
  color:#475569;
}
.hero-variant--company .hero-aside{
  background:#0f172a;
  border-radius:28px;
  padding:1.1rem;
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 28px 60px rgba(15,23,42,.18);
}
.hero-variant--company .hero-proof-item,
.hero-variant--company .hero-support-note{
  background:rgba(255,255,255,.06);
  border-color:rgba(148,163,184,.14);
  color:#e2e8f0;
  box-shadow:none;
}
.hero-variant--company .hero-proof-item span,
.hero-variant--company .hero-note-list,
.hero-variant--company .hero-action-note,
.hero-variant--company .hero-action-note a{
  color:#cbd5e1;
}
.hero-variant--company .content-jump-links a{
  background:rgba(255,255,255,.06);
  border-color:rgba(148,163,184,.18);
  color:#f8fafc;
}
body.page-about .about-hero--leadership .hero-shell-lead{
  max-width:55ch;
  font-size:1.06rem;
}
body.page-about .about-hero--leadership .hero-panel strong{
  font-size:.96rem;
}
body.page-about .about-hero--leadership .hero-panel span{
  font-size:.95rem;
}
body.page-about .about-hero--leadership .hero-proof-strip{
  gap:.75rem;
}
body.page-about .about-hero--leadership .hero-note-list{
  padding-left:1.05rem;
}

.hero-variant--diligence{
  background:
    linear-gradient(180deg, #07111d 0%, #0e1728 100%);
}
.hero-variant--diligence::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(rgba(148,163,184,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(148,163,184,.08) 1px, transparent 1px);
  background-size:34px 34px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.55), transparent 95%);
  pointer-events:none;
}
.hero-variant--diligence .hero-main{
  padding:1rem 0;
}
.hero-variant--diligence .hero-proof-item,
.hero-variant--diligence .hero-support-note{
  background:rgba(8,15,28,.78);
  border-color:rgba(148,163,184,.18);
  color:#e2e8f0;
}
.hero-variant--diligence .hero-proof-item span,
.hero-variant--diligence .hero-note-list,
.hero-variant--diligence .hero-action-note,
.hero-variant--diligence .hero-action-note a{
  color:#cbd5e1;
}
.hero-variant--diligence .content-jump-links a{
  background:rgba(255,255,255,.06);
  border-color:rgba(148,163,184,.2);
  color:#f8fafc;
}
.hero-variant--diligence .hero-panel{
  background:rgba(255,255,255,.06);
  border-color:rgba(148,163,184,.14);
}
.hero-variant--diligence .hero-panel span{
  color:#dbe7ff;
}

.hero-variant--command{
  background:
    radial-gradient(520px 280px at 10% 10%, rgba(34,197,94,.18), transparent 60%),
    radial-gradient(420px 280px at 88% 20%, rgba(59,130,246,.16), transparent 62%),
    linear-gradient(180deg, #07111c 0%, #0f172a 66%, #f8fafc 66%, #f8fafc 100%);
}
.hero-variant--command::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(rgba(148,163,184,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(148,163,184,.08) 1px, transparent 1px);
  background-size:36px 36px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.52), transparent 92%);
  pointer-events:none;
}
.hero-variant--command .hero-layout{
  grid-template-columns:minmax(0,1.14fr) minmax(320px,.86fr);
  align-items:stretch;
}
.hero-variant--command .hero-main{
  padding:1.35rem 1.35rem 1.2rem;
  border-radius:30px;
  background:linear-gradient(180deg, rgba(7,17,28,.96) 0%, rgba(15,23,42,.94) 100%);
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 24px 60px rgba(2,8,23,.22);
}
.hero-variant--command .hero-main > h1,
.hero-variant--command .hero-shell-lead,
.hero-variant--command .hero-action-note,
.hero-variant--command .hero-action-note a{
  color:#f8fafc;
}
.hero-variant--command .badge{
  background:rgba(255,255,255,.1);
  color:#f8fafc;
  border-color:rgba(255,255,255,.18);
}
.hero-variant--command .hero-summary{
  grid-template-columns:repeat(3, minmax(0,1fr));
}
.hero-variant--command .hero-panel{
  background:rgba(255,255,255,.06);
  border-color:rgba(148,163,184,.14);
}
.hero-variant--command .hero-panel span{
  color:#dbe7ff;
}
.hero-variant--command .hero-aside{
  gap:1rem;
}
.hero-variant--command .hero-proof-item,
.hero-variant--command .hero-support-note{
  background:rgba(248,250,252,.96);
  border-color:rgba(15,23,42,.1);
  color:#0f172a;
  box-shadow:0 18px 45px rgba(15,23,42,.12);
}
.hero-variant--command .hero-proof-item strong{
  color:#0f172a;
}
.hero-variant--command .hero-proof-item span,
.hero-variant--command .hero-note-list,
.hero-variant--command .hero-action-note,
.hero-variant--command .hero-action-note a{
  color:#334155;
}
.hero-variant--command .content-jump-links a{
  background:#ffffff;
  border-color:rgba(15,23,42,.1);
  color:#0f172a;
  box-shadow:0 10px 24px rgba(15,23,42,.08);
}
body.page-operations .ops-command-hero .hero-main > h1{
  max-width:11.5ch;
}
body.page-operations .ops-command-hero .hero-shell-lead{
  max-width:60ch;
}
body.page-operations .ops-readiness-shell{
  margin-top:-1.25rem;
  margin-bottom:1.1rem;
}
body.page-scheduling .scheduling-workforce-hero .hero-main > h1{
  max-width:12.5ch;
}
body.page-scheduling .scheduling-workforce-hero .hero-shell-lead{
  max-width:62ch;
}
body.page-scheduling .scheduling-workforce-hero .hero-proof-item strong{
  color:#0f172a;
}
body.page-scheduling .scheduling-workforce-hero .hero-proof-item span{
  color:#334155;
}
body.page-scheduling .scheduling-workforce-hero .hero-support-note strong{
  color:#0f172a;
}
body.page-scheduling .scheduling-readiness-shell{
  margin-top:-1.25rem;
  margin-bottom:1.1rem;
}
body.page-pos .pos-service-hero .hero-main > h1{
  max-width:11.8ch;
}
body.page-pos .pos-service-hero .hero-shell-lead{
  max-width:61ch;
}
body.page-pos .pos-service-hero .hero-proof-item strong,
body.page-pos .pos-service-hero .hero-support-note strong{
  color:#0f172a;
}
body.page-pos .pos-service-hero .hero-proof-item span,
body.page-pos .pos-service-hero .hero-support-note{
  color:#334155;
}
body.page-pos .pos-readiness-shell{
  margin-top:-1.25rem;
  margin-bottom:1.1rem;
}
body.page-table .table-frontdoor-hero .hero-main > h1{
  max-width:12.2ch;
}
body.page-table .table-frontdoor-hero .hero-shell-lead{
  max-width:62ch;
}
body.page-table .table-frontdoor-hero .hero-proof-item strong,
body.page-table .table-frontdoor-hero .hero-support-note strong{
  color:#0f172a;
}
body.page-table .table-frontdoor-hero .hero-proof-item span,
body.page-table .table-frontdoor-hero .hero-support-note{
  color:#334155;
}
body.page-table .table-readiness-shell{
  margin-top:-1.25rem;
  margin-bottom:1.1rem;
}
body.page-label .label-print-hero .hero-main > h1{
  max-width:12.4ch;
}
body.page-label .label-print-hero .hero-shell-lead{
  max-width:61ch;
}
body.page-label .label-print-hero .hero-proof-item strong,
body.page-label .label-print-hero .hero-support-note strong{
  color:#0f172a;
}
body.page-label .label-print-hero .hero-proof-item span,
body.page-label .label-print-hero .hero-support-note{
  color:#334155;
}
body.page-label .label-readiness-shell{
  margin-top:-1.25rem;
  margin-bottom:1.1rem;
}
body.page-agent .agent-command-hero .hero-main > h1{
  max-width:11.2ch;
}
body.page-agent .agent-command-hero .hero-shell-lead{
  max-width:62ch;
}
body.page-agent .agent-command-hero .hero-proof-item strong,
body.page-agent .agent-command-hero .hero-support-note strong{
  color:#0f172a;
}
body.page-agent .agent-command-hero .hero-proof-item span,
body.page-agent .agent-command-hero .hero-support-note{
  color:#334155;
}
body.page-jobs .jobs-hiring-hero .hero-main > h1{
  max-width:12ch;
}
body.page-jobs .jobs-hiring-hero .hero-shell-lead{
  max-width:63ch;
}
body.page-jobs .jobs-hiring-hero .hero-proof-item strong,
body.page-jobs .jobs-hiring-hero .hero-support-note strong{
  color:#0f172a;
}
body.page-jobs .jobs-hiring-hero .hero-proof-item span,
body.page-jobs .jobs-hiring-hero .hero-support-note{
  color:#334155;
}
body.page-jobs .jobs-readiness-shell{
  margin-top:-1.25rem;
  margin-bottom:1.1rem;
}
body.page-finance .finance-command-hero .hero-main > h1{
  max-width:12.5ch;
}
body.page-finance .finance-command-hero .hero-shell-lead{
  max-width:64ch;
}
body.page-finance .finance-command-hero .hero-proof-item strong,
body.page-finance .finance-command-hero .hero-support-note strong{
  color:#0f172a;
}
body.page-finance .finance-command-hero .hero-proof-item span,
body.page-finance .finance-command-hero .hero-support-note{
  color:#334155;
}
body.page-finance .finance-readiness-shell{
  margin-top:-1.25rem;
  margin-bottom:1.1rem;
}
@media (max-width: 980px){
  .hero-variant--command .hero-layout{
    grid-template-columns:1fr;
  }
  .hero-variant--command .hero-summary{
    grid-template-columns:1fr;
  }
  body.page-operations .ops-readiness-shell{
    margin-top:.2rem;
  }
  body.page-scheduling .scheduling-readiness-shell{
    margin-top:.2rem;
  }
  body.page-pos .pos-readiness-shell{
    margin-top:.2rem;
  }
  body.page-table .table-readiness-shell{
    margin-top:.2rem;
  }
  body.page-label .label-readiness-shell{
    margin-top:.2rem;
  }
  body.page-jobs .jobs-readiness-shell{
    margin-top:.2rem;
  }
}

.home-hero{
  background:
    radial-gradient(640px 360px at 7% 10%, rgba(59,130,246,.32), transparent 60%),
    linear-gradient(180deg, #07101d 0%, #0c1627 68%, #ffffff 68%, #ffffff 100%);
  padding:5.4rem 0 4.6rem;
}
.home-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);
  gap:1.3rem;
  align-items:start;
}
.home-hero-copy{
  display:grid;
  gap:1rem;
}
.home-hero-copy h1{
  max-width:11ch;
  margin-bottom:0;
}
.home-hero-copy .hero-lead{
  margin:0;
  max-width:61ch;
}
.home-hero-copy .hero-lead a{
  color:#fff;
  font-weight:700;
}
.home-route-strip{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:.8rem;
}
.home-route-card{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  padding:.95rem 1rem;
  box-shadow:0 18px 40px rgba(2,8,23,.16);
}
.home-route-card strong,
.home-route-card span{ display:block; }
.home-route-card strong{ margin-bottom:.25rem; }
.home-route-card span{ color:#dbe7ff; font-size:.95rem; }
.home-route-card a{ color:#fff; text-decoration:none; }
.home-route-card a:hover{ text-decoration:underline; }
.hero-price-highlight{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.65rem;
  margin-top:.15rem;
}
.hero-price-badge{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:.55rem .95rem;
  background:#ffffff;
  color:#0f172a;
  font-weight:800;
  box-shadow:0 12px 28px rgba(15,23,42,.14);
}
.hero-price-sub{
  color:#dbe7ff;
  font-weight:600;
}
.hero-sidecard{
  background:#ffffff !important;
  color:#0f172a !important;
  border:1px solid rgba(15,23,42,.1) !important;
  border-radius:24px;
  box-shadow:0 24px 60px rgba(15,23,42,.16) !important;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.hero-sidecard h2,
.hero-sidecard p,
.hero-sidecard .sidecard-note,
.hero-sidecard .sidecard-note a,
.hero-sidecard .sidecard-facts li{
  color:#0f172a !important;
}
.hero-sidecard .eyebrow{
  background:#eff6ff;
  color:#1d4ed8;
}
.hero-sidecard .sidecard-facts li + li{
  margin-top:.55rem;
}
@media (max-width: 1080px){
  .page-hero-shared.hero-has-aside .hero-layout,
  .hero-variant--decision .hero-layout,
  .hero-variant--decision-compact .hero-layout,
  .hero-variant--trust .hero-layout,
  .hero-variant--utility .hero-layout,
  .hero-variant--editorial .hero-layout,
  .hero-variant--resource .hero-layout,
  .hero-variant--contact .hero-layout,
  .hero-variant--diligence .hero-layout,
  .home-hero-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 760px){
  .page-hero-shared{
    padding:4.6rem 0 3.8rem;
  }
  .page-hero-shared .hero-main > h1,
  .hero-variant--decision-compact .hero-main > h1,
  .home-hero-copy h1{
    max-width:12ch;
  }
  .home-route-strip{
    grid-template-columns:1fr;
  }
  .hero-price-highlight{
    align-items:flex-start;
  }
}


/* =========================================================
   Pass 463 — products chooser cleanup
========================================================= */
.hero-variant--catalog{
  background:
    radial-gradient(760px 460px at 8% 0%, rgba(59,130,246,.22), transparent 62%),
    radial-gradient(620px 420px at 92% 12%, rgba(37,99,235,.18), transparent 66%),
    linear-gradient(160deg, #07101d 0%, #0d1729 58%, #0a1525 100%);
  color:#f8fafc;
}
.hero-variant--catalog .hero-layout{
  grid-template-columns:minmax(0, 1.14fr) minmax(320px, .86fr);
  gap:1.5rem;
  align-items:stretch;
}
.hero-variant--catalog .hero-main{
  background:rgba(7,16,29,.74);
  border:1px solid rgba(148,163,184,.16);
  border-radius:30px;
  padding:1.5rem;
  box-shadow:0 28px 70px rgba(2,8,23,.28);
}
.hero-variant--catalog .hero-main > h1{
  max-width:10ch;
}
.hero-variant--catalog .hero-shell-lead,
.hero-variant--catalog .hero-action-note{
  color:#dbe7ff;
}
.hero-variant--catalog .hero-action-note a,
.hero-variant--catalog .hero-main > h1,
.hero-variant--catalog .hero-panel strong{
  color:#f8fafc;
}
.hero-variant--catalog .hero-summary{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:.85rem;
  margin-top:.35rem;
}
.hero-variant--catalog .hero-panel{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(148,163,184,.18);
  box-shadow:none;
}
.hero-variant--catalog .hero-panel span{
  color:#dbe7ff;
}
.hero-variant--catalog .hero-aside{
  background:#ffffff;
  border:1px solid rgba(15,23,42,.1);
  border-radius:30px;
  padding:1rem;
  box-shadow:0 24px 60px rgba(15,23,42,.16);
}
.hero-variant--catalog .hero-proof-item,
.hero-variant--catalog .content-jump-links a{
  background:#f8fbff;
  color:#0f172a;
}
.hero-variant--catalog .hero-proof-item span,
.hero-variant--catalog .content-jump-links a{
  color:#475569;
}
body.page-products .products-hero{
  padding-bottom:3.7rem;
}
body.page-products .product-family-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1rem;
}
body.page-products .family-card{
  display:grid;
  gap:.8rem;
  padding:1.3rem;
  background:linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border:1px solid rgba(15,23,42,.11);
  border-radius:24px;
  box-shadow:0 18px 40px rgba(15,23,42,.06);
}
body.page-products .family-card--featured{
  background:linear-gradient(160deg, #0a1628 0%, #10203a 58%, #17315c 100%);
  border-color:rgba(96,165,250,.24);
  box-shadow:0 28px 64px rgba(15,23,42,.18);
}
body.page-products .family-card h3{
  margin:0;
  font-size:1.16rem;
  line-height:1.24;
}
body.page-products .family-card p{
  margin:0;
  color:#475569;
}
body.page-products .family-card--featured h3,
body.page-products .family-card--featured .eyebrow{
  color:#f8fafc;
}
body.page-products .family-card--featured p{
  color:#dbe7ff;
}
body.page-products .family-card .cta-row{
  margin-top:.25rem;
}
body.page-products .products-catalog-note{
  max-width:760px;
}
@media (max-width: 1100px){
  .hero-variant--catalog .hero-layout{
    grid-template-columns:1fr;
  }
  .hero-variant--catalog .hero-summary,
  body.page-products .product-family-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px){
  .hero-variant--catalog .hero-summary,
  body.page-products .product-family-grid{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   Pass 465 — investor thesis hero differentiation
========================================================= */
body.page-investor .investor-thesis-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(760px 360px at 8% 6%, rgba(59,130,246,.18), transparent 62%),
    linear-gradient(180deg, #edf4ff 0%, #f8fbff 62%, #ffffff 100%);
  color:#0f172a;
  border-bottom:1px solid rgba(15,23,42,.08);
}
body.page-investor .investor-thesis-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(rgba(148,163,184,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(148,163,184,.08) 1px, transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.3), transparent 92%);
  pointer-events:none;
}
body.page-investor .investor-thesis-hero .hero-shell{
  position:relative;
  z-index:1;
}
body.page-investor .investor-thesis-hero .hero-layout{
  grid-template-columns:minmax(0,1.18fr) minmax(350px,.82fr);
  gap:1.5rem;
  align-items:stretch;
}
body.page-investor .investor-thesis-hero .hero-main{
  gap:1.15rem;
  padding:.55rem 0 .2rem;
}
body.page-investor .investor-thesis-hero .badge{
  background:#0f172a;
  color:#f8fafc;
  border-color:rgba(15,23,42,.18);
  backdrop-filter:none;
}
body.page-investor .investor-thesis-hero .hero-main > h1{
  max-width:10ch;
  color:#0f172a;
  letter-spacing:-.04em;
}
body.page-investor .investor-thesis-hero .hero-shell-lead,
body.page-investor .investor-thesis-hero .hero-action-note,
body.page-investor .investor-thesis-hero .hero-action-note a{
  color:#334155;
}
body.page-investor .investor-thesis-hero .hero-action-note a{
  color:#0f172a;
  font-weight:800;
}
body.page-investor .investor-thesis-hero .hero-summary{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:.9rem;
  margin-top:.1rem;
}
body.page-investor .investor-thesis-hero .hero-panel{
  background:#ffffff;
  border:1px solid rgba(15,23,42,.1);
  border-radius:24px;
  padding:1rem 1.05rem;
  box-shadow:0 18px 42px rgba(15,23,42,.08);
}
body.page-investor .investor-thesis-hero .hero-panel strong{
  display:block;
  margin-bottom:.35rem;
  color:#1d4ed8;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.page-investor .investor-thesis-hero .hero-panel span{
  color:#0f172a;
  font-size:1rem;
  line-height:1.5;
}
body.page-investor .investor-thesis-hero .cta-row{
  margin-top:.25rem;
}
body.page-investor .investor-thesis-hero .hero-aside{
  background:linear-gradient(160deg, #0a1527 0%, #10203a 62%, #17315c 100%);
  border:1px solid rgba(96,165,250,.24);
  border-radius:30px;
  padding:1.1rem;
  box-shadow:0 28px 64px rgba(15,23,42,.16);
}
body.page-investor .investor-thesis-hero .hero-proof-strip{
  gap:.75rem;
}
body.page-investor .investor-thesis-hero .hero-proof-item{
  background:rgba(255,255,255,.08);
  border-color:rgba(147,197,253,.14);
  box-shadow:none;
  color:#f8fafc;
}
body.page-investor .investor-thesis-hero .hero-proof-item strong{
  color:#f8fafc;
}
body.page-investor .investor-thesis-hero .hero-proof-item span,
body.page-investor .investor-thesis-hero .hero-note-list,
body.page-investor .investor-thesis-hero .hero-note-list a{
  color:#dbe7ff;
}
body.page-investor .investor-thesis-hero .hero-support-note{
  background:rgba(2,8,23,.38);
  border-color:rgba(148,163,184,.16);
  box-shadow:none;
}
body.page-investor .investor-thesis-hero .content-jump-links{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
}
body.page-investor .investor-thesis-hero .content-jump-links a{
  justify-content:center;
  background:rgba(255,255,255,.06);
  border-color:rgba(148,163,184,.18);
  color:#f8fafc;
}
body.page-investor .investor-thesis-hero .content-jump-links a:hover{
  transform:translateY(-1px);
}
body.page-investor #company-snapshot .section-head{
  max-width:720px;
}
@media (max-width: 1100px){
  body.page-investor .investor-thesis-hero .hero-layout{
    grid-template-columns:1fr;
  }
  body.page-investor .investor-thesis-hero .hero-summary{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px){
  body.page-investor .investor-thesis-hero .hero-summary,
  body.page-investor .investor-thesis-hero .content-jump-links{
    grid-template-columns:1fr;
  }
  body.page-investor .investor-thesis-hero .hero-aside{
    padding:1rem;
  }
}

/* Pass 466 — contact intake hero differentiation */
body.page-contact .contact-hero.contact-hero--intake{
  background:
    radial-gradient(720px 340px at 12% 0%, rgba(191,219,254,.42), transparent 62%),
    linear-gradient(180deg, #ffffff 0%, #eef6ff 54%, #f8fbff 100%);
  color:#0f172a;
  text-align:left;
  padding:5.75rem 0 4.5rem;
  border-bottom:1px solid rgba(148,163,184,.18);
}
body.page-contact .contact-hero.contact-hero--intake::before{
  display:none;
}
body.page-contact .contact-hero--intake .hero-layout{
  grid-template-columns:minmax(0, 1.16fr) minmax(320px, .84fr);
  align-items:stretch;
  gap:1.4rem;
}
body.page-contact .contact-hero--intake .hero-main{
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
  display:grid;
  align-content:start;
  gap:1rem;
}
body.page-contact .contact-hero--intake .badge{
  background:#eff6ff;
  color:#1d4ed8;
  border-color:rgba(59,130,246,.16);
  backdrop-filter:none;
}
body.page-contact .contact-hero--intake .hero-main > h1{
  max-width:10.8ch;
  font-size:clamp(2.9rem, 5.6vw, 4.85rem);
  line-height:.97;
  letter-spacing:-.045em;
  margin:0;
  color:#0f172a !important;
  text-shadow:none;
}
body.page-contact .contact-hero--intake .hero-shell-lead,
body.page-contact .contact-hero--intake .hero-action-note,
body.page-contact .contact-hero--intake .hero-action-note a{
  color:#334155 !important;
}
body.page-contact .contact-hero--intake .hero-shell-lead{
  max-width:63ch;
  font-size:1.08rem;
  line-height:1.72;
  margin:0;
}
body.page-contact .contact-hero--intake .hero-summary{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:.9rem;
}
body.page-contact .contact-hero--intake .hero-panel{
  background:#ffffff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:22px;
  padding:1rem 1rem 1.05rem;
  box-shadow:0 16px 36px rgba(15,23,42,.07);
}
body.page-contact .contact-hero--intake .hero-panel strong{
  display:block;
  margin-bottom:.35rem;
}
body.page-contact .contact-hero--intake .cta-row{
  justify-content:flex-start;
  gap:.75rem;
}
body.page-contact .contact-hero--intake .btn-secondary{
  background:#ffffff;
  color:#0f172a;
  border-color:rgba(15,23,42,.12);
}
body.page-contact .contact-hero--intake .hero-aside{
  display:grid;
  gap:.9rem;
  align-content:start;
  background:linear-gradient(180deg, #0f172a 0%, #1e293b 100%);
  color:#e2e8f0;
  border-radius:28px;
  padding:1.15rem;
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 28px 70px rgba(15,23,42,.18);
}
body.page-contact .contact-hero--intake .hero-proof-strip,
body.page-contact .contact-hero--intake .hero-support-note{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
}
body.page-contact .contact-hero--intake .hero-proof-strip{
  display:grid;
  gap:.75rem;
}
body.page-contact .contact-hero--intake .hero-proof-item,
body.page-contact .contact-hero--intake .hero-support-note{
  background:rgba(255,255,255,.06);
  color:#f8fafc;
  border:1px solid rgba(148,163,184,.16);
  border-radius:18px;
}
body.page-contact .contact-hero--intake .hero-proof-item strong,
body.page-contact .contact-hero--intake .hero-proof-item span,
body.page-contact .contact-hero--intake .hero-note-list,
body.page-contact .contact-hero--intake .hero-note-list strong{
  color:#e2e8f0;
}
body.page-contact .contact-hero--intake .content-jump-links{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
}
body.page-contact .contact-hero--intake .content-jump-links a{
  justify-content:center;
  background:rgba(255,255,255,.08);
  border-color:rgba(148,163,184,.2);
  color:#f8fafc;
}
body.page-contact .contact-intake-block{
  display:grid;
  gap:1.25rem;
  margin-bottom:1.5rem;
}
body.page-contact .contact-intake-head{
  display:grid;
  grid-template-columns:minmax(0, .95fr) minmax(280px, .85fr);
  gap:1rem;
  align-items:end;
}
body.page-contact .contact-intake-head h2{
  margin:.35rem 0 0;
  font-size:clamp(1.8rem, 3.4vw, 2.5rem);
  letter-spacing:-.03em;
}
body.page-contact .contact-intake-head p{
  margin:0;
  color:#475569;
  font-size:1rem;
}
body.page-contact .contact-reply-strip{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1rem;
}
body.page-contact .contact-reply-card{
  background:#f8fbff;
  border:1px solid rgba(15,23,42,.07);
  border-radius:20px;
  padding:1rem 1rem 1.1rem;
  box-shadow:0 12px 28px rgba(15,23,42,.05);
}
body.page-contact .contact-reply-card h3{
  margin:.55rem 0 .35rem;
  font-size:1rem;
}
body.page-contact .contact-reply-card p{
  margin:0;
  color:#475569;
  font-size:.97rem;
}
body.page-contact .contact-intro{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:1rem;
  margin-bottom:0;
}
body.page-contact .contact-intro .info-card{
  border-radius:20px;
  padding:1.2rem;
  background:#ffffff;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 14px 34px rgba(15,23,42,.05);
}
body.page-contact .contact-intro .info-card .mini-badge{
  display:inline-flex;
  margin-bottom:.7rem;
}
body.page-contact .contact-intro .info-card h2{
  font-size:1.02rem;
  margin-bottom:.45rem;
}
body.page-contact .contact-note{
  margin-top:1.15rem;
}
body.page-contact .contact-form-shell{
  max-width:1080px;
}
body.page-contact .form-wrapper{
  margin-top:-1.25rem;
}
body.page-contact .form-grid{
  box-shadow:0 24px 56px rgba(15,23,42,.08);
}
@media (max-width: 1100px){
  body.page-contact .contact-hero--intake .hero-layout,
  body.page-contact .contact-intake-head,
  body.page-contact .contact-reply-strip{
    grid-template-columns:1fr;
  }
  body.page-contact .contact-hero--intake .hero-summary{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px){
  body.page-contact .contact-hero.contact-hero--intake{
    padding:4.9rem 0 3.5rem;
  }
  body.page-contact .contact-hero--intake .hero-main > h1{
    max-width:11ch;
  }
  body.page-contact .contact-hero--intake .hero-summary,
  body.page-contact .contact-hero--intake .content-jump-links,
  body.page-contact .contact-intro{
    grid-template-columns:1fr;
  }
  body.page-contact .contact-hero--intake .hero-aside{
    padding:1rem;
  }
}


@media (max-width: 1100px){
  .hero-variant--company .hero-summary{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px){
  .hero-variant--company .hero-summary{
    grid-template-columns:1fr;
  }
  .hero-variant--company .hero-main{
    padding:1.15rem 1.05rem 1.1rem 1.2rem;
  }
  .hero-variant--company .hero-aside{
    padding:1rem;
  }
}


/* Pass 468 — engineering diligence hero differentiation */
body.page-engineering .engineering-hero--diligence{
  position:relative;
  overflow:hidden;
  padding:5rem 0 4.6rem;
  background:
    radial-gradient(760px 340px at 8% 4%, rgba(96,165,250,.18), transparent 62%),
    linear-gradient(180deg, #06101d 0%, #0d1726 68%, #101c2f 100%);
  border-bottom:1px solid rgba(148,163,184,.12);
}
body.page-engineering .engineering-hero--diligence::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(rgba(148,163,184,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(148,163,184,.08) 1px, transparent 1px);
  background-size:36px 36px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.5), transparent 94%);
  pointer-events:none;
}
body.page-engineering .engineering-hero--diligence .hero-shell{
  position:relative;
  z-index:1;
}
body.page-engineering .engineering-hero--diligence .hero-layout{
  grid-template-columns:minmax(0, 1.14fr) minmax(360px, .86fr);
  gap:1.4rem;
  align-items:stretch;
}
body.page-engineering .engineering-hero--diligence .hero-main{
  padding:1.3rem 1.35rem 1.25rem;
  border-radius:30px;
  background:linear-gradient(160deg, rgba(7,13,24,.9) 0%, rgba(12,24,43,.82) 100%);
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 28px 72px rgba(2,8,23,.28);
  gap:1rem;
}
body.page-engineering .engineering-hero--diligence .badge{
  background:rgba(191,219,254,.12);
  border-color:rgba(191,219,254,.22);
  color:#eff6ff;
  letter-spacing:.08em;
}
body.page-engineering .engineering-hero--diligence .hero-main > h1{
  max-width:11ch;
  letter-spacing:-.04em;
  margin-bottom:.2rem;
}
body.page-engineering .engineering-hero--diligence .hero-shell-lead,
body.page-engineering .engineering-hero--diligence .hero-action-note,
body.page-engineering .engineering-hero--diligence .hero-action-note a{
  color:#dbe7ff;
}
body.page-engineering .engineering-hero--diligence .hero-action-note a{
  font-weight:800;
}
body.page-engineering .engineering-hero--diligence .hero-summary{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:.9rem;
  margin-top:.15rem;
}
body.page-engineering .engineering-hero--diligence .hero-panel{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(148,163,184,.16);
  border-radius:24px;
  padding:1rem 1.05rem;
  box-shadow:none;
}
body.page-engineering .engineering-hero--diligence .hero-panel strong{
  display:block;
  margin-bottom:.35rem;
  color:#93c5fd;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.page-engineering .engineering-hero--diligence .hero-panel span{
  color:#eff6ff;
  font-size:1rem;
  line-height:1.52;
}
body.page-engineering .engineering-hero--diligence .cta-row{
  margin-top:.15rem;
}
body.page-engineering .engineering-hero--diligence .hero-aside{
  display:flex;
  flex-direction:column;
  gap:.95rem;
  padding:1.15rem;
  border-radius:30px;
  background:linear-gradient(180deg, #f8fbff 0%, #eef4ff 100%);
  border:1px solid rgba(148,163,184,.2);
  box-shadow:0 22px 54px rgba(15,23,42,.16);
}
body.page-engineering .engineering-hero--diligence .hero-proof-strip{
  gap:.75rem;
}
body.page-engineering .engineering-hero--diligence .hero-proof-item{
  background:#ffffff;
  border:1px solid rgba(15,23,42,.1);
  box-shadow:none;
  color:#0f172a;
}
body.page-engineering .engineering-hero--diligence .hero-proof-item strong{
  color:#1d4ed8;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.page-engineering .engineering-hero--diligence .hero-proof-item span,
body.page-engineering .engineering-hero--diligence .hero-note-list,
body.page-engineering .engineering-hero--diligence .hero-note-list a{
  color:#334155;
}
body.page-engineering .engineering-hero--diligence .hero-support-note{
  background:#eaf2ff;
  border-color:rgba(148,163,184,.16);
  box-shadow:none;
}
body.page-engineering .engineering-hero--diligence .hero-note-list{
  margin:0;
}
body.page-engineering .engineering-hero--diligence .hero-note-list li + li{
  margin-top:.65rem;
}
@media (max-width: 1120px){
  body.page-engineering .engineering-hero--diligence .hero-layout{
    grid-template-columns:1fr;
  }
  body.page-engineering .engineering-hero--diligence .hero-summary{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px){
  body.page-engineering .engineering-hero--diligence .hero-summary{
    grid-template-columns:1fr;
  }
  body.page-engineering .engineering-hero--diligence .hero-main,
  body.page-engineering .engineering-hero--diligence .hero-aside{
    padding:1rem;
  }
}

.hero-variant--ai{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 14% 18%, rgba(96,165,250,.22), transparent 34%),
    radial-gradient(circle at 84% 14%, rgba(129,140,248,.18), transparent 30%),
    linear-gradient(180deg, #f8fbff 0%, #eef4ff 48%, #f8fafc 100%);
}
.hero-variant--ai::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, rgba(255,255,255,.18), rgba(255,255,255,0));
  pointer-events:none;
}

.hero-variant--rollout{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg, #f7f4ec 0%, #fbfaf6 52%, #eef5f2 100%);
}
.hero-variant--rollout::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(128deg, rgba(255,255,255,.34) 0%, rgba(255,255,255,.08) 42%, rgba(255,255,255,0) 100%),
    repeating-linear-gradient(115deg, rgba(15,23,42,.018) 0 1px, transparent 1px 24px);
  pointer-events:none;
}
body.page-training .training-hero--rollout{
  padding-block:clamp(4rem, 7vw, 6.25rem);
}
body.page-training .training-hero--rollout .hero-shell{
  position:relative;
}
body.page-training .training-hero--rollout .hero-layout{
  grid-template-columns:minmax(0, 1.2fr) minmax(320px, .92fr);
  gap:1.15rem;
  align-items:stretch;
}
body.page-training .training-hero--rollout .hero-main{
  padding:clamp(1.45rem, 3vw, 2.35rem);
  border-radius:34px;
  background:linear-gradient(180deg, rgba(255,253,247,.98) 0%, rgba(255,255,255,.98) 100%);
  border:1px solid rgba(148,163,184,.2);
  box-shadow:0 26px 68px rgba(15,23,42,.11);
}
body.page-training .training-hero--rollout .badge{
  background:#ede3c6;
  color:#7c5200;
  border:1px solid rgba(161,98,7,.18);
}
body.page-training .training-hero--rollout .hero-main > h1{
  max-width:13ch;
  color:#172033;
  font-size:clamp(2.7rem, 4.9vw, 4.9rem);
  line-height:.96;
  letter-spacing:-.05em;
}
body.page-training .training-hero--rollout .hero-shell-lead,
body.page-training .training-hero--rollout .hero-action-note,
body.page-training .training-hero--rollout .hero-action-note a{
  color:#475569;
}
body.page-training .training-hero--rollout .hero-shell-lead{
  max-width:67ch;
  font-size:1.08rem;
}
body.page-training .training-hero--rollout .hero-summary{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:.9rem;
}
body.page-training .training-hero--rollout .hero-panel{
  min-height:100%;
  padding:1rem 1rem 1.05rem;
  border-radius:24px;
  background:linear-gradient(180deg, #fffdfa 0%, #f5f1e6 100%);
  border:1px solid rgba(148,163,184,.16);
  box-shadow:none;
}
body.page-training .training-hero--rollout .hero-panel strong{
  display:block;
  margin-bottom:.35rem;
  color:#8a5a0a;
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.page-training .training-hero--rollout .hero-panel span{
  color:#334155;
  font-size:.98rem;
  line-height:1.58;
}
body.page-training .training-hero--rollout .cta-row{
  margin-top:.25rem;
  gap:.8rem;
}
body.page-training .training-hero--rollout .btn-secondary{
  background:#ffffff;
  color:#172033;
  border-color:rgba(148,163,184,.24);
}
body.page-training .training-hero--rollout .hero-aside{
  display:flex;
  flex-direction:column;
  gap:1rem;
  padding:clamp(1.15rem, 2.5vw, 1.7rem);
  border-radius:32px;
  background:linear-gradient(180deg, rgba(20,31,41,.98) 0%, rgba(28,44,48,.98) 100%);
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 28px 68px rgba(15,23,42,.17);
}
body.page-training .training-hero--rollout .hero-proof-strip{
  display:grid;
  gap:.8rem;
}
body.page-training .training-hero--rollout .hero-proof-item{
  padding:1rem 1rem 1.05rem;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.02) 100%);
  border:1px solid rgba(226,232,240,.08);
}
body.page-training .training-hero--rollout .hero-proof-item strong{
  display:block;
  margin-bottom:.3rem;
  color:#f8fafc;
  font-size:1rem;
}
body.page-training .training-hero--rollout .hero-proof-item span,
body.page-training .training-hero--rollout .hero-note-list,
body.page-training .training-hero--rollout .hero-action-note,
body.page-training .training-hero--rollout .hero-action-note a{
  color:#cbd5e1;
}
body.page-training .training-hero--rollout .hero-support-note{
  padding:1rem 1rem 1.05rem;
  border-radius:22px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(226,232,240,.08);
}
body.page-training .training-hero--rollout .hero-note-list{
  margin:0;
}
body.page-training .training-hero--rollout .hero-note-list li + li{
  margin-top:.7rem;
}
@media (max-width: 1120px){
  body.page-training .training-hero--rollout .hero-layout{
    grid-template-columns:1fr;
  }
  body.page-training .training-hero--rollout .hero-summary{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px){
  body.page-training .training-hero--rollout .hero-summary{
    grid-template-columns:1fr;
  }
  body.page-training .training-hero--rollout .hero-main,
  body.page-training .training-hero--rollout .hero-aside{
    padding:1rem;
  }
}
body.page-ai .ai-hero--positioning{
  padding-block:clamp(4rem, 7vw, 6.6rem);
}
body.page-ai .ai-hero--positioning .hero-shell{
  position:relative;
}
body.page-ai .ai-hero--positioning .hero-layout{
  grid-template-columns:minmax(0, 1.28fr) minmax(320px, .9fr);
  gap:1.25rem;
  align-items:stretch;
}
body.page-ai .ai-hero--positioning .hero-main{
  padding:clamp(1.4rem, 3vw, 2.3rem);
  border-radius:34px;
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(244,248,255,.98) 100%);
  border:1px solid rgba(148,163,184,.2);
  box-shadow:0 26px 70px rgba(15,23,42,.12);
}
body.page-ai .ai-hero--positioning .badge{
  background:#dbeafe;
  color:#1d4ed8;
  border:1px solid rgba(59,130,246,.18);
}
body.page-ai .ai-hero--positioning .hero-main > h1{
  max-width:15ch;
  color:#0f172a;
  font-size:clamp(2.6rem, 4.7vw, 4.7rem);
  line-height:.97;
  letter-spacing:-.045em;
}
body.page-ai .ai-hero--positioning .hero-shell-lead,
body.page-ai .ai-hero--positioning .hero-action-note,
body.page-ai .ai-hero--positioning .hero-action-note a{
  color:#334155;
}
body.page-ai .ai-hero--positioning .hero-shell-lead{
  max-width:66ch;
  font-size:1.08rem;
}
body.page-ai .ai-hero--positioning .hero-summary{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:.9rem;
}
body.page-ai .ai-hero--positioning .hero-panel{
  min-height:100%;
  padding:1rem 1rem 1.05rem;
  border-radius:24px;
  background:linear-gradient(180deg, #eef4ff 0%, #f8fbff 100%);
  border:1px solid rgba(148,163,184,.18);
  box-shadow:none;
}
body.page-ai .ai-hero--positioning .hero-panel strong{
  display:block;
  margin-bottom:.35rem;
  color:#1d4ed8;
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.page-ai .ai-hero--positioning .hero-panel span{
  color:#1e293b;
  font-size:.98rem;
  line-height:1.55;
}
body.page-ai .ai-hero--positioning .cta-row{
  margin-top:.25rem;
  gap:.85rem;
}
body.page-ai .ai-hero--positioning .btn-secondary{
  background:#ffffff;
  color:#0f172a;
  border-color:rgba(148,163,184,.28);
}
body.page-ai .ai-hero--positioning .hero-aside{
  display:flex;
  flex-direction:column;
  gap:1rem;
  padding:1.2rem;
  border-radius:34px;
  background:linear-gradient(165deg, #0f172a 0%, #172554 62%, #312e81 100%);
  border:1px solid rgba(99,102,241,.18);
  box-shadow:0 30px 80px rgba(15,23,42,.28);
}
body.page-ai .ai-hero--positioning .hero-proof-strip{
  gap:.85rem;
}
body.page-ai .ai-hero--positioning .hero-proof-item,
body.page-ai .ai-hero--positioning .hero-support-note{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(191,219,254,.18);
  box-shadow:none;
}
body.page-ai .ai-hero--positioning .hero-proof-item strong{
  color:#93c5fd;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.page-ai .ai-hero--positioning .hero-proof-item span,
body.page-ai .ai-hero--positioning .hero-note-list,
body.page-ai .ai-hero--positioning .hero-note-list strong,
body.page-ai .ai-hero--positioning .hero-note-list a{
  color:#e2e8f0;
}
body.page-ai .ai-hero--positioning .hero-support-note{
  background:rgba(15,23,42,.22);
}
body.page-ai .ai-hero--positioning .hero-note-list li + li{
  margin-top:.65rem;
}
body.page-ai .ai-hero--positioning .hero-action-note a{
  text-decoration-color:rgba(59,130,246,.45);
}
@media (max-width: 1120px){
  body.page-ai .ai-hero--positioning .hero-layout{
    grid-template-columns:1fr;
  }
  body.page-ai .ai-hero--positioning .hero-summary{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px){
  body.page-ai .ai-hero--positioning .hero-main > h1{
    max-width:none;
    font-size:clamp(2.3rem, 10vw, 3.25rem);
  }
  body.page-ai .ai-hero--positioning .hero-summary{
    grid-template-columns:1fr;
  }
  body.page-ai .ai-hero--positioning .hero-main,
  body.page-ai .ai-hero--positioning .hero-aside{
    padding:1rem;
    border-radius:26px;
  }
}

.hero-variant--library{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg, #f7f1e6 0%, #f7f5ef 44%, #eef3f8 100%);
}
.hero-variant--library::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(118deg, rgba(255,255,255,.46) 0%, rgba(255,255,255,.12) 38%, rgba(255,255,255,0) 100%),
    repeating-linear-gradient(90deg, rgba(148,163,184,.08) 0 1px, transparent 1px 26px);
  pointer-events:none;
}
body.page-publishing .publishing-hero--library{
  padding-block:clamp(4.2rem, 7.5vw, 6.4rem);
}
body.page-publishing .publishing-hero--library .hero-shell{
  position:relative;
}
body.page-publishing .publishing-hero--library .hero-layout{
  grid-template-columns:minmax(0, 1.18fr) minmax(320px, .88fr);
  gap:1.2rem;
  align-items:stretch;
}
body.page-publishing .publishing-hero--library .hero-main{
  padding:clamp(1.55rem, 3vw, 2.5rem);
  border-radius:32px;
  background:linear-gradient(180deg, rgba(255,252,246,.98) 0%, rgba(255,255,255,.98) 100%);
  border:1px solid rgba(148,163,184,.24);
  box-shadow:0 28px 76px rgba(15,23,42,.1);
}
body.page-publishing .publishing-hero--library .badge{
  background:#efe0bf;
  color:#7c4a00;
  border:1px solid rgba(146,90,12,.18);
}
body.page-publishing .publishing-hero--library .hero-main > h1,
body.page-publishing .publishing-hero--library .hero-shell-lead,
body.page-publishing .publishing-hero--library .hero-action-note,
body.page-publishing .publishing-hero--library .hero-action-note a{
  color:#1d2638;
}
body.page-publishing .publishing-hero--library .hero-main > h1{
  max-width:11ch;
  font-size:clamp(2.9rem, 5vw, 5rem);
  line-height:.94;
  letter-spacing:-.05em;
}
body.page-publishing .publishing-hero--library .hero-summary{
  gap:.85rem;
  grid-template-columns:repeat(3, minmax(0, 1fr));
}
body.page-publishing .publishing-hero--library .hero-panel{
  min-height:100%;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(148,163,184,.22);
}
body.page-publishing .publishing-hero--library .hero-panel strong{
  color:#192235;
}
body.page-publishing .publishing-hero--library .hero-panel span{
  color:#526072;
}
body.page-publishing .publishing-hero--library .hero-aside{
  padding:clamp(1.25rem, 2.4vw, 1.8rem);
  border-radius:28px;
  background:linear-gradient(180deg, #21324c 0%, #172234 100%);
  border:1px solid rgba(148,163,184,.2);
  box-shadow:0 24px 64px rgba(15,23,42,.18);
}
body.page-publishing .publishing-hero--library .hero-proof-item,
body.page-publishing .publishing-hero--library .hero-support-note{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(226,232,240,.08);
}
body.page-publishing .publishing-hero--library .hero-proof-item strong,
body.page-publishing .publishing-hero--library .hero-proof-item span,
body.page-publishing .publishing-hero--library .hero-note-list,
body.page-publishing .publishing-hero--library .hero-action-note,
body.page-publishing .publishing-hero--library .hero-action-note a{
  color:#e8edf5;
}
body.page-publishing .publishing-hero--library .hero-proof-item span,
body.page-publishing .publishing-hero--library .hero-note-list{
  color:#cfdae8;
}
body.page-publishing .publishing-hero--library .hero-action-note{
  margin-top:1rem;
  font-size:.96rem;
}
@media (max-width: 980px){
  body.page-publishing .publishing-hero--library .hero-layout{
    grid-template-columns:1fr;
  }
  body.page-publishing .publishing-hero--library .hero-summary{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   Pass 472 — resources hub hero differentiation
========================================================= */
.hero-variant--playbook{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg, #f3f0e8 0%, #f8faf8 45%, #eef5fb 100%);
}
.hero-variant--playbook::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(122deg, rgba(255,255,255,.42) 0%, rgba(255,255,255,.1) 38%, rgba(255,255,255,0) 100%),
    repeating-linear-gradient(0deg, rgba(148,163,184,.065) 0 1px, transparent 1px 26px);
  pointer-events:none;
}
body.page-resources-index .resource-hero--playbook{
  padding-block:clamp(4.15rem, 7.2vw, 6.35rem);
}
body.page-resources-index .resource-hero--playbook .hero-shell{
  position:relative;
}
body.page-resources-index .resource-hero--playbook .hero-layout{
  grid-template-columns:minmax(0, 1.16fr) minmax(320px, .9fr);
  gap:1.2rem;
  align-items:stretch;
}
body.page-resources-index .resource-hero--playbook .hero-main{
  padding:clamp(1.45rem, 3vw, 2.35rem);
  border-radius:32px;
  background:linear-gradient(180deg, rgba(255,252,246,.98) 0%, rgba(255,255,255,.98) 100%);
  border:1px solid rgba(148,163,184,.2);
  box-shadow:0 26px 72px rgba(15,23,42,.1);
}
body.page-resources-index .resource-hero--playbook .badge{
  background:#e9dfc8;
  color:#825400;
  border:1px solid rgba(146,90,12,.16);
}
body.page-resources-index .resource-hero--playbook .hero-main > h1{
  max-width:12ch;
  color:#162033;
  font-size:clamp(2.7rem, 5vw, 4.9rem);
  line-height:.97;
  letter-spacing:-.05em;
}
body.page-resources-index .resource-hero--playbook .hero-shell-lead,
body.page-resources-index .resource-hero--playbook .hero-action-note,
body.page-resources-index .resource-hero--playbook .hero-action-note a{
  color:#475569;
}
body.page-resources-index .resource-hero--playbook .hero-shell-lead{
  max-width:68ch;
  font-size:1.08rem;
}
body.page-resources-index .resource-hero--playbook .hero-summary{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:.9rem;
}
body.page-resources-index .resource-hero--playbook .hero-panel{
  min-height:100%;
  padding:1rem 1rem 1.05rem;
  border-radius:24px;
  background:linear-gradient(180deg, #fffdfa 0%, #f2f5fb 100%);
  border:1px solid rgba(148,163,184,.16);
  box-shadow:none;
}
body.page-resources-index .resource-hero--playbook .hero-panel strong{
  display:block;
  margin-bottom:.35rem;
  color:#8a5a0a;
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.page-resources-index .resource-hero--playbook .hero-panel span{
  color:#334155;
  font-size:.98rem;
  line-height:1.56;
}
body.page-resources-index .resource-hero--playbook .cta-row{
  margin-top:.2rem;
  gap:.8rem;
}
body.page-resources-index .resource-hero--playbook .btn-secondary{
  background:#ffffff;
  color:#172033;
  border-color:rgba(148,163,184,.24);
}
body.page-resources-index .resource-hero--playbook .hero-aside{
  display:flex;
  flex-direction:column;
  gap:1rem;
  padding:clamp(1.15rem, 2.5vw, 1.7rem);
  border-radius:32px;
  background:linear-gradient(180deg, rgba(16,24,37,.98) 0%, rgba(18,34,58,.98) 100%);
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 30px 72px rgba(15,23,42,.18);
}
body.page-resources-index .resource-hero--playbook .hero-proof-strip{
  display:grid;
  gap:.8rem;
}
body.page-resources-index .resource-hero--playbook .hero-proof-item{
  padding:1rem 1rem 1.05rem;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.02) 100%);
  border:1px solid rgba(226,232,240,.08);
}
body.page-resources-index .resource-hero--playbook .hero-proof-item strong{
  display:block;
  margin-bottom:.3rem;
  color:#f8fafc;
  font-size:1rem;
}
body.page-resources-index .resource-hero--playbook .hero-proof-item span,
body.page-resources-index .resource-hero--playbook .hero-note-list,
body.page-resources-index .resource-hero--playbook .hero-note-list strong,
body.page-resources-index .resource-hero--playbook .hero-action-note,
body.page-resources-index .resource-hero--playbook .hero-action-note a{
  color:#cbd5e1;
}
body.page-resources-index .resource-hero--playbook .hero-support-note{
  padding:1rem 1rem 1.05rem;
  border-radius:22px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(226,232,240,.08);
}
body.page-resources-index .resource-hero--playbook .hero-note-list{
  margin:0;
}
body.page-resources-index .resource-hero--playbook .hero-note-list li + li{
  margin-top:.7rem;
}
body.page-resources-index .resource-hero--playbook .hero-action-note a{
  text-decoration-color:rgba(148,163,184,.35);
}
@media (max-width: 1120px){
  body.page-resources-index .resource-hero--playbook .hero-layout{
    grid-template-columns:1fr;
  }
  body.page-resources-index .resource-hero--playbook .hero-summary{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px){
  body.page-resources-index .resource-hero--playbook .hero-main > h1{
    max-width:none;
    font-size:clamp(2.3rem, 10vw, 3.4rem);
  }
  body.page-resources-index .resource-hero--playbook .hero-summary{
    grid-template-columns:1fr;
  }
  body.page-resources-index .resource-hero--playbook .hero-main,
  body.page-resources-index .resource-hero--playbook .hero-aside{
    padding:1rem;
    border-radius:26px;
  }
}

/* =========================================================
   Pass 474 — site index route-map differentiation
========================================================= */
body.page-site-index .site-index-hero{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg, #eef4fb 0%, #f8fbff 58%, #ffffff 100%);
  color:#0f172a;
  border-bottom:1px solid rgba(15,23,42,.08);
}
body.page-site-index .site-index-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(148,163,184,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,.08) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.34), transparent 88%);
  pointer-events:none;
}
body.page-site-index .site-index-hero .hero-shell{
  position:relative;
  z-index:1;
}
body.page-site-index .site-index-hero .hero-layout{
  grid-template-columns:minmax(0, 1.16fr) minmax(340px, .84fr);
  gap:1.5rem;
  align-items:stretch;
}
body.page-site-index .site-index-hero .hero-main{
  gap:1.1rem;
  padding:.45rem 0 .15rem;
}
body.page-site-index .site-index-hero .badge{
  background:#0f172a;
  color:#f8fafc;
  border-color:rgba(15,23,42,.18);
}
body.page-site-index .site-index-hero .hero-main > h1{
  max-width:10ch;
  color:#0f172a;
  letter-spacing:-.045em;
}
body.page-site-index .site-index-hero .hero-shell-lead,
body.page-site-index .site-index-hero .hero-action-note,
body.page-site-index .site-index-hero .hero-action-note a{
  color:#334155;
}
body.page-site-index .site-index-hero .hero-action-note a{
  color:#0f172a;
  font-weight:800;
}
body.page-site-index .site-index-hero .hero-summary{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:.9rem;
  margin-top:.1rem;
}
body.page-site-index .site-index-hero .hero-panel{
  background:#ffffff;
  border:1px solid rgba(15,23,42,.1);
  border-radius:24px;
  padding:1rem 1.05rem;
  box-shadow:0 18px 42px rgba(15,23,42,.08);
}
body.page-site-index .site-index-hero .hero-panel:first-child{
  background:linear-gradient(160deg, #0b1626 0%, #11243f 54%, #173866 100%);
  border-color:rgba(96,165,250,.24);
}
body.page-site-index .site-index-hero .hero-panel:first-child strong,
body.page-site-index .site-index-hero .hero-panel:first-child span{
  color:#f8fafc;
}
body.page-site-index .site-index-hero .hero-panel span{
  color:#475569;
}
body.page-site-index .site-index-hero .hero-aside{
  background:linear-gradient(180deg, #081425 0%, #0f213b 100%);
  border:1px solid rgba(96,165,250,.18);
  border-radius:30px;
  padding:1rem;
  box-shadow:0 24px 60px rgba(15,23,42,.18);
}
body.page-site-index .site-index-hero .hero-proof-strip{
  display:grid;
  gap:.75rem;
}
body.page-site-index .site-index-hero .hero-proof-item,
body.page-site-index .site-index-hero .hero-support-note{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(148,163,184,.16);
}
body.page-site-index .site-index-hero .hero-proof-item strong,
body.page-site-index .site-index-hero .hero-note-list strong,
body.page-site-index .site-index-hero .content-jump-links a{
  color:#f8fafc;
}
body.page-site-index .site-index-hero .hero-proof-item span,
body.page-site-index .site-index-hero .hero-note-list,
body.page-site-index .site-index-hero .hero-action-note,
body.page-site-index .site-index-hero .hero-action-note a{
  color:#dbe7ff;
}
body.page-site-index .site-index-hero .content-jump-links{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:.65rem;
}
body.page-site-index .site-index-hero .content-jump-links a{
  justify-content:center;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(148,163,184,.18);
}
body.page-site-index .site-index-purpose-grid{
  gap:1rem;
}
body.page-site-index .site-index-purpose-card{
  display:grid;
  gap:.75rem;
  min-height:100%;
  padding:1.3rem;
  background:linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border:1px solid rgba(15,23,42,.11);
  border-radius:24px;
  box-shadow:0 18px 40px rgba(15,23,42,.06);
}
body.page-site-index .site-index-purpose-card h3,
body.page-site-index .site-index-card h3{
  margin:0;
}
body.page-site-index .site-index-purpose-card p,
body.page-site-index .site-index-card__note,
body.page-site-index .site-index-card__route{
  margin:0;
  color:#475569;
}
body.page-site-index .site-index-card{
  display:flex;
  flex-direction:column;
  gap:.85rem;
  min-height:100%;
  padding:1.25rem;
  background:linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border:1px solid rgba(15,23,42,.1);
  border-radius:24px;
  box-shadow:0 18px 42px rgba(15,23,42,.06);
}
body.page-site-index .site-index-card__title a{
  color:#0f172a;
}
body.page-site-index .site-index-card__route a{
  color:#0f172a;
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size:.88rem;
  word-break:break-word;
}
body.page-site-index .site-index-card__route--live a{
  color:#1d4ed8;
}
body.page-site-index .site-index-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
  margin-top:auto;
}
@media (max-width: 1100px){
  body.page-site-index .site-index-hero .hero-layout{
    grid-template-columns:1fr;
  }
  body.page-site-index .site-index-hero .hero-summary{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px){
  body.page-site-index .site-index-hero .hero-summary,
  body.page-site-index .site-index-hero .content-jump-links{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   Pass 475 — app guides chooser differentiation
========================================================= */
.hero-variant--guide-chooser{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at top left, rgba(59,130,246,.12) 0%, rgba(59,130,246,0) 34%),
    linear-gradient(180deg, #eef4fb 0%, #f8fafc 48%, #f3efe5 100%);
}
.hero-variant--guide-chooser::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.48) 0%, rgba(255,255,255,.08) 42%, rgba(255,255,255,0) 100%),
    repeating-linear-gradient(90deg, rgba(148,163,184,.06) 0 1px, transparent 1px 34px);
  pointer-events:none;
}
body.page-products-guides .products-guides-hero--chooser{
  padding-block:clamp(4.2rem, 7.2vw, 6.1rem);
}
body.page-products-guides .products-guides-hero--chooser .hero-shell{
  position:relative;
}
body.page-products-guides .products-guides-hero--chooser .hero-layout{
  grid-template-columns:minmax(0, 1.18fr) minmax(320px, .88fr);
  gap:1.1rem;
  align-items:stretch;
}
body.page-products-guides .products-guides-hero--chooser .hero-main{
  padding:clamp(1.5rem, 3vw, 2.4rem);
  border-radius:34px;
  background:linear-gradient(180deg, rgba(255,255,255,.97) 0%, rgba(247,249,252,.98) 100%);
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 30px 76px rgba(15,23,42,.11);
}
body.page-products-guides .products-guides-hero--chooser .badge{
  background:#dcecff;
  color:#0f4b84;
  border:1px solid rgba(59,130,246,.18);
}
body.page-products-guides .products-guides-hero--chooser .hero-main > h1{
  max-width:11ch;
  color:#132238;
  font-size:clamp(2.8rem, 5.1vw, 5.1rem);
  line-height:.95;
  letter-spacing:-.05em;
}
body.page-products-guides .products-guides-hero--chooser .hero-shell-lead,
body.page-products-guides .products-guides-hero--chooser .hero-action-note,
body.page-products-guides .products-guides-hero--chooser .hero-action-note a{
  color:#475569;
}
body.page-products-guides .products-guides-hero--chooser .hero-shell-lead{
  max-width:69ch;
  font-size:1.08rem;
}
body.page-products-guides .products-guides-hero--chooser .hero-summary{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:.9rem;
}
body.page-products-guides .products-guides-hero--chooser .hero-panel{
  min-height:100%;
  padding:1rem 1rem 1.05rem;
  border-radius:24px;
  background:linear-gradient(180deg, #f8fbff 0%, #f7f3ea 100%);
  border:1px solid rgba(148,163,184,.15);
  box-shadow:none;
}
body.page-products-guides .products-guides-hero--chooser .hero-panel strong{
  display:block;
  margin-bottom:.34rem;
  color:#0f4b84;
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.page-products-guides .products-guides-hero--chooser .hero-panel span{
  color:#334155;
  font-size:.98rem;
  line-height:1.56;
}
body.page-products-guides .products-guides-hero--chooser .cta-row{
  margin-top:.2rem;
  gap:.8rem;
}
body.page-products-guides .products-guides-hero--chooser .btn-secondary{
  background:#fff;
  color:#172033;
  border-color:rgba(148,163,184,.24);
}
body.page-products-guides .products-guides-hero--chooser .hero-aside{
  display:flex;
  flex-direction:column;
  gap:1rem;
  padding:clamp(1.1rem, 2.5vw, 1.7rem);
  border-radius:34px;
  background:linear-gradient(180deg, rgba(17,27,44,.98) 0%, rgba(17,42,66,.98) 100%);
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 30px 78px rgba(15,23,42,.18);
}
body.page-products-guides .products-guides-hero--chooser .hero-proof-strip{
  display:grid;
  gap:.8rem;
}
body.page-products-guides .products-guides-hero--chooser .hero-proof-item{
  padding:1rem 1rem 1.05rem;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.065) 0%, rgba(255,255,255,.02) 100%);
  border:1px solid rgba(226,232,240,.08);
}
body.page-products-guides .products-guides-hero--chooser .hero-proof-item strong{
  display:block;
  margin-bottom:.3rem;
  color:#f8fafc;
  font-size:1rem;
}
body.page-products-guides .products-guides-hero--chooser .hero-proof-item span,
body.page-products-guides .products-guides-hero--chooser .hero-note-list,
body.page-products-guides .products-guides-hero--chooser .hero-note-list strong,
body.page-products-guides .products-guides-hero--chooser .hero-action-note,
body.page-products-guides .products-guides-hero--chooser .hero-action-note a{
  color:#cbd5e1;
}
body.page-products-guides .products-guides-hero--chooser .hero-support-note{
  padding:1rem 1rem 1.05rem;
  border-radius:22px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(226,232,240,.08);
}
body.page-products-guides .products-guides-hero--chooser .hero-note-list{
  margin:0;
}
body.page-products-guides .products-guides-hero--chooser .hero-note-list li + li{
  margin-top:.7rem;
}
body.page-products-guides .guides-decision-grid{
  align-items:stretch;
}
body.page-products-guides .guide-choice-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  gap:.85rem;
  border-radius:24px;
  padding:1.15rem;
  background:linear-gradient(180deg, #fff 0%, #f6f8fb 100%);
  border:1px solid rgba(148,163,184,.14);
  box-shadow:0 18px 46px rgba(15,23,42,.08);
}
body.page-products-guides .guide-choice-card h3{
  margin:0;
  color:#122033;
}
body.page-products-guides .guide-choice-card .badge-src{
  display:inline-flex;
  align-items:center;
  padding:.34rem .72rem;
  border-radius:999px;
  background:#e8f0fb;
  color:#0f4b84;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
body.page-products-guides .guide-choice-card .tag-row{
  margin:0;
}
body.page-products-guides .guide-choice-card p{
  margin:0;
  color:#475569;
}
body.page-products-guides .guide-choice-actions{
  margin-top:auto;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.75rem;
}
body.page-products-guides .guide-choice-actions .btn-resource{
  padding:.7rem 1.18rem;
  border-radius:999px;
  background:#fff;
  color:#0f4b84;
  border:1px solid rgba(27,117,255,.18);
  text-decoration:none;
  font-weight:800;
  box-shadow:0 10px 24px rgba(8,15,31,.06);
}
body.page-products-guides .guide-choice-actions .btn-resource:hover,
body.page-products-guides .guide-choice-actions .btn-resource:focus-visible{
  background:#f6fbff;
  border-color:rgba(27,117,255,.28);
  color:#0b5bd3;
}
body.page-products-guides .guide-choice-link{
  color:#0f4b84;
  font-weight:700;
  text-decoration:none;
}
body.page-products-guides .guide-choice-link:hover,
body.page-products-guides .guide-choice-link:focus-visible{
  text-decoration:underline;
}
@media (max-width: 1120px){
  body.page-products-guides .products-guides-hero--chooser .hero-layout{
    grid-template-columns:1fr;
  }
}
@media (max-width: 760px){
  body.page-products-guides .products-guides-hero--chooser .hero-main > h1{
    max-width:none;
    font-size:clamp(2.3rem, 10vw, 3.5rem);
  }
  body.page-products-guides .products-guides-hero--chooser .hero-summary{
    grid-template-columns:1fr;
  }
  body.page-products-guides .products-guides-hero--chooser .hero-main,
  body.page-products-guides .products-guides-hero--chooser .hero-aside{
    padding:1rem;
    border-radius:26px;
  }
}


/* Pass 485: pricing decision-surface tightening */
body.page-pricing #pricing-start-here .page-route-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
}
body.page-pricing #pricing-start-here .page-route-card p + p{
  margin-top:.8rem;
}
body.page-pricing #pricing-start-here .page-route-card .cta-row{
  margin-top:auto;
}
body.page-pricing .pricing-decision-callout{
  margin-top:.35rem;
}


/* Pass 486: public hero contrast hardening on washed-out route pages */
body.page-about .about-hero--leadership .hero-main{
  background:linear-gradient(180deg, rgba(255,255,255,.985) 0%, rgba(248,251,255,.985) 100%);
}
body.page-about .about-hero--leadership .badge{
  background:#eef5ff;
  color:#5b6474;
  border-color:rgba(148,163,184,.22);
}
body.page-about .about-hero--leadership .hero-shell-lead,
body.page-about .about-hero--leadership .hero-action-note,
body.page-about .about-hero--leadership .hero-action-note a{
  color:#6b7788;
}

body.page-resources-index .resource-hero--playbook .hero-main{
  position:relative;
  isolation:isolate;
  background:linear-gradient(180deg, rgba(255,252,246,.992) 0%, rgba(255,255,255,.992) 100%);
}
body.page-resources-index .resource-hero--playbook .badge{
  background:#eef4fb;
  color:#7b5f2e;
  border-color:rgba(146,90,12,.18);
}
body.page-resources-index .resource-hero--playbook .hero-main > h1{
  color:#243041;
}
body.page-resources-index .resource-hero--playbook .hero-shell-lead,
body.page-resources-index .resource-hero--playbook .hero-action-note,
body.page-resources-index .resource-hero--playbook .hero-action-note a{
  color:#728093;
}

body.page-pricing .pricing-hero .hero-shell-lead,
body.page-pricing .pricing-hero .hero-action-note,
body.page-pricing .pricing-hero .hero-action-note a{
  color:#7a8596;
}
body.page-pricing .pricing-hero .hero-panel,
body.page-pricing .pricing-hero .hero-proof-item,
body.page-pricing .pricing-hero .hero-support-note,
body.page-pricing .pricing-hero .content-jump-links a{
  box-shadow:0 16px 40px rgba(15,23,42,.08);
}
body.page-pricing .pricing-hero .hero-panel span,
body.page-pricing .pricing-hero .hero-proof-item span,
body.page-pricing .pricing-hero .hero-note-list,
body.page-pricing .pricing-hero .content-jump-links a{
  color:#4e5d72;
}
body.page-pricing .pricing-hero .hero-support-note{
  background:linear-gradient(180deg, #f7fbff 0%, #eef4ff 100%);
  border-color:rgba(148,163,184,.16);
}
body.page-pricing .pricing-hero .content-jump-links a{
  background:#f8fbff;
  border-color:rgba(148,163,184,.18);
}

body.page-engineering .engineering-hero--diligence .hero-support-note{
  background:linear-gradient(180deg, #ecf3ff 0%, #dfeafb 100%);
  border-color:rgba(96,165,250,.18);
}
body.page-engineering .engineering-hero--diligence .hero-note-list,
body.page-engineering .engineering-hero--diligence .hero-note-list a{
  color:#5d6d80;
}

body.page-investor .investor-thesis-hero .hero-main{
  padding:1.3rem 1.35rem 1.2rem;
  border-radius:30px;
  background:linear-gradient(180deg, rgba(251,253,255,.96) 0%, rgba(241,246,255,.94) 100%);
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 24px 56px rgba(15,23,42,.12);
}
body.page-investor .investor-thesis-hero .badge{
  background:#21446c;
  border-color:rgba(59,130,246,.18);
}
body.page-investor .investor-thesis-hero .hero-main > h1{
  color:#10213a;
}
body.page-investor .investor-thesis-hero .hero-shell-lead,
body.page-investor .investor-thesis-hero .hero-action-note,
body.page-investor .investor-thesis-hero .hero-action-note a{
  color:#44566b;
}
body.page-investor .investor-thesis-hero .hero-panel{
  box-shadow:0 18px 44px rgba(15,23,42,.1);
}

/* Pass 488: public route hero readability rebalance */
body.page-about .about-hero--leadership .badge{
  background:#eaf2ff;
  color:#1f4f8f;
  border-color:rgba(59,130,246,.2);
}
body.page-about .about-hero--leadership .hero-main > h1{
  color:#0f172a;
}
body.page-about .about-hero--leadership .hero-shell-lead,
body.page-about .about-hero--leadership .hero-action-note,
body.page-about .about-hero--leadership .hero-action-note a{
  color:#415065;
}
body.page-about .about-hero--leadership .hero-panel span{
  color:#39485d;
}

body.page-resources-index .resource-hero--playbook .badge{
  background:#f1e3c4;
  color:#7b4d0b;
  border-color:rgba(146,90,12,.22);
}
body.page-resources-index .resource-hero--playbook .hero-main{
  background:linear-gradient(180deg, rgba(255,250,242,.996) 0%, rgba(255,255,255,.996) 100%);
  border-color:rgba(148,163,184,.22);
}
body.page-resources-index .resource-hero--playbook .hero-main > h1{
  color:#172338;
  text-shadow:none;
}
body.page-resources-index .resource-hero--playbook .hero-shell-lead,
body.page-resources-index .resource-hero--playbook .hero-action-note,
body.page-resources-index .resource-hero--playbook .hero-action-note a{
  color:#44556c;
}
body.page-resources-index .resource-hero--playbook .hero-panel span{
  color:#2f3f54;
}
body.page-resources-index .resource-hero--playbook .hero-proof-item span,
body.page-resources-index .resource-hero--playbook .hero-note-list,
body.page-resources-index .resource-hero--playbook .hero-note-list strong,
body.page-resources-index .resource-hero--playbook .hero-action-note,
body.page-resources-index .resource-hero--playbook .hero-action-note a{
  color:#d8e3f2;
}

body.page-pricing .pricing-hero .hero-shell-lead,
body.page-pricing .pricing-hero .hero-action-note,
body.page-pricing .pricing-hero .hero-action-note a{
  color:#425166;
}
body.page-pricing .pricing-hero .hero-panel span,
body.page-pricing .pricing-hero .hero-proof-item span,
body.page-pricing .pricing-hero .hero-note-list,
body.page-pricing .pricing-hero .content-jump-links a{
  color:#3f4f64;
}
body.page-pricing .pricing-hero .hero-support-note{
  background:linear-gradient(180deg, #ffffff 0%, #eef4ff 100%);
  border-color:rgba(148,163,184,.18);
}
body.page-pricing .pricing-hero .content-jump-links a{
  background:#ffffff;
}

body.page-engineering .engineering-hero--diligence .hero-support-note{
  background:linear-gradient(180deg, #f6faff 0%, #edf4ff 100%);
  border-color:rgba(96,165,250,.16);
}
body.page-engineering .engineering-hero--diligence .hero-note-list,
body.page-engineering .engineering-hero--diligence .hero-note-list a{
  color:#304257;
}

body.page-investor .investor-thesis-hero .hero-main{
  background:linear-gradient(180deg, #ffffff 0%, #f5f9ff 100%);
  border-color:rgba(148,163,184,.18);
  box-shadow:0 22px 54px rgba(15,23,42,.1);
}
body.page-investor .investor-thesis-hero .badge{
  background:#17365d;
  color:#f8fafc;
}
body.page-investor .investor-thesis-hero .hero-main > h1{
  color:#0f2138;
}
body.page-investor .investor-thesis-hero .hero-shell-lead,
body.page-investor .investor-thesis-hero .hero-action-note,
body.page-investor .investor-thesis-hero .hero-action-note a{
  color:#33475d;
}
body.page-investor .investor-thesis-hero .hero-panel span{
  color:#1f3046;
}


/* =========================
   Pass 493 — investor source-block takeover
   Keeps the shared public contrast work in place, but moves the final
   investor-route authority into site.css because that route carries its
   own thesis hero, proof lane, and diligence cards.
   ========================= */
body.page-investor .investor-thesis-hero{
  background:linear-gradient(180deg, #071221 0%, #0c1d36 44%, #14365f 100%) !important;
  border-bottom:1px solid rgba(96,165,250,.14) !important;
}
body.page-investor .investor-thesis-hero .hero-main{
  padding:1.38rem 1.42rem 1.26rem !important;
  border-radius:30px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.996) 0%, rgba(246,249,255,.992) 100%) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  box-shadow:0 30px 78px rgba(15,23,42,.16) !important;
}
body.page-investor .investor-thesis-hero .badge{
  background:#17365d !important;
  color:#f8fbff !important;
  border-color:rgba(96,165,250,.22) !important;
}
body.page-investor .investor-thesis-hero .hero-main > h1{
  color:#0c182b !important;
  max-width:10.7ch !important;
}
body.page-investor .investor-thesis-hero .hero-shell-lead,
body.page-investor .investor-thesis-hero .hero-action-note,
body.page-investor .investor-thesis-hero .hero-action-note a{
  color:#425166 !important;
}
body.page-investor .investor-thesis-hero .hero-panel{
  background:linear-gradient(180deg, #ffffff 0%, #f6faff 100%) !important;
  border:1px solid rgba(15,23,42,.10) !important;
  box-shadow:0 18px 46px rgba(15,23,42,.10) !important;
}
body.page-investor .investor-thesis-hero .hero-panel strong{
  color:#1d4ed8 !important;
}
body.page-investor .investor-thesis-hero .hero-panel span{
  color:#22364b !important;
}
body.page-investor .investor-thesis-hero .hero-aside{
  background:linear-gradient(160deg, #06111f 0%, #10233e 58%, #173a69 100%) !important;
  border:1px solid rgba(96,165,250,.22) !important;
  box-shadow:0 32px 76px rgba(2,8,23,.28) !important;
}
body.page-investor .investor-thesis-hero .hero-proof-item,
body.page-investor .investor-thesis-hero .hero-support-note{
  background:linear-gradient(180deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,.06) 100%) !important;
  border-color:rgba(191,219,254,.18) !important;
}
body.page-investor .investor-thesis-hero .hero-proof-item strong,
body.page-investor .investor-thesis-hero .hero-note-list strong,
body.page-investor .investor-thesis-hero .hero-proof-item span,
body.page-investor .investor-thesis-hero .hero-note-list,
body.page-investor .investor-thesis-hero .hero-note-list li,
body.page-investor .investor-thesis-hero .hero-note-list a{
  color:#e7f0ff !important;
}
body.page-investor .investor-thesis-hero .content-jump-links a{
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(191,219,254,.22) !important;
  color:#f8fbff !important;
  box-shadow:none !important;
}

body.page-investor #company-snapshot .card,
body.page-investor #public-review .inv-diligence-card,
body.page-investor .inv-band,
body.page-investor .surface .grid-2 > .card,
body.page-investor #investor-form .inv-form-card{
  background:linear-gradient(180deg, #ffffff 0%, #f7fbff 100%) !important;
  border:1px solid rgba(15,23,42,.10) !important;
  box-shadow:0 20px 48px rgba(15,23,42,.08) !important;
}
body.page-investor #company-snapshot .card,
body.page-investor #public-review .inv-diligence-card,
body.page-investor #investor-form .inv-form-card{
  position:relative !important;
  overflow:hidden !important;
}
body.page-investor #company-snapshot .card::before,
body.page-investor #public-review .inv-diligence-card::before,
body.page-investor #investor-form .inv-form-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 0 auto !important;
  height:4px !important;
  background:linear-gradient(90deg, rgba(15,95,232,.94), rgba(70,196,255,.92), rgba(249,115,22,.82)) !important;
}
body.page-investor #company-snapshot .section-head p,
body.page-investor #investment-thesis .section-head p,
body.page-investor #public-review .section-head p,
body.page-investor #growth .section-head p,
body.page-investor .inv-band .lead,
body.page-investor .inv-band p,
body.page-investor .inv-band .inv-list,
body.page-investor .inv-band .inv-list li,
body.page-investor .surface .grid-2 > .card p,
body.page-investor .surface .grid-2 > .card .inv-list,
body.page-investor .surface .grid-2 > .card .inv-list li,
body.page-investor #public-review .inv-diligence-card p,
body.page-investor .inv-panel-note,
body.page-investor .inv-note-legal,
body.page-investor .faq-item p,
body.page-investor #investor-form .inv-form-card p{
  color:#425166 !important;
}
body.page-investor #investment-thesis .pill{
  background:linear-gradient(180deg, #eef4ff 0%, #e4edff 100%) !important;
  border:1px solid rgba(59,130,246,.16) !important;
  color:#10233a !important;
  box-shadow:0 12px 28px rgba(15,23,42,.06) !important;
}
body.page-investor #company-snapshot .inv-fact{
  background:linear-gradient(180deg, #eff5ff 0%, #e6efff 100%) !important;
  border-color:rgba(59,130,246,.16) !important;
}
body.page-investor #company-snapshot .inv-fact span{
  color:#5a6f88 !important;
}
body.page-investor #company-snapshot .inv-fact strong,
body.page-investor #public-review .inv-diligence-card h3,
body.page-investor .inv-band h2,
body.page-investor .surface .grid-2 > .card h3,
body.page-investor .faq-item h3,
body.page-investor .inv-form-head h2{
  color:#0f172a !important;
}
body.page-investor #public-review .inv-diligence-card a,
body.page-investor .inv-form-head strong{
  color:#1d4ed8 !important;
}
body.page-investor #investor-form .inv-form-card input[type="text"],
body.page-investor #investor-form .inv-form-card input[type="email"],
body.page-investor #investor-form .inv-form-card select,
body.page-investor #investor-form .inv-form-card textarea{
  background:#ffffff !important;
  border:1px solid rgba(148,163,184,.28) !important;
}

/* =========================
   Pass 494 — resources source-block takeover
   The resource hub still trailed because its editorial hero was inheriting
   pale late-loading shared styles. Reassert route-owned authority here so
   the hero and first-scroll discovery cards read like a premium editorial hub,
   not a washed-out helper surface.
   ========================= */
body.page-resources-index .resource-hero--playbook{
  background:linear-gradient(180deg, #07111f 0%, #0d2038 42%, #173b69 100%) !important;
  border-bottom:1px solid rgba(96,165,250,.14) !important;
}
body.page-resources-index .resource-hero--playbook .hero-main{
  padding:1.42rem 1.46rem 1.3rem !important;
  border-radius:30px !important;
  background:linear-gradient(180deg, rgba(255,251,245,.997) 0%, rgba(255,255,255,.994) 100%) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  box-shadow:0 30px 78px rgba(15,23,42,.16) !important;
}
body.page-resources-index .resource-hero--playbook .badge{
  background:#f1e3c4 !important;
  color:#7b4d0b !important;
  border:1px solid rgba(146,90,12,.22) !important;
}
body.page-resources-index .resource-hero--playbook .hero-main > h1{
  color:#122033 !important;
  text-shadow:none !important;
}
body.page-resources-index .resource-hero--playbook .hero-shell-lead,
body.page-resources-index .resource-hero--playbook .hero-action-note,
body.page-resources-index .resource-hero--playbook .hero-action-note a{
  color:#44556c !important;
}
body.page-resources-index .resource-hero--playbook .hero-panel{
  background:linear-gradient(180deg, #ffffff 0%, #f7fbff 100%) !important;
  border:1px solid rgba(15,23,42,.10) !important;
  box-shadow:0 18px 44px rgba(15,23,42,.08) !important;
}
body.page-resources-index .resource-hero--playbook .hero-panel strong{
  color:#8a5a15 !important;
}
body.page-resources-index .resource-hero--playbook .hero-panel span{
  color:#2f3f54 !important;
}
body.page-resources-index .resource-hero--playbook .hero-aside{
  background:linear-gradient(160deg, #06111f 0%, #0f223b 58%, #173a69 100%) !important;
  border:1px solid rgba(96,165,250,.22) !important;
  box-shadow:0 32px 76px rgba(2,8,23,.28) !important;
}
body.page-resources-index .resource-hero--playbook .hero-proof-item,
body.page-resources-index .resource-hero--playbook .hero-support-note{
  background:linear-gradient(180deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,.06) 100%) !important;
  border:1px solid rgba(191,219,254,.18) !important;
}
body.page-resources-index .resource-hero--playbook .hero-proof-item strong,
body.page-resources-index .resource-hero--playbook .hero-note-list strong,
body.page-resources-index .resource-hero--playbook .hero-proof-item span,
body.page-resources-index .resource-hero--playbook .hero-note-list,
body.page-resources-index .resource-hero--playbook .hero-note-list li,
body.page-resources-index .resource-hero--playbook .hero-note-list a{
  color:#e7f0ff !important;
}
body.page-resources-index .resource-hero--playbook .cta-row .btn-secondary{
  background:rgba(255,255,255,.94) !important;
  color:#122033 !important;
  border-color:rgba(148,163,184,.22) !important;
}
body.page-resources-index .resource-hero--playbook .cta-row .btn-secondary:hover{
  background:#ffffff !important;
}

body.page-resources-index #start-here .section-head p,
body.page-resources-index #platform-guides .category-header p,
body.page-resources-index #foh-guides .category-header p,
body.page-resources-index #templates .category-header p,
body.page-resources-index #product-paths .category-header p,
body.page-resources-index .resource-card p{
  color:#485a71 !important;
}
body.page-resources-index .category-header h2,
body.page-resources-index .resource-card h3{
  color:#0f172a !important;
}
body.page-resources-index #start-here .resource-card,
body.page-resources-index #platform-guides .resource-card,
body.page-resources-index #foh-guides .resource-card,
body.page-resources-index #templates .resource-card,
body.page-resources-index #product-paths .resource-card{
  position:relative !important;
  overflow:hidden !important;
  background:linear-gradient(180deg, #ffffff 0%, #f7fbff 100%) !important;
  border:1px solid rgba(15,23,42,.10) !important;
  box-shadow:0 18px 44px rgba(15,23,42,.08) !important;
}
body.page-resources-index #start-here .resource-card::before,
body.page-resources-index #platform-guides .resource-card::before,
body.page-resources-index #foh-guides .resource-card::before,
body.page-resources-index #templates .resource-card::before,
body.page-resources-index #product-paths .resource-card::before{
  opacity:1 !important;
  background:linear-gradient(90deg, rgba(15,95,232,.94), rgba(70,196,255,.92), rgba(249,115,22,.82)) !important;
}
body.page-resources-index .badge-src{
  background:linear-gradient(180deg, #eef4ff 0%, #e7efff 100%) !important;
  color:#1f4a92 !important;
  border:1px solid rgba(59,130,246,.14) !important;
}
body.page-resources-index .btn-resource{
  background:#ffffff !important;
  color:#1d4ed8 !important;
  border-color:rgba(59,130,246,.18) !important;
  box-shadow:0 12px 28px rgba(15,23,42,.08) !important;
}
body.page-resources-index .btn-resource:hover{
  background:#eff6ff !important;
  color:#1d4ed8 !important;
  border-color:rgba(59,130,246,.24) !important;
}

