:root{--dark:#101820;--dark2:#17232d;--yellow:#ffc629;--light:#f4f5f6}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--dark);background:var(--light)}body.template-clean-light{--dark:#0f172a;--dark2:#e2e8f0;color:#0f172a}body.template-modern-blue{--yellow:#2563eb;--dark:#0f172a;--dark2:#1e40af;--light:#eff6ff}body.template-white-card{--dark:#111827;--dark2:#ffffff;--light:#ffffff}body.template-premium-yellow .hero h1{letter-spacing:.7px}.container{width:94%;max-width:1280px;margin:auto}.top-nav{position:sticky;top:0;background:white;z-index:20;box-shadow:0 2px 12px rgba(0,0,0,.1)}.nav-wrap{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo img{width:240px}nav{display:flex;gap:16px;align-items:center;flex-wrap:wrap}nav a{text-decoration:none;color:#111;font-weight:800;font-size:13px;text-transform:uppercase}.btn{display:inline-block;padding:13px 22px;border-radius:4px;text-decoration:none;font-weight:900;text-transform:uppercase;margin-right:12px}.btn-yellow{background:var(--yellow);color:#111}.btn-outline{border:2px solid white;color:white}.hero{min-height:560px;background-size:cover;background-position:center right;color:white;display:flex;align-items:center}.hero-content{padding:90px 0;max-width:760px}.hero h1{font-size:clamp(36px,5vw,66px);line-height:1.02;text-transform:uppercase;margin:0 0 20px}.hero p{font-size:20px;font-weight:700;line-height:1.45;color:#eef2f7}.stats{background:var(--dark2);color:white}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.stats-grid div{text-align:center;padding:26px;border-right:1px solid rgba(255,198,41,.45)}.stats strong{display:block;font-size:32px}.stats span{font-size:13px;text-transform:uppercase;font-weight:800}.section{padding:50px 0}.section.light{background:white}.section h2{font-size:30px;text-transform:uppercase;text-align:center}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cards article{background:white;border:1px solid #d9dde2;border-radius:10px;overflow:hidden}.cards img{width:100%;height:180px;object-fit:cover;background:#cbd5e1}.cards h3,.cards p{padding:0 18px}.features{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.features div{background:#101820;color:white;text-align:center;padding:24px;border-radius:8px;font-weight:800}.rfq{background:var(--dark2);color:white;padding:55px 0}.rfq form{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:900px}.rfq input,.rfq textarea{padding:14px;border:0;border-radius:4px}.rfq textarea{grid-column:span 2;min-height:90px}.rfq button{grid-column:span 2;border:0}.sticky-bar{position:fixed;left:0;right:0;bottom:0;background:#101820;color:white;display:flex;justify-content:center;align-items:center;gap:20px;padding:14px;z-index:99;box-shadow:0 -3px 12px rgba(0,0,0,.24)}.sticky-bar a{background:#ffc629;color:#111;padding:10px 18px;text-decoration:none;font-weight:900;border-radius:5px}details{background:white;margin:12px 0;padding:15px;border:1px solid #ddd;border-radius:8px}footer{background:#181d22;color:#cfd5db;padding:28px 0}footer .container{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}@media(max-width:900px){.stats-grid,.cards,.features,.rfq form{grid-template-columns:1fr}.rfq textarea,.rfq button{grid-column:span 1}.hero{background-position:center}.nav-wrap{display:block;padding:16px 0}}
/* v9 landing refinements */
.top-nav.not-sticky{position:relative}.trust-grid div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.trust-icon{height:44px;width:44px;object-fit:contain;filter:drop-shadow(0 1px 1px rgba(0,0,0,.2))}.trust-image{height:58px;max-width:130px;object-fit:contain;background:#fff;border-radius:8px;padding:6px}.stats h2{color:white;text-align:center;text-transform:uppercase;margin:0;padding-top:24px}.icon-features .feature-icon{height:48px;width:48px;object-fit:contain;margin:0 auto 10px;display:block}.rfq form label{display:flex;flex-direction:column;gap:6px;color:white;font-weight:800}.rfq form label.full{grid-column:span 2}.rfq form label.check{flex-direction:row;align-items:center}.rfq select{padding:14px;border:0;border-radius:4px}.rfq input[type=file]{background:white}.rfq span{font-size:13px}.btn:empty,.btn-outline:empty,.btn-yellow:empty{display:none}@media(max-width:900px){.rfq form label.full{grid-column:span 1}}
/* v10 visual configurator */
body{font-family:var(--site-font,Arial,Helvetica,sans-serif);background:var(--light)}.btn{border-radius:var(--button-radius,4px)}.cards article{border-radius:var(--card-radius,10px)}.hero{min-height:var(--hero-min-height,560px)}.hero-inner{display:flex;align-items:center;justify-content:space-between;gap:36px;width:94%;max-width:1280px;margin:auto}.hero-with-form .hero-content{max-width:680px}.hero-form-card{background:rgba(255,255,255,.96);color:#111;padding:24px;border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.34);width:min(440px,100%)}.hero-form-card h3{margin:0 0 14px;text-transform:uppercase}.hero-form{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.hero-form label{display:flex;flex-direction:column;gap:5px;font-weight:800}.hero-form label.full{grid-column:span 2}.hero-form input,.hero-form textarea,.hero-form select{padding:12px;border:1px solid #d9dde2;border-radius:6px}.hero-form button{grid-column:span 2;border:0}.hero-form-left .hero-inner{flex-direction:row-reverse}.hero-form-center .hero-inner{flex-direction:column;text-align:center}.hero-form-center .hero-content{max-width:900px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.lead-popup{position:fixed;inset:0;background:rgba(0,0,0,.68);z-index:200;display:none;align-items:center;justify-content:center;padding:20px}.lead-popup.open{display:flex}.lead-popup-card{background:#fff;color:#111;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.4);padding:24px;max-width:760px;width:100%;position:relative}.popup-close{position:absolute;right:14px;top:12px;border:0;background:#111;color:white;border-radius:50%;width:30px;height:30px}.popup-form{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.popup-form label{display:flex;flex-direction:column;gap:6px;font-weight:800}.popup-form label.full{grid-column:span 2}.popup-form input,.popup-form textarea,.popup-form select{padding:12px;border:1px solid #d9dde2;border-radius:6px}.popup-form button{grid-column:span 2;border:0}.template-industrial-dark .section{background:#101820;color:white}.template-clean-light .hero{color:#111}.template-premium-yellow .btn-yellow{box-shadow:0 8px 20px rgba(255,198,41,.32)}@media(max-width:900px){.hero-inner,.hero-form-left .hero-inner{flex-direction:column}.hero-form,.popup-form{grid-template-columns:1fr}.hero-form label.full,.hero-form button,.popup-form label.full,.popup-form button{grid-column:span 1}}
/* v11 optional links and multi-project gallery */
.learn-link{display:inline-block;margin:0 18px 18px;padding:10px 14px;background:var(--yellow);color:#111;text-decoration:none;font-weight:900;text-transform:uppercase;border-radius:var(--button-radius,4px);font-size:12px}.icon-features .learn-link{margin:12px 0 0}.project-gallery article h3{margin-top:16px}.project-gallery article p{min-height:42px}.cards article p:empty{display:none}.cards article h3:empty{display:none}

/* v12 visual template frameworks */
body.template-clean-light .top-nav{background:#fff}body.template-clean-light .hero{color:#0f172a}body.template-clean-light .btn-outline{border-color:#0f172a;color:#0f172a}body.template-clean-light .stats{background:#f8fafc;color:#0f172a}body.template-clean-light .stats h2{color:#0f172a}body.template-clean-light .stats-grid div{border-color:#cbd5e1}
body.template-modern-blue .btn-yellow{background:#2563eb;color:#fff}body.template-modern-blue .sticky-bar a{background:#2563eb;color:#fff}body.template-modern-blue .learn-link{background:#2563eb;color:#fff}body.template-modern-blue .hero{box-shadow:inset 0 -80px 160px rgba(37,99,235,.18)}
body.template-white-card .section,body.template-white-card .section.light{background:#fff}body.template-white-card .cards article{box-shadow:0 14px 36px rgba(15,23,42,.08);border:0}body.template-white-card .stats{background:#111827}body.template-white-card .hero{color:#111827}body.template-white-card .btn-outline{border-color:#111827;color:#111827}

/* v13 full design system frameworks and palette engine */
:root{--primary:var(--yellow);--secondary:var(--dark2);--accent:var(--yellow);--section-bg:#fff;--card-bg:#fff;--text:#111827;--container-width:1280px;--section-spacing:56px;--shadow-strength:18}.container{max-width:var(--container-width,1280px)}body{color:var(--text)}.section{padding:var(--section-spacing,56px) 0;background:var(--section-bg)}.cards article{background:var(--card-bg)}.btn-yellow,.learn-link,.sticky-bar a{background:var(--primary);color:#fff}.btn-outline{border-color:#fff;color:#fff}.top-nav{background:var(--nav-bg,#fff)}
body.dark-mode{--light:#070b12;--section-bg:#0b1220;--card-bg:#111827;--text:#f8fafc;background:#070b12;color:#f8fafc}body.dark-mode .top-nav{background:#070b12}body.dark-mode nav a{color:#f8fafc}body.dark-mode .section.light,body.dark-mode .cards article,body.dark-mode details{background:#111827;color:#f8fafc;border-color:#334155}body.dark-mode .hero-form-card,body.dark-mode .lead-popup-card{background:#111827;color:#f8fafc}body.dark-mode input,body.dark-mode textarea,body.dark-mode select{background:#0f172a;color:#fff;border-color:#334155}
body.button-square .btn,body.button-square .learn-link{border-radius:2px}body.button-rounded .btn,body.button-rounded .learn-link{border-radius:12px}body.button-pill .btn,body.button-pill .learn-link{border-radius:999px;padding-left:28px;padding-right:28px}body.button-outline-heavy .btn-yellow{background:transparent;color:var(--primary);border:3px solid var(--primary)}
body.card-bordered .cards article{border:1px solid #cbd5e1;box-shadow:none}body.card-shadow .cards article{border:0;box-shadow:0 calc(var(--shadow-strength)*1px) calc(var(--shadow-strength)*2px) rgba(15,23,42,.12)}body.card-glass .cards article{background:rgba(255,255,255,.72);backdrop-filter:blur(12px);box-shadow:0 18px 44px rgba(0,0,0,.18)}body.card-flat .cards article{border:0;box-shadow:none}
body.template-industrial-corporate{--primary:#00a0df;--secondary:#003b71;--accent:#00c2ff}.template-industrial-corporate .hero{background-blend-mode:multiply}.template-industrial-corporate .top-nav{border-bottom:4px solid var(--primary)}.template-industrial-corporate .section h2{letter-spacing:.04em}.template-industrial-corporate .stats{background:linear-gradient(90deg,var(--dark),var(--secondary))}.template-industrial-corporate .cards article{border-top:5px solid var(--primary)}
body.template-automation-blue{--primary:#005eb8;--secondary:#003057;--accent:#5dade2}.template-automation-blue .hero{box-shadow:inset 0 -100px 160px rgba(0,94,184,.25)}.template-automation-blue .stats{background:#003057}.template-automation-blue .cards article{border-left:5px solid var(--primary)}
body.template-energy-grid{--primary:#22c55e;--secondary:#14532d;--accent:#86efac}.template-energy-grid .hero{background-color:#052e16}.template-energy-grid .stats{background:linear-gradient(90deg,#052e16,#14532d)}.template-energy-grid .cards article{border-top:4px solid var(--primary)}
body.template-modern-saas{--primary:#2563eb;--secondary:#0f172a;--accent:#60a5fa}.template-modern-saas .hero{color:#fff;border-radius:0 0 48px 48px}.template-modern-saas .cards article{border:0;box-shadow:0 16px 40px rgba(37,99,235,.12)}.template-modern-saas .section h2{text-transform:none;font-size:38px}.template-modern-saas .btn{text-transform:none}
body.template-webflow-services{--primary:#146ef5;--secondary:#101828;--accent:#7dd3fc}.template-webflow-services .top-nav{box-shadow:none;border-bottom:1px solid #e5e7eb}.template-webflow-services .hero h1{text-transform:none;letter-spacing:-.04em}.template-webflow-services .cards article{border-radius:22px}.template-webflow-services .btn{text-transform:none;font-weight:800}
body.template-bootstrap-clean{--primary:#0d6efd;--secondary:#212529;--accent:#6ea8fe}.template-bootstrap-clean .top-nav{box-shadow:0 1px 3px rgba(0,0,0,.08)}.template-bootstrap-clean .section h2{text-transform:none}.template-bootstrap-clean .cards article{border-radius:.375rem}.template-bootstrap-clean .btn{border-radius:.375rem;text-transform:none}
body.template-minimal-white{--primary:#334155;--secondary:#0f172a;--accent:#94a3b8}.template-minimal-white .hero{color:#0f172a}.template-minimal-white .btn-outline{border-color:#0f172a;color:#0f172a}.template-minimal-white .top-nav{box-shadow:none}.template-minimal-white .section,.template-minimal-white .section.light{background:#fff}.template-minimal-white .cards article{border:1px solid #e5e7eb;box-shadow:none}
body.template-luxury-dark{--primary:#d6a43a;--secondary:#111;--accent:#f3d27a;background:#090909;color:#f5f5f5}.template-luxury-dark .top-nav,.template-luxury-dark .section,.template-luxury-dark .section.light,.template-luxury-dark .cards article{background:#111;color:#f5f5f5}.template-luxury-dark nav a{color:#f5f5f5}.template-luxury-dark .hero h1{font-family:Georgia,serif;letter-spacing:.01em}.template-luxury-dark .cards article{border:1px solid rgba(214,164,58,.35)}
body.template-three-d-visual{--primary:#8b5cf6;--secondary:#0f172a;--accent:#06b6d4;background:radial-gradient(circle at top left,#312e81,#0f172a 45%,#020617)}.template-three-d-visual .hero{background-blend-mode:overlay}.template-three-d-visual .section{background:linear-gradient(180deg,#0f172a,#111827);color:#fff}.template-three-d-visual .cards article{background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.14);color:#fff}
body.template-realtor{--primary:#b45309;--secondary:#292524;--accent:#f59e0b}.template-realtor .hero{min-height:680px}.template-realtor .cards img{height:240px}.template-realtor .section h2{text-transform:none;font-family:Georgia,serif}.template-realtor .cards article{border-radius:0;box-shadow:0 20px 50px rgba(0,0,0,.15)}
body.template-property-management{--primary:#0f766e;--secondary:#134e4a;--accent:#2dd4bf}.template-property-management .top-nav{border-bottom:1px solid #ccfbf1}.template-property-management .hero h1{text-transform:none}.template-property-management .cards article{border-radius:18px;border:1px solid #99f6e4}
body.template-conversion-rfq{--primary:#f97316;--secondary:#111827;--accent:#fb923c}.template-conversion-rfq .hero{min-height:640px}.template-conversion-rfq .btn-yellow{font-size:15px;box-shadow:0 12px 28px rgba(249,115,22,.35)}.template-conversion-rfq .hero-form-card{border:4px solid var(--primary)}.template-conversion-rfq .sticky-bar{background:#111827}.template-conversion-rfq .cards article{border-top:5px solid var(--primary)}

/* Hero system fix - no forced default image; supports gradient, color, none, image, image+gradient. */
.hero-content-center .hero-inner{justify-content:center;text-align:center}.hero-content-center .hero-content{margin-left:auto;margin-right:auto}.hero-content-right .hero-inner{justify-content:flex-end;text-align:right}.hero-content-right .hero-content{margin-left:auto}.hero-icons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:26px 0 30px;max-width:720px}.hero-icon{text-align:center;padding:0 18px;border-right:1px solid color-mix(in srgb,var(--primary,#ffc629) 60%,transparent)}.hero-icon:last-child{border-right:0}.hero-icon img{width:54px;height:54px;object-fit:contain;margin:0 auto 9px;border:3px solid var(--primary,#ffc629);border-radius:50%;padding:9px;background:rgba(255,255,255,.04)}.hero-icon strong{display:block;text-transform:uppercase;font-size:12px;line-height:1.2}.hero-icon span{display:block;font-size:12px;color:#dbe1e7;margin-top:4px}.hero-content-center .hero-icons{margin-left:auto;margin-right:auto}.hero-content-right .hero-icons{margin-left:auto}.hero-content-right .hero-actions{justify-content:flex-end}.hero-content-center .hero-actions{justify-content:center}@media(max-width:900px){.hero-icons{grid-template-columns:repeat(2,1fr)}.hero-content-right .hero-inner,.hero-content-center .hero-inner{text-align:left}.hero-content-right .hero-actions,.hero-content-center .hero-actions{justify-content:flex-start}}

/* Icon shape patch: wrapper controls shape, image remains clean. */
.hero-icon{border-right:0!important;border:0 solid transparent;}
.hero-icon img{border:0!important;border-radius:0!important;background:transparent!important;padding:0!important;}
.hero-icon-shape-none{background:transparent!important;border-color:transparent!important;border-width:0!important;}
.hero-icon-shape-box{border-style:solid;}
.hero-icon-shape-circle{border-style:solid;border-radius:999px!important;aspect-ratio:1/1;}


/* Hero icon layout controls */
.hero-icons{gap:var(--heroIconGap,18px)!important;display:flex!important;flex-wrap:wrap!important;align-items:flex-start!important;}
.hero-icon{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;text-align:center!important;min-width:110px!important;padding:8px!important;border-right:0!important;border:0 solid transparent!important;box-sizing:border-box!important;}
.hero-icon-box{display:flex!important;align-items:center!important;justify-content:center!important;margin:0 auto 8px!important;box-sizing:border-box!important;}
.hero-icon-box-none{background:transparent!important;border:0!important;border-radius:0!important;}
.hero-icon-box-box{border-style:solid!important;}
.hero-icon-box-circle{border-style:solid!important;border-radius:999px!important;}
.hero-icon img{object-fit:contain!important;display:block!important;margin:0 auto!important;border:0!important;background:transparent!important;padding:0!important;border-radius:0!important;}
.hero-icon-size-small .hero-icon-box{width:54px!important;height:54px!important;}
.hero-icon-size-medium .hero-icon-box{width:78px!important;height:78px!important;}
.hero-icon-size-large .hero-icon-box{width:108px!important;height:108px!important;}
.hero-icon-size-small img{width:32px!important;height:32px!important;}
.hero-icon-size-medium img{width:48px!important;height:48px!important;}
.hero-icon-size-large img{width:70px!important;height:70px!important;}


/* Final theme/hero publish fixes */
.hero{position:relative;overflow:hidden}.hero .hero-inner{position:relative;z-index:1}.hero-bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.hero h1 span{display:block;color:var(--primary,var(--yellow))!important;background:transparent!important}.hero-icon-size-xlarge .hero-icon-box{width:140px!important;height:140px!important}.hero-icon-size-xlarge img{width:94px!important;height:94px!important}
body.template-apple-minimal{--primary:#111827;--secondary:#f5f5f7;--accent:#0071e3;background:#fff;color:#1d1d1f}body.template-apple-minimal .hero{color:#1d1d1f;background:#f5f5f7}body.template-apple-minimal .btn{border-radius:999px;text-transform:none}body.template-apple-minimal .btn-outline{border-color:#111827;color:#111827}
body.template-tesla-cinematic{--primary:#e82127;--secondary:#111;background:#0a0a0a;color:#fff}body.template-tesla-cinematic .top-nav,body.template-tesla-cinematic .section,body.template-tesla-cinematic .cards article{background:#111;color:#fff}body.template-tesla-cinematic nav a{color:#fff}body.template-tesla-cinematic .hero{min-height:720px;color:#fff;background:#050505}body.template-tesla-cinematic .btn{border-radius:4px}
body.template-spacex-fullbleed{--primary:#fff;--secondary:#050505;--accent:#9ca3af;background:#000;color:#fff}body.template-spacex-fullbleed .top-nav,body.template-spacex-fullbleed .section,body.template-spacex-fullbleed .cards article{background:#050505;color:#fff}body.template-spacex-fullbleed nav a{color:#fff}body.template-spacex-fullbleed .hero{min-height:760px;color:#fff;background:#000}body.template-spacex-fullbleed .hero h1{letter-spacing:.08em;font-weight:900}
body.template-samsara-b2b{--primary:#00a86b;--secondary:#102a43;--accent:#38bdf8;background:#f7faf9;color:#102a43}body.template-samsara-b2b .cards article{border-radius:18px;box-shadow:0 15px 40px rgba(0,168,107,.12)}
body.template-modern-webflow{--primary:#146ef5;--secondary:#101828;--accent:#7dd3fc}body.template-modern-webflow .hero h1{text-transform:none;letter-spacing:-.04em}body.template-modern-webflow .cards article{border-radius:22px;box-shadow:0 20px 50px rgba(20,110,245,.12)}body.template-modern-webflow .btn{text-transform:none;border-radius:12px}
body.template-minimal-clean{--primary:#334155;--secondary:#0f172a;--accent:#94a3b8}body.template-automation-tech{--primary:#005eb8;--secondary:#003057;--accent:#5dade2}body.template-energy-industrial{--primary:#22c55e;--secondary:#14532d;--accent:#86efac}


/* v16 text/html blocks */
.text-block-section .text-block-wrap{margin-left:auto;margin-right:auto}.text-layout-left .text-block-wrap{margin-left:0;margin-right:auto}.text-layout-right .text-block-wrap{margin-left:auto;margin-right:0;text-align:right}.text-layout-centered .text-block-wrap{text-align:center}.text-eyebrow{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.14em;color:var(--primary,var(--yellow));margin-bottom:10px}.text-body{font-size:18px;line-height:1.7;color:inherit}.text-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.text-columns article,.html-embed-box{background:var(--card-bg,#fff);border:1px solid rgba(148,163,184,.35);border-radius:var(--card-radius,10px);padding:22px;overflow:auto}.html-embed-box iframe,.html-embed-box video,.html-embed-box img{max-width:100%}.custom-html-sample{padding:18px;border:2px dashed var(--primary,var(--yellow));border-radius:12px;background:rgba(148,163,184,.12)}@media(max-width:900px){.text-columns{grid-template-columns:1fr}.text-layout-right .text-block-wrap{text-align:left}}

/* v18 color controls */
.hero h1 .hero-headline-accent{display:block;background:transparent!important}.hero h1 .hero-headline-main{color:inherit}.section[style*="--sectionTextColor"]{color:var(--sectionTextColor)!important}.section[style*="--headingColor"] h2,.section[style*="--headingColor"] h3{color:var(--headingColor)!important}.section[style*="--bodyTextColor"] p,.section[style*="--bodyTextColor"] li,.section[style*="--bodyTextColor"] .text-body{color:var(--bodyTextColor)!important}


/* v19 simple clean blog system */
.blog-site-header{background:#ffffff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:30}.blog-site-header .container{display:flex;gap:22px;justify-content:flex-end;padding:18px 0}.blog-site-header a{color:#111827;text-decoration:none;font-weight:900;text-transform:uppercase;font-size:13px}.blog-public{background:#f8fafc}.blog-hero{background:#101820;color:#ffffff;padding:70px 0}.blog-hero .container{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}.blog-hero h1{font-size:clamp(36px,5vw,64px);line-height:1.02;margin:0 0 14px;text-transform:uppercase}.blog-hero p{font-size:18px;line-height:1.55}.blog-hero img{width:100%;max-height:360px;object-fit:cover;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.35)}.blog-kicker{color:var(--primary,#ffc629);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.blog-article{background:#ffffff;margin-top:-30px;position:relative;border-radius:18px;padding:44px;box-shadow:0 18px 45px rgba(15,23,42,.10);font-size:18px;line-height:1.75}.blog-article p{margin:0 0 22px}.blog-list-page{padding:55px 0}.blog-list-page h1{font-size:44px;margin:0 0 24px}.blog-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.blog-card{background:#ffffff;border:1px solid #dbe2ea;border-radius:16px;overflow:hidden;box-shadow:0 12px 32px rgba(15,23,42,.07)}.blog-card img{width:100%;height:190px;object-fit:cover;background:#e5e7eb}.blog-card div{padding:18px}.blog-card h3{font-size:21px;margin:8px 0 10px}.blog-card h3 a{color:inherit;text-decoration:none}.blog-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.blog-section-head h2{text-align:left;margin:0}.blog-carousel{display:flex;gap:22px;overflow-x:auto;padding:5px 3px 20px;scroll-snap-type:x mandatory}.blog-carousel .blog-card{min-width:320px;scroll-snap-align:start}.blog-framework-technical-article .blog-article{max-width:900px}.blog-framework-case-study .blog-hero{background:#17232d}.blog-framework-minimal-clean .blog-hero{background:#ffffff;color:#111827;border-bottom:1px solid #e5e7eb}.blog-framework-minimal-clean .blog-article{box-shadow:none;border:1px solid #e5e7eb}@media(max-width:900px){.blog-hero .container,.blog-card-grid{grid-template-columns:1fr}.blog-article{padding:26px}.blog-section-head{display:block}.blog-carousel .blog-card{min-width:280px}}

/* v20 advanced blog rendering */
.blog-hero-overlay{background-size:cover;background-position:center;min-height:430px;display:flex;align-items:center}.blog-hero-overlay .container{display:block}.blog-hero-copy{max-width:860px}.blog-align-center .blog-hero-copy{text-align:center;margin:0 auto}.blog-align-right .blog-hero-copy{text-align:right;margin-left:auto}.blog-hero h1 .blog-hero-accent{display:block}.blog-article h1{font-size:44px;line-height:1.08;margin:0 0 18px}.blog-article h2{font-size:34px;line-height:1.15;margin:34px 0 14px}.blog-article h3{font-size:26px;line-height:1.2;margin:26px 0 12px}.blog-article h4{font-size:20px;line-height:1.25;margin:22px 0 10px}.blog-figure{margin:28px 0}.blog-figure img{width:100%;max-height:460px;object-fit:cover;border-radius:16px;box-shadow:0 14px 40px rgba(15,23,42,.12)}.blog-figure.full{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.blog-figure.full img{border-radius:0;max-height:520px}.blog-figure figcaption{text-align:center;color:#6b7280;font-size:13px;margin-top:8px}.blog-html-block{margin:24px 0}.blog-framework-pinnacle-industrial .blog-hero{background-color:#101820}.blog-framework-pinnacle-industrial .blog-article{border-top:6px solid var(--primary,#ffc629)}
/* ConvertFlow-style campaign assets */
.cf-overlay{position:fixed;inset:0;background:rgba(12,18,28,.58);z-index:9999;display:none;align-items:center;justify-content:center;padding:18px}.cf-overlay.open{display:flex}.cf-modal{width:min(780px,96vw);box-shadow:0 24px 70px rgba(15,23,42,.36);position:relative;display:grid;grid-template-columns:1fr 1fr}.cf-modal.cf-center{display:block;max-width:580px}.cf-modal.cf-slide_in{max-width:460px;margin-left:auto;margin-right:30px}.cf-left,.cf-right{padding:32px}.cf-right{background:#f8fafc}.cf-close{position:absolute;right:12px;top:10px;width:28px;height:28px;border-radius:999px;border:0;background:#888;color:white}.cf-form{display:grid;gap:10px;margin-top:18px}.cf-form input,.cf-form textarea,.cf-form select{width:100%;padding:13px;border:1px solid #111827;border-radius:5px}.cf-form button{border:0;color:white;padding:14px;font-weight:900;border-radius:5px}.cf-right ul{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:18px}.cf-right li{display:flex;gap:10px}.cf-sticky-bar{position:fixed;left:0;right:0;bottom:0;z-index:9998;color:white;display:flex;align-items:center;justify-content:center;gap:18px;padding:14px 18px;box-shadow:0 -14px 30px rgba(0,0,0,.2)}.cf-sticky-bar button{border:0;color:#fff;font-weight:900;padding:10px 18px;border-radius:5px}.cf-bar-close{background:rgba(255,255,255,.15)!important;padding:8px 12px!important}@media(max-width:800px){.cf-modal{grid-template-columns:1fr}.cf-right{display:none}.cf-sticky-bar{flex-direction:column;text-align:center}}

/* v24 form success modal */
.lead-success-overlay{position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:99999;display:none;align-items:center;justify-content:center;padding:20px}.lead-success-overlay.open{display:flex}.lead-success-modal{background:#fff;color:#111827;max-width:560px;width:100%;border-radius:18px;padding:34px;box-shadow:0 30px 80px rgba(15,23,42,.35);text-align:center;position:relative}.lead-success-x{position:absolute;right:12px;top:10px;border:0;background:#6b7280;color:#fff;border-radius:50%;width:28px;height:28px}.lead-success-modal h2{font-size:30px;margin:0 0 12px}.lead-success-modal p{font-size:17px;line-height:1.6}.cf-success{text-align:left;padding:20px 0}.cf-success h2{margin-bottom:10px}.cf-success-close{border:0;color:#fff;background:#2f6fed;padding:14px 18px;border-radius:6px;font-weight:900}
/* v25 popup theme matching */
.cf-overlay .cf-modal{border:2px solid var(--primary,#ffc629);border-radius:var(--card-radius,16px);overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.42);}
.cf-overlay .cf-left,.cf-overlay .cf-right{padding:32px;}
.cf-overlay .cf-form input,.cf-overlay .cf-form textarea,.cf-overlay .cf-form select{background:var(--input-bg,#ffffff);color:var(--text,#111827);border:1px solid color-mix(in srgb,var(--primary,#ffc629) 35%,#d1d5db);border-radius:var(--button-radius,6px);}
.cf-overlay .cf-form button{border-radius:var(--button-radius,6px);font-weight:900;}
.cf-overlay .cf-close{background:var(--dark,#101820);color:#fff;}
body.dark-mode .cf-overlay .cf-form input,body.dark-mode .cf-overlay .cf-form textarea,body.dark-mode .cf-overlay .cf-form select{background:#0f172a;color:#fff;border-color:#334155;}
.cf-sticky-bar{box-shadow:0 -10px 30px rgba(0,0,0,.18);}


/* v26 navigation logo spacing and form success controls */
.top-nav .nav-wrap{min-height:92px;padding-top:12px;padding-bottom:12px;box-sizing:border-box;}
.top-nav .logo{display:flex;align-items:center;justify-content:center;min-height:62px;padding:6px 0;box-sizing:border-box;}
.top-nav .logo img{max-height:58px;width:auto;max-width:260px;object-fit:contain;display:block;}
.lead-success-modal{border:2px solid var(--primary,#ffc629);background:var(--card-bg,#ffffff);color:var(--text,#111827);border-radius:var(--card-radius,18px);}
.lead-success-modal .btn-yellow,.lead-success-btn{background:var(--primary,#ffc629)!important;color:var(--button-text,#111111)!important;border-radius:var(--button-radius,6px)!important;}
@media(max-width:900px){.top-nav .nav-wrap{min-height:auto}.top-nav .logo img{max-height:52px;max-width:220px}}


/* v28 download offer after form registration */
.lead-download-btn,.cf-download-btn{display:inline-block;margin:12px auto 14px;background:var(--primary,#ffc629);color:var(--button-text,#111827);font-weight:900;text-decoration:none;padding:12px 18px;border-radius:var(--button-radius,6px)}
.lead-download-note,.cf-download-note{font-size:14px;color:inherit;opacity:.85;margin:10px 0 0}.cf-success .cf-download-btn{margin-right:12px}.media-item em{display:block;font-size:10px;color:#64748b;font-style:normal;margin-top:3px}.lead-success-modal table{text-align:left}


/* v31 premium ConvertFlow popup theme matching - Apple/Tesla glass UI */
.cf-premium-overlay,
.cf-overlay{
  background:rgba(8,13,22,.62)!important;
  backdrop-filter:blur(10px) saturate(140%);
  -webkit-backdrop-filter:blur(10px) saturate(140%);
}
.cf-premium-modal,
.cf-overlay .cf-modal{
  background:linear-gradient(135deg, color-mix(in srgb,var(--cf-bg,var(--card-bg,#ffffff)) 92%, transparent), color-mix(in srgb,var(--cf-right-bg,var(--section-bg,#f7f9fc)) 82%, transparent))!important;
  color:var(--cf-text,var(--text,#111827))!important;
  border:1.5px solid color-mix(in srgb,var(--cf-accent,var(--primary,#ffc629)) 70%, transparent)!important;
  border-radius:22px!important;
  overflow:hidden!important;
  box-shadow:0 34px 90px rgba(0,0,0,.44), inset 0 1px 0 rgba(255,255,255,.28)!important;
  transform:translateY(12px) scale(.965);
  opacity:0;
  animation:cfPremiumEnter .34s cubic-bezier(.2,.8,.2,1) forwards;
}
@keyframes cfPremiumEnter{to{transform:translateY(0) scale(1);opacity:1}}
.cf-premium-modal .cf-left,
.cf-overlay .cf-left{
  background:color-mix(in srgb,var(--cf-bg,var(--card-bg,#ffffff)) 88%, transparent)!important;
  color:var(--cf-text,var(--text,#111827))!important;
  padding:38px!important;
}
.cf-premium-modal .cf-right,
.cf-overlay .cf-right{
  background:linear-gradient(145deg, color-mix(in srgb,var(--cf-right-bg,var(--section-bg,#f7f9fc)) 88%, transparent), color-mix(in srgb,var(--cf-bg,var(--card-bg,#ffffff)) 72%, transparent))!important;
  color:var(--cf-text,var(--text,#111827))!important;
  padding:38px!important;
}
.cf-premium-modal h2,
.cf-overlay .cf-modal h2{color:var(--cf-text,var(--text,#111827))!important;line-height:1.05;letter-spacing:-.02em;margin:0 0 18px;font-size:clamp(24px,3vw,34px)}
.cf-premium-modal p,
.cf-overlay .cf-modal p{color:var(--cf-muted,var(--muted,#475569))!important;line-height:1.55;margin:0 0 18px}
.cf-premium-modal .cf-form,
.cf-overlay .cf-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.cf-premium-modal .cf-form textarea,.cf-overlay .cf-form textarea,.cf-premium-modal .cf-form button,.cf-overlay .cf-form button{grid-column:1/-1}
.cf-premium-modal .cf-form input,
.cf-premium-modal .cf-form textarea,
.cf-premium-modal .cf-form select,
.cf-overlay .cf-form input,
.cf-overlay .cf-form textarea,
.cf-overlay .cf-form select{
  background:color-mix(in srgb,var(--cf-bg,var(--card-bg,#fff)) 86%, #ffffff 14%)!important;
  color:var(--cf-text,var(--text,#111827))!important;
  border:1px solid color-mix(in srgb,var(--cf-accent,var(--primary,#ffc629)) 38%, #94a3b8)!important;
  border-radius:10px!important;
  padding:14px 14px!important;
  outline:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18)!important;
}
.cf-premium-modal .cf-form input:focus,
.cf-premium-modal .cf-form textarea:focus,
.cf-premium-modal .cf-form select:focus,
.cf-overlay .cf-form input:focus,
.cf-overlay .cf-form textarea:focus,
.cf-overlay .cf-form select:focus{border-color:var(--cf-accent,var(--primary,#ffc629))!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--cf-accent,var(--primary,#ffc629)) 22%, transparent)!important}
.cf-premium-modal .cf-form button,
.cf-overlay .cf-form button,
.cf-download-btn{
  background:linear-gradient(135deg,var(--cf-primary,var(--primary,#ffc629)), color-mix(in srgb,var(--cf-primary,var(--primary,#ffc629)) 82%, #ffffff))!important;
  color:var(--cf-button-text,var(--button-text,#111111))!important;
  border:0!important;
  border-radius:12px!important;
  padding:15px 20px!important;
  font-weight:900!important;
  box-shadow:0 12px 28px color-mix(in srgb,var(--cf-primary,var(--primary,#ffc629)) 34%, transparent)!important;
}
.cf-premium-modal .cf-right ul,.cf-overlay .cf-right ul{gap:18px;margin-top:18px}.cf-premium-modal .cf-right li,.cf-overlay .cf-right li{align-items:flex-start;font-weight:600;line-height:1.35;color:var(--cf-text,var(--text,#111827))!important}.cf-bullet-star{color:var(--cf-accent,var(--primary,#ffc629))!important;font-size:18px;line-height:1;margin-top:1px;filter:drop-shadow(0 0 8px color-mix(in srgb,var(--cf-accent,var(--primary,#ffc629)) 35%, transparent))}
.cf-premium-modal .cf-close,
.cf-overlay .cf-close{right:14px!important;top:14px!important;width:30px!important;height:30px!important;background:rgba(15,23,42,.55)!important;color:#fff!important;border:1px solid rgba(255,255,255,.35)!important;box-shadow:0 8px 22px rgba(0,0,0,.25)!important;z-index:3!important;cursor:pointer!important}
.cf-glass-success{text-align:center!important;padding:18px 12px!important}.cf-glass-success h2{font-size:clamp(26px,4vw,36px)!important;margin-bottom:12px!important}.cf-glass-success p{font-size:17px!important}.cf-success-close{display:none!important}.cf-download-btn{display:inline-block;text-decoration:none;margin-top:14px!important}
.cf-premium-sticky{background:linear-gradient(135deg,var(--cf-bg,var(--dark,#101820)),color-mix(in srgb,var(--cf-primary,var(--primary,#ffc629)) 34%, var(--cf-bg,var(--dark,#101820))))!important;color:#fff!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid color-mix(in srgb,var(--cf-accent,var(--primary,#ffc629)) 55%, transparent)!important}.cf-premium-sticky button:not(.cf-bar-close){background:var(--cf-primary,var(--primary,#ffc629))!important;color:var(--cf-button-text,var(--button-text,#111111))!important;border-radius:999px!important}
@media(max-width:800px){.cf-premium-modal .cf-form,.cf-overlay .cf-form{grid-template-columns:1fr}.cf-premium-modal .cf-left,.cf-overlay .cf-left,.cf-premium-modal .cf-right,.cf-overlay .cf-right{padding:26px!important}.cf-overlay .cf-right{display:block!important}.cf-modal{grid-template-columns:1fr!important}}

/* v52 home-service conversion blocks */
body{font-size:18px;line-height:1.6}
.section p,.section li,.cards article p,.text-columns article p,.comparison-row div,.timeline-item p,.mlb-card p,.mlb-intro,.mlb-lead{font-size:clamp(16px,1.05vw,19px)!important;line-height:1.65!important}
.section h2,.mlb h2{font-size:clamp(34px,3.4vw,56px)!important;line-height:1.04!important;letter-spacing:0!important}
.section h3,.cards h3,.mlb-card h3{font-size:clamp(21px,1.45vw,28px)!important;line-height:1.15!important}
.mlb-hero-stats h1{font-size:clamp(46px,5vw,86px)!important;line-height:.95!important;letter-spacing:0!important}
.hero-trust-badges{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 12px}
.hero-trust-badge{display:grid;grid-template-columns:auto auto auto;gap:3px 8px;align-items:center;background:rgba(255,255,255,.92);border:1px solid rgba(148,163,184,.32);border-radius:14px;padding:10px 12px;color:#0f172a;box-shadow:0 14px 34px rgba(15,23,42,.10)}
.trust-icon-mark{position:relative;display:inline-grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#0f172a;color:#fff;font-size:13px;font-weight:950;line-height:1;grid-row:1/3}
.hero-trust-google .trust-icon-mark{background:#fff;color:#4285f4;border:1px solid #dbe3ef;font-size:21px;font-family:Arial,Helvetica,sans-serif}.hero-trust-google .trust-icon-mark:after{content:"";width:6px;height:6px;background:#ea4335;border-radius:50%;position:absolute}
.hero-trust-bbb .trust-icon-mark{background:#183b68;color:#fff}.hero-trust-reviews .trust-icon-mark{background:#f59e0b;color:#111827}.hero-trust-license .trust-icon-mark{background:#2563eb}.hero-trust-insured .trust-icon-mark{background:#16a34a}.hero-trust-guarantee .trust-icon-mark{background:#dc2626}.hero-trust-speed .trust-icon-mark{background:#7c3aed}.hero-trust-local .trust-icon-mark{background:#0f766e}
.hero-trust-badge b{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#475569}
.hero-trust-badge strong{font-size:20px;line-height:1;color:#0f172a}
.hero-trust-badge small{grid-column:2/-1;color:#64748b;font-size:12px;font-weight:750}
.trust-pos-top{margin:0 0 22px}.trust-pos-bottom{margin:22px 0 0}.trust-pos-left{max-width:520px;justify-content:flex-start}.trust-pos-right{max-width:520px;justify-content:flex-end;margin-left:auto}.trust-pos-vertical{display:grid;grid-template-columns:1fr;max-width:330px}.trust-pos-vertical .hero-trust-badge{width:100%}
.hero-trust-layout-left .mlb-actions,.hero-trust-layout-vertical .mlb-actions{margin-top:24px}.hero-trust-layout-right .mlb-actions{justify-content:flex-end}
.trust-cta-strip{background:#fff;padding:20px 0;border-top:1px solid rgba(148,163,184,.22);border-bottom:1px solid rgba(148,163,184,.22)}
.trust-cta-wrap{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}
.trust-badge-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.trust-proof-badge{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(15,23,42,.18);background:#fff;border-radius:8px;padding:10px 12px;box-shadow:0 10px 28px rgba(15,23,42,.08);color:#0f172a}
.trust-proof-badge b{font-size:12px;text-transform:uppercase;color:#334155}.trust-proof-badge strong{font-size:22px;color:#0f172a}
.trust-rating{display:inline-flex;align-items:center;gap:9px;color:#0f172a}.trust-rating strong{font-size:28px}.trust-rating .stars{color:#f59e0b;font-size:22px;letter-spacing:1px}.trust-rating small{font-size:15px;color:#64748b}
.trust-cta-actions{display:grid;gap:10px;min-width:min(380px,100%)}
.trust-call,.trust-schedule{display:flex;align-items:center;justify-content:center;text-decoration:none;border-radius:999px;padding:17px 28px;font-size:clamp(20px,2vw,32px);font-weight:950;letter-spacing:0;color:#fff!important;background:#dc2626;box-shadow:0 18px 45px rgba(220,38,38,.22)}
.trust-schedule{background:var(--primary,#2563eb);font-size:clamp(18px,1.7vw,28px)}
.coupon-head{text-align:center;max-width:880px;margin:0 auto 24px}.coupon-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.coupon-card{position:relative;background:var(--card-bg,#fff);border:1px dashed color-mix(in srgb,var(--primary,#2563eb) 55%,#94a3b8);border-radius:18px;padding:24px;box-shadow:0 18px 45px rgba(15,23,42,.09);overflow:hidden}.coupon-card:before{content:"";position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,var(--primary,#2563eb),var(--accent,#14b8a6))}.coupon-price{display:inline-flex;border-radius:999px;background:color-mix(in srgb,var(--primary,#2563eb) 14%,#fff);color:var(--primary,#2563eb);padding:8px 12px;font-weight:950;margin-bottom:14px}.coupon-card ul{padding-left:20px;margin:16px 0}.coupon-card li{margin-bottom:8px}.coupon-card .learn-link{margin:8px 0 0}
details summary{font-size:clamp(17px,1.1vw,21px)!important;line-height:1.35!important}
details p{font-size:clamp(16px,1.05vw,19px)!important}
@media(max-width:1050px){.coupon-grid{grid-template-columns:repeat(2,1fr)}.trust-cta-wrap{align-items:flex-start}.trust-cta-actions{width:100%}}
@media(max-width:700px){.coupon-grid{grid-template-columns:1fr}.trust-call,.trust-schedule{font-size:20px}.hero-trust-badge{width:100%}}

/* v36 hero MP4 background fix */
.hero{position:relative!important;overflow:hidden!important;}
.hero .hero-inner{position:relative!important;z-index:2!important;}
.hero-bg-video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;z-index:0!important;pointer-events:none!important;background:#000!important;}
.hero:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.25));}


/* v39 IndustLabs modern editable homepage */
body.template-industlabs-modern{
  --modern-bg:#050708;
  --modern-panel:#0d1417;
  --modern-yellow:#f5b700;
  --modern-text:#ffffff;
  background:#050708!important;
  color:#ffffff!important;
}
body.template-industlabs-modern .top-nav{
  position:sticky!important;
  top:0!important;
  background:rgba(3,5,6,.94)!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  box-shadow:none!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
body.template-industlabs-modern .top-nav .nav-wrap{min-height:76px!important;}
body.template-industlabs-modern .top-nav .logo img{max-height:54px!important;max-width:245px!important;}
body.template-industlabs-modern .top-nav nav a{color:#ffffff!important;font-size:12px!important;letter-spacing:.02em!important;}
body.template-industlabs-modern .top-nav nav a:hover{color:#f5b700!important;}
body.template-industlabs-modern .top-nav .btn-yellow{background:linear-gradient(135deg,#f5b700,#ffcc22)!important;color:#050505!important;border:0!important;border-radius:8px!important;box-shadow:0 12px 35px rgba(245,183,0,.26)!important;}
body.template-industlabs-modern .hero{
  min-height:690px!important;
  background-size:cover!important;
  background-position:center right!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
}
body.template-industlabs-modern .hero:before{background:linear-gradient(90deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.76) 36%,rgba(0,0,0,.25) 68%,rgba(0,0,0,.10) 100%)!important;}
body.template-industlabs-modern .hero:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(rgba(245,183,0,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(245,183,0,.045) 1px,transparent 1px);background-size:38px 38px;}
body.template-industlabs-modern .hero-inner{z-index:2!important;}
body.template-industlabs-modern .hero-content{max-width:590px!important;padding:72px 0 46px!important;}
body.template-industlabs-modern .hero h1{font-size:clamp(44px,6vw,76px)!important;line-height:.95!important;letter-spacing:-2px!important;font-weight:950!important;}
body.template-industlabs-modern .hero h1 .hero-headline-accent,
body.template-industlabs-modern .hero h1 .accent{color:#f5b700!important;display:block!important;}
body.template-industlabs-modern .hero p{font-size:20px!important;color:#ffffff!important;font-weight:800!important;margin-bottom:0!important;}
body.template-industlabs-modern .hero-actions{margin-top:30px!important;}
body.template-industlabs-modern .hero .btn-yellow{background:linear-gradient(135deg,#f5b700,#ffcc22)!important;color:#050505!important;border:0!important;border-radius:8px!important;box-shadow:0 12px 35px rgba(245,183,0,.28)!important;}
body.template-industlabs-modern .hero .btn-outline{border:1px solid rgba(245,183,0,.72)!important;color:#ffffff!important;background:rgba(0,0,0,.20)!important;border-radius:8px!important;}
body.template-industlabs-modern .hero-icons{margin-top:34px!important;margin-bottom:30px!important;gap:12px!important;}
body.template-industlabs-modern .hero-icon{min-width:118px!important;border-right:1px solid rgba(255,255,255,.18)!important;}
body.template-industlabs-modern .hero-icon:last-child{border-right:0!important;}
body.template-industlabs-modern .hero-icon-box{border-color:#f5b700!important;color:#f5b700!important;background:transparent!important;}
body.template-industlabs-modern .hero-icon strong{color:#ffffff!important;font-size:12px!important;}
body.template-industlabs-modern .hero-icon span{color:#ffffff!important;opacity:.92!important;}
body.template-industlabs-modern .stats{background:#050708!important;border-top:1px solid rgba(255,255,255,.14)!important;border-bottom:1px solid rgba(255,255,255,.14)!important;}
body.template-industlabs-modern .stats h2{color:#f5b700!important;font-size:13px!important;letter-spacing:.12em!important;text-transform:uppercase!important;padding-top:22px!important;}
body.template-industlabs-modern .stats-grid div{border-right:0!important;color:rgba(255,255,255,.82)!important;}
body.template-industlabs-modern .trust-icon{filter:brightness(0) invert(1);opacity:.78!important;}
body.template-industlabs-modern .section,
body.template-industlabs-modern .section.light{background:#050708!important;color:#ffffff!important;}
body.template-industlabs-modern .section h2{color:#ffffff!important;font-size:clamp(30px,4vw,44px)!important;text-transform:none!important;letter-spacing:-1px!important;}
body.template-industlabs-modern .section h2:after{display:none!important;}
body.template-industlabs-modern .cards{gap:24px!important;}
body.template-industlabs-modern .cards article{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025))!important;border:1px solid rgba(245,183,0,.45)!important;border-radius:18px!important;overflow:hidden!important;box-shadow:0 25px 80px rgba(0,0,0,.55)!important;color:#ffffff!important;}
body.template-industlabs-modern .cards article img{height:215px!important;filter:saturate(.78) contrast(1.05) brightness(.82)!important;background:#111!important;}
body.template-industlabs-modern .cards h3{color:#ffffff!important;font-size:21px!important;text-transform:uppercase!important;padding:0 22px!important;}
body.template-industlabs-modern .cards p{color:#d6dddf!important;font-size:15px!important;padding:0 22px!important;}
body.template-industlabs-modern .learn-link{background:transparent!important;color:#f5b700!important;margin:0 22px 22px!important;padding:0!important;box-shadow:none!important;border-radius:0!important;}
body.template-industlabs-modern .text-block-section{background:#050708!important;}
body.template-industlabs-modern .text-eyebrow{color:#f5b700!important;}
body.template-industlabs-modern .text-body{color:#dce2e5!important;font-size:16px!important;line-height:1.65!important;}
body.template-industlabs-modern .features div{background:transparent!important;border:0!important;color:#ffffff!important;padding:12px!important;}
body.template-industlabs-modern .features div:before{content:"";display:block;width:44px;height:44px;border:2px solid #f5b700;border-radius:14px;margin:0 auto 10px;}
body.template-industlabs-modern .rfq{background:#050708!important;color:#ffffff!important;padding:42px 0 55px!important;}
body.template-industlabs-modern .rfq .container{background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.045))!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:18px!important;box-shadow:0 25px 80px rgba(0,0,0,.55)!important;padding:32px 34px 26px!important;max-width:980px!important;}
body.template-industlabs-modern .rfq h2{text-align:left!important;color:#ffffff!important;text-transform:none!important;font-size:36px!important;margin:0 0 10px!important;}
body.template-industlabs-modern .rfq p{color:#c8d0d4!important;}
body.template-industlabs-modern .rfq form{max-width:none!important;}
body.template-industlabs-modern .rfq input,
body.template-industlabs-modern .rfq textarea,
body.template-industlabs-modern .rfq select{background:rgba(0,0,0,.35)!important;color:#ffffff!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:7px!important;}
body.template-industlabs-modern .rfq button{background:linear-gradient(135deg,#f5b700,#ffcc22)!important;color:#050505!important;border:0!important;border-radius:8px!important;}
body.template-industlabs-modern footer{background:#080a0b!important;border-top:1px solid rgba(255,255,255,.14)!important;color:#b7c0c5!important;}
body.template-industlabs-modern footer .container{display:grid!important;grid-template-columns:1.2fr .8fr .9fr 1fr!important;gap:36px!important;align-items:start!important;}
body.template-industlabs-modern footer *{color:#b7c0c5!important;}
body.template-industlabs-modern footer strong,
body.template-industlabs-modern footer h3,
body.template-industlabs-modern footer h4{color:#ffffff!important;}
@media(max-width:900px){body.template-industlabs-modern .cards,body.template-industlabs-modern footer .container{grid-template-columns:1fr!important;}body.template-industlabs-modern .hero-icon{border-right:0!important;}body.template-industlabs-modern .hero-content{padding:44px 0!important;}}

/* v41 logo image sizing fix - image only, no navigation resize */
.top-nav .nav-wrap{
  min-height:80px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
}
.top-nav .logo{
  width:260px!important;
  height:64px!important;
  min-height:0!important;
  padding:0!important;
  flex:0 0 260px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
  position:relative!important;
}
/* The brand logo is an <a> sitting directly in .nav-wrap (outside <nav>), so it
   otherwise inherits the browser-default blue + underlined link style. Force the
   text logo to match the theme ink and never underline. */
.top-nav .logo,.top-nav .logo:link,.top-nav .logo:visited,.top-nav .logo:hover,
.top-nav .logo .logo-text{
  text-decoration:none!important;
  color:var(--nav-text,var(--text,#111827))!important;
}
/* Hero "ghost" (outline) buttons are white border + white text. Over a photo hero
   with bright areas (e.g. a white plate) they disappear. Give them a translucent
   dark glass backing so the secondary CTA (e.g. "View the Menu") is always legible. */
.hero .hero-actions .btn-outline,
.modern-hero-media .mlb-actions .btn-outline{
  background:rgba(12,10,8,.70)!important;
  border-color:rgba(255,255,255,.9)!important;
  color:#fff!important;
  -webkit-backdrop-filter:blur(4px);
  backdrop-filter:blur(4px);
}
.hero .hero-actions .btn-outline:hover,
.modern-hero-media .mlb-actions .btn-outline:hover{
  background:rgba(12,10,8,.80)!important;
}
.top-nav .logo img{
  width:var(--logo-width-desktop,240px)!important;
  height:var(--logo-height-desktop,58px)!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  display:block!important;
  flex:0 0 auto!important;
}
.top-nav nav{
  flex:1 1 auto!important;
  justify-content:flex-end!important;
  min-width:0!important;
}
@media(max-width:900px){
  .top-nav .nav-wrap{min-height:auto!important;padding:14px 0!important;display:block!important;}
  .top-nav .logo{width:100%!important;height:60px!important;flex:0 0 auto!important;justify-content:center!important;margin-bottom:10px!important;}
  .top-nav .logo img{width:var(--logo-width-mobile,220px)!important;height:var(--logo-height-mobile,52px)!important;max-width:none!important;max-height:none!important;}
  .top-nav nav{justify-content:center!important;}
}


/* v40 editable icon controls */
.hero-icon-box{display:flex;align-items:center;justify-content:center}
.hero-icon-box img{width:100%;height:100%;object-fit:contain;display:block}
.hero-icon-svg,.hero-icon-alpha{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1;font-weight:900}
.hero-icon-svg{background:currentColor;-webkit-mask:var(--iconUrl) center/contain no-repeat;mask:var(--iconUrl) center/contain no-repeat}
.hero-icon-alpha{font-family:Arial Black,Arial,sans-serif}
.editable-icon-svg{display:block;width:54px;height:54px;margin:0 auto 8px;background:currentColor;-webkit-mask:var(--iconUrl) center/contain no-repeat;mask:var(--iconUrl) center/contain no-repeat}
.editable-icon-alpha{display:flex;width:54px;height:54px;margin:0 auto 8px;align-items:center;justify-content:center;font-weight:900;line-height:1}
.trust-grid .editable-icon-svg,.trust-grid .editable-icon-alpha{width:54px;height:54px}
.icon-features .editable-icon-svg,.icon-features .editable-icon-alpha{width:56px;height:56px;margin:0 auto 12px}


/* icon render fix: logos/images display as images, simple icons can still use color masks */
.hero-icon-img,.editable-icon-img{width:var(--iconW,54px)!important;height:var(--iconH,54px)!important;object-fit:contain!important;display:block!important;margin:0 auto!important;background:transparent!important;border:0!important;padding:0!important;border-radius:0!important;}
.hero-icon-svg,.editable-icon-svg{display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;flex:0 0 auto!important;background:currentColor!important;-webkit-mask:var(--iconUrl) center/contain no-repeat!important;mask:var(--iconUrl) center/contain no-repeat!important;}
.hero-icon-alpha,.editable-icon-alpha{display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;flex:0 0 auto!important;}


/* Editable Problem / Solution Visual Block */
.psv-section {
  color: #ffffff;
  overflow: hidden;
}
.psv-section .psv-wrap {
  max-width: var(--container-width, 1180px);
  margin: 0 auto;
}
.psv-section h2 {
  color: var(--psv-title-color, #ffffff) !important;
  font-size: var(--psv-title-size, 42px) !important;
  line-height: 1.06;
  text-align: center;
  margin: 0 0 10px;
}
.psv-subtitle {
  color: var(--psv-subtitle-color, #dbeafe) !important;
  font-size: var(--psv-subtitle-size, 18px) !important;
  text-align: center;
  margin: 0 0 28px;
}
.psv-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.psv-panel {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
}
.psv-panel-title {
  color: var(--psv-column-title-color, #ffffff) !important;
  font-size: var(--psv-column-title-size, 22px) !important;
  text-transform: uppercase;
  text-align: center;
  font-weight: 900;
  padding: 14px 12px;
  letter-spacing: .02em;
}
.psv-panel img {
  width: 100%;
  height: var(--psv-image-height, 260px);
  object-fit: var(--psv-image-fit, cover);
  display: block;
}
.psv-body {
  padding: 22px;
}
.psv-body ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.psv-body li {
  color: var(--psv-bullet-color, #ffffff) !important;
  font-size: var(--psv-bullet-size, 16px) !important;
  line-height: 1.45;
  margin: 10px 0;
  padding-left: 26px;
  position: relative;
}
.psv-body li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  font-weight: 900;
}
.psv-problem .psv-body li:before {
  content: "x";
  color: #ef4444;
}
.psv-solution .psv-body li:before {
  color: #93c5fd;
}
.psv-result .psv-body li:before {
  color: #86efac;
}
.psv-result-box {
  margin-top: 22px;
  border-radius: 8px;
  padding: 16px;
  color: var(--psv-result-color, #ffffff) !important;
  font-size: var(--psv-result-size, 16px) !important;
  line-height: 1.35;
  font-weight: 900;
  text-align: center;
  background: rgba(255,255,255,.12);
}
.psv-problem .psv-result-box {
  background: var(--psv-problem, #b91c1c);
}
.psv-solution .psv-result-box {
  background: var(--psv-solution, #073763);
}
.psv-result .psv-result-box {
  background: var(--psv-result, #166534);
}
.psv-benefits {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin-top: 30px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,.14);
}
.psv-benefit {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.psv-benefit strong {
  display: block;
  color: #ffffff !important;
  font-size: 17px;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.psv-benefit p {
  color: #dbeafe !important;
  margin: 0;
  line-height: 1.5;
}
.psv-benefit .card-icon,
.psv-benefit .editable-icon,
.psv-benefit img {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px;
}
@media (max-width: 900px) {
  .psv-grid,
  .psv-benefits {
    grid-template-columns: 1fr;
  }
}


/* Final fixes for configurable Problem / Solution Visual Block */
.psv-section.psv-align-results .psv-grid {
  align-items: stretch;
}
.psv-section.psv-align-results .psv-panel {
  display: flex;
  flex-direction: column;
}
.psv-section.psv-align-results .psv-body {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.psv-section.psv-align-results .psv-body ul {
  flex: 1;
}
.psv-panel img {
  width: 100%;
  height: var(--psv-image-height, 260px);
  object-fit: var(--psv-image-fit, cover);
  display: block;
}
.psv-benefit .editable-icon,
.psv-benefit .card-icon,
.psv-benefit img,
.psv-benefit svg {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  object-fit: contain !important;
  filter: none !important;
  -webkit-filter: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
  background: transparent !important;
}
.psv-benefit .editable-icon-mask,
.psv-benefit [style*="mask-image"],
.psv-benefit [style*="-webkit-mask-image"] {
  background-color: currentColor !important;
}
.psv-section h2 {
  color: var(--psv-title-color, #ffffff) !important;
  font-size: var(--psv-title-size, 42px) !important;
}
.psv-subtitle {
  color: var(--psv-subtitle-color, #dbeafe) !important;
  font-size: var(--psv-subtitle-size, 18px) !important;
}
.psv-panel-title {
  color: var(--psv-column-title-color, #ffffff) !important;
  font-size: var(--psv-column-title-size, 22px) !important;
}
.psv-body li {
  color: var(--psv-bullet-color, #ffffff) !important;
  font-size: var(--psv-bullet-size, 16px) !important;
}
.psv-result-box {
  color: var(--psv-result-color, #ffffff) !important;
  font-size: var(--psv-result-size, 16px) !important;
}


/* Modern configurable dark landing blocks based on uploaded switchgear sample */
.mlb {
  padding: 82px 0;
  color: var(--mlb-title, #ffffff);
}
.mlb .container {
  max-width: var(--container-width, 1180px);
  margin: 0 auto;
}
.mlb-hero-grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 42px;
  align-items: center;
}
.mlb-eyebrow {
  color: var(--mlb-eyebrow, var(--mlb-accent, var(--primary, #2b7de9))) !important;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 13px;
  margin-bottom: 14px;
}
.mlb h1 {
  color: var(--mlb-title, #ffffff) !important;
  font-size: clamp(42px, 6vw, 76px);
  line-height: .98;
  letter-spacing: -.045em;
  margin: 0 0 18px;
}
.mlb h2 {
  color: var(--mlb-title, #ffffff) !important;
  font-size: clamp(34px, 4.5vw, 54px);
  line-height: 1.05;
  letter-spacing: -.035em;
  margin: 0 0 14px;
}
.mlb h3 {
  color: var(--mlb-title, #ffffff) !important;
}
.mlb-lead,
.mlb-intro,
.mlb p,
.mlb li,
.mlb span {
  color: var(--mlb-body, #b6c0cc) !important;
}
.mlb-lead {
  font-size: 20px;
  line-height: 1.65;
  max-width: 720px;
}
.mlb-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}
.mlb-stat-card {
  background: linear-gradient(180deg, #172230, #121923);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  padding: 28px;
  box-shadow: 0 24px 80px rgba(0,0,0,.35);
}
.mlb-stat {
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.mlb-stat:last-child {
  border-bottom: 0;
}
.mlb-stat strong {
  color: var(--mlb-accent, var(--primary, #2b7de9)) !important;
  font-size: 34px;
  display: block;
  line-height: 1;
}
.mlb-card-grid {
  display: grid;
  gap: 18px;
  margin-top: 30px;
}
.mlb-card-grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
.mlb-card-grid.cols-3 { grid-template-columns: repeat(3, 1fr); }
.mlb-card-grid.cols-4 { grid-template-columns: repeat(4, 1fr); }
.mlb-card {
  background: var(--mlb-card, #121923);
  border: 1px solid var(--mlb-border, rgba(255,255,255,.12));
  border-radius: 18px;
  padding: 24px;
  color: #ffffff;
}
.mlb-card .editable-icon,
.mlb-card .card-icon,
.mlb-card img,
.mlb-card svg {
  width: 54px !important;
  height: 54px !important;
  object-fit: contain !important;
  filter: none !important;
  -webkit-filter: none !important;
  margin-bottom: 16px;
}
.mlb-split-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  margin-top: 30px;
}
.mlb-card.split h3 {
  border-left: 6px solid;
  padding-left: 14px;
  font-size: 24px;
}
.mlb-card.split ul,
.mlb-clean {
  list-style: none;
  margin: 18px 0 0;
  padding: 0;
}
.mlb-card.split li,
.mlb-clean li {
  padding: 12px 0 12px 30px;
  border-bottom: 1px solid rgba(255,255,255,.10);
  position: relative;
}
.mlb-card.split li.bad:before {
  content: "x";
  color: #ef4444;
  font-weight: 900;
  position: absolute;
  left: 0;
}
.mlb-card.split li.good:before,
.mlb-clean li:before {
  content: "✓";
  color: #22c55e;
  font-weight: 900;
  position: absolute;
  left: 0;
}
.mlb-form {
  border-radius: 22px;
  padding: 28px;
  color: #101010;
}
.mlb-form h3,
.mlb-form label,
.mlb-form input,
.mlb-form select,
.mlb-form textarea,
.mlb-form p,
.mlb-form div {
  color: #101010 !important;
}
.mlb-form button {
  background: var(--mlb-button, var(--primary, #2b7de9)) !important;
  color: var(--mlb-button-text, #ffffff) !important;
}
@media (max-width: 900px) {
  .mlb-hero-grid,
  .mlb-split-grid,
  .mlb-card-grid.cols-2,
  .mlb-card-grid.cols-3,
  .mlb-card-grid.cols-4 {
    grid-template-columns: 1fr;
  }
}


/* IndustLabs Modern Homepage UI polish */
:root {
  --indust-blue: #2b7de9;
  --indust-navy: #073763;
  --indust-dark: #08111d;
  --indust-card: #101a28;
  --indust-card2: #142238;
  --indust-muted: #b8c6d8;
}
.mlb {
  position: relative;
  overflow: hidden;
}
.mlb:before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 78% 18%, rgba(43,125,233,.16), transparent 30%);
}
.mlb .container {
  position: relative;
  z-index: 1;
}
.mlb-hero-stats {
  min-height: 720px;
  display: flex;
  align-items: center;
}
.mlb-hero-stats .container {
  width: min(1180px, calc(100% - 40px));
}
.mlb h1 {
  max-width: 760px;
}
.mlb-lead {
  color: #d4deea !important;
}
.mlb .btn,
.mlb .btn-yellow,
.mlb .btn-outline {
  border-radius: 999px;
  padding: 15px 22px;
  font-weight: 900;
  letter-spacing: .01em;
}
.mlb .btn-outline {
  color: #ffffff !important;
  border-color: rgba(255,255,255,.35) !important;
  background: rgba(255,255,255,.04) !important;
}
.mlb-stat-card {
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(23,34,48,.96), rgba(13,22,35,.96));
  backdrop-filter: blur(12px);
}
.mlb-stat strong {
  letter-spacing: -.03em;
}
.mlb-value {
  border-top: 1px solid rgba(255,255,255,.08);
}
.mlb-card {
  min-height: 235px;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.mlb-card:hover {
  transform: translateY(-3px);
  border-color: rgba(43,125,233,.55) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.22);
}
.mlb-card h3 {
  font-size: 22px;
  line-height: 1.2;
}
.mlb-card p {
  font-size: 15px;
  line-height: 1.65;
}
.mlb-split .mlb-card {
  min-height: auto;
}
.mlb-split h2,
.mlb-rfq h2,
.mlb-value h2 {
  max-width: 920px;
}
.mlb-card.split li,
.mlb-clean li {
  font-size: 16px;
  line-height: 1.55;
}
.mlb-form {
  box-shadow: 0 24px 80px rgba(0,0,0,.28);
}
.mlb-form input,
.mlb-form select,
.mlb-form textarea {
  border-radius: 12px;
  border: 1px solid #d7dee8;
  padding: 13px 14px;
}
.mlb-form button,
.mlb-form .btn {
  border-radius: 999px;
}
.psv-section {
  border-top: 1px solid rgba(255,255,255,.08);
}
.top-nav {
  backdrop-filter: blur(12px);
}
@media (max-width: 900px) {
  .mlb-hero-stats {
    min-height: auto;
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .mlb-card {
    min-height: auto;
  }
}



/* RFQ form UI fixes */
.mlb-form{
  max-width:560px;
  width:100%;
}
.mlb-form form,
.modern-form-preview form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.mlb-form .field-full,
.modern-form-preview .field-full{
  grid-column:1 / -1;
}
.mlb-form .field-half,
.modern-form-preview .field-half{
  grid-column:span 1;
}
.mlb-form .form-group,
.modern-form-preview .form-group{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.mlb-form label,
.modern-form-preview label{
  font-size:13px;
  font-weight:700;
  color:#1e293b !important;
  line-height:1.2;
}
.mlb-form input,
.mlb-form select,
.mlb-form textarea,
.modern-form-preview input,
.modern-form-preview select,
.modern-form-preview textarea{
  width:100%;
  box-sizing:border-box;
  background:#ffffff !important;
  color:#111827 !important;
  border:1px solid #cbd5e1 !important;
  font-size:14px;
  min-height:46px;
}
.mlb-form textarea,
.modern-form-preview textarea{
  min-height:120px;
  resize:vertical;
}
.mlb-form button,
.modern-form-preview button{
  grid-column:1 / -1;
  width:100%;
  min-height:48px;
  font-size:14px;
  font-weight:800;
}
@media(max-width:900px){
  .mlb-form form,
  .modern-form-preview form{
    grid-template-columns:1fr;
  }
  .mlb-form .field-half,
  .modern-form-preview .field-half{
    grid-column:1 / -1;
  }
}


/* Theme-responsive fix for modern landing blocks */
.mlb {
  background: var(--pageBg, var(--sectionBg, #ffffff));
}
.mlb-theme-auto {
  background: var(--sectionBg, #ffffff) !important;
  color: var(--text, #111827) !important;
}
.mlb-theme-auto h1,
.mlb-theme-auto h2,
.mlb-theme-auto h3 {
  color: var(--text, #111827) !important;
}
.mlb-theme-auto .mlb-lead,
.mlb-theme-auto .mlb-intro,
.mlb-theme-auto p,
.mlb-theme-auto li,
.mlb-theme-auto span {
  color: color-mix(in srgb, var(--text, #111827) 78%, transparent) !important;
}
.mlb-theme-auto .mlb-eyebrow,
.mlb-theme-auto .mlb-stat strong {
  color: var(--primary, #2b7de9) !important;
}
.mlb-theme-auto .mlb-card,
.mlb-theme-auto .mlb-stat-card {
  background: var(--cardBg, #ffffff) !important;
  border-color: color-mix(in srgb, var(--primary, #2b7de9) 22%, transparent) !important;
  color: var(--text, #111827) !important;
}
.mlb-theme-auto .mlb-card p,
.mlb-theme-auto .mlb-stat span {
  color: color-mix(in srgb, var(--text, #111827) 70%, transparent) !important;
}
.mlb-theme-auto .btn-yellow,
.mlb-theme-auto .btn {
  background: var(--primary, #2b7de9) !important;
  border-color: var(--primary, #2b7de9) !important;
  color: var(--buttonText, #ffffff) !important;
}
.mlb-theme-auto .btn-outline {
  background: transparent !important;
  border-color: var(--primary, #2b7de9) !important;
  color: var(--primary, #2b7de9) !important;
}
.mlb-dark {
  background-color: var(--dark, #08111d) !important;
}
.mlb-dark h1,
.mlb-dark h2,
.mlb-dark h3 {
  color: #ffffff !important;
}
.mlb-dark .mlb-lead,
.mlb-dark .mlb-intro,
.mlb-dark p,
.mlb-dark li,
.mlb-dark span {
  color: #b8c6d8 !important;
}
.psv-theme-auto {
  background: var(--sectionBg, #ffffff) !important;
  color: var(--text, #111827) !important;
}
.psv-theme-auto h2 {
  color: var(--text, #111827) !important;
}
.psv-theme-auto .psv-subtitle {
  color: color-mix(in srgb, var(--text, #111827) 70%, transparent) !important;
}
.psv-theme-auto .psv-panel {
  background: var(--cardBg, #ffffff) !important;
  border-color: color-mix(in srgb, var(--primary, #2b7de9) 22%, transparent) !important;
}
.psv-theme-auto .psv-body li {
  color: var(--text, #111827) !important;
}
.psv-theme-auto .psv-benefit strong {
  color: var(--text, #111827) !important;
}
.psv-theme-auto .psv-benefit p {
  color: color-mix(in srgb, var(--text, #111827) 70%, transparent) !important;
}


/* Public publish match fix: auto theme must be readable on live page */
.mlb.mlb-theme-auto {
  background: var(--section-bg, var(--sectionBg, #ffffff)) !important;
}
.mlb.mlb-theme-auto h1,
.mlb.mlb-theme-auto h2,
.mlb.mlb-theme-auto h3 {
  color: #111827 !important;
}
.mlb.mlb-theme-auto .mlb-lead,
.mlb.mlb-theme-auto .mlb-intro,
.mlb.mlb-theme-auto p,
.mlb.mlb-theme-auto li,
.mlb.mlb-theme-auto span {
  color: #334155 !important;
}
.mlb.mlb-theme-auto .mlb-eyebrow,
.mlb.mlb-theme-auto .mlb-stat strong {
  color: var(--primary, #2b7de9) !important;
}
.mlb.mlb-theme-auto .mlb-card,
.mlb.mlb-theme-auto .mlb-stat-card {
  background: var(--card-bg, var(--cardBg, #ffffff)) !important;
  color: #111827 !important;
  border-color: rgba(43,125,233,.22) !important;
}
.mlb.mlb-theme-auto .mlb-card h3,
.mlb.mlb-theme-auto .mlb-stat-card h3 {
  color: #111827 !important;
}
.mlb.mlb-theme-auto .mlb-card p,
.mlb.mlb-theme-auto .mlb-stat span {
  color: #334155 !important;
}
.mlb.mlb-theme-auto .btn-yellow,
.mlb.mlb-theme-auto .btn {
  background: var(--primary, #2b7de9) !important;
  border-color: var(--primary, #2b7de9) !important;
  color: var(--buttonText, #ffffff) !important;
}
.mlb.mlb-theme-auto .btn-outline {
  background: transparent !important;
  border-color: var(--primary, #2b7de9) !important;
  color: var(--primary, #2b7de9) !important;
}
.mlb.mlb-theme-auto .mlb-clean li:before,
.mlb.mlb-theme-auto .mlb-card.split li.good:before {
  color: var(--primary, #2b7de9) !important;
}
.psv-section.psv-theme-auto {
  background: var(--section-bg, var(--sectionBg, #ffffff)) !important;
}
.psv-section.psv-theme-auto h2,
.psv-section.psv-theme-auto .psv-benefit strong {
  color: #111827 !important;
}
.psv-section.psv-theme-auto .psv-subtitle,
.psv-section.psv-theme-auto .psv-benefit p {
  color: #334155 !important;
}
.psv-section.psv-theme-auto .psv-panel {
  background: var(--card-bg, var(--cardBg, #ffffff)) !important;
  color: #111827 !important;
  border-color: rgba(43,125,233,.22) !important;
}
.psv-section.psv-theme-auto .psv-body li {
  color: #111827 !important;
}


/* Exact background match fix */
html,
body {
  background: var(--page-bg, var(--pageBg, #ffffff)) !important;
}
.site-page-shell {
  background: var(--page-bg, var(--pageBg, #ffffff)) !important;
  min-height: 100vh;
}
.mlb.mlb-theme-auto,
.psv-section.psv-theme-auto,
.section {
  background: var(--section-bg, var(--sectionBg, #ffffff)) !important;
}
.mlb.mlb-dark {
  background-color: var(--dark, #08111d) !important;
}
.mlb.mlb-theme-auto .mlb-card,
.mlb.mlb-theme-auto .mlb-stat-card,
.psv-section.psv-theme-auto .psv-panel {
  background: var(--card-bg, var(--cardBg, #ffffff)) !important;
}
.ve2-stage,
.ve2-canvas {
  background: var(--pageBg, var(--page-bg, #ffffff)) !important;
}
.live-preview-frame {
  background: var(--pageBg, var(--page-bg, #ffffff)) !important;
}


/* Clean rebuild final: single renderer, consistent backgrounds */
html, body { background: var(--page-bg, #f3f6f9) !important; }
.site-page-shell { background: var(--page-bg, #f3f6f9) !important; min-height:100vh; }
.mlb.mlb-theme-auto { background: var(--section-bg, #ffffff) !important; color: var(--text, #111827) !important; }
.mlb.mlb-theme-auto h1,.mlb.mlb-theme-auto h2,.mlb.mlb-theme-auto h3 { color: var(--text, #111827) !important; }
.mlb.mlb-theme-auto p,.mlb.mlb-theme-auto li,.mlb.mlb-theme-auto span { color: color-mix(in srgb, var(--text, #111827) 80%, #ffffff 20%) !important; }
.mlb.mlb-theme-auto .mlb-card,.mlb.mlb-theme-auto .mlb-stat-card,.psv-section.psv-theme-auto .psv-panel { background: var(--card-bg, #ffffff) !important; border-color: color-mix(in srgb, var(--primary, #2b7de9) 25%, transparent) !important; }
/* background-COLOR (not the shorthand) so a dark section/hero can still paint an inline
   background-image (e.g. the cinematic hero) over this fallback fill. */
.mlb.mlb-dark { background-color: var(--dark, #08111d) !important; }
.mlb.mlb-dark h1,.mlb.mlb-dark h2,.mlb.mlb-dark h3 { color:#ffffff !important; }
.mlb.mlb-dark p,.mlb.mlb-dark li,.mlb.mlb-dark span { color:#b8c6d8 !important; }
.psv-section.psv-theme-auto { background: var(--section-bg, #ffffff) !important; }
.psv-section.psv-theme-auto h2,.psv-section.psv-theme-auto .psv-body li,.psv-section.psv-theme-auto .psv-benefit strong { color: var(--text, #111827) !important; }
.psv-section.psv-theme-auto .psv-subtitle,.psv-section.psv-theme-auto .psv-benefit p { color: color-mix(in srgb, var(--text, #111827) 80%, #ffffff 20%) !important; }


/* Theme behavior final fix: auto follows selected theme exactly */
.mlb.mlb-theme-auto,
.psv-section.psv-theme-auto {
  background: var(--section-bg, #ffffff) !important;
}
.mlb.mlb-theme-auto h1,
.mlb.mlb-theme-auto h2,
.mlb.mlb-theme-auto h3,
.psv-section.psv-theme-auto h2,
.psv-section.psv-theme-auto h3,
.psv-section.psv-theme-auto .psv-benefit strong {
  color: var(--text, #111827) !important;
}
.mlb.mlb-theme-auto .mlb-lead,
.mlb.mlb-theme-auto .mlb-intro,
.mlb.mlb-theme-auto p,
.mlb.mlb-theme-auto li,
.mlb.mlb-theme-auto span,
.psv-section.psv-theme-auto .psv-subtitle,
.psv-section.psv-theme-auto .psv-benefit p,
.psv-section.psv-theme-auto .psv-body li {
  color: var(--text, #111827) !important;
}
.mlb.mlb-theme-auto .mlb-card,
.mlb.mlb-theme-auto .mlb-stat-card,
.psv-section.psv-theme-auto .psv-panel {
  background: var(--card-bg, #ffffff) !important;
  color: var(--text, #111827) !important;
}
.mlb.mlb-theme-auto .mlb-card p,
.mlb.mlb-theme-auto .mlb-stat span {
  color: var(--text, #111827) !important;
}
.mlb.mlb-dark,
.psv-section.psv-dark {
  background-color: var(--dark, #08111d) !important;
}
.mlb.mlb-custom {
  background: inherit;
}


/* IndustLabs light industrial theme polish */
body.template-industlabs-light-industrial .top-nav {
  background: #ffffff !important;
  border-bottom: 1px solid rgba(31,122,224,.18) !important;
  box-shadow: 0 8px 30px rgba(16,32,51,.06);
}
body.template-industlabs-light-industrial .top-nav nav a {
  color: #102033 !important;
}
body.template-industlabs-light-industrial .top-nav .btn,
body.template-industlabs-light-industrial .top-nav .btn-yellow {
  background: #1f7ae0 !important;
  color: #ffffff !important;
  border-color: #1f7ae0 !important;
}
body.template-industlabs-light-industrial .mlb.mlb-theme-auto {
  background: #ffffff !important;
}
body.template-industlabs-light-industrial .mlb-hero-stats.mlb-theme-auto {
  background: linear-gradient(135deg,#ffffff 0%,#f4f8fc 55%,#eaf4ff 100%) !important;
}
body.template-industlabs-light-industrial .mlb.mlb-theme-auto h1,
body.template-industlabs-light-industrial .mlb.mlb-theme-auto h2,
body.template-industlabs-light-industrial .mlb.mlb-theme-auto h3 {
  color: #102033 !important;
}
body.template-industlabs-light-industrial .mlb.mlb-theme-auto p,
body.template-industlabs-light-industrial .mlb.mlb-theme-auto li,
body.template-industlabs-light-industrial .mlb.mlb-theme-auto span {
  color: #334155 !important;
}
body.template-industlabs-light-industrial .mlb-card,
body.template-industlabs-light-industrial .mlb-stat-card,
body.template-industlabs-light-industrial .psv-panel {
  background: #f8fbff !important;
  border-color: rgba(31,122,224,.18) !important;
  box-shadow: 0 18px 45px rgba(16,32,51,.08);
}
body.template-industlabs-light-industrial .psv-section.psv-theme-auto {
  background: #ffffff !important;
}
body.template-industlabs-light-industrial .psv-section.psv-theme-auto h2 {
  color: #102033 !important;
}
body.template-industlabs-light-industrial .psv-section.psv-theme-auto .psv-subtitle,
body.template-industlabs-light-industrial .psv-section.psv-theme-auto .psv-benefit p {
  color: #334155 !important;
}


/* Theme system upgrade: readable light/dark/glass blocks */
html, body, .site-page-shell {
  background: var(--page-bg, #f4f8fc) !important;
  color: var(--text, #102033) !important;
}
.mlb.mlb-theme-auto,
.psv-section.psv-theme-auto,
.section {
  background: var(--section-bg, #ffffff) !important;
  color: var(--text, #102033) !important;
}
.mlb.mlb-theme-auto h1,
.mlb.mlb-theme-auto h2,
.mlb.mlb-theme-auto h3,
.psv-section.psv-theme-auto h2,
.psv-section.psv-theme-auto h3,
.section h1,
.section h2,
.section h3 {
  color: var(--text, #102033) !important;
}
.mlb.mlb-theme-auto p,
.mlb.mlb-theme-auto li,
.mlb.mlb-theme-auto span,
.psv-section.psv-theme-auto p,
.psv-section.psv-theme-auto li,
.psv-section.psv-theme-auto span,
.section p,
.section li,
.section span {
  color: color-mix(in srgb, var(--text, #102033) 82%, #64748b 18%) !important;
}
.mlb-card,
.mlb-stat-card,
.psv-panel,
.cards article,
.text-columns article,
details {
  background: var(--card-bg, #f8fbff) !important;
  color: var(--text, #102033) !important;
  border-color: color-mix(in srgb, var(--primary, #1f7ae0) 22%, transparent) !important;
}
.mlb-card h3,
.mlb-stat-card h3,
.cards article h3,
.text-columns article h3 {
  color: var(--text, #102033) !important;
}
.mlb-card p,
.mlb-stat-card span,
.cards article p,
.text-columns article p {
  color: color-mix(in srgb, var(--text, #102033) 82%, #64748b 18%) !important;
}
body.glass-mode .mlb.mlb-theme-auto,
body.glass-mode .psv-section.psv-theme-auto,
body.glass-mode .section {
  background: var(--section-bg, rgba(255,255,255,.70)) !important;
  backdrop-filter: blur(var(--glass-blur, 18px));
  -webkit-backdrop-filter: blur(var(--glass-blur, 18px));
}
body.glass-mode .mlb-card,
body.glass-mode .mlb-stat-card,
body.glass-mode .psv-panel,
body.glass-mode .cards article,
body.glass-mode .text-columns article,
body.glass-mode details,
body.glass-mode .mlb-form {
  background: var(--card-bg, rgba(248,251,255,.82)) !important;
  backdrop-filter: blur(var(--glass-blur, 18px));
  -webkit-backdrop-filter: blur(var(--glass-blur, 18px));
  box-shadow: 0 24px 70px rgba(16,32,51,.12);
}
body.theme-dark .mlb.mlb-theme-auto,
body.theme-dark .psv-section.psv-theme-auto,
body.theme-dark .section {
  background: var(--section-bg, #0b1220) !important;
}
body.theme-dark .mlb.mlb-theme-auto h1,
body.theme-dark .mlb.mlb-theme-auto h2,
body.theme-dark .mlb.mlb-theme-auto h3,
body.theme-dark .section h1,
body.theme-dark .section h2,
body.theme-dark .section h3 {
  color: var(--text, #f8fafc) !important;
}
body.theme-dark .mlb.mlb-theme-auto p,
body.theme-dark .mlb.mlb-theme-auto li,
body.theme-dark .mlb.mlb-theme-auto span,
body.theme-dark .section p,
body.theme-dark .section li,
body.theme-dark .section span {
  color: color-mix(in srgb, var(--text, #f8fafc) 78%, #94a3b8 22%) !important;
}
.mlb-form,
.mlb-form * {
  color: #102033 !important;
}
.mlb-form input,
.mlb-form select,
.mlb-form textarea {
  background: #ffffff !important;
  color: #102033 !important;
}


/* Classic hero icon editor support */
.hero-icons,
.hero-icon-grid,
.hero-value-icons {
  display: flex;
  flex-wrap: wrap;
  gap: var(--hero-icon-gap, 18px);
  margin-top: 28px;
}
.hero-icon,
.hero-value-icon {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 16px;
  padding: 14px;
  max-width: 260px;
}
.hero-icon img,
.hero-value-icon img,
.hero-icon svg,
.hero-value-icon svg {
  width: var(--hero-icon-size, 54px) !important;
  height: var(--hero-icon-size, 54px) !important;
  object-fit: contain !important;
}
.hero-icon h4,
.hero-value-icon h4 {
  margin: 0 0 4px;
}
.hero-icon p,
.hero-value-icon p {
  margin: 0;
}


/* Restored advanced blocks and visual controls */
.testimonials-grid,
.timeline-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 22px;
}
.testimonial-card,
.timeline-item {
  background: var(--card-bg,#ffffff);
  border: 1px solid color-mix(in srgb, var(--primary,#1f7ae0) 22%, transparent);
  border-radius: var(--card-radius,22px);
  padding: 24px;
  box-shadow: 0 18px 50px rgba(16,32,51,.08);
}
.testimonial-card img {
  width: 64px;
  height: 64px;
  border-radius: 999px;
  object-fit: cover;
  margin-bottom: 14px;
}
.testimonial-card p {
  font-size: 17px;
  line-height: 1.65;
}
.timeline-label {
  color: var(--primary,#1f7ae0);
  font-weight: 900;
  letter-spacing: .08em;
  margin-bottom: 12px;
}
.comparison-table {
  border: 1px solid color-mix(in srgb, var(--primary,#1f7ae0) 22%, transparent);
  border-radius: var(--card-radius,22px);
  overflow: hidden;
  background: var(--card-bg,#ffffff);
}
.comparison-head,
.comparison-row {
  display: grid;
  grid-template-columns: .8fr 1fr 1fr;
}
.comparison-head div {
  background: var(--primary,#1f7ae0);
  color: var(--buttonText,#ffffff);
  font-weight: 900;
  padding: 16px;
}
.comparison-row div {
  padding: 16px;
  border-top: 1px solid color-mix(in srgb, var(--primary,#1f7ae0) 18%, transparent);
  color: var(--text,#102033);
}
.hover-lift:hover { transform: translateY(-4px); }
.hover-glow:hover { box-shadow: 0 24px 70px color-mix(in srgb, var(--primary,#1f7ae0) 25%, transparent); }
.hover-scale:hover { transform: scale(1.02); }
.hover-border-glow:hover { border-color: var(--primary,#1f7ae0) !important; }
@media(max-width:900px){
  .testimonials-grid,
  .timeline-grid,
  .comparison-head,
  .comparison-row {
    grid-template-columns: 1fr;
  }
}


/* Theme-aware hero gradients */
.hero,
.hero-section,
.classic-hero,
section[data-block="hero"] {
  position: relative;
  overflow: hidden;
}
.hero::before,
.hero-section::before,
.classic-hero::before,
section[data-block="hero"]::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}
body.theme-light .hero,
body.theme-light .hero-section,
body.theme-light .classic-hero {
  color: #102033 !important;
}
body.theme-light .hero h1,
body.theme-light .hero-section h1,
body.theme-light .classic-hero h1 {
  color: #102033 !important;
}
body.theme-light .hero p,
body.theme-light .hero-section p,
body.theme-light .classic-hero p {
  color: #334155 !important;
}
body.theme-dark .hero h1,
body.theme-dark .hero-section h1,
body.theme-dark .classic-hero h1 {
  color: #ffffff !important;
}
body.theme-dark .hero p,
body.theme-dark .hero-section p,
body.theme-dark .classic-hero p {
  color: #dbeafe !important;
}


/* Classic Hero image and video background fix */
.hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.hero .hero-bg-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  pointer-events: none;
}
.hero .hero-video-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: var(--hero-video-overlay, linear-gradient(115deg, rgba(3,7,18,.82) 0%, rgba(11,18,32,.66) 42%, rgba(11,18,32,.22) 100%));
}
.hero .container,
.hero .hero-inner,
.hero .hero-content,
.hero .hero-form-card {
  position: relative;
  z-index: 2;
}
.hero[style*='background-image'] {
  background-repeat: no-repeat;
}
body.theme-light .hero .hero-video-overlay {
  background: var(--hero-video-overlay, linear-gradient(115deg, rgba(255,255,255,.82) 0%, rgba(244,248,252,.62) 42%, rgba(31,122,224,.18) 100%));
}
body.theme-dark .hero .hero-video-overlay {
  background: var(--hero-video-overlay, linear-gradient(115deg, rgba(3,7,18,.86) 0%, rgba(11,18,32,.72) 42%, rgba(11,18,32,.26) 100%));
}


/* Builder media picker support */
.media-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  margin-top: 6px;
}
.media-preview {
  margin-top: 8px;
  border: 1px solid #dbe3ee;
  border-radius: 10px;
  overflow: hidden;
  background: #ffffff;
}
.media-preview img,
.media-preview video {
  display: block;
  width: 100%;
  max-height: 160px;
  object-fit: contain;
}


/* Modern Hero + Stats media/background fixes */
.modern-hero-media {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.modern-hero-media .modern-hero-bg-video,
.modern-hero-media .modern-hero-video-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.modern-hero-media .modern-hero-bg-video {
  object-fit: cover;
  z-index: 0;
}
.modern-hero-media .modern-hero-video-overlay {
  z-index: 1;
}
.modern-hero-media > .container {
  position: relative;
  z-index: 2;
}
.mlb-hero-single {
  max-width: 1180px;
  margin: 0 auto;
}
.mlb-hero-single > div {
  max-width: 820px;
}
.modern-hero-media-panel {
  padding: 0 !important;
  overflow: hidden;
}
.modern-hero-media-panel img,
.modern-hero-media-panel video {
  display: block;
  width: 100%;
  height: min(460px, 52vh);
  object-fit: cover;
}
.modern-hero-media-caption {
  padding: 14px 18px;
  font-weight: 800;
  color: var(--mlb-body, #334155);
}
.mlb-stat-card:empty {
  display: none !important;
}


/* Modern Hero configurable background video controls */
.modern-hero-media .modern-hero-bg-video[controls] {
  pointer-events: auto;
}
.modern-hero-media .modern-hero-bg-video {
  background: #000;
}


/* Classic Hero icon color controls */
.hero-icon .hero-icon-svg,
.hero-icon .hero-icon-alpha {
  transition: color .18s ease, background-color .18s ease, transform .18s ease;
}
.hero-icon .hero-icon-svg {
  width: var(--hero-icon-size, 54px) !important;
  height: var(--hero-icon-size, 54px) !important;
  display: inline-block;
  background-color: currentColor;
  -webkit-mask-image: var(--iconUrl);
  mask-image: var(--iconUrl);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
.hero-icon:hover .hero-icon-svg[data-hover-color],
.hero-icon:hover .hero-icon-alpha[data-hover-color] {
  color: var(--hero-icon-hover) !important;
}
.hero-icon-box {
  width: calc(var(--hero-icon-size, 54px) + 20px);
  min-width: calc(var(--hero-icon-size, 54px) + 20px);
  height: calc(var(--hero-icon-size, 54px) + 20px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.hero-icon-box .hero-icon-img {
  width: var(--hero-icon-size, 54px) !important;
  height: var(--hero-icon-size, 54px) !important;
  object-fit: contain;
}


/* Classic Hero alphanumeric icon support */
.hero-icon .hero-icon-alpha {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--hero-icon-size, 54px);
  min-height: var(--hero-icon-size, 54px);
  text-align: center;
}
.hero-icon:hover .hero-icon-alpha[data-hover-color] {
  color: var(--hero-icon-hover) !important;
}


/* Reliable Classic Hero alphanumeric icon rendering */
.hero-icon-box .hero-icon-alpha {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: nowrap !important;
  width: var(--hero-icon-size, 54px) !important;
  height: var(--hero-icon-size, 54px) !important;
  min-width: var(--hero-icon-size, 54px) !important;
  min-height: var(--hero-icon-size, 54px) !important;
}
.hero-icon:hover .hero-icon-box .hero-icon-alpha[data-hover-color] {
  color: var(--hero-icon-hover) !important;
}


/* Classic Hero separate alphanumeric size control */
.hero-icon .hero-icon-alpha {
  width: auto !important;
  height: auto !important;
  min-width: var(--hero-icon-size, 54px);
  min-height: var(--hero-icon-size, 54px);
}


/* Trust and Stats icon controls */
.trust-stat-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
.trust-icon-box {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(var(--hero-icon-size, 54px) + 20px);
  min-width: calc(var(--hero-icon-size, 54px) + 20px);
  height: calc(var(--hero-icon-size, 54px) + 20px);
}
.trust-icon-box .hero-icon-svg,
.trust-icon-box .hero-icon-alpha {
  width: var(--hero-icon-size, 54px) !important;
  height: var(--hero-icon-size, 54px) !important;
}
.trust-icon-box .hero-icon-svg {
  display: inline-block;
  background-color: currentColor;
  -webkit-mask-image: var(--iconUrl);
  mask-image: var(--iconUrl);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
.trust-icon-box .hero-icon-alpha {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-weight: 900;
}
.trust-stat-item:hover .hero-icon-svg[data-hover-color],
.trust-stat-item:hover .hero-icon-alpha[data-hover-color] {
  color: var(--hero-icon-hover) !important;
}


/* Trust and Stats no forced icon box fix */
.trust-icon-box.no-icon-box {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  width: auto !important;
  min-width: auto !important;
  height: auto !important;
  padding: 0 !important;
}
.trust-icon-box.no-icon-box .hero-icon-alpha,
.trust-icon-box.no-icon-box .hero-icon-svg,
.trust-icon-box.no-icon-box .hero-icon-img {
  margin: 0 !important;
}
.trust-icon-box.has-icon-box {
  width: calc(var(--hero-icon-size, 54px) + 20px);
  min-width: calc(var(--hero-icon-size, 54px) + 20px);
  height: calc(var(--hero-icon-size, 54px) + 20px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}


/* Why Choose Us / Features icon controls */
.why-choose-features .why-feature-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  text-align: center;
}
.why-icon-box {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.why-icon-box.no-icon-box {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  width: auto !important;
  min-width: auto !important;
  height: auto !important;
  padding: 0 !important;
}
.why-icon-box.has-icon-box {
  width: calc(var(--hero-icon-size, 54px) + 20px);
  min-width: calc(var(--hero-icon-size, 54px) + 20px);
  height: calc(var(--hero-icon-size, 54px) + 20px);
}
.why-icon-box .hero-icon-svg,
.why-icon-box .hero-icon-alpha {
  width: var(--hero-icon-size, 54px) !important;
  height: var(--hero-icon-size, 54px) !important;
}
.why-icon-box .hero-icon-svg {
  display: inline-block;
  background-color: currentColor;
  -webkit-mask-image: var(--iconUrl);
  mask-image: var(--iconUrl);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
.why-icon-box .hero-icon-alpha {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-weight: 900;
}
.why-feature-item:hover .hero-icon-svg[data-hover-color],
.why-feature-item:hover .hero-icon-alpha[data-hover-color] {
  color: var(--hero-icon-hover) !important;
}


/* Trust and Stats adjustable compact icon box */
.trust-icon-box.has-icon-box {
  width: var(--trust-icon-box-size, calc(var(--hero-icon-size, 54px) + 0px)) !important;
  min-width: var(--trust-icon-box-size, calc(var(--hero-icon-size, 54px) + 0px)) !important;
  height: var(--trust-icon-box-size, calc(var(--hero-icon-size, 54px) + 0px)) !important;
  padding: var(--trust-icon-box-padding, 0px) !important;
}
.trust-icon-box.no-icon-box {
  width: auto !important;
  min-width: auto !important;
  height: auto !important;
  padding: 0 !important;
}


/* Trust and Stats size-only box fix */
.trust-icon-box.size-only-box {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  width: var(--trust-icon-box-size, var(--hero-icon-size, 54px)) !important;
  min-width: var(--trust-icon-box-size, var(--hero-icon-size, 54px)) !important;
  height: var(--trust-icon-box-size, var(--hero-icon-size, 54px)) !important;
  padding: var(--trust-icon-box-padding, 0px) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.trust-icon-box.size-only-box .hero-icon-alpha,
.trust-icon-box.size-only-box .hero-icon-svg,
.trust-icon-box.size-only-box .hero-icon-img {
  max-width: 100% !important;
  max-height: 100% !important;
}


/* Trust and Stats decoupled icon box width/height fix */
.trust-icon-box.has-icon-box,
.trust-icon-box.size-only-box {
  width: var(--trust-icon-box-width, var(--trust-icon-box-size, var(--hero-icon-size, 54px))) !important;
  min-width: var(--trust-icon-box-width, var(--trust-icon-box-size, var(--hero-icon-size, 54px))) !important;
  height: var(--trust-icon-box-height, var(--trust-icon-box-size, var(--hero-icon-size, 54px))) !important;
  padding: var(--trust-icon-box-padding, 0px) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.trust-icon-box.size-only-box {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}
.trust-icon-box .hero-icon-alpha {
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}
.trust-icon-box .hero-icon-svg {
  width: var(--hero-icon-size, 54px) !important;
  height: var(--hero-icon-size, 54px) !important;
}


/* UL 891 template readability and RFQ conversion polish */
.mlb-theme-custom input,
.mlb-theme-custom select,
.mlb-theme-custom textarea,
.modern-rfq input,
.modern-rfq select,
.modern-rfq textarea {
  background:#ffffff !important;
  color:#0b1f33 !important;
  border:1px solid #cbd5e1 !important;
}
.modern-rfq label,
.mlb-theme-custom label {
  color:#0b1f33 !important;
  font-weight:800;
}
.icon-features > div,
.why-choose-features > div,
.stats-grid > div {
  min-height:auto;
}


/* UL 891 substance-first RFQ page polish */
.ul891-proof-strip {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}
.ul891-proof-strip span {
  background:rgba(255,255,255,.12);
  color:#ffffff;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  padding:10px 14px;
  font-weight:900;
}
.ul891-process {
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr;
  gap:18px;
  align-items:stretch;
}
.ul891-process-card {
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:24px;
  padding:24px;
  box-shadow:0 18px 45px rgba(8,35,63,.10);
}
.ul891-process-card.dark {
  background:#08233f;
  color:#ffffff;
}
.ul891-process-card.dark h3,
.ul891-process-card.dark strong {
  color:#ffffff !important;
}
.ul891-process-card.dark p,
.ul891-process-card.dark li {
  color:#dbeafe !important;
}
.ul891-process-arrow {
  display:grid;
  place-items:center;
  color:#0b78d0;
  font-size:34px;
  font-weight:1000;
}
.ul891-capability-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.ul891-capability-card {
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:22px;
  padding:22px;
  box-shadow:0 18px 45px rgba(8,35,63,.10);
}
.ul891-capability-card strong {
  display:block;
  font-size:19px;
  color:#0b1f33;
  margin-bottom:8px;
}
.ul891-capability-card span {
  color:#334155;
  line-height:1.55;
}
.ul891-rfq-panel {
  background:linear-gradient(135deg,#061525,#0b3f75);
  color:#ffffff;
  border-radius:28px;
  padding:30px;
  box-shadow:0 26px 80px rgba(8,35,63,.20);
  border:1px solid rgba(255,255,255,.12);
}
.ul891-rfq-panel h2,
.ul891-rfq-panel h3,
.ul891-rfq-panel strong {
  color:#ffffff !important;
}
.ul891-rfq-panel p,
.ul891-rfq-panel li,
.ul891-rfq-panel span {
  color:#dbeafe !important;
}
.ul891-rfq-pills {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.ul891-rfq-pills span {
  background:rgba(255,255,255,.10);
  color:#ffffff;
  border:1px solid rgba(255,255,255,.20);
  border-radius:999px;
  padding:12px 16px;
  font-weight:900;
}
.ul891-float-rfq {
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9997;
  max-width:330px;
  background:#ffffff;
  color:#0b1f33;
  border:1px solid rgba(11,120,208,.22);
  border-radius:22px;
  box-shadow:0 24px 80px rgba(8,35,63,.22);
  overflow:hidden;
}
.ul891-float-rfq strong {
  display:block;
  background:linear-gradient(135deg,#061525,#0b3f75);
  color:#ffffff;
  padding:14px 16px;
}
.ul891-float-rfq div {
  padding:14px 16px;
}
.ul891-float-rfq p {
  margin:0 0 10px;
  font-size:14px;
  color:#334155;
}
.ul891-float-rfq a {
  display:flex;
  min-height:48px;
  align-items:center;
  justify-content:center;
  background:#ffc629;
  color:#061525;
  border-radius:14px;
  text-decoration:none;
  font-weight:1000;
}
@media(max-width: 980px) {
  .ul891-process {
    grid-template-columns:1fr;
  }
  .ul891-process-arrow {
    transform:rotate(90deg);
  }
  .ul891-capability-grid {
    grid-template-columns:1fr;
  }
  .ul891-float-rfq {
    position:static;
    max-width:none;
    margin:20px;
  }
}


/* UL 891 launch-ready polish */
.ul891-proof-strip {
  justify-content:center;
}
.ul891-proof-strip span {
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.05);
}
.ul891-process-card h3,
.ul891-capability-card strong {
  letter-spacing:-.02em;
}
.ul891-process-card ul {
  margin:14px 0 0;
  padding-left:20px;
}
.ul891-process-card li {
  margin:8px 0;
  line-height:1.45;
}
.ul891-capability-card {
  min-height:170px;
}
.ul891-capability-card:hover {
  transform: translateY(-4px);
  box-shadow:0 26px 70px rgba(8,35,63,.16);
  border-color:rgba(11,120,208,.38);
}
.ul891-rfq-panel {
  position:relative;
  overflow:hidden;
}
.ul891-rfq-panel:after {
  content:"";
  position:absolute;
  right:-120px;
  bottom:-140px;
  width:360px;
  height:360px;
  background:radial-gradient(circle,rgba(255,198,41,.24),transparent 65%);
  pointer-events:none;
}
.ul891-rfq-panel > * {
  position:relative;
  z-index:1;
}
.ul891-float-rfq {
  animation: ul891FloatIn .35s ease-out;
}
@keyframes ul891FloatIn {
  from {opacity:0; transform:translateY(12px);}
  to {opacity:1; transform:translateY(0);}
}
@media(max-width: 700px) {
  .ul891-proof-strip {
    justify-content:flex-start;
  }
  .ul891-proof-strip span {
    width:100%;
    text-align:center;
  }
  .ul891-rfq-panel {
    padding:22px;
  }
}


/* Final UL 891 conversion sections */
.ul891-trusted-strip {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
}
.ul891-trusted-strip span {
  background:#f1f7fd;
  border:1px solid rgba(11,120,208,.16);
  border-radius:18px;
  padding:16px 12px;
  text-align:center;
  font-weight:1000;
  color:#0b1f33;
  box-shadow:0 10px 28px rgba(8,35,63,.08);
}
.ul891-friction-panel {
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:24px;
  align-items:center;
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:28px;
  padding:30px;
  box-shadow:0 18px 50px rgba(8,35,63,.10);
}
.ul891-friction-panel h2 {
  margin:0 0 10px;
  color:#0b1f33;
}
.ul891-friction-panel p {
  color:#334155;
  font-size:18px;
  line-height:1.65;
}
.ul891-do-not-need {
  background:#08233f;
  border-radius:22px;
  padding:24px;
  color:#ffffff;
}
.ul891-do-not-need strong {color:#ffffff;}
.ul891-do-not-need li {color:#dbeafe;margin:8px 0;}
.ul891-next-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.ul891-next-grid div {
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:22px;
  padding:22px;
  box-shadow:0 18px 45px rgba(8,35,63,.10);
}
.ul891-next-grid b {
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:14px;
  background:#ffc629;
  color:#061525;
  margin-bottom:14px;
  font-weight:1000;
}
.ul891-next-grid strong {
  display:block;
  color:#0b1f33;
  font-size:19px;
  margin-bottom:8px;
}
.ul891-next-grid span {
  display:block;
  color:#334155;
  line-height:1.55;
}
.ul891-risk-panel {
  color:#ffffff;
  text-align:center;
}
.ul891-risk-panel h2 {color:#ffffff!important;margin-top:0;}
.ul891-risk-panel p {color:#dbeafe!important;font-size:18px;}
.ul891-risk-grid {
  margin:24px auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  max-width:980px;
}
.ul891-risk-grid span {
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  padding:16px;
  color:#ffffff;
  font-weight:900;
}
.ul891-risk-cta,
.ul891-prefaq-cta a {
  display:inline-flex;
  min-height:52px;
  align-items:center;
  justify-content:center;
  background:#ffc629;
  color:#061525!important;
  border-radius:14px;
  padding:14px 22px;
  font-weight:1000;
  text-decoration:none;
}
.ul891-prefaq-cta {
  background:linear-gradient(135deg,#f7fbff,#ffffff);
  border:1px solid rgba(11,120,208,.16);
  border-radius:28px;
  padding:34px;
  text-align:center;
  box-shadow:0 18px 50px rgba(8,35,63,.10);
}
.ul891-prefaq-cta h2 {
  margin:0 0 8px;
  color:#0b1f33;
}
.ul891-prefaq-cta p {
  max-width:720px;
  margin:0 auto 18px;
  color:#334155;
  font-size:18px;
  line-height:1.6;
}
@media(max-width: 980px){
  .ul891-trusted-strip,
  .ul891-next-grid,
  .ul891-risk-grid,
  .ul891-friction-panel {
    grid-template-columns:1fr;
  }
}


/* UL 891 major UI improvement and contrast fixes */
.ul891-kicker {
  margin: 0 0 10px !important;
  color: #0b78d0 !important;
  font-weight: 1000 !important;
  letter-spacing: .13em !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
}
.ul891-trusted-wrap {
  text-align: center;
}
.ul891-trusted-wrap h2 {
  margin: 0 0 10px;
  color: #0b1f33;
  font-size: clamp(30px,3.2vw,46px);
  letter-spacing: -.03em;
}
.ul891-trusted-sub {
  margin: 0 auto 24px;
  max-width: 850px;
  color: #334155 !important;
  font-size: 18px;
  line-height: 1.65;
}
.ul891-trusted-strip {
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
}
.ul891-trusted-strip span {
  display:flex !important;
  flex-direction:column;
  gap:6px;
  background:#ffffff !important;
  color:#0b1f33 !important;
  border:1px solid rgba(11,120,208,.18) !important;
  border-radius:20px !important;
  padding:18px 14px !important;
  box-shadow:0 14px 38px rgba(8,35,63,.10) !important;
}
.ul891-trusted-strip b {
  color:#0b78d0;
  font-size:22px;
  font-weight:1000;
}
.ul891-friction-panel.improved {
  background:#ffffff !important;
  border:1px solid rgba(11,120,208,.18) !important;
  color:#0b1f33 !important;
}
.ul891-friction-panel.improved h2,
.ul891-friction-panel.improved p {
  color:#0b1f33 !important;
}
.ul891-friction-panel.improved p {
  color:#334155 !important;
}
.ul891-do-not-need.improved {
  background:linear-gradient(135deg,#08233f,#0b3f75) !important;
  color:#ffffff !important;
}
.ul891-do-not-need.improved strong,
.ul891-do-not-need.improved li,
.ul891-do-not-need.improved p {
  color:#ffffff !important;
}
.ul891-do-not-need.improved p {
  margin: 14px 0 0;
  color:#dbeafe !important;
  font-weight:900;
}
.ul891-capability-head {
  text-align:center;
  max-width:900px;
  margin:0 auto 28px;
}
.ul891-capability-head h2 {
  margin:0 0 10px;
  color:#0b1f33;
  font-size:clamp(32px,3.4vw,48px);
  letter-spacing:-.03em;
}
.ul891-capability-head p {
  color:#334155 !important;
  font-size:18px;
  line-height:1.7;
}
.ul891-capability-grid.improved {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.ul891-capability-grid.improved .ul891-capability-card {
  position:relative;
  min-height:210px;
  overflow:hidden;
  background:linear-gradient(180deg,#ffffff,#f7fbff) !important;
}
.ul891-capability-card b {
  display:inline-grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:14px;
  background:#0b78d0;
  color:#ffffff;
  margin-bottom:16px;
  font-weight:1000;
}
.ul891-risk-panel.improved {
  max-width:1180px;
  margin:0 auto;
  color:#ffffff !important;
  text-align:center;
}
.ul891-risk-panel.improved .ul891-kicker {
  color:#ffc629 !important;
}
.ul891-risk-panel.improved h2 {
  color:#ffffff !important;
  font-size:clamp(32px,3.4vw,48px);
  letter-spacing:-.03em;
  margin:0 0 10px;
}
.ul891-risk-panel.improved p {
  color:#dbeafe !important;
  font-size:18px;
  line-height:1.7;
  max-width:820px;
  margin:0 auto 26px;
}
.ul891-risk-grid.improved {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.ul891-risk-grid.improved span {
  display:flex;
  flex-direction:column;
  gap:8px;
  background:rgba(255,255,255,.12) !important;
  color:#ffffff !important;
  border:1px solid rgba(255,255,255,.22) !important;
  border-radius:20px !important;
  padding:20px !important;
  text-align:left;
  font-weight:900;
}
.ul891-risk-grid.improved b {
  color:#ffc629 !important;
  font-size:13px;
  letter-spacing:.12em;
}
.modern-rfq,
.mlb-rfq,
section:has(.modern-rfq),
section:has(.mlb-rfq) {
  color:#ffffff !important;
}
.modern-rfq h2,
.modern-rfq p,
.modern-rfq label,
.mlb-rfq h2,
.mlb-rfq p,
.mlb-rfq label {
  color:#ffffff !important;
}
.modern-rfq form,
.mlb-rfq form,
.hero-form-card {
  background:#ffffff !important;
  color:#0b1f33 !important;
  border-radius:24px !important;
  box-shadow:0 24px 70px rgba(0,0,0,.22) !important;
}
.modern-rfq form label,
.mlb-rfq form label,
.hero-form-card label {
  color:#0b1f33 !important;
  font-weight:900 !important;
}
.modern-rfq input,
.modern-rfq select,
.modern-rfq textarea,
.mlb-rfq input,
.mlb-rfq select,
.mlb-rfq textarea,
.hero-form-card input,
.hero-form-card select,
.hero-form-card textarea {
  background:#f8fafc !important;
  color:#0b1f33 !important;
  border:1px solid #cbd5e1 !important;
  min-height:50px !important;
}
.modern-rfq button,
.mlb-rfq button,
.hero-form-card button {
  background:#ffc629 !important;
  color:#061525 !important;
  font-weight:1000 !important;
}
@media(max-width:980px){
  .ul891-trusted-strip,
  .ul891-capability-grid.improved,
  .ul891-risk-grid.improved {
    grid-template-columns:1fr !important;
  }
}


/* UL 891 risk redesign and RFQ content upgrade */
.ul891-risk-redesign {
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:28px;
  align-items:stretch;
}
.ul891-risk-left {
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:30px;
  padding:34px;
  box-shadow:0 20px 55px rgba(8,35,63,.10);
}
.ul891-risk-left h2 {
  margin:0 0 14px;
  color:#0b1f33 !important;
  font-size:clamp(32px,3.4vw,50px);
  line-height:1.05;
  letter-spacing:-.04em;
}
.ul891-risk-left p {
  color:#334155 !important;
  font-size:18px;
  line-height:1.7;
}
.ul891-risk-summary {
  margin-top:22px;
  background:#f1f7fd;
  border-left:5px solid #0b78d0;
  border-radius:18px;
  padding:18px;
}
.ul891-risk-summary strong {
  display:block;
  color:#0b1f33 !important;
  font-size:18px;
  margin-bottom:6px;
}
.ul891-risk-summary span {
  color:#334155 !important;
  line-height:1.55;
}
.ul891-risk-right {
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
.ul891-risk-item {
  display:grid;
  grid-template-columns:58px 1fr;
  gap:16px;
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:24px;
  padding:20px;
  box-shadow:0 14px 40px rgba(8,35,63,.08);
}
.ul891-risk-item b {
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:#08233f;
  color:#ffc629 !important;
  font-weight:1000;
}
.ul891-risk-item strong {
  display:block;
  color:#0b1f33 !important;
  font-size:19px;
  margin-bottom:6px;
}
.ul891-risk-item span {
  display:block;
  color:#334155 !important;
  line-height:1.55;
}
.ul891-prefaq-cta.improved {
  background:linear-gradient(135deg,#ffffff,#f1f7fd) !important;
  border:1px solid rgba(11,120,208,.18) !important;
  box-shadow:0 22px 60px rgba(8,35,63,.12) !important;
}
.ul891-prefaq-cta.improved h2 {
  color:#0b1f33 !important;
}
.ul891-prefaq-cta.improved p {
  color:#334155 !important;
}
details {
  background:#ffffff !important;
  border:1px solid rgba(11,120,208,.16) !important;
  border-radius:18px !important;
  margin-bottom:12px !important;
  box-shadow:0 10px 28px rgba(8,35,63,.06) !important;
}
details summary {
  color:#0b1f33 !important;
  font-weight:1000 !important;
  padding:18px 20px !important;
  cursor:pointer;
}
details p {
  color:#334155 !important;
  line-height:1.65 !important;
  padding:0 20px 20px !important;
}
.modern-rfq h2,
.mlb-rfq h2 {
  color:#ffffff !important;
  font-size:clamp(32px,3.4vw,50px) !important;
  line-height:1.05 !important;
  letter-spacing:-.04em !important;
}
.modern-rfq p,
.mlb-rfq p {
  color:#e5f2ff !important;
  font-size:18px !important;
  line-height:1.7 !important;
}
.modern-rfq form,
.mlb-rfq form,
.hero-form-card {
  padding:26px !important;
  border:1px solid rgba(255,255,255,.35) !important;
}
@media(max-width:980px){
  .ul891-risk-redesign {
    grid-template-columns:1fr;
  }
  .ul891-risk-item {
    grid-template-columns:1fr;
  }
}


/* UL 891 hero and RFQ form final upgrade */
.mlb-stat-card,
.modern-hero .mlb-stat-card,
.mlb .mlb-stat-card {
  background: rgba(255,255,255,.13) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  box-shadow: 0 24px 80px rgba(0,0,0,.18) !important;
  backdrop-filter: blur(12px);
}
.mlb-stat,
.modern-hero .mlb-stat {
  border-bottom: 1px solid rgba(255,255,255,.14);
  padding: 16px 0 !important;
}
.mlb-stat:last-child,
.modern-hero .mlb-stat:last-child {
  border-bottom: 0;
}
.mlb-stat strong,
.modern-hero .mlb-stat strong {
  color: #ffc629 !important;
  font-size: clamp(22px,2.2vw,34px) !important;
  letter-spacing: -.03em;
  line-height: 1.05;
}
.mlb-stat span,
.modern-hero .mlb-stat span {
  color: #e5f2ff !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}
.mlb a.btn-outline:empty,
.mlb a.btn-yellow:empty,
.mlb a[href=""],
a.btn-outline:empty,
a.btn-yellow:empty {
  display: none !important;
}
.modern-rfq form,
.mlb-rfq form,
.hero-form-card {
  border: 1px solid rgba(11,120,208,.18) !important;
  background: #ffffff !important;
}
.modern-rfq input[name="file_followup"],
.mlb-rfq input[name="file_followup"],
.hero-form-card input[name="file_followup"] {
  background: #eef6ff !important;
  border-left: 5px solid #0b78d0 !important;
  font-weight: 800 !important;
}
.modern-rfq label[for="file_followup"],
.mlb-rfq label[for="file_followup"],
.hero-form-card label[for="file_followup"] {
  color: #0b3f75 !important;
}


/* Compact UL 891 RFQ excellent UI */
.ul891-rfq-support-ui {
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:26px;
  align-items:stretch;
  max-width:1180px;
  margin:0 auto;
}
.ul891-rfq-support-main {
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:30px;
  padding:34px;
  box-shadow:0 20px 55px rgba(8,35,63,.10);
}
.ul891-rfq-support-main h2 {
  color:#0b1f33 !important;
  margin:0 0 12px;
  font-size:clamp(32px,3.4vw,50px);
  line-height:1.05;
  letter-spacing:-.04em;
}
.ul891-rfq-support-main p {
  color:#334155 !important;
  font-size:18px;
  line-height:1.7;
}
.ul891-rfq-support-cards {
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
.ul891-rfq-support-cards div {
  display:grid;
  grid-template-columns:58px 1fr;
  gap:16px;
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:24px;
  padding:20px;
  box-shadow:0 14px 40px rgba(8,35,63,.08);
}
.ul891-rfq-support-cards b {
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:#ffc629;
  color:#061525 !important;
  font-weight:1000;
}
.ul891-rfq-support-cards strong {
  display:block;
  color:#0b1f33 !important;
  font-size:19px;
  margin-bottom:6px;
}
.ul891-rfq-support-cards span {
  display:block;
  color:#334155 !important;
  line-height:1.55;
}
.modern-rfq form,
.mlb-rfq form,
.hero-form-card {
  max-width:920px !important;
  margin:0 auto !important;
}
.modern-rfq textarea,
.mlb-rfq textarea,
.hero-form-card textarea {
  min-height:110px !important;
}
.modern-rfq input,
.modern-rfq select,
.modern-rfq textarea,
.mlb-rfq input,
.mlb-rfq select,
.mlb-rfq textarea,
.hero-form-card input,
.hero-form-card select,
.hero-form-card textarea {
  border-radius:14px !important;
  padding:13px 14px !important;
}
.modern-rfq button,
.mlb-rfq button,
.hero-form-card button {
  min-height:56px !important;
  border-radius:16px !important;
  font-size:17px !important;
}
@media(max-width:980px){
  .ul891-rfq-support-ui,
  .ul891-rfq-support-cards div {
    grid-template-columns:1fr;
  }
}


/* UL 891 lighter hero copy and compact stat card */
.mlb-stat-card .mlb-stat span,
.modern-hero .mlb-stat span {
  max-width: 420px;
}
.mlb h1,
.modern-hero h1 {
  max-width: 920px;
}
.mlb p,
.modern-hero p {
  max-width: 760px;
}


/* Editor-safe guided UL 891 RFQ */
.ul891-safe-rfq-intro {
  max-width:1180px;
  margin:0 auto;
}
.ul891-safe-rfq-intro h2 {
  color:#0b1f33!important;
  margin:0 0 12px;
  font-size:clamp(32px,3.6vw,52px);
  line-height:1.05;
  letter-spacing:-.04em;
  max-width:850px;
}
.ul891-safe-rfq-intro > p {
  color:#334155!important;
  font-size:18px;
  line-height:1.7;
  max-width:930px;
}
.ul891-safe-rfq-cards {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:26px;
}
.ul891-safe-rfq-cards div {
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:24px;
  padding:22px;
  box-shadow:0 18px 45px rgba(8,35,63,.10);
}
.ul891-safe-rfq-cards b {
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:#ffc629;
  color:#061525;
  font-weight:1000;
  margin-bottom:14px;
}
.ul891-safe-rfq-cards strong {
  display:block;
  color:#0b1f33!important;
  font-size:19px;
  margin-bottom:8px;
}
.ul891-safe-rfq-cards span {
  display:block;
  color:#334155!important;
  line-height:1.55;
}
.modern-rfq input[name="file_followup"],
.mlb-rfq input[name="file_followup"],
.hero-form-card input[name="file_followup"] {
  background:#eef6ff!important;
  color:#0b3f75!important;
  border-left:5px solid #0b78d0!important;
  font-weight:900!important;
}
@media(max-width:980px){
  .ul891-safe-rfq-cards{grid-template-columns:1fr;}
}


/* Standalone guided UL 891 RFQ page */
.ul891-book-page {
  max-width:1180px;
  margin:0 auto;
}
.ul891-book-hero {
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  gap:26px;
  align-items:stretch;
  margin-bottom:28px;
}
.ul891-book-copy,
.ul891-book-side,
.ul891-book-section {
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:30px;
  padding:30px;
  box-shadow:0 20px 55px rgba(8,35,63,.10);
}
.ul891-book-copy h1 {
  margin:0 0 12px;
  color:#0b1f33!important;
  font-size:clamp(42px,5vw,72px);
  line-height:.98;
  letter-spacing:-.055em;
}
.ul891-book-copy p,
.ul891-book-section p,
.ul891-book-side li,
.ul891-book-advice p,
.ul891-book-advice li {
  color:#334155!important;
  font-size:17px;
  line-height:1.65;
}
.ul891-book-proof {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}
.ul891-book-proof span {
  background:#eef6ff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:999px;
  padding:10px 14px;
  color:#0b3f75;
  font-weight:900;
}
.ul891-book-side {
  background:linear-gradient(135deg,#061525,#0b3f75);
  color:#fff;
}
.ul891-book-side strong {
  display:block;
  color:#fff!important;
  font-size:24px;
  margin-bottom:14px;
}
.ul891-book-side li {
  color:#e5f2ff!important;
  margin:10px 0;
}
.ul891-book-form {
  display:grid;
  gap:18px;
}
.ul891-book-section-head {
  display:flex;
  gap:14px;
  align-items:flex-start;
  margin-bottom:18px;
}
.ul891-book-section-head b {
  flex:0 0 48px;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:#ffc629;
  color:#061525;
  font-weight:1000;
}
.ul891-book-section-head h2 {
  margin:0 0 6px;
  color:#0b1f33!important;
  font-size:clamp(26px,2.4vw,36px);
  letter-spacing:-.035em;
}
.ul891-book-section-head p {
  margin:0;
}
.ul891-book-section.two-col {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
.ul891-book-card-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.ul891-book-card-grid label,
.ul891-book-chip-grid label {
  position:relative;
  display:block;
}
.ul891-book-card-grid input,
.ul891-book-chip-grid input {
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.ul891-book-card-grid span,
.ul891-book-chip-grid span {
  display:block;
  cursor:pointer;
  border:1px solid rgba(11,120,208,.18);
  background:#f7fbff;
  border-radius:18px;
  padding:16px;
  min-height:58px;
  transition:.18s ease;
}
.ul891-book-card-grid strong {
  display:block;
  color:#0b1f33!important;
  font-size:17px;
  margin-bottom:6px;
}
.ul891-book-card-grid em {
  display:block;
  color:#475569!important;
  font-style:normal;
  font-size:14px;
  line-height:1.38;
}
.ul891-book-chip-grid {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.ul891-book-chip-grid.small {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.ul891-book-chip-grid span {
  text-align:center;
  color:#0b1f33!important;
  font-weight:1000;
}
.ul891-book-card-grid input:checked + span,
.ul891-book-chip-grid input:checked + span {
  background:#e8f4ff;
  border-color:#0b78d0;
  box-shadow:0 0 0 3px rgba(255,198,41,.55),0 14px 35px rgba(8,35,63,.12);
  transform:translateY(-2px);
}
.ul891-book-advice {
  background:linear-gradient(135deg,#061525,#0b3f75);
  border-radius:24px;
  padding:24px;
}
.ul891-book-advice .ul891-kicker {color:#ffc629!important;}
.ul891-book-advice h3 {color:#ffffff!important;margin:0 0 10px;font-size:26px;}
.ul891-book-advice p,
.ul891-book-advice li {color:#dbeafe!important;}
.ul891-book-contact-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.ul891-book-contact-grid input,
.ul891-book-contact-grid textarea {
  background:#f8fafc!important;
  color:#0b1f33!important;
  border:1px solid #cbd5e1!important;
  border-radius:14px!important;
  min-height:52px!important;
  padding:13px 14px!important;
  font-size:16px!important;
}
.ul891-book-contact-grid textarea {
  grid-column:1/-1;
  min-height:120px!important;
}
.ul891-book-submit {
  width:100%;
  min-height:60px;
  margin-top:14px;
  border:0;
  border-radius:16px;
  background:#ffc629!important;
  color:#061525!important;
  font-size:18px;
  font-weight:1000;
}
.ul891-book-submit-note {
  background:#eef6ff;
  border-left:5px solid #0b78d0;
  border-radius:14px;
  padding:13px 14px;
  margin:14px 0 0;
  color:#0b3f75!important;
  font-weight:900;
}
@media(max-width:980px){
  .ul891-book-hero,
  .ul891-book-section.two-col,
  .ul891-book-card-grid,
  .ul891-book-contact-grid,
  .ul891-book-chip-grid.small {
    grid-template-columns:1fr;
  }
}


/* Samsara-inspired guided RFQ page v2 */
.ul891-pricing-page {
  background:#f3f7fc;
  min-height:100vh;
  padding:56px 0 80px;
}
.ul891-pricing-shell {
  max-width:1240px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) 390px;
  gap:34px;
  align-items:start;
  padding:0 22px;
}
.ul891-pricing-main {
  background:#ffffff;
  border-radius:32px;
  padding:38px;
  box-shadow:0 28px 85px rgba(8,35,63,.11);
  border:1px solid rgba(11,120,208,.10);
}
.ul891-pricing-progress {
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:30px;
}
.ul891-pricing-progress span {
  color:#0b78d0;
  font-weight:1000;
}
.ul891-pricing-progress div {
  flex:1;
  height:8px;
  background:#dbe6f2;
  border-radius:999px;
  overflow:hidden;
}
.ul891-pricing-progress i {
  display:block;
  width:85%;
  height:100%;
  background:#0b78d0;
  border-radius:999px;
}
.ul891-pricing-hero {
  max-width:820px;
  margin-bottom:34px;
}
.ul891-pricing-hero h1 {
  color:#071a2e!important;
  margin:0 0 14px;
  font-size:clamp(42px,5.6vw,76px);
  line-height:.96;
  letter-spacing:-.06em;
}
.ul891-pricing-hero p {
  color:#334155!important;
  font-size:19px;
  line-height:1.68;
}
.ul891-question-block {
  border-top:1px solid #e2e8f0;
  padding:34px 0;
}
.ul891-question-block.final {
  border-bottom:0;
}
.ul891-question-head {
  display:flex;
  gap:14px;
  align-items:flex-start;
  margin-bottom:18px;
}
.ul891-question-head b {
  width:46px;
  height:46px;
  flex:0 0 46px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#0b78d0;
  color:#ffffff;
  font-weight:1000;
}
.ul891-question-head h2 {
  color:#071a2e!important;
  margin:0 0 6px;
  font-size:clamp(24px,2.2vw,34px);
  letter-spacing:-.035em;
}
.ul891-question-head p {
  color:#475569!important;
  margin:0;
  line-height:1.55;
}
.ul891-option-grid {
  display:grid;
  gap:12px;
}
.ul891-option-grid.three {
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.ul891-option-grid.two {
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.ul891-option-grid label,
.ul891-chip-select label {
  display:block;
  position:relative;
}
.ul891-option-grid input,
.ul891-chip-select input {
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.ul891-option-grid span {
  display:block;
  min-height:142px;
  border:1px solid #d6e3f2;
  background:#f8fbff;
  border-radius:22px;
  padding:18px;
  cursor:pointer;
  transition:.18s ease;
}
.ul891-option-grid strong {
  display:block;
  color:#071a2e!important;
  font-size:18px;
  margin-bottom:8px;
}
.ul891-option-grid em {
  display:block;
  color:#475569!important;
  font-style:normal;
  line-height:1.42;
  font-size:14px;
}
.ul891-chip-select {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.ul891-chip-select span {
  display:flex;
  min-height:54px;
  align-items:center;
  justify-content:center;
  border:1px solid #d6e3f2;
  background:#f8fbff;
  color:#071a2e!important;
  border-radius:999px;
  padding:12px 18px;
  font-weight:1000;
  cursor:pointer;
  transition:.18s ease;
}
.ul891-option-grid input:checked + span,
.ul891-chip-select input:checked + span,
.ul891-option-grid span:hover,
.ul891-chip-select span:hover {
  background:#e8f4ff;
  border-color:#0b78d0;
  box-shadow:0 0 0 4px rgba(11,120,208,.12);
  transform:translateY(-2px);
}
.ul891-chip-select input:checked + span {
  background:#0b78d0;
  color:#ffffff!important;
}
.ul891-contact-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.ul891-contact-grid input,
.ul891-contact-grid textarea {
  background:#f8fafc!important;
  color:#071a2e!important;
  border:1px solid #cbd5e1!important;
  border-radius:16px!important;
  min-height:56px!important;
  padding:14px 16px!important;
  font-size:16px!important;
}
.ul891-contact-grid textarea {
  grid-column:1/-1;
  min-height:130px!important;
}
.ul891-submit-main {
  width:100%;
  min-height:62px;
  margin-top:16px;
  border:0;
  border-radius:999px;
  background:#0b78d0!important;
  color:#ffffff!important;
  font-size:18px;
  font-weight:1000;
  box-shadow:0 18px 38px rgba(11,120,208,.28);
}
.ul891-file-note {
  text-align:center;
  background:#eef6ff;
  color:#0b3f75!important;
  border:1px solid rgba(11,120,208,.16);
  border-radius:18px;
  padding:14px;
  margin:16px 0 0;
  font-weight:900;
}
.ul891-pricing-side {
  position:sticky;
  top:24px;
  display:grid;
  gap:18px;
}
.ul891-side-card {
  background:#e9f2fb;
  border:1px solid rgba(11,120,208,.12);
  border-radius:30px;
  padding:28px;
  color:#071a2e;
}
.ul891-side-card h3 {
  color:#071a2e!important;
  margin:0 0 12px;
  font-size:25px;
  letter-spacing:-.03em;
}
.ul891-side-card p,
.ul891-side-card li {
  color:#123047!important;
  line-height:1.6;
}
.ul891-side-card ul,
.ul891-side-card ol {
  margin:0;
  padding-left:20px;
}
.ul891-side-card li {
  margin:8px 0;
}
.ul891-side-card.quote-card {
  background:#dfeaf6;
}
.ul891-avatar {
  width:76px;
  height:76px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#0b78d0;
  color:#ffffff;
  font-weight:1000;
  font-size:24px;
  margin-bottom:18px;
}
.ul891-side-card.quote-card p {
  font-size:20px;
  line-height:1.55;
  color:#123047!important;
}
.ul891-side-card.quote-card strong {
  display:block;
  color:#071a2e!important;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:13px;
  margin-top:18px;
}
@media(max-width:1050px){
  .ul891-pricing-shell {
    grid-template-columns:1fr;
  }
  .ul891-pricing-side {
    position:static;
  }
}
@media(max-width:760px){
  .ul891-pricing-main {
    padding:24px;
    border-radius:24px;
  }
  .ul891-option-grid.three,
  .ul891-option-grid.two,
  .ul891-contact-grid {
    grid-template-columns:1fr;
  }
}


/* UL 891 wizard Back/Next and landing block excellence */
.ul891-wizard-step { display:none; }
.ul891-wizard-step.active { display:block; animation:ul891StepIn .22s ease-out; }
@keyframes ul891StepIn {
  from {opacity:0; transform:translateY(8px);}
  to {opacity:1; transform:translateY(0);}
}
.ul891-wizard-progress {
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:30px;
}
.ul891-wizard-progress span {
  color:#0b78d0;
  font-weight:1000;
  min-width:92px;
}
.ul891-wizard-progress div {
  flex:1;
  height:8px;
  background:#dbe6f2;
  border-radius:999px;
  overflow:hidden;
}
.ul891-wizard-progress i {
  display:block;
  width:16.67%;
  height:100%;
  background:#0b78d0;
  border-radius:999px;
  transition:width .22s ease;
}
.ul891-wizard-controls {
  display:flex;
  justify-content:center;
  gap:14px;
  padding-top:22px;
  border-top:1px solid #e2e8f0;
}
.ul891-wizard-back,
.ul891-wizard-next {
  min-width:150px;
  min-height:56px;
  border-radius:999px;
  font-weight:1000;
  font-size:16px;
  cursor:pointer;
}
.ul891-wizard-back {
  background:#ffffff;
  color:#0b78d0;
  border:2px solid #0b78d0;
}
.ul891-wizard-next {
  background:#0b78d0;
  color:#ffffff;
  border:2px solid #0b78d0;
  box-shadow:0 16px 34px rgba(11,120,208,.24);
}
.ul891-side-card.trust-card {
  background:#ffffff;
}
.ul891-trust-metrics {
  display:grid;
  gap:10px;
  margin-top:14px;
}
.ul891-trust-metrics span {
  display:block;
  background:#f1f7fd;
  border:1px solid rgba(11,120,208,.14);
  border-radius:18px;
  padding:14px;
  color:#334155;
  line-height:1.4;
}
.ul891-trust-metrics b {
  display:block;
  color:#0b78d0;
  font-size:22px;
  margin-bottom:4px;
}
.ul891-rfq-excellence {
  max-width:1180px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr .95fr;
  gap:26px;
  align-items:stretch;
}
.ul891-rfq-excellence-copy {
  background:linear-gradient(135deg,#061525,#0b3f75);
  border-radius:32px;
  padding:38px;
  box-shadow:0 26px 70px rgba(8,35,63,.18);
}
.ul891-rfq-excellence-copy .ul891-kicker {
  color:#ffc629!important;
}
.ul891-rfq-excellence-copy h2 {
  margin:0 0 14px;
  color:#ffffff!important;
  font-size:clamp(34px,3.8vw,56px);
  line-height:1.03;
  letter-spacing:-.045em;
}
.ul891-rfq-excellence-copy p {
  color:#e5f2ff!important;
  font-size:18px;
  line-height:1.7;
}
.ul891-excellence-pills {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:22px 0;
}
.ul891-excellence-pills span {
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.22);
  color:#ffffff;
  border-radius:999px;
  padding:10px 14px;
  font-weight:900;
}
.ul891-rfq-excellence-copy a {
  display:inline-flex;
  min-height:56px;
  align-items:center;
  justify-content:center;
  background:#ffc629;
  color:#061525!important;
  border-radius:999px;
  padding:14px 24px;
  font-weight:1000;
  text-decoration:none;
}
.ul891-rfq-excellence-flow {
  display:grid;
  gap:14px;
}
.ul891-rfq-excellence-flow div {
  display:grid;
  grid-template-columns:54px 1fr;
  gap:14px;
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:24px;
  padding:20px;
  box-shadow:0 16px 40px rgba(8,35,63,.09);
}
.ul891-rfq-excellence-flow b {
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#0b78d0;
  color:#ffffff;
  font-weight:1000;
}
.ul891-rfq-excellence-flow strong {
  display:block;
  color:#0b1f33!important;
  font-size:19px;
  margin-bottom:5px;
}
.ul891-rfq-excellence-flow span {
  color:#334155!important;
  line-height:1.5;
}
@media(max-width:980px){
  .ul891-rfq-excellence { grid-template-columns:1fr; }
  .ul891-wizard-controls { flex-direction:column; }
  .ul891-wizard-back, .ul891-wizard-next { width:100%; }
}


/* Editor-safe no-scroll UL 891 wizard improvements */
.ul891-wizard-page {
  padding: 22px 0 32px !important;
}
.ul891-wizard-page .ul891-pricing-shell {
  min-height: calc(100vh - 150px);
  align-items: stretch;
}
.ul891-wizard-page .ul891-pricing-main {
  display: flex;
  flex-direction: column;
  min-height: calc(100vh - 150px);
}
.ul891-wizard-page .ul891-pricing-hero {
  margin-bottom: 18px !important;
}
.ul891-wizard-page .ul891-pricing-hero h1 {
  font-size: clamp(34px,4.5vw,58px) !important;
}
.ul891-wizard-page .ul891-pricing-hero p {
  font-size: 17px !important;
  line-height: 1.55 !important;
}
.ul891-wizard-page .ul891-pricing-form {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.ul891-wizard-step.active {
  flex: 1;
  min-height: 360px;
}
.ul891-wizard-step {
  border-top: 1px solid #e2e8f0 !important;
  padding: 22px 0 !important;
}
.ul891-wizard-page .ul891-option-grid span {
  min-height: 118px !important;
}
.ul891-wizard-page .ul891-question-head {
  margin-bottom: 14px !important;
}
.ul891-wizard-page .ul891-question-head h2 {
  font-size: clamp(22px,2vw,30px) !important;
}
.ul891-wizard-page .ul891-question-head p {
  font-size: 15px !important;
}
.ul891-wizard-page .ul891-pricing-side {
  max-height: calc(100vh - 150px);
  overflow: auto;
}
.ul891-wizard-page .ul891-side-card {
  padding: 22px !important;
}
.ul891-wizard-page .ul891-side-card.quote-card p {
  font-size: 17px !important;
}
.ul891-wizard-page .ul891-wizard-controls {
  margin-top: auto;
  background: #ffffff;
  position: sticky;
  bottom: 0;
  z-index: 5;
}
.ul891-wizard-page .ul891-contact-grid textarea {
  min-height: 96px !important;
}
@media(max-width:1050px){
  .ul891-wizard-page .ul891-pricing-shell,
  .ul891-wizard-page .ul891-pricing-main {
    min-height: auto;
  }
  .ul891-wizard-page .ul891-pricing-side {
    max-height: none;
  }
}


/* Simplified RFQ page - less text, faster completion */
body:has(.ul891-wizard-page) .sticky-bar {
  display:none !important;
}
.ul891-wizard-page {
  padding: 16px 0 24px !important;
}
.ul891-wizard-page .ul891-pricing-main {
  padding: 30px !important;
}
.ul891-wizard-page .ul891-pricing-hero {
  margin-bottom: 10px !important;
}
.ul891-wizard-page .ul891-pricing-hero h1 {
  font-size: clamp(34px,4vw,54px) !important;
  margin-bottom: 8px !important;
}
.ul891-wizard-page .ul891-pricing-hero p {
  max-width: 680px;
  font-size: 16px !important;
  line-height: 1.45 !important;
}
.ul891-wizard-page .ul891-question-block {
  padding: 18px 0 !important;
}
.ul891-wizard-page .ul891-question-head h2 {
  font-size: clamp(22px,2vw,28px) !important;
}
.ul891-wizard-page .ul891-question-head p {
  font-size: 14px !important;
}
.ul891-wizard-page .ul891-option-grid span {
  min-height: 96px !important;
  padding: 15px !important;
}
.ul891-wizard-page .ul891-option-grid em {
  font-size: 13px !important;
  line-height: 1.28 !important;
}
.ul891-wizard-page .ul891-side-card {
  padding: 18px !important;
}
.ul891-wizard-page .ul891-side-card h3 {
  font-size: 21px !important;
  margin-bottom: 8px !important;
}
.ul891-wizard-page .ul891-side-card p,
.ul891-wizard-page .ul891-side-card li {
  font-size: 14px !important;
  line-height: 1.4 !important;
}
.ul891-wizard-page .ul891-avatar {
  width: 54px !important;
  height: 54px !important;
  font-size: 18px !important;
  margin-bottom: 10px !important;
}


/* UL 891 RFQ no-scroll wizard and premium controls */
.ul891-wizard-page {
  padding: 10px 0 14px !important;
  min-height: calc(100vh - 86px) !important;
}
.ul891-wizard-page .ul891-pricing-shell {
  max-width: 1220px !important;
  min-height: calc(100vh - 116px) !important;
  gap: 18px !important;
}
.ul891-wizard-page .ul891-pricing-main {
  min-height: calc(100vh - 116px) !important;
  padding: 22px 26px !important;
  border-radius: 28px !important;
}
.ul891-wizard-page .ul891-pricing-hero {
  margin-bottom: 8px !important;
}
.ul891-wizard-page .ul891-pricing-hero h1 {
  font-size: clamp(30px,3.4vw,46px) !important;
  margin-bottom: 6px !important;
}
.ul891-wizard-page .ul891-pricing-hero p {
  font-size: 15px !important;
  line-height: 1.35 !important;
  margin-bottom: 0 !important;
}
.ul891-wizard-page .ul891-wizard-progress {
  margin-bottom: 14px !important;
}
.ul891-wizard-page .ul891-question-block {
  padding: 12px 0 !important;
}
.ul891-wizard-page .ul891-question-head {
  margin-bottom: 10px !important;
}
.ul891-wizard-page .ul891-question-head b {
  width: 38px !important;
  height: 38px !important;
  flex-basis: 38px !important;
}
.ul891-wizard-page .ul891-question-head h2 {
  font-size: clamp(20px,1.7vw,25px) !important;
  margin-bottom: 4px !important;
}
.ul891-wizard-page .ul891-question-head p {
  font-size: 13px !important;
  line-height: 1.3 !important;
}
.ul891-wizard-page .ul891-option-grid {
  gap: 9px !important;
}
.ul891-wizard-page .ul891-option-grid span {
  min-height: 86px !important;
  padding: 13px !important;
  border-radius: 18px !important;
}
.ul891-wizard-page .ul891-option-grid strong {
  font-size: 15px !important;
  margin-bottom: 4px !important;
}
.ul891-wizard-page .ul891-option-grid em {
  font-size: 12px !important;
  line-height: 1.22 !important;
}
.ul891-wizard-page .ul891-chip-select {
  gap: 9px !important;
}
.ul891-wizard-page .ul891-chip-select span {
  min-height: 48px !important;
  padding: 10px 15px !important;
  font-size: 14px !important;
}
.ul891-wizard-page .ul891-wizard-step.active {
  min-height: 270px !important;
}
.ul891-wizard-page .ul891-contact-grid {
  gap: 10px !important;
}
.ul891-wizard-page .ul891-contact-grid input,
.ul891-wizard-page .ul891-contact-grid textarea {
  min-height: 46px !important;
  padding: 11px 13px !important;
}
.ul891-wizard-page .ul891-contact-grid textarea {
  min-height: 76px !important;
}
.ul891-wizard-page .ul891-pricing-side {
  max-height: calc(100vh - 116px) !important;
  overflow: hidden !important;
}
.ul891-wizard-page .ul891-side-card {
  padding: 18px !important;
}
.ul891-wizard-page .ul891-side-card.trust-card,
.ul891-wizard-page .ul891-side-card.quote-card {
  display: block !important;
}
.ul891-wizard-page .ul891-side-card:not(.trust-card):not(.quote-card) {
  display: none !important;
}
.ul891-wizard-page .ul891-side-card.quote-card p {
  font-size: 15px !important;
  line-height: 1.38 !important;
}
.ul891-wizard-page .ul891-trust-metrics {
  gap: 8px !important;
}
.ul891-wizard-page .ul891-trust-metrics span {
  padding: 10px !important;
  font-size: 13px !important;
}
.ul891-wizard-page .ul891-trust-metrics b {
  font-size: 18px !important;
}
.ul891-wizard-controls {
  border-top: 0 !important;
  background: linear-gradient(180deg,rgba(255,255,255,.88),#ffffff) !important;
  padding: 14px 0 0 !important;
  margin-top: auto !important;
  display: flex !important;
  justify-content: space-between !important;
  gap: 14px !important;
}
.ul891-wizard-back,
.ul891-wizard-next {
  min-height: 58px !important;
  border-radius: 18px !important;
  border: 0 !important;
  padding: 0 24px !important;
  font-size: 16px !important;
  font-weight: 1000 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  transition: transform .16s ease, box-shadow .16s ease, background .16s ease !important;
}
.ul891-wizard-back {
  min-width: 150px !important;
  background: #eef6ff !important;
  color: #0b3f75 !important;
  box-shadow: inset 0 0 0 1px rgba(11,120,208,.22) !important;
}
.ul891-wizard-back span:before {
  content: "←";
  margin-right: 9px;
}
.ul891-wizard-next {
  min-width: 190px !important;
  background: linear-gradient(135deg,#0b78d0,#0b3f75) !important;
  color: #ffffff !important;
  box-shadow: 0 16px 34px rgba(11,120,208,.28) !important;
}
.ul891-wizard-next span:after {
  content: "→";
  margin-left: 9px;
}
.ul891-wizard-back:hover,
.ul891-wizard-next:hover {
  transform: translateY(-2px) !important;
}
.ul891-submit-main {
  min-height: 54px !important;
  margin-top: 10px !important;
}
.ul891-file-note {
  font-size: 13px !important;
  padding: 10px 12px !important;
  margin-top: 10px !important;
}
@media(max-width:1050px){
  .ul891-wizard-page .ul891-pricing-side {
    display: none !important;
  }
}


/* Final cleanup: clean landing RFQ block, higher wizard controls */
body:has(.ul891-wizard-page) .sticky-bar,
body:has(.ul891-rfq-clean) .sticky-bar {
  display:none !important;
}
.ul891-rfq-clean {
  max-width:1180px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:24px;
  align-items:stretch;
}
.ul891-rfq-clean-left {
  background:#ffffff;
  border:1px solid rgba(11,120,208,.16);
  border-radius:32px;
  padding:38px;
  box-shadow:0 24px 70px rgba(8,35,63,.12);
}
.ul891-rfq-clean-left h2 {
  margin:0 0 14px;
  color:#0b1f33 !important;
  font-size:clamp(34px,3.8vw,56px);
  line-height:1.03;
  letter-spacing:-.045em;
}
.ul891-rfq-clean-left p {
  color:#334155 !important;
  font-size:18px;
  line-height:1.68;
}
.ul891-rfq-clean-pills {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:22px 0;
}
.ul891-rfq-clean-pills span {
  background:#eef6ff;
  color:#0b3f75;
  border:1px solid rgba(11,120,208,.16);
  border-radius:999px;
  padding:10px 14px;
  font-weight:900;
}
.ul891-rfq-clean-left a {
  display:inline-flex;
  min-height:56px;
  align-items:center;
  justify-content:center;
  background:#ffc629;
  color:#061525 !important;
  border-radius:999px;
  padding:14px 24px;
  font-weight:1000;
  text-decoration:none;
  box-shadow:0 14px 30px rgba(255,198,41,.28);
}
.ul891-rfq-clean-steps {
  display:grid;
  gap:14px;
}
.ul891-rfq-clean-steps div {
  display:grid;
  grid-template-columns:54px 1fr;
  gap:14px;
  align-items:start;
  background:linear-gradient(135deg,#061525,#0b3f75);
  border-radius:24px;
  padding:22px;
  box-shadow:0 18px 45px rgba(8,35,63,.16);
}
.ul891-rfq-clean-steps b {
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#ffc629;
  color:#061525;
  font-weight:1000;
}
.ul891-rfq-clean-steps strong {
  color:#ffffff !important;
  font-size:20px;
  margin-bottom:5px;
  display:block;
}
.ul891-rfq-clean-steps span {
  color:#dbeafe !important;
  line-height:1.5;
}
.ul891-wizard-page .ul891-wizard-step.active {
  min-height: 220px !important;
}
.ul891-wizard-page .ul891-pricing-main {
  min-height: auto !important;
}
.ul891-wizard-page .ul891-pricing-shell {
  min-height: auto !important;
}
.ul891-wizard-controls {
  position: relative !important;
  bottom: auto !important;
  padding-top: 8px !important;
  margin-top: 4px !important;
}
.ul891-wizard-page .ul891-question-block {
  padding-bottom: 8px !important;
}
@media(max-width:980px){
  .ul891-rfq-clean {
    grid-template-columns:1fr;
  }
}


/* Launch-ready simplified RFQ page */
.ul891-launch-simple {
  padding: 8px 0 12px !important;
}
.ul891-launch-simple .ul891-pricing-shell {
  grid-template-columns: minmax(0,1fr) 340px !important;
  gap: 18px !important;
}
.ul891-launch-simple .ul891-pricing-main {
  padding: 22px 24px !important;
}
.ul891-launch-simple .ul891-pricing-hero {
  margin-bottom: 8px !important;
}
.ul891-launch-simple .ul891-pricing-hero h1 {
  font-size: clamp(30px,3.7vw,50px) !important;
  margin-bottom: 6px !important;
}
.ul891-launch-simple .ul891-pricing-hero p {
  font-size: 15px !important;
  max-width: 720px !important;
}
.ul891-launch-simple .ul891-question-block {
  padding: 12px 0 8px !important;
}
.ul891-launch-simple .ul891-wizard-step.active {
  min-height: 205px !important;
}
.ul891-launch-simple .ul891-chip-select span {
  min-height: 46px !important;
}
.ul891-launch-simple .ul891-pricing-side {
  padding-top: 54px !important;
}
.ul891-launch-simple .ul891-side-card.trust-card {
  background: linear-gradient(135deg,#061525,#0b3f75) !important;
  color: #ffffff !important;
}
.ul891-launch-simple .ul891-side-card.trust-card .ul891-kicker {
  color: #ffc629 !important;
}
.ul891-launch-simple .ul891-side-card.trust-card h3 {
  color: #ffffff !important;
  font-size: 24px !important;
  line-height: 1.15 !important;
}
.ul891-launch-simple .ul891-trust-metrics span {
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  color: #dbeafe !important;
}
.ul891-launch-simple .ul891-trust-metrics b {
  color: #ffc629 !important;
}
.ul891-launch-simple .ul891-wizard-controls {
  padding-top: 6px !important;
  margin-top: 0 !important;
}
.ul891-launch-simple .ul891-wizard-back,
.ul891-launch-simple .ul891-wizard-next {
  min-height: 54px !important;
}
@media(max-width:1050px){
  .ul891-launch-simple .ul891-pricing-shell {
    grid-template-columns:1fr !important;
  }
  .ul891-launch-simple .ul891-pricing-side {
    display:none !important;
  }
}

/* Block 14 simplified */
.ul891-rfq-clean-v2{
 max-width:1000px;
 margin:0 auto;
}
.ul891-rfq-main-card{
 background:linear-gradient(135deg,#061525,#0b3f75);
 border-radius:34px;
 padding:46px;
 text-align:center;
 box-shadow:0 24px 80px rgba(8,35,63,.18);
}
.ul891-rfq-main-card h2{
 color:#ffffff!important;
 margin:0 0 14px;
 font-size:clamp(34px,4vw,58px);
 line-height:1.02;
 letter-spacing:-.05em;
}
.ul891-rfq-main-card p{
 color:#dbeafe!important;
 max-width:780px;
 margin:0 auto;
 line-height:1.65;
 font-size:18px;
}
.ul891-rfq-main-pills{
 display:flex;
 flex-wrap:wrap;
 justify-content:center;
 gap:10px;
 margin:26px 0;
}
.ul891-rfq-main-pills span{
 background:rgba(255,255,255,.12);
 border:1px solid rgba(255,255,255,.18);
 border-radius:999px;
 padding:10px 14px;
 color:#fff;
 font-weight:900;
}
.ul891-rfq-main-card a{
 display:inline-flex;
 min-height:58px;
 align-items:center;
 justify-content:center;
 padding:0 28px;
 border-radius:999px;
 background:#ffc629;
 color:#061525!important;
 font-weight:1000;
 text-decoration:none;
 box-shadow:0 14px 34px rgba(255,198,41,.35);
}


/* Floating Get Pricing box - main UL 891 landing page only */
.ul891-get-price-box {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 9998;
  width: 310px;
  background: #ffffff;
  border: 1px solid rgba(11,120,208,.22);
  border-radius: 24px;
  box-shadow: 0 26px 80px rgba(8,35,63,.24);
  overflow: hidden;
  color: #0b1f33;
}
.ul891-get-price-close {
  position: absolute;
  top: 9px;
  right: 10px;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.16);
  color: #ffffff;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}
.ul891-get-price-head {
  background: linear-gradient(135deg,#061525,#0b3f75);
  color: #ffffff;
  padding: 18px 18px 16px;
}
.ul891-get-price-head strong {
  display: block;
  color: #ffffff !important;
  font-size: 22px;
  line-height: 1.1;
}
.ul891-get-price-head span {
  color: #ffc629 !important;
  font-weight: 900;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.ul891-get-price-body {
  padding: 16px 18px 18px;
}
.ul891-get-price-body ul {
  margin: 0 0 14px;
  padding: 0;
  list-style: none;
}
.ul891-get-price-body li {
  color: #0b1f33 !important;
  font-weight: 800;
  margin: 8px 0;
  padding-left: 22px;
  position: relative;
}
.ul891-get-price-body li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #0b78d0;
  font-weight: 1000;
}
.ul891-get-price-body a {
  display: flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  background: #ffc629;
  color: #061525 !important;
  border-radius: 16px;
  font-weight: 1000;
  text-decoration: none;
}
.ul891-get-price-body p {
  margin: 10px 0 0;
  color: #475569 !important;
  font-size: 13px;
  text-align: center;
  font-weight: 700;
}
@media(max-width: 760px) {
  .ul891-get-price-box {
    left: 14px;
    right: 14px;
    bottom: 14px;
    width: auto;
  }
}

.ul891-impact{max-width:1180px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}
.ul891-impact-left h2{font-size:clamp(36px,4vw,58px);line-height:1.02;color:#0b1f33!important}
.ul891-impact-left p{color:#475569!important;line-height:1.7}
.ul891-impact-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ul891-impact-grid div{background:#fff;border-radius:24px;padding:22px;border:1px solid rgba(11,120,208,.14);box-shadow:0 18px 40px rgba(8,35,63,.08)}
.ul891-impact-grid b{display:block;color:#0b78d0;font-size:20px;margin-bottom:8px}
.ul891-impact-grid span{color:#334155}
@media(max-width:900px){.ul891-impact{grid-template-columns:1fr}.ul891-impact-grid{grid-template-columns:1fr}}


/* UL 891 Wow Factor Page */
.ul891-wow {
  background:
    radial-gradient(circle at 18% 8%, rgba(11,120,208,.34), transparent 32%),
    radial-gradient(circle at 82% 16%, rgba(255,198,41,.16), transparent 28%),
    linear-gradient(180deg,#061525 0%,#08233f 48%,#061525 100%);
  color:#ffffff;
  overflow:hidden;
}
.ul891-wow section {
  max-width:1180px;
  margin:0 auto;
  padding:86px 22px;
}
.ul891-wow .ul891-kicker {
  color:#ffc629 !important;
}
.ul891-wow h1,
.ul891-wow h2,
.ul891-wow h3,
.ul891-wow strong {
  color:#ffffff !important;
}
.ul891-wow p,
.ul891-wow span {
  color:#dbeafe !important;
}
.ul891-wow-hero {
  min-height:720px;
  display:grid;
  grid-template-columns:1.04fr .96fr;
  gap:36px;
  align-items:center;
}
.ul891-wow-copy h1 {
  font-size:clamp(46px,5.4vw,82px);
  line-height:.94;
  letter-spacing:-.065em;
  margin:0 0 20px;
}
.ul891-wow-copy p {
  max-width:720px;
  font-size:20px;
  line-height:1.7;
}
.ul891-wow-actions {
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  align-items:center;
  margin:28px 0 20px;
}
.ul891-wow-actions a,
.ul891-wow-final a {
  display:inline-flex;
  min-height:60px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:0 28px;
  background:#ffc629;
  color:#061525 !important;
  font-weight:1000;
  text-decoration:none;
  box-shadow:0 18px 45px rgba(255,198,41,.26);
}
.ul891-wow-actions span {
  color:#ffffff !important;
  font-weight:900;
}
.ul891-wow-proof {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.ul891-wow-proof span {
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  padding:10px 14px;
  font-weight:900;
  color:#ffffff !important;
}
.ul891-wow-visual {
  position:relative;
  min-height:520px;
}
.ul891-wow-panel {
  position:absolute;
  inset:40px 0 auto 40px;
  height:430px;
  background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.18);
  border-radius:34px;
  box-shadow:0 34px 110px rgba(0,0,0,.36);
  backdrop-filter:blur(18px);
  padding:28px;
}
.ul891-wow-panel .bus {
  height:14px;
  border-radius:999px;
  margin-bottom:14px;
}
.ul891-wow-panel .bus-a {background:#ffc629;}
.ul891-wow-panel .bus-b {background:#0b78d0;}
.ul891-wow-panel .bus-c {background:#60a5fa;}
.ul891-wow-panel .gear-row {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:30px 0 18px;
}
.ul891-wow-panel .gear-row span,
.ul891-wow-panel .gear-grid i {
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  border-radius:18px;
  min-height:80px;
  display:grid;
  place-items:center;
  color:#ffffff !important;
  font-weight:1000;
  font-style:normal;
}
.ul891-wow-panel .gear-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.ul891-wow-panel .gear-grid i {
  min-height:54px;
}
.ul891-wow-card {
  position:absolute;
  background:#ffffff;
  color:#0b1f33;
  border-radius:24px;
  padding:20px;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
}
.ul891-wow-card b {
  display:block;
  color:#0b78d0;
  font-size:28px;
}
.ul891-wow-card span {
  color:#334155 !important;
  font-weight:900;
}
.ul891-wow-card.float-a {left:0;bottom:54px;}
.ul891-wow-card.float-b {right:0;top:0;}
.ul891-wow-command,
.ul891-wow-flow,
.ul891-wow-industries,
.ul891-wow-final {
  border-top:1px solid rgba(255,255,255,.12);
}
.ul891-wow-command {
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:28px;
  align-items:start;
}
.ul891-wow-command h2,
.ul891-wow-flow h2,
.ul891-wow-industries h2,
.ul891-wow-final h2 {
  font-size:clamp(34px,4vw,58px);
  line-height:1.04;
  letter-spacing:-.05em;
  margin:0 0 14px;
}
.ul891-wow-command p,
.ul891-wow-flow p,
.ul891-wow-final p {
  font-size:18px;
  line-height:1.7;
}
.ul891-wow-command-grid,
.ul891-wow-flow-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.ul891-wow-command-grid article,
.ul891-wow-flow-grid div {
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.14);
  border-radius:26px;
  padding:24px;
  box-shadow:0 18px 48px rgba(0,0,0,.16);
}
.ul891-wow-command-grid b,
.ul891-wow-flow-grid b {
  display:inline-grid;
  place-items:center;
  width:44px;
  height:44px;
  background:#ffc629;
  color:#061525;
  border-radius:14px;
  margin-bottom:16px;
}
.ul891-wow-command-grid strong,
.ul891-wow-flow-grid strong {
  display:block;
  font-size:21px;
  margin-bottom:8px;
}
.ul891-wow-command-grid span,
.ul891-wow-flow-grid span {
  line-height:1.55;
}
.ul891-wow-flow {
  text-align:center;
}
.ul891-wow-flow h2 {
  max-width:820px;
  margin:0 auto 30px;
}
.ul891-wow-industries {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  align-items:center;
}
.ul891-wow-industries-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.ul891-wow-industries-grid span {
  background:#ffffff;
  color:#0b1f33 !important;
  border-radius:20px;
  padding:22px 16px;
  text-align:center;
  font-weight:1000;
}
.ul891-wow-final {
  text-align:center;
}
.ul891-wow-final div {
  max-width:850px;
  margin:0 auto;
}
@media(max-width:980px){
  .ul891-wow-hero,
  .ul891-wow-command,
  .ul891-wow-industries {
    grid-template-columns:1fr;
  }
  .ul891-wow-visual {
    min-height:470px;
  }
  .ul891-wow-command-grid,
  .ul891-wow-flow-grid,
  .ul891-wow-industries-grid {
    grid-template-columns:1fr;
  }
}


/* Final compact UL 891 Get Pricing card - user image contained inside blue box */
.ul891-get-price-box{
  position:fixed!important;
  right:26px!important;
  bottom:24px!important;
  z-index:9998!important;
  width:300px!important;
  max-width:300px!important;
  background:linear-gradient(160deg,#06213b 0%,#0b3e70 52%,#061525 100%)!important;
  color:#ffffff!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:24px!important;
  box-shadow:0 22px 58px rgba(5,22,42,.30)!important;
  overflow:hidden!important;
}
.ul891-get-price-inner{
  padding:18px 22px 20px!important;
}
.ul891-get-price-close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  width:38px!important;
  height:38px!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.17)!important;
  color:#fff!important;
  font-size:26px!important;
  line-height:36px!important;
  font-weight:800!important;
  cursor:pointer!important;
  z-index:5!important;
}
.ul891-get-price-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:2px solid #ffc629!important;
  color:#ffc629!important;
  border-radius:999px!important;
  padding:5px 13px!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:.06em!important;
  margin:0 0 14px!important;
}
.ul891-get-price-box strong{
  display:block!important;
  color:#ffffff!important;
  font-size:37px!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
  margin:0 0 6px!important;
  font-weight:1000!important;
  text-shadow:0 3px 12px rgba(0,0,0,.22)!important;
}
.ul891-get-price-subtitle{
  display:block!important;
  color:#ffffff!important;
  font-size:16px!important;
  line-height:1.25!important;
  font-weight:900!important;
  margin:0 0 12px!important;
}
.ul891-get-price-head,
.ul891-get-price-body{
  background:transparent!important;
  padding:0!important;
}
.ul891-get-price-head{display:none!important;}
.ul891-get-price-image-wrap{
  width:100%!important;
  height:138px!important;
  border-radius:0!important;
  overflow:hidden!important;
  margin:8px 0 14px!important;
  background:radial-gradient(circle at 50% 25%,rgba(255,198,41,.14),transparent 50%)!important;
}
.ul891-get-price-image-wrap img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  filter:drop-shadow(0 16px 22px rgba(0,0,0,.34))!important;
}
.ul891-get-price-box ul,
.ul891-get-price-body ul{
  margin:0 0 18px!important;
  padding:0!important;
  list-style:none!important;
}
.ul891-get-price-box li,
.ul891-get-price-body li{
  color:#ffffff!important;
  font-size:15px!important;
  line-height:1.32!important;
  font-weight:900!important;
  margin:11px 0!important;
  padding-left:30px!important;
  position:relative!important;
}
.ul891-get-price-box li:before,
.ul891-get-price-body li:before{
  content:"✓"!important;
  position:absolute!important;
  left:0!important;
  top:-2px!important;
  color:#22c55e!important;
  font-size:22px!important;
  font-weight:1000!important;
}
.ul891-get-price-box a,
.ul891-get-price-body a{
  display:flex!important;
  min-height:58px!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  background:linear-gradient(180deg,#ffd45a,#ffc01f)!important;
  color:#061525!important;
  border-radius:17px!important;
  font-size:21px!important;
  font-weight:1000!important;
  text-decoration:none!important;
  box-shadow:0 12px 30px rgba(255,198,41,.28)!important;
}
.ul891-get-price-box p,
.ul891-get-price-body p{
  color:#ffffff!important;
  text-align:center!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:850!important;
  margin:16px 0 0!important;
}
@media(max-width:760px){
  .ul891-get-price-box{left:auto!important;right:14px!important;bottom:14px!important;width:280px!important;max-width:calc(100vw - 28px)!important;}
  .ul891-get-price-box strong{font-size:31px!important;}
  .ul891-get-price-image-wrap{height:120px!important;}
}

/* Premium UL 891 industries section upgrade - light readable UI */
.ul891-industries-premium {
  position: relative;
  overflow: hidden;
  border-radius: 34px;
  padding: clamp(52px, 7vw, 86px);
  background:
    radial-gradient(circle at 86% 12%, rgba(11,120,208,.18), transparent 34%),
    radial-gradient(circle at 8% 92%, rgba(255,198,41,.20), transparent 30%),
    linear-gradient(135deg, #f8fbff 0%, #eef6ff 46%, #ffffff 100%);
  color: #0b1f33;
  box-shadow: 0 28px 80px rgba(15, 35, 55, .16);
  border: 1px solid rgba(11,120,208,.14);
}
.ul891-industries-premium:before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(11,120,208,.055) 1px, transparent 1px),
    linear-gradient(0deg, rgba(11,120,208,.045) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: .65;
  pointer-events: none;
}
.ul891-industries-bg {
  position: absolute;
  right: -80px;
  top: -60px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: rgba(11,120,208,.16);
  filter: blur(45px);
  pointer-events: none;
}
.ul891-industries-head {
  position: relative;
  max-width: 980px;
  margin-bottom: 34px;
  z-index: 1;
}
.ul891-industries-head .ul891-kicker {
  color: #0b78d0 !important;
  font-weight: 1000 !important;
}
.ul891-industries-head h2 {
  margin: 0 0 16px;
  color: #071a2d !important;
  font-size: clamp(34px, 4vw, 58px);
  line-height: .98;
  letter-spacing: -.045em;
  max-width: 930px;
}
.ul891-industries-head p {
  margin: 0;
  max-width: 900px;
  color: #334155 !important;
  font-size: clamp(17px, 1.5vw, 20px);
  line-height: 1.65;
  font-weight: 600;
}
.ul891-industries-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.ul891-industries-grid article {
  min-height: 190px;
  padding: 24px;
  border-radius: 24px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(11,120,208,.16);
  box-shadow: 0 18px 45px rgba(15, 35, 55, .10);
  backdrop-filter: blur(10px);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.ul891-industries-grid article:hover {
  transform: translateY(-6px);
  border-color: rgba(11,120,208,.42);
  box-shadow: 0 24px 70px rgba(15, 35, 55, .16), 0 0 0 4px rgba(255,198,41,.18);
}
.ul891-industries-grid b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 58px;
  height: 38px;
  padding: 0 12px;
  border-radius: 999px;
  color: #061525;
  background: #ffc629;
  font-weight: 1000;
  letter-spacing: .05em;
  box-shadow: 0 10px 24px rgba(255,198,41,.25);
}
.ul891-industries-grid h3 {
  margin: 18px 0 8px;
  color: #0b1f33 !important;
  font-size: 22px;
  letter-spacing: -.02em;
}
.ul891-industries-grid p {
  margin: 0;
  color: #475569 !important;
  line-height: 1.58;
  font-size: 15.5px;
  font-weight: 600;
}
.ul891-industries-stats {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin-top: 24px;
  overflow: hidden;
  border: 1px solid rgba(11,120,208,.18);
  border-radius: 24px;
  background: rgba(11,120,208,.18);
  box-shadow: 0 16px 42px rgba(15, 35, 55, .10);
}
.ul891-industries-stats div {
  padding: 22px 20px;
  background: rgba(255,255,255,.94);
  text-align: center;
}
.ul891-industries-stats strong {
  display: block;
  color: #0b78d0 !important;
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1;
  letter-spacing: -.04em;
}
.ul891-industries-stats span {
  display: block;
  margin-top: 8px;
  color: #334155 !important;
  font-weight: 900;
  font-size: 14px;
}
@media (max-width: 980px) {
  .ul891-industries-premium { padding: 42px 24px; border-radius: 26px; }
  .ul891-industries-grid { grid-template-columns: 1fr 1fr; }
  .ul891-industries-stats { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .ul891-industries-grid { grid-template-columns: 1fr; }
  .ul891-industries-stats { grid-template-columns: 1fr; }
}



/* UL 891 RFQ CTA premium readable light upgrade */
.ul891-rfq-clean-v2 {
  max-width: 1120px !important;
  margin: 0 auto !important;
}
.ul891-rfq-main-card {
  position: relative !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-columns: minmax(0,1.25fr) minmax(280px,.75fr) !important;
  gap: 28px !important;
  align-items: stretch !important;
  background:
    radial-gradient(circle at top right, rgba(11,120,208,.16), transparent 34%),
    linear-gradient(135deg,#ffffff 0%,#f7fbff 55%,#edf6ff 100%) !important;
  border: 1px solid rgba(11,120,208,.18) !important;
  border-radius: 34px !important;
  padding: 34px !important;
  text-align: left !important;
  box-shadow: 0 24px 70px rgba(8,35,63,.14) !important;
  color: #0f172a !important;
}
.ul891-rfq-main-card:before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.72), rgba(255,255,255,.18)),
    repeating-linear-gradient(135deg, rgba(11,120,208,.045) 0 1px, transparent 1px 14px) !important;
  pointer-events: none !important;
}
.ul891-rfq-main-content,
.ul891-rfq-review-panel {
  position: relative !important;
  z-index: 1 !important;
}
.ul891-rfq-main-card .ul891-kicker {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 0 14px !important;
  padding: 8px 13px !important;
  border-radius: 999px !important;
  background: rgba(11,120,208,.10) !important;
  border: 1px solid rgba(11,120,208,.18) !important;
  color: #0b78d0 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 1000 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}
.ul891-rfq-main-card h2 {
  color: #061525 !important;
  margin: 0 0 14px !important;
  max-width: 740px !important;
  font-size: clamp(34px,4.4vw,58px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.055em !important;
}
.ul891-rfq-main-card p {
  color: #334155 !important;
  max-width: 720px !important;
  margin: 0 !important;
  line-height: 1.65 !important;
  font-size: 17px !important;
}
.ul891-rfq-main-pills {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 12px !important;
  margin: 24px 0 26px !important;
  justify-content: stretch !important;
}
.ul891-rfq-main-pills span {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  min-height: 48px !important;
  background: #ffffff !important;
  border: 1px solid rgba(11,120,208,.16) !important;
  border-radius: 16px !important;
  padding: 12px 14px 12px 42px !important;
  color: #0f172a !important;
  font-weight: 900 !important;
  box-shadow: 0 10px 28px rgba(8,35,63,.07) !important;
}
.ul891-rfq-main-pills span:before {
  content: "" !important;
  position: absolute !important;
  left: 14px !important;
  width: 16px !important;
  height: 16px !important;
  border-radius: 50% !important;
  background: #0b78d0 !important;
  box-shadow: inset 0 0 0 4px #dceeff !important;
}
.ul891-rfq-main-card a {
  display: inline-flex !important;
  min-height: 60px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 30px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg,#ffc629,#ffd85c) !important;
  color: #061525 !important;
  font-weight: 1000 !important;
  text-decoration: none !important;
  box-shadow: 0 16px 34px rgba(255,198,41,.34) !important;
  border: 1px solid rgba(6,21,37,.08) !important;
}
.ul891-rfq-review-panel {
  background: linear-gradient(135deg,#061525,#0b3f75) !important;
  border-radius: 26px !important;
  padding: 24px !important;
  color: #ffffff !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 18px 42px rgba(8,35,63,.22) !important;
}
.ul891-rfq-review-panel strong {
  display: block !important;
  color: #ffc629 !important;
  font-size: 13px !important;
  letter-spacing: .11em !important;
  text-transform: uppercase !important;
  margin-bottom: 12px !important;
}
.ul891-rfq-review-panel h3 {
  color: #ffffff !important;
  margin: 0 0 14px !important;
  font-size: 26px !important;
  line-height: 1.08 !important;
  letter-spacing: -.03em !important;
}
.ul891-rfq-review-panel ul {
  list-style: none !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
  display: grid !important;
  gap: 10px !important;
}
.ul891-rfq-review-panel li {
  color: #eaf4ff !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  padding: 12px 12px !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,.09) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}
.ul891-rfq-review-panel .ul891-rfq-response {
  margin-top: 18px !important;
  padding: 14px !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  color: #061525 !important;
  font-weight: 1000 !important;
}
@media(max-width:900px) {
  .ul891-rfq-main-card {
    grid-template-columns: 1fr !important;
    padding: 24px !important;
  }
  .ul891-rfq-main-pills {
    grid-template-columns: 1fr !important;
  }
}


/* UL 891 proof and certifications premium upgrade - readable light UI */
.ul891-proof-premium{
  max-width:1180px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.95fr);
  gap:34px;
  align-items:center;
}
.ul891-proof-copy .ul891-kicker,
.ul891-cert-header .ul891-kicker{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  margin:0 0 14px!important;
  padding:8px 13px!important;
  border-radius:999px!important;
  background:rgba(11,120,208,.10)!important;
  border:1px solid rgba(11,120,208,.18)!important;
  color:#0b78d0!important;
  font-size:12px!important;
  font-weight:1000!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.ul891-proof-copy h2,
.ul891-cert-header h2{
  margin:0 0 16px!important;
  color:#061525!important;
  font-size:clamp(36px,4.2vw,58px)!important;
  line-height:1.02!important;
  letter-spacing:-.055em!important;
}
.ul891-proof-copy p,
.ul891-cert-header p{
  margin:0!important;
  color:#334155!important;
  font-size:18px!important;
  line-height:1.72!important;
}
.ul891-proof-checks{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:24px;
}
.ul891-proof-checks span{
  position:relative;
  padding:14px 16px 14px 42px;
  background:#fff;
  border:1px solid rgba(11,120,208,.14);
  border-radius:18px;
  color:#0f172a!important;
  font-weight:900;
  box-shadow:0 12px 30px rgba(8,35,63,.06);
}
.ul891-proof-checks span:before{
  content:"";
  position:absolute;
  left:16px;
  top:17px;
  width:14px;
  height:14px;
  border-radius:50%;
  background:#0b78d0;
  box-shadow:inset 0 0 0 4px #dceeff;
}
.ul891-proof-board{
  position:relative;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  padding:20px;
  border-radius:32px;
  background:linear-gradient(135deg,#061525,#0b3f75);
  box-shadow:0 28px 80px rgba(8,35,63,.22);
  overflow:hidden;
}
.ul891-proof-board:before{
  content:"";
  position:absolute;
  inset:-60px;
  background:radial-gradient(circle at top right, rgba(255,198,41,.22), transparent 34%), radial-gradient(circle at bottom left, rgba(11,120,208,.35), transparent 30%);
  pointer-events:none;
}
.ul891-proof-card{
  position:relative;
  z-index:1;
  min-height:132px;
  border-radius:22px;
  padding:22px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.ul891-proof-card.large{
  grid-row:span 2;
  min-height:278px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  background:linear-gradient(135deg,rgba(255,198,41,.94),rgba(255,216,92,.86));
}
.ul891-proof-card b{
  display:block;
  color:#ffffff!important;
  font-size:32px;
  line-height:1;
  letter-spacing:-.04em;
  margin-bottom:10px;
}
.ul891-proof-card.large b{color:#061525!important;font-size:58px;}
.ul891-proof-card span{color:#eaf4ff!important;font-weight:850;line-height:1.35;}
.ul891-proof-card.large span{color:#061525!important;}

.ul891-cert-premium{
  max-width:1180px;
  margin:0 auto;
  padding:4px 0;
}
.ul891-cert-header{
  max-width:940px;
  margin:0 auto 34px;
  text-align:center;
}
.ul891-cert-layout{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:24px;
  align-items:stretch;
}
.ul891-cert-left{
  display:grid;
  gap:16px;
}
.ul891-cert-badge-row{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
.ul891-cert-badge-row div,
.ul891-cert-grid div{
  background:#ffffff;
  border:1px solid rgba(11,120,208,.14);
  border-radius:22px;
  padding:22px;
  box-shadow:0 16px 40px rgba(8,35,63,.07);
}
.ul891-cert-badge-row strong{
  display:block;
  color:#0b78d0!important;
  font-size:28px;
  line-height:1;
  letter-spacing:-.04em;
  margin-bottom:8px;
}
.ul891-cert-badge-row span,
.ul891-cert-grid span{
  color:#334155!important;
  line-height:1.55;
  font-weight:700;
}
.ul891-cert-callout{
  border-radius:28px;
  padding:28px;
  background:linear-gradient(135deg,#061525,#0b3f75);
  box-shadow:0 22px 60px rgba(8,35,63,.18);
}
.ul891-cert-callout h3{
  margin:0 0 12px!important;
  color:#ffffff!important;
  font-size:30px!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
}
.ul891-cert-callout p{
  margin:0!important;
  color:#dbeafe!important;
  line-height:1.65!important;
}
.ul891-cert-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.ul891-cert-grid div{
  position:relative;
  overflow:hidden;
  min-height:168px;
}
.ul891-cert-grid div:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:5px;
  height:100%;
  background:linear-gradient(180deg,#0b78d0,#ffc629);
}
.ul891-cert-grid b{
  display:block;
  color:#061525!important;
  font-size:20px;
  margin-bottom:10px;
  letter-spacing:-.02em;
}
@media(max-width:980px){
  .ul891-proof-premium,
  .ul891-cert-layout{grid-template-columns:1fr;}
  .ul891-proof-board{grid-template-columns:1fr;}
  .ul891-proof-card.large{grid-row:auto;min-height:180px;}
  .ul891-proof-checks,
  .ul891-cert-grid{grid-template-columns:1fr;}
}

/* Restored pipe highlight support: type |highlighted text| in headings, body text, cards, stats, FAQs, and CTAs. */
.pipe-text-accent,
.hero-headline-accent{
  color:var(--accent,var(--primary,#ffc629)) !important;
  font-weight:inherit;
}
.hero h1 .pipe-text-accent,
.hero h1 .hero-headline-accent,
.mlb h1 .pipe-text-accent,
.mlb h2 .pipe-text-accent,
.section h2 .pipe-text-accent,
.section h3 .pipe-text-accent{
  color:var(--accent,var(--primary,#ffc629)) !important;
}
body .hero h1 .pipe-text-accent,
body .hero h1 .hero-headline-accent{
  display:inline !important;
  background:transparent !important;
}
/* GrowthAI Wow generator layouts */
.top-nav nav a:not(.btn):not(.btn-yellow):not(.nav-cta-link){color:var(--nav-text,#0f172a)!important;text-shadow:none!important;}
.top-nav .btn,.top-nav .btn-yellow,.top-nav .nav-cta-link{color:var(--buttonText,#ffffff)!important;text-shadow:none!important;}
body.dark-mode .top-nav nav a:not(.btn):not(.btn-yellow),body.template-luxury-dark .top-nav nav a:not(.btn):not(.btn-yellow),body.template-tesla-cinematic .top-nav nav a:not(.btn):not(.btn-yellow),body.template-spacex-fullbleed .top-nav nav a:not(.btn):not(.btn-yellow){color:#ffffff!important;text-shadow:0 1px 1px rgba(0,0,0,.32)!important;}

/* v53 universal nav CTA + trust strip polish */
.hero-trust-badges{display:none!important}
/* Flagship light-split hero (modern_hero_stats): show trust chips, on-palette + readable */
.mlb-hero-stats .hero-trust-badges{display:flex!important}
.mlb-hero-stats .hero-trust-badge{background:#ffffff!important;border:1px solid rgba(148,163,184,.34)!important;color:#0f172a!important;box-shadow:0 10px 26px rgba(15,23,42,.08)!important}
.mlb-hero-stats .hero-trust-badge .trust-icon-mark{background:#374151!important;color:#ffffff!important}
.mlb-hero-stats .hero-trust-review .trust-icon-mark{background:#f59e0b!important;color:#111827!important}
.mlb-hero-stats .hero-trust-badge b{color:#0f172a!important;font-size:13px}
.mlb-hero-stats .hero-trust-badge small{color:#5b6472!important}
.top-nav nav a[href="#rfq"],
.top-nav nav a[href^="tel:"],
.top-nav nav a.nav-cta-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  min-width:138px!important;
  padding:12px 18px!important;
  border-radius:999px!important;
  background:var(--primary,#2563eb)!important;
  color:var(--buttonText,#fff)!important;
  border:1px solid var(--primary,#2563eb)!important;
  box-shadow:0 14px 34px color-mix(in srgb,var(--primary,#2563eb) 26%,transparent)!important;
  text-shadow:none!important;
  font-weight:950!important;
  font-size:13px!important;
  line-height:1.1!important;
  letter-spacing:.02em!important;
  white-space:nowrap!important;
  opacity:1!important;
  visibility:visible!important;
}
.top-nav nav a[href="#rfq"] *,
.top-nav nav a[href^="tel:"] *,
.top-nav nav a.nav-cta-link *{color:var(--buttonText,#fff)!important;opacity:1!important;visibility:visible!important}
.top-nav nav a[href^="tel:"]{background:linear-gradient(135deg,#dc2626,#991b1b)!important;border-color:#ef4444!important;box-shadow:0 14px 34px rgba(220,38,38,.26)!important}
.site-page-shell .top-nav.top-nav nav a.nav-cta-link,
.site-page-shell .top-nav.top-nav nav a[href="#rfq"][href]{
  color:var(--buttonText,#ffffff)!important;
  -webkit-text-fill-color:var(--buttonText,#ffffff)!important;
  opacity:1!important;
  text-shadow:none!important;
}
.site-page-shell .top-nav.top-nav nav a[href^="tel:"][href]{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  opacity:1!important;
  text-shadow:0 1px 1px rgba(0,0,0,.28)!important;
}
.top-nav nav a[href="#rfq"]:hover,
.top-nav nav a[href^="tel:"]:hover{transform:translateY(-1px)!important;filter:saturate(1.08)!important}
.trust-cta-strip{background:linear-gradient(135deg,#ffffff,#f8fafc)!important;padding:28px 0!important;border-top:1px solid rgba(15,23,42,.08)!important;border-bottom:1px solid rgba(15,23,42,.10)!important;box-shadow:0 24px 70px rgba(15,23,42,.06)!important}
.trust-cta-wrap{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,420px)!important;align-items:center!important;gap:28px!important}
.trust-badge-row{gap:10px!important}
.trust-proof-badge{position:relative;display:inline-grid!important;grid-template-columns:36px auto!important;align-items:center!important;gap:10px!important;min-height:54px!important;padding:10px 14px!important;border-radius:16px!important;background:#ffffff!important;border:1px solid rgba(148,163,184,.28)!important;box-shadow:0 16px 40px rgba(15,23,42,.08)!important}
.trust-proof-badge:before{content:"OK";display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#0f172a;color:#fff;font-size:12px;font-weight:950;grid-row:1/3}
.trust-proof-google:before{content:"G";background:#fff;color:#4285f4;border:1px solid #dbe3ef;font-size:21px}
.trust-proof-bbb:before{content:"A+";background:#183b68;color:#fff}
.trust-proof-reviews:before{content:"*";background:#f59e0b;color:#111827;font-size:20px}
.trust-proof-license:before{content:"ID";background:#2563eb;color:#fff}
.trust-proof-insured:before{content:"OK";background:#16a34a;color:#fff}
.trust-proof-guarantee:before{content:"100";background:#dc2626;color:#fff}
.trust-proof-speed:before{content:"24";background:#7c3aed;color:#fff}
.trust-proof-local:before{content:"LOC";background:#0f766e;color:#fff;font-size:10px}
.trust-proof-badge b{display:block!important;font-size:11px!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#64748b!important;line-height:1.1!important}
.trust-proof-badge strong{display:block!important;font-size:19px!important;color:#0f172a!important;line-height:1.1!important}
.trust-rating{margin-top:12px!important;display:flex!important;gap:10px!important;align-items:center!important;color:#0f172a!important}
.trust-rating strong{font-size:30px!important;line-height:1!important}
.trust-rating .stars{color:#f59e0b!important;font-size:19px!important;letter-spacing:1px!important}
.trust-rating small{font-size:13px!important;color:#64748b!important;font-weight:800!important}
.trust-cta-actions{display:grid!important;gap:12px!important;min-width:0!important;width:100%!important}
.trust-call,.trust-schedule{display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;border-radius:999px!important;padding:17px 26px!important;font-size:clamp(19px,1.7vw,30px)!important;font-weight:950!important;color:#fff!important;box-shadow:0 20px 54px rgba(15,23,42,.16)!important;transition:transform .18s ease,filter .18s ease!important}
.trust-call{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;box-shadow:0 20px 54px rgba(220,38,38,.24)!important}
.trust-schedule{background:linear-gradient(135deg,var(--primary,#0f766e),color-mix(in srgb,var(--primary,#0f766e) 72%,#052e2b))!important}
.trust-call:hover,.trust-schedule:hover{transform:translateY(-2px)!important;filter:saturate(1.08)!important}
@media(max-width:900px){.trust-cta-wrap{grid-template-columns:1fr!important}.trust-cta-actions{max-width:520px!important}.top-nav nav a[href="#rfq"],.top-nav nav a[href^="tel:"]{width:auto!important}}
@media(max-width:620px){.trust-proof-badge{width:100%!important}.trust-badge-row{display:grid!important;grid-template-columns:1fr!important}.trust-rating{flex-wrap:wrap!important}}
.service-area-map span{background:color-mix(in srgb,var(--primary,#2563eb) 78%,#111827 22%)!important;color:#ffffff!important;text-shadow:0 1px 1px rgba(0,0,0,.28);letter-spacing:0!important;}
.service-area-map span *{color:#ffffff!important;}
.wow-layout-0.mlb-hero-stats .mlb-hero-grid{grid-template-columns:1.05fr .75fr}.wow-layout-0.mlb-value .mlb-card-grid{align-items:stretch}
.wow-layout-1.mlb-hero-stats{min-height:720px}.wow-layout-1.mlb-hero-stats .container{align-items:end}.wow-layout-1.mlb-value .mlb-card-grid{grid-template-columns:1.3fr 1fr 1fr!important}.wow-layout-1.mlb-value .mlb-card:first-child{grid-row:span 2}
.wow-layout-2.mlb-hero-stats .mlb-hero-grid{grid-template-columns:.75fr 1.05fr}.wow-layout-2.mlb-hero-stats .mlb-stat-card{order:-1}.wow-layout-2.timeline-section .timeline-grid{grid-template-columns:1fr}
.wow-layout-3.mlb-hero-stats{text-align:center}.wow-layout-3.mlb-hero-stats .mlb-hero-grid{grid-template-columns:1fr}.wow-layout-3.mlb-hero-stats .mlb-stat-card{display:grid;grid-template-columns:repeat(3,1fr)}.wow-layout-3.mlb-value{text-align:center}
.wow-layout-4.mlb-hero-stats .mlb-hero-grid{grid-template-columns:1fr}.wow-layout-4.mlb-hero-stats h1{max-width:980px}.wow-layout-4.mlb-value .mlb-card-grid{grid-template-columns:repeat(2,1fr)!important}
.wow-layout-5.mlb-hero-stats{border-bottom:12px solid var(--primary)}.wow-layout-5.mlb-value .mlb-card{border-left:8px solid var(--primary)}.wow-layout-5.comparison-section .comparison-table{border-radius:0}
.wow-layout-6.mlb-hero-stats .mlb-stat-card,.wow-layout-6 .cards article,.wow-layout-6.timeline-section .timeline-item{transform:rotate(-1deg)}.wow-layout-6.mlb-value .mlb-card:nth-child(even){transform:rotate(1deg)}
.wow-layout-7.mlb-hero-stats{background:var(--secondary)!important}.wow-layout-7.mlb-hero-stats h1,.wow-layout-7.mlb-hero-stats p{color:var(--text)!important}.wow-layout-7 .learn-link{border-radius:999px}
.wow-layout-8.mlb-value .container,.wow-layout-8.comparison-section .container,.wow-layout-8.pricing-table-section .container{max-width:1040px}.wow-layout-8 .cards{grid-template-columns:1fr!important}
.wow-layout-9.mlb-hero-stats .mlb-hero-grid{grid-template-columns:1fr 1fr}.wow-layout-9.mlb-split .mlb-split-grid{grid-template-columns:1.2fr .8fr}.wow-layout-9 .timeline-grid{grid-template-columns:repeat(3,1fr)}
.wow-layout-10.mlb-hero-stats{clip-path:polygon(0 0,100% 0,100% 94%,0 100%)}.wow-layout-10.mlb-value{padding-top:110px}.wow-layout-10 .mlb-card,.wow-layout-10 .cards article{box-shadow:12px 12px 0 var(--accent)}
.wow-layout-11.mlb-hero-stats .mlb-eyebrow,.wow-layout-11 .section-intro,.wow-layout-11 .mlb-intro{text-transform:none}.wow-layout-11.mlb-value .mlb-card-grid{display:flex;overflow-x:auto;padding-bottom:10px}.wow-layout-11.mlb-value .mlb-card{min-width:280px}
.wow-block-1.mlb-hero-stats h1{letter-spacing:0;font-weight:900}.wow-block-1.mlb-hero-stats .mlb-lead{font-size:clamp(18px,2vw,25px);max-width:760px}.wow-block-1 .btn{box-shadow:0 18px 45px color-mix(in srgb,var(--primary) 25%,transparent)}
.wow-block-2.mlb-value .mlb-card,.wow-block-4 .cards article,.wow-block-6.pricing-table-section article{background:var(--card-bg);border:1px solid color-mix(in srgb,var(--primary) 20%,transparent);box-shadow:0 24px 70px rgba(15,23,42,.10)}
.wow-block-3.mlb-split .mlb-card{padding:30px}.wow-block-3.mlb-split li{font-size:18px;line-height:1.55}.wow-block-5.comparison-section .comparison-head{background:var(--primary);color:var(--buttonText)}
.wow-block-7.timeline-section .timeline-label{background:var(--primary);color:var(--buttonText)}.wow-block-8 details{border-left:5px solid var(--primary)}
.wow-layout-12.mlb-hero-stats{min-height:760px}.wow-layout-12.mlb-hero-stats .mlb-hero-grid{grid-template-columns:1fr}.wow-layout-12.mlb-hero-stats .mlb-stat-card{display:flex;justify-content:space-between}
.wow-layout-13.mlb-value .mlb-card-grid{grid-template-columns:2fr 1fr!important}.wow-layout-13.mlb-value .mlb-card:first-child{min-height:360px}.wow-layout-13 .cards{grid-template-columns:2fr 1fr!important}
.wow-layout-14.mlb-hero-stats .mlb-hero-grid{grid-template-columns:.9fr 1.1fr}.wow-layout-14.mlb-split .mlb-split-grid{display:flex;flex-direction:column}
.wow-layout-15.mlb-value .mlb-card{border-radius:999px;padding:34px;text-align:center}.wow-layout-15 .learn-link{border-radius:999px;padding-left:22px;padding-right:22px}
.wow-layout-16.mlb-hero-stats{border-radius:0 0 64px 64px;overflow:hidden}.wow-layout-16.mlb-value,.wow-layout-16.timeline-section{border-radius:64px 64px 0 0}
.wow-layout-17 .container{max-width:1120px}.wow-layout-17.mlb-value .mlb-card-grid{grid-template-columns:repeat(4,minmax(180px,1fr))!important}.wow-layout-17.mlb-value .mlb-card{padding:18px}
.wow-layout-18.mlb-hero-stats .mlb-eyebrow{font-size:18px}.wow-layout-18.mlb-hero-stats h1{font-size:clamp(58px,9vw,118px)}.wow-layout-18.mlb-value h2{font-size:clamp(42px,7vw,86px)}
.wow-layout-19.mlb-hero-stats .mlb-stat-card,.wow-layout-19 .cards article,.wow-layout-19 .timeline-item{border-radius:0}.wow-layout-19 .learn-link{border-radius:0}
.wow-layout-20.mlb-value .mlb-card-grid{display:grid;grid-template-columns:repeat(6,1fr)!important}.wow-layout-20.mlb-value .mlb-card{grid-column:span 3}.wow-layout-20.mlb-value .mlb-card:first-child{grid-column:span 6}
.wow-layout-21.mlb-hero-stats{background:linear-gradient(135deg,var(--primary),var(--secondary))!important}.wow-layout-21.mlb-hero-stats h1,.wow-layout-21.mlb-hero-stats p,.wow-layout-21.mlb-hero-stats .mlb-eyebrow{color:#fff!important}
.wow-layout-22 .mlb-card,.wow-layout-22 .cards article,.wow-layout-22 details{border:2px solid var(--primary);box-shadow:none}.wow-layout-22 .timeline-item{border-top:6px solid var(--accent)}
.wow-layout-23.mlb-value .mlb-card-grid,.wow-layout-23 .cards{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:16px}.wow-layout-23 .mlb-card,.wow-layout-23 .cards article{min-width:320px;scroll-snap-align:start}
.wow-tone-1 .mlb-card,.wow-tone-1 .cards article{box-shadow:0 10px 0 color-mix(in srgb,var(--primary) 32%,transparent)}
.wow-tone-2.mlb-hero-stats,.wow-tone-2.section{background-image:radial-gradient(circle at 12% 18%,color-mix(in srgb,var(--accent) 24%,transparent),transparent 26%)!important}
.wow-tone-3 .mlb-card,.wow-tone-3 .cards article,.wow-tone-3 .timeline-item{backdrop-filter:blur(16px);background:color-mix(in srgb,var(--card-bg) 82%,transparent)!important}
.wow-tone-4 h1,.wow-tone-4 h2{font-family:Georgia,Times New Roman,serif;text-transform:none!important}
.wow-block-9 .mlb-card,.wow-block-9 .cards article{padding:34px}.wow-block-10 .section-intro,.wow-block-10 .mlb-intro{font-size:20px;line-height:1.7}.wow-block-11 .learn-link{background:transparent;color:var(--primary);border:2px solid var(--primary)}
@media(max-width:900px){.wow-layout-1.mlb-value .mlb-card-grid,.wow-layout-2.mlb-hero-stats .mlb-hero-grid,.wow-layout-4.mlb-value .mlb-card-grid,.wow-layout-9.mlb-split .mlb-split-grid,.wow-layout-9 .timeline-grid,.wow-layout-13.mlb-value .mlb-card-grid,.wow-layout-14.mlb-hero-stats .mlb-hero-grid,.wow-layout-17.mlb-value .mlb-card-grid,.wow-layout-20.mlb-value .mlb-card-grid{grid-template-columns:1fr!important}.wow-layout-10.mlb-hero-stats{clip-path:none}.wow-layout-16.mlb-hero-stats,.wow-layout-16.mlb-value,.wow-layout-16.timeline-section{border-radius:0}}

/* v60 brand blog layout, sidebar lead form, media rail, and footer */
.brand-blog-index,.brand-blog-public{background:var(--blog-bg,#f4f8fc);color:var(--blog-text,#0f172a)}
.blog-site-header{background:rgba(255,255,255,.92);border-bottom:1px solid rgba(15,23,42,.08);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}
.blog-site-header .container{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:78px}
.blog-site-header nav{display:flex;gap:18px;align-items:center}.blog-site-header a{color:#0f172a;text-decoration:none;font-weight:950}.blog-brand{display:flex;align-items:center;gap:10px}.blog-brand img{max-height:48px;max-width:180px;object-fit:contain}
.blog-nav-cta{background:var(--blog-primary,#2563eb)!important;color:#fff!important;border-radius:999px;padding:12px 18px;box-shadow:0 14px 34px rgba(37,99,235,.22)}
.blog-list-hero{padding:76px 0 34px;max-width:860px}.blog-list-hero h1{font-size:clamp(42px,6vw,82px);line-height:.95;margin:10px 0;color:#0f172a}.blog-list-hero p{font-size:20px;color:#475569;line-height:1.6}
.blog-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;padding-bottom:80px}.blog-card{overflow:hidden;border-radius:28px;background:#fff;border:1px solid rgba(148,163,184,.28);box-shadow:0 24px 70px rgba(15,23,42,.10)}.blog-card>img{width:100%;height:250px;object-fit:cover;display:block}.blog-card>div{padding:26px}.blog-card h3{font-size:26px;line-height:1.15;margin:10px 0}.blog-card h3 a{color:#0f172a;text-decoration:none}.blog-card p{font-size:17px;line-height:1.6;color:#475569}
.blog-hero{min-height:520px;display:grid;align-items:end;background-size:cover;background-position:center}.blog-hero-copy{max-width:900px;padding:92px 0}.blog-hero-copy h1{font-size:clamp(44px,7vw,92px);line-height:.94;margin:10px 0}.blog-hero-copy p{font-size:21px;line-height:1.55;color:#f8fafc;max-width:760px}.blog-kicker{text-transform:uppercase;letter-spacing:.16em;font-weight:950;font-size:12px;color:var(--blog-accent,#f59e0b)}
.blog-reader-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:42px;align-items:start;padding:74px 24px}.blog-article{background:var(--blog-card,#fff);border:1px solid rgba(148,163,184,.22);border-radius:28px;padding:clamp(28px,4vw,58px);box-shadow:0 24px 70px rgba(15,23,42,.08)}.blog-article h1,.blog-article h2,.blog-article h3{line-height:1.08;color:#0f172a}.blog-article h2{font-size:clamp(30px,3.4vw,48px)}.blog-article p,.blog-article li{font-size:19px;line-height:1.75;color:#334155}.blog-figure{margin:34px 0}.blog-figure img,.blog-figure video{width:100%;border-radius:24px;box-shadow:0 18px 60px rgba(15,23,42,.12)}.blog-figure figcaption{font-size:14px;color:#64748b;margin-top:10px}
.blog-lead-sidebar{position:sticky;top:102px;display:grid;gap:18px}.blog-lead-card{background:#fff;border:1px solid rgba(148,163,184,.26);border-radius:28px;padding:26px;box-shadow:0 24px 70px rgba(15,23,42,.12)}.blog-lead-card h2{font-size:30px;line-height:1.05;margin:8px 0;color:#0f172a}.blog-lead-card p{color:#475569;line-height:1.55}.blog-lead-card form{display:grid;gap:12px}.blog-lead-card label{font-weight:900;color:#0f172a}.blog-lead-card input,.blog-lead-card textarea{width:100%;margin-top:6px;border:1px solid #cbd5e1;border-radius:14px;padding:13px;color:#0f172a;background:#fff}.blog-lead-card button{border:0;border-radius:999px;background:var(--blog-primary,#2563eb);color:#fff;font-weight:950;padding:15px 20px;box-shadow:0 18px 44px rgba(37,99,235,.24)}
.blog-media-rail{display:grid;grid-template-columns:1fr 1fr;gap:12px}.blog-media-rail img,.blog-media-rail video{width:100%;aspect-ratio:1.15;object-fit:cover;border-radius:18px;box-shadow:0 14px 34px rgba(15,23,42,.10);background:#fff}
.blog-footer{background:var(--blog-secondary,#0f172a);color:#fff;padding:36px 0}.blog-footer .container{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap}.blog-footer *{color:#fff!important}
@media(max-width:1100px){.blog-card-grid{grid-template-columns:repeat(2,1fr)}.blog-reader-layout{grid-template-columns:1fr}.blog-lead-sidebar{position:relative;top:0}.blog-media-rail{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){.blog-card-grid,.blog-media-rail{grid-template-columns:1fr}.blog-site-header .container{display:block;padding:14px 24px}.blog-site-header nav{margin-top:12px;flex-wrap:wrap}.blog-reader-layout{padding:34px 16px}.blog-article{padding:24px}.blog-hero-copy{padding:70px 0}}

/* ============================================================
   Frontend-Design refinement layer (customer pages + blogs).
   Additive only — refines typography, rhythm, depth, motion.
   Brand colors stay authoritative via --primary/--secondary/--accent.
   ============================================================ */
:root{ --display-font: "Bricolage Grotesque", "Hanken Grotesk", "Segoe UI", sans-serif; }
body{ -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; text-rendering:optimizeLegibility; letter-spacing:-.003em; }

/* Headings: distinctive display font + tighter, more confident setting.
   Low specificity so template-specific overrides (Georgia, etc.) still win. */
.site-page-shell h1, .site-page-shell h2, .site-page-shell h3,
.blog-public h1, .blog-public h2, .blog-public h3,
.hero h1, .section h2, .mlb h1, .mlb h2, .mlb-hero-stats h1{
  font-family:var(--display-font);
  letter-spacing:-.02em;
  font-weight:700;
}
.hero h1, .mlb h1{ line-height:1.04; }
.section h2, .mlb h2{ line-height:1.08; }

/* Buttons: smoother, more tactile, consistent weight. */
.btn, .learn-link, .hero-form button, .popup-form button, .mlb-form button, .rfq button{
  font-family:var(--site-font);
  letter-spacing:.01em;
  transition:transform .15s ease, box-shadow .2s ease, filter .15s ease;
  will-change:transform;
}
.btn:hover, .learn-link:hover, .hero-form button:hover, .popup-form button:hover, .mlb-form button:hover, .rfq button:hover{
  transform:translateY(-2px);
  filter:brightness(1.05);
}
.btn:active, .learn-link:active{ transform:translateY(0); }
.btn-yellow, .learn-link, .sticky-bar a{ box-shadow:0 10px 24px color-mix(in srgb, var(--primary,#2563eb) 26%, transparent); }

/* Cards: softer depth + a calm hover lift. */
.cards article, .mlb-card, .blog-card{
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.cards article:hover, .mlb-card:hover, .blog-card:hover{
  transform:translateY(-3px);
  box-shadow:0 22px 48px rgba(15,23,42,.13);
}

/* Forms: refined fields + branded focus ring. */
.hero-form input, .hero-form textarea, .hero-form select,
.popup-form input, .popup-form textarea, .popup-form select,
.mlb-form input, .mlb-form textarea, .mlb-form select,
.rfq input, .rfq textarea, .rfq select,
.site-lead-form input, .site-lead-form textarea, .site-lead-form select{
  font-family:var(--site-font);
  transition:border-color .15s ease, box-shadow .15s ease;
}
.hero-form input:focus, .hero-form textarea:focus, .hero-form select:focus,
.popup-form input:focus, .popup-form textarea:focus, .popup-form select:focus,
.mlb-form input:focus, .mlb-form textarea:focus, .mlb-form select:focus,
.rfq input:focus, .rfq textarea:focus, .rfq select:focus,
.site-lead-form input:focus, .site-lead-form textarea:focus, .site-lead-form select:focus{
  outline:0;
  border-color:var(--primary,#2563eb);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--primary,#2563eb) 22%, transparent);
}

/* Accessible keyboard focus across links/buttons. */
a:focus-visible, button:focus-visible{
  outline:2px solid var(--primary,#2563eb);
  outline-offset:2px;
  border-radius:3px;
}

/* Nav polish + subtle underline reveal. */
.top-nav{ backdrop-filter:saturate(1.1); }
nav a{ position:relative; transition:color .15s ease; }
.site-page-shell nav a::after{
  content:""; position:absolute; left:0; right:100%; bottom:-4px; height:2px;
  background:var(--primary,#2563eb); transition:right .2s ease;
}
.site-page-shell nav a:hover::after{ right:0; }

/* Reading comfort for blog articles. */
.blog-article{ font-family:var(--site-font); }
.blog-article p, .blog-article li{ line-height:1.78; font-size:17px; }
.blog-article h2, .blog-article h3{ font-family:var(--display-font); letter-spacing:-.015em; }
.blog-kicker{ letter-spacing:.16em; }

/* Smoother media. */
.cards img, .blog-card img, .mlb-card img, .project-gallery img{ transition:transform .35s ease; }
.cards article:hover img, .blog-card:hover img{ transform:scale(1.03); }

/* Gentle staggered entrance for primary sections (respects reduced motion). */
@media (prefers-reduced-motion:no-preference){
  @keyframes geSectionRise{ from{opacity:0; transform:translateY(14px);} to{opacity:1; transform:none;} }
  .site-page-shell > .section, .site-page-shell > .mlb{
    animation:geSectionRise .5s cubic-bezier(.22,.61,.36,1) both;
  }
}

/* ============================================================
   "Wow factor" block layer — premium, modern section designs.
   Brand-variable driven (--primary/--secondary/--accent/--card-bg
   /--section-bg/--text) so it adapts to every curated palette,
   light or dark. Additive; layout geometry preserved.
   ============================================================ */

/* Eyebrows as refined chips */
.mlb-eyebrow,.section .blog-kicker,.blog-kicker{display:inline-flex;align-items:center;gap:7px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;font-size:12px}
.mlb-eyebrow::before{content:"";width:18px;height:2px;border-radius:9px;background:linear-gradient(90deg,var(--primary,#1f7a5a),var(--accent,#dca42a))}

/* Section headings get a subtle accent underline */
.section h2,.mlb h2{position:relative}
.section h2::after{content:"";display:block;width:54px;height:4px;border-radius:9px;margin:16px auto 0;background:linear-gradient(90deg,var(--primary,#1f7a5a),var(--accent,#dca42a))}
.section h2[style*="left"]::after,.mlb-hero-stats h1::after{margin-left:0}

/* Premium cards: gradient top accent, layered depth, image zoom */
.cards article,.mlb-card,.preview-card,.coupon-card,.pricing-cards article,.blog-card{
  position:relative;border-radius:18px;overflow:hidden;
  border:1px solid color-mix(in srgb,var(--text,#111) 10%,transparent);
  background:var(--card-bg,#fff);
  box-shadow:0 1px 2px rgba(15,23,42,.05),0 14px 34px rgba(15,23,42,.07);
}
.cards article::before,.mlb-card::before,.pricing-cards article::before{
  content:"";position:absolute;left:0;right:0;top:0;height:4px;
  background:linear-gradient(90deg,var(--primary,#1f7a5a),var(--accent,#dca42a));
  opacity:0;transition:opacity .25s ease;
}
.cards article:hover::before,.mlb-card:hover::before,.pricing-cards article:hover::before{opacity:1}
.cards article:hover,.mlb-card:hover,.coupon-card:hover,.pricing-cards article:hover,.blog-card:hover{
  transform:translateY(-4px);box-shadow:0 26px 56px rgba(15,23,42,.16);
}

/* Stats / value numbers — confident, accented */
.mlb-stat-card strong,.mlb-stat strong,.stats strong,.engine-kpi strong{
  background:linear-gradient(135deg,var(--primary,#1f7a5a),var(--accent,#dca42a));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  font-weight:800;letter-spacing:-.02em;
}

/* Hero refinements */
.mlb-hero-stats,.hero{position:relative}
.mlb-hero-stats .mlb-eyebrow{background:color-mix(in srgb,var(--primary,#1f7a5a) 12%,transparent);padding:7px 12px;border-radius:999px}
.mlb-actions .btn,.hero-actions .btn{box-shadow:0 12px 28px color-mix(in srgb,var(--primary,#1f7a5a) 28%,transparent)}

/* FAQ — modern accordion cards */
.section details,details{
  border:1px solid color-mix(in srgb,var(--text,#111) 10%,transparent);
  border-radius:14px;background:var(--card-bg,#fff);
  padding:0;overflow:hidden;transition:box-shadow .2s ease,border-color .2s ease;margin:10px 0;
}
.section details[open],details[open]{box-shadow:0 16px 38px rgba(15,23,42,.10);border-color:color-mix(in srgb,var(--primary,#1f7a5a) 40%,transparent)}
.section details>summary,details>summary{cursor:pointer;padding:16px 18px;font-weight:800;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
.section details>summary::-webkit-details-marker,details>summary::-webkit-details-marker{display:none}
.section details>summary::after,details>summary::after{content:"+";font-size:22px;line-height:1;color:var(--primary,#1f7a5a);transition:transform .2s ease;font-weight:700}
.section details[open]>summary::after,details[open]>summary::after{transform:rotate(45deg)}
.section details>summary~*,details>summary~*{padding:0 18px 16px}

/* Lead form cards — elevated, branded */
.hero-form-card,.mlb-form,.lead-popup-card,.blog-lead-card{
  border-radius:18px;
  box-shadow:0 24px 60px rgba(15,23,42,.18),0 0 0 1px color-mix(in srgb,var(--primary,#1f7a5a) 14%,transparent);
}
.hero-form-card h3,.mlb-form h3{position:relative;padding-bottom:12px}
.hero-form-card h3::after,.mlb-form h3::after{content:"";position:absolute;left:0;bottom:0;width:40px;height:3px;border-radius:9px;background:linear-gradient(90deg,var(--primary,#1f7a5a),var(--accent,#dca42a))}

/* Sticky bar — premium pill */
.sticky-bar{backdrop-filter:blur(10px);background:color-mix(in srgb,var(--secondary,#0f172a) 92%,transparent)}
.sticky-bar a{box-shadow:0 10px 24px color-mix(in srgb,var(--primary,#1f7a5a) 34%,transparent)}

/* Trust / certification strip cards */
.trust-grid div,.certifications-strip .cert,.preview-pill{border-radius:14px;transition:transform .2s ease}
.trust-grid div:hover{transform:translateY(-3px)}

/* Footer polish */
footer{background:var(--secondary,#181d22);position:relative}
footer::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--primary,#1f7a5a),var(--accent,#dca42a))}

/* Gallery / project images — graceful zoom container */
.project-gallery article,.gallery article{border-radius:16px;overflow:hidden}
.cards img,.blog-card img,.project-gallery img{transition:transform .4s cubic-bezier(.22,.61,.36,1)}

/* ============================================================
   FORM GUARD — contrast-safe AND theme-matched (§15, rule 5c evolved).
   Forms/popups/booking are driven by --form-* tokens that DEFAULT to the original light
   card (so light themes are byte-identical), and FLIP to a themed dark card under dark
   themes. The §9 contrast contract guarantees --text vs --card-bg clears AA, so theming
   these is safe — never white-on-white, dark bands stay legible. Accent focus ring matches
   the page primary on every theme.
   ============================================================ */
.mlb-form,.hero-form-card,.lead-popup-card,.popup-card,.modern-rfq{
  --form-bg:#ffffff; --form-text:#0f172a; --form-input-bg:#ffffff; --form-input-border:#cbd5e1; --form-muted:#64748b;
  background:var(--form-bg) !important;color:var(--form-text) !important}
.mlb-form h3,.hero-form-card h3,.lead-popup-card h3,.mlb-form p,.hero-form-card p{color:var(--form-text) !important}
.site-lead-form label,.site-lead-form label span,.hero-form label,.popup-form label,.mlb-form label{color:var(--form-text) !important}
.site-lead-form input,.site-lead-form textarea,.site-lead-form select,.hero-form input,.hero-form textarea,.hero-form select{background:var(--form-input-bg) !important;color:var(--form-text) !important;border:1px solid var(--form-input-border) !important}
.site-lead-form input::placeholder,.site-lead-form textarea::placeholder{color:var(--form-muted) !important}
/* accent focus ring (all themes) — inputs adopt the page primary on focus */
.mlb-form input:focus,.mlb-form textarea:focus,.mlb-form select:focus,.hero-form input:focus,.hero-form textarea:focus,.hero-form select:focus,.site-lead-form input:focus,.site-lead-form textarea:focus,.site-lead-form select:focus,.popup-form input:focus,.popup-form textarea:focus{
  border-color:var(--primary,#2b7de9) !important;outline:none !important;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary,#2b7de9) 24%,transparent) !important}
/* dark themes: themed dark card + light text (still contrast-safe via the palette tokens) */
body.theme-dark .mlb-form,body.theme-dark .hero-form-card,body.theme-dark .lead-popup-card,body.theme-dark .popup-card,body.theme-dark .modern-rfq,
body.family-tech .mlb-form,body.family-tech .hero-form-card,body.family-tech .lead-popup-card,body.family-tech .popup-card,body.family-tech .modern-rfq,
body.glass-mode .mlb-form,body.glass-mode .hero-form-card,body.glass-mode .lead-popup-card,body.glass-mode .popup-card,body.glass-mode .modern-rfq{
  --form-bg:var(--card-bg,#141b2d); --form-text:var(--text,#eaf0fb);
  --form-input-bg:color-mix(in srgb,var(--card-bg,#141b2d) 78%,#000 22%); --form-input-border:rgba(255,255,255,.18); --form-muted:var(--muted-text,#9fb0c9)}

/* ============================================================
   DARK-SECTION CONTRAST GUARD — when a section is forced dark (themeMode:dark band) on a LIGHT
   theme, its cards must use the dark surface (not the light global --card-bg), so text stays
   readable. Fixes white-text-on-white-card in "what we do" / split / value-card dark bands.
   ============================================================ */
.mlb-dark .mlb-card,.mlb-dark .mlb-stat-card,.mlb-dark .mlb-card.split{background:var(--mlb-card,#101a28) !important;border-color:var(--mlb-border,rgba(255,255,255,.14)) !important;backdrop-filter:none !important}
.mlb-dark .mlb-card h3,.mlb-dark .mlb-card h4{color:var(--mlb-title,#ffffff) !important}
.mlb-dark .mlb-card p,.mlb-dark .mlb-card li,.mlb-dark .mlb-card span{color:var(--mlb-body,#cdd8e8) !important}
.mlb-dark .mlb-intro,.mlb-dark .mlb-eyebrow{color:var(--mlb-body,#cdd8e8) !important}

/* ============================================================
   PREMIUM TRUST BAR — icon badges that build credibility.
   ============================================================ */
.trust-bar-section{padding:52px 0 56px !important}
.trust-bar-head{text-align:center;margin:0 auto 30px;font-size:15px;font-weight:850;letter-spacing:.10em;text-transform:uppercase;color:var(--text,#0f172a);max-width:760px}
.trust-bar{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;max-width:1180px;margin:0 auto}
.trust-badge{display:flex;align-items:center;gap:16px;background:var(--card-bg,#ffffff);border:1.5px solid color-mix(in srgb,var(--primary,#2b7de9) 20%,transparent);border-radius:18px;padding:20px 24px;box-shadow:0 16px 38px rgba(15,23,42,.10);flex:1 1 320px;min-width:288px;max-width:380px;position:relative;overflow:hidden}
.trust-badge::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--accent,#f59e0b),color-mix(in srgb,var(--accent,#f59e0b) 60%,var(--primary,#2b7de9)))}
.trust-badge-ico{flex:0 0 auto;width:58px;height:58px;display:grid;place-items:center;border-radius:15px;background:color-mix(in srgb,var(--primary,#2b7de9) 13%,transparent);color:var(--primary,#2b7de9)}
.trust-badge-ico svg{width:29px;height:29px}
.trust-badge-txt strong{display:block;font-size:20px;font-weight:900;color:var(--text,#0f172a);line-height:1.14;letter-spacing:-.01em}
.trust-badge-txt span{display:block;font-size:13.5px;color:var(--muted-text,#64748b);margin-top:4px;line-height:1.42;font-weight:600}
.theme-dark .trust-badge,body.theme-dark .trust-badge{background:var(--card-bg,#161c2e)}

/* ============================================================
   TRUST BAR WOW + SERVICE CARD MEDIA
   ============================================================ */
/* Gradient icon circles, bigger numbers, star rating, highlighted guarantee, hover lift */
.trust-badge{transition:transform .16s ease,box-shadow .16s ease}
.trust-badge:hover{transform:translateY(-3px);box-shadow:0 24px 50px rgba(15,23,42,.15)}
/* Deep, solid "trust" icon (charcoal-deepened brand color) ringed with the electric
   accent — deep color reads as credibility, the ring keeps it on-brand. */
.trust-badge-ico{background:linear-gradient(135deg,color-mix(in srgb,var(--primary,#2b7de9) 88%,#000),color-mix(in srgb,var(--primary,#2b7de9) 40%,#000)) !important;color:#fff !important;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent,#f59e0b) 20%,transparent),0 12px 24px color-mix(in srgb,var(--primary,#2b7de9) 38%,transparent)}
.trust-badge-txt strong{font-size:22px !important}
.trust-stars{display:block;color:#f59e0b;font-size:15px;letter-spacing:3px;margin:4px 0 2px;line-height:1}
.trust-badge.is-feature{border-color:color-mix(in srgb,var(--primary,#2b7de9) 42%,transparent) !important;background:color-mix(in srgb,var(--primary,#2b7de9) 7%,var(--card-bg,#fff)) !important}

/* "What we do" service cards with cover photos */
.mlb-card.has-media{padding:0 !important;overflow:hidden;display:flex;flex-direction:column}
.mlb-card.has-media .mlb-card-media{height:172px;overflow:hidden;background:#e5e7eb}
.mlb-card.has-media .mlb-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.mlb-card.has-media:hover .mlb-card-media img{transform:scale(1.06)}
.mlb-card.has-media .mlb-card-body{padding:18px 20px 22px}
.mlb-card.has-media .mlb-card-body h3{margin-top:0}

/* ============================================================
   PREMIUM REVIEW CARDS
   ============================================================ */
.rv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px}
@media(max-width:900px){.rv-grid{grid-template-columns:1fr}}
.rv-card{background:var(--card-bg,#fff);border:1px solid color-mix(in srgb,var(--primary,#2b7de9) 12%,transparent);border-radius:18px;padding:24px;box-shadow:0 14px 34px rgba(15,23,42,.07);display:flex;flex-direction:column;gap:14px;transition:transform .16s,box-shadow .16s}
.rv-card:hover{transform:translateY(-3px);box-shadow:0 22px 50px rgba(15,23,42,.12)}
.rv-stars{color:#f59e0b;font-size:18px;letter-spacing:3px;line-height:1}
.rv-quote{font-size:15.5px;line-height:1.6;color:var(--text,#0f172a);margin:0;font-style:normal}
.rv-quote:before{content:"“";color:color-mix(in srgb,var(--primary,#2b7de9) 55%,transparent);font-weight:800}
.rv-quote:after{content:"”";color:color-mix(in srgb,var(--primary,#2b7de9) 55%,transparent);font-weight:800}
.rv-person{display:flex;align-items:center;gap:12px;margin-top:auto}
.rv-avatar{flex:0 0 auto;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:18px;color:#fff;background:linear-gradient(135deg,var(--primary,#2b7de9),var(--accent,#22d3ee))}
.rv-who strong{display:block;font-size:15px;color:var(--text,#0f172a)}
.rv-meta{display:block;font-size:12.5px;color:var(--muted-text,#64748b)}
.rv-verified{margin-left:8px;color:#16a34a;font-style:normal;font-weight:700}

/* ============================================================
   CARD MEDIA SIZE FIX + PREMIUM PRICING/PLANS
   ============================================================ */
/* Override the 54px icon cap for cover photos on service cards */
.mlb-card.has-media .mlb-card-media img{width:100% !important;height:100% !important;object-fit:cover !important;display:block !important}
.mlb-card.has-media .mlb-card-media{height:188px !important;width:100% !important}
.mlb-card.has-media{padding:0 !important;overflow:hidden}

/* Premium pricing/plans — featured plan, check features, contained CTA */
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px;align-items:stretch}
@media(max-width:900px){.pricing-grid{grid-template-columns:1fr;max-width:460px;margin-left:auto;margin-right:auto}}
.pricing-card{position:relative;background:var(--card-bg,#fff);border:1px solid color-mix(in srgb,var(--primary,#2b7de9) 14%,transparent);border-radius:20px;padding:30px 26px;display:flex;flex-direction:column;box-shadow:0 14px 34px rgba(15,23,42,.07)}
.pricing-card.is-featured{border:2px solid var(--primary,#2b7de9);box-shadow:0 26px 58px color-mix(in srgb,var(--primary,#2b7de9) 22%,transparent)}
@media(min-width:901px){.pricing-card.is-featured{transform:translateY(-8px)}}
body .pricing-card .pricing-tag{color:var(--buttonText,#fff)!important;background:var(--primary,#2b7de9)!important}
.pricing-tag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--primary,#2b7de9)!important;color:var(--buttonText,#fff)!important;font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:6px 16px;border-radius:999px;white-space:nowrap;box-shadow:0 8px 18px color-mix(in srgb,var(--primary,#2b7de9) 32%,transparent)}
.pricing-name{margin:0 0 6px;font-size:19px;font-weight:850;color:var(--text,#0f172a)}
.pricing-price{font-size:25px;font-weight:850;color:var(--primary,#2b7de9);margin:0 0 20px;line-height:1.1;word-break:break-word}
.pricing-features{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:12px;flex:1}
.pricing-features li{position:relative;padding-left:30px;font-size:14.5px;line-height:1.5;color:var(--text,#0f172a)}
.pricing-features li:before{content:"✓";position:absolute;left:0;top:1px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--primary,#2b7de9) 15%,transparent);color:var(--primary,#2b7de9);font-size:12px;font-weight:900}
.pricing-cta{display:block;box-sizing:border-box;width:100%;text-align:center;padding:14px 18px;border-radius:12px;background:var(--primary,#2b7de9);color:var(--button-text,#fff) !important;font-weight:800;text-decoration:none;white-space:normal;word-break:break-word;line-height:1.25;margin-top:auto}
/* §10 — featured CTA uses the SOLID --primary (same as every other pricing CTA). The old
   primary→accent gradient moved the background away from --primary, but --button-text is
   computed for contrast against --primary alone, so the gradient broke AA at one end for
   BOTH white-text and dark-text themes. The featured card still stands out via its border,
   scale and badge. */
.pricing-card.is-featured .pricing-cta{background:var(--primary,#2b7de9)}
.pricing-cta:hover{filter:brightness(1.06)}

/* ============================================================
   REVIEW CARDS — refined (no letter-avatar; elegant quote mark)
   ============================================================ */
.rv-avatar,.rv-who{display:none !important}
.rv-card{position:relative;overflow:hidden}
.rv-mark{position:absolute;top:8px;right:20px;font-family:Georgia,'Times New Roman',serif;font-size:78px;line-height:1;color:color-mix(in srgb,var(--primary,#2b7de9) 15%,transparent);pointer-events:none;user-select:none}
.rv-card .rv-quote{position:relative;z-index:1}
.rv-card .rv-quote:before,.rv-card .rv-quote:after{content:none}
.rv-person{display:block;margin-top:4px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--primary,#2b7de9) 10%,transparent)}
.rv-name{display:block;font-size:15px;color:var(--text,#0f172a);font-weight:800}
.rv-meta{display:block;font-size:12.5px;margin-top:2px}
.rv-verified{color:#16a34a;font-style:normal;font-weight:700}

/* ============================================================
   "WHAT WE DO" LAYOUT VARIANTS + TRUST WHITE-THEME FIX
   ============================================================ */
/* Variant 2: large image with text overlay */
.mlb-card-grid.cardlayout-overlay .mlb-card.has-media{position:relative;min-height:290px;justify-content:flex-end;border:0}
.mlb-card-grid.cardlayout-overlay .mlb-card.has-media .mlb-card-media{position:absolute !important;inset:0;height:100% !important;width:100% !important}
.mlb-card-grid.cardlayout-overlay .mlb-card.has-media .mlb-card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,11,18,.06) 22%,rgba(8,11,18,.55) 58%,rgba(8,11,18,.92) 100%)}
.mlb-card-grid.cardlayout-overlay .mlb-card.has-media .mlb-card-body{position:relative;z-index:2;padding:22px;background:linear-gradient(0deg,rgba(8,11,18,.92) 0%,rgba(8,11,18,.80) 58%,rgba(8,11,18,0) 100%)}
.mlb-card-grid.cardlayout-overlay .mlb-card.has-media .mlb-card-body h3{color:#fff !important}
.mlb-card-grid.cardlayout-overlay .mlb-card.has-media .mlb-card-body p{color:rgba(255,255,255,.92) !important}
/* Variant 3: image-split (photo left, text right) */
.mlb-card-grid.cardlayout-split{grid-template-columns:repeat(2,1fr) !important}
.mlb-card-grid.cardlayout-split .mlb-card.has-media{flex-direction:row;align-items:stretch;min-height:180px}
.mlb-card-grid.cardlayout-split .mlb-card.has-media .mlb-card-media{flex:0 0 44%;width:44%;height:auto !important}
.mlb-card-grid.cardlayout-split .mlb-card.has-media .mlb-card-body{flex:1;display:flex;flex-direction:column;justify-content:center;padding:20px 24px}
@media(max-width:760px){.mlb-card-grid.cardlayout-split{grid-template-columns:1fr !important}.mlb-card-grid.cardlayout-split .mlb-card.has-media{flex-direction:column}.mlb-card-grid.cardlayout-split .mlb-card.has-media .mlb-card-media{width:100%;flex:none;height:180px !important}}
/* Trust bar: subtle tinted band so white badges stand out on white themes */
.trust-bar-section{background:linear-gradient(180deg,color-mix(in srgb,var(--primary,#2b7de9) 7%,#ffffff) 0%,#ffffff 100%) !important;border-top:1px solid color-mix(in srgb,var(--primary,#2b7de9) 12%,transparent);border-bottom:1px solid color-mix(in srgb,var(--primary,#2b7de9) 12%,transparent)}
body.theme-dark .trust-bar-section{background:color-mix(in srgb,var(--primary,#2b7de9) 13%,#0b1020) !important;border-color:rgba(255,255,255,.08)}
.trust-badge{box-shadow:0 10px 28px rgba(15,23,42,.10) !important}

/* ============================================================
   SHINING GRADIENT STARS (review + trust)
   ============================================================ */
.rv-stars,.trust-stars{background:linear-gradient(118deg,#fde68a 0%,#fbbf24 35%,#f59e0b 65%,#f97316 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent !important;filter:drop-shadow(0 1px 3px rgba(245,158,11,.5))}
.rv-stars{font-size:20px;letter-spacing:4px;line-height:1}
.rv-head{text-align:center;margin-bottom:8px}
.rv-head-stars{font-size:26px;letter-spacing:6px;margin-bottom:10px}
.trust-stars{font-size:14px;letter-spacing:2px}

/* A11y: darker verified green for sufficient contrast on white */
.rv-verified{color:#157f3c !important}
/* …and a brighter green on dark themes/cards so it stays AA (was 3.25:1 on near-black) */
body.theme-dark .rv-verified,body.family-tech .rv-verified{color:#4ade80 !important}

/* Instant form-submit feedback */
.lead-spinner{display:inline-block;width:15px;height:15px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;margin-right:9px;vertical-align:-2px;animation:lead-spin .6s linear infinite}
@keyframes lead-spin{to{transform:rotate(360deg)}}
.site-lead-form button.is-sending,.hero-form button.is-sending{opacity:.95;cursor:progress}

/* Trust icons: a DEEP, solid brand-color chip (reads as credibility/security) ringed with the
   warm accent — two-tone (deep + gold) transfers more trust than an all-accent fill. White stroke
   stays crisp on the deep chip across every theme. */
.trust-bar .trust-badge .trust-badge-ico{background:linear-gradient(135deg,color-mix(in srgb,var(--primary,#2b7de9) 86%,#000),color-mix(in srgb,var(--primary,#2b7de9) 42%,#000)) !important;color:#fff !important;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent,#f59e0b) 22%,transparent),0 12px 24px color-mix(in srgb,var(--primary,#2b7de9) 40%,transparent) !important}
.trust-bar .trust-badge .trust-badge-ico svg{color:#fff !important;stroke:#ffffff !important;fill:none !important}

/* =======================================================================
   STYLE FAMILIES — 10 distinct design systems layered on the palette.
   Per-page tokens already supply the family's display/body font, radii and
   spacing; these rules add the *character* (case, weight, treatment,
   decoration, hero & card feel) so each reads like a different designer.
   All families share the same editable block schema. ===================== */

/* Default: refined sentence-case headings for the non-display families
   (the base stylesheet shouts everything in uppercase). Bold & Industrial
   opt back into uppercase below. */
body.family-modern .section h2, body.family-modern .hero h1,
body.family-luxury .section h2, body.family-luxury .hero h1,
body.family-tech .section h2, body.family-tech .hero h1,
body.family-playful .section h2, body.family-playful .hero h1,
body.family-classic .section h2, body.family-classic .hero h1,
body.family-warm .section h2, body.family-warm .hero h1,
body.family-visual .section h2, body.family-visual .hero h1,
body.family-minimal .section h2, body.family-minimal .hero h1{ text-transform:none; }

/* ---- LUXURY: serif, airy, refined, gold hairline accents ---- */
body.family-luxury .hero h1{ font-weight:600!important; letter-spacing:.004em; line-height:1.06; }
body.family-luxury .section h2{ font-weight:600!important; }
body.family-luxury .btn, body.family-luxury .learn-link{ text-transform:uppercase; letter-spacing:.18em; font-weight:800; font-size:13.5px; padding:19px 34px; border-width:2px; }
/* Hero CTAs read as substantial, confident buttons. */
body.family-luxury .hero .hero-actions .btn{ padding:20px 38px; font-weight:800; }
body.family-luxury .hero .hero-actions .btn-outline{ border-width:2px!important; }
body.family-luxury .mlb-card, body.family-luxury .cards article{ box-shadow:none!important; border:1px solid rgba(0,0,0,.13)!important; }
body.family-luxury .section h2{ text-align:center; }
body.family-luxury .section h2::after{ content:""; display:block; width:56px; height:2px; margin:20px auto 0; background:linear-gradient(90deg,transparent,var(--accent,var(--primary)) 40%,var(--accent,var(--primary)) 60%,transparent); }
body.family-luxury .top-nav{ box-shadow:none; border-bottom:1px solid rgba(0,0,0,.08); }
/* Brand wordmark: the generic logo is rendered at weight 800 with tight tracking — too heavy
   for a luxury maison. Render it as an elegant, lightly-weighted, uppercase tracked wordmark
   in the display serif so the brand name itself reads as the mark. (!important beats the
   inline style on .logo-text.) */
body.family-luxury .top-nav .logo-text{
  font-weight:600!important;
  font-size:19px!important;
  letter-spacing:.24em!important;
  text-transform:uppercase!important;
  font-family:var(--font-display,inherit)!important;
}
/* More breathing room in the small-caps eyebrows/section labels — a hallmark of refined type. */
body.family-luxury .text-eyebrow,
body.family-luxury .mlb-eyebrow,
body.family-luxury .pp-eyebrow,
body.family-luxury .review-eyebrow{ letter-spacing:.26em!important; font-weight:600!important; }
/* Open the hero headline up slightly so the serif can breathe. */
body.family-luxury .hero h1{ letter-spacing:.012em!important; }
/* Menu prices/items in the display serif so the carte matches the brand voice. */
body.family-luxury .menu-item-name,
body.family-luxury .menu-col-head{ font-family:var(--font-display,inherit)!important; letter-spacing:.01em; }

/* ---- BOLD / EDITORIAL: oversized display, uppercase, high contrast ---- */
body.family-bold .hero h1{ text-transform:uppercase!important; font-weight:400; line-height:.92!important; letter-spacing:-.01em; font-size:clamp(54px,8vw,128px)!important; }
body.family-bold .section h2{ text-transform:uppercase!important; font-weight:400; line-height:.96!important; font-size:clamp(40px,5vw,72px)!important; }
body.family-bold .section h3, body.family-bold .mlb-card h3{ text-transform:uppercase; letter-spacing:.01em; }
body.family-bold .btn, body.family-bold .learn-link{ text-transform:uppercase; letter-spacing:.02em; font-weight:800; }
body.family-bold .mlb-card, body.family-bold .cards article{ box-shadow:none!important; border:2px solid currentColor!important; transition:transform .15s ease; }
body.family-bold .mlb-card:hover, body.family-bold .cards article:hover{ transform:translate(-3px,-3px); box-shadow:8px 8px 0 var(--primary)!important; }
body.family-bold .top-nav{ border-bottom:2px solid #111; box-shadow:none; }

/* ---- DARK TECH: dark UI, glass cards, neon accent glow ---- */
body.family-tech{ background:#0a0e17; color:#eaf0f7; }
body.family-tech .top-nav{ background:#0a0e17!important; border-bottom:1px solid rgba(255,255,255,.08); box-shadow:none; }
body.family-tech nav a, body.family-tech .logo-text{ color:#eaf0f7!important; }
body.family-tech .section, body.family-tech .section.light{ background:var(--section-bg,#111722); color:#eaf0f7; }
body.family-tech .hero h1{ letter-spacing:-.01em; font-weight:600; }
/* Gradient ACCENT text (not the whole headline) — scoped to the accent word so the main
   headline stays solid + readable. Solid-color fallback, upgraded to clipped gradient ONLY where
   background-clip:text is supported (else a broken clip paints a solid box over the text). */
body.family-tech .hero h1 .hero-headline-accent, body.family-tech .section h2 .accent{ color:var(--accent); }
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  body.family-tech .hero h1 .hero-headline-accent, body.family-tech .section h2 .accent{ background:linear-gradient(90deg,var(--primary),var(--accent))!important; -webkit-background-clip:text!important; background-clip:text!important; -webkit-text-fill-color:transparent!important; color:transparent!important; }
}
body.family-tech .mlb-card, body.family-tech .cards article{ background:rgba(255,255,255,.04)!important; border:1px solid rgba(255,255,255,.10)!important; backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); box-shadow:0 18px 50px rgba(0,0,0,.45)!important; color:#eaf0f7; }
body.family-tech .mlb-card h3, body.family-tech .cards h3{ color:#fff!important; }
body.family-tech .btn-yellow, body.family-tech .learn-link{ background:linear-gradient(135deg,var(--primary),var(--accent))!important; color:#04121f!important; box-shadow:0 0 0 1px rgba(255,255,255,.08), 0 14px 38px rgba(34,211,238,.30)!important; }
body.family-tech .btn-outline{ border-color:rgba(255,255,255,.45)!important; color:#fff!important; }
body.family-tech .section h2::after{ content:""; display:block; width:60px; height:3px; margin:16px auto 0; border-radius:3px; background:linear-gradient(90deg,var(--primary),var(--accent)); box-shadow:0 0 18px var(--accent); }
body.family-tech footer{ background:#070b12; }

/* ---- PLAYFUL: rounded, bright, bouncy ---- */
body.family-playful .hero h1{ font-weight:800; letter-spacing:-.01em; }
body.family-playful .section h2{ font-weight:800; }
body.family-playful .mlb-card, body.family-playful .cards article{ border:0!important; box-shadow:0 18px 40px rgba(15,23,42,.12)!important; transition:transform .18s cubic-bezier(.34,1.56,.64,1), box-shadow .18s ease; }
body.family-playful .mlb-card:hover, body.family-playful .cards article:hover{ transform:translateY(-7px) rotate(-.6deg); box-shadow:0 26px 60px rgba(15,23,42,.18)!important; }
body.family-playful .btn, body.family-playful .learn-link{ font-weight:800; box-shadow:0 12px 26px rgba(15,23,42,.16); }
body.family-playful .btn:hover, body.family-playful .learn-link:hover{ transform:translateY(-3px) scale(1.02); }
body.family-playful .section h2::after{ content:""; display:block; width:64px; height:6px; margin:16px auto 0; border-radius:999px; background:var(--accent,var(--primary)); }

/* ---- CLASSIC: serif, formal, bordered, understated ---- */
body.family-classic .hero h1{ font-weight:600!important; letter-spacing:0; }
body.family-classic .section h2{ font-weight:600!important; }
body.family-classic .mlb-card, body.family-classic .cards article{ box-shadow:none!important; border:1px solid rgba(0,0,0,.16)!important; }
body.family-classic .btn, body.family-classic .learn-link{ text-transform:none; letter-spacing:.01em; font-weight:700; }
body.family-classic .section h2{ text-align:center; }
body.family-classic .section h2::after{ content:""; display:block; width:46px; height:3px; margin:18px auto 0; background:var(--primary); }
body.family-classic .top-nav{ border-bottom:2px solid var(--primary); box-shadow:none; }

/* ---- WARM / ORGANIC: soft serif, rounded, gentle shadows ---- */
body.family-warm .hero h1{ font-weight:600!important; letter-spacing:0; }
body.family-warm .section h2{ font-weight:600!important; }
body.family-warm .mlb-card, body.family-warm .cards article{ border:0!important; box-shadow:0 16px 38px rgba(80,60,40,.12)!important; }
body.family-warm .btn, body.family-warm .learn-link{ text-transform:none; font-weight:700; letter-spacing:.005em; }
body.family-warm .section h2::after{ content:""; display:block; width:58px; height:5px; margin:16px auto 0; border-radius:999px; background:linear-gradient(90deg,var(--primary),var(--accent)); opacity:.85; }

/* ---- INDUSTRIAL: condensed, uppercase, hard edges, accent bars ---- */
body.family-industrial .hero h1{ text-transform:uppercase!important; font-weight:600; letter-spacing:.005em; line-height:.98!important; }
body.family-industrial .section h2{ text-transform:uppercase!important; font-weight:600; letter-spacing:.01em; }
body.family-industrial .section h3, body.family-industrial .mlb-card h3{ text-transform:uppercase; letter-spacing:.02em; }
body.family-industrial .btn, body.family-industrial .learn-link{ text-transform:uppercase; letter-spacing:.06em; font-weight:700; }
body.family-industrial .mlb-card, body.family-industrial .cards article{ border:1px solid rgba(0,0,0,.18)!important; border-top:4px solid var(--primary)!important; box-shadow:none!important; }
body.family-industrial .top-nav{ border-bottom:3px solid var(--primary); box-shadow:none; }
body.family-industrial .section h2{ position:relative; }

/* ---- IMAGE-FORWARD / VISUAL: photo-dominant, minimal chrome ---- */
body.family-visual .hero{ min-height:660px; }
body.family-visual .hero h1{ font-weight:700; letter-spacing:-.015em; }
body.family-visual .mlb-card, body.family-visual .cards article{ box-shadow:0 14px 34px rgba(15,23,42,.10)!important; border:0!important; }
body.family-visual .top-nav{ box-shadow:none; border-bottom:1px solid rgba(0,0,0,.06); }
body.family-visual .btn, body.family-visual .learn-link{ text-transform:none; font-weight:700; }

/* ---- MINIMAL / BOUTIQUE: whitespace, hairlines, no shadow ---- */
body.family-minimal .hero h1{ font-weight:500!important; letter-spacing:-.01em; }
body.family-minimal .section h2{ font-weight:500!important; letter-spacing:-.005em; }
body.family-minimal .mlb-card, body.family-minimal .cards article{ box-shadow:none!important; border:1px solid rgba(0,0,0,.10)!important; }
body.family-minimal .btn-yellow, body.family-minimal .learn-link{ font-weight:600; }
body.family-minimal .btn-outline{ border-width:1px!important; }
body.family-minimal .top-nav{ box-shadow:none; border-bottom:1px solid rgba(0,0,0,.07); }
body.family-minimal .section{ padding-top:var(--section-spacing,116px); padding-bottom:var(--section-spacing,116px); }

/* DARK-NAV CONTRAST GUARD — any dark-theme page (dark palette OR Dark Tech family) must show
   light nav links + logo on its dark nav bar. Fixes black-on-dark links that were unreadable. */
body.theme-dark .top-nav{ background:var(--nav-bg, var(--page-bg, #0b1020)); border-bottom:1px solid rgba(255,255,255,.08); box-shadow:0 2px 12px rgba(0,0,0,.4); }
body.theme-dark .top-nav nav a, body.theme-dark nav a{ color:var(--text, #f1f5f9) !important; }
body.theme-dark .top-nav nav a:hover{ color:var(--accent, #ffffff) !important; }
body.theme-dark .logo-text{ color:var(--text, #f1f5f9) !important; }
body.theme-dark .top-nav .btn-outline{ border-color:rgba(255,255,255,.5) !important; color:#fff !important; }
/* Some dark palettes also need the sticky CTA bar text legible. */
body.theme-dark .sticky-bar{ background:var(--section-bg, #11162a); }

/* Family-aware mobile: keep oversized Bold/Industrial display readable on phones. */
@media(max-width:700px){
  body.family-bold .hero h1{ font-size:clamp(40px,12vw,64px)!important; }
  body.family-bold .section h2{ font-size:clamp(30px,9vw,46px)!important; }
}

/* ===================================================================
   BESPOKE BLUEPRINT BLOCKS — distinct, industry-specific section types.
   (menu_highlights, photo_gallery). Theme-aware via --mlb-* vars. */

/* Menu highlights — restaurant/café/bakery price menu with leader dots. */
.mlb-menu .menu-cols{ display:grid; grid-template-columns:1fr 1fr; gap:36px 56px; margin-top:30px; }
.mlb-menu .menu-col-head{ font-family:var(--display-font); font-size:clamp(18px,1.5vw,24px)!important; letter-spacing:.12em; text-transform:uppercase; color:var(--accent-text,var(--mlb-accent))!important; padding-bottom:10px; margin:0 0 14px; border-bottom:2px solid color-mix(in srgb,var(--mlb-accent) 40%, transparent); }
.mlb-menu .menu-list{ list-style:none; margin:0; padding:0; display:grid; gap:18px; }
.mlb-menu .menu-item-row{ display:flex; align-items:baseline; gap:8px; }
.mlb-menu .menu-item-name{ font-weight:700; color:var(--mlb-title); font-size:clamp(16px,1.1vw,19px); }
.mlb-menu .menu-item-dots{ flex:1; border-bottom:2px dotted color-mix(in srgb,var(--mlb-body) 45%, transparent); transform:translateY(-4px); }
.mlb-menu .menu-item-price{ font-weight:800; color:var(--mlb-accent); font-size:clamp(16px,1.1vw,19px); white-space:nowrap; }
.mlb-menu .menu-item-desc{ margin:4px 0 0!important; color:var(--mlb-body); font-size:15px!important; line-height:1.5!important; opacity:.9; max-width:46ch; }
@media(max-width:760px){ .mlb-menu .menu-cols{ grid-template-columns:1fr; gap:30px; } }
/* Premium menu polish (Squarespace/Wix-grade): airy spacing, gold rule, elegant scale. */
.mlb-menu{ padding-top:92px!important; padding-bottom:92px!important; position:relative; }
.mlb-menu .container{ max-width:1040px; }
.mlb-menu .mlb-eyebrow{ text-align:center; text-transform:uppercase; letter-spacing:.34em; font-size:12px; font-weight:700; color:var(--mlb-accent)!important; margin-bottom:10px; }
.mlb-menu > .container > h2{ text-align:center; font-size:clamp(34px,4vw,56px)!important; margin:0 auto 6px; }
.mlb-menu .mlb-intro{ text-align:center; max-width:62ch; margin:0 auto 18px; opacity:.92; }
.mlb-menu > .container > h2::after{ content:""; display:block; width:54px; height:1px; margin:22px auto 6px; background:linear-gradient(90deg,transparent,var(--mlb-accent),transparent); }
.mlb-menu .menu-cols{ margin-top:42px; gap:40px 72px; }
.mlb-menu .menu-item-name{ font-family:var(--display-font); font-weight:600; letter-spacing:.01em; }
.mlb-menu .menu-item-price{ font-family:var(--display-font); }

/* Gallery: contained editorial grid (see the 3-column feature-tile rules below). */
.mlb-gallery{ padding-top:72px!important; padding-bottom:72px!important; }
.mlb-gallery .container{ max-width:none; width:100%; }
.mlb-gallery > .container > .mlb-eyebrow,.mlb-gallery > .container > h2,.mlb-gallery > .container > .mlb-intro{ width:94%; max-width:1280px; margin-left:auto; margin-right:auto; }

/* Full-bleed image band — cinematic photo + overlaid editorial copy. */
.image-band{ background-size:cover; background-position:center; background-attachment:scroll; display:grid; align-items:center; color:#fff; padding:104px 0; }
/* breathing room when a cinematic band directly follows a gallery/cards section */
.mlb-gallery + .image-band, .mlb + .image-band{ margin-top:8px; }
.image-band.align-center{ text-align:center; justify-items:center; }
.image-band.align-left{ text-align:left; justify-items:start; }
.image-band-inner{ width:92%; max-width:880px; margin:0 auto; }
.image-band .ib-eyebrow{ text-transform:uppercase; letter-spacing:.32em; font-size:12px; font-weight:700; margin-bottom:16px; }
.image-band .ib-title{ font-family:var(--display-font); color:#fff!important; font-size:clamp(32px,4.4vw,60px)!important; line-height:1.08; margin:0 0 18px; letter-spacing:-.01em; }
.image-band .ib-text{ font-size:clamp(17px,1.3vw,21px); line-height:1.65; color:rgba(255,255,255,.92); max-width:64ch; margin:0 auto 26px; }
.image-band.align-left .ib-text{ margin-left:0; }
.image-band .ib-btn{ margin-top:28px; }

/* Image + text split — large photo beside copy, alternating. */
.image-split{ padding:0; overflow:hidden; }
.image-split-grid{ display:grid; grid-template-columns:1.05fr 1fr; align-items:stretch; min-height:520px; }
.image-split.reverse .image-split-grid{ direction:rtl; }
.image-split.reverse .is-body{ direction:ltr; }
.image-split.reverse .is-media{ direction:ltr; }
.image-split .is-media{ position:relative; overflow:hidden; min-height:380px; }
.image-split .is-media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.image-split .is-body{ display:flex; flex-direction:column; justify-content:center; padding:clamp(36px,6vw,88px); }
.image-split .is-eyebrow{ text-transform:uppercase; letter-spacing:.28em; font-size:12px; font-weight:700; color:var(--mlb-accent); margin-bottom:14px; }
.image-split .is-body h2{ font-family:var(--display-font); color:var(--mlb-title); font-size:clamp(30px,3.4vw,48px)!important; line-height:1.1; margin:0 0 18px; }
.image-split .is-body p{ color:var(--mlb-body); font-size:clamp(16px,1.15vw,19px); line-height:1.7; margin:0 0 20px; max-width:52ch; }
.image-split .is-list{ list-style:none; margin:0 0 24px; padding:0; display:grid; gap:11px; }
.image-split .is-list li{ position:relative; padding-left:26px; color:var(--mlb-body); line-height:1.5; }
.image-split .is-list li::before{ content:""; position:absolute; left:0; top:8px; width:9px; height:9px; border-radius:50%; background:var(--mlb-accent); box-shadow:0 0 0 4px color-mix(in srgb,var(--mlb-accent) 22%,transparent); }
@media(max-width:820px){ .image-split-grid,.image-split.reverse .image-split-grid{ grid-template-columns:1fr; direction:ltr; } .image-split .is-media{ min-height:300px; } }

/* Photo gallery — clean 3-column editorial grid with one feature tile (top-left
   2x2). Spans divide the 3 columns evenly so there are no gaps regardless of how
   many photos a page has; auto-placement fills the rest. */
.mlb-gallery .photo-grid{ display:grid; grid-template-columns:repeat(3,1fr); grid-auto-rows:215px; gap:14px; margin-top:28px; width:94%; max-width:1280px; margin-left:auto; margin-right:auto; }
.mlb-gallery .photo-cell{ margin:0; overflow:hidden; border-radius:var(--card-radius,16px); grid-column:span 1; grid-row:span 1; position:relative; box-shadow:0 14px 32px rgba(15,23,42,.12); }
.mlb-gallery .photo-cell img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s ease; }
.mlb-gallery .photo-cell:hover img{ transform:scale(1.07); }
.mlb-gallery .photo-cell-0{ grid-column:span 2; grid-row:span 2; }
@media(max-width:760px){ .mlb-gallery .photo-grid{ grid-template-columns:repeat(2,1fr); grid-auto-rows:150px; } .mlb-gallery .photo-cell-0{ grid-column:span 2; grid-row:span 2; } }

/* ── Booking widget (public booking block) ─────────────────────────────────── */
.booking-section .booking-grid{ align-items:start; gap:40px; }
.booking-section .booking-copy h2{ color:var(--mlb-title,#fff); }
.booking-section .booking-copy .mlb-intro{ color:var(--mlb-body,rgba(255,255,255,.9)); }
.booking-widget{ --bk-card-bg:#fffdf9; --bk-card-text:#23211c; --bk-chip-bg:#ffffff; --bk-chip-text:#2a2620; --bk-chip-border:#e2ddd2; background:var(--bk-card-bg); color:var(--bk-card-text); border-radius:18px; padding:24px; box-shadow:0 26px 70px rgba(15,18,12,.28); border:1px solid rgba(0,0,0,.06); }
/* §15 themed booking — dark themes flip the card/chips to the page surface (accent stays --bk-accent) */
body.theme-dark .booking-widget,body.family-tech .booking-widget,body.glass-mode .booking-widget{ --bk-card-bg:var(--card-bg,#141b2d); --bk-card-text:var(--text,#eaf0fb); --bk-chip-bg:color-mix(in srgb,var(--card-bg,#141b2d) 80%,#000 20%); --bk-chip-text:var(--text,#eaf0fb); --bk-chip-border:rgba(255,255,255,.18); border-color:rgba(255,255,255,.12); }
.booking-widget *{ box-sizing:border-box; }
.bk-loading,.bk-empty{ padding:26px 6px; text-align:center; color:#6b665c; font-weight:600; }
.bk-empty{ color:#7a7468; }
.bk-step{ margin-bottom:20px; }
.bk-step:last-child{ margin-bottom:0; }
.bk-step-label{ display:flex; align-items:center; gap:9px; font-weight:800; font-size:14px; letter-spacing:.01em; color:#2a2620; margin-bottom:12px; text-transform:none; }
.bk-num{ display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; border-radius:50%; background:var(--bk-accent,#b08d3f); color:var(--bk-accent-ink,#fff); font-size:12px; font-weight:800; }
.bk-chips{ display:flex; flex-wrap:wrap; gap:9px; }
.bk-dates{ flex-wrap:nowrap; overflow-x:auto; padding-bottom:6px; scrollbar-width:thin; }
.bk-chip{ appearance:none; cursor:pointer; background:#fff; border:1.5px solid #e2ddd2; border-radius:12px; padding:10px 14px; font-family:inherit; font-size:14px; font-weight:700; color:#2a2620; line-height:1.15; transition:border-color .12s,background .12s,transform .08s; display:inline-flex; flex-direction:column; align-items:center; gap:2px; min-width:60px; }
.bk-chip:hover:not(:disabled){ border-color:var(--bk-accent,#b08d3f); transform:translateY(-1px); }
.bk-chip.bk-on{ background:var(--bk-accent,#b08d3f); border-color:var(--bk-accent,#b08d3f); color:var(--bk-accent-ink,#fff); }
.bk-chip:disabled,.bk-chip-off{ opacity:.42; cursor:not-allowed; text-decoration:line-through; }
.bk-chip-wd{ font-size:11px; text-transform:uppercase; letter-spacing:.08em; opacity:.7; font-weight:800; }
.bk-chip-dt{ font-size:15px; font-weight:800; }
.bk-time{ flex-direction:row; position:relative; }
.bk-full{ font-size:10px; font-weight:800; text-transform:uppercase; color:#b4452f; margin-left:7px; }
.bk-left{ font-size:10px; font-weight:800; color:#b07a26; margin-left:7px; }
.bk-chip.bk-on .bk-left,.bk-chip.bk-on .bk-full{ color:#fff; }
.bk-party{ display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 14px; background:#f6f2ea; border-radius:12px; margin-bottom:14px; }
.bk-party-label{ font-weight:800; font-size:14px; color:#2a2620; }
.bk-stepper{ display:flex; align-items:center; gap:12px; }
.bk-step-btn{ width:34px; height:34px; border-radius:9px; border:1.5px solid #e2ddd2; background:#fff; font-size:20px; font-weight:800; cursor:pointer; color:#2a2620; line-height:1; }
.bk-step-btn:hover{ border-color:var(--bk-accent,#b08d3f); color:var(--bk-accent,#b08d3f); }
.bk-party-count{ font-weight:800; font-size:14px; min-width:78px; text-align:center; color:#2a2620; }
.bk-fields{ display:grid; grid-template-columns:1fr 1fr; gap:11px; }
.bk-f{ display:flex; flex-direction:column; gap:5px; font-size:12.5px; font-weight:800; color:#5c574d; }
.bk-f-full{ grid-column:1 / -1; }
.bk-f em{ font-weight:600; font-style:normal; color:#a39c8e; }
.bk-f input,.bk-f textarea{ font-family:inherit; font-size:15px; font-weight:500; color:#23211c; background:#fff; border:1.5px solid #e2ddd2; border-radius:10px; padding:11px 12px; width:100%; }
.bk-f input:focus,.bk-f textarea:focus{ outline:none; border-color:var(--bk-accent,#b08d3f); box-shadow:0 0 0 3px rgba(176,141,63,.15); }
.bk-error{ color:#b4452f; font-weight:700; font-size:13.5px; margin:12px 0 0; }
.bk-submit{ margin-top:16px; width:100%; cursor:pointer; border:0; border-radius:12px; background:var(--bk-accent,#b08d3f); color:var(--bk-accent-ink,#fff); font-family:inherit; font-weight:800; font-size:15px; letter-spacing:.04em; text-transform:uppercase; padding:16px; transition:filter .12s; }
.bk-submit:hover:not(:disabled){ filter:brightness(1.07); }
.bk-submit:disabled{ opacity:.7; cursor:default; }
.bk-summary{ display:flex; align-items:center; gap:9px; margin-top:16px; padding-top:15px; border-top:1px dashed #e2ddd2; font-weight:800; font-size:14px; color:#2a2620; }
.bk-sum-dot{ width:8px; height:8px; border-radius:50%; background:var(--bk-accent,#b08d3f); flex:0 0 auto; }
.bk-success{ text-align:center; padding:18px 8px; }
.bk-check{ width:54px; height:54px; border-radius:50%; background:var(--bk-accent,#b08d3f); color:var(--bk-accent-ink,#fff); font-size:28px; font-weight:800; display:flex; align-items:center; justify-content:center; margin:0 auto 14px; }
.bk-success h3{ font-size:22px; margin:0 0 6px; color:#23211c; }
.bk-success-sum{ font-weight:800; color:#2a2620; margin:0 0 8px; }
.bk-success p{ color:#6b665c; font-size:15px; margin:0 auto; max-width:340px; }
@media(max-width:760px){ .bk-fields{ grid-template-columns:1fr; } .booking-section .booking-grid{ gap:26px; } }

/* Specificity guard: page button rules can otherwise tint booking chips/buttons. Pin them. */
.booking-widget .bk-chip{ background:var(--bk-chip-bg,#fff)!important; color:var(--bk-chip-text,#2a2620)!important; border:1.5px solid var(--bk-chip-border,#e2ddd2)!important; }
.booking-widget .bk-chip:hover:not(:disabled){ border-color:var(--bk-accent,#b08d3f)!important; }
.booking-widget .bk-chip.bk-on{ background:var(--bk-accent,#b08d3f)!important; border-color:var(--bk-accent,#b08d3f)!important; color:var(--bk-accent-ink,#fff)!important; }
.booking-widget .bk-step-btn{ background:var(--bk-chip-bg,#fff)!important; color:var(--bk-chip-text,#2a2620)!important; }
.booking-widget .bk-submit{ background:var(--bk-accent,#b08d3f)!important; color:#fff!important; }

/* Booking section polish — warm linen band so the white card reads, balanced columns,
   and a proper single-column stack on mobile (the generic .mlb-hero-grid doesn't collapse). */
.booking-section{ background:#f2ede3 !important; }
.booking-section .booking-grid{ grid-template-columns:.82fr 1.18fr; gap:44px; align-items:center; }
.booking-widget{ max-width:100%; box-shadow:0 30px 80px rgba(20,28,18,.20); }
.booking-section .bk-dates{ scroll-snap-type:x proximity; }
.booking-section .bk-dates .bk-chip{ scroll-snap-align:start; }
@media(max-width:860px){
  .booking-section .booking-grid,.booking-section .mlb-hero-grid{ grid-template-columns:1fr !important; gap:24px; }
  .booking-widget{ padding:18px; }
}

/* Contain the no-wrap date strip: grid/flex items default to min-width:auto, so the long
   horizontal date row was forcing the widget column wider than the viewport. Pin to 0 so the
   strip scrolls *inside* its column instead of overflowing the page. */
.booking-section .booking-grid > *{ min-width:0; }
.booking-widget,.booking-widget .bk-card,.booking-widget .bk-chips{ min-width:0; }
.booking-widget .bk-dates{ max-width:100%; }

/* ── Booking CTA band + popup ──────────────────────────────────────────────── */
.booking-cta-section{ background:var(--booking-band, var(--secondary,#1b3b30)); color:#fff; padding:clamp(64px,9vw,110px) 0; text-align:center; }
.booking-cta{ max-width:680px; margin:0 auto; }
.bk-eyebrow{ text-transform:uppercase; letter-spacing:.24em; font-size:12px; font-weight:800; color:var(--bk-accent,#b08d3f); }
.booking-cta h2{ color:#fff; font-size:clamp(30px,4vw,46px); line-height:1.06; margin:12px 0 14px; }
.booking-cta p{ color:rgba(255,255,255,.82); font-size:18px; line-height:1.6; margin:0 auto 20px; max-width:560px; }
.booking-cta-points{ list-style:none; padding:0; margin:0 auto 28px; display:flex; flex-wrap:wrap; gap:8px 24px; justify-content:center; max-width:600px; }
.booking-cta-points li{ color:rgba(255,255,255,.82); font-weight:600; font-size:14.5px; position:relative; padding-left:20px; }
.booking-cta-points li:before{ content:"✓"; position:absolute; left:0; color:var(--bk-accent,#b08d3f); font-weight:900; }
.booking-cta-btn{ background:var(--bk-accent,#b08d3f); color:var(--bk-accent-ink,#fff); border:0; cursor:pointer; padding:18px 44px; font-weight:800; font-size:15px; letter-spacing:.06em; text-transform:uppercase; border-radius:4px; transition:filter .12s,transform .08s; }
.booking-cta-btn:hover{ filter:brightness(1.08); transform:translateY(-1px); }

.bk-modal{ position:fixed; inset:0; z-index:9999; display:flex; align-items:center; justify-content:center; padding:20px; }
.bk-modal[hidden]{ display:none !important; }
.bk-modal-backdrop{ position:absolute; inset:0; background:rgba(12,16,12,.62); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
.bk-modal-card{ position:relative; z-index:1; background:#fffdf9; color:#23211c; width:100%; max-width:560px; max-height:92vh; overflow-y:auto; border-radius:18px; padding:26px 26px 30px; box-shadow:0 40px 120px rgba(0,0,0,.45); animation:bkpop .22s ease; }
@keyframes bkpop{ from{ opacity:0; transform:translateY(14px) scale(.98); } to{ opacity:1; transform:none; } }
.bk-modal-close{ position:absolute; top:13px; right:15px; width:34px; height:34px; border-radius:50%; border:0; background:#efeae0; color:#5c574d; font-size:22px; line-height:1; cursor:pointer; }
.bk-modal-close:hover{ background:#e5dfd2; }
.bk-modal-head{ margin-bottom:18px; padding-right:36px; }
.bk-modal-head h3{ font-size:26px; margin:7px 0 5px; color:#23211c; }
.bk-modal-head p{ color:#6b665c; font-size:14.5px; line-height:1.5; margin:0; }
.bk-modal .booking-widget{ background:transparent; box-shadow:none; border:0; padding:0; }
.bk-modal .bk-card{ padding:0; }
@media(max-width:560px){ .bk-modal{ padding:0; align-items:flex-end; } .bk-modal-card{ max-width:100%; max-height:94vh; border-radius:20px 20px 0 0; } }

/* ── Booking popup — refined UI ────────────────────────────────────────────── */
.bk-modal-card{ max-width:600px; padding:26px 28px 0; }
.bk-modal-head{ border-bottom:1px solid #efe9dd; padding-bottom:16px; margin-bottom:18px; }
.bk-modal .bk-step{ margin-bottom:18px; }
.bk-modal .bk-step-label{ font-size:13px; color:#3a352d; }
.bk-num{ width:20px; height:20px; font-size:11px; }
/* Cleaner party control — drop the muddy beige bar for a crisp bordered row. */
.bk-party{ background:#fff; border:1px solid #ece6da; }
.bk-step-btn{ border-radius:8px; }
/* Sticky action bar — summary + reserve always in view as the form scrolls. */
.bk-foot{ position:sticky; bottom:0; background:#fffdf9; margin:8px -28px 0; padding:14px 28px 22px; border-top:1px solid #efe9dd; box-shadow:0 -14px 22px -16px rgba(0,0,0,.22); }
.bk-foot .bk-summary{ margin:0 0 11px; padding:0; border:0; justify-content:center; font-size:13.5px; color:#3a352d; }
.bk-foot .bk-summary .bk-sum-text strong{ color:#1b3b30; }
.bk-foot .bk-submit{ margin-top:0; }
.bk-foot .bk-error{ margin:0 0 10px; text-align:center; }
/* date strip a touch larger & snappier in the wider modal */
.bk-modal .bk-dates .bk-chip{ min-width:64px; }

/* ──────────────────────────────────────────────────────────────────────────
   SIGNATURE BLOCKS (Phase 1 path 2): product_grid, listing_cards,
   class_schedule, portfolio_masonry, before_after_gallery.
   All inherit the contrast-safe .mlb tokens (--mlb-title/body/card/accent):
   headings → --mlb-title, body text → --mlb-body, cards → --mlb-card.
   ────────────────────────────────────────────────────────────────────────── */

/* Shared card scaffold for product + listing grids */
.mlb-products .product-grid,
.mlb-listings .listing-grid{
  display:grid; gap:24px; margin-top:34px;
}
.mlb-products .product-grid.cols-2{ grid-template-columns:repeat(2,1fr); }
.mlb-products .product-grid.cols-3{ grid-template-columns:repeat(3,1fr); }
.mlb-products .product-grid.cols-4{ grid-template-columns:repeat(4,1fr); }
.mlb-listings .listing-grid{ grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); }
.product-card,.listing-card{
  background:var(--mlb-card,#ffffff);
  border:1px solid var(--mlb-border,rgba(0,0,0,.08));
  border-radius:18px; overflow:hidden;
  display:flex; flex-direction:column;
  box-shadow:0 18px 50px rgba(0,0,0,.10);
  transition:transform .18s ease, box-shadow .18s ease;
}
.product-card:hover,.listing-card:hover{ transform:translateY(-4px); box-shadow:0 28px 70px rgba(0,0,0,.16); }
.product-media,.listing-media{ position:relative; aspect-ratio:4/3; overflow:hidden; background:rgba(0,0,0,.05); }
.product-media img,.listing-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.product-tag,.listing-badge{
  position:absolute; top:14px; left:14px;
  background:#111827; color:#fff;
  font-weight:800; font-size:12px; letter-spacing:.04em; text-transform:uppercase;
  padding:6px 12px; border-radius:999px; box-shadow:0 6px 18px rgba(0,0,0,.25);
}
.product-body,.listing-body{ padding:22px 22px 24px; display:flex; flex-direction:column; gap:8px; flex:1; }
.mlb-products .product-name,.mlb-listings .listing-title{ margin:0; font-size:clamp(19px,1.5vw,23px) !important; line-height:1.2; }
.mlb-products .product-meta,.mlb-listings .listing-meta{ margin:0; opacity:.85; }
.product-price-row{ display:flex; align-items:baseline; gap:10px; margin-top:4px; }
.mlb-products .product-price,.mlb-listings .listing-price{ color:var(--mlb-title,#111) !important; font-weight:900; font-size:clamp(21px,1.7vw,27px); }
.mlb-products .product-old{ text-decoration:line-through; opacity:.55; font-size:15px; }
.mlb-listings .listing-price{ display:block; margin-bottom:2px; }
.listing-specs{ list-style:none; margin:6px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.mlb-listings .listing-specs li{ background:rgba(0,0,0,.05); border-radius:8px; padding:5px 10px; font-size:13px !important; font-weight:600; }
.mlb-dark .mlb-listings .listing-specs li,.mlb-products.mlb-dark .listing-specs li{ background:rgba(255,255,255,.08); }
.product-btn,.listing-btn{ margin-top:auto; align-self:flex-start; }

/* Class schedule — weekly timetable, one column per day */
.mlb-schedule .schedule-grid{
  display:grid; gap:18px; margin-top:34px;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
}
.schedule-col{
  background:var(--mlb-card,#ffffff);
  border:1px solid var(--mlb-border,rgba(0,0,0,.08));
  border-radius:16px; padding:20px;
}
.mlb-schedule .schedule-day{
  margin:0 0 14px !important; padding-bottom:10px;
  border-bottom:2px solid var(--mlb-accent,var(--primary,#2b7de9));
  font-size:18px !important;
}
.schedule-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px; }
.schedule-slot{ display:flex; flex-direction:column; gap:2px; }
.mlb-schedule .schedule-time{ color:var(--mlb-title,#111) !important; font-weight:800; font-size:14px !important; }
.mlb-schedule .schedule-name{ font-weight:600; }
.mlb-schedule .schedule-coach{ opacity:.7; font-size:13px !important; }

/* Portfolio masonry — CSS columns; caption fades in over a dark scrim */
.mlb-portfolio .portfolio-masonry{ column-gap:18px; columns:3; margin-top:34px; }
.portfolio-cell{ position:relative; display:block; break-inside:avoid; margin:0 0 18px; border-radius:14px; overflow:hidden; }
.portfolio-cell img{ width:100%; display:block; }
.portfolio-cap{
  position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end;
  gap:4px; padding:18px; opacity:0; transition:opacity .22s ease;
  background:linear-gradient(0deg,rgba(8,11,18,.82) 0%,rgba(8,11,18,.10) 60%,transparent 100%);
}
.portfolio-cell:hover .portfolio-cap{ opacity:1; }
.portfolio-cat{ color:var(--mlb-accent,#fff); font-weight:800; font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.portfolio-caption{ color:#fff !important; font-weight:700; font-size:16px; }

/* Before / After — labeled side-by-side pair per result */
.before-after-section .ba-grid{ display:grid; gap:26px; margin-top:34px; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); }
.before-after-section .ba-card{ display:flex; flex-direction:column; gap:14px; }
.before-after-section .ba-pair{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.before-after-section .ba-shot{ position:relative; margin:0; border-radius:14px; overflow:hidden; aspect-ratio:1/1; box-shadow:0 14px 40px rgba(0,0,0,.12); }
.before-after-section .ba-shot img{ width:100%; height:100%; object-fit:cover; display:block; }
.before-after-section .ba-shot figcaption{
  position:absolute; top:12px; left:12px; padding:5px 11px; border-radius:999px;
  font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:#fff;
}
.before-after-section .ba-before figcaption{ background:#111827; }
.before-after-section .ba-after figcaption{ background:#166534; }
.before-after-section .ba-card h3{ margin:0; }

@media (max-width:860px){
  .mlb-products .product-grid.cols-3,.mlb-products .product-grid.cols-4{ grid-template-columns:repeat(2,1fr); }
  .mlb-portfolio .portfolio-masonry{ columns:2; }
}
@media (max-width:560px){
  .mlb-products .product-grid,.mlb-products .product-grid.cols-2,.mlb-products .product-grid.cols-3,.mlb-products .product-grid.cols-4{ grid-template-columns:1fr; }
  .mlb-portfolio .portfolio-masonry{ columns:1; }
  .before-after-section .ba-pair{ grid-template-columns:1fr 1fr; }
}

/* ============================================================
   CINEMATIC HERO (flagship) + dark glass trust pills + scroll reveal
   ============================================================ */
.mlb-hero-stats.hero-cinematic{ min-height:92vh; position:relative; overflow:hidden; padding:124px 0 84px; }
.mlb-hero-stats.hero-cinematic .container{ width:min(1180px,calc(100% - 48px)); }
.mlb-hero-stats.hero-cinematic .mlb-hero-single > div{ max-width:780px; }
.mlb-hero-stats.hero-cinematic .mlb-eyebrow{ display:inline-flex; align-items:center; gap:9px; font-size:12.5px; letter-spacing:.22em; text-transform:uppercase; font-weight:800; padding:8px 16px; border:1px solid rgba(255,255,255,.26); border-radius:999px; background:rgba(255,255,255,.06); color:#e8eef6!important; }
.mlb-hero-stats.hero-cinematic h1{ font-size:clamp(44px,6.4vw,82px)!important; line-height:.99!important; font-weight:900; letter-spacing:-.015em; margin:22px 0 0; text-shadow:0 2px 34px rgba(0,0,0,.5); }
.mlb-hero-stats.hero-cinematic .mlb-lead{ font-size:clamp(18px,1.5vw,22px); max-width:610px; margin-top:20px; color:#cdd8e6!important; }
.mlb-hero-stats.hero-cinematic .mlb-actions{ margin-top:32px; gap:14px; }
.mlb-hero-stats.hero-cinematic .mlb-actions .btn-yellow{ box-shadow:0 18px 44px rgba(245,158,11,.36); }
.mlb-hero-stats.hero-cinematic .btn-outline{ color:#fff; border-color:rgba(255,255,255,.55); background:rgba(255,255,255,.06); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
.mlb-hero-stats.hero-cinematic .btn-outline:hover{ background:rgba(255,255,255,.15); border-color:#fff; }
.mlb-hero-stats.hero-cinematic .container{ position:relative; z-index:2; }

/* Dark hero → elegant glass trust pills (beats the white-card rule via .mlb-dark specificity) */
.mlb-hero-stats.mlb-dark .hero-trust-badges{ gap:12px; margin-top:30px; }
.mlb-hero-stats.mlb-dark .hero-trust-badge{ background:rgba(255,255,255,.08)!important; border:1px solid rgba(255,255,255,.20)!important; color:#fff!important; box-shadow:none!important; border-radius:999px; padding:9px 17px 9px 11px; -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
.mlb-hero-stats.mlb-dark .hero-trust-badge b{ color:#fff!important; }
.mlb-hero-stats.mlb-dark .hero-trust-badge strong{ color:#ffffff!important; font-size:14px; }
.mlb-hero-stats.mlb-dark .hero-trust-badge small{ color:rgba(255,255,255,.72)!important; }
.mlb-hero-stats.mlb-dark .hero-trust-badge .trust-icon-mark{ background:rgba(255,255,255,.16)!important; color:#ffffff!important; }

/* Scroll reveal — sections fade/slide up as they enter view. Gated by .reveal-init (added by JS)
   so content is always visible without JS, and disabled entirely under reduced-motion. */
@media (prefers-reduced-motion: no-preference){
  body.reveal-init [data-reveal]{ opacity:0; transform:translateY(28px); transition:opacity .75s cubic-bezier(.2,.7,.2,1), transform .75s cubic-bezier(.2,.7,.2,1); will-change:opacity,transform; }
  body.reveal-init [data-reveal].in-view{ opacity:1; transform:none; }
}

/* ============================================================
   MOTION LAYER (§14) — reusable data-animate variants (Rich tier).
   Opt-in: markup adds data-animate="fade-up|fade|fade-left|fade-right|zoom-in|stagger".
   Transforms+opacity ONLY (no CLS/jank); gated by .motion-init (JS) + reduced-motion.
   Content is fully visible without JS or under reduced-motion.
   ============================================================ */
@media (prefers-reduced-motion: no-preference){
  /* springy expo-out easing ("Framer" feel) */
  body.motion-init [data-animate]{ opacity:0; transition:opacity .8s cubic-bezier(.16,1,.3,1), transform .8s cubic-bezier(.16,1,.3,1), filter .8s cubic-bezier(.16,1,.3,1); will-change:opacity,transform; }
  body.motion-init [data-animate="fade-up"]{ transform:translateY(30px) scale(.985); }
  body.motion-init [data-animate="fade-down"]{ transform:translateY(-30px); }
  body.motion-init [data-animate="fade-left"]{ transform:translateX(30px); }
  body.motion-init [data-animate="fade-right"]{ transform:translateX(-30px); }
  body.motion-init [data-animate="zoom-in"]{ transform:scale(.92); }
  body.motion-init [data-animate="blur-in"]{ transform:translateY(18px); filter:blur(10px); }
  /* rotate-in: FlowArt-lite — section swings up from a slight tilt (vanilla port, no GSAP pinning) */
  body.motion-init [data-animate="rotate-in"]{ transform:translateY(46px) rotate(-3.2deg) scale(.965); transform-origin:bottom left; }
  body.motion-init [data-animate="fade"]{ transform:none; }
  /* stagger: the container fades, its children animate up with JS-set transition-delay */
  body.motion-init [data-animate="stagger"]{ opacity:1; }
  body.motion-init [data-animate="stagger"] > *{ opacity:0; transform:translateY(24px) scale(.985); transition:opacity .65s cubic-bezier(.16,1,.3,1), transform .65s cubic-bezier(.16,1,.3,1); will-change:opacity,transform; }
  body.motion-init [data-animate].in-motion,
  body.motion-init [data-animate="stagger"] > .in-motion{ opacity:1; transform:none; filter:none; }
}

/* Word-by-word blur-in headline (Rich) — motion.js splits [data-words] into .w-anim spans, each
   with an incremental animation-delay. Ported from the 21st.dev AnimatedHero/DigitalSerenity
   word-appear effect. Reduced-motion gated; without JS the text is plain + fully visible. */
@media (prefers-reduced-motion: no-preference){
  body.motion-init [data-words] .w-anim{ display:inline-block; opacity:0; animation:ge-word-appear .75s cubic-bezier(.16,1,.3,1) both; will-change:opacity,transform,filter; }
  /* a word-animated headline shouldn't ALSO be block-faded by the parent stagger */
  body.motion-init [data-animate="stagger"] > h1[data-words]{ opacity:1 !important; transform:none !important; }
}
@keyframes ge-word-appear{ 0%{ opacity:0; transform:translateY(20px) scale(.96); filter:blur(8px); } 55%{ opacity:.85; filter:blur(1px); } 100%{ opacity:1; transform:none; filter:none; } }

/* Typewriter reveal (Rich, opt-in: data-animate="type") — smooth left-to-right wipe via clip-path
   (GPU-composited, NO width reflow → no CLS) + a blinking caret. Ported from the Aceternity
   TypewriterEffectSmooth. Types when scrolled into view (motion.js adds .in-motion). */
@media (prefers-reduced-motion: no-preference){
  body.motion-init [data-animate="type"]{ opacity:1; transform:none; white-space:nowrap; overflow:hidden; clip-path:inset(0 100% 0 0); transition:clip-path 1.5s steps(38,end); }
  body.motion-init [data-animate="type"].in-motion{ clip-path:inset(0 0 0 0); }
  body.motion-init [data-animate="type"]::after{ content:""; display:inline-block; width:.5ch; height:1em; margin-left:3px; vertical-align:-.12em; background:var(--primary,#2b7de9); animation:ge-caret .85s steps(1) infinite; }
}
@keyframes ge-caret{ 50%{ opacity:0; } }

/* CTA pointer-arrow canvas — full-viewport, click-through; sits above section content but below
   nav/sticky/popups. Desktop-only + reduced-motion handled in cta-arrow.js. */
.cta-arrow-canvas{ position:fixed; inset:0; width:100%; height:100%; pointer-events:none; z-index:6; }

/* §20 cookie-consent banner — themed light card (dark card on dark themes), contrast-safe,
   accessible. Hidden until JS adds .show (no consent stored). */
.cookie-consent{ position:fixed; left:16px; right:16px; bottom:16px; z-index:70; max-width:560px; margin:0 auto; display:none;
  background:var(--card-bg,#ffffff); color:var(--text,#0f172a); border:1px solid color-mix(in srgb,var(--text,#0f172a) 14%,transparent);
  border-radius:14px; box-shadow:0 18px 50px rgba(15,23,42,.24); padding:16px 18px; font-size:13.5px; line-height:1.5; }
.cookie-consent.show{ display:block; }
.cookie-consent p{ margin:0 0 12px; color:var(--text,#0f172a); }
/* Link color = the card's body text (contract-guaranteed AA vs --card-bg); branded underline only,
   so light/warm primaries can't fail contrast on the light card. */
.cookie-consent a{ color:inherit; text-decoration:underline; text-decoration-color:var(--primary,#2b7de9); text-underline-offset:2px; }
.cookie-consent-actions{ display:flex; gap:10px; flex-wrap:wrap; }
.cookie-consent .cc-btn{ border:0; border-radius:999px; padding:9px 20px; font-weight:800; font-size:13px; cursor:pointer; }
.cookie-consent .cc-accept{ background:var(--primary,#2b7de9); color:var(--buttonText,#ffffff); }
.cookie-consent .cc-decline{ background:transparent; color:var(--text,#0f172a); border:1px solid color-mix(in srgb,var(--text,#0f172a) 24%,transparent); }
.cookie-consent .cc-btn:focus-visible{ outline:3px solid color-mix(in srgb,var(--primary,#2b7de9) 45%,transparent); outline-offset:2px; }
body.theme-dark .cookie-consent,body.family-tech .cookie-consent,body.glass-mode .cookie-consent{ background:var(--card-bg,#141b2d); color:var(--text,#eaf0fb); }

/* §20 accessibility — skip-to-content link (visible only on keyboard focus) + global keyboard
   focus ring. focus-visible means mouse users never see the outline; keyboard users always do. */
.skip-link{ position:absolute; left:-9999px; top:0; z-index:200; background:var(--primary,#2b7de9); color:var(--buttonText,#fff); padding:10px 18px; border-radius:0 0 10px 0; font-weight:800; text-decoration:none; }
.skip-link:focus{ left:0; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{ outline:3px solid color-mix(in srgb,var(--primary,#2b7de9) 55%,transparent); outline-offset:2px; border-radius:4px; }

/* §20 footer legal links (Privacy / Terms) */
.footer-legal{ margin-top:14px; display:flex; gap:10px; align-items:center; flex-wrap:wrap; font-size:13px; opacity:.92; }
.footer-legal a{ color:inherit; text-decoration:underline; text-underline-offset:2px; }
.footer-legal a:hover{ opacity:.75; }

/* Image hover-zoom (Rich) — uses the independent `scale` property so it composes with the
   scroll-driven `translate` parallax below (they'd fight if both used `transform`). */
.zoom-on-hover{ overflow:hidden; }
.zoom-on-hover img{ transition:scale .55s cubic-bezier(.2,.7,.2,1); will-change:scale,translate; }
.zoom-on-hover:hover img{ scale:1.06; }
@media (prefers-reduced-motion:reduce){ .zoom-on-hover img,.zoom-on-hover:hover img{ transition:none; scale:none; } }

/* Scroll-driven image parallax (Rich, premium families) — native CSS scroll timeline, so there
   are NO scroll listeners and it runs on the compositor (zero main-thread / Lighthouse cost).
   Baseline scale 1.08 hides the frame edges as the image drifts. Degrades to static where the
   browser lacks scroll timelines, and off entirely under reduced-motion. */
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion: no-preference){
    body.family-luxury .zoom-on-hover img,
    body.family-tech .zoom-on-hover img,
    body.family-bold .zoom-on-hover img,
    body.family-visual .zoom-on-hover img{ scale:1.08; animation:ge-img-parallax linear both; animation-timeline:view(); animation-range:entry 0% exit 100%; }
  }
}
@keyframes ge-img-parallax{ from{ translate:0 -7%; } to{ translate:0 7%; } }

/* ============================================================
   ANIMATED HERO BACKDROP — Dark Tech only (the 21st.dev SaaS look ported to CSS).
   A masked grid + a slow drifting primary glow, BEHIND the hero content (z-index). Pure CSS,
   GPU opacity/transform only, reduced-motion gated, no JS. Won't touch contrast: the dark overlay
   + white content sit above (z-index:2).
   ============================================================ */
body.family-tech .hero{ position:relative; isolation:isolate; }
body.family-tech .hero .hero-inner{ position:relative; z-index:2; }
body.family-tech .hero::before{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background-image:linear-gradient(rgba(125,211,252,.085) 1px,transparent 1px),linear-gradient(90deg,rgba(125,211,252,.085) 1px,transparent 1px);
  background-size:48px 48px;
  -webkit-mask-image:radial-gradient(ellipse 72% 64% at 28% 42%,#000 0%,transparent 76%); mask-image:radial-gradient(ellipse 72% 64% at 28% 42%,#000 0%,transparent 76%); }
body.family-tech .hero::after{ content:""; position:absolute; z-index:1; pointer-events:none; width:62vmax; height:62vmax; left:-12vmax; top:-24vmax; border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--primary,#22d3ee) 50%,transparent),transparent 62%); filter:blur(44px); opacity:.45; }
@media (prefers-reduced-motion: no-preference){
  body.family-tech .hero::after{ animation:ge-hero-glow 16s ease-in-out infinite alternate; will-change:transform; }
}
@keyframes ge-hero-glow{ from{ transform:translate(0,0) scale(1); } to{ transform:translate(15vmax,9vmax) scale(1.28); } }

/* ============================================================
   SHINE BORDER — 21st.dev animated gradient border ported to CSS, on the featured pricing tier.
   A rotating conic beam travels the border; a card-bg inset masks the center to a thin ring.
   GPU transform only, reduced-motion gated. Theme-safe (uses --primary/--accent/--card-bg).
   ============================================================ */
.pricing-card.is-featured{ position:relative; z-index:0; overflow:hidden; }
.pricing-card.is-featured::before{ content:""; position:absolute; z-index:-2; left:50%; top:50%; width:230%; height:230%; translate:-50% -50%;
  background:conic-gradient(from 0deg, transparent 0 58%, color-mix(in srgb,var(--primary,#2b7de9) 85%,#fff) 72%, var(--accent,#f59e0b) 84%, transparent 100%); }
.pricing-card.is-featured::after{ content:""; position:absolute; z-index:-1; inset:2px; border-radius:inherit; background:var(--card-bg,#ffffff); }
body.theme-dark .pricing-card.is-featured::after,body.family-tech .pricing-card.is-featured::after{ background:var(--card-bg,#141b2d); }
@media (prefers-reduced-motion: no-preference){
  .pricing-card.is-featured::before{ animation:ge-shine-rotate 5s linear infinite; will-change:transform; }
}
@keyframes ge-shine-rotate{ to{ rotate:1turn; } }

/* Logo marquee (Rich) — seamless horizontal scroll; JS clones the track for the loop. */
.marquee{ overflow:hidden; position:relative; -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.marquee .marquee-track{ display:flex; align-items:center; gap:54px; width:max-content; }
@media (prefers-reduced-motion: no-preference){
  .marquee[data-marquee] .marquee-track{ animation:ge-marquee var(--marquee-speed,32s) linear infinite; }
  .marquee[data-marquee]:hover .marquee-track{ animation-play-state:paused; }
}
@keyframes ge-marquee{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

/* ============================================================
   STAT BAND (kpi_counter / capability_metrics) — clean count-up band
   Overrides the legacy yellow .stats-grid divider; numbers animate via .kpi-num.
   ============================================================ */
.capability-metrics-section{ padding:58px 0 !important; background:var(--section-bg,#ffffff); border-top:1px solid color-mix(in srgb,var(--primary,#2b7de9) 12%,transparent); border-bottom:1px solid color-mix(in srgb,var(--primary,#2b7de9) 12%,transparent); }
.capability-metrics-section .stats-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:0; max-width:1080px; margin:0 auto; }
.capability-metrics-section .stats-grid > div{ text-align:center; padding:6px 24px !important; border-right:1px solid color-mix(in srgb,var(--primary,#2b7de9) 14%,transparent) !important; }
.capability-metrics-section .stats-grid > div:last-child{ border-right:0 !important; }
.capability-metrics-section .kpi-num{ display:block; font-size:clamp(36px,4vw,54px); font-weight:900; line-height:1; letter-spacing:-.02em; color:var(--text,#0f172a) !important; font-variant-numeric:tabular-nums; }
.capability-metrics-section .stats-grid span{ display:block; margin-top:12px; font-size:13.5px; font-weight:650; color:var(--muted-text,#64748b) !important; text-transform:none !important; letter-spacing:.01em; line-height:1.35; }
@media(max-width:760px){ .capability-metrics-section .stats-grid{ grid-template-columns:repeat(2,1fr); gap:30px 0; } .capability-metrics-section .stats-grid > div:nth-child(2){ border-right:0 !important; } }

/* ============================================================
   STICKY CTA BAR (scroll-triggered) + extra hover polish
   ============================================================ */
.sticky-bar.sticky-cta{ transform:translateY(130%); transition:transform .42s cubic-bezier(.2,.7,.2,1); background:#0f172a !important; box-shadow:0 -10px 34px rgba(0,0,0,.30); padding:0 !important; }
/* §18: auto click-to-call bar is mobile/tablet only (explicit sticky_bar_json shows on all sizes) */
@media(min-width:861px){ .sticky-bar.sticky-cta.sticky-auto{ display:none !important; } }
.sticky-bar.sticky-cta.show{ transform:translateY(0); }
.sticky-cta .sticky-cta-inner{ width:94%; max-width:1180px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:12px 0; }
.sticky-cta .sticky-cta-text{ color:#e8eef6; font-weight:700; font-size:15px; letter-spacing:.01em; }
.sticky-cta .sticky-cta-actions{ display:flex; align-items:center; gap:12px; flex:0 0 auto; }
.sticky-cta .sticky-cta-call{ display:inline-flex; align-items:center; gap:8px; background:transparent !important; color:#ffffff !important; font-weight:800; text-decoration:none; border:1px solid rgba(255,255,255,.32); padding:11px 18px; border-radius:999px; transition:background .2s ease; }
.sticky-cta .sticky-cta-call:hover{ background:rgba(255,255,255,.10) !important; }
.sticky-cta .sticky-cta-btn{ background:#f59e0b !important; color:#111827 !important; font-weight:900; text-decoration:none; padding:12px 24px; border-radius:999px; box-shadow:0 10px 26px rgba(245,158,11,.32); transition:transform .18s ease, box-shadow .18s ease; }
.sticky-cta .sticky-cta-btn:hover{ transform:translateY(-2px); box-shadow:0 16px 34px rgba(245,158,11,.42); }
@media(max-width:680px){ .sticky-cta .sticky-cta-text{ display:none; } .sticky-cta .sticky-cta-inner{ justify-content:center; padding:10px 0; } .sticky-cta .sticky-cta-call,.sticky-cta .sticky-cta-btn{ flex:1 1 50%; justify-content:center; text-align:center; } }

/* Hover polish: timeline steps lift like the cards/reviews already do */
.timeline-item{ transition:transform .25s ease, box-shadow .25s ease; }
.timeline-item:hover{ transform:translateY(-5px); box-shadow:0 22px 46px rgba(15,23,42,.10); }

/* ============================================================
   ACCENT POPS — distributed brand-amber touches (contrast-safe).
   Text amber is darkened via color-mix so it still clears WCAG AA on light;
   decorative fills (chips, dots, ticks) use the full bright accent.
   ============================================================ */
.mlb.mlb-theme-auto .mlb-eyebrow,
.image-split .is-eyebrow,
.mlb-gallery .mlb-eyebrow{ color:color-mix(in srgb,var(--accent,#f59e0b) 58%,#000) !important; }
/* timeline step number → bright amber chip */
.timeline-section .timeline-label{ display:inline-flex; align-items:center; justify-content:center; min-width:48px; height:48px; padding:0 12px; border-radius:13px; background:var(--accent,#f59e0b); color:#111827; font-size:19px; box-shadow:0 10px 24px color-mix(in srgb,var(--accent,#f59e0b) 36%,transparent); }
/* FAQ toggle "+" in amber */
.section details>summary::after,details>summary::after{ color:color-mix(in srgb,var(--accent,#f59e0b) 56%,#000) !important; }
/* stat band: small amber tick under each number */
.capability-metrics-section .kpi-num{ position:relative; padding-bottom:15px; }
.capability-metrics-section .kpi-num::after{ content:""; position:absolute; left:50%; bottom:0; transform:translateX(-50%); width:30px; height:3px; border-radius:9px; background:var(--accent,#f59e0b); }

/* §12 footer social icons — contrast-safe (inherits footer text color), theme-accent on hover */
.footer-social{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px;align-items:center}
.footer-social-link{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;color:inherit;border:1px solid currentColor;opacity:.85;transition:transform .16s ease,opacity .16s ease,background-color .16s ease,color .16s ease}
.footer-social-link:hover{opacity:1;transform:translateY(-2px);background:var(--footer-social-accent,var(--primary,#2563eb));border-color:var(--footer-social-accent,var(--primary,#2563eb));color:#fff}
@media (prefers-reduced-motion:reduce){.footer-social-link{transition:none}.footer-social-link:hover{transform:none}}

/* ============================================================================
   $10K DESIGN POLISH (the 8-point checklist). Additive only — sizes, spacing,
   motion, and mobile composition. NO color/background changes, so the WCAG-AA
   contrast contract (§9) is untouched. Scoped to the public page shell.
   ============================================================================ */
/* 02/04 — Confident fluid type scale + breathing hierarchy. Big, chosen headlines. */
.site-page-shell .mlb-hero-copy h1,.site-page-shell .hero h1,.site-page-shell .hero-content h1{
  font-size:clamp(2.3rem,1.4rem + 3.4vw,4.6rem);line-height:1.04;letter-spacing:-.02em;font-weight:800;text-wrap:balance}
.site-page-shell .section h2,.site-page-shell .mlb h2,.site-page-shell .image-band .ib-title{
  font-size:clamp(1.7rem,1.1rem + 1.9vw,2.9rem);line-height:1.1;letter-spacing:-.015em;text-wrap:balance}
.site-page-shell .mlb-lead,.site-page-shell .hero p,.site-page-shell .section-intro,.site-page-shell .mlb-intro{
  font-size:clamp(1.02rem,.97rem + .35vw,1.22rem);line-height:1.6;max-width:62ch;text-wrap:pretty}
.site-page-shell h3{letter-spacing:-.01em}
/* 04 — let sections breathe (floor on vertical rhythm without overriding family spacing) */
.site-page-shell .section,.site-page-shell .mlb{padding-top:max(var(--section-spacing,88px),64px);padding-bottom:max(var(--section-spacing,88px),64px)}
/* 06 — micro-interactions that whisper (transform/opacity only; reduced-motion-safe) */
.site-page-shell .btn{transition:transform .18s cubic-bezier(.2,.7,.3,1),box-shadow .18s ease,filter .18s ease}
.site-page-shell .btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(15,23,42,.16);filter:saturate(1.06)}
.site-page-shell .btn:active{transform:translateY(0)}
.site-page-shell .mlb-card,.site-page-shell .photo-cell,.site-page-shell .pricing-card,.site-page-shell .product-card,.site-page-shell .listing-card,.site-page-shell .rv-card{transition:transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s ease}
.site-page-shell .mlb-card:hover,.site-page-shell .pricing-card:hover,.site-page-shell .product-card:hover,.site-page-shell .listing-card:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(15,23,42,.14)}
.site-page-shell .photo-cell img{transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.site-page-shell .photo-cell:hover img{transform:scale(1.045)}
.site-page-shell .learn-link,.site-page-shell .is-body a{background-image:linear-gradient(currentColor,currentColor);background-size:0% 1.5px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .25s ease}
.site-page-shell .learn-link:hover,.site-page-shell .is-body a:hover{background-size:100% 1.5px}
/* 05/08 — hero text legibility over photography (no color change; shadow only) */
.site-page-shell .hero h1,.site-page-shell .mlb-hero-copy h1,.site-page-shell .image-band .ib-title,.site-page-shell .image-band .ib-text{text-shadow:0 1px 24px rgba(0,0,0,.28)}
/* 07 — mobile DESIGNED, not shrunk: real composition decisions for phones */
@media (max-width:640px){
  .site-page-shell .mlb-hero-copy h1,.site-page-shell .hero h1,.site-page-shell .hero-content h1{font-size:clamp(2rem,1.3rem + 5vw,2.7rem);line-height:1.08}
  .site-page-shell .section,.site-page-shell .mlb{padding-top:48px;padding-bottom:48px}
  .site-page-shell .mlb-card-grid,.site-page-shell .photo-grid,.site-page-shell .pricing-grid,.site-page-shell .product-grid,.site-page-shell .listing-grid,.site-page-shell .schedule-grid,.site-page-shell .rv-grid,.site-page-shell .timeline-grid,.site-page-shell .mlb-split-grid,.site-page-shell .image-split-grid,.site-page-shell .mlb-hero-grid{grid-template-columns:1fr!important}
  .site-page-shell .image-split .is-media{order:-1}
  .site-page-shell .btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box}
  .site-page-shell .hero-actions,.site-page-shell .mlb-actions{display:grid;gap:10px}
  .site-page-shell .container{padding-left:18px;padding-right:18px}
}

/* impact_metrics — expanding proof/case-study accordion (vanilla port of 21st.dev ImpactSection) */
.mlb-impact .impact-row{display:flex;gap:14px;margin-top:26px}
.mlb-impact .impact-card{flex:1;min-width:0;position:relative;overflow:hidden;border-radius:18px;background:var(--mlb-card,#fff);border:1px solid rgba(0,0,0,.08);min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;transition:flex .45s cubic-bezier(.2,.7,.3,1);cursor:pointer;outline:none}
.mlb-impact .impact-card.is-open{flex:3.2}
.mlb-impact .impact-row:hover .impact-card{flex:.85}
.mlb-impact .impact-row:hover .impact-card:hover,.mlb-impact .impact-card:focus-visible{flex:3.2}
.mlb-impact .impact-media{position:absolute;inset:0;opacity:0;transition:opacity .45s ease}
.mlb-impact .impact-media img{width:100%;height:100%;object-fit:cover}
.mlb-impact .impact-card.is-open .impact-media,.mlb-impact .impact-card:hover .impact-media,.mlb-impact .impact-card:focus-visible .impact-media{opacity:.16}
.mlb-impact .impact-body{position:relative;padding:22px 24px}
.mlb-impact .impact-metric{font-size:clamp(2.2rem,1.5rem + 2vw,3.6rem);font-weight:800;line-height:1;color:var(--mlb-accent)}
.mlb-impact .impact-label{margin-top:8px;font-weight:800;color:var(--mlb-title);text-transform:uppercase;letter-spacing:.08em;font-size:12px}
.mlb-impact .impact-text{margin-top:12px;color:var(--mlb-body);font-size:14.5px;line-height:1.55;opacity:0;max-height:0;overflow:hidden;transition:opacity .4s ease,max-height .4s ease}
.mlb-impact .impact-card.is-open .impact-text,.mlb-impact .impact-card:hover .impact-text,.mlb-impact .impact-card:focus-visible .impact-text{opacity:1;max-height:220px}
@media (max-width:640px){.mlb-impact .impact-row{flex-direction:column}.mlb-impact .impact-card,.mlb-impact .impact-card.is-open,.mlb-impact .impact-row:hover .impact-card{flex:1 1 auto;min-height:200px}.mlb-impact .impact-text{opacity:1;max-height:none}.mlb-impact .impact-media{opacity:.14}}

/* logo_marquee — seamless trust strip (motion.js clones .marquee-track) */
.mlb-marquee .lm-title{text-align:center;color:var(--mlb-body);text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;opacity:.7;margin-bottom:18px}
.logo-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.logo-marquee .marquee-track{display:flex;gap:56px;align-items:center;width:max-content;animation:lmScroll 38s linear infinite}
.logo-marquee:hover .marquee-track{animation-play-state:paused}
.lm-item{display:inline-flex;align-items:center;flex:0 0 auto;color:var(--mlb-title)}
.lm-item img{height:34px;width:auto;object-fit:contain;filter:grayscale(1);opacity:.8}
.lm-text{font-weight:800;font-size:20px;letter-spacing:.02em;text-transform:uppercase;opacity:.72}
@keyframes lmScroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.logo-marquee .marquee-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto}}

/* bento_grid — modern asymmetric feature grid (first tile featured 2x) */
.mlb-bento .bento-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:200px;gap:16px;margin-top:26px}
.mlb-bento .bento-tile{position:relative;overflow:hidden;border-radius:18px;background:var(--mlb-card,#fff);border:1px solid rgba(0,0,0,.08);background-size:cover;background-position:center;display:flex;align-items:flex-end;transition:transform .22s ease,box-shadow .22s ease}
.mlb-bento .bento-tile:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(15,23,42,.14)}
.mlb-bento .bento-feature{grid-column:span 2;grid-row:span 2}
.mlb-bento .bento-tile.has-media h3,.mlb-bento .bento-tile.has-media p{color:#fff}
.mlb-bento .bento-body{position:relative;padding:22px}
.mlb-bento .bento-icon{font-size:26px;margin-bottom:8px;line-height:1}
.mlb-bento .bento-tile h3{color:var(--mlb-title);font-size:20px;margin:0 0 6px;line-height:1.15}
.mlb-bento .bento-tile p{color:var(--mlb-body);font-size:14px;margin:0;line-height:1.5}
@media (max-width:860px){.mlb-bento .bento-grid{grid-template-columns:1fr 1fr}.mlb-bento .bento-feature{grid-column:span 2;grid-row:span 1}}
@media (max-width:640px){.mlb-bento .bento-grid{grid-template-columns:1fr;grid-auto-rows:auto}.mlb-bento .bento-tile{min-height:170px}.mlb-bento .bento-feature{grid-column:span 1}}
/* bento spans + per-tile link (21st.dev asymmetric upgrade) */
.mlb-bento .bento-wide{grid-column:span 2}
.mlb-bento .bento-tall{grid-row:span 2}
.mlb-bento .bento-clickable{cursor:pointer}
.mlb-bento .bento-link{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-weight:800;font-size:13px;letter-spacing:.02em;color:var(--mlb-accent);text-decoration:none}
.mlb-bento .bento-link::after{content:'';position:absolute;inset:0;z-index:1}/* stretched link → whole card clickable */
.mlb-bento .bento-tile.has-media .bento-link{color:#fff}
.mlb-bento .bento-tile:hover .bento-link span[aria-hidden]{transform:translateX(4px)}
.mlb-bento .bento-link span[aria-hidden]{transition:transform .22s ease}
@media (max-width:860px){.mlb-bento .bento-wide,.mlb-bento .bento-tall{grid-column:span 2;grid-row:span 1}}
@media (max-width:640px){.mlb-bento .bento-wide,.mlb-bento .bento-tall{grid-column:span 1}}

/* ============ 21st.dev-inspired WOW blocks ============ */
/* glow_hero — dark premium hero with a cursor-tracked radial glow + faint grid. */
.glow-hero{position:relative;overflow:hidden;padding:clamp(72px,11vw,150px) 0 clamp(56px,8vw,110px);isolation:isolate}
.glow-hero-orb{position:absolute;top:var(--gy,30%);left:var(--gx,50%);width:60vw;max-width:760px;aspect-ratio:1;transform:translate(-50%,-50%);background:radial-gradient(circle,color-mix(in srgb,var(--gh-accent) 55%,transparent),transparent 62%);filter:blur(40px);opacity:.5;pointer-events:none;z-index:-1;transition:top .25s ease,left .25s ease}
.glow-hero-grid{position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.18;background-image:linear-gradient(color-mix(in srgb,var(--gh-body) 30%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--gh-body) 30%,transparent) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 35%,#000,transparent 80%);mask-image:radial-gradient(ellipse 70% 60% at 50% 35%,#000,transparent 80%)}
.glow-hero-inner{position:relative;text-align:center;max-width:880px}
.glow-hero-eyebrow{display:inline-block;padding:7px 16px;border-radius:999px;border:1px solid color-mix(in srgb,var(--gh-accent) 45%,transparent);background:color-mix(in srgb,var(--gh-accent) 12%,transparent);color:var(--gh-accent);font-weight:800;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:22px}
.glow-hero-title{color:var(--gh-title);font-size:clamp(2.4rem,1.4rem + 4.6vw,5rem);line-height:1.02;letter-spacing:-.02em;margin:0 0 20px;font-weight:800}
.glow-hero-sub{color:var(--gh-body);font-size:clamp(1.05rem,.95rem + .6vw,1.3rem);line-height:1.6;max-width:620px;margin:0 auto 30px}
.glow-hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.glow-hero .btn-glow-ghost{background:transparent;color:var(--gh-title);border:1px solid color-mix(in srgb,var(--gh-body) 45%,transparent)}
.glow-hero .btn-glow-ghost:hover{border-color:var(--gh-accent);color:var(--gh-accent)}
.glow-hero-media{margin-top:46px;border-radius:18px;overflow:hidden;border:1px solid color-mix(in srgb,var(--gh-body) 22%,transparent);box-shadow:0 40px 90px rgba(0,0,0,.5)}
.glow-hero-media img{display:block;width:100%;height:auto}
@media (max-width:640px){.glow-hero-actions .btn{width:100%}}

/* testimonial_marquee — two opposing scrolling rows of review cards. */
.mlb-tm .tm-rows{margin-top:30px;display:flex;flex-direction:column;gap:20px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.mlb-tm .tm-row{overflow:hidden}
.mlb-tm .tm-row .marquee-track{display:flex;gap:20px;width:max-content;align-items:stretch}
@media (prefers-reduced-motion:no-preference){.mlb-tm .tm-row[data-marquee] .marquee-track{animation:lmScroll 52s linear infinite}.mlb-tm .tm-row-rev[data-marquee] .marquee-track{animation-direction:reverse}.mlb-tm .tm-rows:hover .marquee-track{animation-play-state:paused}}
@media (prefers-reduced-motion:reduce){.mlb-tm .tm-rows{flex-wrap:nowrap;overflow-x:auto}.mlb-tm .tm-row .marquee-track{animation:none}}
.mlb-tm .tm-card{flex:0 0 360px;max-width:360px;background:var(--mlb-card,#fff);border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:22px 24px;display:flex;flex-direction:column;gap:14px;box-shadow:0 10px 30px rgba(15,23,42,.06)}
.mlb-tm .tm-stars{color:#f5a623;letter-spacing:2px;font-size:15px}
.mlb-tm .tm-quote{margin:0;color:var(--mlb-body);font-size:15px;line-height:1.6}
.mlb-tm .tm-cap{display:flex;align-items:center;gap:12px;margin-top:auto}
.mlb-tm .tm-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:0 0 42px}
.mlb-tm .tm-avatar-ph{display:flex;align-items:center;justify-content:center;background:var(--mlb-accent);color:#fff;font-weight:800}
.mlb-tm .tm-meta{display:flex;flex-direction:column;line-height:1.25}
.mlb-tm .tm-name{font-weight:800;color:var(--mlb-title);font-size:14px}
.mlb-tm .tm-role{color:var(--mlb-body);opacity:.75;font-size:12.5px}
@media (max-width:640px){.mlb-tm .tm-card{flex-basis:300px;max-width:300px}}

/* comparison_slider — draggable before/after reveal. */
.mlb-compare .compare-stage{position:relative;margin-top:26px;border-radius:18px;overflow:hidden;aspect-ratio:16/9;background:#0b0f17;box-shadow:0 24px 60px rgba(15,23,42,.16);user-select:none;touch-action:pan-y}
.mlb-compare .compare-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.mlb-compare .compare-before-wrap{position:absolute;inset:0;width:var(--cmp,50%);overflow:hidden;border-right:3px solid #fff}
.mlb-compare .compare-before-wrap .compare-before{width:100vw;max-width:none;height:100%}
.mlb-compare .compare-tag{position:absolute;top:14px;padding:5px 12px;border-radius:999px;background:rgba(8,12,20,.7);color:#fff;font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(4px)}
.mlb-compare .compare-tag-before{left:14px}
.mlb-compare .compare-tag-after{right:14px}
.mlb-compare .compare-handle{position:absolute;top:0;bottom:0;left:var(--cmp,50%);transform:translateX(-50%);width:3px;background:#fff;pointer-events:none;display:flex;align-items:center;justify-content:center}
.mlb-compare .compare-handle-knob{position:absolute;width:44px;height:44px;border-radius:50%;background:#fff;color:#0b0f17;display:flex;align-items:center;justify-content:center;font-size:17px;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.mlb-compare .compare-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}
.mlb-compare .compare-before-wrap{will-change:width}

/* feature_tabs — pure-CSS radio tabs (up to 6). */
.mlb-tabs .ft-radio{position:absolute;opacity:0;pointer-events:none}
.mlb-tabs .ft-wrap{margin-top:28px}
.mlb-tabs .ft-tablist{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:26px}
.mlb-tabs .ft-tab{padding:10px 20px;border-radius:999px;border:1px solid rgba(0,0,0,.12);background:var(--mlb-card,#fff);color:var(--mlb-body);font-weight:700;font-size:14px;cursor:pointer;transition:all .2s ease}
.mlb-tabs .ft-tab:hover{border-color:var(--mlb-accent)}
.mlb-tabs .ft-panels{position:relative}
.mlb-tabs .ft-panel{display:none;grid-template-columns:1fr 1fr;gap:36px;align-items:center;animation:ftFade .4s ease}
@keyframes ftFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.mlb-tabs .ft-panel-text h3{color:var(--mlb-title);font-size:clamp(1.4rem,1.1rem + 1vw,2rem);margin:0 0 12px;line-height:1.15}
.mlb-tabs .ft-panel-text p{color:var(--mlb-body);font-size:16px;line-height:1.65;margin:0 0 16px}
.mlb-tabs .ft-bullets{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-direction:column;gap:10px}
.mlb-tabs .ft-bullets li{position:relative;padding-left:28px;color:var(--mlb-body);line-height:1.5}
.mlb-tabs .ft-bullets li::before{content:'✓';position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:color-mix(in srgb,var(--mlb-accent) 18%,transparent);color:var(--mlb-accent);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}
.mlb-tabs .ft-panel-media img{width:100%;border-radius:16px;box-shadow:0 20px 50px rgba(15,23,42,.14);display:block}
.mlb-tabs .ft-radio:nth-of-type(1):checked~.ft-tablist .ft-tab:nth-child(1),.mlb-tabs .ft-radio:nth-of-type(2):checked~.ft-tablist .ft-tab:nth-child(2),.mlb-tabs .ft-radio:nth-of-type(3):checked~.ft-tablist .ft-tab:nth-child(3),.mlb-tabs .ft-radio:nth-of-type(4):checked~.ft-tablist .ft-tab:nth-child(4),.mlb-tabs .ft-radio:nth-of-type(5):checked~.ft-tablist .ft-tab:nth-child(5),.mlb-tabs .ft-radio:nth-of-type(6):checked~.ft-tablist .ft-tab:nth-child(6){background:var(--mlb-accent);border-color:var(--mlb-accent);color:#fff}
.mlb-tabs .ft-radio:nth-of-type(1):checked~.ft-panels .ft-panel:nth-child(1),.mlb-tabs .ft-radio:nth-of-type(2):checked~.ft-panels .ft-panel:nth-child(2),.mlb-tabs .ft-radio:nth-of-type(3):checked~.ft-panels .ft-panel:nth-child(3),.mlb-tabs .ft-radio:nth-of-type(4):checked~.ft-panels .ft-panel:nth-child(4),.mlb-tabs .ft-radio:nth-of-type(5):checked~.ft-panels .ft-panel:nth-child(5),.mlb-tabs .ft-radio:nth-of-type(6):checked~.ft-panels .ft-panel:nth-child(6){display:grid}
@media (max-width:760px){.mlb-tabs .ft-panel{grid-template-columns:1fr;gap:20px}.mlb-tabs .ft-panel-media{order:-1}}

/* gradient_cta — animated-gradient closing band, white text (AA over dark gradient). */
.mlb-gcta{position:relative;overflow:hidden;padding:clamp(60px,9vw,120px) 0;text-align:center;isolation:isolate}
.mlb-gcta .gcta-bg{position:absolute;inset:-30%;z-index:-1;background:linear-gradient(120deg,var(--gc1),var(--gc2),var(--gc3),var(--gc1));background-size:300% 300%;filter:saturate(1.1)}
.mlb-gcta::after{content:'';position:absolute;inset:0;z-index:-1;background:rgba(8,10,20,.28)}
@media (prefers-reduced-motion:no-preference){.mlb-gcta .gcta-bg{animation:gctaShift 14s ease infinite}}
@keyframes gctaShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.mlb-gcta .gcta-inner{position:relative;max-width:760px}
.mlb-gcta .gcta-eyebrow{display:inline-block;padding:6px 16px;border-radius:999px;background:rgba(255,255,255,.16);color:#fff;font-weight:800;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px;backdrop-filter:blur(4px)}
.mlb-gcta .gcta-title{color:#fff;font-size:clamp(2rem,1.3rem + 3vw,3.6rem);line-height:1.05;letter-spacing:-.02em;margin:0 0 16px;text-shadow:0 2px 24px rgba(0,0,0,.25)}
.mlb-gcta .gcta-sub{color:rgba(255,255,255,.92);font-size:clamp(1.05rem,.95rem + .5vw,1.25rem);line-height:1.6;margin:0 auto 28px;max-width:560px}
.mlb-gcta .gcta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.mlb-gcta .btn-glow-light{background:#fff;color:#10131f;box-shadow:0 10px 34px rgba(0,0,0,.28)}
.mlb-gcta .btn-glow-light:hover{transform:translateY(-2px)}
.mlb-gcta .btn-outline-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.6)}
.mlb-gcta .btn-outline-light:hover{background:rgba(255,255,255,.12)}
@media (max-width:640px){.mlb-gcta .gcta-actions .btn{width:100%}}

/* sticky_feature_scroll — sticky media frame + scrolling steps (active step swaps the pinned image). */
.mlb-sfs .sfs-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:34px;align-items:start}
.mlb-sfs .sfs-media{position:sticky;top:90px;height:min(72vh,560px)}
.mlb-sfs .sfs-frame{position:relative;width:100%;height:100%;border-radius:20px;overflow:hidden;background:var(--mlb-card,#0b0f17);box-shadow:0 30px 70px rgba(15,23,42,.18)}
.mlb-sfs .sfs-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity .6s ease,transform .6s ease}
.mlb-sfs .sfs-img.is-active{opacity:1;transform:scale(1)}
.mlb-sfs .sfs-steps{display:flex;flex-direction:column;gap:clamp(40px,9vh,90px);padding:6vh 0}
.mlb-sfs .sfs-step{display:flex;gap:18px;opacity:.4;transition:opacity .4s ease}
.mlb-sfs .sfs-step.is-active{opacity:1}
.mlb-sfs .sfs-num{flex:0 0 auto;font-weight:800;font-size:14px;color:var(--mlb-accent);border:1px solid color-mix(in srgb,var(--mlb-accent) 40%,transparent);border-radius:999px;width:42px;height:42px;display:flex;align-items:center;justify-content:center}
.mlb-sfs .sfs-step.is-active .sfs-num{background:var(--mlb-accent);color:#fff}
.mlb-sfs .sfs-step-body h3{color:var(--mlb-title);font-size:clamp(1.3rem,1.05rem + 1vw,1.9rem);margin:6px 0 10px;line-height:1.15}
.mlb-sfs .sfs-step-body p{color:var(--mlb-body);font-size:16px;line-height:1.65;margin:0}
.mlb-sfs .sfs-step-media{display:none}
@media (max-width:860px){.mlb-sfs .sfs-grid{grid-template-columns:1fr;gap:0}.mlb-sfs .sfs-media{display:none}.mlb-sfs .sfs-steps{padding:10px 0;gap:34px}.mlb-sfs .sfs-step{opacity:1;flex-direction:column;gap:12px}.mlb-sfs .sfs-step-media{display:block;border-radius:14px;overflow:hidden}.mlb-sfs .sfs-step-media img{width:100%;display:block}}

/* ============ 21st.dev-inspired WOW blocks — batch 2 ============ */
/* stat_band — big count-up numbers. */
.mlb-statband .statband-head{text-align:center;max-width:720px;margin:0 auto}
.mlb-statband .statband-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:30px;margin-top:34px}
.mlb-statband .statband-item{text-align:center}
.mlb-statband .statband-num{font-size:clamp(2.6rem,1.6rem + 3vw,4.4rem);font-weight:800;line-height:1;color:var(--mlb-accent);letter-spacing:-.02em}
.mlb-statband .statband-label{margin-top:10px;font-weight:800;color:var(--mlb-title);text-transform:uppercase;letter-spacing:.06em;font-size:13px}
.mlb-statband .statband-text{margin-top:6px;color:var(--mlb-body);font-size:14px;opacity:.85}

/* pricing_cards — 3-tier with popular highlight. */
.mlb-pricing-cards .price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;margin-top:32px;align-items:stretch}
.mlb-pricing-cards .price-card{position:relative;background:var(--mlb-card,#fff);border:1px solid rgba(0,0,0,.1);border-radius:18px;padding:30px 26px;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(15,23,42,.06);transition:transform .22s ease,box-shadow .22s ease}
.mlb-pricing-cards .price-card:hover{transform:translateY(-4px);box-shadow:0 24px 54px rgba(15,23,42,.12)}
.mlb-pricing-cards .price-card.is-popular{border-color:var(--mlb-accent);box-shadow:0 24px 60px color-mix(in srgb,var(--mlb-accent) 26%,transparent);transform:scale(1.02)}
.mlb-pricing-cards .price-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--mlb-accent);color:#fff;font-weight:800;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;padding:6px 16px;border-radius:999px;white-space:nowrap}
.mlb-pricing-cards .price-name{color:var(--mlb-title);font-size:20px;margin:0 0 10px}
.mlb-pricing-cards .price-amt{display:flex;align-items:baseline;gap:6px;margin-bottom:6px}
.mlb-pricing-cards .price-value{font-size:clamp(2rem,1.5rem + 1.6vw,3rem);font-weight:800;color:var(--mlb-title);line-height:1}
.mlb-pricing-cards .price-period{color:var(--mlb-body);opacity:.7;font-size:14px;font-weight:600}
.mlb-pricing-cards .price-note{color:var(--mlb-body);opacity:.8;font-size:13.5px;margin:0 0 14px}
.mlb-pricing-cards .price-feats{list-style:none;padding:0;margin:14px 0 24px;display:flex;flex-direction:column;gap:11px}
.mlb-pricing-cards .price-feats li{position:relative;padding-left:28px;color:var(--mlb-body);font-size:14.5px;line-height:1.45}
.mlb-pricing-cards .price-feats li::before{content:'✓';position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:color-mix(in srgb,var(--mlb-accent) 18%,transparent);color:var(--mlb-accent);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}
.mlb-pricing-cards .price-btn{margin-top:auto;text-align:center}

/* faq_accordion — single-open animated (native details name group). */
.mlb-faq-accordion .fa-list{max-width:760px;margin:30px auto 0;display:flex;flex-direction:column;gap:12px}
.mlb-faq-accordion .fa-item{background:var(--mlb-card,#fff);border:1px solid rgba(0,0,0,.1);border-radius:14px;overflow:hidden}
.mlb-faq-accordion .fa-q{list-style:none;cursor:pointer;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-weight:700;color:var(--mlb-title);font-size:16px}
.mlb-faq-accordion .fa-q::-webkit-details-marker{display:none}
.mlb-faq-accordion .fa-icon{flex:0 0 auto;width:22px;height:22px;position:relative;transition:transform .3s ease}
.mlb-faq-accordion .fa-icon::before,.mlb-faq-accordion .fa-icon::after{content:'';position:absolute;background:var(--mlb-accent);border-radius:2px}
.mlb-faq-accordion .fa-icon::before{top:50%;left:2px;right:2px;height:2px;transform:translateY(-50%)}
.mlb-faq-accordion .fa-icon::after{left:50%;top:2px;bottom:2px;width:2px;transform:translateX(-50%);transition:transform .3s ease}
.mlb-faq-accordion .fa-item[open] .fa-icon::after{transform:translateX(-50%) scaleY(0)}
.mlb-faq-accordion .fa-a{padding:0 22px 20px;color:var(--mlb-body);line-height:1.65;font-size:15px}
@media (prefers-reduced-motion:no-preference){.mlb-faq-accordion .fa-item[open] .fa-a{animation:faOpen .35s ease}}
@keyframes faOpen{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* logo_cloud_animated — grayscale → color on hover. */
.mlb-logocloud .lc-title{text-align:center;color:var(--mlb-body);text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;opacity:.7;margin-bottom:24px}
.mlb-logocloud .lc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:18px;align-items:center}
.mlb-logocloud .lc-item{display:flex;align-items:center;justify-content:center;padding:18px 14px;border-radius:14px;background:color-mix(in srgb,var(--mlb-body) 5%,transparent);min-height:78px}
.mlb-logocloud .lc-item img{max-height:42px;max-width:100%;object-fit:contain;filter:grayscale(1);opacity:.65;transition:filter .3s ease,opacity .3s ease,transform .3s ease}
.mlb-logocloud .lc-item:hover img{filter:grayscale(0);opacity:1;transform:scale(1.05)}
.mlb-logocloud .lc-text{font-weight:800;letter-spacing:.04em;color:var(--mlb-body);opacity:.6;transition:opacity .3s ease,color .3s ease}
.mlb-logocloud .lc-item:hover .lc-text{opacity:1;color:var(--mlb-accent)}

/* hero_split_media — bright two-column hero. */
.mlb-hsm{padding:clamp(48px,7vw,92px) 0}
.mlb-hsm .hsm-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.mlb-hsm .hsm-title{color:var(--mlb-title);font-size:clamp(2.2rem,1.4rem + 3.6vw,4rem);line-height:1.05;letter-spacing:-.02em;margin:14px 0 18px;font-weight:800}
.mlb-hsm .hsm-sub{color:var(--mlb-body);font-size:clamp(1.05rem,.95rem + .5vw,1.25rem);line-height:1.6;margin:0 0 26px;max-width:520px}
.mlb-hsm .hsm-actions{display:flex;gap:14px;flex-wrap:wrap}
.mlb-hsm .hsm-note{margin-top:16px;color:var(--mlb-body);opacity:.75;font-size:13.5px}
.mlb-hsm .hsm-media img{width:100%;border-radius:20px;box-shadow:0 30px 70px rgba(15,23,42,.18);display:block}
@media (max-width:820px){.mlb-hsm .hsm-grid{grid-template-columns:1fr;gap:28px}.mlb-hsm .hsm-media{order:-1}.mlb-hsm .hsm-actions .btn{flex:1}}

/* process_timeline — vertical numbered steps with a connecting spine. */
.mlb-ptimeline .pt-list{max-width:760px;margin:32px auto 0;position:relative}
.mlb-ptimeline .pt-list::before{content:'';position:absolute;left:23px;top:12px;bottom:12px;width:2px;background:color-mix(in srgb,var(--mlb-accent) 30%,transparent)}
.mlb-ptimeline .pt-item{position:relative;display:flex;gap:22px;padding-bottom:30px}
.mlb-ptimeline .pt-item:last-child{padding-bottom:0}
.mlb-ptimeline .pt-marker{flex:0 0 auto;width:48px;height:48px;border-radius:50%;background:var(--mlb-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;z-index:1;box-shadow:0 0 0 6px var(--mlb-card,#fff)}
.mlb-ptimeline .pt-card{flex:1;background:var(--mlb-card,#fff);border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:18px 22px;box-shadow:0 8px 24px rgba(15,23,42,.06)}
.mlb-ptimeline .pt-card h3{color:var(--mlb-title);font-size:19px;margin:0 0 6px;line-height:1.2}
.mlb-ptimeline .pt-card p{color:var(--mlb-body);font-size:15px;line-height:1.6;margin:0}

/* ============ Animated-background heroes (vanilla ports of 21st.dev React components) ============ */
/* aurora_hero — CSS-only animated aurora gradient (port of Aurora Background). */
.aurora-hero{position:relative;overflow:hidden;min-height:78vh;display:flex;align-items:center;justify-content:center;padding:clamp(64px,10vw,140px) 0;isolation:isolate}
.aurora-hero.aurora-dark{background:#0a0a0b;color:#fff}
.aurora-hero.aurora-light{background:#fafafa;color:#0f172a}
.aurora-bg{position:absolute;inset:-10px;z-index:-1;pointer-events:none;filter:blur(10px);opacity:.55;background-size:300% 200%;background-position:50% 50%;-webkit-mask-image:radial-gradient(ellipse at 100% 0%,#000 10%,transparent 70%);mask-image:radial-gradient(ellipse at 100% 0%,#000 10%,transparent 70%)}
.aurora-dark .aurora-bg{mix-blend-mode:screen;background-image:repeating-linear-gradient(100deg,#000 0%,#000 7%,transparent 10%,transparent 12%,#000 16%),repeating-linear-gradient(100deg,#60a5fa 10%,#a5b4fc 15%,#93c5fd 20%,#ddd6fe 25%,#3b82f6 30%);opacity:.6}
.aurora-light .aurora-bg{background-image:repeating-linear-gradient(100deg,#fff 0%,#fff 7%,transparent 10%,transparent 12%,#fff 16%),repeating-linear-gradient(100deg,#3b82f6 10%,#a5b4fc 15%,#93c5fd 20%,#c4b5fd 25%,#60a5fa 30%)}
@media (prefers-reduced-motion:no-preference){.aurora-bg{animation:auroraMove 60s linear infinite}}
@keyframes auroraMove{from{background-position:50% 50%}to{background-position:350% 50%}}
.aurora-inner{position:relative;text-align:center;max-width:820px;padding:0 20px}
.aurora-eyebrow{display:inline-block;padding:7px 16px;border-radius:999px;border:1px solid currentColor;font-weight:800;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:22px;opacity:.85}
.aurora-title{font-size:clamp(2.4rem,1.4rem + 4.4vw,5rem);line-height:1.04;letter-spacing:-.02em;margin:0 0 18px;font-weight:800}
.aurora-sub{font-size:clamp(1.05rem,.95rem + .6vw,1.35rem);line-height:1.6;max-width:600px;margin:0 auto 28px;opacity:.85}
.aurora-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.aurora-dark .btn-glow-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}

/* sparkles_hero — vanilla canvas particle field (port of tsparticles Sparkles). */
.sparkles-hero{position:relative;overflow:hidden;min-height:80vh;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;padding:clamp(64px,10vw,140px) 0}
.sparkles-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;display:block}
.sparkles-inner{position:relative;z-index:2;max-width:920px;padding:0 20px}
.sparkles-eyebrow{display:inline-block;color:#cbd5e1;font-weight:800;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}
.sparkles-title{font-size:clamp(2.6rem,1.5rem + 5vw,6rem);font-weight:800;color:#fff;line-height:1;letter-spacing:-.02em;margin:0 0 4px}
.sparkles-lines{position:relative;height:30px;max-width:40rem;margin:6px auto 0}
.sparkles-lines span{position:absolute;top:0;left:50%;transform:translateX(-50%);height:2px;border-radius:2px}
.sparkles-lines span:nth-child(1){width:75%;background:linear-gradient(90deg,transparent,#6366f1,transparent);filter:blur(1px)}
.sparkles-lines span:nth-child(2){width:25%;background:linear-gradient(90deg,transparent,#0ea5e9,transparent)}
.sparkles-sub{color:#cbd5e1;font-size:clamp(1.05rem,.95rem + .6vw,1.3rem);line-height:1.6;max-width:600px;margin:18px auto 26px}
.sparkles-actions{display:flex;justify-content:center}

/* paths_hero — animated SVG floating paths (port of Background Paths). */
.paths-hero{position:relative;overflow:hidden;min-height:80vh;display:flex;align-items:center;justify-content:center;text-align:center}
.paths-hero.paths-light{background:#fff;color:#0f172a}
.paths-hero.paths-dark{background:#0a0a0a;color:#fff}
.fp-wrap{position:absolute;inset:0;z-index:0;pointer-events:none}
.fp-svg{width:100%;height:100%}
.fp-path{opacity:.5}
@media (prefers-reduced-motion:no-preference){.fp-path{animation:fpFlow 9s ease-in-out infinite}}
@keyframes fpFlow{0%,100%{opacity:.18}50%{opacity:.6}}
.paths-inner{position:relative;z-index:2;max-width:940px;padding:0 20px}
.paths-eyebrow{display:inline-block;font-weight:800;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px;opacity:.7}
.paths-title{font-size:clamp(2.6rem,1.5rem + 5vw,6.5rem);font-weight:800;letter-spacing:-.03em;line-height:1;margin:0 0 20px}
.paths-sub{font-size:clamp(1.05rem,.95rem + .6vw,1.3rem);line-height:1.6;max-width:560px;margin:0 auto 28px;opacity:.78}
.paths-actions{display:flex;justify-content:center}

/* scroll_expand_hero — IO-driven media expansion (tamer port of ScrollExpandMedia, no scroll-jack). */
.scroll-expand-hero{position:relative;overflow:hidden;min-height:92vh;display:flex;align-items:center;justify-content:center;background:#06080f}
.scroll-expand-hero .se-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.85;transition:opacity 1.1s ease,transform 1.1s ease;z-index:0}
.scroll-expand-hero.se-active .se-bg{opacity:.32;transform:scale(1.06)}
.scroll-expand-hero .se-inner{position:relative;z-index:2;width:100%;display:flex;flex-direction:column;align-items:center;text-align:center;color:#fff;padding:clamp(48px,8vw,110px) 20px}
.scroll-expand-hero .se-eyebrow{font-weight:800;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;opacity:.85}
.scroll-expand-hero .se-title{font-size:clamp(2.2rem,1.4rem + 4vw,5rem);font-weight:800;line-height:1.04;letter-spacing:-.02em;margin:0 0 14px;text-shadow:0 2px 30px rgba(0,0,0,.5)}
.scroll-expand-hero .se-sub{font-size:clamp(1.05rem,.95rem + .5vw,1.25rem);opacity:.9;margin:0 0 24px;max-width:520px}
.scroll-expand-hero .se-media-wrap{margin-top:30px;width:100%;display:flex;justify-content:center}
.scroll-expand-hero .se-media{margin:0;width:300px;height:380px;max-width:92vw;border-radius:20px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.5);transition:width 1.1s cubic-bezier(.22,.7,.3,1),height 1.1s cubic-bezier(.22,.7,.3,1)}
.scroll-expand-hero.se-active .se-media{width:min(1100px,92vw);height:min(64vh,600px)}
.scroll-expand-hero .se-media img{width:100%;height:100%;object-fit:cover;display:block}

/* ============ 21st.dev port batch — text fx, micro-interactions, 4 blocks, 6 bg skins ============ */
/* Text effect utilities (typography axis) — usable as classes anywhere + via titleEffect. */
.tx-cycle{background:linear-gradient(90deg,#6ea8fe,#b692ff,#ff8fb1,#ffd166,#6ee7b7,#6ea8fe);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
@media (prefers-reduced-motion:no-preference){.tx-cycle{animation:txCycle 8s linear infinite}}
@keyframes txCycle{to{background-position:300% 0}}
.tx-gradient{background:linear-gradient(90deg,var(--mlb-accent,#2b7de9),color-mix(in srgb,var(--mlb-accent,#2b7de9) 45%,#ffffff));-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.tx-shimmer{background:linear-gradient(110deg,#9fb0c8 0%,#9fb0c8 40%,#ffffff 50%,#9fb0c8 60%,#9fb0c8 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
@media (prefers-reduced-motion:no-preference){.tx-shimmer{animation:txShimmer 3.6s linear infinite}}
@keyframes txShimmer{to{background-position:-200% 0}}
/* Micro-interactions */
.btn-shimmer{position:relative;overflow:hidden}
.btn-shimmer::after{content:'';position:absolute;top:0;left:-150%;width:55%;height:100%;background:linear-gradient(110deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);pointer-events:none}
@media (prefers-reduced-motion:no-preference){.btn-shimmer::after{animation:btnShim 3.4s ease-in-out infinite}}
@keyframes btnShim{0%{left:-150%}60%,100%{left:160%}}
@property --ab-ang{syntax:'<angle>';initial-value:0deg;inherits:false}
.fx-gradient-border{position:relative}
.fx-gradient-border::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--ab-ang),var(--mlb-accent,#6ea8fe),transparent 28%,var(--mlb-accent,#6ea8fe));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
@media (prefers-reduced-motion:no-preference){.fx-gradient-border::before{animation:abAng 4s linear infinite}}
@keyframes abAng{to{--ab-ang:360deg}}

/* gradient_cycle_hero */
.gch{position:relative;overflow:hidden;min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:clamp(64px,10vw,140px) 0;isolation:isolate}
.gch.gch-dark{color:#fff;background:#0a0a12}.gch.gch-light{color:#0f172a}
.gch-lines{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.45}
.gch-lines svg{width:100%;height:100%}
.gch-line{fill:none;stroke:var(--mlb-accent,#6ea8fe);stroke-width:1.5;stroke-dasharray:1200;stroke-dashoffset:1200}
.gch-dark .gch-line{stroke:#5b6cff}
@media (prefers-reduced-motion:no-preference){.gch-line{animation:gchDraw 7s ease-in-out infinite alternate}}
@keyframes gchDraw{to{stroke-dashoffset:0}}
.gch-inner{position:relative;max-width:880px;padding:0 20px}
.gch-eyebrow{display:inline-block;padding:7px 16px;border-radius:999px;border:1px solid currentColor;font-weight:800;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:22px;opacity:.85}
.gch-title{font-size:clamp(2.4rem,1.4rem + 4.4vw,5rem);line-height:1.04;font-weight:800;margin:0 0 18px;letter-spacing:-.02em}
.gch-sub{font-size:clamp(1.05rem,.95rem + .6vw,1.3rem);line-height:1.6;max-width:600px;margin:0 auto 28px;opacity:.85}
.gch-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.gch-dark .btn-glow-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}

/* laser_hero — dark laser-focus crypto hero (no WebGL) */
.laser-hero{position:relative;overflow:hidden;background:#05060f;color:#fff;padding:clamp(72px,11vw,150px) 0;isolation:isolate}
.laser-beams{position:absolute;top:30%;left:72%;width:170vmax;height:170vmax;z-index:-1;pointer-events:none;transform:translate(-50%,-50%);background:repeating-conic-gradient(transparent 0deg 8deg,color-mix(in srgb,var(--laser,#22d3ee) 55%,transparent) 8.4deg,transparent 9deg);-webkit-mask:radial-gradient(circle,#000,transparent 48%);mask:radial-gradient(circle,#000,transparent 48%);opacity:.28}
.laser-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(42% 52% at 72% 28%,color-mix(in srgb,var(--laser,#22d3ee) 40%,transparent),transparent 70%);filter:blur(22px)}
.laser-floor{position:absolute;left:0;right:0;bottom:0;height:46%;z-index:-1;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0,transparent 38px,color-mix(in srgb,var(--laser,#22d3ee) 42%,transparent) 39px,transparent 40px),repeating-linear-gradient(0deg,transparent 0,transparent 38px,color-mix(in srgb,var(--laser,#22d3ee) 42%,transparent) 39px,transparent 40px);transform:perspective(420px) rotateX(70deg);transform-origin:bottom center;opacity:.35;-webkit-mask:linear-gradient(transparent,#000 80%);mask:linear-gradient(transparent,#000 80%)}
@media (prefers-reduced-motion:no-preference){.laser-beams{animation:laserSpin 42s linear infinite}.laser-floor{animation:laserFloor 1.4s linear infinite}}
@keyframes laserSpin{to{transform:translate(-50%,-50%) rotate(1turn)}}
@keyframes laserFloor{to{background-position:0 39px,39px 0}}
.laser-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,64px);align-items:center}
.laser-grid.laser-solo{grid-template-columns:1fr;max-width:880px;text-align:center}
.laser-grid.laser-solo .laser-actions,.laser-grid.laser-solo .laser-eyebrow{justify-content:center;margin-left:auto;margin-right:auto}
.laser-grid.laser-solo .laser-sub{margin-left:auto;margin-right:auto}
.laser-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 15px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#cbd5e1;margin-bottom:20px}
.laser-dot{width:8px;height:8px;border-radius:50%;background:var(--laser,#22d3ee);box-shadow:0 0 10px var(--laser,#22d3ee)}
@media (prefers-reduced-motion:no-preference){.laser-dot{animation:laserPulse 1.8s ease-in-out infinite}}
@keyframes laserPulse{50%{opacity:.4;box-shadow:0 0 18px var(--laser,#22d3ee)}}
.laser-title{font-size:clamp(2.4rem,1.3rem + 4.6vw,4.6rem);line-height:1.03;font-weight:800;letter-spacing:-.025em;margin:0 0 18px;color:#eef4ff}
/* premium gradient on the glyphs; applied to the motion word-spans so background-clip:text actually
   paints (clip on the parent does NOT show through child spans). Solid color above is the no-JS fallback. */
.laser-title .w-anim{background:linear-gradient(180deg,#fff,#b9c4d4);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.laser-sub{font-size:clamp(1.05rem,.95rem + .55vw,1.28rem);line-height:1.6;color:#aab4c5;max-width:540px;margin:0 0 28px}
.laser-actions{display:flex;gap:14px;flex-wrap:wrap}
.laser-hero .btn-glow-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}
.laser-mock{position:relative;background:linear-gradient(180deg,rgba(20,24,40,.9),rgba(10,12,24,.92));border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:22px;box-shadow:0 30px 80px rgba(0,0,0,.5),inset 0 0 0 1px color-mix(in srgb,var(--laser,#22d3ee) 18%,transparent);backdrop-filter:blur(6px)}
.lm-head{display:flex;justify-content:space-between;align-items:center;font-size:13px}
.lm-tick{font-weight:800;letter-spacing:.06em;color:#e2e8f0}
.lm-up{color:#34d399;font-weight:800}
.lm-price{font-size:34px;font-weight:800;margin:6px 0 14px;color:#fff;letter-spacing:-.02em}
.lm-chart{position:relative;height:140px;border-radius:12px;overflow:hidden;background:rgba(255,255,255,.02)}
.lm-chart svg{width:100%;height:100%;display:block}
.lm-line{stroke-dasharray:1000;stroke-dashoffset:1000;filter:drop-shadow(0 0 6px var(--laser,#22d3ee))}
@media (prefers-reduced-motion:no-preference){.lm-line{animation:lmDraw 2.6s ease-out forwards}}
@media (prefers-reduced-motion:reduce){.lm-line{stroke-dashoffset:0}}
@keyframes lmDraw{to{stroke-dashoffset:0}}
.lm-scan{position:absolute;top:0;bottom:0;left:4%;width:2px;background:var(--laser,#22d3ee);box-shadow:0 0 14px 2px var(--laser,#22d3ee);opacity:.55}
@media (prefers-reduced-motion:no-preference){.lm-scan{animation:lmScan 3.4s ease-in-out infinite}}
@keyframes lmScan{0%,100%{left:4%}50%{left:94%}}
.lm-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.lm-tile{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:10px}
.lm-tile span{display:block;font-size:11px;color:#94a3b8;letter-spacing:.04em}
.lm-tile b{display:block;font-size:15px;color:#fff;margin-top:3px}
@media (max-width:820px){.laser-grid{grid-template-columns:1fr;text-align:center;max-width:560px;margin:0 auto}.laser-actions,.laser-eyebrow{justify-content:center;margin-left:auto;margin-right:auto}.laser-sub{margin-left:auto;margin-right:auto}.laser-mock{text-align:left}}

/* aero_hero — full-bleed image hero, bottom-anchored copy + avatar social proof + animated pill CTA */
.aero-hero{position:relative;overflow:hidden;min-height:92vh;display:flex;align-items:flex-end;justify-content:center;color:#fff;isolation:isolate}
.aero-bg{position:absolute;inset:0;z-index:-2;background-color:#0b1412;background-size:cover;background-position:bottom center}
.aero-scrim{position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(0,0,0,.78) 0,rgba(0,0,0,.35) 45%,rgba(0,0,0,.12) 100%)}
.aero-inner{width:100%;max-width:1180px;padding:0 24px clamp(48px,7vw,96px)}
.aero-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;text-align:left}
.aero-copy{max-width:46rem}
.aero-eyebrow{display:inline-block;font-weight:700;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--aero,#e1fcad);margin-bottom:16px}
.aero-title{font-size:clamp(2.5rem,1.3rem + 5vw,4.6rem);line-height:1.02;font-weight:600;letter-spacing:-.03em;margin:0 0 18px}
.aero-sub{font-size:clamp(1.05rem,.95rem + .6vw,1.3rem);font-weight:300;line-height:1.55;color:rgba(255,255,255,.9);max-width:36rem;margin:0}
.aero-aside{flex:0 0 auto;display:flex;flex-direction:column;gap:26px;align-items:flex-start}
.aero-proof{display:flex;align-items:center;gap:14px}
.aero-avs{display:flex}
.aero-av{width:48px;height:48px;border-radius:50%;border:2px solid var(--aero,#e1fcad);overflow:hidden;margin-left:-12px;background:#122023;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;color:var(--aero,#e1fcad)}
.aero-av:first-child{margin-left:0}
.aero-av img{width:100%;height:100%;object-fit:cover;display:block}
.aero-proof-txt{display:flex;flex-direction:column;line-height:1.2}
.aero-proof-num{font-size:1.1rem;font-weight:700}
.aero-proof-label{font-size:.9rem;color:rgba(255,255,255,.85)}
.aero-btn{display:inline-flex;align-items:center;gap:0;text-decoration:none}
.aero-btn-label{border-radius:999px;background:var(--aero,#e1fcad);color:#0b1412;padding:14px 26px;font-weight:600;transition:background .5s ease,color .5s ease}
.aero-btn-ico{position:relative;display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:var(--aero,#e1fcad);color:#0b1412;overflow:hidden;transition:background .5s ease,color .5s ease}
.aero-btn-ico svg{position:absolute;width:20px;height:20px;transition:transform .5s ease}
.aero-btn-ico svg:nth-child(1){transform:translateX(0)}
.aero-btn-ico svg:nth-child(2){transform:translateX(-2.6rem)}
.aero-btn:hover .aero-btn-label,.aero-btn:hover .aero-btn-ico{background:#122023;color:var(--aero,#e1fcad)}
.aero-btn:hover .aero-btn-ico svg:nth-child(1){transform:translateX(2.6rem)}
.aero-btn:hover .aero-btn-ico svg:nth-child(2){transform:translateX(0)}
@media (prefers-reduced-motion:reduce){.aero-btn-label,.aero-btn-ico,.aero-btn-ico svg{transition:none}}
@media (max-width:900px){.aero-row{flex-direction:column;align-items:flex-start;gap:28px}.aero-aside{align-items:flex-start}}

/* cta_card_icon — centered glass card with accent icon badge (on the dark .cta-band) */
.cta-iconcard .cic-card{max-width:680px;margin:0 auto;text-align:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:clamp(28px,4vw,48px);backdrop-filter:blur(6px)}
.cta-iconcard .cic-badge{width:64px;height:64px;border-radius:18px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;font-size:30px;background:var(--btn-yellow,#ffd23f);color:#1a1300;box-shadow:0 10px 30px rgba(0,0,0,.3)}
.cta-iconcard .cic-card h2{margin:0 0 10px}
.cta-iconcard .cic-card .cta-actions{justify-content:center}

/* cta_image_full — single full-bleed image CTA (image set inline as background; scrim baked in) */
.cta-imgfull{background-size:cover;background-position:center}
.cta-imgfull .cta-imgfull-inner{max-width:760px;margin:0 auto;text-align:center}
.cta-imgfull .cta-actions{justify-content:center}

/* cta_dual — two side-by-side action cards on the band */
.cta-dual .ctad-head{text-align:center;margin:0 auto 8px;max-width:46rem}
.cta-dual .ctad-sub{text-align:center;margin:0 auto 30px;max-width:42rem}
.cta-dual .ctad-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;max-width:880px;margin:0 auto}
.cta-dual .ctad-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:30px;display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.cta-dual .ctad-card-hl{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.3)}
.cta-dual .ctad-card h3{margin:0;font-size:1.4rem}
.cta-dual .ctad-card p{margin:0;color:rgba(255,255,255,.85);font-size:.98rem;line-height:1.5}
.cta-dual .ctad-card .btn{margin-top:auto}
@media (max-width:680px){.cta-dual .ctad-grid{grid-template-columns:1fr}}

/* cta_logos — CTA with a trust/logo strip beneath the action */
.cta-logos .cta-logos-inner{text-align:center;max-width:760px;margin:0 auto}
.cta-logos .cta-actions{justify-content:center}
.cta-logos .ctal-label{margin:34px 0 14px;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.cta-logos .ctal-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 26px}
.cta-logos .ctal-logo{display:inline-flex;align-items:center;opacity:.92}
.cta-logos .ctal-logo img{height:30px;width:auto;filter:brightness(0) invert(1);opacity:.85}
.cta-logos .ctal-logo-txt{font-weight:700;font-size:14px;letter-spacing:.04em;padding:7px 15px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#fff}

/* tilt_cards */
.mlb-tilt .tilt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;margin-top:30px;perspective:1100px}
.mlb-tilt .tilt-card{background:var(--mlb-card,#fff);border:1px solid rgba(0,0,0,.08);border-radius:18px;overflow:hidden;transform:rotateX(var(--ry,0deg)) rotateY(var(--rx,0deg));transition:transform .18s ease,box-shadow .18s ease;transform-style:preserve-3d;will-change:transform}
.mlb-tilt .tilt-card:hover{box-shadow:0 30px 60px rgba(15,23,42,.18)}
.mlb-tilt .tilt-media img{width:100%;height:158px;object-fit:cover;display:block}
.mlb-tilt .tilt-body{padding:22px}
.mlb-tilt .tilt-icon{font-size:26px;margin-bottom:8px;line-height:1}
.mlb-tilt .tilt-body h3{color:var(--mlb-title);margin:0 0 6px;font-size:19px;line-height:1.2}
.mlb-tilt .tilt-body p{color:var(--mlb-body);margin:0;font-size:14.5px;line-height:1.55}

/* card_carousel */
.mlb-cc .cc-wrap{position:relative;margin-top:28px;display:flex;align-items:center;gap:8px}
.mlb-cc .cc-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 2px 16px;flex:1;scrollbar-width:none}
.mlb-cc .cc-track::-webkit-scrollbar{display:none}
.mlb-cc .cc-card{flex:0 0 340px;max-width:340px;scroll-snap-align:start;background:var(--mlb-card,#fff);border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:14px;box-shadow:0 10px 30px rgba(15,23,42,.06)}
.mlb-cc .cc-stars{color:#f5a623;letter-spacing:2px;font-size:15px}
.mlb-cc .cc-quote{margin:0;color:var(--mlb-body);font-size:15px;line-height:1.6}
.mlb-cc .cc-cap{display:flex;align-items:center;gap:12px;margin-top:auto}
.mlb-cc .cc-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:0 0 42px}
.mlb-cc .cc-avatar-ph{display:flex;align-items:center;justify-content:center;background:var(--mlb-accent);color:#fff;font-weight:800}
.mlb-cc .cc-meta{display:flex;flex-direction:column;line-height:1.25}
.mlb-cc .cc-name{font-weight:800;color:var(--mlb-title);font-size:14px}
.mlb-cc .cc-role{color:var(--mlb-body);opacity:.75;font-size:12.5px}
.mlb-cc .cc-btn{flex:0 0 auto;width:44px;height:44px;border-radius:50%;border:1px solid rgba(0,0,0,.15);background:var(--mlb-card,#fff);color:var(--mlb-title);font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}
.mlb-cc .cc-btn:hover{border-color:var(--mlb-accent);color:var(--mlb-accent)}
@media (max-width:640px){.mlb-cc .cc-btn{display:none}.mlb-cc .cc-card{flex-basis:280px;max-width:280px}}

/* animated_band + 6 background skins */
.aband{position:relative;overflow:hidden;padding:clamp(60px,9vw,120px) 0;text-align:center;isolation:isolate;color:#fff}
.aband-bg{position:absolute;inset:0;z-index:-2}
.aband::after{content:'';position:absolute;inset:0;z-index:-1;background:rgba(8,10,20,.28)}
.aband-inner{position:relative;max-width:780px;margin:0 auto;padding:0 20px}
.aband-eyebrow{display:inline-block;padding:6px 16px;border-radius:999px;background:rgba(255,255,255,.16);color:#fff;font-weight:800;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px;backdrop-filter:blur(4px)}
.aband-title{color:#fff;font-size:clamp(2rem,1.3rem + 3vw,3.6rem);line-height:1.06;margin:0 0 14px;letter-spacing:-.02em;text-shadow:0 2px 24px rgba(0,0,0,.25)}
.aband-sub{color:rgba(255,255,255,.92);font-size:clamp(1.05rem,.95rem + .5vw,1.25rem);line-height:1.6;margin:0 auto 26px;max-width:560px}
.aband-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.aband .btn-glow-light{background:#fff;color:#10131f;box-shadow:0 10px 34px rgba(0,0,0,.28)}
.aband .btn-outline-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.6)}
.aband-waves{position:absolute;inset:0;z-index:-2;width:100%;height:100%}
.skin-blobs .aband-bg{background:#0b0f1e}
.skin-blobs .aband-bg::before,.skin-blobs .aband-bg::after{content:'';position:absolute;width:55vw;max-width:680px;aspect-ratio:1;border-radius:50%;filter:blur(60px);opacity:.7;mix-blend-mode:screen}
.skin-blobs .aband-bg::before{background:radial-gradient(circle,var(--ab1,#3b2bd9),transparent 60%);top:-10%;left:-5%}
.skin-blobs .aband-bg::after{background:radial-gradient(circle,var(--ab2,#b5179e),transparent 60%);bottom:-12%;right:-5%}
@media (prefers-reduced-motion:no-preference){.skin-blobs .aband-bg::before{animation:blobA 16s ease-in-out infinite}.skin-blobs .aband-bg::after{animation:blobB 20s ease-in-out infinite}}
@keyframes blobA{50%{transform:translate(18%,14%) scale(1.15)}}
@keyframes blobB{50%{transform:translate(-16%,-12%) scale(1.1)}}
.skin-noisy .aband-bg{background:linear-gradient(120deg,var(--ab1,#3b2bd9),var(--ab2,#b5179e),var(--ab3,#1f8a70),var(--ab1,#3b2bd9));background-size:300% 300%}
@media (prefers-reduced-motion:no-preference){.skin-noisy .aband-bg{animation:gctaShift 16s ease infinite}}
.skin-noisy .aband-bg::after{content:'';position:absolute;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.skin-beams .aband-bg{background:#070a16}
.skin-beams .aband-bg::before{content:'';position:absolute;inset:-50%;background:repeating-linear-gradient(115deg,transparent 0 40px,color-mix(in srgb,var(--ab1,#6ea8fe) 40%,transparent) 40px 42px);opacity:.45}
@media (prefers-reduced-motion:no-preference){.skin-beams .aband-bg::before{animation:beamSlide 12s linear infinite}}
@keyframes beamSlide{to{transform:translateX(60px)}}
.skin-grid .aband-bg{background:#0a0e1a}
.skin-grid .aband-bg::before{content:'';position:absolute;inset:0;background-image:linear-gradient(color-mix(in srgb,var(--ab1,#6ea8fe) 35%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--ab1,#6ea8fe) 35%,transparent) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse 60% 60% at 50% 40%,#000,transparent 75%);mask-image:radial-gradient(ellipse 60% 60% at 50% 40%,#000,transparent 75%)}
.skin-dots .aband-bg{background:#0a0e1a}
.skin-dots .aband-bg::before{content:'';position:absolute;inset:0;background-image:radial-gradient(color-mix(in srgb,var(--ab1,#6ea8fe) 45%,transparent) 1.5px,transparent 1.6px);background-size:26px 26px;-webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 40%,#000,transparent 80%);mask-image:radial-gradient(ellipse 70% 70% at 50% 40%,#000,transparent 80%)}
@media (prefers-reduced-motion:no-preference){.skin-dots .aband-bg::before{animation:dotDrift 18s linear infinite}}
@keyframes dotDrift{to{background-position:26px 52px}}
.skin-waves .aband-bg{background:linear-gradient(180deg,#06122b,#0a1f3f)}

/* ============ 21st.dev round-2 batch — 6 blocks ============ */
/* pricing_toggle — reuses .price-card styles; adds CSS monthly/yearly swap. */
.mlb-pricing-toggle .ptg-input{position:absolute;opacity:0;pointer-events:none}
.mlb-pricing-toggle .ptg-toggle{display:flex;justify-content:center;margin:14px 0 28px}
.mlb-pricing-toggle .ptg-switch{display:inline-flex;align-items:center;gap:12px;cursor:pointer;font-weight:700;color:var(--mlb-body)}
.mlb-pricing-toggle .ptg-track{position:relative;width:52px;height:28px;border-radius:999px;background:color-mix(in srgb,var(--mlb-accent) 30%,transparent);transition:background .2s}
.mlb-pricing-toggle .ptg-knob{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .25s}
.mlb-pricing-toggle .ptg-r{opacity:.5}
.mlb-pricing-toggle .price-y{display:none}
.mlb-pricing-toggle .ptg-input:checked ~ .ptg-toggle .ptg-track{background:var(--mlb-accent)}
.mlb-pricing-toggle .ptg-input:checked ~ .ptg-toggle .ptg-knob{transform:translateX(24px)}
.mlb-pricing-toggle .ptg-input:checked ~ .ptg-toggle .ptg-l{opacity:.5}
.mlb-pricing-toggle .ptg-input:checked ~ .ptg-toggle .ptg-r{opacity:1}
.mlb-pricing-toggle .ptg-input:checked ~ .price-grid .price-m{display:none}
.mlb-pricing-toggle .ptg-input:checked ~ .price-grid .price-y{display:inline}

/* bento_gallery — pure-CSS preview swap (up to 8). */
.mlb-bgal .bgal-radio{position:absolute;opacity:0;pointer-events:none}
.mlb-bgal .bgal-wrap{margin-top:26px}
.mlb-bgal .bgal-stage{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:16/9;background:#0b0f17;box-shadow:0 24px 60px rgba(15,23,42,.16)}
.mlb-bgal .bgal-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .4s ease}
.mlb-bgal .bgal-slide img{width:100%;height:100%;object-fit:cover}
.mlb-bgal .bgal-slide figcaption{position:absolute;left:0;right:0;bottom:0;padding:16px 20px;background:linear-gradient(transparent,rgba(0,0,0,.72));color:#fff;font-weight:700}
.mlb-bgal .bgal-thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto;scrollbar-width:none}
.mlb-bgal .bgal-thumbs::-webkit-scrollbar{display:none}
.mlb-bgal .bgal-thumb{flex:0 0 96px;height:64px;border-radius:10px;overflow:hidden;cursor:pointer;opacity:.5;border:2px solid transparent;transition:opacity .2s,border-color .2s}
.mlb-bgal .bgal-thumb img{width:100%;height:100%;object-fit:cover}
.mlb-bgal .bgal-radio:nth-of-type(1):checked~.bgal-stage .bgal-slide:nth-child(1),.mlb-bgal .bgal-radio:nth-of-type(2):checked~.bgal-stage .bgal-slide:nth-child(2),.mlb-bgal .bgal-radio:nth-of-type(3):checked~.bgal-stage .bgal-slide:nth-child(3),.mlb-bgal .bgal-radio:nth-of-type(4):checked~.bgal-stage .bgal-slide:nth-child(4),.mlb-bgal .bgal-radio:nth-of-type(5):checked~.bgal-stage .bgal-slide:nth-child(5),.mlb-bgal .bgal-radio:nth-of-type(6):checked~.bgal-stage .bgal-slide:nth-child(6),.mlb-bgal .bgal-radio:nth-of-type(7):checked~.bgal-stage .bgal-slide:nth-child(7),.mlb-bgal .bgal-radio:nth-of-type(8):checked~.bgal-stage .bgal-slide:nth-child(8){opacity:1}
.mlb-bgal .bgal-radio:nth-of-type(1):checked~.bgal-thumbs .bgal-thumb:nth-child(1),.mlb-bgal .bgal-radio:nth-of-type(2):checked~.bgal-thumbs .bgal-thumb:nth-child(2),.mlb-bgal .bgal-radio:nth-of-type(3):checked~.bgal-thumbs .bgal-thumb:nth-child(3),.mlb-bgal .bgal-radio:nth-of-type(4):checked~.bgal-thumbs .bgal-thumb:nth-child(4),.mlb-bgal .bgal-radio:nth-of-type(5):checked~.bgal-thumbs .bgal-thumb:nth-child(5),.mlb-bgal .bgal-radio:nth-of-type(6):checked~.bgal-thumbs .bgal-thumb:nth-child(6),.mlb-bgal .bgal-radio:nth-of-type(7):checked~.bgal-thumbs .bgal-thumb:nth-child(7),.mlb-bgal .bgal-radio:nth-of-type(8):checked~.bgal-thumbs .bgal-thumb:nth-child(8){opacity:1;border-color:var(--mlb-accent)}

/* stacking_cards — sticky pin-and-stack on scroll. */
.mlb-stack .stack-list{margin-top:30px;display:flex;flex-direction:column;gap:24px}
.mlb-stack .stack-card{position:sticky;display:flex;gap:22px;align-items:center;background:var(--mlb-card,#fff);border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:26px;box-shadow:0 20px 50px rgba(15,23,42,.12);min-height:200px}
.mlb-stack .stack-num{flex:0 0 auto;font-weight:800;font-size:24px;color:var(--mlb-accent)}
.mlb-stack .stack-body{flex:1}
.mlb-stack .stack-body h3{color:var(--mlb-title);margin:0 0 8px;font-size:22px;line-height:1.2}
.mlb-stack .stack-body p{color:var(--mlb-body);margin:0;line-height:1.6}
.mlb-stack .stack-media{flex:0 0 40%;max-width:40%}
.mlb-stack .stack-media img{width:100%;border-radius:12px;display:block}
@media (max-width:760px){.mlb-stack .stack-card{position:static;flex-direction:column;min-height:0}.mlb-stack .stack-media{max-width:100%;flex-basis:auto}}

/* vs_table — us-vs-them comparison. */
.mlb-vs .vs-table{max-width:760px;margin:30px auto 0;border:1px solid rgba(0,0,0,.1);border-radius:16px;overflow:hidden;background:var(--mlb-card,#fff)}
.mlb-vs .vs-head,.mlb-vs .vs-row{display:grid;grid-template-columns:1fr 120px 120px;align-items:center}
.mlb-vs .vs-head{background:color-mix(in srgb,var(--mlb-accent) 8%,transparent);font-weight:800;color:var(--mlb-title)}
.mlb-vs .vs-head span,.mlb-vs .vs-row span{padding:14px 18px;text-align:center}
.mlb-vs .vs-feat{text-align:left}
.mlb-vs .vs-head .vs-feat{color:var(--mlb-title)}
.mlb-vs .vs-row{border-top:1px solid rgba(0,0,0,.07)}
.mlb-vs .vs-row .vs-feat{color:var(--mlb-body);font-weight:600}
.mlb-vs .vs-us-h{color:var(--mlb-accent)}
.mlb-vs .vs-us{background:color-mix(in srgb,var(--mlb-accent) 6%,transparent)}
.mlb-vs .vs-c{display:inline-flex;width:26px;height:26px;border-radius:50%;background:var(--mlb-accent);color:#fff;align-items:center;justify-content:center;font-weight:800;font-size:13px}
.mlb-vs .vs-x{display:inline-flex;width:26px;height:26px;border-radius:50%;background:rgba(120,120,120,.18);color:#9aa3af;align-items:center;justify-content:center;font-weight:800;font-size:13px}
@media (max-width:560px){.mlb-vs .vs-head,.mlb-vs .vs-row{grid-template-columns:1fr 64px 64px}.mlb-vs .vs-head span,.mlb-vs .vs-row span{padding:12px 10px;font-size:13px}}

/* parallax_band — fixed-attachment parallax image band. */
.parallax-band{position:relative;background-size:cover;background-position:center;background-attachment:fixed;color:#fff;text-align:center;padding:clamp(80px,14vw,180px) 0;display:flex;align-items:center;justify-content:center;background-color:#0b0f1e}
.parallax-band .pb-inner{position:relative;max-width:760px;padding:0 20px}
.parallax-band .pb-eyebrow{display:inline-block;padding:6px 16px;border-radius:999px;background:rgba(255,255,255,.16);color:#fff;font-weight:800;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px;backdrop-filter:blur(4px)}
.parallax-band .pb-title{color:#fff;font-size:clamp(2rem,1.3rem + 3vw,3.8rem);line-height:1.06;margin:0 0 14px;letter-spacing:-.02em;text-shadow:0 2px 28px rgba(0,0,0,.45)}
.parallax-band .pb-sub{color:rgba(255,255,255,.92);font-size:clamp(1.05rem,.95rem + .5vw,1.25rem);line-height:1.6;margin:0 auto 26px;max-width:560px}
.parallax-band .pb-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.parallax-band .btn-glow-light{background:#fff;color:#10131f;box-shadow:0 10px 34px rgba(0,0,0,.28)}
.parallax-band .btn-outline-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.6)}
@media (max-width:760px){.parallax-band{background-attachment:scroll}}

/* scroll_progress — top reading-progress bar (CSS scroll-timeline; hidden where unsupported). */
.scroll-progress{position:fixed;top:0;left:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:var(--sp-color,#2b7de9);z-index:70;pointer-events:none}
@supports (animation-timeline:scroll()){.scroll-progress{animation:spGrow linear both;animation-timeline:scroll(root)}}
@keyframes spGrow{to{transform:scaleX(1)}}
@supports not (animation-timeline:scroll()){.scroll-progress{display:none}}

/* number-flip odometer (stat_band flip mode) */
.statband-num.odo{display:inline-flex;align-items:flex-start;line-height:1;overflow:hidden}
.statband-num.odo .odo-reel{display:inline-block;height:1em;overflow:hidden;vertical-align:top}
.statband-num.odo .odo-inner{display:flex;flex-direction:column;transform:translateY(0)}
.statband-num.odo.odo-ready .odo-inner{transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.statband-num.odo .odo-d{height:1em;display:flex;align-items:center;justify-content:center}
.statband-num.odo .odo-sym{display:inline-block}

/* cursor_trail — trailing ring (desktop/non-touch only; created by motion.js) */
.cursor-ring{position:fixed;top:0;left:0;width:34px;height:34px;margin:-17px 0 0 -17px;border:2px solid var(--ct-ring,var(--primary,#2b7de9));border-radius:50%;pointer-events:none;z-index:9999;mix-blend-mode:difference;will-change:transform;transition:width .2s ease,height .2s ease,opacity .3s ease}
.cursor-ring.is-down{width:24px;height:24px}
@media (hover:none),(pointer:coarse){.cursor-ring{display:none}}

/* ============ More background skins (21st.dev backgrounds) — meteors/retro/spotlight/ripple/conic/plasma ============ */
.skin-meteors .aband-bg{background:#070a16;overflow:hidden}
.skin-meteors .aband-bg::before,.skin-meteors .aband-bg::after{content:"";position:absolute;top:-20%;left:0;right:0;height:140%;background-image:linear-gradient(115deg,transparent 0 49.6%,rgba(255,255,255,.55) 49.8%,transparent 50%);background-size:140px 140px;background-repeat:repeat}
@media(prefers-reduced-motion:no-preference){.skin-meteors .aband-bg::before{animation:meteorMove 6s linear infinite}.skin-meteors .aband-bg::after{animation:meteorMove 9s linear infinite;opacity:.5}}
@keyframes meteorMove{from{transform:translate(0,0)}to{transform:translate(-140px,140px)}}
.skin-retro .aband-bg{background:linear-gradient(180deg,#0a0a18 0 55%,#1a0b2e 100%);overflow:hidden;perspective:300px}
.skin-retro .aband-bg::after{content:"";position:absolute;left:-50%;right:-50%;bottom:-10%;height:75%;background-image:linear-gradient(color-mix(in srgb,var(--ab2,#b5179e) 70%,transparent) 2px,transparent 2px),linear-gradient(90deg,color-mix(in srgb,var(--ab2,#b5179e) 70%,transparent) 2px,transparent 2px);background-size:44px 44px;transform:rotateX(72deg)}
@media(prefers-reduced-motion:no-preference){.skin-retro .aband-bg::after{animation:retroScroll 1.4s linear infinite}}
@keyframes retroScroll{to{background-position:0 44px}}
.skin-spotlight .aband-bg{background:#070a16}
.skin-spotlight .aband-bg::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 50% at 50% 0%,color-mix(in srgb,var(--ab1,#6ea8fe) 45%,transparent),transparent 70%)}
.skin-ripple .aband-bg{background:#0a0e1a;overflow:hidden}
.skin-ripple .aband-bg::before{content:"";position:absolute;top:50%;left:50%;width:60vmax;height:60vmax;transform:translate(-50%,-50%);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 28px,color-mix(in srgb,var(--ab1,#6ea8fe) 22%,transparent) 28px 30px);-webkit-mask:radial-gradient(circle,#000 0,transparent 70%);mask:radial-gradient(circle,#000 0,transparent 70%)}
@media(prefers-reduced-motion:no-preference){.skin-ripple .aband-bg::before{animation:rippleScale 8s ease-out infinite}}
@keyframes rippleScale{0%{transform:translate(-50%,-50%) scale(.6);opacity:.8}100%{transform:translate(-50%,-50%) scale(1.25);opacity:.2}}
.skin-conic .aband-bg{background:#0a0a14;overflow:hidden}
.skin-conic .aband-bg::before{content:"";position:absolute;top:50%;left:50%;width:140vmax;height:140vmax;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,var(--ab1,#3b2bd9),var(--ab2,#b5179e),var(--ab3,#1f8a70),var(--ab1,#3b2bd9));opacity:.35;filter:blur(40px)}
@media(prefers-reduced-motion:no-preference){.skin-conic .aband-bg::before{animation:conicSpin 24s linear infinite}}
@keyframes conicSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.skin-plasma .aband-bg{background:#0b0f1e}
.skin-plasma .aband-bg::before,.skin-plasma .aband-bg::after{content:"";position:absolute;width:70vw;max-width:760px;aspect-ratio:1;border-radius:50%;filter:blur(70px);opacity:.6;mix-blend-mode:screen}
.skin-plasma .aband-bg::before{background:radial-gradient(circle,var(--ab1,#3b2bd9),transparent 60%);top:-15%;left:10%}
.skin-plasma .aband-bg::after{background:radial-gradient(circle,var(--ab3,#1f8a70),transparent 60%);bottom:-15%;right:10%}
@media(prefers-reduced-motion:no-preference){.skin-plasma .aband-bg::before{animation:blobA 14s ease-in-out infinite}.skin-plasma .aband-bg::after{animation:blobB 18s ease-in-out infinite}}

/* ============ Background skins batch 2 (30 more, 21st.dev backgrounds) ============ */
.skin-boxes .aband-bg{background:#0b1020;overflow:hidden}
.skin-boxes .aband-bg::after{content:"";position:absolute;inset:-30%;background-image:linear-gradient(color-mix(in srgb,var(--ab1,#6ea8fe) 30%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--ab1,#6ea8fe) 30%,transparent) 1px,transparent 1px);background-size:54px 28px;transform:skewX(-12deg) skewY(4deg);-webkit-mask:radial-gradient(ellipse 60% 60% at 50% 45%,#000,transparent 75%);mask:radial-gradient(ellipse 60% 60% at 50% 45%,#000,transparent 75%)}
.skin-gradient-shift .aband-bg{background:linear-gradient(120deg,var(--ab1),var(--ab2),var(--ab3),var(--ab1));background-size:300% 300%}
@media(prefers-reduced-motion:no-preference){.skin-gradient-shift .aband-bg{animation:gctaShift 14s ease infinite}}
.skin-ocean .aband-bg{background:linear-gradient(180deg,#06245c,#0a7ea4 70%,#0fb6c2)}
.skin-sunset .aband-bg{background:linear-gradient(180deg,#2a0a3d,#9c2a52 55%,#f0803c)}
.skin-forest .aband-bg{background:linear-gradient(180deg,#06210f,#13532b 70%,#2f9e44)}
.skin-nebula .aband-bg{background:radial-gradient(at 30% 30%,#5b21b6 0,transparent 50%),radial-gradient(at 70% 60%,#9d174d 0,transparent 50%),#0a0a18}
.skin-hexgrid .aband-bg{background:#0a0e1a}.skin-hexgrid .aband-bg::after{content:"";position:absolute;inset:0;opacity:.5;background-image:radial-gradient(color-mix(in srgb,var(--ab1,#6ea8fe) 40%,transparent) 1px,transparent 1px);background-size:24px 24px}
.skin-diagonal .aband-bg{background:#0b0f1e;background-image:repeating-linear-gradient(45deg,color-mix(in srgb,var(--ab1,#6ea8fe) 8%,transparent) 0 14px,transparent 14px 28px)}
.skin-crosshatch .aband-bg{background:#0b0f1e;background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 1px,transparent 1px 12px),repeating-linear-gradient(-45deg,rgba(255,255,255,.05) 0 1px,transparent 1px 12px)}
.skin-topo .aband-bg{background:#0a0e1a}.skin-topo .aband-bg::after{content:"";position:absolute;inset:0;opacity:.4;background:repeating-radial-gradient(circle at 30% 40%,transparent 0 18px,color-mix(in srgb,var(--ab1,#6ea8fe) 30%,transparent) 18px 19px)}
.skin-circuit .aband-bg{background:#070b14}.skin-circuit .aband-bg::after{content:"";position:absolute;inset:0;opacity:.4;background-image:linear-gradient(color-mix(in srgb,var(--ab1,#34d399) 50%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--ab1,#34d399) 50%,transparent) 1px,transparent 1px);background-size:40px 40px,40px 40px}
.skin-blueprint .aband-bg{background:#0a2540}.skin-blueprint .aband-bg::after{content:"";position:absolute;inset:0;opacity:.5;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);background-size:28px 28px}
.skin-halftone .aband-bg{background:#0b0f1e}.skin-halftone .aband-bg::after{content:"";position:absolute;inset:0;background-image:radial-gradient(color-mix(in srgb,var(--ab2,#b5179e) 55%,transparent) 2px,transparent 2.5px);background-size:18px 18px;-webkit-mask:linear-gradient(135deg,#000,transparent);mask:linear-gradient(135deg,#000,transparent)}
.skin-bokeh .aband-bg{background:#0a0a18}.skin-bokeh .aband-bg::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,color-mix(in srgb,var(--ab1) 40%,transparent) 0 6px,transparent 7px),radial-gradient(circle at 70% 60%,color-mix(in srgb,var(--ab2) 40%,transparent) 0 10px,transparent 12px),radial-gradient(circle at 45% 80%,color-mix(in srgb,var(--ab3) 40%,transparent) 0 8px,transparent 10px);filter:blur(2px)}
.skin-orbs .aband-bg{background:#0b0f1e}.skin-orbs .aband-bg::before,.skin-orbs .aband-bg::after{content:"";position:absolute;width:40vw;aspect-ratio:1;border-radius:50%;filter:blur(50px);opacity:.5}.skin-orbs .aband-bg::before{background:var(--ab1);top:10%;left:15%}.skin-orbs .aband-bg::after{background:var(--ab2);bottom:10%;right:15%}
.skin-scanlines .aband-bg{background:#070a14;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 1px,transparent 1px 4px)}
.skin-vignette .aband-bg{background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--ab1) 30%,#0b0f1e),#06080f 75%)}
.skin-grain .aband-bg{background:linear-gradient(120deg,var(--ab1),var(--ab3))}.skin-grain .aband-bg::after{content:"";position:absolute;inset:0;opacity:.14;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.85'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.skin-aurora2 .aband-bg{background:#06081a}.skin-aurora2 .aband-bg::after{content:"";position:absolute;inset:-20%;background:conic-gradient(from 90deg at 50% 50%,var(--ab1),var(--ab2),var(--ab3),var(--ab1));filter:blur(70px);opacity:.4}
.skin-beams-v .aband-bg{background:#070a16;background-image:repeating-linear-gradient(90deg,transparent 0 60px,color-mix(in srgb,var(--ab1,#6ea8fe) 22%,transparent) 60px 62px)}
.skin-beams-radial .aband-bg{background:#070a16}.skin-beams-radial .aband-bg::after{content:"";position:absolute;inset:0;background:repeating-conic-gradient(from 0deg at 50% 50%,transparent 0 6deg,color-mix(in srgb,var(--ab1) 14%,transparent) 6deg 7deg)}
.skin-dots-fade .aband-bg{background:#0a0e1a;background-image:radial-gradient(color-mix(in srgb,var(--ab1,#6ea8fe) 45%,transparent) 1.4px,transparent 1.5px);background-size:22px 22px;-webkit-mask:radial-gradient(ellipse at 50% 30%,#000,transparent 70%);mask:radial-gradient(ellipse at 50% 30%,#000,transparent 70%)}
.skin-grid-fade .aband-bg{background:#0a0e1a;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:38px 38px;-webkit-mask:linear-gradient(180deg,#000,transparent);mask:linear-gradient(180deg,#000,transparent)}
.skin-cyber .aband-bg{background:#05060f}.skin-cyber .aband-bg::after{content:"";position:absolute;inset:0;background-image:linear-gradient(color-mix(in srgb,var(--ab2,#22d3ee) 55%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--ab2,#22d3ee) 55%,transparent) 1px,transparent 1px);background-size:30px 30px;-webkit-mask:radial-gradient(ellipse 70% 60% at 50% 50%,#000,transparent 80%);mask:radial-gradient(ellipse 70% 60% at 50% 50%,#000,transparent 80%)}
.skin-starlight .aband-bg{background:#05060f}.skin-starlight .aband-bg::after{content:"";position:absolute;inset:0;background-image:radial-gradient(1px 1px at 10% 20%,#fff,transparent),radial-gradient(1px 1px at 30% 70%,#fff,transparent),radial-gradient(1.5px 1.5px at 60% 40%,#fff,transparent),radial-gradient(1px 1px at 80% 80%,#fff,transparent),radial-gradient(1px 1px at 90% 15%,#fff,transparent),radial-gradient(1px 1px at 45% 55%,#fff,transparent);opacity:.85}
.skin-comets .aband-bg{background:#060814;overflow:hidden}.skin-comets .aband-bg::after{content:"";position:absolute;top:0;left:0;right:0;height:200%;background-image:linear-gradient(120deg,transparent 0 49.7%,color-mix(in srgb,var(--ab1,#6ea8fe) 70%,transparent) 49.9%,transparent 50.2%);background-size:300px 300px}@media(prefers-reduced-motion:no-preference){.skin-comets .aband-bg::after{animation:meteorMove 5s linear infinite}}
.skin-wave-lines .aband-bg{background:#06122b;background-image:repeating-radial-gradient(circle at 50% 120%,transparent 0 30px,color-mix(in srgb,var(--ab2,#0ea5e9) 18%,transparent) 30px 32px)}
.skin-mesh2 .aband-bg{background:radial-gradient(at 10% 80%,var(--ab1) 0,transparent 50%),radial-gradient(at 90% 20%,var(--ab2) 0,transparent 50%),radial-gradient(at 60% 60%,var(--ab3) 0,transparent 45%),#0a0a18;background-size:180% 180%}@media(prefers-reduced-motion:no-preference){.skin-mesh2 .aband-bg{animation:gctaShift 20s ease infinite}}
.skin-radial-burst .aband-bg{background:#070a16}.skin-radial-burst .aband-bg::after{content:"";position:absolute;inset:0;background:repeating-conic-gradient(from 0deg at 50% 50%,color-mix(in srgb,var(--ab1) 16%,transparent) 0 3deg,transparent 3deg 9deg);-webkit-mask:radial-gradient(circle,#000,transparent 65%);mask:radial-gradient(circle,#000,transparent 65%)}
.skin-prism .aband-bg{background:linear-gradient(60deg,#ff6b6b,#ffd93d,#6bcB77,#4d96ff,#9b5de5);background-size:300% 300%;opacity:.85}@media(prefers-reduced-motion:no-preference){.skin-prism .aband-bg{animation:gctaShift 16s ease infinite}}

/* ============ New heroes batch (21st.dev-inspired) ============ */
/* shared hero shells */
.th-hero,.bnh-hero,.anh-hero,.mqh-hero,.skinh-hero{position:relative;overflow:hidden;text-align:center;padding:clamp(64px,10vw,140px) 0;isolation:isolate}
.th-dark,.bnh-dark,.anh-dark,.mqh-dark,.skinh-hero{color:#fff}.th-dark,.bnh-dark,.anh-dark,.mqh-dark{background:#0a0e17}
.th-light,.bnh-light,.anh-light,.mqh-light{color:#0f172a;background:#fafafa}
.th-inner,.bnh-hero .container,.anh-inner,.mqh-inner,.skinh-inner{position:relative;max-width:880px;margin:0 auto;padding:0 20px}
.th-eyebrow,.bnh-eyebrow,.anh-pill,.mqh-eyebrow,.skinh-eyebrow,.mk-eyebrow,.igh-eyebrow{display:inline-block;font-weight:800;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px;opacity:.85}
.th-title,.bnh-title,.anh-title,.mqh-title,.skinh-title,.mk-title,.igh-title{font-size:clamp(2.4rem,1.4rem + 4.2vw,4.6rem);line-height:1.05;letter-spacing:-.02em;font-weight:800;margin:0 0 18px}
.th-sub,.bnh-sub,.anh-sub,.mqh-sub,.skinh-sub,.mk-sub,.igh-sub{font-size:clamp(1.05rem,.95rem + .55vw,1.3rem);line-height:1.6;max-width:600px;margin:0 auto 28px;opacity:.85}
.th-actions,.bnh-actions,.anh-actions,.mqh-actions,.skinh-actions,.mk-actions,.igh-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.btn-glow-ghost{background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff}
/* typewriter */
.th-rotate{color:var(--mlb-accent,#6ea8fe);border-right:3px solid currentColor;padding-right:2px;white-space:nowrap}
.th-light .th-rotate{color:#2b7de9}
/* mockup */
.mk-hero{position:relative;overflow:hidden;padding:clamp(56px,8vw,110px) 0}.mk-dark{background:#0a0e17;color:#fff}.mk-light{background:#fafafa;color:#0f172a}
.mk-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,5vw,60px);align-items:center}
.mk-text{text-align:left}.mk-title{text-align:left;margin:8px 0 16px}.mk-sub{margin:0 0 24px;max-width:520px}.mk-actions{justify-content:flex-start}
.mk-browser{border-radius:14px;overflow:hidden;background:#0b0f1a;border:1px solid rgba(255,255,255,.12);box-shadow:0 40px 90px rgba(0,0,0,.4)}
.mk-browser .mk-bar{display:flex;gap:7px;padding:11px 14px;background:#11161f}.mk-browser .mk-bar i{width:11px;height:11px;border-radius:50%;background:#3a4150}.mk-browser .mk-bar i:nth-child(1){background:#ef5f57}.mk-browser .mk-bar i:nth-child(2){background:#febc2e}.mk-browser .mk-bar i:nth-child(3){background:#28c840}
.mk-browser img,.mk-phone img{width:100%;display:block}
.mk-phone{position:relative;width:300px;max-width:80%;margin:0 auto;border-radius:36px;overflow:hidden;border:10px solid #11161f;box-shadow:0 40px 90px rgba(0,0,0,.45)}.mk-phone .mk-notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:120px;height:22px;background:#11161f;border-radius:0 0 14px 14px;z-index:2}
@media(max-width:820px){.mk-grid{grid-template-columns:1fr}.mk-text{text-align:center}.mk-title{text-align:center}.mk-actions{justify-content:center}}
/* bento hero */
.bnh-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:120px;gap:14px;margin-top:36px}
.bnh-tile{border-radius:16px;background-size:cover;background-position:center;background-color:#1b2230;box-shadow:0 14px 36px rgba(0,0,0,.2)}
.bnh-feature{grid-column:span 2;grid-row:span 2}
@media(max-width:700px){.bnh-grid{grid-template-columns:1fr 1fr}.bnh-feature{grid-column:span 2;grid-row:span 1}}
/* announcement */
.anh-pill{padding:7px 16px;border-radius:999px;border:1px solid currentColor;background:rgba(255,255,255,.08);text-decoration:none;color:inherit;opacity:1}
.anh-light .anh-pill{background:rgba(0,0,0,.04)}
.anh-bg{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(ellipse 60% 55% at 50% 35%,#000,transparent 80%);mask-image:radial-gradient(ellipse 60% 55% at 50% 35%,#000,transparent 80%)}
.anh-light .anh-bg{background-image:linear-gradient(rgba(0,0,0,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.06) 1px,transparent 1px)}
/* image-grid hero */
.igh-hero{padding:clamp(48px,7vw,92px) 0}.igh-light{background:#fafafa;color:#0f172a}.igh-dark{background:#0a0e17;color:#fff}
.igh-wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,56px);align-items:center}
.igh-text{text-align:left}.igh-title{text-align:left;margin:8px 0 16px}.igh-sub{margin:0 0 22px}.igh-actions{justify-content:flex-start}
.igh-collage{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:150px;gap:12px}
.igh-cell{border-radius:14px;background-size:cover;background-position:center;background-color:#222}.igh-cell:nth-child(1){grid-row:span 2}
@media(max-width:820px){.igh-wrap{grid-template-columns:1fr}.igh-text{text-align:center}.igh-title{text-align:center}.igh-actions{justify-content:center}}
/* marquee hero */
.mqh-marquee{margin-top:36px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.mqh-marquee .marquee-track{display:flex;gap:48px;align-items:center;width:max-content}
@media(prefers-reduced-motion:no-preference){.mqh-marquee[data-marquee] .marquee-track{animation:lmScroll 36s linear infinite}}
.mqh-item img{max-height:38px;opacity:.7;filter:grayscale(1)}.mqh-item.mqh-text{font-weight:800;opacity:.5;font-size:20px}
/* skin hero (reuses .skin-* .aband-bg) */
.skinh-hero{min-height:64vh;display:flex;align-items:center;justify-content:center}.skinh-hero .aband-bg{position:absolute;inset:0;z-index:-2}.skinh-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:rgba(8,10,20,.34)}
/* extra skins for skin_hero: mesh + starfield */
.skin-mesh .aband-bg{background:radial-gradient(at 20% 20%,var(--ab1) 0,transparent 45%),radial-gradient(at 80% 30%,var(--ab2) 0,transparent 45%),radial-gradient(at 50% 80%,var(--ab3) 0,transparent 45%),#0b0f1e;filter:saturate(1.1)}
@media(prefers-reduced-motion:no-preference){.skin-mesh .aband-bg{background-size:200% 200%;animation:gctaShift 18s ease infinite}}
.skin-starfield .aband-bg{background:#060814}.skin-starfield .aband-bg::before{content:'';position:absolute;inset:0;background-image:radial-gradient(1.5px 1.5px at 20% 30%,#fff,transparent),radial-gradient(1px 1px at 70% 60%,#fff,transparent),radial-gradient(1.5px 1.5px at 40% 80%,#fff,transparent),radial-gradient(1px 1px at 85% 25%,#cbd5e1,transparent),radial-gradient(1px 1px at 55% 45%,#fff,transparent);opacity:.7}
@media(prefers-reduced-motion:no-preference){.skin-starfield .aband-bg::before{animation:dotDrift 26s linear infinite}}

/* ============ Heroes batch 3 (fullbleed, waitlist, floating-cards, kinetic, shapes, split-contact, marquee-split) + dotted skin ============ */
.fb-hero{position:relative;min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;background-size:cover;background-position:center;padding:clamp(64px,10vw,140px) 0}
.fb-inner{position:relative;max-width:820px;padding:0 20px}.fb-eyebrow{display:inline-block;font-weight:800;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px;opacity:.85}
.fb-title{color:#fff;font-size:clamp(2.4rem,1.4rem + 4.2vw,5rem);line-height:1.05;letter-spacing:-.02em;font-weight:800;margin:0 0 18px;text-shadow:0 2px 28px rgba(0,0,0,.5)}
.fb-sub{color:rgba(255,255,255,.92);font-size:clamp(1.05rem,.95rem + .55vw,1.3rem);line-height:1.6;max-width:600px;margin:0 auto 28px}.fb-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.wl-hero{padding:clamp(56px,8vw,110px) 0}.wl-dark{background:#0a0e17;color:#fff}.wl-light{background:#fafafa;color:#0f172a}
.wl-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(28px,5vw,56px);align-items:center}
.wl-eyebrow{font-weight:800;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;opacity:.7;margin-bottom:14px}.wl-title{font-size:clamp(2.2rem,1.4rem + 3.4vw,4rem);line-height:1.06;margin:0 0 16px;letter-spacing:-.02em}.wl-sub{font-size:clamp(1.05rem,.95rem + .5vw,1.25rem);opacity:.85;margin:0;max-width:520px}
.wl-panel{background:color-mix(in srgb,var(--mlb-accent,#2b7de9) 6%,transparent);border:1px solid rgba(125,125,125,.18);border-radius:18px;padding:26px}
.wl-form{display:flex;gap:10px;flex-wrap:wrap}.wl-form input{flex:1;min-width:180px;padding:13px 16px;border-radius:12px;border:1px solid rgba(125,125,125,.3);background:#fff;color:#111;font-size:15px}.wl-note{margin:12px 0 0;font-size:13px;opacity:.7}
@media(max-width:820px){.wl-grid{grid-template-columns:1fr}}
.fc-hero{padding:clamp(48px,7vw,100px) 0;overflow:hidden}.fc-dark{background:#0a0e17;color:#fff}.fc-light{background:#fafafa;color:#0f172a}
.fc-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,56px);align-items:center}
.fc-eyebrow{font-weight:800;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;opacity:.7;margin-bottom:14px}.fc-title{font-size:clamp(2.2rem,1.4rem + 3.4vw,4rem);line-height:1.06;margin:0 0 16px;letter-spacing:-.02em}.fc-sub{opacity:.85;margin:0 0 24px;max-width:480px;line-height:1.6}.fc-actions{display:flex;gap:14px;flex-wrap:wrap}
.fc-stage{position:relative;min-height:340px}
.fc-card{position:absolute;background:var(--mlb-card,#fff);color:#0f172a;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:16px 18px;box-shadow:0 24px 60px rgba(15,23,42,.2);display:flex;flex-direction:column;gap:4px;min-width:180px}
.fc-card .fc-ic{font-size:22px}.fc-card strong{font-size:15px}.fc-card span{font-size:13px;opacity:.7}
.fc-card-1{top:6%;left:4%}.fc-card-2{top:38%;right:2%;z-index:2}.fc-card-3{bottom:6%;left:18%}
@media(prefers-reduced-motion:no-preference){.fc-card-1{animation:fcFloat 7s ease-in-out infinite}.fc-card-2{animation:fcFloat 9s ease-in-out infinite}.fc-card-3{animation:fcFloat 8s ease-in-out infinite reverse}}
@keyframes fcFloat{50%{transform:translateY(-14px)}}
@media(max-width:820px){.fc-grid{grid-template-columns:1fr}.fc-stage{min-height:260px}}
.kn-hero{position:relative;text-align:center;padding:clamp(72px,11vw,150px) 0}.kn-dark{background:#0a0a12;color:#fff}.kn-light{background:#fafafa;color:#0f172a}
.kn-inner{max-width:1000px;margin:0 auto;padding:0 20px}.kn-eyebrow{font-weight:800;font-size:13px;letter-spacing:.14em;text-transform:uppercase;opacity:.7;margin-bottom:18px}
.kn-title{font-size:clamp(2.8rem,1.4rem + 6vw,7rem);line-height:.98;letter-spacing:-.04em;font-weight:800;margin:0 0 20px;text-transform:uppercase}.kn-sub{font-size:clamp(1.05rem,.95rem + .6vw,1.3rem);opacity:.8;max-width:560px;margin:0 auto 28px}.kn-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.shp-hero{position:relative;min-height:78vh;display:flex;align-items:center;justify-content:center;text-align:center;background:#030303;color:#fff;overflow:hidden}
.shp-field{position:absolute;inset:0;z-index:0}.shp-shape{position:absolute;border-radius:999px;filter:blur(2px);border:1px solid rgba(255,255,255,.14);box-shadow:0 8px 32px rgba(255,255,255,.06)}
.shp-1{width:min(600px,55vw);height:130px;left:-6%;top:18%;background:linear-gradient(90deg,rgba(99,102,241,.18),transparent);transform:rotate(12deg)}
.shp-2{width:min(500px,45vw);height:120px;right:-4%;top:72%;background:linear-gradient(90deg,rgba(244,63,94,.18),transparent);transform:rotate(-15deg)}
.shp-3{width:min(300px,30vw);height:80px;left:8%;bottom:8%;background:linear-gradient(90deg,rgba(139,92,246,.18),transparent);transform:rotate(-8deg)}
.shp-4{width:200px;height:60px;right:18%;top:12%;background:linear-gradient(90deg,rgba(245,158,11,.18),transparent);transform:rotate(20deg)}
.shp-5{width:150px;height:44px;left:24%;top:8%;background:linear-gradient(90deg,rgba(34,211,238,.18),transparent);transform:rotate(-25deg)}
@media(prefers-reduced-motion:no-preference){.shp-shape{animation:shpFloat 12s ease-in-out infinite}.shp-2{animation-delay:1s}.shp-3{animation-delay:.5s}.shp-4{animation-delay:1.5s}}
@keyframes shpFloat{50%{transform:translateY(16px) rotate(var(--r,0))}}
.shp-inner{position:relative;z-index:2;max-width:840px;padding:0 20px}.shp-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);font-size:13px;color:rgba(255,255,255,.7);margin-bottom:28px}.shp-dot{width:7px;height:7px;border-radius:50%;background:#f43f5e}
.shp-title{font-size:clamp(2.6rem,1.4rem + 5vw,6rem);line-height:1.02;letter-spacing:-.03em;font-weight:800;margin:0 0 20px;background:linear-gradient(180deg,#fff,rgba(255,255,255,.78));-webkit-background-clip:text;background-clip:text;color:transparent}.shp-sub{color:rgba(255,255,255,.45);font-size:clamp(1.05rem,.95rem + .6vw,1.3rem);max-width:560px;margin:0 auto 28px;line-height:1.6}.shp-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.sch-hero{display:grid;grid-template-columns:3fr 2fr;min-height:80vh;background:#fafafa;color:#0f172a}
.sch-left{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(32px,5vw,64px)}.sch-eyebrow{font-weight:800;font-size:12px;letter-spacing:.16em;text-transform:uppercase;opacity:.6;margin-bottom:18px}
.sch-title{font-size:clamp(2.2rem,1.4rem + 3.4vw,3.6rem);line-height:1.08;margin:0;letter-spacing:-.02em}.sch-bar{width:80px;height:4px;background:var(--mlb-accent,#2b7de9);margin:22px 0}.sch-sub{max-width:440px;opacity:.7;line-height:1.6;margin:0 0 22px}.sch-cta{font-weight:800;letter-spacing:.08em;color:var(--mlb-accent,#2b7de9);text-decoration:none}
.sch-contact{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px;font-size:12.5px;opacity:.7}.sch-ci{display:flex;align-items:center;gap:8px}.sch-ci svg{width:18px;height:18px;color:var(--mlb-accent,#2b7de9);flex:0 0 auto}
.sch-media{background-size:cover;background-position:center;min-height:300px;clip-path:polygon(18% 0,100% 0,100% 100%,0 100%)}
@media(max-width:820px){.sch-hero{grid-template-columns:1fr}.sch-media{min-height:280px;clip-path:none;order:-1}.sch-contact{grid-template-columns:1fr;gap:8px}}
.msh-hero{padding:clamp(48px,7vw,100px) 0;overflow:hidden}.msh-dark{background:#0a0e17;color:#fff}.msh-light{background:#fafafa;color:#0f172a}
.msh-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,56px);align-items:center}
.msh-eyebrow{font-weight:800;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;opacity:.7;margin-bottom:14px}.msh-title{font-size:clamp(2.4rem,1.4rem + 4vw,4.4rem);line-height:1.04;margin:0 0 16px;letter-spacing:-.02em}.msh-sub{opacity:.8;margin:0 0 24px;max-width:440px;line-height:1.6}
.msh-rows{display:flex;flex-direction:column;gap:16px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.msh-row{overflow:hidden}.msh-row .marquee-track{display:flex;gap:16px;width:max-content}
.msh-cell{flex:0 0 168px;width:168px;height:168px;border-radius:18px;background-size:cover;background-position:center;background-color:#1b2230}
@media(prefers-reduced-motion:no-preference){.msh-row[data-marquee] .marquee-track{animation:lmScroll 40s linear infinite}.msh-rev[data-marquee] .marquee-track{animation-direction:reverse}.msh-rows:hover .marquee-track{animation-play-state:paused}}
@media(max-width:820px){.msh-grid{grid-template-columns:1fr}}
/* dotted skin — perspective dot grid (vanilla nod to the three.js Dotted Surface) */
.skin-dotted .aband-bg{background:radial-gradient(ellipse at 50% 120%,#11203f,#060814);overflow:hidden;perspective:340px}
.skin-dotted .aband-bg::after{content:"";position:absolute;left:-40%;right:-40%;bottom:-20%;height:120%;background-image:radial-gradient(rgba(180,200,255,.55) 1.6px,transparent 2px);background-size:30px 30px;transform:rotateX(68deg);-webkit-mask:linear-gradient(0deg,#000 30%,transparent 85%);mask:linear-gradient(0deg,#000 30%,transparent 85%)}
@media(prefers-reduced-motion:no-preference){.skin-dotted .aband-bg::after{animation:retroScroll 2.2s linear infinite}}

/* futuristic-hero-lite — cheap vanilla nod to the WebGPU hero: a scanning light line + scroll cue.
   Scoped to body.futuristic, GPU transform/opacity only, reduced-motion off. (No three.js/WebGPU.) */
@media (prefers-reduced-motion:no-preference){
  body.futuristic .hero,body.futuristic .mlb-hero-stats{position:relative;overflow:hidden}
  body.futuristic .hero::after,body.futuristic .mlb-hero-stats::after{content:'';position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--primary,#22d3ee) 50%,transparent);opacity:.45;pointer-events:none;animation:scanSweep 5s cubic-bezier(.5,0,.5,1) infinite}
}
@keyframes scanSweep{0%{transform:translateY(0);opacity:0}10%{opacity:.5}90%{opacity:.5}100%{transform:translateY(620px);opacity:0}}
body.futuristic .scroll-cue{display:inline-flex;flex-direction:column;align-items:center;gap:6px;color:var(--mlb-body,#cbd5e1);font-size:11px;letter-spacing:.18em;text-transform:uppercase;opacity:.8}
body.futuristic .scroll-cue svg{animation:scrollBob 1.8s ease-in-out infinite}
@keyframes scrollBob{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@media (prefers-reduced-motion:reduce){body.futuristic .scroll-cue svg{animation:none}}

/* ===== CTA bands (21st.dev call-to-action ports) — dark accent gradient, white text, AA-safe ===== */
.cta-band{position:relative;overflow:hidden;padding:clamp(3rem,6vw,5.5rem) 0;color:#fff;background:linear-gradient(135deg,var(--primary,#2b7de9),color-mix(in srgb,var(--primary,#2b7de9) 52%,#0b1020));isolation:isolate}
.cta-band h2{color:#fff;font-size:clamp(1.7rem,3.4vw,2.8rem);line-height:1.08;margin:0 0 .6rem;letter-spacing:-.02em}
.cta-band .cta-eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;opacity:.85;margin-bottom:.7rem}
.cta-band .cta-sub{color:rgba(255,255,255,.86);font-size:clamp(1rem,1.4vw,1.18rem);max-width:56ch;margin:0 auto 1.5rem;line-height:1.6}
.cta-band .cta-actions{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center}
.cta-band .btn-outline-light{border:1.5px solid rgba(255,255,255,.55);color:#fff;background:transparent}
.cta-band .btn-outline-light:hover{background:rgba(255,255,255,.14)}
/* split */
.cta-split .ctasplit-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.cta-split h2,.cta-split .cta-sub{text-align:left;margin-left:0}
.cta-split .cta-actions{justify-content:flex-start}
.cta-split .ctasplit-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:1.6rem 1.8rem;backdrop-filter:blur(6px)}
.cta-split .ctasplit-list{list-style:none;margin:0;padding:0;display:grid;gap:.85rem}
.cta-split .ctasplit-list li{position:relative;padding-left:2rem;color:rgba(255,255,255,.93);font-weight:500;line-height:1.4}
.cta-split .ctasplit-list li::before{content:"\2713";position:absolute;left:0;top:.05em;width:1.4rem;height:1.4rem;display:grid;place-items:center;background:var(--accent,#ffd43b);color:#1a1a1a;border-radius:50%;font-size:.78rem;font-weight:800}
.cta-split .ctasplit-media img{width:100%;border-radius:18px;display:block;box-shadow:0 20px 50px rgba(0,0,0,.35)}
/* newsletter */
.cta-news-inner{text-align:center;max-width:680px;margin:0 auto}
.cta-news-form{display:flex;gap:.6rem;max-width:480px;margin:0 auto;flex-wrap:wrap}
.cta-news-form input{flex:1;min-width:200px;padding:.95rem 1.1rem;border-radius:12px;border:1px solid rgba(255,255,255,.25);background:#fff;color:#16181d;font-size:1rem}
.cta-news-note{font-size:.82rem;opacity:.78;margin-top:.9rem}
/* stat */
.cta-stat-inner{text-align:center;max-width:780px;margin:0 auto}
.cta-stat-row{display:flex;gap:clamp(1.5rem,5vw,3.5rem);justify-content:center;flex-wrap:wrap;margin:1.6rem 0 1.9rem}
.cta-stat-num{font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1;letter-spacing:-.02em}
.cta-stat-label{font-size:.85rem;opacity:.84;margin-top:.4rem}
/* banner */
.cta-banner{padding:clamp(1.1rem,2.5vw,1.6rem) 0}
.cta-banner-inner{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;flex-wrap:wrap}
.cta-banner .cta-actions{justify-content:flex-end}
.cta-banner-copy{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}
.cta-banner-copy strong{font-size:clamp(1.05rem,1.8vw,1.35rem)}
.cta-banner-tag{text-transform:uppercase;letter-spacing:.12em;font-size:.66rem;font-weight:800;background:rgba(255,255,255,.18);padding:.3rem .6rem;border-radius:999px}
.cta-banner-sub{opacity:.84;font-size:.95rem}
/* gallery */
.cta-gallery{padding:clamp(4rem,8vw,7rem) 0}
.cta-gallery .ctag-grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(6,1fr);gap:6px;z-index:-2}
.cta-gallery .ctag-tile{overflow:hidden}
.cta-gallery .ctag-tile img{width:100%;height:100%;object-fit:cover;display:block}
.cta-gallery .ctag-scrim{position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,color-mix(in srgb,var(--primary,#2b7de9) 90%,#0b1020),color-mix(in srgb,var(--primary,#2b7de9) 66%,#05060a));opacity:.93}
.cta-gallery .ctag-inner{text-align:center;max-width:720px;margin:0 auto;position:relative}
@media(max-width:760px){
  .cta-split .ctasplit-grid{grid-template-columns:1fr}
  .cta-banner-inner{flex-direction:column;align-items:flex-start}
  .cta-banner .cta-actions{justify-content:flex-start}
  .cta-gallery .ctag-grid{grid-template-columns:repeat(3,1fr)}
}

/* ===== Footer variants (renderFooterBlock: classic/mega/cta/newsletter/minimal/dark) ===== */
.ftr{background:#13181d;color:#c9d1d9}
.ftr a{color:#c9d1d9;text-decoration:none}
.ftr a:hover{color:#fff}
.ftr .container{padding-top:2.6rem;padding-bottom:2.6rem}
.ftr .ft-brand strong{color:#fff;font-size:1.15rem;display:block;margin-bottom:.6rem}
.ftr .ft-nap{display:flex;flex-direction:column;gap:.3rem;font-size:.9rem;opacity:.85}
.ftr .ft-nap-inline{display:flex;gap:1rem;flex-wrap:wrap;font-size:.9rem;opacity:.85;margin:.4rem 0}
.ftr .footer-legal{display:flex;gap:.6rem;align-items:center;font-size:.82rem;opacity:.72;flex-wrap:wrap}
.ftr .footer-legal a{text-decoration:underline}
.ftr-mega-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:2rem;padding-top:3rem;padding-bottom:2rem}
.ftr-mega .ft-col h4{color:#fff;font-size:.95rem;margin:0 0 .8rem;letter-spacing:.02em}
.ftr-mega .ft-col a{display:block;padding:.28rem 0;font-size:.9rem;opacity:.82}
.ftr-mega .ft-col a:hover{opacity:1}
.ftr-mega .ftr-bottom{border-top:1px solid rgba(255,255,255,.1);padding:1.2rem 0}
.ftr-cta .ftr-cta-band{background:linear-gradient(135deg,var(--primary,#2b7de9),color-mix(in srgb,var(--primary,#2b7de9) 55%,#0b1020));text-align:center;padding:clamp(2.4rem,5vw,3.6rem) 0;color:#fff}
.ftr-cta .ftr-cta-band h3{color:#fff;font-size:clamp(1.5rem,3vw,2.2rem);margin:0 0 .5rem}
.ftr-cta .ftr-cta-band p{color:rgba(255,255,255,.85);margin:0 auto 1.4rem;max-width:50ch}
.ftr-row{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;padding-top:1.8rem;padding-bottom:1.8rem}
.ftr-news-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;padding-top:2.6rem;padding-bottom:1.6rem}
.ftr-news-grid h3{color:#fff;font-size:1.4rem;margin:0 0 .4rem}
.ftr-news-grid p{margin:0;opacity:.82;font-size:.95rem}
.ftr-news-form{display:flex;gap:.5rem;flex-wrap:wrap}
.ftr-news-form input{flex:1;min-width:180px;padding:.85rem 1rem;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#fff;color:#16181d}
.ftr-minimal .container{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-top:1.6rem;padding-bottom:1.6rem}
.ftr-minimal .ft-brand strong{margin:0}
.ftr-dark{background:#0a0d11}
.ftr-dark-grid{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;flex-wrap:wrap;padding-top:2.6rem;padding-bottom:1.4rem}
.ft-dark-right{display:flex;flex-direction:column;gap:.8rem;align-items:flex-end}
.ftr .footer-social,.ftr .ft-social{display:flex;gap:.7rem;margin:.6rem 0}
@media(max-width:760px){
  .ftr-mega-grid{grid-template-columns:1fr 1fr}
  .ftr-news-grid{grid-template-columns:1fr}
  .ftr-row,.ftr-dark-grid{flex-direction:column;align-items:flex-start}
  .ft-dark-right{align-items:flex-start}
}
/* ===== Nav variants (classic / minimal only — centered & pill removed) ===== */
/* minimal = a clean, lighter take on classic: links STAY VISIBLE and readable (lighter weight,
   normal case), just less chrome (hairline border, no drop shadow). It must NEVER hide the links. */
.top-nav.nav-minimal{box-shadow:none;border-bottom:1px solid rgba(0,0,0,.10)}
.top-nav.nav-minimal nav a:not(.nav-cta-link):not(.btn){display:inline-block;font-weight:600;text-transform:none;letter-spacing:.005em;font-size:14px;opacity:.92}
.top-nav.nav-minimal nav a:not(.nav-cta-link):not(.btn):hover{opacity:1}

/* ===== TYPOGRAPHY WOW PASS — bigger, more confident type =====
   Fixes "text too small / no wow": form fields were ~13–14px (also caused iOS zoom), section leads
   were modest. Bumps forms + leads, keeps body comfortable. Additive (later + !important wins). */
/* Form fields — readable AND iOS-zoom-safe (16px+ inputs), clearer labels, bigger submit */
.rfq input,.rfq textarea,.rfq select,
.mlb-rfq input,.mlb-rfq textarea,.mlb-rfq select,
.hero-form-card input,.hero-form-card textarea,.hero-form-card select,
.lead-popup-card input,.lead-popup-card textarea,.lead-popup-card select{font-size:16px!important;padding:15px 14px!important}
.rfq form label,.mlb-rfq form label,.hero-form-card label{font-size:15px!important;font-weight:700!important;letter-spacing:.004em}
.rfq span,.mlb-rfq span{font-size:14px!important}
.rfq button,.mlb-rfq button[type=submit],.hero-form-card button{font-size:16.5px!important;padding:16px 28px!important;letter-spacing:.01em}
.rfq h2,.mlb-rfq h2{font-size:clamp(30px,2.6vw,44px)!important;line-height:1.08!important}
.mlb-rfq .mlb-intro,.rfq p,.mlb-rfq p{font-size:clamp(17px,1.1vw,19px)!important}
/* Eyebrows a touch larger so the "story beat" labels read clearly */
.mlb-eyebrow{font-size:13px!important;letter-spacing:.14em}
/* AUTHORITATIVE body/lead scale — at desktop widths the clamp() MINIMUMS dominate, so the page felt
   small (body 16px, leads 17px). Raise the minimums with .site-page-shell specificity (0,2,0)+!important
   so it beats the per-block rules (incl. .mlb-rfq .mlb-intro) that were holding text down. */
.site-page-shell .mlb-intro,.site-page-shell .mlb-lead{font-size:clamp(18.5px,1.2vw,22px)!important;line-height:1.62!important;max-width:64ch}
.site-page-shell .mlb p,.site-page-shell .section p,.site-page-shell .mlb-card p,.site-page-shell .section li,
.site-page-shell .cards article p,.site-page-shell .timeline-item p,.site-page-shell .mlb-rfq p{font-size:clamp(17.5px,1.05vw,19px)!important;line-height:1.66!important}
