@charset "utf-8";
@font-face{font-family:Urbanist;src:url('../fonts/Urbanist-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Urbanist;src:url('../fonts/Urbanist-Bold.ttf') format('truetype');font-weight:700 900;font-style:normal;font-display:swap}
@font-face{font-family:UrbanistExtraLight;src:url('../fonts/Urbanist-ExtraLight.ttf') format('truetype');font-weight:200;font-style:normal;font-display:swap}
:root{--ink:#061729;--blue:#0c4985;--sky:#439af5;--green:#a7ff31;--white:#fff;--paper:#f6f9fc;--text:#17263a;--muted:#587089;--line:#dbe5ef;--max:1180px;--nav:72px}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;font-family:Urbanist,Arial,sans-serif;color:var(--text);background:var(--white);font-size:20px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}sup.tm{font-size:.45em;line-height:0;vertical-align:super;font-weight:700;margin:0;letter-spacing:0;display:inline}h1,h2,h3{margin:0 0 .5em;line-height:1.06;letter-spacing:-.025em}h1{font-size:clamp(44px,6.1vw,76px);font-weight:900}h2{font-size:clamp(34px,4.4vw,54px);font-weight:900}h3{font-size:27px;font-weight:800}p{margin:0 0 1.15em}.container{width:min(var(--max),calc(100% - 48px));margin:0 auto}.container.narrow{max-width:840px}.center{text-align:center}.intro-tight{max-width:860px}.strong{font-weight:800}.fine{font-size:14px;opacity:.7}.eyebrow{font-size:14px;letter-spacing:.18em;text-transform:uppercase;font-weight:900;color:var(--sky);margin-bottom:14px}.section{padding:88px 0}.white-section{background-color:#fff;background-image:url('../images/branding/VB-ghost-logo-blue.webp');background-repeat:repeat-y;background-position:center top;background-size:100% auto;color:var(--text);position:relative;overflow:hidden}.brand-section{background-color:#0c4985;background-image:url('../images/branding/VB-ghost-logo-white.webp'),linear-gradient(145deg,#082847,#0c4985 58%,#123b61);background-repeat:repeat-y,no-repeat;background-position:center top,center;background-size:100% auto,cover;color:#fff;position:relative;overflow:hidden}.dark-section{background-color:#061729;background-image:url('../images/branding/VB-ghost-logo-white.webp');background-repeat:repeat-y;background-position:center top;background-size:100% auto;color:#fff;position:relative;overflow:hidden}.brand-section h2,.dark-section h2,.final-cta h2{color:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:64px}.align-center{align-items:center}.actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 24px;border-radius:0 0 0 0;border-top-left-radius:18px;font-weight:900;font-size:17px;letter-spacing:.01em;transition:transform .2s ease,background .2s ease,border .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--green);color:#071523;border:2px solid var(--green)}.btn-outline{background:transparent;color:#fff;border:2px solid var(--green)}.btn-dark{background:#082e53;color:#fff;border:2px solid #082e53}.btn-large{padding:17px 32px;font-size:19px}.text-link{font-weight:900;color:var(--green);border-bottom:1px solid currentColor;padding-bottom:2px}.text-link.dark{color:var(--blue)}.relief-process{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.relief-process .site-visual{margin:0;width:100%}.relief-process .btn{align-self:flex-start}
/* NAV */
.sd-nav{position:fixed;top:0;left:0;width:100%;height:var(--nav);padding:0 24px;background:rgba(4,18,33,.86);backdrop-filter:blur(10px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;z-index:9999;border-bottom:1px solid rgba(255,255,255,.08)}.sd-nav-left{justify-self:start}.sd-nav-center{justify-self:center}.sd-nav-right{justify-self:end}.nav-cta{display:inline-flex;align-items:center;gap:7px;color:#fff;border:0;padding:7px 0;font-size:14px;font-weight:800}.nav-phone-svg{width:17px;height:17px;display:block;flex:0 0 17px;color:var(--green)}.brand{display:flex;flex-direction:column;align-items:center;line-height:1;text-align:center;color:#fff}.brand-main{font-size:22px;font-weight:900;letter-spacing:.12em}.brand-sub{font-size:9px;letter-spacing:.08em;margin-top:5px;color:#dbeafe}.menu-btn{width:40px;height:30px;border:0;background:transparent;display:flex;flex-direction:column;justify-content:space-between;padding:4px;cursor:pointer}.menu-btn span{height:3px;background:#fff;border-radius:3px;width:100%}.menu-overlay{position:fixed;inset:0;background:rgba(0,0,0,.58);opacity:0;visibility:hidden;z-index:9998;transition:.25s}.side-panel{position:fixed;top:0;right:-360px;width:min(360px,88vw);height:100%;overflow:auto;background:#0d1f32;color:#fff;z-index:10000;padding:26px;transition:right .28s ease}.body-menu-open .menu-overlay{opacity:1;visibility:visible}.body-menu-open .side-panel{right:0}.panel-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.12)}.panel-head small{display:block;color:#9ab3ca;margin-top:4px}.panel-close{border:0;background:transparent;color:#fff;font-size:32px;cursor:pointer}.panel-nav{list-style:none;margin:18px 0;padding:0}.panel-nav li{margin:0}.panel-nav a{display:block;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:16px}.panel-nav a:hover{color:var(--green)}.panel-cta{margin-top:22px}.back-top{position:fixed;right:20px;bottom:20px;width:46px;height:46px;border-radius:50%;border:1px solid var(--green);background:rgba(6,23,41,.9);color:#fff;z-index:9000;display:none;cursor:pointer;font-size:20px}
/* HERO */
.hero{min-height:760px;padding:calc(var(--nav) + 80px) 0 78px;background-color:#061729;background-image:url('../images/branding/VB-ghost-logo-white.webp'),radial-gradient(circle at 80% 20%,rgba(67,154,245,.22),transparent 32%),linear-gradient(145deg,#04111f,#061729 56%,#0c4985);background-repeat:repeat-y,no-repeat,no-repeat;background-position:center top,center,center;background-size:100% auto,cover,cover;color:#fff;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.17fr .83fr;gap:72px;align-items:center;position:relative;z-index:2}.hero-sidecopy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:520px}.hero-sidecopy .hero-lead{max-width:520px;margin-bottom:10px}.hero-sidecopy .actions{margin-top:18px}.hero h1 span{color:var(--sky)}.hero-lead{font-size:22px;max-width:760px;color:#e8f1fa}.outcome-intro{font-size:20px;font-weight:800;margin-top:28px}.outcome-intro strong{color:var(--green)}.outcome-line{font-size:18px;margin-top:8px;color:#dce8f5}.hero-system{position:relative;min-height:500px;display:flex;flex-direction:column;justify-content:center;gap:16px}.system-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);padding:26px;border-top-left-radius:28px;box-shadow:0 20px 60px rgba(0,0,0,.2);backdrop-filter:blur(5px)}.main-card strong{display:block;font-size:31px;line-height:1.08}.main-card em{display:block;color:var(--green);font-style:normal;margin-top:7px;font-weight:800}.mini{font-size:11px;letter-spacing:.2em;color:var(--sky);font-weight:900}.system-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.system-flow span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;text-align:center;padding:12px 4px;border:1px solid rgba(167,255,49,.45);background:rgba(167,255,49,.05)}.system-customer{display:flex;justify-content:center;gap:10px;align-items:center;padding:18px;background:#fff;color:var(--ink);border-top-left-radius:18px;font-size:14px;font-weight:900}.system-customer b{color:var(--sky)}.impact-stamp{text-align:right;font-size:12px;letter-spacing:.14em;color:#a9c8e7;font-weight:800}.hero-glow{position:absolute;border-radius:50%;filter:blur(2px);opacity:.5}.hero-glow-a{width:480px;height:480px;right:-180px;top:70px;border:1px solid rgba(167,255,49,.28)}.hero-glow-b{width:260px;height:260px;right:80px;bottom:-130px;border:1px solid rgba(67,154,245,.35)}.outcome-strip{background-color:#fff;background-image:url('../images/branding/VB-ghost-logo-blue.webp');background-repeat:repeat-y;background-position:center top;background-size:100% auto;border-top:2px solid var(--green);border-bottom:1px solid #dce6ef;padding:14px 0;position:relative;overflow:hidden}.outcome-strip .container{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;color:var(--ink);font-size:13px;font-weight:900;letter-spacing:.05em}
/* COMPONENTS */
.three-cards,.five-cards,.two-cards{display:grid;gap:22px;margin-top:44px}.three-cards{grid-template-columns:repeat(3,1fr)}.five-cards{grid-template-columns:repeat(5,1fr)}.two-cards{grid-template-columns:repeat(2,1fr);max-width:900px}.pillar-card{background:#fff;color:var(--text);border:1px solid var(--line);border-top-left-radius:28px;padding:30px;box-shadow:0 10px 32px rgba(6,23,41,.07);display:flex;flex-direction:column}.brand-section .pillar-card{background:rgba(255,255,255,.065);color:#fff;border-color:rgba(255,255,255,.15);box-shadow:none}.pillar-card .num{font-size:12px;color:var(--sky);font-weight:900;letter-spacing:.16em;margin-bottom:26px}.pillar-card p{font-size:18px}.pillar-card a:not(.btn){margin-top:auto;color:var(--blue);font-weight:900}.brand-section .pillar-card a:not(.btn){color:var(--green)}.pillar-card.feature h2{font-size:38px;color:var(--ink)}.section-cta{margin-top:38px}.process-line{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:30px 0;font-weight:900}.process-line span{background:var(--ink);color:#fff;padding:11px 14px;border-top-left-radius:12px;font-size:14px;letter-spacing:.05em}.process-line b{color:var(--sky)}.eid-stack{display:grid;gap:14px}.eid-stack div{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:center;padding:20px;border:1px solid rgba(255,255,255,.14);border-top-left-radius:18px}.eid-stack strong{color:var(--green);font-size:24px}.eid-stack span{font-size:17px}.proof-mini{display:grid;gap:12px}.proof-mini>div{padding:17px 19px;border:1px solid var(--line);border-top-left-radius:16px}.proof-mini span{display:block;color:var(--sky);font-size:11px;letter-spacing:.15em;font-weight:900}.proof-mini strong{display:block;margin-top:4px}.final-cta{position:relative;background-color:#061729;background-image:url('../images/branding/VB-ghost-logo-white.webp'),linear-gradient(145deg,#061729,#0c4985);background-repeat:repeat-y,no-repeat;background-position:center top,center;background-size:100% auto,cover;color:#fff;padding:95px 0;overflow:hidden}.final-cta.compact{padding:72px 0}.final-cta .container{position:relative;z-index:1}.reward-stack{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:26px auto 32px}.reward-stack span{border:1px solid rgba(167,255,49,.48);padding:9px 12px;border-top-left-radius:12px;font-size:14px;font-weight:900}.signature{margin-top:28px;font-size:13px;letter-spacing:.1em;color:#b9d0e5}.inner-hero{padding:calc(var(--nav) + 72px) 0 70px;background-color:#061729;background-image:url('../images/branding/VB-ghost-logo-white.webp'),linear-gradient(145deg,#04111f,#061729 58%,#0c4985);background-repeat:repeat-y,no-repeat;background-position:center top,center;background-size:100% auto,cover;color:#fff;position:relative;overflow:hidden}.inner-hero h1{font-size:clamp(42px,5.2vw,68px)}.inner-hero p{font-size:22px;color:#dbe8f5;max-width:760px}.check{list-style:none;padding:0;margin:18px 0 28px}.check li{margin:9px 0;padding-left:24px;position:relative}.check li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}.dark-check li:before{color:var(--blue)}.matrix-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}.matrix-grid div{border:1px solid var(--line);border-top-left-radius:20px;padding:22px}.matrix-grid strong{display:block;color:var(--blue);font-size:21px}.matrix-grid span{display:block;font-size:16px;margin-top:5px;color:var(--muted)}.big-three{display:grid;gap:12px}.big-three div{display:flex;gap:18px;align-items:center;border:1px solid rgba(255,255,255,.14);padding:18px;border-top-left-radius:16px}.big-three span{color:var(--green);font-weight:900}.channel-cloud,.resistance-tags{display:flex;flex-wrap:wrap;gap:10px}.channel-cloud span,.resistance-tags span{border:1px solid var(--line);padding:10px 14px;border-top-left-radius:12px;font-weight:800;background:#fff}.big-copy{font-size:28px}.outcome-funnel{display:grid;gap:8px;max-width:880px}.outcome-funnel div{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:15px 20px;border:1px solid var(--line);border-top-left-radius:14px}.outcome-funnel span{color:var(--blue);font-size:12px;letter-spacing:.12em;font-weight:900}.score-table{border:1px solid var(--line);border-top-left-radius:24px;overflow:hidden;margin-top:28px}.score-table>div{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:16px 20px;border-bottom:1px solid var(--line)}.score-table>div:last-child{border-bottom:0}.score-head{background:var(--ink);color:#fff;font-weight:900}.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:42px}.case-card{border:1px solid var(--line);border-top-left-radius:26px;padding:28px;box-shadow:0 10px 30px rgba(6,23,41,.06)}.case-brand{font-size:13px;letter-spacing:.18em;font-weight:900;color:var(--blue)}.case-lesson{background:var(--paper);padding:14px 16px;border-left:4px solid var(--green);margin:18px 0;font-size:17px}.case-card a{font-size:15px;color:var(--blue);font-weight:900}.proof-questions p{border-bottom:1px solid rgba(255,255,255,.14);padding:10px 0;margin:0;font-weight:800}.source-note{font-size:16px;color:var(--muted)}.quote-card{padding:34px;background:var(--ink);color:#fff;border-top-left-radius:30px}.quote-card span{display:block;font-size:11px;letter-spacing:.18em;color:var(--green);font-weight:900}.quote-card strong{display:block;font-size:30px;line-height:1.1;margin-top:8px}.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.sector-grid span{padding:20px;border:1px solid var(--line);border-top-left-radius:16px;font-weight:800}.sign-list{display:grid;gap:16px;max-width:940px}.sign-card{display:grid;grid-template-columns:70px 1fr;gap:24px;padding:24px;border:1px solid var(--line);border-top-left-radius:20px}.sign-card>span{font-size:28px;color:var(--sky);font-weight:900}.sign-card h3{margin-bottom:5px}.sign-card p{font-size:17px;color:var(--muted);margin:0}.faq-list{display:grid;gap:10px}.faq-item{border:1px solid var(--line);border-top-left-radius:16px;overflow:hidden}.faq-q{width:100%;border:0;background:#fff;padding:18px 20px;text-align:left;font:800 18px Urbanist;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer}.faq-q .faq-question-text{color:inherit;font-size:inherit;flex:1 1 auto;min-width:0}.faq-q .faq-icon{color:var(--blue);font-size:24px;line-height:1;flex:0 0 auto;transition:transform .2s ease}.faq-a{display:none;padding:0 20px 20px}.faq-item.open .faq-a{display:block}.faq-item.open .faq-q .faq-icon{transform:rotate(45deg)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px}.contact-form{display:grid;gap:16px;border:1px solid var(--line);padding:28px;border-top-left-radius:28px;background:var(--paper)}.contact-form label{display:grid;gap:6px;font-size:14px;font-weight:800}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #bfd0df;background:#fff;padding:13px;font:17px Urbanist;border-radius:0;border-top-left-radius:10px}.hp-field{position:absolute;left:-10000px}.form-note{font-size:14px;color:var(--muted);background:#edf4fa;padding:12px}.dark-fine{color:var(--muted)}code{font-family:Consolas,monospace;font-size:.9em}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.insight-card{padding:26px;border:1px solid var(--line);border-top-left-radius:24px;display:flex;flex-direction:column}.insight-card p{font-size:17px;color:var(--muted)}.insight-card a{margin-top:auto;color:var(--blue);font-weight:900}.article p{font-size:20px;line-height:1.65}.article-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:38px}.legal-copy h2{font-size:32px;margin-top:34px}.site-map-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.site-map-grid a{display:block;padding:20px;border:1px solid var(--line);border-top-left-radius:16px}.site-map-grid strong{display:block;color:var(--blue)}.site-map-grid span{display:block;font-size:15px;color:var(--muted);margin-top:4px}

/* VISIBLE B BRAND ASSETS */
.brand-logo{display:block;width:142px;max-height:48px;object-fit:contain}
.footer-brand .brand-logo{width:205px;max-height:none}
.hero>.container,.inner-hero>.container,.brand-section>.container,.dark-section>.container,.final-cta>.container,.white-section>.container,.outcome-strip>.container,.site-footer>.container{position:relative;z-index:1}
.case-source{margin:16px 0 0;font-size:14px;color:var(--muted);font-weight:800;line-height:1.4}
.case-source em{font-weight:700}
/* FOOTER */
.site-footer{background-color:#030b13;background-image:url('../images/branding/VB-ghost-logo-white.webp');background-repeat:repeat-y;background-position:center top;background-size:100% auto;color:#c9d7e5;padding:54px 0 24px;position:relative;overflow:hidden}.footer-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:50px}.footer-brand{align-items:flex-start;text-align:left}.footer-line{font-size:16px;margin-top:18px;color:#fff}.footer-links{display:flex;flex-wrap:wrap;gap:9px 18px;align-content:start}.footer-links a{font-size:14px}.footer-links a:hover{color:var(--green)}.legal-row{margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:#849bb0}.legal-row span{margin-left:auto;max-width:650px}
/* REVEAL */
.reveal{opacity:0;transform:translateY(12px);transition:opacity .55s ease,transform .55s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){:root{--nav:64px}.hero{min-height:auto}.hero-grid,.split,.contact-grid,.footer-grid{grid-template-columns:1fr}.hero-grid{gap:30px}.hero-system{min-height:0}.five-cards{grid-template-columns:repeat(2,1fr)}.three-cards,.insight-grid,.sector-grid{grid-template-columns:repeat(2,1fr)}.case-grid{grid-template-columns:1fr}.matrix-grid{grid-template-columns:repeat(2,1fr)}.legal-row span{margin-left:0;width:100%}.sd-nav{height:var(--nav)}.section{padding:70px 0}}
@media(max-width:640px){body{font-size:18px}.brand-logo{width:118px}.footer-brand .brand-logo{width:180px}.container{width:min(100% - 28px,var(--max))}.sd-nav{padding:0 14px}.nav-cta{font-size:12px;padding:6px 0}.brand-main{font-size:18px}.brand-sub{font-size:7px}.menu-btn{width:34px;height:26px}.hero{padding:calc(var(--nav) + 52px) 0 56px}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:46px}.hero-lead,.inner-hero p{font-size:19px}.system-flow{grid-template-columns:1fr}.system-customer{flex-wrap:wrap}.outcome-strip .container{justify-content:flex-start}.section{padding:56px 0}.three-cards,.five-cards,.two-cards,.insight-grid,.sector-grid,.matrix-grid,.site-map-grid{grid-template-columns:1fr}.pillar-card{padding:24px}.process-line{gap:8px}.process-line b{display:none}.process-line span{width:100%;text-align:center}.eid-stack div{grid-template-columns:1fr;gap:4px}.outcome-funnel div,.score-table>div{grid-template-columns:1fr;gap:4px}.sign-card{grid-template-columns:48px 1fr;gap:14px}.inner-hero{padding:calc(var(--nav) + 52px) 0 54px}.article p{font-size:18px}.footer-grid{gap:26px}.side-panel{padding:22px}.reward-stack{justify-content:flex-start}.final-cta .center{text-align:left}.final-cta .reward-stack{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

/* SITE VISUALS — added without altering existing site design */
.site-visual{width:min(var(--max),calc(100% - 48px));margin:42px auto;position:relative;z-index:2}
.site-visual--embedded{width:100%;margin:40px auto 0}
.site-visual img{display:block;width:100%;height:auto;border:1px solid rgba(6,23,41,.18);border-top-left-radius:28px;box-shadow:0 22px 60px rgba(6,23,41,.16)}
.dark-section .site-visual img,.brand-section .site-visual img{border-color:rgba(255,255,255,.18);box-shadow:0 22px 60px rgba(0,0,0,.28)}
@media(max-width:640px){.site-visual{width:min(100% - 28px,var(--max));margin:28px auto}.site-visual--embedded{width:100%;margin-top:28px}.site-visual img{border-top-left-radius:20px}}

/* =========================================================
   LEGACY VISIBLE B HERO + TICKER TAPES
   Reintroduced from the supplied 2026-09-07 index/CSS.
   Existing 2026 site architecture remains in place.
   ========================================================= */

/* Ticker core */
.ticker-tape{
  width:100%;
  position:relative;
  overflow:hidden;
  background:#02295a;
  border-top:2px solid var(--green);
  border-bottom:2px solid var(--green);
  padding:0;
  min-height:0;
  z-index:4;
}
.ticker-window{
  display:block;
  width:100%;
  overflow:hidden;
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
  -ms-user-select:none;
  touch-action:pan-y;
}
.ticker-window.is-dragging{cursor:grabbing}
.ticker-track{
  display:flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  width:max-content;
  max-width:none;
  white-space:nowrap;
  will-change:transform;
  transform:translate3d(0,0,0);
}
.ticker-item,
.ticker-text{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:none;
  white-space:nowrap;
  color:#fff;
  font-family:Urbanist,Arial,sans-serif;
  font-size:17px;
  line-height:1.3;
  font-weight:700;
  letter-spacing:.015em;
  padding:12px 28px 12px 0;
  text-decoration:none;
  user-select:none;
  -webkit-user-select:none;
  -ms-user-select:none;
  -webkit-user-drag:none;
}
.ticker-tape:not(.stats-ticker) .ticker-window,
.ticker-tape:not(.stats-ticker) .ticker-track{
  height:46px;
  min-height:46px;
}
.ticker-tape.ticker-on-white{
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(1px);
}
.ticker-tape.ticker-on-white .ticker-item,
.ticker-tape.ticker-on-white .ticker-text,
.ticker-tape.ticker-on-white .stat-copy{color:#000}
.ticker-tape.ticker-on-white .stat-source{color:#4f4f4f}


/* Statistics ticker — same copy/source structure from the old index,
   with number circles rendered directly so no legacy image assets are required. */
.stats-ticker .ticker-window{padding:10px 0 6px}
.stats-ticker .ticker-track{align-items:stretch}
.stats-ticker .ticker-item{
  width:250px;
  min-height:280px;
  padding:22px 26px 18px !important;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  text-align:center;
  white-space:normal;
}
.stats-ticker .stat-circle{
  width:96px;
  height:96px;
  margin:0 auto 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  border:2px solid var(--blue);
  border-radius:50%;
  color:var(--blue);
  background:rgba(67,154,245,.05);
  font-size:27px;
  font-weight:900;
  line-height:1;
}
.stats-ticker .stat-copy{
  display:block;
  min-height:94px;
  font-size:17px;
  line-height:1.4;
  text-align:center;
}
.stats-ticker .stat-source{
  display:block;
  width:100%;
  margin-top:auto;
  padding-top:14px;
  font-size:12px;
  line-height:1.35;
  text-align:center;
}

/* Hero: old core message is now the primary left-hand hero;
   the current 2026 message remains integrated on the right. */
.home-hero{
  min-height:760px;
  padding:var(--nav) 0 78px;
}
.home-hero > .ticker-tape{position:relative;z-index:5}
.home-hero .hero-grid--legacy{
  grid-template-columns:minmax(0,1.13fr) minmax(360px,.87fr);
  gap:68px;
  align-items:center;
  padding-top:58px;
}
.legacy-hero-message,
.current-hero-message{
  text-align:left;
  min-width:0;
}
.legacy-hero-message .hero-rise{
  display:block;
  width:100%;
  margin:0 0 42px;
  padding:0;
  font-family:UrbanistExtraLight,Urbanist,Arial,sans-serif;
  font-size:clamp(38px,4.35vw,58px);
  font-weight:200;
  line-height:1.06;
  letter-spacing:-.025em;
  color:#d79633;
  text-align:left;
  text-transform:uppercase;
}
.legacy-hero-message .hero-rise span{color:inherit}
.legacy-hero-message .hero-rise-light{
  font-family:UrbanistExtraLight,Urbanist,Arial,sans-serif;
  font-weight:200;
}
.legacy-hero-message .hero-rise-bold{
  font-family:Urbanist,Arial,sans-serif;
  font-weight:700;
}
.legacy-hero-message .hero-profit-line{
  max-width:760px;
  margin:0 0 40px;
  color:#fff;
  font-size:clamp(21px,2vw,29px);
  line-height:1.3;
  font-weight:700;
  text-align:left;
}
.legacy-hero-message .hero-invisible-line{
  margin:0 0 26px;
  color:#fff;
  font-size:clamp(27px,3vw,38px);
  line-height:1.14;
  font-weight:800;
  text-align:left;
}
.legacy-hero-message .hero-invisible-line span{color:var(--sky)}
.legacy-hero-message .hero-brand-logo{
  display:block;
  width:225px;
  max-width:46vw;
  height:auto;
  margin:0 auto 0 0;
}
.current-hero-message{
  max-width:520px;
  justify-self:end;
  padding:30px 0 0;
}
.current-hero-message .current-hero-title{
  color:#fff;
  font-size:clamp(32px,3.2vw,46px);
  line-height:1.06;
  margin-bottom:22px;
}
.current-hero-message .current-hero-title span{color:var(--sky)}
.current-hero-message .hero-lead{font-size:20px;line-height:1.5}
.current-hero-message .outcome-intro{font-size:18px;margin-top:24px}
.current-hero-message .outcome-line{font-size:16px;line-height:1.45}

/* Keep the first white ticker close to the hero, as in the supplied index. */
#ticker-tape-2{scroll-margin-top:var(--nav)}

@media(max-width:980px){
  .home-hero .hero-grid--legacy{
    grid-template-columns:1fr;
    gap:46px;
    padding-top:46px;
  }
  .current-hero-message{max-width:760px;justify-self:start;padding-top:0}
  .legacy-hero-message .hero-rise{font-size:clamp(38px,7vw,52px)}
}

@media(max-width:640px){
  .home-hero{padding:var(--nav) 0 56px}
  .home-hero .hero-grid--legacy{padding-top:38px;gap:38px}
  .ticker-tape:not(.stats-ticker) .ticker-window,
  .ticker-tape:not(.stats-ticker) .ticker-track{height:44px;min-height:44px}
  .ticker-item,.ticker-text{font-size:16px;padding:11px 24px 11px 0}
  .legacy-hero-message .hero-rise{font-size:40px;margin-bottom:32px}
  .legacy-hero-message .hero-profit-line{font-size:21px;margin-bottom:32px}
  .legacy-hero-message .hero-invisible-line{font-size:29px;margin-bottom:22px}
  .legacy-hero-message .hero-brand-logo{width:190px;max-width:55vw}
  .current-hero-message .current-hero-title{font-size:34px}
  .stats-ticker .ticker-item{width:230px;min-height:265px;padding:20px 22px 16px !important}
  .stats-ticker .stat-circle{width:88px;height:88px;font-size:25px}
}

/* =========================================================
   HOME INDEX REFINEMENT — HERO / TICKERS / COUNTER
   ========================================================= */

/* Ticker tapes: motion and text only — no bars, fills or divider lines. */
.ticker-tape,
.ticker-tape.ticker-on-white{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
.ticker-tape .ticker-window{background:transparent !important;border:0 !important}

/* First section: the restored original hero message stands alone. */
.home-hero{
  min-height:720px;
  padding:var(--nav) 0 76px;
  background-color:#061729;
  background-image:url('../images/sitewide/VB-brand-tall-background-1-ghost.png'),radial-gradient(circle at 80% 20%,rgba(67,154,245,.18),transparent 32%),linear-gradient(145deg,#04111f,#061729 56%,#0c4985) !important;
  background-repeat:repeat,no-repeat,no-repeat !important;
  background-position:top left,center,center !important;
  background-size:auto,cover,cover !important;
}
.home-hero-single{
  position:relative;
  z-index:2;
  padding-top:66px;
}
.home-hero-single .legacy-hero-message{
  width:min(860px,100%);
  max-width:860px;
}
.home-hero-single .hero-rise{font-size:clamp(42px,5.1vw,66px)}
.home-hero-single .hero-profit-line{max-width:820px}

/* The former right side of the hero is now its own blue section. */
.home-growth-message{
  background-color:#061729 !important;
  background-image:url('../images/sitewide/VB-brand-tall-background-1-ghost.png'),linear-gradient(145deg,#061729,#0c4985 64%,#123b61) !important;
  background-repeat:repeat,no-repeat !important;
  background-position:top left,center !important;
  background-size:auto,cover !important;
}
.home-growth-message .split{grid-template-columns:1fr 1fr;gap:72px}
.home-growth-message .growth-message-heading{text-align:left}
.home-growth-message .growth-message-heading h2{margin-bottom:0;color:#fff}
.home-growth-message .growth-message-heading h2 span{color:var(--sky)}
.home-growth-message .growth-message-copy{text-align:left}
.home-growth-message .growth-message-copy p{color:#e8f1fa}
.home-growth-message .growth-message-copy .outcome-intro{margin-top:0;color:#fff;font-size:18px}
.home-growth-message .growth-message-copy .outcome-intro strong{color:var(--green)}
.home-growth-message .growth-message-copy .outcome-line{font-size:16px;color:#dce8f5}
.home-growth-message .growth-message-copy .outcome-line strong{color:#fff}

/* Restored competitor-growth counter with the previous full-gradient treatment. */
.competitor-growth-section{padding-top:68px;padding-bottom:68px}
.competitor-growth-card{
  width:min(100%,1072px);
  margin:0 auto;
  padding:48px 34px 42px;
  border-radius:34px;
  color:#fff;
  text-align:center;
  background-color:#02295a;
  background-image:url('../images/sitewide/VB-brand-tall-background-1-ghost.png'),linear-gradient(180deg,#02295a,#02295a,#0761d2,#02295a);
  background-repeat:repeat,no-repeat;
  background-position:top left,center;
  background-size:auto,cover;
  overflow:hidden;
}
.competitor-growth-card .eyebrow{color:var(--green);text-align:center}
.competitor-growth-card h2{color:#fff;text-align:center;margin:0 0 6px}
.competitor-growth-card h3{color:var(--sky);text-align:center;margin:0 0 22px;font-size:22px}
.competitor-growth-card .counter{
  display:block;
  min-width:10ch;
  margin:0 auto;
  color:#fff;
  font-size:clamp(42px,6vw,64px);
  line-height:1.05;
  font-weight:900;
  letter-spacing:.02em;
  text-align:center;
  white-space:nowrap;
  font-variant-numeric:tabular-nums lining-nums;
  font-feature-settings:"tnum" 1,"lnum" 1;
}
.competitor-growth-card .counter.secondary{margin-top:26px}
.competitor-growth-card .counter-label{margin-top:7px;color:#fff;font-size:15px;text-align:center}
.competitor-growth-card .disclaimer-counter{max-width:720px;margin:20px auto 0;color:#dce8f5;font-size:15px;line-height:1.4;text-align:center}

/* Stats ticker: use the supplied artwork rather than generated circles. */
.stats-ticker .ticker-item{width:250px;min-height:280px;padding:22px 26px 18px !important}
.stats-ticker .stat-circle{
  width:104px !important;
  height:104px !important;
  margin:0 auto 16px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
}
.stats-ticker .stat-circle img{
  display:block;
  width:104px;
  height:104px;
  object-fit:contain;
  border:0;
}

@media(max-width:980px){
  .home-hero{min-height:auto}
  .home-hero-single{padding-top:54px}
  .home-growth-message .split{grid-template-columns:1fr;gap:30px}
  .home-growth-message .growth-message-copy{max-width:760px}
}

@media(max-width:640px){
  .home-hero{padding:var(--nav) 0 56px}
  .home-hero-single{padding-top:40px}
  .home-hero-single .hero-rise{font-size:40px}
  .competitor-growth-section{padding-top:48px;padding-bottom:48px}
  .competitor-growth-card{border-radius:22px;padding:34px 20px 30px}
  .competitor-growth-card .counter{font-size:clamp(38px,12vw,50px);min-width:0}
  .stats-ticker .ticker-item{width:230px;min-height:265px;padding:20px 22px 16px !important}
  .stats-ticker .stat-circle,.stats-ticker .stat-circle img{width:92px !important;height:92px !important}
}

/* =========================================================
   2026-09-12 VISIBLE B BACKGROUND CONSISTENCY PASS
   - Fixed-size centered homepage collage
   - No decorative hero circles
   - One ghost-brand proportion sitewide
   - Exact blue background gradient: #051525 -> #082e53
   ========================================================= */
:root{
  --ink:#051525;
  --vb-bg-dark:#051525;
  --vb-bg-light:#082e53;
}

/* Decorative circles are intentionally removed. */
.hero-glow,
.hero-glow-a,
.hero-glow-b{display:none !important;}

/* Homepage hero uses only the centered collage over the exact blue gradient. */
.home-hero,
.hero.home-hero{
  background-color:#051525 !important;
  background-image:linear-gradient(145deg,#051525,#082e53) !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:cover !important;
}
.home-hero .hero-collage-bg{
  left:50% !important;
  top:50% !important;
  width:1012px !important;
  height:auto !important;
  max-width:none !important;
  transform:translate(-50%,-50%) !important;
  opacity:.25 !important;
}

/*
   Match the Rise Above The Noise ghost-brand treatment everywhere:
   same 2048px artwork, natural proportions, tiled from the upper-left.
*/
.brand-section,
.dark-section,
.inner-hero,
.final-cta,
.site-footer,
.home-growth-message{
  background-color:#051525 !important;
  background-image:url('../images/sitewide/VB-brand-tall-background-1-ghost.png'),linear-gradient(145deg,#051525,#082e53) !important;
  background-repeat:repeat,no-repeat !important;
  background-position:top left,center !important;
  background-size:auto,cover !important;
}

/* Same ghost-brand proportions on white, recolored for readable contrast. */
.white-section,
.outcome-strip{
  background-color:#fff !important;
  background-image:url('../images/sitewide/VB-brand-tall-background-1-ghost-blue.png') !important;
  background-repeat:repeat !important;
  background-position:top left !important;
  background-size:auto !important;
}

/* The counter is also a blue branded background, so keep it consistent. */
.competitor-growth-card{
  background-color:#051525 !important;
  background-image:url('../images/sitewide/VB-brand-tall-background-1-ghost.png'),linear-gradient(145deg,#051525,#082e53) !important;
  background-repeat:repeat,no-repeat !important;
  background-position:top left,center !important;
  background-size:auto,cover !important;
}

/* Homepage growth opportunity ticker directly below the CTA. */
.home-growth-message{padding-bottom:34px;}
.opportunity-ticker-wrap{
  margin-top:22px;
  margin-bottom:0;
}
.opportunity-ticker{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
.opportunity-ticker .ticker-window,
.opportunity-ticker .ticker-track{
  background:transparent !important;
  border:0 !important;
}
.opportunity-ticker .ticker-item{
  color:#fff !important;
  font-weight:900 !important;
  letter-spacing:.02em;
  padding-right:58px;
}

@media(max-width:980px){
  /* Artwork does not scale down on tablet/mobile; only the copy responds. */
  .home-hero .hero-collage-bg{
    width:1012px !important;
    max-width:none !important;
  }
}
@media(max-width:640px){
  .home-hero .hero-collage-bg{
    width:1012px !important;
    max-width:none !important;
  }
  .opportunity-ticker-wrap{margin-top:18px;}
  .home-growth-message{padding-bottom:28px;}
}


/* =========================================================
   2026-09-12 VISIBLE B UX / FAQ CONSISTENCY PASS
   - Center homepage hero copy
   - Ticker treatments
   - Floating imagery (no CSS frames)
   - Blue-background button standard
   - Transparent up-arrow button
   - Smooth, fixed-width growth counter
   - Per-page FAQ accordions
   ========================================================= */

/* Center every piece of wording in the homepage hero while retaining its fixed artwork. */
.home-hero-single,
.home-hero-single .legacy-hero-message{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.home-hero-single .legacy-hero-message{
  width:min(920px,100%) !important;
  max-width:920px !important;
}
.home-hero-single .legacy-hero-message .hero-rise,
.home-hero-single .legacy-hero-message .hero-profit-line,
.home-hero-single .legacy-hero-message .hero-invisible-line{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.home-hero-single .legacy-hero-message .hero-brand-logo{
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Second ticker: Visible B sky blue background with white copy. */
#ticker-tape-2{
  background:#439af5 !important;
  background-image:none !important;
  border:0 !important;
}
#ticker-tape-2 .ticker-window,
#ticker-tape-2 .ticker-track{background:transparent !important;}
#ticker-tape-2 .ticker-item,
#ticker-tape-2 .ticker-text{color:#fff !important;font-weight:800 !important;}

/* New growth-opportunity ticker breaks out of the content container to the full viewport. */
.opportunity-ticker-wrap{
  width:100vw !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
.opportunity-ticker{width:100vw !important;max-width:none !important;}

/* Images float where placed: no browser/CSS frame, radius, backing plate or drop shadow. */
.site-visual,
.site-visual--embedded{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
.site-visual img,
.white-section .site-visual img,
.brand-section .site-visual img,
.dark-section .site-visual img{
  display:block;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  background:transparent !important;
}
.relief-image-blurb{
  max-width:680px;
  margin:2px 0 8px;
  color:#587089;
  font-size:17px;
  line-height:1.55;
}

/* Blue-background button standard: green frame, transparent center, white copy. */
.hero .btn,
.home-growth-message .btn,
.brand-section .btn,
.dark-section .btn,
.inner-hero .btn,
.final-cta .btn,
.site-footer .btn,
.side-panel .btn{
  background:transparent !important;
  color:#fff !important;
  border:2px solid #a7ff31 !important;
  box-shadow:none !important;
}
.hero .btn:hover,
.home-growth-message .btn:hover,
.brand-section .btn:hover,
.dark-section .btn:hover,
.inner-hero .btn:hover,
.final-cta .btn:hover,
.site-footer .btn:hover,
.side-panel .btn:hover{
  background:rgba(167,255,49,.08) !important;
}
/* Any button that was black now uses the approved dark blue instead. */
.btn-dark{
  background:#082e53 !important;
  color:#fff !important;
  border:2px solid #082e53 !important;
  box-shadow:none !important;
}
.btn-dark:hover{
  background:#082e53 !important;
  border-color:#082e53 !important;
}

/* Stats ticker: transparent moving content over the same white ghost-brand field. */
.stats-ticker{
  background-color:#fff !important;
  background-image:url('../images/sitewide/VB-brand-tall-background-1-ghost-blue.png') !important;
  background-repeat:repeat !important;
  background-position:top left !important;
  background-size:auto !important;
  border:0 !important;
  box-shadow:none !important;
}
.stats-ticker .ticker-window,
.stats-ticker .ticker-track,
.stats-ticker .ticker-item{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Growth counter: fixed numeric geometry prevents digit-width and layout jumps. */
.competitor-growth-card .counter{
  width:10ch !important;
  min-width:10ch !important;
  height:1.12em;
  display:flex !important;
  align-items:center;
  justify-content:center;
  font-weight:900 !important;
  font-variant-numeric:tabular-nums lining-nums !important;
  font-feature-settings:"tnum" 1,"lnum" 1 !important;
  letter-spacing:.01em !important;
}
.competitor-growth-card .counter-label{
  min-height:1.5em;
}

/* Floating back-to-top control: stronger green ring, transparent center. */
.back-top{
  border:3px solid #a7ff31 !important;
  background:transparent !important;
  color:#a7ff31 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  text-shadow:0 1px 3px rgba(5,21,37,.70);
  font-size:28px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

/* Per-page FAQs: compact, readable and compatible with the existing accordion JS. */
.sd-page-faqs .faq-intro{max-width:760px;margin:0 auto 30px;text-align:center;}
.sd-page-faqs .faq-list{max-width:940px;margin:0 auto;}
.sd-page-faqs .faq-item{
  background:rgba(255,255,255,.90);
  border:1px solid rgba(5,21,37,.15);
  border-radius:16px 0 0 0;
  box-shadow:none;
}
.sd-page-faqs .faq-q{color:#051525;background:rgba(255,255,255,.94);}
.sd-page-faqs .faq-a{color:#17263a;background:rgba(255,255,255,.94);}
.sd-page-faqs .faq-a p:last-child{margin-bottom:0;}

@media(max-width:640px){
  .home-hero-single .legacy-hero-message .hero-rise{font-size:clamp(34px,10vw,40px) !important;}
  .home-hero-single .legacy-hero-message .hero-profit-line{font-size:20px !important;}
  .home-hero-single .legacy-hero-message .hero-invisible-line{font-size:27px !important;}
  .opportunity-ticker-wrap{margin-top:18px !important;}
  .competitor-growth-card .counter{width:10ch !important;min-width:10ch !important;}
}

/* Specificity lock: the stats band carries the white ghost field while the ticker itself remains frameless. */
#ticker-tape-5{
  background:#fff url('../images/sitewide/VB-brand-tall-background-1-ghost-blue.png') repeat top left !important;
  border:0 !important;
  box-shadow:none !important;
}
#ticker-tape-5 .ticker-window,
#ticker-tape-5 .ticker-track,
#ticker-tape-5 .ticker-item{background:transparent !important;border:0 !important;box-shadow:none !important;}


/* =========================================================
   2026-09-12 COUNTER STABILITY LOCK
   Fixed character slots eliminate width/reflow jumps while the number changes.
   ========================================================= */
.competitor-growth-card .counter{
  width:auto !important;
  min-width:0 !important;
  height:1.08em !important;
  min-height:1.08em !important;
  display:block !important;
  position:relative;
  margin:0 auto !important;
  overflow:visible;
  white-space:nowrap;
  text-align:center;
  line-height:1 !important;
  font-weight:900 !important;
  font-variant-numeric:tabular-nums lining-nums !important;
  font-feature-settings:"tnum" 1,"lnum" 1 !important;
  letter-spacing:0 !important;
  contain:layout paint;
}
.competitor-growth-card .counter-inner{
  display:inline-flex;
  align-items:baseline;
  justify-content:center;
  height:1em;
  line-height:1;
  white-space:nowrap;
  vertical-align:top;
  transform:translateZ(0);
  backface-visibility:hidden;
}
.competitor-growth-card .counter-glyph{
  display:inline-block;
  flex:0 0 auto;
  line-height:1;
  font:inherit;
  font-weight:900 !important;
  text-align:center;
  font-variant-numeric:tabular-nums lining-nums !important;
  font-feature-settings:"tnum" 1,"lnum" 1 !important;
}
.competitor-growth-card .counter-digit{width:.64em;}
.competitor-growth-card .counter-comma{width:.28em;}
@media(max-width:640px){
  .competitor-growth-card .counter{
    width:auto !important;
    min-width:0 !important;
    height:1.08em !important;
    min-height:1.08em !important;
  }
}


/* =========================================================
   2026-09-12 TWO-TIER COUNTER RESTORE
   Keeps both rows' geometry reserved, so revealing tier two cannot move the card.
   ========================================================= */
.competitor-growth-card .counter-tier{
  width:min(560px,100%);
  margin:20px auto 0;
  min-height:118px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
}
.competitor-growth-card .counter-tier-secondary{
  margin-top:12px;
  visibility:hidden;
  opacity:0;
  transform:none !important;
  transition:opacity .18s ease;
}
.competitor-growth-card .counter-tier-secondary.is-visible{
  visibility:visible;
  opacity:1;
}
.competitor-growth-card .counter-year{
  color:#a7ff31;
  font-size:13px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.14em;
  margin-bottom:7px;
}
.competitor-growth-card .counter{
  display:block !important;
  width:auto !important;
  min-width:0 !important;
  height:1.08em !important;
  min-height:1.08em !important;
  margin:0 auto 7px !important;
  overflow:visible !important;
  contain:layout paint;
  font-weight:900 !important;
  font-variant-numeric:tabular-nums lining-nums !important;
  font-feature-settings:"tnum" 1,"lnum" 1 !important;
  line-height:1 !important;
  white-space:nowrap;
  text-align:center;
}
.competitor-growth-card .counter-label{
  min-height:1.5em;
  margin:0;
  text-align:center;
}
.competitor-growth-card .counter-inner{
  display:inline-flex;
  align-items:baseline;
  justify-content:center;
  height:1em;
  line-height:1;
  white-space:nowrap;
  vertical-align:top;
}
.competitor-growth-card .counter-glyph{
  display:inline-block;
  flex:0 0 auto;
  font:inherit;
  font-weight:900 !important;
  line-height:1;
  text-align:center;
  font-variant-numeric:tabular-nums lining-nums !important;
  font-feature-settings:"tnum" 1,"lnum" 1 !important;
}
.competitor-growth-card .counter-digit{width:.64em;}
.competitor-growth-card .counter-comma{width:.28em;}
@media(max-width:640px){
  .competitor-growth-card .counter-tier{min-height:106px;margin-top:16px;}
  .competitor-growth-card .counter-year{font-size:12px;}
}

/* Trademark integrity: keep the mark with the final trademark word. */
.tm-pair{white-space:nowrap}

/* =========================================================
   SITEWIDE CONTENT-IMAGE CONTAINMENT — 2026-09-12
   Keep content artwork inside the same responsive content width.
   The intentional fixed-size homepage hero background is excluded.
========================================================= */
.site-visual{
  max-width:var(--max) !important;
}

/* Embedded visuals that sit directly inside a section must use the
   same gutters/max-width as .container instead of expanding to 100vw. */
.site-visual--embedded{
  width:min(var(--max),calc(100% - 48px)) !important;
  max-width:var(--max) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* When the visual is already inside .container, do not add a second gutter. */
.container .site-visual--embedded{
  width:100% !important;
  max-width:100% !important;
}

/* Defensive containment for all normal content images. */
.container img:not(.hero-collage-bg),
.site-visual img,
.article img,
.pillar-card img,
.insight-card img{
  max-width:100% !important;
  height:auto !important;
  object-fit:contain;
}

@media(max-width:640px){
  .site-visual--embedded{
    width:min(var(--max),calc(100% - 28px)) !important;
  }
  .container .site-visual--embedded{
    width:100% !important;
  }
}


/* =========================================================
   2026-09-13 LASER-FOCUSED HOME / CONTACT PASS
   Only the specifically requested hero spacing, homepage panel flow,
   final outcome ticker and contact-page copy-spacing changes.
   ========================================================= */

/* Initial viewport: fixed nav + hero + ticker 2 fit together.
   Ticker 1 begins just below the nav; ticker 2 finishes at the viewport edge. */
.home-hero{
  height:calc(100svh - 46px) !important;
  min-height:0 !important;
  padding:calc(var(--nav) + 14px) 0 0 !important;
  display:flex !important;
  flex-direction:column;
}
.home-hero > #ticker-tape-1{
  flex:0 0 46px;
}
.home-hero-single{
  flex:1 1 auto;
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(18px,2.8vh,32px) 0 !important;
}
.home-hero-single .legacy-hero-message{
  width:min(1080px,100%) !important;
  max-width:1080px !important;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:clamp(18px,2.8vh,30px);
}
.home-hero-single .legacy-hero-message .hero-rise,
.home-hero-single .legacy-hero-message .hero-profit-line,
.home-hero-single .legacy-hero-message .hero-invisible-line,
.home-hero-single .legacy-hero-message .hero-brand-logo{
  margin-top:0 !important;
  margin-bottom:0 !important;
}
.home-hero-single .legacy-hero-message .hero-rise{
  font-size:clamp(38px,4.6vw,60px) !important;
  line-height:1.08;
}
.home-hero-single .legacy-hero-message .hero-rise-bold{
  font-family:Urbanist,Arial,sans-serif !important;
  font-weight:900 !important;
}
.home-hero-single .legacy-hero-message .hero-rise-light{
  font-family:UrbanistExtraLight,Urbanist,Arial,sans-serif !important;
  font-weight:200 !important;
}
.home-hero-single .legacy-hero-message .hero-profit-line{
  max-width:930px !important;
  font-size:clamp(25px,2.35vw,34px) !important;
  line-height:1.22;
}
.home-hero-single .legacy-hero-message .hero-invisible-line{
  font-size:clamp(26px,2.7vw,36px) !important;
}
.home-hero-single .legacy-hero-message .hero-brand-logo{
  width:225px !important;
  max-width:46vw !important;
}

/* Rise Above the Noise outcome line: entire statement bold, outcome in green. */
.home-growth-message .outcome-intro{font-weight:900 !important;}
.home-growth-message .outcome-intro strong{color:var(--green) !important;font-weight:900 !important;}

/* Homepage two-panel image sections: artwork floats directly in the right panel. */
.home-feature-split{gap:54px;}
.section-panel-visual{
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
}
.relief-summary{margin:0 0 26px;color:var(--text);font-size:20px;line-height:1.5;}
.relief-summary strong{font-weight:900;}
.impact-line{margin-top:18px;margin-bottom:24px;}
.relief-message .btn,
.proof-tease .btn{margin-top:4px;}

/* Final CTA: same moving outcomes idea, no "Opportunities for", green on transparent. */
.final-reward-ticker-wrap{
  width:100vw;
  max-width:none;
  margin:28px calc(50% - 50vw) 32px;
}
.final-reward-ticker,
.final-reward-ticker .ticker-window,
.final-reward-ticker .ticker-track{
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
}
.final-reward-ticker .ticker-item,
.final-reward-ticker .ticker-text{
  color:var(--green) !important;
  font-weight:900 !important;
  padding-right:58px;
}

/* Contact opportunity prompt sits directly before the existing checklist. */
.opportunity-prompt{margin:18px 0 4px;}

@media(max-width:980px){
  .home-feature-split{gap:28px !important;}
}

@media(max-width:640px){
  .home-hero{
    height:calc(100svh - 44px) !important;
    padding:calc(var(--nav) + 10px) 0 0 !important;
  }
  .home-hero > #ticker-tape-1{flex-basis:44px;}
  .home-hero-single{padding:clamp(10px,2vh,18px) 0 !important;}
  .home-hero-single .legacy-hero-message{
    gap:clamp(12px,2.1vh,18px);
  }
  .home-hero-single .legacy-hero-message .hero-rise{
    font-size:clamp(28px,8.6vw,38px) !important;
    line-height:1.05;
  }
  .home-hero-single .legacy-hero-message .hero-profit-line{
    font-size:clamp(21px,5.6vw,25px) !important;
    line-height:1.18;
  }
  .home-hero-single .legacy-hero-message .hero-invisible-line{
    font-size:clamp(22px,6vw,27px) !important;
    line-height:1.08;
  }
  .home-hero-single .legacy-hero-message .hero-brand-logo{
    width:170px !important;
    max-width:52vw !important;
  }
  .home-feature-split{gap:22px !important;}
  .relief-summary{font-size:18px;line-height:1.5;margin-bottom:22px;}
  .section-panel-visual{margin:0 !important;}
  .final-cta .center{text-align:center !important;}
  .final-reward-ticker-wrap{margin-top:24px;margin-bottom:28px;}
}

/* Very short screens: keep the entire first/second ticker composition visible
   by tightening only the hero copy, not changing the artwork size. */
@media(max-height:700px){
  .home-hero{padding-top:calc(var(--nav) + 8px) !important;}
  .home-hero-single{padding:8px 0 !important;}
  .home-hero-single .legacy-hero-message{gap:10px;}
  .home-hero-single .legacy-hero-message .hero-rise{font-size:clamp(28px,4.1vw,48px) !important;}
  .home-hero-single .legacy-hero-message .hero-profit-line{font-size:clamp(20px,2vw,28px) !important;}
  .home-hero-single .legacy-hero-message .hero-invisible-line{font-size:clamp(20px,2.25vw,29px) !important;}
  .home-hero-single .legacy-hero-message .hero-brand-logo{width:150px !important;}
}


/* =========================================================
   2026-09-13 HERO VIEWPORT SPACING CORRECTION
   Keep the first ticker through ticker 2 aligned to the opening
   desktop viewport without compressing the hero content.
   Shorter screens are allowed to grow naturally instead of scrunching.
   ========================================================= */
.home-hero{
  height:auto !important;
  min-height:calc(100svh - 46px) !important;
  padding:calc(var(--nav) + 28px) 0 0 !important;
  display:flex !important;
  flex-direction:column !important;
}
.home-hero > #ticker-tape-1{
  flex:0 0 auto !important;
  margin:0 0 clamp(34px,4.4vh,50px) !important;
}
.home-hero-single{
  flex:1 0 auto !important;
  min-height:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 0 clamp(38px,5vh,58px) !important;
}
.home-hero-single .legacy-hero-message{
  width:min(1080px,100%) !important;
  max-width:1080px !important;
  display:block !important;
  text-align:center !important;
}
.home-hero-single .legacy-hero-message .hero-rise{
  margin:0 0 clamp(32px,4.1vh,46px) !important;
  font-size:clamp(40px,4.8vw,62px) !important;
  line-height:1.08 !important;
}
.home-hero-single .legacy-hero-message .hero-profit-line{
  max-width:930px !important;
  margin:0 auto clamp(30px,3.8vh,44px) !important;
  font-size:clamp(27px,2.45vw,36px) !important;
  line-height:1.24 !important;
  text-align:center !important;
}
.home-hero-single .legacy-hero-message .hero-invisible-line{
  margin:0 0 clamp(28px,3.5vh,40px) !important;
  font-size:clamp(27px,2.75vw,37px) !important;
  line-height:1.12 !important;
  text-align:center !important;
}
.home-hero-single .legacy-hero-message .hero-brand-logo{
  display:block !important;
  width:225px !important;
  max-width:46vw !important;
  margin:0 auto !important;
}

/* A short desktop viewport should scroll naturally rather than collapse spacing. */
@media (max-height:760px) and (min-width:641px){
  .home-hero{
    min-height:calc(100svh - 46px) !important;
    padding-top:calc(var(--nav) + 20px) !important;
  }
  .home-hero > #ticker-tape-1{margin-bottom:30px !important;}
  .home-hero-single{padding-bottom:34px !important;}
  .home-hero-single .legacy-hero-message .hero-rise{
    margin-bottom:28px !important;
    font-size:clamp(38px,4.35vw,56px) !important;
  }
  .home-hero-single .legacy-hero-message .hero-profit-line{
    margin-bottom:26px !important;
    font-size:clamp(25px,2.25vw,33px) !important;
  }
  .home-hero-single .legacy-hero-message .hero-invisible-line{
    margin-bottom:24px !important;
    font-size:clamp(25px,2.5vw,34px) !important;
  }
  .home-hero-single .legacy-hero-message .hero-brand-logo{width:205px !important;}
}

/* Mobile/tablet portrait: preserve readable spacing; do not force everything into 100vh. */
@media(max-width:640px){
  .home-hero{
    height:auto !important;
    min-height:0 !important;
    padding:calc(var(--nav) + 18px) 0 0 !important;
  }
  .home-hero > #ticker-tape-1{
    flex-basis:auto !important;
    margin-bottom:28px !important;
  }
  .home-hero-single{
    display:block !important;
    padding:0 0 36px !important;
  }
  .home-hero-single .legacy-hero-message .hero-rise{
    margin-bottom:28px !important;
    font-size:clamp(31px,9vw,40px) !important;
    line-height:1.07 !important;
  }
  .home-hero-single .legacy-hero-message .hero-profit-line{
    margin-bottom:26px !important;
    font-size:clamp(22px,5.8vw,27px) !important;
    line-height:1.22 !important;
  }
  .home-hero-single .legacy-hero-message .hero-invisible-line{
    margin-bottom:24px !important;
    font-size:clamp(23px,6.2vw,29px) !important;
    line-height:1.12 !important;
  }
  .home-hero-single .legacy-hero-message .hero-brand-logo{
    width:180px !important;
    max-width:54vw !important;
  }
}


/* =========================================================
   2026-09-13 HERO OPENING VIEWPORT — EXACT FOLD
   The fixed navbar, ticker 1, hero message and ticker 2 form one
   opening viewport. Ticker 2 sits at the bottom edge of the first
   viewport whenever the content fits; shorter viewports may grow
   naturally rather than compressing the copy.
   ========================================================= */
.home-opening{
  min-height:100dvh;
  display:flex;
  flex-direction:column;
  background:#051525;
  position:relative;
  overflow:hidden;
}
.home-opening > .home-hero{
  flex:1 0 auto !important;
  height:auto !important;
  min-height:0 !important;
  width:100%;
  padding:calc(var(--nav) + 28px) 0 0 !important;
  display:flex !important;
  flex-direction:column !important;
}
.home-opening > #ticker-tape-2{
  flex:0 0 46px;
  height:46px;
  min-height:46px;
  margin:0 !important;
}
.home-opening > #ticker-tape-2 .ticker-window,
.home-opening > #ticker-tape-2 .ticker-track{
  height:46px !important;
  min-height:46px !important;
}
.home-opening .home-hero > #ticker-tape-1{
  flex:0 0 46px !important;
  margin:0 0 clamp(30px,3.6vh,44px) !important;
}
.home-opening .home-hero-single{
  flex:1 1 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 0 clamp(30px,3.8vh,46px) !important;
}
.home-opening .home-hero-single .legacy-hero-message .hero-rise{
  margin-bottom:clamp(28px,3.3vh,40px) !important;
}
.home-opening .home-hero-single .legacy-hero-message .hero-profit-line{
  margin-bottom:clamp(27px,3.2vh,38px) !important;
}
.home-opening .home-hero-single .legacy-hero-message .hero-invisible-line{
  margin-bottom:clamp(25px,3vh,34px) !important;
}

/* If a desktop viewport is genuinely too short to hold the approved
   spacing, allow the opening to become taller instead of squeezing it. */
@media (min-width:641px) and (max-height:760px){
  .home-opening{min-height:100dvh;height:auto;}
  .home-opening > .home-hero{min-height:690px !important;}
}

@media(max-width:640px){
  .home-opening{
    min-height:100dvh;
    height:auto;
  }
  .home-opening > .home-hero{
    flex:1 0 auto !important;
    padding:calc(var(--nav) + 18px) 0 0 !important;
  }
  .home-opening .home-hero > #ticker-tape-1{
    flex-basis:44px !important;
    margin-bottom:26px !important;
  }
  .home-opening .home-hero-single{
    display:flex !important;
    padding-bottom:30px !important;
  }
  .home-opening > #ticker-tape-2,
  .home-opening > #ticker-tape-2 .ticker-window,
  .home-opening > #ticker-tape-2 .ticker-track{
    height:44px !important;
    min-height:44px !important;
    flex-basis:44px;
  }
}


/* ABOUT VISIBLE B — positioning consolidation */
.about-positioning-hero .about-lead{font-size:clamp(24px,3vw,34px);line-height:1.18;color:#fff;max-width:820px;margin-bottom:22px}
.about-positioning-hero .about-touchpoint{color:var(--green);margin-top:24px}
.about-copy-split>div:last-child{max-width:620px}
.about-outcomes-line{font-size:clamp(21px,2.2vw,28px);line-height:1.3;color:#082e53;margin-top:24px}
.about-impact-line{font-size:21px;margin-top:24px;color:#051525}
.about-pain-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 28px;margin-top:30px;margin-bottom:34px}
.about-pain-grid strong{display:block;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.22);font-size:19px;color:#fff}
.about-who-for-close{margin-top:12px}
.about-who-for-close p:first-child{font-size:24px;color:var(--green);margin-bottom:12px}
.about-goal-section h2{max-width:980px;margin-left:auto;margin-right:auto}
.about-tagline{font-size:clamp(22px,2.8vw,32px);color:#082e53;margin-top:26px}
.about-center-actions{justify-content:center}
.about-principles .intro-tight p{max-width:820px;margin-left:auto;margin-right:auto}
.about-principles-title{margin-top:34px;color:#fff}
.about-bridge h2{margin-bottom:0}

@media(max-width:980px){
  .about-pain-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-copy-split>div:last-child{max-width:none}
}
@media(max-width:640px){
  .about-pain-grid{grid-template-columns:1fr;gap:0;margin-top:18px;margin-bottom:28px}
  .about-pain-grid strong{font-size:18px}
  .about-positioning-hero .about-lead{font-size:25px}
  .about-outcomes-line{font-size:22px}
  .about-center-actions{justify-content:flex-start}
  .about-goal-section .center{text-align:left}
}

/* =========================================================
   VISIBLE B SPACING LOCK — 2026-09-13
   New/revised About content and the homepage About bridge must
   follow the same section rhythm already established sitewide.
   Do not introduce one-off vertical gaps in future revisions.
   ========================================================= */
.about-copy-split{
  gap:64px !important;
  align-items:start;
}
.about-bridge .about-copy-split{
  align-items:center;
}

/* Keep text rhythm consistent with the site's normal heading/paragraph cadence. */
.about-positioning-hero .about-lead{
  margin:0 0 1.15em !important;
}
.about-positioning-hero .about-touchpoint{
  margin:0 0 1.15em !important;
}
.about-positioning-hero .container > :last-child{
  margin-bottom:0;
}
.about-copy-split > div > :last-child{
  margin-bottom:0;
}
.about-copy-split p + .btn{
  margin-top:4px;
}

/* Match the site's established content-to-grid/content-to-close spacing. */
.about-pain-grid{
  margin-top:44px !important;
  margin-bottom:44px !important;
}
.about-who-for-close{
  margin-top:0 !important;
}
.about-who-for-close p:last-child{
  margin-bottom:0;
}
.about-outcomes-line,
.about-impact-line,
.about-tagline{
  margin-top:0 !important;
}
.about-goal-section .actions{
  margin-top:30px;
}
.about-principles-title{
  margin-top:30px !important;
}
.about-principles .three-cards{
  margin-top:30px;
}

/* The homepage bridge should use the same panel-to-panel mobile spacing
   as the approved Customer Experience / other two-panel sections. */
@media(max-width:980px){
  .about-copy-split{
    gap:28px !important;
  }
  .about-pain-grid{
    margin-top:32px !important;
    margin-bottom:32px !important;
  }
}

@media(max-width:640px){
  .about-copy-split{
    gap:22px !important;
  }
  .about-pain-grid{
    margin-top:28px !important;
    margin-bottom:28px !important;
  }
  .about-positioning-hero .about-lead{
    margin-bottom:1.15em !important;
  }
  .about-principles-title{
    margin-top:26px !important;
  }
  .about-principles .three-cards{
    margin-top:26px;
  }
}

/* =========================================================
   VISIBLE B — THE DIFFERENCE + SITEWIDE CONTACT + POWERED LINE
   2026-09-13
   Uses the established site spacing lock and existing container system.
   ========================================================= */
.difference-section .intro-tight p{
  max-width:820px;
  margin-left:auto;
  margin-right:auto;
}
.difference-cards{
  margin-top:44px;
}
.difference-card h3{
  margin-bottom:14px;
}
.difference-card p{
  margin-bottom:0;
}
.site-contact-band .contact-grid{
  align-items:start;
}
.site-contact-copy{
  max-width:560px;
}
.site-contact-copy > :last-child{
  margin-bottom:0;
}
.sitewide-contact-form{
  color:var(--text);
}
.sitewide-contact-form .btn-dark{
  justify-self:start;
}
.footer-powered{
  margin:8px 0 0;
  font-size:14px;
  line-height:1.45;
  color:var(--green);
  font-weight:700;
}
.footer-powered strong{
  color:#fff;
  font-weight:900;
}
@media(max-width:980px){
  .site-contact-band .contact-grid{
    gap:28px !important;
  }
}
@media(max-width:640px){
  .difference-cards{
    margin-top:26px;
  }
  .site-contact-band .contact-grid{
    gap:22px !important;
  }
  .sitewide-contact-form .btn-dark{
    width:100%;
  }
}


/* =========================================================
   MOBILE CONTENT IMAGE WIDTH LOCK — 2026-09-14
   Keep every content visual aligned to the same mobile container
   width as the site's full-width cards (including THE DIFFERENCE).
   ========================================================= */
@media(max-width:640px){
  .container .site-visual,
  .container .site-visual--embedded,
  .split .site-visual,
  .split .site-visual--embedded{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .container .site-visual img,
  .container .site-visual--embedded img,
  .split .site-visual img,
  .split .site-visual--embedded img{
    display:block;
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    object-fit:contain;
  }
}


/* =========================================================
   MOBILE VISUAL FILL NORMALIZATION — 2026-09-14
   Keep the outer image footprint exactly aligned with the same
   mobile container width as THE DIFFERENCE cards while compensating
   only for transparent padding baked into the dashboard artwork.
   No artwork is allowed outside the content container.
   ========================================================= */
@media(max-width:640px){
  .section-panel-visual,
  .site-visual--embedded{
    overflow:hidden;
  }

  img[src$="visible-b-process-glass.webp"]{transform:scale(1.07);transform-origin:center center;}
  img[src$="excite-invite-delight-glass.webp"]{transform:scale(1.09);transform-origin:center center;}
  img[src$="outcomes-glass.webp"]{transform:scale(1.055);transform-origin:center center;}
  img[src$="market-intelligence-glass.webp"]{transform:scale(1.02);transform-origin:center center;}
  img[src$="ecr-glass.webp"]{transform:scale(1.05);transform-origin:center center;}
  img[src$="connected-presence-glass.webp"]{transform:scale(1.07);transform-origin:center center;}
  img[src$="conversion-glass.webp"]{transform:scale(1.09);transform-origin:center center;}
  img[src$="retention-growth-glass.webp"]{transform:scale(1.064);transform-origin:center center;}
}
