@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800;900&display=swap');

:root{--orange:#FFA311;--orange2:#FFA311;--black:#090909;--ink:#151515;--muted:#68707A;--cream:#FFF7E7;--soft:#F7F3EC;--line:#E7DFD1;--ops:#0E6F5C;--health:#1167B1;--danger:#B42318;--shadow:0 24px 70px rgba(0,0,0,.14);--softshadow:0 16px 45px rgba(0,0,0,.07);--radius:28px;--container:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Poppins,system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.6}.container{width:min(var(--container),calc(100% - 40px));margin:auto}.narrow{max-width:880px}.center{text-align:center}.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#000;color:#fff;padding:10px;z-index:1000}.topbar{position:sticky;top:0;z-index:99;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(0,0,0,.07)}.nav{display:flex;align-items:center;gap:16px;min-height:78px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;min-width:270px}.brand span{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:#111;color:var(--orange);font-weight:900;box-shadow:0 12px 26px rgba(0,0,0,.16)}.brand b{display:grid;line-height:1.15;font-size:14px}.brand small{color:var(--muted);font-size:11px}.mainnav{display:flex;gap:2px;margin-left:auto}.mainnav a{text-decoration:none;font-size:12px;font-weight:800;padding:10px;border-radius:999px;color:#333}.mainnav a:hover,.mainnav a.active{background:var(--cream);color:#000}.navcta{text-decoration:none;background:var(--orange);color:#111;font-weight:900;border-radius:999px;padding:12px 18px;font-size:13px;box-shadow:0 12px 28px rgba(255,167,1,.27)}.menu{display:none;margin-left:auto;background:#111;color:#fff;border:0;border-radius:13px;padding:9px 12px;font-size:21px}h1,h2,h3{line-height:1.1;margin:0 0 16px;letter-spacing:-.047em}h1{font-size:clamp(42px,6.4vw,76px)}h2{font-size:clamp(30px,4.2vw,50px)}h3{font-size:22px}p{margin:0 0 18px;color:var(--muted)}.lead{font-size:19px;max-width:760px}.center .lead,.hero-center .lead{margin:auto}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--orange);font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}.eyebrow:before{content:"";width:28px;height:3px;background:currentColor;border-radius:999px}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 18%,rgba(255,167,1,.38),transparent 30%),linear-gradient(135deg,#0b0b0b 0%,#232323 54%,#3a2500 100%);color:#fff;padding:80px 0}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,#000,transparent 92%)}.hero>*{position:relative}.home{padding:86px 0 72px}.mediahero{background:radial-gradient(circle at 80% 18%,rgba(255,167,1,.44),transparent 30%),linear-gradient(135deg,#0b0b0b,#442B00)}.opshero{background:radial-gradient(circle at 80% 18%,rgba(14,111,92,.46),transparent 30%),linear-gradient(135deg,#0b0b0b,#083F35)}.healthhero{background:radial-gradient(circle at 80% 18%,rgba(17,103,177,.46),transparent 30%),linear-gradient(135deg,#0b0b0b,#0C3B65)}.templatehero{background:radial-gradient(circle at 80% 18%,rgba(255,167,1,.32),transparent 30%),linear-gradient(135deg,#0b0b0b,#2f2b24)}.hero p{color:rgba(255,255,255,.82)}.homegrid{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center;position:relative}.actions{display:flex;gap:13px;flex-wrap:wrap;margin:30px 0}.actions.center{justify-content:center}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 20px;border-radius:999px;text-decoration:none;border:1px solid transparent;font:inherit;font-weight:900;cursor:pointer}.btn.primary{background:var(--orange);color:#111;box-shadow:0 12px 30px rgba(255,167,1,.3)}.btn.light{background:#fff;color:#111}.btn.ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.26);color:#fff}.btn.outline{background:#fff;border-color:rgba(0,0,0,.18);color:#111}.product{background:rgba(255,255,255,.96);color:#111;border-radius:34px;padding:18px;box-shadow:var(--shadow);transform:rotate(1.2deg)}.toolbar{display:flex;gap:7px;align-items:center;margin-bottom:16px}.toolbar i{width:10px;height:10px;border-radius:50%;background:#ddd}.toolbar b{margin-left:auto;font-size:12px;color:#555}.stage{min-height:360px;border-radius:24px;background:linear-gradient(150deg,#171717,#4a3000);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.ribcase{position:absolute;top:58px;width:330px;height:22px;background:#050505;border-radius:999px}.ribpull{position:absolute;top:78px;width:270px;height:20px;background:var(--orange);border-radius:0 0 12px 12px}.sheet{position:relative;width:270px;min-height:236px;background:#fff;border-radius:0 0 22px 22px;padding:22px;margin-top:38px;box-shadow:0 26px 70px rgba(0,0,0,.38)}.sheet small{color:var(--health);font-weight:900;letter-spacing:.1em}.sheet h3{font-size:30px}.sheet p{color:#333;font-weight:700}.write{display:flex;justify-content:space-between;border-bottom:1px dashed #bbb;margin-top:7px;font-size:13px}.write em{font-style:normal;color:var(--ops)}.qr{width:58px;height:58px;border:7px solid #f1f1f1;border-radius:12px;margin-top:12px;background:linear-gradient(90deg,#111 10px,transparent 10px) 0 0/20px 20px,linear-gradient(#111 10px,transparent 10px) 0 0/20px 20px,#fff}.stats,.dashstats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.stats div,.dashstats div{background:#F7F2E8;border:1px solid #EEE0C9;border-radius:17px;padding:13px}.stats strong,.dashstats strong{display:block;font-size:22px}.stats span,.dashstats span{color:var(--muted);font-size:12px;font-weight:800}.section{padding:78px 0}.alt{background:var(--soft)}.head{max-width:860px;margin-bottom:36px}.head.center{margin:auto auto 36px;text-align:center}.cards{display:grid;gap:22px}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.four{grid-template-columns:repeat(4,1fr)}.card,.cards>article,.compare,.dash,.template,.material,.timeline,.quote,.contactcard,.fitcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--softshadow)}.media{background:linear-gradient(180deg,#fff,#fff8ea)!important}.ops{background:linear-gradient(180deg,#fff,#e9f6f2)!important}.health{background:linear-gradient(180deg,#fff,#eaf4ff)!important}.num{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#111;color:var(--orange);font-weight:900;margin-bottom:14px}.cards a{font-weight:900;color:#111;text-decoration:none}.cards ul,.check,.mega ul,.dod0 ul{padding:0;list-style:none;margin:18px 0;display:grid;gap:9px}.cards li,.check li,.mega li,.dod0 li{position:relative;padding-left:28px;color:#333;font-weight:600}.cards li:before,.check li:before,.mega li:before,.dod0 li:before{content:"✓";position:absolute;left:0;top:0;color:#111;background:var(--orange);border-radius:7px;width:20px;height:20px;display:grid;place-items:center;font-size:12px;font-weight:900}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.stack{display:grid;gap:14px;margin-top:24px}.stack div{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px}.stack b{display:block}.stack span{color:var(--muted);font-weight:600}.compare p{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:13px 0;margin:0}.compare p:last-child{border-bottom:0}.compare b{color:#555}.compare .good b{color:var(--ops)}.selector{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.fit{border:1px solid var(--line);background:#fff;border-radius:16px;padding:14px;font:inherit;font-weight:900;cursor:pointer;text-align:left}.fit.active,.fit:hover{background:#111;color:var(--orange)}.fitcard{background:#111;color:#fff}.fitcard p{color:rgba(255,255,255,.75)}.fitcard span,.tag{display:inline-flex;border-radius:999px;background:var(--orange);color:#111;font-size:12px;font-weight:900;padding:7px 10px;margin-bottom:15px}.dark{background:#111;color:#fff}.dark p{color:rgba(255,255,255,.75)}.cta{display:flex;justify-content:space-between;gap:30px;align-items:center}.dash .bar,.bar{display:grid;grid-template-columns:120px 1fr 56px;gap:12px;align-items:center;margin:14px 0;font-size:13px;font-weight:800}.bar b{height:12px;border-radius:999px;background:linear-gradient(90deg,var(--orange),#111);width:var(--w);display:block}.bar em{text-align:right;color:var(--muted);font-style:normal}.template em{display:block;background:#fff3f0;border:1px solid #ffd5cd;border-radius:12px;padding:10px;font-size:12px;color:#555}.fields{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.fields span{border:1px dashed #bbb;border-radius:12px;padding:10px;font-weight:800}.healthcard small{color:var(--health)}.dod0{display:grid;grid-template-columns:1fr 1fr;gap:22px}.dod0>div{background:#EAFBF4;border:1px solid var(--line);border-radius:var(--radius);padding:28px}.dod0 .dont{background:#FFF1EF}.dod0 .dont li:before{content:"!";background:#F04438;color:#fff}.material{background:#111;color:#fff}.material p{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px;font-weight:800;color:#fff}.sizes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.sizes article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--softshadow)}.sizes .rec{border:2px solid var(--orange);transform:translateY(-7px)}.sizes span{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:#111;color:var(--orange);font-size:20px;font-weight:900;margin-bottom:14px}.sizes p{font-weight:900;color:#111}.sizes b{color:var(--muted)}.mega{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.mega article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--softshadow)}.dashboards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.opsdash{background:linear-gradient(180deg,#fff,#e9f6f2)}.opsdash .bar b{background:linear-gradient(90deg,var(--ops),#111)}.timeline p{display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:center}.timeline span{background:#111;color:var(--orange);border-radius:14px;padding:10px;font-weight:900;text-align:center}.formgrid{display:grid;grid-template-columns:.82fr 1.18fr;gap:46px;align-items:start}.ribform{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}.ribform label{display:grid;gap:7px;font-size:13px;font-weight:900}.ribform input,.ribform select,.ribform textarea{width:100%;border:1px solid #D7CDBD;border-radius:14px;padding:13px 14px;font:inherit;background:#fff}.ribform textarea,.ribform .checkline,.ribform button,.formstatus{grid-column:1/-1}.checkline{display:flex!important;align-items:flex-start;gap:10px;font-weight:600!important}.checkline input{width:auto!important;margin-top:4px}.formstatus{margin:0;color:var(--ops);font-weight:900}.contactcard{display:grid;gap:6px;background:var(--soft)}.quote p{font-size:30px;font-weight:900;color:#111;line-height:1.15}.footer{background:#0b0b0b;color:#fff;padding:58px 0 24px}.footergrid{display:grid;grid-template-columns:1.35fr .7fr .75fr .9fr;gap:34px}.footerbrand span{box-shadow:none;background:var(--orange);color:#111}.footer p{color:rgba(255,255,255,.68)}.footer h3{font-size:15px;margin-bottom:12px}.footer a{display:block;color:rgba(255,255,255,.72);text-decoration:none;margin:8px 0;font-size:14px}.footer a:hover{color:var(--orange)}.social{display:flex;gap:8px;flex-wrap:wrap}.social a{border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.footnote{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.12);padding-top:20px;margin-top:34px;color:rgba(255,255,255,.54);font-size:12px}.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:1080px){.menu{display:block}.nav{flex-wrap:wrap}.mainnav{display:none;order:5;width:100%;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:18px;padding:8px;margin-bottom:14px}.mainnav.open{display:flex}.mainnav a{padding:14px}.navcta{display:none}.homegrid,.split,.formgrid,.dashboards{grid-template-columns:1fr}.cards.three,.cards.four,.mega,.sizes{grid-template-columns:1fr 1fr}}@media(max-width:720px){.container{width:min(100% - 28px,var(--container))}.brand{min-width:0}.brand b{font-size:12px}.brand small{display:none}.hero,.home{padding:58px 0}.section{padding:58px 0}h1{font-size:40px}.lead{font-size:17px}.cards.three,.cards.four,.mega,.sizes,.dod0,.footergrid{grid-template-columns:1fr}.selector,.fields,.dashstats,.stats{grid-template-columns:1fr}.ribform{grid-template-columns:1fr}.bar{grid-template-columns:1fr}.bar em{text-align:left}.cta,.footnote{flex-direction:column;align-items:flex-start}.product{transform:none}}





@media(max-width:720px){}

@media(max-width:720px){}


/* Refined hero typography */
.hero h1{
  font-weight:600 !important;
  letter-spacing:-0.035em !important;
}
.home-hero h1{
  font-weight:600 !important;
}
.page-hero h1{
  font-weight:600 !important;
}
.hero .lead{
  font-weight:400 !important;
}

/* Global Poppins font enforcement */
html,
body,
button,
input,
select,
textarea,
a,
p,
span,
small,
strong,
b,
em,
label,
summary,
details,
li,
td,
th,
div,
section,
article,
header,
footer,
nav,
main,
h1,
h2,
h3,
h4,
h5,
h6,
.btn,
.main-nav a,
.nav-cta,
.brand,
.rib-form input,
.rib-form select,
.rib-form textarea{
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}

/* Poppins and spacing refinement for comparison rows */
.comparison-card,
.comparison-card *,
.compare-row,
.compare-row span,
.compare-row b{
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
.compare-row{
  display:grid !important;
  grid-template-columns:minmax(120px, 0.7fr) minmax(0, 1.3fr) !important;
  gap:18px !important;
  align-items:center !important;
}
.compare-row span{
  display:block !important;
  font-weight:800 !important;
  color:#151515 !important;
  white-space:nowrap !important;
}
.compare-row b{
  display:block !important;
  font-weight:500 !important;
  color:#555 !important;
  line-height:1.35 !important;
  text-align:left !important;
}
.compare-row.good b{
  color:#0E6F5C !important;
}
@media(max-width:720px){
  .compare-row{
    grid-template-columns:1fr !important;
    gap:4px !important;
  }
  .compare-row span{
    white-space:normal !important;
  }
}


/* CTA button spacing fix */
.cta-actions,
.action-row,
.hero-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:16px !important;
  align-items:center !important;
}
.cta-actions .btn,
.action-row .btn,
.hero-actions .btn{
  margin:0 !important;
}
@media(max-width:720px){
  .cta-actions,
  .action-row,
  .hero-actions{
    gap:12px !important;
  }
  .cta-actions .btn,
  .action-row .btn,
  .hero-actions .btn{
    width:100%;
  }
}

/* Real product image integration */
.product-photo-card{
  margin:0;
  background:#fff;
  border:1px solid var(--line);
  border-radius:28px;
  padding:14px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.product-photo-card img{
  display:block;
  width:100%;
  height:auto;
  border-radius:20px;
  object-fit:cover;
}
.home-product-photo img{
  max-height:620px;
  object-fit:cover;
}
.product-photo-card figcaption{
  display:grid;
  gap:4px;
  padding:16px 6px 4px;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
.product-photo-card figcaption strong{
  color:#111;
  font-size:16px;
  font-weight:800;
}
.product-photo-card figcaption span{
  color:var(--muted);
  font-size:13px;
  font-weight:500;
}
.image-showcase-section{
  background:#fff;
}
.hero .product-photo-card{
  transform:rotate(1deg);
}
@media(max-width:720px){
  .hero .product-photo-card{
    transform:none;
  }
  .home-product-photo img{
    max-height:none;
  }
}

/* Home page real RIB image */
.image-product{
  background:#ffffff !important;
  color:#111111 !important;
  padding:14px !important;
}
.home-rib-photo{
  margin:0 !important;
}
.home-rib-photo img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-height:640px !important;
  object-fit:cover !important;
  border-radius:22px !important;
}
.home-rib-photo figcaption{
  display:grid !important;
  gap:4px !important;
  padding:16px 6px 4px !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
.home-rib-photo figcaption strong{
  color:#111 !important;
  font-size:16px !important;
  font-weight:800 !important;
}
.home-rib-photo figcaption span{
  color:var(--muted) !important;
  font-size:13px !important;
  font-weight:500 !important;
}
@media(max-width:720px){
  .home-rib-photo img{
    max-height:none !important;
  }
}

/* Car RIB image integration */
.product-photo-card{
  margin:0;
  background:#fff;
  border:1px solid var(--line);
  border-radius:28px;
  padding:14px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.product-photo-card img{
  display:block;
  width:100%;
  height:auto;
  border-radius:20px;
  object-fit:cover;
}
.car-rib-photo img{
  max-height:620px;
  object-fit:cover;
}
.product-photo-card figcaption{
  display:grid;
  gap:4px;
  padding:16px 6px 4px;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
.product-photo-card figcaption strong{
  color:#111;
  font-size:16px;
  font-weight:800;
}
.product-photo-card figcaption span{
  color:var(--muted);
  font-size:13px;
  font-weight:500;
}

/* FINAL FIX: Market-Ready Message CTA button overlap */
.dark-cta .cta-grid{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 320px !important;
  column-gap:56px !important;
  row-gap:28px !important;
  align-items:center !important;
}

.dark-cta .cta-actions{
  display:flex !important;
  flex-direction:column !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  justify-content:center !important;
  gap:18px !important;
  row-gap:18px !important;
  width:100% !important;
  min-width:0 !important;
  max-width:320px !important;
}

.dark-cta .cta-actions .btn{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  min-height:66px !important;
  height:auto !important;
  margin:0 !important;
  padding:18px 24px !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
  border-radius:999px !important;
}

@media(max-width:1100px){
  .dark-cta .cta-grid{
    grid-template-columns:1fr !important;
  }
  .dark-cta .cta-actions{
    max-width:360px !important;
    align-items:stretch !important;
  }
}

@media(max-width:720px){
  .dark-cta .cta-actions{
    max-width:100% !important;
  }
  .dark-cta .cta-actions .btn{
    width:100% !important;
    white-space:normal !important;
  }
}

/* FINAL HARD FIX: Market-Ready Message button spacing */
.dark-cta .market-ready-buttons,
.dark-cta .cta-actions.market-ready-buttons{
  display:block !important;
  width:320px !important;
  max-width:320px !important;
  min-width:320px !important;
}

.dark-cta .market-ready-buttons .btn,
.dark-cta .cta-actions.market-ready-buttons .btn{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:68px !important;
  height:auto !important;
  margin:0 !important;
  padding:18px 24px !important;
  box-sizing:border-box !important;
  position:relative !important;
  top:auto !important;
  transform:none !important;
  clear:both !important;
}

.dark-cta .market-ready-buttons .btn + .btn,
.dark-cta .cta-actions.market-ready-buttons .btn + .btn{
  margin-top:34px !important;
}

.dark-cta .cta-grid{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 320px !important;
  column-gap:64px !important;
  align-items:center !important;
}

@media(max-width:1100px){
  .dark-cta .cta-grid{
    grid-template-columns:1fr !important;
  }
  .dark-cta .market-ready-buttons,
  .dark-cta .cta-actions.market-ready-buttons{
    width:320px !important;
    max-width:320px !important;
    min-width:0 !important;
  }
}

@media(max-width:720px){
  .dark-cta .market-ready-buttons,
  .dark-cta .cta-actions.market-ready-buttons{
    width:100% !important;
    max-width:100% !important;
  }
}

/* Legal and policy pages */
.policy-layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 320px;
  gap:34px;
  align-items:start;
}
.policy-card,
.policy-sidebar,
.info-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:28px;
  padding:30px;
  box-shadow:var(--shadow-soft);
}
.policy-card h2{
  font-size:28px;
  margin-top:30px;
}
.policy-card h2:first-child{
  margin-top:0;
}
.policy-card p{
  color:var(--muted);
}
.policy-sidebar{
  position:sticky;
  top:96px;
}
.policy-sidebar h3{
  font-size:18px;
}
.policy-sidebar a{
  display:block;
  padding:10px 0;
  border-bottom:1px solid var(--line);
  text-decoration:none;
  font-weight:700;
  color:#111;
}
.policy-sidebar a:hover{
  color:var(--orange2);
}
.legal-footer-grid{
  grid-template-columns:1.25fr .7fr .75fr .8fr .9fr !important;
}
@media(max-width:1080px){
  .policy-layout{
    grid-template-columns:1fr;
  }
  .policy-sidebar{
    position:static;
  }
  .legal-footer-grid{
    grid-template-columns:1fr 1fr !important;
  }
}
@media(max-width:720px){
  .legal-footer-grid{
    grid-template-columns:1fr !important;
  }
}

/* Commercial footer and FAQ page restructure */
.commercial-footer-grid{
  grid-template-columns:1.25fr .72fr .78fr .9fr .9fr !important;
  align-items:start;
}
.footer-brand-col p{
  max-width:390px;
}
.faq-page-section .section-head{
  margin-left:auto;
  margin-right:auto;
}
.faq-page-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
}
.faq-page-grid details{
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:20px 22px;
  box-shadow:var(--shadow-soft);
}
.faq-page-grid summary{
  cursor:pointer;
  font-weight:800;
  color:#111;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
.faq-page-grid details p{
  margin:12px 0 0;
  color:var(--muted);
}
.rib-footer-link-columns{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:24px;
}
.rib-footer-link-columns a{
  display:block;
  margin:8px 0;
  text-decoration:none;
}
@media(max-width:1180px){
  .commercial-footer-grid{
    grid-template-columns:1fr 1fr 1fr !important;
  }
}
@media(max-width:900px){
  .commercial-footer-grid,
  .faq-page-grid{
    grid-template-columns:1fr !important;
  }
}


/* Keep footer horizontal on tablet widths where there is still enough space */
@media(max-width:1180px){
  .footer .commercial-footer-grid,
  .footer-grid.commercial-footer-grid{
    grid-template-columns:
      minmax(260px, 1.2fr)
      minmax(145px, .7fr)
      minmax(160px, .75fr)
      minmax(210px, .95fr)
      minmax(180px, .85fr) !important;
    gap:24px !important;
  }
}

/* Only stack when screen is genuinely narrow */
@media(max-width:980px){
  .footer .commercial-footer-grid,
  .footer-grid.commercial-footer-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(max-width:640px){
  .footer .commercial-footer-grid,
  .footer-grid.commercial-footer-grid{
    grid-template-columns:1fr !important;
  }
}

/* FINAL FIX: stable header menu and commercial footer spacing */
.topbar .nav-shell{
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  gap:22px !important;
  align-items:center !important;
  min-height:82px !important;
}

.topbar .brand{
  min-width:260px !important;
}

.topbar .main-nav{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:8px !important;
  min-width:0 !important;
  margin-left:0 !important;
}

.topbar .main-nav a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  white-space:nowrap !important;
  padding:10px 10px !important;
  line-height:1.1 !important;
}

.topbar .nav-cta{
  justify-self:end !important;
  white-space:nowrap !important;
}

.footer .commercial-footer-grid,
.footer-grid.commercial-footer-grid{
  display:grid !important;
  grid-template-columns:minmax(300px, 1.45fr) minmax(145px, .72fr) minmax(170px, .82fr) minmax(235px, 1.05fr) minmax(205px, .92fr) !important;
  column-gap:42px !important;
  row-gap:34px !important;
  align-items:start !important;
  width:min(var(--container), calc(100% - 40px)) !important;
  margin-inline:auto !important;
}

.footer .commercial-footer-grid > div,
.footer .footer-col,
.footer .footer-brand-col{
  min-width:0 !important;
}

.footer .footer-brand-col{
  padding-right:18px !important;
}

.footer .footer-description{
  margin-top:18px !important;
  max-width:420px !important;
  line-height:1.75 !important;
}

.footer .footer-col h3,
.footer .commercial-footer-grid h3{
  margin:0 0 16px !important;
  color:#fff !important;
  font-size:15px !important;
  letter-spacing:0 !important;
}

.footer .footer-col a,
.footer .commercial-footer-grid a{
  display:block !important;
  margin:10px 0 !important;
  line-height:1.45 !important;
}

.footer .commercial-footer-grid .brand{
  margin-bottom:16px !important;
}

.rib-footer-link-columns{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:32px !important;
}

.rib-footer-link-columns a{
  display:block !important;
  margin:9px 0 !important;
  text-decoration:none !important;
}

@media(max-width:1240px){
  .topbar .nav-shell{
    display:flex !important;
    flex-wrap:wrap !important;
  }
  .topbar .menu-button{
    display:block !important;
    margin-left:auto !important;
  }
  .topbar .main-nav{
    display:none !important;
    order:5 !important;
    width:100% !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    background:#fff !important;
    border:1px solid var(--line) !important;
    border-radius:18px !important;
    padding:8px !important;
    margin-bottom:14px !important;
  }
  .topbar .main-nav.open{
    display:flex !important;
  }
  .topbar .main-nav a{
    justify-content:flex-start !important;
    padding:14px !important;
  }
  .topbar .nav-cta{
    display:none !important;
  }
}

@media(max-width:1180px){
  .footer .commercial-footer-grid,
  .footer-grid.commercial-footer-grid{
    grid-template-columns:1.2fr .8fr .9fr 1fr !important;
  }
  .footer .commercial-footer-grid > div:first-child{
    grid-column:1 / -1 !important;
  }
}

@media(max-width:820px){
  .footer .commercial-footer-grid,
  .footer-grid.commercial-footer-grid,
  .rib-footer-link-columns{
    grid-template-columns:1fr 1fr !important;
  }
}

@media(max-width:640px){
  .footer .commercial-footer-grid,
  .footer-grid.commercial-footer-grid,
  .rib-footer-link-columns{
    grid-template-columns:1fr !important;
  }
  .topbar .brand{
    min-width:0 !important;
  }
}

/* PROFESSIONAL HEADER AND FOOTER RESET */
.rib-pro-header{
  position:sticky !important;
  top:0 !important;
  z-index:999 !important;
  background:rgba(255,255,255,.96) !important;
  border-bottom:1px solid rgba(0,0,0,.08) !important;
  backdrop-filter:blur(18px) !important;
}

.rib-pro-nav{
  min-height:78px !important;
  display:grid !important;
  grid-template-columns:auto minmax(0, 1fr) auto !important;
  align-items:center !important;
  gap:26px !important;
}

.rib-pro-brand{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  text-decoration:none !important;
  min-width:260px !important;
}

.rib-pro-brand-mark{
  width:52px !important;
  height:52px !important;
  border-radius:16px !important;
  display:grid !important;
  place-items:center !important;
  background:#101010 !important;
  color:var(--orange) !important;
  font-weight:900 !important;
  letter-spacing:.02em !important;
  box-shadow:0 12px 26px rgba(0,0,0,.14) !important;
}

.rib-pro-brand-copy{
  display:grid !important;
  line-height:1.15 !important;
}

.rib-pro-brand-copy strong{
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:14px !important;
  font-weight:800 !important;
  color:#111 !important;
  letter-spacing:-.02em !important;
}

.rib-pro-brand-copy small{
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:11px !important;
  font-weight:700 !important;
  color:var(--muted) !important;
}

.rib-pro-main-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  margin:0 !important;
  min-width:0 !important;
}

.rib-pro-main-nav a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:40px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  text-decoration:none !important;
  color:#252525 !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

.rib-pro-main-nav a:hover,
.rib-pro-main-nav a.active{
  background:var(--cream) !important;
  color:#000 !important;
}

.rib-pro-cta{
  justify-self:end !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:0 18px !important;
  border-radius:999px !important;
  background:var(--orange) !important;
  color:#111 !important;
  text-decoration:none !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:13px !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  box-shadow:0 12px 28px rgba(255,167,1,.24) !important;
}

.rib-pro-menu-button{
  display:none !important;
  justify-self:end !important;
  border:0 !important;
  background:#111 !important;
  color:#fff !important;
  border-radius:999px !important;
  padding:10px 16px !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:13px !important;
  font-weight:800 !important;
  cursor:pointer !important;
}

.rib-pro-footer{
  background:#0b0b0b !important;
  color:#fff !important;
  padding:64px 0 26px !important;
}

.rib-pro-footer-grid{
  display:grid !important;
  grid-template-columns:minmax(320px, 1.45fr) minmax(145px, .7fr) minmax(170px, .85fr) minmax(240px, 1.05fr) minmax(215px, .95fr) !important;
  column-gap:46px !important;
  row-gap:34px !important;
  align-items:start !important;
}

.rib-pro-footer-brand{
  padding-right:20px !important;
}

.rib-pro-footer-logo{
  min-width:0 !important;
  margin-bottom:18px !important;
}

.rib-pro-footer-logo .rib-pro-brand-mark{
  background:var(--orange) !important;
  color:#111 !important;
  box-shadow:none !important;
}

.rib-pro-footer-logo .rib-pro-brand-copy strong{
  color:#fff !important;
}

.rib-pro-footer-logo .rib-pro-brand-copy small{
  color:rgba(255,255,255,.66) !important;
}

.rib-pro-footer p{
  color:rgba(255,255,255,.68) !important;
  margin:0 !important;
  line-height:1.75 !important;
  font-size:14px !important;
}

.rib-pro-footer-brand p{
  margin-top:18px !important;
  max-width:430px !important;
}

.rib-pro-footer-col h3{
  color:#fff !important;
  margin:0 0 16px !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:15px !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
}

.rib-pro-footer-col a{
  display:block !important;
  margin:10px 0 !important;
  color:rgba(255,255,255,.72) !important;
  text-decoration:none !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:14px !important;
  font-weight:500 !important;
  line-height:1.4 !important;
}

.rib-pro-footer-col a:hover{
  color:var(--orange) !important;
}

.rib-pro-footer-bottom{
  display:flex !important;
  justify-content:space-between !important;
  gap:24px !important;
  border-top:1px solid rgba(255,255,255,.12) !important;
  margin-top:42px !important;
  padding-top:22px !important;
  color:rgba(255,255,255,.55) !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:12px !important;
  line-height:1.5 !important;
}

@media(max-width:1240px){
  .rib-pro-nav{
    grid-template-columns:auto auto !important;
  }

  .rib-pro-menu-button{
    display:inline-flex !important;
  }

  .rib-pro-main-nav{
    display:none !important;
    grid-column:1 / -1 !important;
    width:100% !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:4px !important;
    background:#fff !important;
    border:1px solid var(--line) !important;
    border-radius:18px !important;
    padding:10px !important;
    margin:0 0 14px !important;
  }

  .rib-pro-main-nav.open{
    display:flex !important;
  }

  .rib-pro-main-nav a{
    justify-content:flex-start !important;
    height:auto !important;
    min-height:44px !important;
    padding:12px 14px !important;
  }

  .rib-pro-cta{
    display:none !important;
  }

  .rib-pro-footer-grid{
    grid-template-columns:1.25fr .75fr .85fr 1fr !important;
  }

  .rib-pro-footer-brand{
    grid-column:1 / -1 !important;
  }
}

@media(max-width:860px){
  .rib-pro-footer-grid{
    grid-template-columns:1fr 1fr !important;
  }

  .rib-pro-footer-bottom{
    flex-direction:column !important;
  }
}

@media(max-width:640px){
  .rib-pro-nav{
    grid-template-columns:1fr auto !important;
  }

  .rib-pro-brand{
    min-width:0 !important;
  }

  .rib-pro-brand-copy strong{
    font-size:12px !important;
  }

  .rib-pro-brand-copy small{
    display:none !important;
  }

  .rib-pro-footer-grid{
    grid-template-columns:1fr !important;
  }
}

/* Skip link hidden in commercial package */
.skip-link{
  position:absolute !important;
  left:-10000px !important;
  top:auto !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(1px, 1px, 1px, 1px) !important;
  white-space:nowrap !important;
}

/* Request Full Agreement page redesign */
.request-agreement-hero{
  background:radial-gradient(circle at 82% 18%,rgba(255,167,1,.32),transparent 32%),linear-gradient(135deg,#0b0b0b 0%,#27201a 100%) !important;
}

.agreement-card-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:18px;
}

.agreement-card-grid article{
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  padding:26px;
  box-shadow:var(--shadow-soft);
}

.agreement-card-grid article span{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:14px;
  background:#111;
  color:var(--orange);
  font-weight:900;
  margin-bottom:16px;
}

.request-form-shell{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:42px;
  align-items:start;
}

.request-form-intro{
  position:sticky;
  top:110px;
}

.request-side-panel{
  margin-top:24px;
  background:#111;
  color:#fff;
  border-radius:28px;
  padding:26px;
  box-shadow:var(--shadow-soft);
}

.request-side-panel h3{
  color:#fff;
  margin-bottom:14px;
}

.request-side-panel ol{
  margin:0;
  padding-left:20px;
  color:rgba(255,255,255,.78);
}

.request-side-panel li{
  margin:10px 0;
}

.agreement-form-card{
  display:block !important;
  background:#fff !important;
  border:1px solid var(--line) !important;
  border-radius:32px !important;
  padding:32px !important;
  box-shadow:var(--shadow) !important;
}

.agreement-form-card .form-row{
  display:grid;
  gap:18px;
  margin-bottom:18px;
}

.agreement-form-card .form-row.two{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.agreement-form-card label{
  display:grid !important;
  gap:8px !important;
  margin-bottom:18px !important;
  color:#111 !important;
  font-size:13px !important;
  font-weight:800 !important;
}

.agreement-form-card input,
.agreement-form-card select,
.agreement-form-card textarea{
  width:100% !important;
  min-height:52px !important;
  border:1px solid #D8CDBD !important;
  border-radius:16px !important;
  padding:14px 16px !important;
  background:#fff !important;
  color:#111 !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:14px !important;
  box-shadow:none !important;
}

.agreement-form-card textarea{
  min-height:140px !important;
  resize:vertical !important;
}

.agreement-consent{
  display:flex !important;
  grid-template-columns:none !important;
  align-items:flex-start !important;
  gap:12px !important;
  padding:16px !important;
  background:#fff8ea !important;
  border:1px solid #F1D9A4 !important;
  border-radius:18px !important;
  margin-top:8px !important;
}

.agreement-consent input{
  width:auto !important;
  min-height:auto !important;
  margin-top:4px !important;
}

.agreement-consent span{
  font-weight:600 !important;
  color:#333 !important;
}

.agreement-submit{
  width:100% !important;
  min-height:58px !important;
  margin-top:10px !important;
  font-size:15px !important;
}

@media(max-width:1080px){
  .agreement-card-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .request-form-shell{
    grid-template-columns:1fr;
  }
  .request-form-intro{
    position:static;
  }
}

@media(max-width:720px){
  .agreement-card-grid,
  .agreement-form-card .form-row.two{
    grid-template-columns:1fr;
  }
  .agreement-form-card{
    padding:22px !important;
  }
}

/* Pathway tabs section */
.pathway-tabs-section{
  background:#fff;
}
.pathway-tabs{
  background:#fff;
  border:1px solid var(--line);
  border-radius:32px;
  padding:20px;
  box-shadow:var(--shadow);
}
.pathway-tab-list{
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:10px;
  margin-bottom:20px;
}
.pathway-tab{
  border:1px solid var(--line);
  background:#fffaf0;
  color:#111;
  border-radius:18px;
  min-height:76px;
  padding:12px 10px;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-weight:800;
  font-size:13px;
  text-align:center;
  transition:transform .2s ease, background .2s ease, border-color .2s ease;
}
.pathway-tab:hover{
  transform:translateY(-2px);
}
.pathway-tab.active{
  background:#111;
  color:var(--orange);
  border-color:#111;
}
.pathway-tab .tab-icon{
  font-size:24px;
  line-height:1;
}
.pathway-panel{
  display:none;
  grid-template-columns:minmax(0, 1.1fr) minmax(260px, .9fr);
  gap:26px;
  align-items:stretch;
  background:linear-gradient(180deg,#fff,#fff8ea);
  border:1px solid var(--line);
  border-radius:26px;
  padding:30px;
}
.pathway-panel.active{
  display:grid;
}
.pathway-panel-copy{
  align-self:center;
}
.pathway-badge{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  background:#111;
  color:var(--orange);
  font-weight:900;
  font-size:12px;
  padding:7px 12px;
  margin-bottom:15px;
}
.pathway-panel h3{
  font-size:34px;
  margin-bottom:12px;
}
.pathway-panel p{
  font-size:16px;
}
.pathway-panel ul{
  list-style:none;
  margin:20px 0 24px;
  padding:0;
  display:grid;
  gap:10px;
}
.pathway-panel li{
  position:relative;
  padding-left:30px;
  color:#333;
  font-weight:600;
}
.pathway-panel li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:1px;
  width:20px;
  height:20px;
  border-radius:7px;
  background:var(--orange);
  color:#111;
  display:grid;
  place-items:center;
  font-size:12px;
  font-weight:900;
}
.pathway-visual{
  min-height:300px;
  border-radius:26px;
  padding:28px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  color:#fff;
  background:linear-gradient(135deg,#111,#3d2a05);
  box-shadow:var(--shadow-soft);
}
.pathway-visual span{
  font-size:58px;
  line-height:1;
  margin-bottom:auto;
}
.pathway-visual strong{
  display:block;
  color:#fff;
  font-size:28px;
  line-height:1.1;
  margin-bottom:8px;
}
.pathway-visual em{
  color:rgba(255,255,255,.75);
  font-style:normal;
  font-weight:600;
}
.media-visual{background:linear-gradient(135deg,#111,#513400);}
.host-visual{background:linear-gradient(135deg,#111,#4a3420);}
.ops-visual{background:linear-gradient(135deg,#111,#0E6F5C);}
.health-visual{background:linear-gradient(135deg,#111,#1167B1);}
.facility-visual{background:linear-gradient(135deg,#111,#303A42);}
.procurement-visual{background:linear-gradient(135deg,#111,#5A3C00);}

@media(max-width:1080px){
  .pathway-tab-list{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
  .pathway-panel{
    grid-template-columns:1fr;
  }
}
@media(max-width:720px){
  .pathway-tabs{
    padding:14px;
  }
  .pathway-tab-list{
    grid-template-columns:1fr 1fr;
  }
  .pathway-panel{
    padding:22px;
  }
  .pathway-panel h3{
    font-size:28px;
  }
}

/* RIB Mailing List section */
.rib-mailing-section{
  background:linear-gradient(135deg,#111 0%,#252018 55%,#3c2700 100%);
  color:#fff;
  position:relative;
  overflow:hidden;
}
.rib-mailing-section:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:54px 54px;
  opacity:.65;
}
.rib-mailing-shell{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0, .95fr) minmax(420px, 1.05fr);
  gap:44px;
  align-items:center;
}
.rib-mailing-copy h2{
  color:#fff;
}
.rib-mailing-copy p{
  color:rgba(255,255,255,.76);
  font-size:17px;
}
.rib-mailing-points{
  display:grid;
  gap:12px;
  margin-top:26px;
}
.rib-mailing-points div{
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
  padding:16px 18px;
}
.rib-mailing-points strong{
  display:block;
  color:#fff;
  font-weight:800;
}
.rib-mailing-points span{
  color:rgba(255,255,255,.68);
  font-size:13px;
}
.rib-mailing-form{
  background:#fff;
  color:#111;
  border:1px solid rgba(255,255,255,.18);
  border-radius:32px;
  padding:30px;
  box-shadow:var(--shadow);
}
.rib-mailing-form label{
  display:grid;
  gap:8px;
  margin-bottom:16px;
  font-size:13px;
  font-weight:800;
  color:#111;
}
.rib-mailing-form input,
.rib-mailing-form select{
  width:100%;
  min-height:52px;
  border:1px solid #D8CDBD;
  border-radius:16px;
  padding:13px 15px;
  background:#fff;
  color:#111;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:14px;
}
.rib-form-row.two{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
}
.rib-mailing-consent{
  display:flex !important;
  grid-template-columns:none !important;
  align-items:flex-start !important;
  gap:12px !important;
  background:#fff8ea;
  border:1px solid #F1D9A4;
  border-radius:18px;
  padding:15px;
}
.rib-mailing-consent input{
  width:auto !important;
  min-height:auto !important;
  margin-top:4px;
}
.rib-mailing-consent span{
  font-weight:600;
  color:#333;
  line-height:1.5;
}
.rib-mailing-submit{
  width:100%;
  min-height:58px;
}

/* Footer mailing list */
.rib-footer-signup{
  margin-top:22px;
  padding:18px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;
}
.rib-footer-signup h3{
  color:#fff;
  margin:0 0 8px !important;
  font-size:15px;
}
.rib-footer-signup p{
  color:rgba(255,255,255,.68) !important;
  margin:0 0 12px !important;
  font-size:12px !important;
  line-height:1.5 !important;
}
.rib-footer-signup-form{
  display:grid;
  gap:9px;
}
.rib-footer-signup-form input,
.rib-footer-signup-form select{
  width:100%;
  min-height:40px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:12px;
  padding:9px 10px;
  background:rgba(255,255,255,.95);
  color:#111;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:12px;
}
.rib-footer-signup-form label{
  display:flex;
  gap:8px;
  align-items:flex-start;
  color:rgba(255,255,255,.68);
  font-size:11px;
  line-height:1.4;
}
.rib-footer-signup-form label input{
  width:auto;
  min-height:auto;
  margin-top:3px;
}
.rib-footer-signup-form button{
  min-height:40px;
  border:0;
  border-radius:999px;
  background:var(--orange);
  color:#111;
  font-weight:900;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  cursor:pointer;
}
.rib-footer-signup-form .form-status{
  margin:0;
  color:var(--orange);
  font-size:11px;
  font-weight:700;
}
@media(max-width:1080px){
  .rib-mailing-shell{
    grid-template-columns:1fr;
  }
}
@media(max-width:720px){
  .rib-form-row.two{
    grid-template-columns:1fr;
  }
  .rib-mailing-form{
    padding:22px;
  }
}

/* Horizontal compact footer mailing-list signup */
.rib-footer-signup{
  margin-top:24px !important;
  padding:18px !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:20px !important;
}

.rib-footer-signup h3{
  color:#fff !important;
  margin:0 0 6px !important;
  font-size:15px !important;
}

.rib-footer-signup p{
  color:rgba(255,255,255,.68) !important;
  margin:0 0 14px !important;
  font-size:12px !important;
  line-height:1.5 !important;
}

.rib-footer-signup-form{
  display:grid !important;
  grid-template-columns:minmax(170px, 1fr) minmax(150px, .85fr) auto !important;
  gap:10px !important;
  align-items:center !important;
}

.rib-footer-signup-form input[type="email"],
.rib-footer-signup-form select{
  width:100% !important;
  min-height:42px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:999px !important;
  padding:9px 14px !important;
  background:rgba(255,255,255,.96) !important;
  color:#111 !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:12px !important;
}

.rib-footer-signup-form button{
  min-height:42px !important;
  border:0 !important;
  border-radius:999px !important;
  background:var(--orange) !important;
  color:#111 !important;
  font-weight:900 !important;
  padding:0 18px !important;
  white-space:nowrap !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  cursor:pointer !important;
}

.rib-footer-signup-form label{
  grid-column:1 / -1 !important;
  display:flex !important;
  gap:8px !important;
  align-items:flex-start !important;
  color:rgba(255,255,255,.68) !important;
  font-size:11px !important;
  line-height:1.4 !important;
  margin-top:2px !important;
}

.rib-footer-signup-form label input{
  width:auto !important;
  min-height:auto !important;
  margin-top:3px !important;
}

.rib-footer-signup-form .form-status{
  grid-column:1 / -1 !important;
  margin:0 !important;
  color:var(--orange) !important;
  font-size:11px !important;
  font-weight:700 !important;
}

@media(max-width:1180px){
  .rib-footer-signup-form{
    grid-template-columns:1fr 1fr !important;
  }
  .rib-footer-signup-form button{
    grid-column:1 / -1 !important;
    width:100% !important;
  }
}

@media(max-width:640px){
  .rib-footer-signup-form{
    grid-template-columns:1fr !important;
  }
}

/* Clean footer newsletter bar */
.rib-footer-signup{
  display:none !important;
}

.rib-footer-newsletter{
  display:grid !important;
  grid-template-columns:minmax(260px, .8fr) minmax(0, 1.2fr) !important;
  gap:28px !important;
  align-items:center !important;
  margin-bottom:42px !important;
  padding:24px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:28px !important;
  background:linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.04)) !important;
}

.rib-footer-newsletter-copy h3{
  color:#fff !important;
  margin:0 0 8px !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:22px !important;
  font-weight:800 !important;
  letter-spacing:-.02em !important;
}

.rib-footer-newsletter-copy p{
  color:rgba(255,255,255,.68) !important;
  margin:0 !important;
  line-height:1.55 !important;
  font-size:14px !important;
}

.rib-footer-newsletter-form{
  display:grid !important;
  grid-template-columns:minmax(210px, 1fr) minmax(180px, .8fr) auto !important;
  gap:12px !important;
  align-items:center !important;
  margin:0 !important;
}

.rib-footer-newsletter-form input[type="email"],
.rib-footer-newsletter-form select{
  width:100% !important;
  min-height:48px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:999px !important;
  padding:0 16px !important;
  background:#fff !important;
  color:#111 !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:13px !important;
  box-sizing:border-box !important;
}

.rib-footer-newsletter-form button{
  min-height:48px !important;
  border:0 !important;
  border-radius:999px !important;
  background:var(--orange) !important;
  color:#111 !important;
  padding:0 24px !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:13px !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  cursor:pointer !important;
}

.rib-footer-newsletter-form label{
  grid-column:1 / -1 !important;
  display:flex !important;
  align-items:flex-start !important;
  gap:9px !important;
  margin:2px 0 0 !important;
  color:rgba(255,255,255,.68) !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:11px !important;
  line-height:1.4 !important;
}

.rib-footer-newsletter-form label input{
  width:auto !important;
  min-height:auto !important;
  margin:3px 0 0 !important;
}

.rib-footer-newsletter-form .form-status{
  grid-column:1 / -1 !important;
  color:var(--orange) !important;
  margin:0 !important;
  font-size:12px !important;
  font-weight:700 !important;
}

@media(max-width:1080px){
  .rib-footer-newsletter{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:760px){
  .rib-footer-newsletter-form{
    grid-template-columns:1fr !important;
  }
  .rib-footer-newsletter-form button{
    width:100% !important;
  }
}

/* Link color update */
:root{
  --orange:#FFA311 !important;
  --orange2:#FFA311 !important;
}
a:not(.btn):not(.rib-pro-cta):not(.nav-cta):not(.brand):not(.rib-pro-brand){
  color:#FFA311;
}
a:not(.btn):not(.rib-pro-cta):not(.nav-cta):not(.brand):not(.rib-pro-brand):hover{
  color:#ffb640;
}
.footer a,
.rib-pro-footer a,
.rib-pro-footer-col a{
  color:#FFA311 !important;
}
.footer a:hover,
.rib-pro-footer a:hover,
.rib-pro-footer-col a:hover{
  color:#ffb640 !important;
}
.policy-sidebar a:hover,
.tri-card a,
.resource-grid article a:not(.btn),
.footer-bottom a{
  color:#FFA311 !important;
}

/* RIB deployment steps tabs */
.rib-steps-tabs-section{
  background:#fffaf3;
}
.rib-steps-tabs{
  background:#fff;
  border:1px solid var(--line);
  border-radius:34px;
  padding:22px;
  box-shadow:var(--shadow);
}
.rib-steps-tab-list{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
  margin-bottom:22px;
}
.rib-steps-tab{
  border:1px solid var(--line);
  background:linear-gradient(180deg,#fff,#fff7ea);
  border-radius:22px;
  min-height:110px;
  padding:14px 12px;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  text-align:center;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  transition:transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.rib-steps-tab:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-soft);
}
.rib-steps-tab.active{
  background:#111;
  border-color:#111;
  color:#FFA311;
}
.tab-step-no{
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}
.tab-step-icon{
  font-size:28px;
  line-height:1;
}
.tab-step-label{
  font-size:13px;
  font-weight:800;
  line-height:1.25;
}
.rib-steps-panel{
  display:none;
  grid-template-columns:minmax(0, 1.1fr) minmax(280px, .9fr);
  gap:28px;
  align-items:stretch;
  border:1px solid var(--line);
  border-radius:28px;
  padding:30px;
  background:linear-gradient(180deg,#fff,#fff8ea);
}
.rib-steps-panel.active{
  display:grid;
}
.step-badge{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  background:#111;
  color:#FFA311;
  font-weight:900;
  font-size:12px;
  padding:7px 12px;
  margin-bottom:15px;
}
.rib-steps-panel-copy h3{
  font-size:34px;
  margin-bottom:12px;
}
.rib-steps-panel-copy p{
  font-size:16px;
}
.rib-steps-panel-copy ul{
  list-style:none;
  padding:0;
  margin:20px 0 0;
  display:grid;
  gap:10px;
}
.rib-steps-panel-copy li{
  position:relative;
  padding-left:30px;
  color:#333;
  font-weight:600;
}
.rib-steps-panel-copy li:before{
  content:"✦";
  position:absolute;
  left:0;
  top:1px;
  width:20px;
  height:20px;
  border-radius:7px;
  background:#FFA311;
  color:#111;
  display:grid;
  place-items:center;
  font-size:11px;
  font-weight:900;
}
.rib-steps-visual{
  min-height:320px;
  border-radius:28px;
  padding:30px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  color:#fff;
  box-shadow:var(--shadow-soft);
}
.rib-steps-visual span{
  font-size:60px;
  line-height:1;
  margin-bottom:auto;
}
.rib-steps-visual strong{
  display:block;
  font-size:30px;
  line-height:1.1;
  color:#fff;
  margin-bottom:8px;
}
.rib-steps-visual em{
  color:rgba(255,255,255,.75);
  font-style:normal;
  font-weight:600;
}
.step1-visual{background:linear-gradient(135deg,#111,#744700);}
.step2-visual{background:linear-gradient(135deg,#111,#77542B);}
.step3-visual{background:linear-gradient(135deg,#111,#8B4D00);}
.step4-visual{background:linear-gradient(135deg,#111,#0E6F5C);}
@media(max-width:1080px){
  .rib-steps-tab-list{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .rib-steps-panel{
    grid-template-columns:1fr;
  }
}
@media(max-width:720px){
  .rib-steps-tabs{
    padding:16px;
  }
  .rib-steps-tab-list{
    grid-template-columns:1fr;
  }
  .rib-steps-panel{
    padding:22px;
  }
  .rib-steps-panel-copy h3{
    font-size:28px;
  }
}

/* How It Works logic flow redesign */
.how-flow-intro{
  background:#fff;
}
.how-flow-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:18px;
}
.how-flow-grid article{
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  padding:26px;
  box-shadow:var(--shadow-soft);
}
.how-flow-grid article span{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:14px;
  background:#111;
  color:#FFA311;
  font-weight:900;
  margin-bottom:16px;
}
.how-flow-grid article h3{
  font-size:21px;
}
.how-flow-grid article p{
  margin-bottom:0;
}
@media(max-width:1080px){
  .how-flow-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media(max-width:720px){
  .how-flow-grid{
    grid-template-columns:1fr;
  }
}

/* Simple deployment model tabs */
.rib-simple-deployment-tabs-section{
  background:#fffaf3;
}
.rib-simple-tabs{
  background:#fff;
  border:1px solid var(--line);
  border-radius:34px;
  padding:22px;
  box-shadow:var(--shadow);
}
.rib-simple-tab-list{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
  margin-bottom:22px;
}
.rib-simple-tab{
  border:1px solid var(--line);
  background:linear-gradient(180deg,#fff,#fff7ea);
  border-radius:22px;
  min-height:112px;
  padding:14px 12px;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  text-align:center;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  transition:transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.rib-simple-tab:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-soft);
}
.rib-simple-tab.active{
  background:#111;
  border-color:#111;
  color:#FFA311;
}
.rib-simple-step-no{
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}
.rib-simple-step-icon{
  font-size:28px;
  line-height:1;
}
.rib-simple-step-label{
  font-size:13px;
  font-weight:800;
  line-height:1.25;
}
.rib-simple-panel{
  display:none;
  grid-template-columns:minmax(0, 1.1fr) minmax(280px, .9fr);
  gap:28px;
  align-items:stretch;
  border:1px solid var(--line);
  border-radius:28px;
  padding:30px;
  background:linear-gradient(180deg,#fff,#fff8ea);
}
.rib-simple-panel.active{
  display:grid;
}
.rib-simple-badge{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  background:#111;
  color:#FFA311;
  font-weight:900;
  font-size:12px;
  padding:7px 12px;
  margin-bottom:15px;
}
.rib-simple-panel-copy h3{
  font-size:34px;
  margin-bottom:12px;
}
.rib-simple-panel-copy p{
  font-size:16px;
}
.rib-simple-panel-copy ul{
  list-style:none;
  padding:0;
  margin:20px 0 0;
  display:grid;
  gap:10px;
}
.rib-simple-panel-copy li{
  position:relative;
  padding-left:30px;
  color:#333;
  font-weight:600;
}
.rib-simple-panel-copy li:before{
  content:"✦";
  position:absolute;
  left:0;
  top:1px;
  width:20px;
  height:20px;
  border-radius:7px;
  background:#FFA311;
  color:#111;
  display:grid;
  place-items:center;
  font-size:11px;
  font-weight:900;
}
.rib-simple-visual{
  min-height:320px;
  border-radius:28px;
  padding:30px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  color:#fff;
  box-shadow:var(--shadow-soft);
}
.rib-simple-visual span{
  font-size:60px;
  line-height:1;
  margin-bottom:auto;
}
.rib-simple-visual strong{
  display:block;
  font-size:30px;
  line-height:1.1;
  color:#fff;
  margin-bottom:8px;
}
.rib-simple-visual em{
  color:rgba(255,255,255,.75);
  font-style:normal;
  font-weight:600;
}
.rib-simple-visual-1{background:linear-gradient(135deg,#111,#744700);}
.rib-simple-visual-2{background:linear-gradient(135deg,#111,#77542B);}
.rib-simple-visual-3{background:linear-gradient(135deg,#111,#8B4D00);}
.rib-simple-visual-4{background:linear-gradient(135deg,#111,#0E6F5C);}

@media(max-width:1080px){
  .rib-simple-tab-list{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .rib-simple-panel{
    grid-template-columns:1fr;
  }
}
@media(max-width:720px){
  .rib-simple-tabs{
    padding:16px;
  }
  .rib-simple-tab-list{
    grid-template-columns:1fr;
  }
  .rib-simple-panel{
    padding:22px;
  }
  .rib-simple-panel-copy h3{
    font-size:28px;
  }
}

/* Universal form confirmation experience */
.rib-form-confirmation{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:20px;
  align-items:flex-start;
  background:#fff;
  border:1px solid var(--line);
  border-radius:28px;
  padding:28px;
  box-shadow:var(--shadow);
  margin-top:22px;
}
.rib-form-confirmation-icon{
  width:64px;height:64px;border-radius:20px;display:grid;place-items:center;
  background:#111;color:#FFA311;font-size:30px;box-shadow:0 18px 40px rgba(0,0,0,.16);
}
.rib-form-confirmation-copy h3{margin:0 0 10px;font-size:26px;color:#111;}
.rib-form-confirmation-copy p{margin:0 0 12px;color:var(--muted);line-height:1.65;}
.rib-form-confirmation-next{
  background:#fff8ea;border:1px solid #F1D9A4;border-radius:16px;padding:14px 16px;
  color:#332100!important;font-weight:600;
}
.rib-form-confirmation-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px;}
.rib-form-confirmation-actions .btn{min-height:44px;}
.rib-form-submitted{display:none!important;}
.thank-you-hero{
  background:radial-gradient(circle at 80% 20%,rgba(255,163,17,.36),transparent 32%),linear-gradient(135deg,#0b0b0b 0%,#27201a 100%)!important;
}
.thank-you-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.thank-you-card-grid article{background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:var(--shadow-soft);}
.thank-you-card-grid article span{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:#111;color:#FFA311;font-size:28px;margin-bottom:18px;}
@media(max-width:900px){.thank-you-card-grid{grid-template-columns:1fr;}}
@media(max-width:720px){
  .rib-form-confirmation{grid-template-columns:1fr;padding:22px;}
  .rib-form-confirmation-actions{display:grid;grid-template-columns:1fr;}
}


/* Secure form validation and anti-spam styles */
.rib-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.rib-form-validation-summary{background:#fff3f0;border:1px solid #f2b8aa;color:#4f160c;border-radius:18px;padding:16px 18px;margin:0 0 18px}
.rib-form-validation-summary strong{display:block;margin-bottom:8px}
.rib-form-validation-summary ul{margin:0;padding-left:20px}
.rib-field-error input,.rib-field-error select,.rib-field-error textarea,input.rib-field-error,select.rib-field-error,textarea.rib-field-error{border-color:#c63d25!important;box-shadow:0 0 0 4px rgba(198,61,37,.12)!important}
.rib-form-confirmation{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow);margin-top:22px}
.rib-form-confirmation-icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:#111;color:#FFA311;font-size:30px;box-shadow:0 18px 40px rgba(0,0,0,.16)}
.rib-form-confirmation-copy h3{margin:0 0 10px;font-size:26px;color:#111}
.rib-form-confirmation-copy p{margin:0 0 12px;color:var(--muted);line-height:1.65}
.rib-form-confirmation-next{background:#fff8ea;border:1px solid #F1D9A4;border-radius:16px;padding:14px 16px;color:#332100!important;font-weight:600}
.rib-form-confirmation-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.rib-form-submitted{display:none!important}
@media(max-width:720px){.rib-form-confirmation{grid-template-columns:1fr;padding:22px}.rib-form-confirmation-actions{display:grid;grid-template-columns:1fr}}
/* Business email validation hint */
input[type="email"]:invalid,input[type="email"].rib-field-error{border-color:#c63d25!important;box-shadow:0 0 0 4px rgba(198,61,37,.12)!important}

/* Business development engine additions */
.bd-card-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.bd-card-grid article,
.pricing-grid article,
.metrics-grid article,
.pilot-timeline article{
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  padding:26px;
  box-shadow:var(--shadow-soft);
}
.bd-card-grid article span,
.pricing-grid article span,
.metrics-grid article span{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  border-radius:18px;
  background:#111;
  color:#FFA311;
  font-size:26px;
  margin-bottom:16px;
}
.bd-card-grid article a{
  display:inline-flex;
  margin-top:10px;
  font-weight:800;
  text-decoration:none;
}
.pricing-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.pricing-grid article ul{
  margin:18px 0;
  padding-left:20px;
  color:var(--muted);
}
.pilot-timeline{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.pilot-timeline article span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:14px;
  background:#111;
  color:#FFA311;
  font-weight:900;
  margin-bottom:16px;
}
.comparison-table-wrap{
  overflow-x:auto;
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  box-shadow:var(--shadow-soft);
}
.comparison-table{
  width:100%;
  border-collapse:collapse;
}
.comparison-table th,
.comparison-table td{
  padding:18px 20px;
  border-bottom:1px solid var(--line);
  text-align:left;
  vertical-align:top;
}
.comparison-table th{
  background:#111;
  color:#FFA311;
}
.metrics-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.dashboard-preview{
  display:grid;
  grid-template-columns:1.3fr repeat(4,1fr);
  gap:16px;
  align-items:stretch;
  background:#111;
  color:#fff;
  border-radius:30px;
  padding:26px;
  box-shadow:var(--shadow);
}
.dashboard-preview > div{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;
  padding:20px;
}
.dashboard-preview strong{
  display:block;
  color:#FFA311;
  font-size:34px;
}
.brief-sheet{
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  padding:40px;
  box-shadow:var(--shadow);
}
.brief-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin:24px 0;
}
.brief-grid article{
  border:1px solid var(--line);
  border-radius:20px;
  padding:20px;
}
.request-demo-hero{
  background:radial-gradient(circle at 80% 20%,rgba(255,163,17,.36),transparent 32%),linear-gradient(135deg,#0b0b0b 0%,#27201a 100%)!important;
}
@media(max-width:1180px){
  .bd-card-grid,.pricing-grid,.pilot-timeline,.brief-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .dashboard-preview{grid-template-columns:1fr 1fr;}
}
@media(max-width:720px){
  .bd-card-grid,.pricing-grid,.pilot-timeline,.metrics-grid,.brief-grid,.dashboard-preview{grid-template-columns:1fr;}
  .brief-sheet{padding:24px;}
}
@media print{
  .rib-pro-header,.rib-pro-footer,.action-row{display:none!important;}
  .brief-sheet{box-shadow:none;border:0;padding:0;}
  body{background:#fff!important;}
}

/* Solutions dropdown menu */
.rib-pro-nav{
  grid-template-columns:auto minmax(0, 1fr) auto !important;
}

.rib-pro-main-nav{
  gap:6px !important;
}

.rib-pro-main-nav > a,
.rib-nav-dropdown-toggle{
  height:40px !important;
  padding:0 11px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  white-space:nowrap !important;
  color:#252525 !important;
  background:transparent !important;
  border:0 !important;
  text-decoration:none !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1 !important;
  cursor:pointer !important;
}

.rib-pro-main-nav > a:hover,
.rib-pro-main-nav > a.active,
.rib-nav-dropdown:hover .rib-nav-dropdown-toggle,
.rib-nav-dropdown.open .rib-nav-dropdown-toggle{
  background:var(--cream) !important;
  color:#000 !important;
}

.rib-nav-dropdown{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
}

.rib-nav-dropdown-menu{
  position:absolute !important;
  top:calc(100% + 12px) !important;
  left:50% !important;
  transform:translateX(-50%) translateY(8px) !important;
  width:330px !important;
  background:#fff !important;
  border:1px solid var(--line) !important;
  border-radius:22px !important;
  box-shadow:0 24px 70px rgba(0,0,0,.16) !important;
  padding:10px !important;
  display:none !important;
  z-index:1000 !important;
}

.rib-nav-dropdown:hover .rib-nav-dropdown-menu,
.rib-nav-dropdown:focus-within .rib-nav-dropdown-menu,
.rib-nav-dropdown.open .rib-nav-dropdown-menu{
  display:grid !important;
  gap:4px !important;
  transform:translateX(-50%) translateY(0) !important;
}

.rib-nav-dropdown-menu:before{
  content:"" !important;
  position:absolute !important;
  top:-9px !important;
  left:50% !important;
  width:18px !important;
  height:18px !important;
  background:#fff !important;
  border-left:1px solid var(--line) !important;
  border-top:1px solid var(--line) !important;
  transform:translateX(-50%) rotate(45deg) !important;
}

.rib-nav-dropdown-menu a{
  position:relative !important;
  display:grid !important;
  gap:4px !important;
  padding:14px 14px !important;
  border-radius:16px !important;
  text-decoration:none !important;
  color:#111 !important;
  background:#fff !important;
}

.rib-nav-dropdown-menu a:hover{
  background:#fff8ea !important;
}

.rib-nav-dropdown-menu a strong{
  color:#111 !important;
  font-size:14px !important;
  font-weight:900 !important;
}

.rib-nav-dropdown-menu a small{
  color:var(--muted) !important;
  font-size:12px !important;
  line-height:1.35 !important;
  font-weight:600 !important;
}

@media(max-width:1240px){
  .rib-pro-main-nav{
    gap:4px !important;
  }

  .rib-nav-dropdown{
    width:100% !important;
    display:block !important;
  }

  .rib-nav-dropdown-toggle{
    width:100% !important;
    justify-content:space-between !important;
    height:auto !important;
    min-height:44px !important;
    padding:12px 14px !important;
    border-radius:12px !important;
  }

  .rib-nav-dropdown-menu{
    position:static !important;
    transform:none !important;
    width:100% !important;
    box-shadow:none !important;
    border:1px solid var(--line) !important;
    border-radius:16px !important;
    margin:4px 0 8px !important;
    padding:8px !important;
    display:none !important;
  }

  .rib-nav-dropdown-menu:before{
    display:none !important;
  }

  .rib-nav-dropdown.open .rib-nav-dropdown-menu{
    display:grid !important;
  }

  .rib-nav-dropdown:hover .rib-nav-dropdown-menu{
    display:none !important;
  }

  .rib-nav-dropdown.open:hover .rib-nav-dropdown-menu{
    display:grid !important;
  }
}

/* Simple Solutions submenu */
.rib-nav-dropdown-menu{
  width:220px !important;
}

.rib-nav-dropdown-menu a{
  display:block !important;
  padding:13px 16px !important;
  border-radius:14px !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  color:#111 !important;
}

.rib-nav-dropdown-menu a small,
.rib-nav-dropdown-menu a strong{
  display:inline !important;
  font-size:inherit !important;
  font-weight:inherit !important;
  color:inherit !important;
}

@media(max-width:1240px){
  .rib-nav-dropdown-menu{
    width:100% !important;
  }
}

/* Final grouped commercial menu */
.rib-pro-nav{
  grid-template-columns:auto minmax(0, 1fr) auto !important;
  gap:22px !important;
}

.rib-pro-main-nav{
  gap:6px !important;
}

.rib-pro-main-nav > a,
.rib-nav-dropdown-toggle{
  height:40px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  white-space:nowrap !important;
  color:#252525 !important;
  background:transparent !important;
  border:0 !important;
  text-decoration:none !important;
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1 !important;
  cursor:pointer !important;
}

.rib-pro-main-nav > a:hover,
.rib-pro-main-nav > a.active,
.rib-nav-dropdown:hover .rib-nav-dropdown-toggle,
.rib-nav-dropdown.open .rib-nav-dropdown-toggle{
  background:var(--cream) !important;
  color:#000 !important;
}

.rib-nav-dropdown{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
}

.rib-nav-dropdown-menu{
  position:absolute !important;
  top:calc(100% + 12px) !important;
  left:50% !important;
  transform:translateX(-50%) translateY(8px) !important;
  width:250px !important;
  background:#fff !important;
  border:1px solid var(--line) !important;
  border-radius:20px !important;
  box-shadow:0 24px 70px rgba(0,0,0,.16) !important;
  padding:10px !important;
  display:none !important;
  z-index:1000 !important;
}

.rib-nav-dropdown:hover .rib-nav-dropdown-menu,
.rib-nav-dropdown:focus-within .rib-nav-dropdown-menu,
.rib-nav-dropdown.open .rib-nav-dropdown-menu{
  display:grid !important;
  gap:4px !important;
  transform:translateX(-50%) translateY(0) !important;
}

.rib-nav-dropdown-menu:before{
  content:"" !important;
  position:absolute !important;
  top:-9px !important;
  left:50% !important;
  width:18px !important;
  height:18px !important;
  background:#fff !important;
  border-left:1px solid var(--line) !important;
  border-top:1px solid var(--line) !important;
  transform:translateX(-50%) rotate(45deg) !important;
}

.rib-nav-dropdown-menu a{
  position:relative !important;
  display:block !important;
  padding:13px 16px !important;
  border-radius:14px !important;
  text-decoration:none !important;
  color:#111 !important;
  background:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}

.rib-nav-dropdown-menu a:hover{
  background:#fff8ea !important;
  color:#111 !important;
}

@media(max-width:1240px){
  .rib-pro-main-nav{
    gap:4px !important;
  }

  .rib-nav-dropdown{
    width:100% !important;
    display:block !important;
  }

  .rib-nav-dropdown-toggle{
    width:100% !important;
    justify-content:space-between !important;
    height:auto !important;
    min-height:44px !important;
    padding:12px 14px !important;
    border-radius:12px !important;
  }

  .rib-nav-dropdown-menu{
    position:static !important;
    transform:none !important;
    width:100% !important;
    box-shadow:none !important;
    border:1px solid var(--line) !important;
    border-radius:16px !important;
    margin:4px 0 8px !important;
    padding:8px !important;
    display:none !important;
  }

  .rib-nav-dropdown-menu:before{
    display:none !important;
  }

  .rib-nav-dropdown:hover .rib-nav-dropdown-menu{
    display:none !important;
  }

  .rib-nav-dropdown.open .rib-nav-dropdown-menu,
  .rib-nav-dropdown.open:hover .rib-nav-dropdown-menu{
    display:grid !important;
  }
}

/* Clean CTA and form rationalization */
.clean-conversion-panel{background:#fffaf3;}
.clean-conversion-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:30px;padding:30px;box-shadow:var(--shadow-soft);}
.clean-conversion-card h2{margin-bottom:10px;}
.clean-conversion-card p{margin-bottom:0;}
.clean-conversion-actions{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end;}
@media(max-width:860px){.clean-conversion-card{grid-template-columns:1fr}.clean-conversion-actions{justify-content:flex-start}}
@media(max-width:640px){.clean-conversion-actions{display:grid;grid-template-columns:1fr}}

/* RIB Ops and Health Ops visual image showcase */
.rib-ops-health-showcase{
  background:#fff;
}
.rib-showcase-grid{
  display:grid;
  gap:26px;
}
.rib-showcase-card{
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) minmax(360px, .95fr);
  gap:30px;
  align-items:center;
  background:linear-gradient(135deg,#fff,#fff8ea);
  border:1px solid var(--line);
  border-radius:34px;
  padding:24px;
  box-shadow:var(--shadow-soft);
}
.rib-showcase-card.reverse{
  grid-template-columns:minmax(360px, .95fr) minmax(0, 1.05fr);
}
.rib-showcase-card.reverse .rib-showcase-image{
  order:1;
}
.rib-showcase-card.reverse .rib-showcase-copy{
  order:2;
}
.rib-showcase-image{
  overflow:hidden;
  border-radius:26px;
  background:#f6f1e8;
  border:1px solid var(--line);
  box-shadow:0 18px 50px rgba(0,0,0,.12);
}
.rib-showcase-image img,
.rib-polished-image-card img{
  width:100%;
  height:100%;
  min-height:360px;
  object-fit:cover;
  display:block;
}
.rib-showcase-copy{
  padding:10px 12px;
}
.rib-showcase-copy h3{
  font-size:34px;
  margin-bottom:12px;
}
.rib-showcase-copy p{
  font-size:16px;
}
.rib-showcase-copy ul{
  list-style:none;
  padding:0;
  margin:20px 0;
  display:grid;
  gap:10px;
}
.rib-showcase-copy li{
  position:relative;
  padding-left:30px;
  font-weight:600;
  color:#333;
}
.rib-showcase-copy li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:1px;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#FFA311;
  color:#111;
  display:grid;
  place-items:center;
  font-size:12px;
  font-weight:900;
}
.text-link{
  color:#FFA311 !important;
  font-weight:900;
  text-decoration:none;
}
.text-link:hover{
  color:#ffb640 !important;
}
.rib-single-visual-section{
  background:#fffaf3;
}
.rib-visual-split{
  align-items:center;
}
.rib-polished-image-card{
  overflow:hidden;
  border-radius:30px;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:var(--shadow);
}
.rib-polished-image-card img{
  min-height:420px;
}
@media(max-width:1080px){
  .rib-showcase-card,
  .rib-showcase-card.reverse{
    grid-template-columns:1fr;
  }
  .rib-showcase-card.reverse .rib-showcase-image,
  .rib-showcase-card.reverse .rib-showcase-copy{
    order:initial;
  }
}
@media(max-width:720px){
  .rib-showcase-card{
    padding:16px;
    border-radius:26px;
  }
  .rib-showcase-copy h3{
    font-size:28px;
  }
  .rib-showcase-image img,
  .rib-polished-image-card img{
    min-height:260px;
  }
}

/* Health Ops presentation balance: text left, image right */
.rib-showcase-card.health-left-text{
  grid-template-columns:minmax(0, 1.05fr) minmax(360px, .95fr) !important;
}
.rib-showcase-card.health-left-text .rib-showcase-copy{
  order:1 !important;
}
.rib-showcase-card.health-left-text .rib-showcase-image{
  order:2 !important;
}
@media(max-width:1080px){
  .rib-showcase-card.health-left-text{
    grid-template-columns:1fr !important;
  }
  .rib-showcase-card.health-left-text .rib-showcase-copy,
  .rib-showcase-card.health-left-text .rib-showcase-image{
    order:initial !important;
  }
}

/* Dynamic RIB size visual guide for pricing */
.rib-size-visual-pricing{
  background:#fffaf3;
}
.rib-size-switcher{
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
  margin:10px 0 26px;
}
.rib-size-tab{
  appearance:none;
  border:1px solid var(--line);
  background:#fff;
  color:#111;
  border-radius:999px;
  padding:12px 20px;
  font-family:'Poppins', system-ui, sans-serif;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
  transition:all .2s ease;
  box-shadow:var(--shadow-soft);
}
.rib-size-tab.active,
.rib-size-tab:hover{
  background:#FFA311;
  color:#111;
  border-color:#FFA311;
}
.rib-size-panel-wrap{
  position:relative;
}
.rib-size-panel{
  display:none;
  grid-template-columns:minmax(360px, .95fr) minmax(0, 1.05fr);
  gap:32px;
  align-items:center;
  background:#fff;
  border:1px solid var(--line);
  border-radius:34px;
  padding:28px;
  box-shadow:var(--shadow-soft);
}
.rib-size-panel.active{
  display:grid;
}
.rib-size-visual{
  display:grid;
  place-items:center;
  min-height:420px;
  border-radius:28px;
  background:linear-gradient(180deg,#f8f5ef,#f3ede2);
  border:1px solid var(--line);
  overflow:hidden;
}
.rib-sheet-frame{
  position:relative;
  display:grid;
  place-items:center;
}
.rib-sheet{
  position:relative;
  background:#fff;
  border:4px solid #111;
  border-radius:18px;
  box-shadow:0 22px 45px rgba(0,0,0,.18);
  display:grid;
  place-items:center;
}
.a5-frame .rib-sheet{
  width:240px;
  height:340px;
}
.a4-frame .rib-sheet{
  width:300px;
  height:425px;
}
.rib-sheet-label{
  text-align:center;
  color:#111;
}
.rib-sheet-label strong{
  display:block;
  font-size:26px;
  font-weight:900;
  margin-bottom:8px;
}
.rib-sheet-label small{
  display:block;
  font-size:14px;
  color:#555;
  font-weight:700;
}
.rib-measure{
  position:absolute;
  background:#111;
  color:#fff;
  border-radius:999px;
  padding:8px 12px;
  font-size:12px;
  font-weight:800;
  line-height:1;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}
.rib-measure-top{
  top:18px;
  left:50%;
  transform:translateX(-50%);
}
.rib-measure-side{
  left:16px;
  top:50%;
  transform:translateY(-50%) rotate(-90deg);
  transform-origin:left top;
}
.rib-size-copy h3{
  font-size:34px;
  line-height:1.1;
  margin-bottom:12px;
}
.rib-size-copy h3 small{
  display:block;
  margin-top:8px;
  font-size:20px;
  color:#666;
  font-weight:700;
}
.rib-size-meta{
  display:grid;
  gap:10px;
  margin-top:18px;
}
.rib-size-meta span{
  display:block;
  padding:12px 14px;
  border-radius:16px;
  background:#fff8ea;
  border:1px solid #f1d7a1;
  font-weight:700;
}
.rib-custom-stack{
  position:relative;
  width:320px;
  height:320px;
}
.rib-custom-card{
  position:absolute;
  display:grid;
  place-items:center;
  border-radius:18px;
  border:3px solid #111;
  background:#fff;
  color:#111;
  font-weight:900;
  box-shadow:0 18px 40px rgba(0,0,0,.14);
}
.rib-custom-card.small-card{
  width:150px;
  height:210px;
  left:18px;
  bottom:24px;
}
.rib-custom-card.medium-card{
  width:200px;
  height:280px;
  left:62px;
  bottom:14px;
}
.rib-custom-card.large-card{
  width:240px;
  height:320px;
  right:0;
  top:0;
  background:linear-gradient(135deg,#fff,#fff0cf);
}
@media(max-width:980px){
  .rib-size-panel{
    grid-template-columns:1fr;
  }
  .rib-size-visual{
    min-height:320px;
  }
}
@media(max-width:640px){
  .rib-size-panel{
    padding:18px;
    border-radius:24px;
  }
  .rib-size-copy h3{
    font-size:28px;
  }
  .a5-frame .rib-sheet{
    width:200px;
    height:285px;
  }
  .a4-frame .rib-sheet{
    width:235px;
    height:335px;
  }
}

/* Business engine final additions */
.spec-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.spec-grid article{
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  padding:26px;
  box-shadow:var(--shadow-soft);
}
.rib-proof-pathway{
  background:#111;
  color:#fff;
}
.proof-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
}
.proof-card h2,
.proof-card p{
  color:#fff;
}
.proof-stats{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}
.proof-stats span{
  display:grid;
  gap:5px;
  min-width:120px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  border-radius:20px;
  padding:18px;
}
.proof-stats strong{
  color:#FFA311;
  font-size:24px;
}
.proof-stats small{
  color:rgba(255,255,255,.72);
  font-weight:700;
}
.rib-cookie-banner{
  position:fixed;
  left:24px;
  right:24px;
  bottom:24px;
  z-index:9999;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  background:#111;
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  border-radius:22px;
  padding:18px;
  box-shadow:0 28px 80px rgba(0,0,0,.32);
}
.rib-cookie-banner p{
  color:rgba(255,255,255,.72);
  margin:5px 0 0;
}
.rib-cookie-actions{
  display:flex;
  gap:10px;
}
.resource-upgrade .bd-card-grid article a,
.download-grid article a{
  margin-top:12px;
}
@media(max-width:1080px){
  .spec-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .proof-card,.rib-cookie-banner{grid-template-columns:1fr;}
}
@media(max-width:720px){
  .spec-grid{grid-template-columns:1fr;}
  .rib-cookie-actions{display:grid;grid-template-columns:1fr;}
}

/* Actual RIB size visuals */
.rib-size-rib-visuals{
  background:#fffaf3;
}
.rib-demo-stage{
  display:grid;
  place-items:center;
  width:100%;
  min-height:420px;
  padding:28px;
}
.rib-actual-unit{
  position:relative;
  display:grid;
  justify-items:center;
  align-items:start;
}
.rib-top-cap{
  width:100%;
  height:18px;
  border-radius:16px 16px 10px 10px;
  background:linear-gradient(180deg,#2b2b2b,#111);
  box-shadow:0 8px 20px rgba(0,0,0,.16);
}
.rib-banner-window{
  width:100%;
  background:#fdfdfd;
  border-left:6px solid #111;
  border-right:6px solid #111;
  border-bottom:4px solid #111;
  border-top:0;
  border-radius:0 0 12px 12px;
  box-shadow:0 20px 40px rgba(0,0,0,.14);
  overflow:hidden;
}
.rib-base-unit{
  width:78%;
  height:22px;
  margin-top:10px;
  border-radius:14px;
  background:linear-gradient(180deg,#3a3a3a,#151515);
  box-shadow:0 12px 20px rgba(0,0,0,.18);
}
.rib-demo-insert{
  width:100%;
  height:100%;
  background:linear-gradient(180deg,#fff,#fff6df);
  display:grid;
  align-content:start;
}
.rib-demo-header{
  background:#111;
  color:#FFA311;
  font-weight:900;
  font-size:14px;
  letter-spacing:.08em;
  text-align:center;
  padding:10px 8px;
}
.rib-demo-body{
  display:grid;
  gap:8px;
  justify-items:center;
  padding:20px 16px;
  text-align:center;
}
.rib-demo-body span{
  font-weight:900;
  color:#111;
  font-size:18px;
}
.rib-demo-body small{
  color:#666;
  font-weight:700;
  font-size:12px;
}
.rib-demo-lines{
  display:grid;
  gap:8px;
  padding:16px;
}
.rib-demo-lines span{
  height:10px;
  border-radius:999px;
  background:#e8e2d8;
}
.rib-demo-footer{
  margin-top:auto;
  padding:12px 16px 16px;
  text-align:center;
  font-weight:800;
  color:#444;
  font-size:12px;
}
.rib-demo-insert.custom{
  background:linear-gradient(180deg,#fff,#ffe9bd);
}
.rib-a5{
  width:210px;
}
.rib-a5 .rib-banner-window{
  height:300px;
}
.rib-a4{
  width:280px;
}
.rib-a4 .rib-banner-window{
  height:395px;
}
.rib-custom{
  width:330px;
}
.rib-custom .rib-banner-window{
  height:435px;
}
.rib-custom-display{
  display:flex;
  align-items:end;
  justify-content:center;
  gap:16px;
  flex-wrap:wrap;
}
.rib-custom-display .mini{
  width:140px;
}
.rib-custom-display .mini .rib-banner-window{
  height:200px;
}
.rib-custom-display .mid{
  width:185px;
}
.rib-custom-display .mid .rib-banner-window{
  height:260px;
}
.rib-custom-display .large{
  width:240px;
}
.rib-custom-display .large .rib-banner-window{
  height:320px;
}
.rib-size-panel{
  grid-template-columns:minmax(340px,.92fr) minmax(0,1.08fr);
}
@media(max-width:980px){
  .rib-demo-stage{
    min-height:320px;
  }
  .rib-a5{width:180px;}
  .rib-a5 .rib-banner-window{height:255px;}
  .rib-a4{width:235px;}
  .rib-a4 .rib-banner-window{height:335px;}
  .rib-custom{width:280px;}
  .rib-custom .rib-banner-window{height:370px;}
}

/* Best-practice active menu and breadcrumbs */
.rib-pro-main-nav > a.active,
.rib-nav-dropdown-toggle.active,
.rib-nav-dropdown.active-parent .rib-nav-dropdown-toggle{
  background:#111 !important;
  color:#FFA311 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.12) !important;
}

.rib-pro-main-nav > a.active:hover,
.rib-nav-dropdown.active-parent:hover .rib-nav-dropdown-toggle{
  background:#111 !important;
  color:#FFA311 !important;
}

.rib-nav-dropdown-menu a.active{
  background:#111 !important;
  color:#FFA311 !important;
  font-weight:900 !important;
}

.rib-nav-dropdown-menu a.active:hover{
  background:#111 !important;
  color:#FFA311 !important;
}

.current-section-dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:#FFA311;
  display:inline-block;
  margin-left:2px;
  box-shadow:0 0 0 4px rgba(255,163,17,.18);
}

.rib-pro-main-nav a[aria-current="page"]{
  position:relative;
}

.rib-pro-main-nav > a[aria-current="page"]:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-7px;
  width:18px;
  height:3px;
  border-radius:999px;
  background:#FFA311;
  transform:translateX(-50%);
}

.rib-breadcrumbs{
  background:#fff;
  border-bottom:1px solid var(--line);
  border-top:1px solid rgba(0,0,0,.04);
}

.rib-breadcrumbs .container{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:46px;
  font-size:13px;
  font-weight:700;
  color:#666;
}

.rib-breadcrumbs a{
  color:#111 !important;
  text-decoration:none;
  font-weight:800;
}

.rib-breadcrumbs a:hover{
  color:#FFA311 !important;
}

.rib-breadcrumbs span[aria-current="page"]{
  color:#FFA311;
  font-weight:900;
}

.rib-breadcrumb-separator{
  color:#bbb;
  font-weight:700;
}

@media(max-width:1240px){
  .rib-pro-main-nav > a[aria-current="page"]:after{
    display:none;
  }
  .rib-nav-dropdown.active-parent .rib-nav-dropdown-menu{
    border-color:#FFA311 !important;
  }
}

@media(max-width:720px){
  .rib-breadcrumbs .container{
    overflow-x:auto;
    white-space:nowrap;
    min-height:42px;
    font-size:12px;
  }
}

/* Persuasion cleanup sections */
.rib-problem-solution-section{
  background:#fff;
}
.rib-before-after-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
.rib-before-after-grid article{
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  padding:30px;
  box-shadow:var(--shadow-soft);
}
.before-label,
.after-label{
  display:inline-flex;
  border-radius:999px;
  padding:8px 13px;
  font-weight:900;
  font-size:12px;
  margin-bottom:14px;
}
.before-label{
  background:#f4f0ea;
  color:#333;
}
.after-label{
  background:#111;
  color:#FFA311;
}
.rib-before-after-grid ul,
.rib-showcase-copy ul{
  margin-bottom:0;
}
.rib-reassurance-section,
.rib-commitment-ladder{
  background:#fffaf3;
}
.rib-concern-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.rib-concern-grid article,
.rib-ladder-grid article,
.rib-objection-faq .faq-grid article{
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  padding:24px;
  box-shadow:var(--shadow-soft);
}
.rib-concern-grid article span{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:16px;
  background:#111;
  color:#FFA311;
  font-size:24px;
  margin-bottom:14px;
}
.rib-ladder-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.rib-ladder-grid article span{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:14px;
  background:#111;
  color:#FFA311;
  font-weight:900;
  margin-bottom:14px;
}
.rib-objection-faq{
  background:#fff;
}
.rib-objection-faq .faq-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
@media(max-width:1080px){
  .rib-concern-grid,
  .rib-objection-faq .faq-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:720px){
  .rib-before-after-grid,
  .rib-concern-grid,
  .rib-ladder-grid,
  .rib-objection-faq .faq-grid{
    grid-template-columns:1fr;
  }
}

/* Dropdown usability fix: less sensitive hover area */
@media(min-width:1241px){
  .rib-nav-dropdown{
    padding-bottom:14px !important;
    margin-bottom:-14px !important;
  }

  .rib-nav-dropdown-menu{
    top:calc(100% + 2px) !important;
    transform:translateX(-50%) translateY(4px) !important;
    transition:opacity .16s ease, transform .16s ease, visibility .16s ease !important;
    display:grid !important;
    gap:4px !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }

  .rib-nav-dropdown-menu:after{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:-18px !important;
    height:18px !important;
    background:transparent !important;
  }

  .rib-nav-dropdown:hover .rib-nav-dropdown-menu,
  .rib-nav-dropdown:focus-within .rib-nav-dropdown-menu,
  .rib-nav-dropdown.open .rib-nav-dropdown-menu,
  .rib-nav-dropdown.hover-open .rib-nav-dropdown-menu{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateX(-50%) translateY(0) !important;
  }

  .rib-nav-dropdown:hover .rib-nav-dropdown-toggle,
  .rib-nav-dropdown.hover-open .rib-nav-dropdown-toggle,
  .rib-nav-dropdown.open .rib-nav-dropdown-toggle{
    background:var(--cream) !important;
    color:#000 !important;
  }

  .rib-nav-dropdown.active-parent:hover .rib-nav-dropdown-toggle,
  .rib-nav-dropdown.active-parent.hover-open .rib-nav-dropdown-toggle,
  .rib-nav-dropdown.active-parent.open .rib-nav-dropdown-toggle{
    background:#111 !important;
    color:#FFA311 !important;
  }
}

@media(max-width:1240px){
  .rib-nav-dropdown-menu{
    top:auto !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
}

/* Final polish: Poppins, lighter typography, and orange links */
:root{
  --brand-link:#FFA311;
}

html, body,
button, input, textarea, select,
p, li, span, small, label, th, td, div{
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}

h1, h2, h3, h4, h5, h6,
.hero h1,
.page-hero h1,
.section-head h2,
.clean-conversion-card h2,
.proof-card h2,
.info-card h3,
.rib-showcase-copy h3,
.rib-size-copy h3,
.spec-grid article h3,
.bd-card-grid article h3,
.pricing-grid article h3,
.faq-grid article h3,
.rib-before-after-grid article h3,
.rib-concern-grid article h3,
.rib-ladder-grid article h3{
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-weight:600 !important;
  letter-spacing:-0.01em !important;
}

.lead,
.hero .lead,
.page-hero .lead,
p, li{
  font-weight:400 !important;
}

.eyebrow,
.btn,
.rib-pro-main-nav > a,
.rib-nav-dropdown-toggle,
.rib-nav-dropdown-menu a,
.rib-breadcrumbs .container,
.clean-conversion-actions .btn{
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-weight:500 !important;
}

strong, b{
  font-weight:600 !important;
}

a:not(.btn),
a:not(.btn):visited,
.rib-breadcrumbs a,
.site-footer a,
footer a,
.rib-pro-main-nav > a,
.rib-nav-dropdown-toggle,
.rib-nav-dropdown-menu a{
  color:var(--brand-link) !important;
}

a:not(.btn):hover,
a:not(.btn):focus,
.rib-breadcrumbs a:hover,
.site-footer a:hover,
footer a:hover,
.rib-pro-main-nav > a:hover,
.rib-nav-dropdown-toggle:hover,
.rib-nav-dropdown-menu a:hover{
  color:var(--brand-link) !important;
}

.rib-pro-main-nav > a.active,
.rib-nav-dropdown-toggle.active,
.rib-nav-dropdown.active-parent .rib-nav-dropdown-toggle,
.rib-nav-dropdown-menu a.active{
  color:var(--brand-link) !important;
}

.hero h1,
.page-hero h1{
  font-weight:600 !important;
}

.section-head p,
.clean-conversion-card p,
.proof-card p,
.info-card p,
.bd-card-grid article p,
.pricing-grid article p,
.spec-grid article p{
  font-weight:400 !important;
}

.btn{
  letter-spacing:0 !important;
}


/* Active menu still visible, but text remains black as requested */
.rib-pro-main-nav > a.active,
.rib-nav-dropdown-toggle.active,
.rib-nav-dropdown.active-parent .rib-nav-dropdown-toggle,
.rib-nav-dropdown-menu a.active{
  color:#111 !important;
  background:#fff8ea !important;
  box-shadow:0 10px 24px rgba(0,0,0,.08) !important;
}

.rib-pro-main-nav > a.active:hover,
.rib-nav-dropdown.active-parent:hover .rib-nav-dropdown-toggle,
.rib-nav-dropdown-menu a.active:hover{
  color:#111 !important;
  background:#fff8ea !important;
}

.current-section-dot{
  background:#111 !important;
  box-shadow:0 0 0 4px rgba(0,0,0,.10) !important;
}

/* Final override: black text for Request Fit Assessment, main menu, and submenu */
.rib-pro-main-nav > a,
.rib-pro-main-nav > a:visited,
.rib-nav-dropdown-toggle,
.rib-nav-dropdown-toggle:visited,
.rib-nav-dropdown-menu a,
.rib-nav-dropdown-menu a:visited{
  color:#111 !important;
}

.rib-pro-main-nav > a:hover,
.rib-pro-main-nav > a:focus,
.rib-nav-dropdown-toggle:hover,
.rib-nav-dropdown-toggle:focus,
.rib-nav-dropdown-menu a:hover,
.rib-nav-dropdown-menu a:focus{
  color:#111 !important;
}

.rib-pro-cta,
.rib-pro-cta:visited,
a.rib-pro-cta,
a.rib-pro-cta:visited{
  color:#111 !important;
  background:#FFA311 !important;
  border-color:#FFA311 !important;
}

.rib-pro-cta:hover,
.rib-pro-cta:focus,
a.rib-pro-cta:hover,
a.rib-pro-cta:focus{
  color:#111 !important;
  background:#ffb640 !important;
  border-color:#ffb640 !important;
}

.rib-pro-main-nav > a.active,
.rib-nav-dropdown-toggle.active,
.rib-nav-dropdown.active-parent .rib-nav-dropdown-toggle,
.rib-nav-dropdown-menu a.active{
  color:#111 !important;
}

.current-section-dot{
  background:#111 !important;
  box-shadow:0 0 0 4px rgba(0,0,0,.10) !important;
}

/* Final override: lighter Request Fit Assessment button text */
.rib-pro-cta,
.rib-pro-cta:visited,
a.rib-pro-cta,
a.rib-pro-cta:visited{
  color:#111 !important;
  background:#FFA311 !important;
  border-color:#FFA311 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}

.rib-pro-cta:hover,
.rib-pro-cta:focus,
a.rib-pro-cta:hover,
a.rib-pro-cta:focus{
  color:#111 !important;
  background:#ffb640 !important;
  border-color:#ffb640 !important;
  font-weight:500 !important;
}

/* Final override: consistent lighter action/link text across the site */
.rib-pro-cta,
.rib-pro-cta:visited,
a.rib-pro-cta,
a.rib-pro-cta:visited,
.btn,
a.btn,
button.btn,
.clean-conversion-actions .btn,
.action-row .btn,
.market-ready-buttons .btn{
  font-weight:500 !important;
  letter-spacing:0 !important;
}

.text-link,
.bd-card-grid article a,
.pricing-grid article a,
.download-grid article a,
.resource-downloads-public article a,
.rib-showcase-copy a,
.rib-size-copy a,
.info-card a,
.faq-grid article a,
.clean-conversion-card a,
.rib-footer-newsletter-form button,
.rib-size-tab{
  font-weight:500 !important;
  letter-spacing:0 !important;
}

.before-label,
.after-label,
.rib-size-meta span,
.rib-size-meta span strong,
.rib-demo-header,
.rib-demo-footer,
.rib-sheet-label strong,
.rib-sheet-label small,
.rib-measure,
.rib-ladder-grid article span,
.rib-concern-grid article span,
.proof-stats strong,
.proof-stats small{
  font-weight:500 !important;
  letter-spacing:0 !important;
}

.rib-before-after-grid article h3,
.rib-concern-grid article h3,
.bd-card-grid article h3,
.pricing-grid article h3,
.download-grid article h3,
.spec-grid article h3,
.info-card h3,
.rib-showcase-copy h3,
.rib-size-copy h3,
.clean-conversion-card h2{
  font-weight:500 !important;
}

/* Keep requested black text items black */
.rib-pro-main-nav > a,
.rib-pro-main-nav > a:visited,
.rib-nav-dropdown-toggle,
.rib-nav-dropdown-toggle:visited,
.rib-nav-dropdown-menu a,
.rib-nav-dropdown-menu a:visited{
  color:#111 !important;
  font-weight:500 !important;
}

.rib-pro-cta,
.rib-pro-cta:visited,
a.rib-pro-cta,
a.rib-pro-cta:visited{
  color:#111 !important;
  background:#FFA311 !important;
  border-color:#FFA311 !important;
  font-weight:500 !important;
}

.rib-pro-cta:hover,
.rib-pro-cta:focus,
a.rib-pro-cta:hover,
a.rib-pro-cta:focus{
  color:#111 !important;
  background:#ffb640 !important;
  border-color:#ffb640 !important;
}

/* Visual Campaign Format layout: text left, image right */
.visual-campaign-format-left .split,
.visual-campaign-format-left .container.split,
.visual-campaign-format-left-card{
  grid-template-columns:minmax(0, 1.05fr) minmax(360px, .95fr) !important;
}

.visual-campaign-format-left .split > div:first-child,
.visual-campaign-format-left .container.split > div:first-child,
.visual-campaign-format-left-card > div:first-child{
  order:1 !important;
}

.visual-campaign-format-left .split > div:last-child,
.visual-campaign-format-left .container.split > div:last-child,
.visual-campaign-format-left-card > div:last-child{
  order:2 !important;
}

.visual-campaign-format-left .rib-showcase-copy,
.visual-campaign-format-left-card .rib-showcase-copy{
  order:1 !important;
}

.visual-campaign-format-left .rib-showcase-image,
.visual-campaign-format-left-card .rib-showcase-image,
.visual-campaign-format-left .rib-polished-image-card,
.visual-campaign-format-left .visual-card,
.visual-campaign-format-left .image-card{
  order:2 !important;
}

@media(max-width:1080px){
  .visual-campaign-format-left .split,
  .visual-campaign-format-left .container.split,
  .visual-campaign-format-left-card{
    grid-template-columns:1fr !important;
  }

  .visual-campaign-format-left .split > div,
  .visual-campaign-format-left .container.split > div,
  .visual-campaign-format-left-card > div,
  .visual-campaign-format-left .rib-showcase-copy,
  .visual-campaign-format-left-card .rib-showcase-copy,
  .visual-campaign-format-left .rib-showcase-image,
  .visual-campaign-format-left-card .rib-showcase-image{
    order:initial !important;
  }
}

/* Forced Visual Campaign Format layout */
.visual-campaign-format-left .visual-campaign-split{
  display:grid !important;
  grid-template-columns:minmax(0, 1.02fr) minmax(380px, .98fr) !important;
  gap:34px !important;
  align-items:center !important;
}

.visual-campaign-copy{
  order:1 !important;
}

.visual-campaign-image{
  order:2 !important;
}

.visual-campaign-image img{
  width:100% !important;
  min-height:420px !important;
  object-fit:cover !important;
  display:block !important;
}

@media(max-width:1080px){
  .visual-campaign-format-left .visual-campaign-split{
    grid-template-columns:1fr !important;
  }
  .visual-campaign-copy,
  .visual-campaign-image{
    order:initial !important;
  }
}

/* Visual Campaign Format image no-crop refinement */
.visual-campaign-format-left .visual-campaign-split{
  grid-template-columns:minmax(0, 1.12fr) minmax(280px, .72fr) !important;
  gap:30px !important;
  align-items:center !important;
}

.visual-campaign-image{
  max-width:460px !important;
  width:100% !important;
  justify-self:end !important;
  border-radius:24px !important;
  background:#fff !important;
  padding:12px !important;
}

.visual-campaign-image img{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block !important;
  border-radius:18px !important;
}

@media(max-width:1080px){
  .visual-campaign-format-left .visual-campaign-split{
    grid-template-columns:1fr !important;
  }

  .visual-campaign-image{
    justify-self:start !important;
    max-width:100% !important;
  }
}

/* Dynamic RIB sample dashboards */
.rib-dashboard-section{
  background:#fffaf3;
}

.rib-dashboard-section .section-head p{
  max-width:680px;
  margin-left:auto;
  margin-right:auto;
}

.rib-dashboard-tabs{
  display:flex;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  margin:4px 0 24px;
}

.rib-dashboard-tab{
  appearance:none;
  border:1px solid var(--line);
  background:#fff;
  color:#111;
  border-radius:999px;
  padding:11px 16px;
  font-family:'Poppins', system-ui, sans-serif;
  font-weight:500;
  cursor:pointer;
  box-shadow:var(--shadow-soft);
}

.rib-dashboard-tab.active,
.rib-dashboard-tab:hover{
  background:#FFA311;
  border-color:#FFA311;
  color:#111;
}

.rib-dashboard-panel{
  display:none;
}

.rib-dashboard-panel.active{
  display:block;
}

.rib-kpi-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-bottom:20px;
}

.rib-kpi-grid article{
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:20px;
  box-shadow:var(--shadow-soft);
}

.rib-kpi-grid span{
  display:block;
  color:#666;
  font-size:12px;
  font-weight:500;
  margin-bottom:8px;
}

.rib-kpi-grid strong{
  display:block;
  color:#111;
  font-size:28px;
  font-weight:600;
  line-height:1.1;
}

.rib-kpi-grid small{
  display:block;
  color:#777;
  font-size:12px;
  font-weight:400;
  margin-top:8px;
}

.rib-chart-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.rib-chart-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  padding:22px;
  box-shadow:var(--shadow-soft);
}

.rib-chart-card h3{
  font-weight:500;
  margin-bottom:14px;
}

.rib-chart{
  width:100%;
  height:260px;
  display:block;
}

.rib-mini-table{
  width:100%;
  border-collapse:collapse;
}

.rib-mini-table th,
.rib-mini-table td{
  border-bottom:1px solid var(--line);
  padding:14px 10px;
  text-align:left;
  vertical-align:top;
  font-size:14px;
}

.rib-mini-table th{
  color:#111;
  font-weight:500;
  width:42%;
}

.rib-mini-table td{
  color:#555;
}

@media(max-width:980px){
  .rib-kpi-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .rib-chart-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .rib-kpi-grid{
    grid-template-columns:1fr;
  }

  .rib-chart{
    height:230px;
  }

  .rib-dashboard-tab{
    width:100%;
  }
}

/* Final override: lighter form labels */
form label,
.form label,
.form-grid label,
.field label,
.rib-form label,
.contact-form label,
.request-form label,
.rib-footer-newsletter label,
.rib-footer-newsletter-form label{
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  color:#222 !important;
}

form label strong,
.form label strong,
.form-grid label strong,
.field label strong,
.rib-form label strong{
  font-weight:500 !important;
}

form input,
form select,
form textarea{
  font-weight:400 !important;
}

/* Final override: footer consent text white */
.rib-footer-newsletter label,
.rib-footer-newsletter-form label,
.rib-footer-newsletter .consent-label,
.rib-footer-newsletter-form .consent-label,
.rib-footer-newsletter label span,
.rib-footer-newsletter-form label span{
  color:#fff !important;
  font-weight:400 !important;
}

/* Homepage hero buttons: centered and non-overlapping */
.home-hero-actions,
.hero .action-row.center,
.page-hero .action-row.center{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:20px !important;
  flex-wrap:wrap !important;
  width:100% !important;
}

.home-hero-actions .btn,
.hero .action-row.center .btn,
.page-hero .action-row.center .btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:190px !important;
  max-width:100% !important;
  margin:0 !important;
  white-space:nowrap !important;
  position:relative !important;
  z-index:1 !important;
}

.home-hero-actions .btn + .btn,
.hero .action-row.center .btn + .btn,
.page-hero .action-row.center .btn + .btn{
  margin-left:0 !important;
}

@media(max-width:640px){
  .home-hero-actions,
  .hero .action-row.center,
  .page-hero .action-row.center{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    justify-items:center !important;
  }

  .home-hero-actions .btn,
  .hero .action-row.center .btn,
  .page-hero .action-row.center .btn{
    width:100% !important;
    max-width:320px !important;
    min-width:0 !important;
    white-space:normal !important;
  }
}

/* Final homepage hero CTA overlap fix */
.hero-cta-stack-fixed{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:28px !important;
  row-gap:28px !important;
  width:100% !important;
  max-width:560px !important;
  margin:36px auto 0 auto !important;
  padding:0 !important;
}

.hero-cta-stack-fixed a,
.hero-cta-stack-fixed .btn,
.hero-cta-stack-fixed a.btn,
.hero-cta-stack-fixed .btn-primary,
.hero-cta-stack-fixed .btn-ghost,
.hero-cta-stack-fixed .btn-outline{
  position:static !important;
  inset:auto !important;
  transform:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  max-width:430px !important;
  min-width:0 !important;
  min-height:72px !important;
  margin:0 !important;
  padding:18px 32px !important;
  line-height:1.2 !important;
  white-space:normal !important;
  border-radius:999px !important;
  z-index:auto !important;
}

.hero-cta-stack-fixed a + a,
.hero-cta-stack-fixed .btn + .btn,
.hero-cta-stack-fixed a.btn + a.btn{
  margin-top:0 !important;
}

.hero-cta-stack-fixed .btn-primary,
.hero-cta-stack-fixed a.btn-primary{
  background:#FFA311 !important;
  color:#111 !important;
  border-color:#FFA311 !important;
  font-weight:500 !important;
}

.hero-cta-stack-fixed .btn-ghost,
.hero-cta-stack-fixed a.btn-ghost,
.hero-cta-stack-fixed .btn-outline,
.hero-cta-stack-fixed a.btn-outline{
  background:#fff !important;
  color:#111 !important;
  border-color:#fff !important;
  font-weight:500 !important;
}

@media(min-width:900px){
  .hero-cta-stack-fixed{
    max-width:520px !important;
  }
}

@media(max-width:640px){
  .hero-cta-stack-fixed{
    max-width:340px !important;
    gap:18px !important;
    row-gap:18px !important;
    margin-top:28px !important;
  }

  .hero-cta-stack-fixed a,
  .hero-cta-stack-fixed .btn,
  .hero-cta-stack-fixed a.btn{
    max-width:320px !important;
    min-height:62px !important;
    padding:16px 22px !important;
  }
}

/* Final override: lighter use-case labels and compact instructional text */
.use-case-label,
.audience-label,
.role-label,
.placement-label,
.rib-use-case-label,
.rib-card-label,
.rib-pathway-label,
.pill,
.badge,
.tag,
.chip,
.card-kicker,
.kicker,
.rib-demo-header,
.rib-demo-footer,
.rib-sheet-label strong,
.rib-sheet-label small,
.rib-measure,
.rib-size-meta span,
.rib-size-meta strong,
.rib-before-after-grid article h3,
.rib-concern-grid article h3,
.bd-card-grid article h3,
.pricing-grid article h3,
.spec-grid article h3,
.info-card h3{
  font-weight:500 !important;
  letter-spacing:0 !important;
}

.bd-card-grid article p,
.pricing-grid article p,
.spec-grid article p,
.info-card p,
.rib-before-after-grid article li,
.rib-concern-grid article p,
.feature-list li{
  font-weight:400 !important;
  letter-spacing:0 !important;
}

/* Explicit text-weight cleanup for small audience and placement labels */
span,
small{
  letter-spacing:0 !important;
}

strong,
b{
  font-weight:500 !important;
}

/* Exact text light-weight fix requested */
.rib-light-text-fix,
.rib-light-text-fix *,
span.rib-light-text-fix,
p.rib-light-text-fix,
li.rib-light-text-fix,
h3.rib-light-text-fix,
h4.rib-light-text-fix,
strong.rib-light-text-fix,
small.rib-light-text-fix,
div.rib-light-text-fix{
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}

h3.rib-light-text-fix,
h4.rib-light-text-fix,
strong.rib-light-text-fix{
  font-weight:500 !important;
}

/* Force lighter weight for common homepage pills/labels/cards that contain use-case text */
.home-hero-actions,
.audience-card,
.use-case-card,
.rib-use-card,
.rib-pathway-card,
.rib-before-after-grid article,
.rib-concern-grid article{
  font-weight:400 !important;
}

.audience-card *,
.use-case-card *,
.rib-use-card *,
.rib-pathway-card *,
.rib-before-after-grid article *,
.rib-concern-grid article *{
  letter-spacing:0 !important;
}

/* Absolute final fix for homepage heavy labels and text */
.rib-home-light-text{
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}

/* Target common homepage feature/use-case card text classes with higher specificity */
body .hero span,
body .hero small,
body .hero strong,
body .hero .pill,
body .hero .badge,
body .hero .tag,
body .hero .chip,
body .hero .kicker,
body .hero .card-kicker,
body .hero .use-case-label,
body .hero .audience-label,
body .hero .placement-label,
body .hero .role-label,
body .hero .rib-card-label,
body .hero .rib-pathway-label,
body .hero .rib-home-light-text,
body .home-hero span,
body .home-hero small,
body .home-hero strong,
body .home-hero .pill,
body .home-hero .badge,
body .home-hero .tag,
body .home-hero .chip,
body .home-hero .kicker,
body .home-hero .card-kicker,
body .home-hero .rib-home-light-text{
  font-weight:400 !important;
  letter-spacing:0 !important;
}

/* Keep headings readable but not heavy */
body .hero h1,
body .hero h2,
body .hero h3,
body .home-hero h1,
body .home-hero h2,
body .home-hero h3{
  font-weight:500 !important;
  letter-spacing:-0.01em !important;
}

/* Use case cards and icon cards */
body [class*="use"] h3,
body [class*="audience"] h3,
body [class*="pathway"] h3,
body [class*="placement"] h3,
body [class*="card"] h3,
body [class*="tile"] h3{
  font-weight:500 !important;
}

body [class*="use"] p,
body [class*="audience"] p,
body [class*="pathway"] p,
body [class*="placement"] p,
body [class*="card"] p,
body [class*="tile"] p,
body [class*="use"] li,
body [class*="audience"] li,
body [class*="pathway"] li,
body [class*="placement"] li,
body [class*="card"] li,
body [class*="tile"] li{
  font-weight:400 !important;
  letter-spacing:0 !important;
}


/* Header logo-side brand text visibility fix */
header .rib-footer-brand-readable,
.rib-pro-header .rib-footer-brand-readable,
.rib-pro-brand .rib-footer-brand-readable,
.rib-brand .rib-footer-brand-readable,
.logo .rib-footer-brand-readable,
.site-header .rib-footer-brand-readable{
  color:#111 !important;
  font-weight:500 !important;
}

header .rib-footer-tagline-readable,
.rib-pro-header .rib-footer-tagline-readable,
.rib-pro-brand .rib-footer-tagline-readable,
.rib-brand .rib-footer-tagline-readable,
.logo .rib-footer-tagline-readable,
.site-header .rib-footer-tagline-readable{
  color:#555 !important;
  font-weight:400 !important;
}

/* Header brand text generally */
header .brand,
header .brand *,
header .footer-brand,
header .footer-brand *,
.rib-pro-brand,
.rib-pro-brand *,
.rib-brand,
.rib-brand *,
.site-header .brand,
.site-header .brand *{
  color:#111 !important;
}

header .brand small,
header .footer-brand small,
.rib-pro-brand small,
.rib-brand small,
.site-header .brand small{
  color:#555 !important;
}

/* RIB banner/logo text color */
.rib-banner-text-orange,
header .rib-banner-text-orange,
.site-header .rib-banner-text-orange,
.rib-pro-header .rib-banner-text-orange,
.rib-pro-brand .rib-banner-text-orange,
.rib-brand .rib-banner-text-orange,
.logo .rib-banner-text-orange{
  color:#FFA311 !important;
  font-weight:600 !important;
}

/* Fallback: common logo mark text */
.rib-logo-mark,
.logo-mark,
.brand-mark,
.rib-pro-logo-mark{
  color:#FFA311 !important;
}


/* Footer Retractable Information Banner text */
footer .rib-footer-brand-readable,
.site-footer .rib-footer-brand-readable{
  color:#FFA311 !important;
  font-weight:500 !important;
}

/* Footer visibility and contrast balance */
.site-footer,
footer{
  background:#111 !important;
  color:rgba(255,255,255,.78) !important;
}

.site-footer *,
footer *{
  text-shadow:none !important;
}

.site-footer .rib-footer-brand-readable,
footer .rib-footer-brand-readable{
  display:block !important;
  color:#FFA311 !important;
  font-size:18px !important;
  font-weight:500 !important;
  line-height:1.35 !important;
  letter-spacing:0 !important;
  margin-bottom:8px !important;
}

.site-footer .rib-footer-tagline-readable,
footer .rib-footer-tagline-readable{
  display:block !important;
  color:rgba(255,255,255,.82) !important;
  font-size:13px !important;
  font-weight:400 !important;
  line-height:1.65 !important;
  letter-spacing:0 !important;
  max-width:300px !important;
}

.site-footer h3,
.site-footer h4,
.site-footer h5,
footer h3,
footer h4,
footer h5,
.site-footer .footer-title,
footer .footer-title,
.site-footer .footer-heading,
footer .footer-heading,
.site-footer [class*="footer"] h3,
.site-footer [class*="footer"] h4,
footer [class*="footer"] h3,
footer [class*="footer"] h4{
  color:#FFA311 !important;
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1.45 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  margin-bottom:12px !important;
}

.site-footer a,
footer a,
.site-footer nav a,
footer nav a,
.site-footer .footer-links a,
footer .footer-links a,
.site-footer [class*="footer"] a,
footer [class*="footer"] a{
  color:rgba(255,255,255,.82) !important;
  font-size:12.5px !important;
  font-weight:400 !important;
  line-height:1.75 !important;
  letter-spacing:0 !important;
  text-decoration:none !important;
}

.site-footer a:hover,
footer a:hover,
.site-footer nav a:hover,
footer nav a:hover,
.site-footer .footer-links a:hover,
footer .footer-links a:hover,
.site-footer [class*="footer"] a:hover,
footer [class*="footer"] a:hover{
  color:#FFA311 !important;
}

.site-footer p,
footer p,
.site-footer li,
footer li,
.site-footer span,
footer span,
.site-footer small,
footer small{
  color:rgba(255,255,255,.76) !important;
  font-size:12.5px !important;
  font-weight:400 !important;
  line-height:1.65 !important;
  letter-spacing:0 !important;
}

.site-footer strong,
footer strong,
.site-footer b,
footer b{
  color:#FFA311 !important;
  font-weight:500 !important;
}

/* Footer logo / mark contrast */
.site-footer img,
footer img{
  opacity:1 !important;
  filter:none !important;
}

.site-footer .logo,
footer .logo,
.site-footer .brand,
footer .brand,
.site-footer .footer-brand,
footer .footer-brand,
.site-footer [class*="logo"],
footer [class*="logo"],
.site-footer [class*="brand"],
footer [class*="brand"]{
  color:#fff !important;
}

.site-footer .rib-banner-text-orange,
footer .rib-banner-text-orange,
.site-footer .rib-logo-mark,
footer .rib-logo-mark,
.site-footer .logo-mark,
footer .logo-mark,
.site-footer .brand-mark,
footer .brand-mark{
  color:#FFA311 !important;
}

/* Footer newsletter form readability */
.site-footer input,
footer input,
.site-footer textarea,
footer textarea,
.site-footer select,
footer select{
  background:#fff !important;
  color:#111 !important;
  border-color:rgba(255,255,255,.28) !important;
}

.site-footer input::placeholder,
footer input::placeholder,
.site-footer textarea::placeholder,
footer textarea::placeholder{
  color:#666 !important;
}

.rib-footer-newsletter label,
.rib-footer-newsletter-form label,
.rib-footer-newsletter .consent-label,
.rib-footer-newsletter-form .consent-label,
.rib-footer-newsletter label span,
.rib-footer-newsletter-form label span{
  color:rgba(255,255,255,.86) !important;
  font-weight:400 !important;
}

/* Footer section spacing */
.site-footer [class*="footer"],
footer [class*="footer"]{
  word-break:normal !important;
}

@media(max-width:720px){
  .site-footer .rib-footer-brand-readable,
  footer .rib-footer-brand-readable{
    font-size:17px !important;
  }
}

/* Footer brand final treatment */
footer .rib-footer-rib-black,
.site-footer .rib-footer-rib-black{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#FFA311 !important;
  color:#111 !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  border-radius:12px !important;
  padding:6px 10px !important;
  line-height:1 !important;
}

footer .rib-footer-brand-final,
.site-footer .rib-footer-brand-final,
footer .rib-footer-brand-readable,
.site-footer .rib-footer-brand-readable{
  display:block !important;
  color:#FFA311 !important;
  font-size:18px !important;
  font-weight:500 !important;
  line-height:1.35 !important;
  letter-spacing:0 !important;
  margin-top:8px !important;
  margin-bottom:8px !important;
}

/* Keep footer tagline softer for contrast */
footer .rib-footer-tagline-readable,
.site-footer .rib-footer-tagline-readable{
  color:rgba(255,255,255,.82) !important;
  font-weight:400 !important;
}

/* Top menu subtle tone refinement */
.rib-pro-main-nav > a,
.rib-pro-main-nav > a:visited,
.rib-nav-dropdown-toggle,
.rib-nav-dropdown-toggle:visited{
  background:#fff8ea !important;
  color:#111 !important;
  border:1px solid #f1d7a1 !important;
  font-weight:500 !important;
  box-shadow:none !important;
}

.rib-pro-main-nav > a:hover,
.rib-pro-main-nav > a:focus,
.rib-nav-dropdown-toggle:hover,
.rib-nav-dropdown-toggle:focus,
.rib-nav-dropdown:hover .rib-nav-dropdown-toggle,
.rib-nav-dropdown.hover-open .rib-nav-dropdown-toggle,
.rib-nav-dropdown.open .rib-nav-dropdown-toggle{
  background:#fff1d2 !important;
  color:#111 !important;
  border-color:#e8c37b !important;
  box-shadow:0 8px 18px rgba(0,0,0,.06) !important;
}

.rib-pro-main-nav > a.active,
.rib-nav-dropdown-toggle.active,
.rib-nav-dropdown.active-parent .rib-nav-dropdown-toggle{
  background:#fff1d2 !important;
  color:#111 !important;
  border-color:#FFA311 !important;
  box-shadow:0 8px 18px rgba(0,0,0,.06) !important;
}

.rib-nav-dropdown-menu{
  background:#fff !important;
  border:1px solid #f1d7a1 !important;
  box-shadow:0 18px 50px rgba(0,0,0,.10) !important;
}

.rib-nav-dropdown-menu a,
.rib-nav-dropdown-menu a:visited{
  background:#fff !important;
  color:#111 !important;
  border-color:transparent !important;
  font-weight:400 !important;
}

.rib-nav-dropdown-menu a:hover,
.rib-nav-dropdown-menu a:focus{
  background:#fff8ea !important;
  color:#111 !important;
  border-color:#f1d7a1 !important;
}

.rib-nav-dropdown-menu a.active{
  background:#fff1d2 !important;
  color:#111 !important;
  border-color:#FFA311 !important;
  font-weight:500 !important;
}

.current-section-dot{
  background:#FFA311 !important;
  box-shadow:0 0 0 4px rgba(255,163,17,.16) !important;
}

/* Header to hero breathing space */
.rib-pro-header,
.site-header,
header{
  margin-bottom:22px !important;
}

main#main > .hero:first-child,
main#main > .page-hero:first-child,
main > .hero:first-child,
main > .page-hero:first-child{
  margin-top:18px !important;
}

.hero,
.page-hero{
  padding-top:72px !important;
}

@media(max-width:980px){
  .rib-pro-header,
  .site-header,
  header{
    margin-bottom:16px !important;
  }

  main#main > .hero:first-child,
  main#main > .page-hero:first-child,
  main > .hero:first-child,
  main > .page-hero:first-child{
    margin-top:12px !important;
  }

  .hero,
  .page-hero{
    padding-top:56px !important;
  }
}
