@font-face{
  font-family:'OfficinaCypher';
  src:url('../fonts/officina-display-itc-std-light.otf') format('opentype');
  font-weight:300;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'OfficinaCypher';
  src:url('../fonts/officina-display-itc-std-regular.otf') format('opentype');
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'OfficinaCypher';
  src:url('../fonts/officina-display-itc-std-bold.otf') format('opentype');
  font-weight:700;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'OfficinaCypher';
  src:url('../fonts/officina-display-itc-std-black.otf') format('opentype');
  font-weight:900;font-style:normal;font-display:swap;
}

:root{
  --navy:#081426;
  --navy2:#102944;
  --teal:#126a7a;
  --teal2:#1f7f8f;
  --red:#b22a26;
  --red2:#df4d54;
  --cream:#f7f2ea;
  --paper:#fffaf2;
  --white:#fff;
  --text:#101827;
  --muted:#637083;
  --line:rgba(8,20,38,.11);
  --shadow:0 28px 80px rgba(8,20,38,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--paper);color:var(--text);
  font-family:'OfficinaCypher',Arial,sans-serif;
  font-weight:400;overflow-x:hidden;
}
a{text-decoration:none;color:inherit}
button,input,textarea,select{font-family:inherit}
img{max-width:100%;display:block}
.skip-link{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:10px;z-index:9999}
.skip-link:focus{left:12px;top:12px}
.container-wide{width:min(1360px,calc(100% - 44px));margin:auto}
.container-narrow{width:min(1080px,calc(100% - 44px));margin:auto}
.center-copy{text-align:center}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}

/* Header */
.site-header{position:fixed;inset:0 0 auto;z-index:1000;background:#fff;box-shadow:0 12px 40px rgba(8,20,38,.08)}
.top-contact-bar{background:var(--navy);color:#fff;font-size:14px;font-weight:700}
.top-contact-inner{width:min(1460px,calc(100% - 44px));margin:auto;min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.top-contact-left,.top-contact-right{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.top-contact-bar a,.top-contact-bar span{color:rgba(255,255,255,.86)}
.top-contact-bar a:hover{color:#fff}
.top-contact-right a{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);padding:6px 12px;border-radius:999px}
.nav-inner{width:min(1460px,calc(100% - 44px));margin:auto;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:26px}
.brand img{width:285px;max-height:60px;object-fit:contain}
.main-nav{display:flex;align-items:center;gap:28px;margin-left:auto}
.main-nav a{color:var(--navy);font-weight:800;font-size:15px;position:relative}
.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-10px;height:3px;background:var(--red);border-radius:999px;transition:.25s}
.main-nav a:hover:after,.main-nav a.active:after{right:0}
.nav-button,.btn{min-height:54px;border-radius:18px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:900;font-size:15px;transition:.25s;border:1px solid transparent;cursor:pointer}
.nav-button{background:var(--navy);color:#fff}
.nav-button:hover,.btn:hover{transform:translateY(-2px)}
.nav-toggle{display:none;background:none;border:0;padding:8px}
.nav-toggle span{display:block;width:28px;height:3px;background:var(--navy);margin:5px 0;border-radius:99px}

/* Buttons */
.btn-white{background:#fff;color:var(--navy);box-shadow:0 16px 34px rgba(255,255,255,.15)}
.btn-glass{color:#fff;background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.20)}
.btn-dark{background:var(--navy);color:#fff}
button.footer-cta,.footer-cta{justify-content:center;min-height:48px;padding:0 18px;border-radius:16px;background:#fff;color:var(--navy)!important;font-weight:900!important;border:0;cursor:pointer}

/* Hero */
.hero-lean{position:relative;overflow:hidden;color:#fff;padding:190px 0 95px;background:linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%)}
.hero-pattern{position:absolute;inset:0;opacity:.13;mix-blend-mode:screen;background-image:radial-gradient(circle at 10% 20%,rgba(255,255,255,.9) 0 8px,transparent 9px),radial-gradient(circle at 84% 18%,rgba(255,255,255,.8) 0 7px,transparent 8px),repeating-linear-gradient(36deg,transparent 0 82px,rgba(255,255,255,.30) 84px 94px,transparent 96px 170px),repeating-radial-gradient(circle at 18% 50%,transparent 0 56px,rgba(255,255,255,.45) 58px 66px,transparent 68px 130px)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}
.section-kicker{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 16px;border-radius:10px;background:rgba(178,42,38,.10);color:var(--red);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900}
.section-kicker.light{background:rgba(255,255,255,.13);color:#fff}
.hero-copy h1,.page-hero h1,.center-copy h2,.section-head h2,.product-copy h2,.final-cta h2,.service-details h2,.solution-card h2,.product-card h2,.two-col h2{font-size:clamp(44px,5.4vw,86px);line-height:.98;margin:24px 0 20px;font-weight:900;letter-spacing:-.035em}
.hero-copy p,.page-hero p,.center-copy p,.section-head p,.product-copy p,.final-cta p,.service-details p,.solution-card p,.product-card p,.about-copy p{font-size:19px;line-height:1.68;color:var(--muted);margin:0}
.hero-copy p,.final-cta p{color:rgba(255,255,255,.84)}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:34px}
.hero-trust div{padding:18px;border-radius:20px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.14)}
.hero-trust strong{display:block;font-size:26px;font-weight:900}
.hero-trust span{display:block;color:rgba(255,255,255,.75);font-size:13px;margin-top:5px}
.hero-panel{border-radius:34px;background:#fff;box-shadow:0 34px 90px rgba(0,0,0,.22);overflow:hidden;color:var(--navy)}
.panel-top{height:52px;background:#edf1f7;display:flex;align-items:center;gap:8px;padding:0 18px}
.panel-top i{width:10px;height:10px;border-radius:50%;background:#b4bfce}.panel-top span{margin-left:12px;color:#6a7789;font-weight:800}
.panel-body{padding:28px}
.big-metric{border-radius:28px;background:linear-gradient(135deg,var(--navy),var(--teal));padding:28px;color:#fff}
.big-metric small{display:block;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#a9dce4}.big-metric strong{display:block;font-size:76px;font-weight:900;line-height:1}.big-metric span{color:#d7eef2}
.mini-dashboard{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.mini-dashboard span{height:94px;border-radius:22px;background:#f1f5f9;border:1px solid #e3e9f2}
.solution-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.solution-tags b{padding:10px 13px;border-radius:999px;background:#f7f2ea;color:var(--red);font-weight:900}

/* Sections */
.section{padding:100px 0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:54px}
.section-head p{max-width:480px}
.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:54px}
.category-card,.solution-card,.product-card,.service-row,.step-card,.values-grid>div{background:#fff;border:1px solid var(--line);border-radius:30px;box-shadow:0 12px 38px rgba(8,20,38,.05);transition:.3s}
.category-card{padding:28px}.category-card:hover,.solution-card:hover,.product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.card-icon{width:60px;height:60px;border-radius:20px;background:var(--cream);display:grid;place-items:center;color:var(--red);font-size:30px;font-weight:900}
.category-card h3{font-size:27px;line-height:1.05;margin:24px 0 12px;font-weight:900}.category-card p{color:var(--muted);line-height:1.65}.category-card a{display:inline-flex;margin-top:18px;color:var(--red);font-weight:900}
.ticker{height:68px;background:var(--navy);color:#fff;overflow:hidden;display:flex;align-items:center}
.ticker-track{display:flex;align-items:center;gap:24px;white-space:nowrap;animation:ticker 34s linear infinite;font-size:21px;font-weight:900}.ticker-track i{width:8px;height:8px;border-radius:50%;background:var(--red2)}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.featured-solutions{background:var(--cream)}
.solution-strip,.solutions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.solution-card{padding:30px}.solution-card span,.product-type{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(178,42,38,.08);color:var(--red);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.solution-card h3,.solution-card h2{font-size:32px;line-height:1.03;margin:20px 0 12px;font-weight:900}.solution-card p{font-size:17px;line-height:1.65;color:var(--muted)}
.solution-card button,.product-card button,.row-action{margin-top:20px;border:0;background:var(--navy);color:#fff;border-radius:16px;min-height:46px;padding:0 16px;font-weight:900;cursor:pointer}
.center-action{text-align:center;margin-top:36px}
.products-preview{background:var(--navy);color:#fff}.product-highlight{display:grid;grid-template-columns:.95fr 1.05fr;gap:60px;align-items:center}.product-copy p{color:#aeb9c9}.product-stack{display:grid;gap:12px}.product-stack div{padding:20px 22px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);display:flex;justify-content:space-between;gap:20px}.product-stack b{font-size:22px}.product-stack span{color:#aeb9c9}
.industry-grid{display:flex;flex-wrap:wrap;gap:12px}.industry-grid span,.filters-panel span,.tag-row b,.keyword-row span{padding:11px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:800;color:var(--navy)}
.final-cta{position:relative;overflow:hidden;background:linear-gradient(135deg,#8f2433,#521724);color:#fff;padding:105px 0}.final-cta.compact{padding:92px 0}.cta-pattern{position:absolute;inset:0;opacity:.11;background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px);background-size:58px 58px}.cta-inner{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}

/* Page heroes */
.page-hero{padding:195px 0 90px;background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;inset:0;opacity:.12;background-image:repeating-linear-gradient(38deg,transparent 0 80px,rgba(255,255,255,.25) 82px 92px,transparent 95px 170px)}.page-hero .container-wide{position:relative;z-index:1}.page-hero p{max-width:820px;color:rgba(255,255,255,.84)}
.service-list{display:grid;gap:18px}.service-row{display:grid;grid-template-columns:70px 80px 1fr auto;gap:24px;align-items:center;padding:28px}.service-number{font-size:22px;font-weight:900;color:var(--red)}.service-icon-large{width:76px;height:76px;border-radius:24px;background:var(--cream);display:grid;place-items:center;color:var(--red);font-size:34px}.service-details h2{font-size:40px;margin:0 0 10px}.keyword-row,.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.filters-panel{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:30px}.solutions-grid .solution-card{min-height:320px}.tag-row b{font-size:12px}
.seo-note{background:var(--cream)}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product-card{padding:30px;min-height:300px}.product-card h2{font-size:36px;margin:20px 0 12px}.product-status{margin-top:18px;color:var(--red);font-weight:900}
.two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.mission-grid,.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.mission-grid div,.values-grid>div{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px}.mission-grid strong,.values-grid b{display:block;font-size:22px;color:var(--red);font-weight:900}.mission-grid span{display:block;color:var(--muted);line-height:1.6;margin-top:8px}.values-section{background:var(--cream)}.values-grid h3{font-size:29px;margin:18px 0 10px}.values-grid p{color:var(--muted);line-height:1.65}
.contact-grid-page{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px}.contact-cards{display:grid;gap:14px}.contact-cards a,.contact-cards div{padding:24px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 38px rgba(8,20,38,.05)}.contact-cards strong{display:block;font-size:22px;color:var(--red)}.contact-cards span{display:block;color:var(--muted);margin-top:8px}

/* Forms and modal */
.page-form,.enquiry-form{background:#fff;border:1px solid var(--line);border-radius:30px;padding:30px;box-shadow:var(--shadow)}.page-form.wide{padding:38px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;margin-bottom:15px}label span{display:block;font-weight:900;color:var(--navy);margin-bottom:8px}input,select,textarea{width:100%;border:1px solid #dfe6ef;background:#f8fafc;border-radius:16px;padding:14px 15px;font-size:16px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(18,106,122,.10)}
.submit-btn{width:100%;border:0;background:var(--red);color:#fff;border-radius:18px;min-height:54px;font-weight:900;font-size:16px;cursor:pointer}.submit-btn .btn-loading{display:none}.submit-btn.is-loading .btn-text{display:none}.submit-btn.is-loading .btn-loading{display:inline}.form-progress{height:6px;background:#edf1f5;border-radius:999px;overflow:hidden;margin-bottom:18px}.form-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--teal),var(--red));transition:.3s}.server-message{padding:14px 16px;border-radius:16px;margin-bottom:16px;font-weight:900}.server-message.success{background:#ecfdf3;color:#087443}.server-message.error{background:#fff0f0;color:#b42318}.privacy-note{display:block;color:var(--muted);margin-top:12px;text-align:center}
.modal-backdrop{position:fixed;inset:0;z-index:2000;background:rgba(5,13,24,.72);backdrop-filter:blur(10px);display:grid;place-items:center;padding:24px}.modal-backdrop[hidden]{display:none}.enquiry-modal{width:min(980px,100%);max-height:92vh;overflow:auto;background:var(--paper);border-radius:34px;display:grid;grid-template-columns:.9fr 1.1fr;position:relative;box-shadow:0 40px 120px rgba(0,0,0,.35)}.modal-close{position:absolute;right:18px;top:16px;width:40px;height:40px;border:0;border-radius:50%;background:var(--navy);color:#fff;font-size:26px;cursor:pointer}.modal-copy{padding:42px;background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff}.modal-copy h2{font-size:52px;line-height:.98;margin:24px 0 16px}.modal-copy p{color:#cde6eb;line-height:1.65}.modal-service-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.modal-service-pills button{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.10);color:#fff;border-radius:999px;padding:10px 12px;font-weight:900;cursor:pointer}.enquiry-form{border:0;border-radius:0;box-shadow:none}

/* Footer */
.site-footer{position:relative;overflow:hidden;background:radial-gradient(circle at 18% 20%,rgba(178,42,38,.20),transparent 30%),radial-gradient(circle at 86% 10%,rgba(18,106,122,.16),transparent 28%),#050d18;color:#fff;padding:92px 0 28px}
.footer-glow{position:absolute;inset:0;opacity:.11;background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,black,transparent 92%)}
.footer-main{position:relative;display:grid;grid-template-columns:1.45fr repeat(4,1fr);gap:34px;align-items:start}.footer-brand-block{padding:28px;border:1px solid rgba(255,255,255,.10);border-radius:30px;background:rgba(255,255,255,.04);box-shadow:0 24px 70px rgba(0,0,0,.22)}.footer-brand-block img{width:310px;max-width:100%;height:auto;object-fit:contain;background:#fff;padding:16px 18px;border-radius:20px}.footer-brand-block p,.footer-newsletter p{color:#aab7ca;line-height:1.72;font-size:16px}.footer-contact-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.footer-contact-chips a{display:inline-flex;min-height:38px;align-items:center;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);color:#fff;font-size:13px;font-weight:800}.footer-link-group{padding-top:10px}.footer-link-group strong{display:block;color:#fff;font-size:19px;font-weight:900;margin-bottom:18px}.footer-link-group a{display:flex;align-items:center;gap:8px;color:#94a4ba;font-size:15px;font-weight:700;margin:13px 0;transition:.25s}.footer-link-group a:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--red);opacity:.8}.footer-link-group a:hover{color:#fff;transform:translateX(4px)}.footer-cta:before{display:none}.footer-newsletter small{display:block;color:#6f8098;margin-top:16px;font-weight:800}.footer-bottom{position:relative;border-top:1px solid rgba(255,255,255,.09);margin-top:62px;padding-top:24px;display:flex;justify-content:space-between;gap:22px;color:#71829a;font-weight:700}

/* Responsive */
@media(max-width:1200px){.category-grid{grid-template-columns:repeat(3,1fr)}.footer-main{grid-template-columns:1.4fr 1fr 1fr}.product-grid,.solution-strip,.solutions-grid{grid-template-columns:1fr 1fr}}
@media(max-width:1100px){
  .nav-toggle{display:block}.nav-button{display:none}.main-nav{position:fixed;left:22px;right:22px;top:126px;background:#fff;border:1px solid rgba(8,20,38,.08);border-radius:24px;padding:24px;display:none;flex-direction:column;align-items:flex-start;box-shadow:0 18px 50px rgba(8,20,38,.12)}.main-nav.open{display:flex}
  .hero-grid,.product-highlight,.cta-inner,.two-col,.contact-grid-page{grid-template-columns:1fr}.hero-panel{margin-top:30px}.service-row{grid-template-columns:60px 70px 1fr}.row-action{grid-column:3}
  .mission-grid,.values-grid{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr 1fr}
}
@media(max-width:800px){
  .container-wide,.container-narrow,.nav-inner,.top-contact-inner{width:min(100% - 28px,1360px)}.top-contact-inner{padding:9px 0;display:block}.top-contact-left,.top-contact-right{gap:10px 18px}.top-contact-right{margin-top:8px}.top-contact-right span,.top-contact-left a[href^="mailto"]{display:none}.brand img{width:220px;max-height:54px}.main-nav{top:138px}.hero-lean{padding:170px 0 74px}.hero-copy h1,.page-hero h1,.center-copy h2,.section-head h2,.product-copy h2,.final-cta h2,.service-details h2{font-size:42px;line-height:1.02}.hero-copy p,.page-hero p,.center-copy p,.section-head p,.product-copy p,.final-cta p{font-size:17px}.hero-actions,.form-grid{grid-template-columns:1fr;display:grid}.hero-trust,.category-grid,.product-grid,.solution-strip,.solutions-grid{grid-template-columns:1fr}.section{padding:76px 0}.section-head{display:block}.section-head p{margin-top:18px}.service-row{grid-template-columns:1fr;gap:15px}.row-action{grid-column:auto}.product-stack div{display:block}.product-stack span{display:block;margin-top:8px}.enquiry-modal{grid-template-columns:1fr}.modal-copy{padding:30px}.modal-copy h2{font-size:38px}.footer-main{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin:8px 0}
}


/* v14 refinements: cropped logo, dotted header, hero slider, clickable service ticker */
.site-header{
  overflow:visible;
}

.site-header::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:38px;
  bottom:0;
  pointer-events:none;
  opacity:.38;
  background-image:radial-gradient(circle, rgba(8,20,38,.16) 1.15px, transparent 1.25px);
  background-size:18px 18px;
  z-index:0;
}

.top-contact-bar,
.nav-inner{
  position:relative;
  z-index:1;
}

.nav-inner{
  background:rgba(255,255,255,.84);
  border-radius:0 0 28px 28px;
}

.brand img{
  width:268px;
  max-height:54px;
  object-fit:contain;
}

.footer-brand-block img{
  width:300px;
  max-height:82px;
  object-fit:contain;
}

/* Hero slider */
.hero-slider-section{
  position:relative;
  overflow:hidden;
  color:#fff;
  min-height:calc(100vh + 90px);
  background:linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%);
}

.hero-slides{
  position:relative;
  min-height:calc(100vh + 90px);
}

.hero-slide{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  padding:180px 0 145px;
  opacity:0;
  visibility:hidden;
  transform:translateX(32px);
  transition:opacity .65s ease, transform .65s ease, visibility .65s ease;
}

.hero-slide.active{
  opacity:1;
  visibility:visible;
  transform:translateX(0);
  z-index:2;
}

.hero-slide:nth-child(2){
  background:linear-gradient(135deg,#1b1730 0%,#8f2433 52%,#b22a26 100%);
}

.hero-slide:nth-child(3){
  background:linear-gradient(135deg,#071426 0%,#182f4d 48%,#101827 100%);
}

.hero-slider-section .hero-pattern{
  z-index:4;
  pointer-events:none;
}

.hero-slider-section .hero-grid{
  z-index:5;
}

.hero-slider-section .hero-copy,
.hero-slider-section .hero-panel{
  opacity:0;
  transform:translateY(22px);
  transition:.7s ease;
}

.hero-slide.active .hero-copy,
.hero-slide.active .hero-panel{
  opacity:1;
  transform:none;
}

.hero-slide.active .hero-panel{
  transition-delay:.12s;
}

.hero-controls{
  position:absolute;
  z-index:10;
  left:50%;
  bottom:78px;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:18px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(14px);
  padding:10px 14px;
  border-radius:999px;
}

.hero-controls button{
  border:0;
  cursor:pointer;
}

.hero-controls > button{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:var(--navy);
  font-size:30px;
  line-height:1;
  font-weight:900;
}

.hero-dots{
  display:flex;
  align-items:center;
  gap:8px;
}

.hero-dots button{
  width:10px;
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,.52);
  padding:0;
  transition:.25s ease;
}

.hero-dots button.active{
  width:34px;
  background:#fff;
}

.software-panel .pos-card{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.software-panel .pos-card div{
  border-radius:24px;
  padding:22px;
  background:linear-gradient(135deg,var(--navy),var(--red));
  color:#fff;
}

.software-panel .pos-card small{
  display:block;
  color:rgba(255,255,255,.74);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.software-panel .pos-card strong{
  display:block;
  font-size:30px;
  margin-top:8px;
  font-weight:900;
}

.table-lines{
  display:grid;
  gap:12px;
  margin-top:20px;
}

.table-lines span{
  height:26px;
  border-radius:999px;
  background:#eef3f8;
  position:relative;
  overflow:hidden;
}

.table-lines span::after{
  content:"";
  position:absolute;
  inset:0;
  width:55%;
  background:linear-gradient(90deg,#dbe4ef,#f8fafc);
}

.infra-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.infra-grid div{
  min-height:128px;
  border-radius:26px;
  background:#f2f6fb;
  border:1px solid #e2eaf3;
  display:grid;
  place-items:center;
  color:var(--navy);
  font-size:42px;
  font-weight:900;
}

.infra-grid span{
  display:block;
  font-size:16px;
  color:var(--muted);
  margin-top:4px;
}

.ticker-track a{
  color:#fff;
  display:inline-flex;
  align-items:center;
  min-height:68px;
  transition:.25s ease;
}

.ticker-track a:hover{
  color:#d4f4fa;
  transform:translateY(-2px);
}

@media(max-width:1100px){
  .hero-slider-section,
  .hero-slides{
    min-height:auto;
  }

  .hero-slide{
    position:relative;
    display:none;
    min-height:auto;
    padding:170px 0 128px;
  }

  .hero-slide.active{
    display:flex;
  }

  .hero-controls{
    bottom:34px;
  }
}

@media(max-width:800px){
  .site-header::after{
    top:38px;
    background-size:16px 16px;
  }

  .nav-inner{
    border-radius:0 0 20px 20px;
  }

  .brand img{
    width:216px;
    max-height:48px;
  }

  .hero-slide{
    padding:168px 0 118px;
  }

  .hero-controls{
    bottom:24px;
  }

  .software-panel .pos-card,
  .infra-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:480px){
  .brand img{
    width:198px;
  }
}


/* v15: web technologies slider + company content refinements */
.hero-slide:nth-child(4){
  background:linear-gradient(135deg,#071426 0%,#0f3b5f 46%,#1f7f8f 100%);
}

.web-tech-panel .browser-preview{
  overflow:hidden;
  border-radius:26px;
  border:1px solid #e2eaf3;
  background:#f8fafc;
}

.browser-nav{
  height:52px;
  background:#eaf0f7;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 16px;
}

.browser-nav span{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#b7c3d2;
}

.browser-nav b{
  margin-left:10px;
  color:#627087;
  font-size:14px;
  font-weight:900;
}

.browser-hero-block{
  height:145px;
  margin:18px;
  border-radius:24px;
  background:
    radial-gradient(circle at 82% 24%,rgba(255,255,255,.35),transparent 18%),
    linear-gradient(135deg,var(--navy),var(--teal));
}

.browser-content-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  padding:0 18px 18px;
}

.browser-content-grid i{
  height:82px;
  border-radius:20px;
  background:#edf3f8;
  border:1px solid #dfe8f2;
}

.mission-grid div{
  min-height:230px;
}

.contact-cards{
  align-content:start;
}


/* v16 dedicated solution detail pages */
.solution-hero-detail{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:198px 0 105px;
  background:linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%);
}

.solution-hero-detail.pos-theme{
  background:linear-gradient(135deg,#1b1730 0%,#8f2433 55%,#b22a26 100%);
}

.solution-hero-detail.inventory-theme{
  background:linear-gradient(135deg,#071426 0%,#19385f 52%,#101827 100%);
}

.solution-hero-pattern{
  position:absolute;
  inset:0;
  opacity:.13;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 10% 20%,rgba(255,255,255,.9) 0 8px,transparent 9px),
    radial-gradient(circle at 84% 18%,rgba(255,255,255,.8) 0 7px,transparent 8px),
    repeating-linear-gradient(36deg,transparent 0 82px,rgba(255,255,255,.30) 84px 94px,transparent 96px 170px);
}

.solution-hero-grid{
  position:relative;
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:70px;
  align-items:center;
}

.solution-hero-copy h1{
  font-size:clamp(46px,5.2vw,82px);
  line-height:.98;
  margin:24px 0 20px;
  font-weight:900;
  letter-spacing:-.035em;
}

.solution-hero-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:760px;
}

.solution-mini-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:28px;
}

.solution-mini-tags span{
  padding:10px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.15);
  color:#fff;
  font-weight:900;
  font-size:13px;
}

.solution-showcase-card{
  overflow:hidden;
  border-radius:34px;
  background:#fff;
  box-shadow:0 34px 90px rgba(0,0,0,.22);
  color:var(--navy);
}

.showcase-top{
  height:54px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  background:#edf1f7;
}

.showcase-top i{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#b4bfce;
}

.showcase-top strong{
  margin-left:10px;
  color:#617086;
  font-weight:900;
}

.showcase-main{
  padding:28px;
}

.showcase-metric{
  border-radius:28px;
  background:linear-gradient(135deg,var(--navy),var(--teal));
  padding:28px;
  color:#fff;
}

.pos-theme .showcase-metric{
  background:linear-gradient(135deg,var(--navy),var(--red));
}

.inventory-theme .showcase-metric{
  background:linear-gradient(135deg,#101827,#19385f);
}

.showcase-metric small{
  display:block;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  color:rgba(255,255,255,.72);
}

.showcase-metric b{
  display:block;
  font-size:70px;
  line-height:1;
  font-weight:900;
  margin-top:8px;
}

.showcase-metric span{
  color:rgba(255,255,255,.80);
}

.showcase-bars{
  display:grid;
  gap:12px;
  margin-top:20px;
}

.showcase-bars span{
  height:26px;
  border-radius:999px;
  background:#eef3f8;
  position:relative;
  overflow:hidden;
}

.showcase-bars span::after{
  content:"";
  position:absolute;
  inset:0;
  width:58%;
  background:linear-gradient(90deg,#dbe4ef,#f8fafc);
}

.showcase-bars span:nth-child(2)::after{width:72%}
.showcase-bars span:nth-child(3)::after{width:48%}
.showcase-bars span:nth-child(4)::after{width:64%}

.showcase-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}

.showcase-pills em{
  font-style:normal;
  padding:10px 13px;
  border-radius:999px;
  background:#f7f2ea;
  color:var(--red);
  font-weight:900;
  font-size:13px;
}

.solution-overview-section{
  background:var(--paper);
}

.problem-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

.problem-grid div{
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  padding:24px;
  box-shadow:0 12px 38px rgba(8,20,38,.05);
}

.problem-grid strong{
  display:block;
  color:var(--red);
  font-size:24px;
  font-weight:900;
  margin-bottom:12px;
}

.problem-grid p{
  color:var(--muted);
  line-height:1.65;
  margin:0;
}

.solution-main-section{
  background:var(--cream);
}

.solution-main-grid{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:40px;
  align-items:start;
}

.solution-sticky{
  position:sticky;
  top:150px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  padding:34px;
  box-shadow:var(--shadow);
}

.solution-sticky h2,
.integrations-card h2{
  font-size:clamp(38px,4vw,62px);
  line-height:1;
  margin:22px 0 16px;
  letter-spacing:-.03em;
}

.solution-sticky p,
.integrations-card p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin-bottom:24px;
}

.feature-box{
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  padding:34px;
  box-shadow:0 12px 38px rgba(8,20,38,.05);
}

.feature-box h3{
  font-size:38px;
  margin:0 0 22px;
  font-weight:900;
}

.feature-box ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.feature-box li{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:16px;
  border-radius:18px;
  background:#f8fafc;
  color:#344055;
  font-weight:800;
  line-height:1.45;
}

.feature-box li span{
  color:var(--red);
  font-weight:900;
}

.audience-section{
  background:#fffaf2;
}

.audience-tags{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.audience-tags span{
  padding:14px 18px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 10px 30px rgba(8,20,38,.04);
  font-weight:900;
}

.benefits-section{
  background:var(--navy);
  color:#fff;
}

.benefits-section .section-head p{
  color:#aeb9c9;
}

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

.benefit-grid article{
  padding:28px;
  border-radius:28px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
}

.benefit-grid b{
  display:block;
  font-size:25px;
  line-height:1.05;
  margin-bottom:14px;
  font-weight:900;
}

.benefit-grid p{
  color:#aeb9c9;
  line-height:1.65;
}

.integrations-section{
  background:var(--paper);
}

.integrations-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:34px;
  padding:40px;
  box-shadow:var(--shadow);
}

.integration-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin:30px 0;
}

.integration-grid div{
  border-radius:24px;
  background:#f8fafc;
  border:1px solid #e5ecf5;
  padding:24px;
}

.integration-grid strong{
  display:block;
  font-size:22px;
  font-weight:900;
  color:var(--navy);
}

.integration-grid span{
  display:block;
  color:var(--muted);
  line-height:1.55;
  margin-top:8px;
}

.report-list{
  background:var(--cream);
  border-radius:24px;
  padding:24px;
}

.report-list strong{
  display:block;
  font-size:22px;
  margin-bottom:14px;
}

.report-list ul{
  columns:2;
  margin:0;
  padding-left:20px;
  color:#344055;
  font-weight:800;
  line-height:1.8;
}

.process-section-detail{
  background:var(--cream);
}

.process-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.process-grid article{
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  padding:30px;
  box-shadow:0 12px 38px rgba(8,20,38,.05);
}

.process-grid b{
  color:var(--red);
  font-size:24px;
  font-weight:900;
}

.process-grid h3{
  font-size:31px;
  margin:18px 0 10px;
  font-weight:900;
}

.process-grid p{
  color:var(--muted);
  line-height:1.65;
}

.faq-list{
  margin-top:34px;
  display:grid;
  gap:12px;
}

.faq-list details{
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:20px 24px;
  box-shadow:0 10px 30px rgba(8,20,38,.04);
}

.faq-list summary{
  cursor:pointer;
  font-size:20px;
  font-weight:900;
  color:var(--navy);
}

.faq-list p{
  color:var(--muted);
  line-height:1.65;
  margin:14px 0 0;
}

.related-section{
  background:#fff;
}

.related-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.related-grid a{
  display:block;
  padding:28px;
  border-radius:28px;
  background:var(--navy);
  color:#fff;
  min-height:150px;
  transition:.25s ease;
}

.related-grid a:hover{
  transform:translateY(-5px);
  background:linear-gradient(135deg,var(--navy),var(--teal));
}

.related-grid span{
  display:block;
  font-size:26px;
  font-weight:900;
  line-height:1.05;
}

.related-grid b{
  display:block;
  margin-top:22px;
  color:#d4f4fa;
}

.solution-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-top:20px;
}

.solution-actions a,
.solution-actions button{
  margin-top:0 !important;
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:16px;
  padding:0 16px;
  font-weight:900;
}

.solution-actions a{
  background:var(--cream);
  color:var(--navy);
  border:1px solid var(--line);
}

.solution-actions button{
  background:var(--navy);
  color:#fff;
}

@media(max-width:1100px){
  .solution-hero-grid,
  .solution-main-grid{
    grid-template-columns:1fr;
  }

  .solution-sticky{
    position:relative;
    top:auto;
  }

  .benefit-grid,
  .integration-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:800px){
  .solution-hero-detail{
    padding:178px 0 76px;
  }

  .solution-hero-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .problem-grid,
  .feature-box ul,
  .benefit-grid,
  .integration-grid,
  .process-grid,
  .related-grid{
    grid-template-columns:1fr;
  }

  .report-list ul{
    columns:1;
  }

  .integrations-card{
    padding:26px;
  }
}


/* v17: expanded useful report descriptions */
.report-list ul{
  columns:1;
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
}

.report-list li{
  background:#fff;
  border:1px solid rgba(8,20,38,.08);
  border-radius:18px;
  padding:18px 20px;
  color:var(--navy);
}

.report-list li strong{
  display:block;
  font-size:18px;
  font-weight:900;
  margin-bottom:7px;
  color:var(--navy);
}

.report-list li span{
  display:block;
  color:#637083;
  line-height:1.55;
  font-weight:700;
  font-size:15px;
}

@media(max-width:800px){
  .report-list ul{
    grid-template-columns:1fr;
  }
}


/* v18: additional high-conversion solution page themes */
.solution-hero-detail.mpesa-theme{
  background:linear-gradient(135deg,#071426 0%,#0b5f4c 48%,#0f8f63 100%);
}

.solution-hero-detail.cctv-theme{
  background:linear-gradient(135deg,#050d18 0%,#121c2d 52%,#343b4d 100%);
}

.solution-hero-detail.printer-theme{
  background:linear-gradient(135deg,#071426 0%,#243c5a 48%,#6f2230 100%);
}

.mpesa-theme .showcase-metric{
  background:linear-gradient(135deg,#071426,#0f8f63);
}

.cctv-theme .showcase-metric{
  background:linear-gradient(135deg,#050d18,#343b4d);
}

.printer-theme .showcase-metric{
  background:linear-gradient(135deg,#071426,#6f2230);
}


/* v19: CRM, Loan Management and SACCO solution page themes */
.solution-hero-detail.crm-theme{
  background:linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.solution-hero-detail.loan-theme{
  background:linear-gradient(135deg,#171225 0%,#5f2342 48%,#b22a26 100%);
}

.solution-hero-detail.sacco-theme{
  background:linear-gradient(135deg,#071426 0%,#15375f 48%,#0b5f4c 100%);
}

.crm-theme .showcase-metric{
  background:linear-gradient(135deg,#071426,#126a7a);
}

.loan-theme .showcase-metric{
  background:linear-gradient(135deg,#171225,#b22a26);
}

.sacco-theme .showcase-metric{
  background:linear-gradient(135deg,#071426,#0b5f4c);
}


/* v20: less monotonous solution pages + premium stylish buttons */

/* Premium buttons: avoid flat black/dark buttons */
.btn-dark,
.nav-button,
.solution-card button,
.product-card button,
.row-action,
.solution-actions button,
.submit-btn{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:0 !important;
  background:
    linear-gradient(135deg,var(--red) 0%,#7f1f35 48%,var(--navy) 100%) !important;
  color:#fff !important;
  box-shadow:0 18px 38px rgba(178,42,38,.22), inset 0 1px 0 rgba(255,255,255,.18);
}

.btn-dark::before,
.nav-button::before,
.solution-card button::before,
.product-card button::before,
.row-action::before,
.solution-actions button::before,
.submit-btn::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(135deg,var(--teal) 0%,var(--red) 55%,#f7b267 120%);
  opacity:0;
  transition:.28s ease;
}

.btn-dark:hover::before,
.nav-button:hover::before,
.solution-card button:hover::before,
.product-card button:hover::before,
.row-action:hover::before,
.solution-actions button:hover::before,
.submit-btn:hover::before{
  opacity:1;
}

.btn-white{
  box-shadow:0 18px 42px rgba(255,255,255,.18), inset 0 1px 0 rgba(255,255,255,.7);
}

.solution-actions a{
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(135deg,var(--teal),var(--red)) border-box !important;
  border:1px solid transparent !important;
  color:var(--navy) !important;
  box-shadow:0 12px 28px rgba(8,20,38,.08);
}

.footer-cta{
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(135deg,var(--teal),var(--red)) border-box !important;
  border:1px solid transparent !important;
  color:var(--navy) !important;
  box-shadow:0 16px 38px rgba(255,255,255,.12);
}

/* New visual snapshot section */
.solution-snapshot-section{
  position:relative;
  margin-top:-42px;
  z-index:6;
  padding:0 0 86px;
}

.solution-snapshot{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:24px;
  align-items:stretch;
  padding:26px;
  border-radius:34px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.snapshot-copy{
  border-radius:28px;
  padding:34px;
  background:
    radial-gradient(circle at 86% 10%,rgba(18,106,122,.16),transparent 28%),
    var(--paper);
  border:1px solid rgba(8,20,38,.08);
}

.snapshot-copy h2{
  font-size:clamp(34px,3.3vw,54px);
  line-height:1.02;
  letter-spacing:-.03em;
  margin:22px 0 14px;
  font-weight:900;
}

.snapshot-copy p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
}

.snapshot-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.snapshot-cards article{
  min-height:220px;
  border-radius:26px;
  padding:24px;
  color:#fff;
  background:
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.snapshot-cards article:nth-child(2){
  background:
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,#7f1f35,var(--red));
}

.snapshot-cards article:nth-child(3){
  background:
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,#14213d,#364b6d);
}

.snapshot-cards article::before{
  content:"";
  position:absolute;
  width:120px;
  height:120px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:50%;
  right:-34px;
  top:-34px;
}

.snapshot-cards strong{
  display:block;
  font-size:26px;
  line-height:1.02;
  font-weight:900;
  margin-bottom:12px;
}

.snapshot-cards span{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:700;
}

/* Break the repeated look through alternating content treatments */
.solution-overview-section{
  position:relative;
  overflow:hidden;
}

.solution-overview-section::before{
  content:"";
  position:absolute;
  left:-120px;
  top:70px;
  width:360px;
  height:360px;
  border-radius:50%;
  background:rgba(178,42,38,.08);
}

.solution-main-section{
  position:relative;
  overflow:hidden;
}

.solution-main-section::after{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-110px;
  width:360px;
  height:360px;
  border-radius:50%;
  background:rgba(18,106,122,.12);
}

.solution-main-grid,
.benefits-section .container-wide,
.integrations-card,
.process-section-detail .container-wide,
.faq-section .container-narrow,
.related-section .container-wide{
  position:relative;
  z-index:1;
}

.solution-sticky{
  background:
    radial-gradient(circle at 88% 10%,rgba(18,106,122,.14),transparent 28%),
    #fff;
}

.feature-box{
  background:
    linear-gradient(180deg,#fff 0%,#fffaf2 100%);
}

.feature-box li{
  min-height:78px;
  background:#fff;
  border:1px solid rgba(8,20,38,.07);
  box-shadow:0 10px 24px rgba(8,20,38,.04);
}

.feature-box li:nth-child(3n+1){
  border-left:4px solid var(--teal);
}

.feature-box li:nth-child(3n+2){
  border-left:4px solid var(--red);
}

.feature-box li:nth-child(3n+3){
  border-left:4px solid #f7b267;
}

.audience-section{
  background:
    radial-gradient(circle at 12% 22%,rgba(178,42,38,.09),transparent 24%),
    #fffaf2;
}

.audience-tags span:nth-child(odd){
  background:var(--navy);
  color:#fff;
  border-color:transparent;
}

.audience-tags span:nth-child(even){
  background:#fff;
}

.benefits-section{
  background:
    radial-gradient(circle at 18% 18%,rgba(178,42,38,.26),transparent 28%),
    radial-gradient(circle at 86% 12%,rgba(18,106,122,.22),transparent 24%),
    #071426;
}

.benefit-grid article{
  position:relative;
  overflow:hidden;
}

.benefit-grid article:nth-child(even){
  transform:translateY(24px);
}

.benefit-grid article::after{
  content:"";
  position:absolute;
  right:-30px;
  bottom:-30px;
  width:110px;
  height:110px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
}

.integrations-card{
  background:
    radial-gradient(circle at 92% 8%,rgba(178,42,38,.10),transparent 24%),
    #fff;
}

.integration-grid div:nth-child(1){
  background:linear-gradient(135deg,#f8fafc,#eaf7f9);
}

.integration-grid div:nth-child(2){
  background:linear-gradient(135deg,#fffaf2,#fff0ef);
}

.integration-grid div:nth-child(3){
  background:linear-gradient(135deg,#f8fafc,#f1f5f9);
}

.integration-grid div:nth-child(4){
  background:linear-gradient(135deg,#fffaf2,#eef8f8);
}

.process-grid article{
  position:relative;
  overflow:hidden;
}

.process-grid article:nth-child(2){
  margin-top:28px;
}

.process-grid article:nth-child(3){
  margin-top:56px;
}

.process-grid article::before{
  content:"";
  position:absolute;
  width:110px;
  height:110px;
  right:-34px;
  top:-34px;
  border-radius:50%;
  background:rgba(178,42,38,.07);
}

.faq-section{
  background:
    linear-gradient(180deg,var(--paper),#fff);
}

.faq-list details{
  transition:.25s ease;
}

.faq-list details[open]{
  border-color:rgba(178,42,38,.25);
  box-shadow:0 18px 42px rgba(178,42,38,.08);
}

.related-grid a{
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 24%),
    linear-gradient(135deg,var(--navy),#162c49);
}

/* Theme-specific card accents */
.stock-theme ~ .solution-snapshot-section .snapshot-copy,
.pos-theme ~ .solution-snapshot-section .snapshot-copy,
.inventory-theme ~ .solution-snapshot-section .snapshot-copy,
.mpesa-theme ~ .solution-snapshot-section .snapshot-copy,
.cctv-theme ~ .solution-snapshot-section .snapshot-copy,
.printer-theme ~ .solution-snapshot-section .snapshot-copy,
.crm-theme ~ .solution-snapshot-section .snapshot-copy,
.loan-theme ~ .solution-snapshot-section .snapshot-copy,
.sacco-theme ~ .solution-snapshot-section .snapshot-copy{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.5);
}

.pos-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1),
.loan-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1){
  background:linear-gradient(135deg,#43152b,var(--red));
}

.mpesa-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1),
.sacco-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1){
  background:linear-gradient(135deg,#071426,#0f8f63);
}

.cctv-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1){
  background:linear-gradient(135deg,#050d18,#343b4d);
}

.printer-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1){
  background:linear-gradient(135deg,#243c5a,#6f2230);
}

/* Homepage and hub card actions also feel premium */
.solution-actions{
  gap:12px;
}

.solution-actions a:hover,
.solution-actions button:hover{
  transform:translateY(-2px);
}

@media(max-width:1100px){
  .solution-snapshot{
    grid-template-columns:1fr;
  }

  .snapshot-cards{
    grid-template-columns:1fr 1fr 1fr;
  }
}

@media(max-width:800px){
  .solution-snapshot-section{
    margin-top:-18px;
    padding-bottom:68px;
  }

  .solution-snapshot{
    padding:16px;
    border-radius:26px;
  }

  .snapshot-copy{
    padding:26px;
  }

  .snapshot-cards{
    grid-template-columns:1fr;
  }

  .snapshot-cards article{
    min-height:170px;
  }

  .benefit-grid article:nth-child(even),
  .process-grid article:nth-child(2),
  .process-grid article:nth-child(3){
    transform:none;
    margin-top:0;
  }
}


/* v21 product detail pages */
.product-hero-detail{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:198px 0 105px;
  background:linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%);
}

.product-hero-detail.pos-product-theme{
  background:linear-gradient(135deg,#1b1730 0%,#8f2433 55%,#b22a26 100%);
}

.product-hero-detail.kazi-product-theme{
  background:linear-gradient(135deg,#050d18 0%,#1d1d24 48%,#b22a26 100%);
}

.product-hero-detail.mkulima-product-theme{
  background:linear-gradient(135deg,#071426 0%,#0b5f4c 48%,#5c8f2f 100%);
}

.product-hero-pattern{
  position:absolute;
  inset:0;
  opacity:.13;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.9) 0 8px,transparent 9px),
    radial-gradient(circle at 85% 15%,rgba(255,255,255,.8) 0 7px,transparent 8px),
    repeating-linear-gradient(36deg,transparent 0 82px,rgba(255,255,255,.30) 84px 94px,transparent 96px 170px);
}

.product-hero-grid{
  position:relative;
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:70px;
  align-items:center;
}

.product-hero-copy h1{
  font-size:clamp(46px,5.2vw,82px);
  line-height:.98;
  margin:24px 0 20px;
  font-weight:900;
  letter-spacing:-.035em;
}

.product-hero-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:760px;
}

.product-showcase{
  overflow:hidden;
  border-radius:34px;
  background:#fff;
  color:var(--navy);
  box-shadow:0 34px 90px rgba(0,0,0,.22);
}

.product-window-top{
  height:54px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  background:#edf1f7;
}

.product-window-top i{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#b4bfce;
}

.product-window-top strong{
  margin-left:10px;
  color:#617086;
  font-weight:900;
}

.product-window-body{
  padding:28px;
}

.product-score{
  border-radius:28px;
  padding:28px;
  color:#fff;
  background:linear-gradient(135deg,var(--navy),var(--teal));
}

.pos-product-theme .product-score{
  background:linear-gradient(135deg,var(--navy),var(--red));
}

.kazi-product-theme .product-score{
  background:linear-gradient(135deg,#0b0b0d,var(--red));
}

.mkulima-product-theme .product-score{
  background:linear-gradient(135deg,#071426,#0b8f5e);
}

.product-score small{
  display:block;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  color:rgba(255,255,255,.72);
}

.product-score b{
  display:block;
  font-size:70px;
  line-height:1;
  font-weight:900;
  margin-top:8px;
}

.product-score span{
  color:rgba(255,255,255,.82);
}

.product-ui-lines{
  display:grid;
  gap:12px;
  margin-top:20px;
}

.product-ui-lines span{
  height:26px;
  border-radius:999px;
  background:#eef3f8;
  position:relative;
  overflow:hidden;
}

.product-ui-lines span::after{
  content:"";
  position:absolute;
  inset:0;
  width:58%;
  background:linear-gradient(90deg,#dbe4ef,#f8fafc);
}

.product-ui-lines span:nth-child(2)::after{width:72%}
.product-ui-lines span:nth-child(3)::after{width:48%}
.product-ui-lines span:nth-child(4)::after{width:64%}

.product-ui-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}

.product-ui-pills em{
  font-style:normal;
  padding:10px 13px;
  border-radius:999px;
  background:#f7f2ea;
  color:var(--red);
  font-weight:900;
  font-size:13px;
}

.product-intro-section{
  position:relative;
  z-index:6;
  margin-top:-42px;
  padding-bottom:82px;
}

.product-intro-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  padding:34px;
  border-radius:34px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.product-intro-card h2,
.product-feature-copy h2,
.product-roadmap-copy h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 0;
  font-weight:900;
}

.product-intro-card p,
.product-feature-copy p,
.product-roadmap-copy p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin:0;
}

.product-modules-section{
  background:var(--cream);
}

.product-module-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}

.product-module-grid div{
  min-height:230px;
  border-radius:28px;
  padding:26px;
  color:#fff;
  background:
    radial-gradient(circle at 84% 12%,rgba(255,255,255,.18),transparent 26%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.product-module-grid div:nth-child(2){
  background:linear-gradient(135deg,#7f1f35,var(--red));
}

.product-module-grid div:nth-child(3){
  background:linear-gradient(135deg,#14213d,#364b6d);
}

.product-module-grid div:nth-child(4){
  background:linear-gradient(135deg,#071426,#0b5f4c);
}

.product-module-grid div::before{
  content:"";
  position:absolute;
  width:126px;
  height:126px;
  border-radius:50%;
  right:-40px;
  top:-40px;
  border:1px solid rgba(255,255,255,.18);
}

.product-module-grid strong{
  font-size:27px;
  line-height:1.02;
  font-weight:900;
  margin-bottom:12px;
}

.product-module-grid span{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:700;
}

.product-features-section{
  background:#fffaf2;
}

.product-feature-layout{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:40px;
  align-items:start;
}

.product-feature-copy{
  position:sticky;
  top:150px;
  padding:34px;
  border-radius:30px;
  background:
    radial-gradient(circle at 90% 10%,rgba(18,106,122,.14),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.product-feature-copy .btn{
  margin-top:26px;
}

.product-feature-box{
  background:linear-gradient(180deg,#fff 0%,#fffaf2 100%);
}

.product-audience-section{
  background:
    radial-gradient(circle at 12% 22%,rgba(178,42,38,.09),transparent 24%),
    #fffaf2;
}

.product-benefits-section{
  background:
    radial-gradient(circle at 18% 18%,rgba(178,42,38,.26),transparent 28%),
    radial-gradient(circle at 86% 12%,rgba(18,106,122,.22),transparent 24%),
    #071426;
  color:#fff;
}

.product-benefits-section .section-head p{
  color:#aeb9c9;
}

.product-status-section{
  background:var(--paper);
}

.product-status-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:30px;
  align-items:stretch;
  padding:34px;
  border-radius:34px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.product-roadmap-copy{
  padding:26px;
  border-radius:28px;
  background:var(--cream);
}

.product-roadmap-list{
  padding:30px;
  border-radius:28px;
  background:linear-gradient(135deg,var(--navy),#182f4d);
  color:#fff;
}

.product-roadmap-list strong{
  display:block;
  font-size:26px;
  font-weight:900;
  margin-bottom:18px;
}

.product-roadmap-list ul{
  margin:0;
  padding-left:22px;
  color:#d7e0ec;
  font-weight:800;
  line-height:1.9;
}

.product-actions{
  align-items:center;
}

.product-stack a{
  padding:20px 22px;
  border-radius:22px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  justify-content:space-between;
  gap:20px;
  color:#fff;
  transition:.25s ease;
}

.product-stack a:hover{
  transform:translateX(6px);
  background:rgba(255,255,255,.12);
}

@media(max-width:1100px){
  .product-hero-grid,
  .product-intro-card,
  .product-feature-layout,
  .product-status-grid{
    grid-template-columns:1fr;
  }

  .product-feature-copy{
    position:relative;
    top:auto;
  }

  .product-module-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:800px){
  .product-hero-detail{
    padding:178px 0 76px;
  }

  .product-hero-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .product-intro-section{
    margin-top:-18px;
    padding-bottom:62px;
  }

  .product-intro-card,
  .product-status-grid{
    padding:20px;
    border-radius:26px;
  }

  .product-module-grid{
    grid-template-columns:1fr;
  }

  .product-module-grid div{
    min-height:180px;
  }

  .product-stack a{
    display:block;
  }

  .product-stack a span{
    display:block;
    margin-top:8px;
  }
}


/* v22: Mkulima Bora traction section */
.mkulima-traction-section{
  padding:0 0 88px;
  background:var(--paper);
}

.mkulima-traction-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:24px;
  align-items:stretch;
  border-radius:34px;
  padding:28px;
  background:
    radial-gradient(circle at 88% 10%,rgba(11,143,94,.15),transparent 26%),
    #fff;
  border:1px solid var(--line);
  box-shadow:0 28px 80px rgba(8,20,38,.12);
}

.traction-copy{
  border-radius:28px;
  padding:34px;
  background:
    radial-gradient(circle at 12% 18%,rgba(178,42,38,.10),transparent 28%),
    var(--cream);
  border:1px solid rgba(8,20,38,.08);
}

.traction-copy h2{
  font-size:clamp(34px,3.4vw,56px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 14px;
  font-weight:900;
}

.traction-copy p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin:0;
}

.traction-metrics{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.traction-metrics article{
  min-height:240px;
  border-radius:28px;
  padding:26px;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,#071426,#0b8f5e);
}

.traction-metrics article:nth-child(2){
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,#0b5f4c,#5c8f2f);
}

.traction-metrics article:nth-child(3){
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,#14213d,#b22a26);
}

.traction-metrics article::before{
  content:"";
  position:absolute;
  right:-40px;
  top:-40px;
  width:130px;
  height:130px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.20);
}

.traction-metrics strong{
  display:block;
  font-size:clamp(36px,4vw,64px);
  line-height:.95;
  font-weight:900;
  letter-spacing:-.04em;
}

.traction-metrics span{
  display:block;
  color:rgba(255,255,255,.80);
  font-size:16px;
  font-weight:800;
  margin-top:12px;
}

@media(max-width:1100px){
  .mkulima-traction-card{
    grid-template-columns:1fr;
  }
}

@media(max-width:800px){
  .mkulima-traction-section{
    padding-bottom:68px;
  }

  .mkulima-traction-card{
    padding:18px;
    border-radius:26px;
  }

  .traction-copy{
    padding:26px;
  }

  .traction-metrics{
    grid-template-columns:1fr;
  }

  .traction-metrics article{
    min-height:180px;
  }
}


/* v23: alternate product page UI to avoid monotony */
.alt-product-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  min-height:720px;
  padding:198px 0 120px;
  background:linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%);
}

.alt-product-hero.guarantify-alt{
  background:linear-gradient(135deg,#071426 0%,#183b62 45%,#b22a26 100%);
}

.alt-product-hero.mahaba-alt{
  background:linear-gradient(135deg,#1b0f24 0%,#742047 50%,#d4527d 100%);
}

.alt-product-hero.smartkids-alt{
  background:linear-gradient(135deg,#071426 0%,#126a7a 48%,#f7b267 130%);
}

.alt-product-hero.afya-alt{
  background:linear-gradient(135deg,#21102e 0%,#84389d 50%,#d4527d 100%);
}

.alt-hero-pattern{
  position:absolute;
  inset:0;
  opacity:.15;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 16% 20%,rgba(255,255,255,.9) 0 8px,transparent 9px),
    radial-gradient(circle at 84% 16%,rgba(255,255,255,.75) 0 7px,transparent 8px),
    repeating-linear-gradient(45deg,transparent 0 76px,rgba(255,255,255,.26) 78px 88px,transparent 90px 160px);
}

.alt-product-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr .95fr;
  gap:70px;
  align-items:center;
}

.alt-product-copy h1{
  font-size:clamp(46px,5.1vw,82px);
  line-height:.98;
  margin:24px 0 20px;
  font-weight:900;
  letter-spacing:-.035em;
}

.alt-product-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:760px;
}

.alt-product-orbit{
  position:relative;
  min-height:460px;
  display:grid;
  place-items:center;
}

.orbit-core{
  width:280px;
  height:280px;
  border-radius:50%;
  display:grid;
  place-items:center;
  text-align:center;
  padding:35px;
  background:rgba(255,255,255,.94);
  color:var(--navy);
  box-shadow:0 35px 95px rgba(0,0,0,.25);
  position:relative;
  z-index:3;
}

.orbit-core::before,
.orbit-core::after{
  content:"";
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.28);
}

.orbit-core::before{
  inset:-58px;
}

.orbit-core::after{
  inset:-112px;
}

.orbit-core small{
  display:block;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--red);
  font-weight:900;
  font-size:12px;
}

.orbit-core strong{
  display:block;
  font-size:54px;
  line-height:.95;
  font-weight:900;
  letter-spacing:-.04em;
}

.orbit-core span{
  display:block;
  color:var(--muted);
  line-height:1.35;
  font-weight:800;
  margin-top:6px;
}

.orbit-pill{
  position:absolute;
  z-index:4;
  min-height:50px;
  display:grid;
  place-items:center;
  padding:0 18px;
  border-radius:999px;
  background:rgba(255,255,255,.15);
  color:#fff;
  border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(14px);
  font-weight:900;
  box-shadow:0 18px 42px rgba(0,0,0,.12);
}

.orbit-pill.p1{top:54px;left:56px}
.orbit-pill.p2{top:110px;right:10px}
.orbit-pill.p3{bottom:96px;left:0}
.orbit-pill.p4{bottom:44px;right:74px}

.alt-product-brief{
  margin-top:-54px;
  position:relative;
  z-index:6;
  padding-bottom:86px;
}

.alt-brief-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  padding:34px;
  border-radius:34px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(255,255,255,.70);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.alt-brief-card h2,
.alt-flow-copy h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 0;
  font-weight:900;
}

.alt-brief-card p,
.alt-flow-copy p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin:0;
}

.alt-feature-mosaic{
  background:
    radial-gradient(circle at 12% 16%,rgba(178,42,38,.08),transparent 26%),
    var(--cream);
}

.alt-tile-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr 1fr;
  gap:18px;
}

.alt-tile-grid article{
  min-height:250px;
  border-radius:30px;
  padding:28px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 12px 38px rgba(8,20,38,.05);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.alt-tile-grid article:nth-child(1),
.alt-tile-grid article:nth-child(5){
  grid-row:span 2;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  color:#fff;
}

.alt-tile-grid article:nth-child(3){
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#7f1f35,var(--red));
  color:#fff;
}

.alt-tile-grid article span{
  position:absolute;
  top:22px;
  left:24px;
  color:var(--red);
  font-size:22px;
  font-weight:900;
}

.alt-tile-grid article:nth-child(1) span,
.alt-tile-grid article:nth-child(3) span,
.alt-tile-grid article:nth-child(5) span{
  color:rgba(255,255,255,.65);
}

.alt-tile-grid strong{
  display:block;
  font-size:28px;
  line-height:1.02;
  font-weight:900;
  margin-bottom:12px;
}

.alt-tile-grid p{
  color:var(--muted);
  line-height:1.62;
  font-weight:700;
}

.alt-tile-grid article:nth-child(1) p,
.alt-tile-grid article:nth-child(3) p,
.alt-tile-grid article:nth-child(5) p{
  color:rgba(255,255,255,.78);
}

.alt-flow-section{
  background:#fffaf2;
}

.alt-flow-layout{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:40px;
  align-items:start;
}

.alt-flow-copy{
  position:sticky;
  top:150px;
  padding:34px;
  border-radius:30px;
  background:
    radial-gradient(circle at 92% 10%,rgba(18,106,122,.14),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.alt-flow-copy .btn{
  margin-top:26px;
}

.alt-flow-steps{
  display:grid;
  gap:18px;
  counter-reset:flow;
}

.alt-flow-steps div{
  min-height:150px;
  padding:28px;
  border-radius:28px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 12px 38px rgba(8,20,38,.05);
  display:grid;
  grid-template-columns:70px 1fr;
  gap:10px 22px;
  align-items:start;
}

.alt-flow-steps div:nth-child(even){
  transform:translateX(34px);
}

.alt-flow-steps b{
  grid-row:span 2;
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:linear-gradient(135deg,var(--red),var(--navy));
  color:#fff;
  font-size:21px;
  font-weight:900;
}

.alt-flow-steps strong{
  font-size:26px;
  font-weight:900;
  line-height:1.05;
}

.alt-flow-steps p{
  margin:0;
  color:var(--muted);
  line-height:1.62;
  font-weight:700;
}

.alt-audience-section{
  background:
    radial-gradient(circle at 12% 22%,rgba(178,42,38,.09),transparent 24%),
    #fffaf2;
}

.alt-proof-section{
  color:#fff;
  background:
    radial-gradient(circle at 18% 18%,rgba(178,42,38,.26),transparent 28%),
    radial-gradient(circle at 86% 12%,rgba(18,106,122,.22),transparent 24%),
    #071426;
}

.alt-proof-section .section-head p{
  color:#aeb9c9;
}

.alt-proof-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.alt-proof-grid article{
  min-height:260px;
  border-radius:30px;
  padding:28px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  position:relative;
  overflow:hidden;
}

.alt-proof-grid article:nth-child(even){
  transform:translateY(26px);
}

.alt-proof-grid article::after{
  content:"";
  position:absolute;
  right:-32px;
  bottom:-32px;
  width:118px;
  height:118px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
}

.alt-proof-grid strong{
  display:block;
  font-size:26px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:14px;
}

.alt-proof-grid p{
  color:#aeb9c9;
  line-height:1.65;
  font-weight:700;
}

/* Product-specific accents */
.mahaba-alt ~ .alt-product-brief .alt-brief-card,
.afya-alt ~ .alt-product-brief .alt-brief-card{
  background:rgba(255,250,252,.88);
}

.smartkids-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(1),
.smartkids-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(5){
  background:linear-gradient(135deg,#0b5f4c,#f7b267);
}

.mahaba-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(1),
.mahaba-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(5){
  background:linear-gradient(135deg,#2b1339,#d4527d);
}

.afya-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(1),
.afya-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(5){
  background:linear-gradient(135deg,#84389d,#d4527d);
}

.guarantify-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(1),
.guarantify-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(5){
  background:linear-gradient(135deg,#071426,#b22a26);
}

@media(max-width:1100px){
  .alt-product-grid,
  .alt-brief-card,
  .alt-flow-layout{
    grid-template-columns:1fr;
  }

  .alt-product-orbit{
    min-height:420px;
  }

  .alt-tile-grid{
    grid-template-columns:1fr 1fr;
  }

  .alt-flow-copy{
    position:relative;
    top:auto;
  }

  .alt-proof-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:800px){
  .alt-product-hero{
    min-height:auto;
    padding:178px 0 90px;
  }

  .alt-product-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .alt-product-orbit{
    min-height:360px;
  }

  .orbit-core{
    width:235px;
    height:235px;
  }

  .orbit-core::before{
    inset:-34px;
  }

  .orbit-core::after{
    inset:-70px;
  }

  .orbit-pill{
    font-size:13px;
    min-height:42px;
    padding:0 13px;
  }

  .orbit-pill.p1{top:34px;left:10px}
  .orbit-pill.p2{top:80px;right:0}
  .orbit-pill.p3{bottom:68px;left:0}
  .orbit-pill.p4{bottom:20px;right:18px}

  .alt-product-brief{
    margin-top:-24px;
    padding-bottom:64px;
  }

  .alt-brief-card{
    padding:22px;
    border-radius:26px;
  }

  .alt-tile-grid,
  .alt-proof-grid{
    grid-template-columns:1fr;
  }

  .alt-tile-grid article:nth-child(1),
  .alt-tile-grid article:nth-child(5){
    grid-row:auto;
  }

  .alt-flow-steps div{
    grid-template-columns:1fr;
  }

  .alt-flow-steps div:nth-child(even),
  .alt-proof-grid article:nth-child(even){
    transform:none;
  }
}


/* v24: third product page layout style */
.showcase-product-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:198px 0 118px;
  background:linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.showcase-product-hero.uza-product-theme{
  background:linear-gradient(135deg,#071426 0%,#5f2342 48%,#b22a26 100%);
}

.showcase-product-pattern{
  position:absolute;
  inset:0;
  opacity:.14;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 13% 18%,rgba(255,255,255,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 7px,transparent 8px),
    linear-gradient(120deg,transparent 0 55%,rgba(255,255,255,.14) 55% 56%,transparent 56% 100%);
}

.showcase-product-grid{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:center;
}

.showcase-product-copy h1{
  font-size:clamp(46px,5.1vw,82px);
  line-height:.98;
  margin:24px 0 20px;
  font-weight:900;
  letter-spacing:-.035em;
}

.showcase-product-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:760px;
}

.showcase-dashboard{
  border-radius:36px;
  background:#fff;
  color:var(--navy);
  overflow:hidden;
  box-shadow:0 35px 95px rgba(0,0,0,.24);
  transform:rotate(1.5deg);
}

.uza-product-theme .showcase-dashboard{
  transform:rotate(-1.5deg);
}

.dash-top{
  height:56px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  background:#eef3f8;
}

.dash-top i{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#b4bfce;
}

.dash-top strong{
  margin-left:10px;
  color:#617086;
  font-weight:900;
}

.dash-body{
  padding:28px;
}

.dash-main-card{
  min-height:220px;
  border-radius:30px;
  padding:30px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 14%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.uza-product-theme .dash-main-card{
  background:
    radial-gradient(circle at 88% 14%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--red));
}

.dash-main-card small{
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:900;
  color:rgba(255,255,255,.72);
}

.dash-main-card strong{
  font-size:72px;
  line-height:.95;
  font-weight:900;
  letter-spacing:-.05em;
  margin:10px 0;
}

.dash-main-card span{
  color:rgba(255,255,255,.82);
  font-weight:800;
}

.dash-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:16px;
}

.dash-stats article{
  border-radius:22px;
  padding:18px;
  background:#f7f2ea;
  border:1px solid rgba(8,20,38,.06);
}

.dash-stats small{
  display:block;
  color:var(--muted);
  font-weight:900;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.dash-stats strong{
  display:block;
  font-size:24px;
  line-height:1;
  margin:10px 0 6px;
  color:var(--red);
  font-weight:900;
}

.dash-stats span{
  color:var(--muted);
  font-weight:800;
  font-size:13px;
}

.showcase-intro-strip{
  position:relative;
  z-index:6;
  margin-top:-48px;
  padding-bottom:86px;
}

.showcase-intro-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  padding:34px;
  border-radius:34px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(255,255,255,.70);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.showcase-intro-card h2,
.journey-copy h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 0;
  font-weight:900;
}

.showcase-intro-card p,
.journey-copy p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin:0;
}

.showcase-capabilities-section{
  background:var(--cream);
}

.capability-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.capability-grid article{
  min-height:250px;
  padding:28px;
  border-radius:30px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 42px rgba(8,20,38,.06);
  position:relative;
  overflow:hidden;
}

.capability-grid article:nth-child(2),
.capability-grid article:nth-child(5){
  transform:translateY(32px);
}

.capability-grid article::before{
  content:"";
  position:absolute;
  right:-36px;
  top:-36px;
  width:120px;
  height:120px;
  border-radius:50%;
  background:rgba(18,106,122,.10);
}

.uza-product-theme ~ .showcase-intro-strip + .showcase-capabilities-section .capability-grid article::before{
  background:rgba(178,42,38,.10);
}

.capability-grid div{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:linear-gradient(135deg,var(--navy),var(--teal));
  font-size:25px;
  margin-bottom:28px;
}

.uza-product-theme ~ .showcase-intro-strip + .showcase-capabilities-section .capability-grid div{
  background:linear-gradient(135deg,var(--navy),var(--red));
}

.capability-grid strong{
  display:block;
  font-size:26px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:12px;
}

.capability-grid p{
  color:var(--muted);
  line-height:1.62;
  font-weight:700;
}

.showcase-journey-section{
  background:#fff;
}

.showcase-journey-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:40px;
  align-items:start;
}

.journey-copy{
  position:sticky;
  top:150px;
  padding:34px;
  border-radius:30px;
  background:
    radial-gradient(circle at 92% 10%,rgba(18,106,122,.14),transparent 28%),
    var(--cream);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.journey-copy .btn{
  margin-top:26px;
}

.journey-rail{
  display:grid;
  gap:18px;
  position:relative;
}

.journey-rail::before{
  content:"";
  position:absolute;
  left:34px;
  top:22px;
  bottom:22px;
  width:2px;
  background:linear-gradient(var(--red),var(--teal));
}

.journey-rail div{
  position:relative;
  margin-left:76px;
  padding:28px;
  border-radius:28px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 42px rgba(8,20,38,.06);
}

.journey-rail b{
  position:absolute;
  left:-76px;
  top:24px;
  width:68px;
  height:68px;
  display:grid;
  place-items:center;
  border-radius:24px;
  background:linear-gradient(135deg,var(--red),var(--navy));
  color:#fff;
  font-size:21px;
  font-weight:900;
  box-shadow:0 18px 38px rgba(178,42,38,.20);
}

.journey-rail strong{
  display:block;
  font-size:26px;
  line-height:1.05;
  font-weight:900;
  margin-bottom:10px;
}

.journey-rail p{
  margin:0;
  color:var(--muted);
  line-height:1.62;
  font-weight:700;
}

.showcase-audience-section{
  background:
    radial-gradient(circle at 12% 22%,rgba(178,42,38,.09),transparent 24%),
    #fffaf2;
}

.showcase-outcomes-section{
  background:#071426;
  color:#fff;
}

.showcase-outcomes-card{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:32px;
  align-items:start;
  padding:36px;
  border-radius:36px;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.18),transparent 26%),
    rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
}

.showcase-outcomes-card h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 14px;
  font-weight:900;
}

.showcase-outcomes-card p{
  color:#aeb9c9;
  line-height:1.7;
  font-size:18px;
}

.showcase-outcomes-card ul{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  list-style:none;
  margin:0;
  padding:0;
}

.showcase-outcomes-card li{
  min-height:190px;
  border-radius:28px;
  padding:24px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.showcase-outcomes-card li:nth-child(even){
  transform:translateY(22px);
}

.showcase-outcomes-card li strong{
  display:block;
  font-size:25px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:12px;
}

.showcase-outcomes-card li span{
  color:#aeb9c9;
  line-height:1.55;
  font-weight:700;
}

@media(max-width:1100px){
  .showcase-product-grid,
  .showcase-intro-card,
  .showcase-journey-grid,
  .showcase-outcomes-card{
    grid-template-columns:1fr;
  }

  .showcase-dashboard,
  .uza-product-theme .showcase-dashboard{
    transform:none;
  }

  .journey-copy{
    position:relative;
    top:auto;
  }
}

@media(max-width:800px){
  .showcase-product-hero{
    padding:178px 0 86px;
  }

  .showcase-product-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .showcase-intro-strip{
    margin-top:-20px;
    padding-bottom:64px;
  }

  .showcase-intro-card,
  .showcase-outcomes-card{
    padding:22px;
    border-radius:26px;
  }

  .dash-stats,
  .capability-grid,
  .showcase-outcomes-card ul{
    grid-template-columns:1fr;
  }

  .capability-grid article:nth-child(2),
  .capability-grid article:nth-child(5),
  .showcase-outcomes-card li:nth-child(even){
    transform:none;
  }

  .journey-rail::before{
    display:none;
  }

  .journey-rail div{
    margin-left:0;
  }

  .journey-rail b{
    position:static;
    margin-bottom:18px;
  }
}


/* v25: Industries hub and industry detail pages */
.industries-hub-hero,
.industry-detail-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:198px 0 112px;
  background:linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.industry-detail-hero.finance-industry{
  background:linear-gradient(135deg,#071426 0%,#5f2342 48%,#b22a26 100%);
}

.industry-detail-hero.schools-industry{
  background:linear-gradient(135deg,#071426 0%,#126a7a 48%,#f7b267 130%);
}

.industry-detail-hero.agri-industry{
  background:linear-gradient(135deg,#071426 0%,#0b5f4c 48%,#5c8f2f 100%);
}

.industries-pattern{
  position:absolute;
  inset:0;
  opacity:.14;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 14% 18%,rgba(255,255,255,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 7px,transparent 8px),
    repeating-linear-gradient(45deg,transparent 0 78px,rgba(255,255,255,.24) 80px 90px,transparent 92px 160px);
}

.industries-hub-grid,
.industry-detail-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr .82fr;
  gap:70px;
  align-items:center;
}

.industries-hub-grid h1,
.industry-detail-copy h1{
  font-size:clamp(46px,5.2vw,84px);
  line-height:.98;
  margin:24px 0 20px;
  font-weight:900;
  letter-spacing:-.035em;
}

.industries-hub-grid p,
.industry-detail-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:780px;
}

.industries-hub-visual,
.industry-metric-card{
  min-height:360px;
  border-radius:36px;
  padding:34px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 35px 90px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.industries-hub-visual::before,
.industry-metric-card::before{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  border-radius:50%;
  right:-70px;
  top:-70px;
  border:1px solid rgba(255,255,255,.22);
}

.industries-hub-visual strong,
.industry-metric-card strong{
  display:block;
  font-size:clamp(72px,8vw,128px);
  line-height:.85;
  font-weight:900;
  letter-spacing:-.06em;
}

.industry-metric-card small{
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:900;
  color:rgba(255,255,255,.72);
}

.industries-hub-visual span,
.industry-metric-card span{
  color:rgba(255,255,255,.84);
  font-size:20px;
  font-weight:900;
  margin-top:18px;
}

.industries-hub-visual em{
  color:rgba(255,255,255,.72);
  font-style:normal;
  font-weight:800;
  margin-top:10px;
}

.industries-grid-section{
  background:var(--cream);
}

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

.industry-card{
  min-height:390px;
  border-radius:32px;
  padding:26px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  overflow:hidden;
  position:relative;
}

.industry-card.finance-industry{
  background:linear-gradient(135deg,#071426,#b22a26);
}

.industry-card.schools-industry{
  background:linear-gradient(135deg,#126a7a,#f7b267);
}

.industry-card.agri-industry{
  background:linear-gradient(135deg,#071426,#0b8f5e);
}

.industry-card::before{
  content:"";
  position:absolute;
  right:-42px;
  top:-42px;
  width:140px;
  height:140px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.20);
}

.industry-card-top{
  position:absolute;
  top:24px;
  left:24px;
  right:24px;
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
}

.industry-card-top span{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(255,255,255,.76);
  font-weight:900;
}

.industry-card-top strong{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(12px);
}

.industry-card h3{
  font-size:32px;
  line-height:1.02;
  font-weight:900;
  margin:0 0 14px;
}

.industry-card p{
  color:rgba(255,255,255,.78);
  line-height:1.58;
  font-weight:700;
}

.industry-card a{
  margin-top:22px;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  width:max-content;
  padding:13px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:#fff;
  border:1px solid rgba(255,255,255,.20);
  font-weight:900;
}

.industry-method-section{
  background:#fff;
}

.method-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:34px;
  padding:36px;
  border-radius:36px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.method-grid h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 14px;
  font-weight:900;
}

.method-grid p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
}

.method-steps{
  display:grid;
  gap:16px;
}

.method-steps article{
  padding:24px;
  border-radius:28px;
  background:var(--cream);
  display:grid;
  grid-template-columns:62px 1fr;
  gap:6px 18px;
  align-items:start;
}

.method-steps b{
  grid-row:span 2;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(135deg,var(--red),var(--navy));
  color:#fff;
  font-weight:900;
}

.method-steps strong{
  font-size:24px;
  font-weight:900;
}

.method-steps span{
  color:var(--muted);
  font-weight:700;
  line-height:1.55;
}

.industry-problem-strip{
  position:relative;
  z-index:6;
  margin-top:-48px;
  padding-bottom:86px;
}

.industry-problem-card{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:28px;
  padding:34px;
  border-radius:34px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(255,255,255,.70);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.industry-problem-card h2,
.industry-products-card h2,
.showcase-outcomes-card h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 0;
  font-weight:900;
}

.industry-problem-card p,
.industry-products-card p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin:0;
}

.industry-solutions-section{
  background:var(--cream);
}

.industry-solution-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.industry-solution-grid article{
  min-height:310px;
  padding:26px;
  border-radius:30px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 42px rgba(8,20,38,.06);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.industry-solution-grid article:nth-child(2),
.industry-solution-grid article:nth-child(4){
  transform:translateY(28px);
}

.industry-solution-grid article::before{
  content:"";
  position:absolute;
  right:-38px;
  top:-38px;
  width:126px;
  height:126px;
  border-radius:50%;
  background:rgba(18,106,122,.10);
}

.industry-solution-grid span{
  position:absolute;
  top:24px;
  left:24px;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--red);
  font-weight:900;
}

.industry-solution-grid h3{
  font-size:28px;
  line-height:1.03;
  font-weight:900;
  margin:0 0 12px;
}

.industry-solution-grid p{
  color:var(--muted);
  line-height:1.58;
  font-weight:700;
}

.industry-solution-grid a{
  margin-top:20px;
  width:max-content;
  display:inline-flex;
  gap:8px;
  align-items:center;
  padding:12px 15px;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,var(--red),var(--navy));
  font-weight:900;
}

.industry-products-section{
  background:#fff;
}

.industry-products-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  padding:34px;
  border-radius:36px;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.12),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.industry-product-links{
  display:grid;
  gap:14px;
}

.industry-product-links a{
  display:grid;
  grid-template-columns:.55fr 1fr;
  gap:18px;
  padding:22px;
  border-radius:24px;
  background:var(--cream);
  border:1px solid rgba(8,20,38,.06);
  color:var(--navy);
  transition:.25s ease;
}

.industry-product-links a:hover{
  transform:translateX(6px);
}

.industry-product-links strong{
  font-size:24px;
  line-height:1.05;
  font-weight:900;
}

.industry-product-links span{
  color:var(--muted);
  line-height:1.5;
  font-weight:700;
}

.industry-outcomes-section{
  background:#071426;
  color:#fff;
}

.industry-outcomes-section .section-head p{
  color:#aeb9c9;
}

.industry-outcome-grid{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.industry-outcome-grid li{
  min-height:260px;
  border-radius:30px;
  padding:26px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.industry-outcome-grid li:nth-child(even){
  transform:translateY(28px);
}

.industry-outcome-grid li::before{
  content:"";
  position:absolute;
  right:-34px;
  bottom:-34px;
  width:120px;
  height:120px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
}

.industry-outcome-grid strong{
  display:block;
  font-size:26px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:12px;
}

.industry-outcome-grid span{
  color:#aeb9c9;
  line-height:1.55;
  font-weight:700;
}

@media(max-width:1200px){
  .industry-card-grid,
  .industry-solution-grid,
  .industry-outcome-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:1000px){
  .industries-hub-grid,
  .industry-detail-grid,
  .method-grid,
  .industry-problem-card,
  .industry-products-card{
    grid-template-columns:1fr;
  }
}

@media(max-width:800px){
  .industries-hub-hero,
  .industry-detail-hero{
    padding:178px 0 84px;
  }

  .industries-hub-grid h1,
  .industry-detail-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .industry-card-grid,
  .industry-solution-grid,
  .industry-outcome-grid{
    grid-template-columns:1fr;
  }

  .industry-problem-strip{
    margin-top:-22px;
    padding-bottom:64px;
  }

  .industry-problem-card,
  .method-grid,
  .industry-products-card{
    padding:22px;
    border-radius:26px;
  }

  .industry-solution-grid article:nth-child(2),
  .industry-solution-grid article:nth-child(4),
  .industry-outcome-grid li:nth-child(even){
    transform:none;
  }

  .industry-product-links a{
    grid-template-columns:1fr;
  }

  .method-steps article{
    grid-template-columns:1fr;
  }
}


/* v26: more industries on hub + better fitting card previews */
.industry-card-grid{
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.industry-card{
  min-height:430px;
  padding:28px;
}

.industry-card h3{
  font-size:30px;
  margin-bottom:12px;
}

.industry-card p{
  font-size:16px;
  line-height:1.52;
  max-width:95%;
  min-height:74px;
}

.industry-card a{
  margin-top:18px;
}

.industry-card.health-industry{
  background:linear-gradient(135deg,#21102e,#84389d);
}

.industry-card.property-industry{
  background:linear-gradient(135deg,#071426,#364b6d);
}

.industry-card.hospitality-industry{
  background:linear-gradient(135deg,#5f2342,#b22a26);
}

.industry-card.ngo-industry{
  background:linear-gradient(135deg,#126a7a,#243c5a);
}

.industry-detail-hero.health-industry{
  background:linear-gradient(135deg,#21102e 0%,#84389d 48%,#d4527d 100%);
}

.industry-detail-hero.property-industry{
  background:linear-gradient(135deg,#071426 0%,#243c5a 48%,#364b6d 100%);
}

.industry-detail-hero.hospitality-industry{
  background:linear-gradient(135deg,#2b1339 0%,#7f1f35 48%,#b22a26 100%);
}

.industry-detail-hero.ngo-industry{
  background:linear-gradient(135deg,#071426 0%,#126a7a 48%,#243c5a 100%);
}

@media(max-width:1400px){
  .industry-card-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:1200px){
  .industry-card{
    min-height:400px;
  }
}

@media(max-width:800px){
  .industry-card{
    min-height:360px;
    padding:24px;
  }

  .industry-card p{
    min-height:auto;
  }
}
@font-face{
  font-family:'OfficinaCypher';
  src:url('../fonts/officina-display-itc-std-light.otf') format('opentype');
  font-weight:300;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'OfficinaCypher';
  src:url('../fonts/officina-display-itc-std-regular.otf') format('opentype');
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'OfficinaCypher';
  src:url('../fonts/officina-display-itc-std-bold.otf') format('opentype');
  font-weight:700;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'OfficinaCypher';
  src:url('../fonts/officina-display-itc-std-black.otf') format('opentype');
  font-weight:900;font-style:normal;font-display:swap;
}

:root{
  --navy:#081426;
  --navy2:#102944;
  --teal:#126a7a;
  --teal2:#1f7f8f;
  --red:#b22a26;
  --red2:#df4d54;
  --cream:#f7f2ea;
  --paper:#fffaf2;
  --white:#fff;
  --text:#101827;
  --muted:#637083;
  --line:rgba(8,20,38,.11);
  --shadow:0 28px 80px rgba(8,20,38,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--paper);color:var(--text);
  font-family:'OfficinaCypher',Arial,sans-serif;
  font-weight:400;overflow-x:hidden;
}
a{text-decoration:none;color:inherit}
button,input,textarea,select{font-family:inherit}
img{max-width:100%;display:block}
.skip-link{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:10px;z-index:9999}
.skip-link:focus{left:12px;top:12px}
.container-wide{width:min(1360px,calc(100% - 44px));margin:auto}
.container-narrow{width:min(1080px,calc(100% - 44px));margin:auto}
.center-copy{text-align:center}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}

/* Header */
.site-header{position:fixed;inset:0 0 auto;z-index:1000;background:#fff;box-shadow:0 12px 40px rgba(8,20,38,.08)}
.top-contact-bar{background:var(--navy);color:#fff;font-size:14px;font-weight:700}
.top-contact-inner{width:min(1460px,calc(100% - 44px));margin:auto;min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.top-contact-left,.top-contact-right{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.top-contact-bar a,.top-contact-bar span{color:rgba(255,255,255,.86)}
.top-contact-bar a:hover{color:#fff}
.top-contact-right a{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);padding:6px 12px;border-radius:999px}
.nav-inner{width:min(1460px,calc(100% - 44px));margin:auto;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:26px}
.brand img{width:285px;max-height:60px;object-fit:contain}
.main-nav{display:flex;align-items:center;gap:28px;margin-left:auto}
.main-nav a{color:var(--navy);font-weight:800;font-size:15px;position:relative}
.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-10px;height:3px;background:var(--red);border-radius:999px;transition:.25s}
.main-nav a:hover:after,.main-nav a.active:after{right:0}
.nav-button,.btn{min-height:54px;border-radius:18px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:900;font-size:15px;transition:.25s;border:1px solid transparent;cursor:pointer}
.nav-button{background:var(--navy);color:#fff}
.nav-button:hover,.btn:hover{transform:translateY(-2px)}
.nav-toggle{display:none;background:none;border:0;padding:8px}
.nav-toggle span{display:block;width:28px;height:3px;background:var(--navy);margin:5px 0;border-radius:99px}

/* Buttons */
.btn-white{background:#fff;color:var(--navy);box-shadow:0 16px 34px rgba(255,255,255,.15)}
.btn-glass{color:#fff;background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.20)}
.btn-dark{background:var(--navy);color:#fff}
button.footer-cta,.footer-cta{justify-content:center;min-height:48px;padding:0 18px;border-radius:16px;background:#fff;color:var(--navy)!important;font-weight:900!important;border:0;cursor:pointer}

/* Hero */
.hero-lean{position:relative;overflow:hidden;color:#fff;padding:190px 0 95px;background:linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%)}
.hero-pattern{position:absolute;inset:0;opacity:.13;mix-blend-mode:screen;background-image:radial-gradient(circle at 10% 20%,rgba(255,255,255,.9) 0 8px,transparent 9px),radial-gradient(circle at 84% 18%,rgba(255,255,255,.8) 0 7px,transparent 8px),repeating-linear-gradient(36deg,transparent 0 82px,rgba(255,255,255,.30) 84px 94px,transparent 96px 170px),repeating-radial-gradient(circle at 18% 50%,transparent 0 56px,rgba(255,255,255,.45) 58px 66px,transparent 68px 130px)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}
.section-kicker{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 16px;border-radius:10px;background:rgba(178,42,38,.10);color:var(--red);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900}
.section-kicker.light{background:rgba(255,255,255,.13);color:#fff}
.hero-copy h1,.page-hero h1,.center-copy h2,.section-head h2,.product-copy h2,.final-cta h2,.service-details h2,.solution-card h2,.product-card h2,.two-col h2{font-size:clamp(44px,5.4vw,86px);line-height:.98;margin:24px 0 20px;font-weight:900;letter-spacing:-.035em}
.hero-copy p,.page-hero p,.center-copy p,.section-head p,.product-copy p,.final-cta p,.service-details p,.solution-card p,.product-card p,.about-copy p{font-size:19px;line-height:1.68;color:var(--muted);margin:0}
.hero-copy p,.final-cta p{color:rgba(255,255,255,.84)}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:34px}
.hero-trust div{padding:18px;border-radius:20px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.14)}
.hero-trust strong{display:block;font-size:26px;font-weight:900}
.hero-trust span{display:block;color:rgba(255,255,255,.75);font-size:13px;margin-top:5px}
.hero-panel{border-radius:34px;background:#fff;box-shadow:0 34px 90px rgba(0,0,0,.22);overflow:hidden;color:var(--navy)}
.panel-top{height:52px;background:#edf1f7;display:flex;align-items:center;gap:8px;padding:0 18px}
.panel-top i{width:10px;height:10px;border-radius:50%;background:#b4bfce}.panel-top span{margin-left:12px;color:#6a7789;font-weight:800}
.panel-body{padding:28px}
.big-metric{border-radius:28px;background:linear-gradient(135deg,var(--navy),var(--teal));padding:28px;color:#fff}
.big-metric small{display:block;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#a9dce4}.big-metric strong{display:block;font-size:76px;font-weight:900;line-height:1}.big-metric span{color:#d7eef2}
.mini-dashboard{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.mini-dashboard span{height:94px;border-radius:22px;background:#f1f5f9;border:1px solid #e3e9f2}
.solution-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.solution-tags b{padding:10px 13px;border-radius:999px;background:#f7f2ea;color:var(--red);font-weight:900}

/* Sections */
.section{padding:100px 0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:54px}
.section-head p{max-width:480px}
.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:54px}
.category-card,.solution-card,.product-card,.service-row,.step-card,.values-grid>div{background:#fff;border:1px solid var(--line);border-radius:30px;box-shadow:0 12px 38px rgba(8,20,38,.05);transition:.3s}
.category-card{padding:28px}.category-card:hover,.solution-card:hover,.product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.card-icon{width:60px;height:60px;border-radius:20px;background:var(--cream);display:grid;place-items:center;color:var(--red);font-size:30px;font-weight:900}
.category-card h3{font-size:27px;line-height:1.05;margin:24px 0 12px;font-weight:900}.category-card p{color:var(--muted);line-height:1.65}.category-card a{display:inline-flex;margin-top:18px;color:var(--red);font-weight:900}
.ticker{height:68px;background:var(--navy);color:#fff;overflow:hidden;display:flex;align-items:center}
.ticker-track{display:flex;align-items:center;gap:24px;white-space:nowrap;animation:ticker 34s linear infinite;font-size:21px;font-weight:900}.ticker-track i{width:8px;height:8px;border-radius:50%;background:var(--red2)}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.featured-solutions{background:var(--cream)}
.solution-strip,.solutions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.solution-card{padding:30px}.solution-card span,.product-type{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(178,42,38,.08);color:var(--red);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.solution-card h3,.solution-card h2{font-size:32px;line-height:1.03;margin:20px 0 12px;font-weight:900}.solution-card p{font-size:17px;line-height:1.65;color:var(--muted)}
.solution-card button,.product-card button,.row-action{margin-top:20px;border:0;background:var(--navy);color:#fff;border-radius:16px;min-height:46px;padding:0 16px;font-weight:900;cursor:pointer}
.center-action{text-align:center;margin-top:36px}
.products-preview{background:var(--navy);color:#fff}.product-highlight{display:grid;grid-template-columns:.95fr 1.05fr;gap:60px;align-items:center}.product-copy p{color:#aeb9c9}.product-stack{display:grid;gap:12px}.product-stack div{padding:20px 22px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);display:flex;justify-content:space-between;gap:20px}.product-stack b{font-size:22px}.product-stack span{color:#aeb9c9}
.industry-grid{display:flex;flex-wrap:wrap;gap:12px}.industry-grid span,.filters-panel span,.tag-row b,.keyword-row span{padding:11px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:800;color:var(--navy)}
.final-cta{position:relative;overflow:hidden;background:linear-gradient(135deg,#8f2433,#521724);color:#fff;padding:105px 0}.final-cta.compact{padding:92px 0}.cta-pattern{position:absolute;inset:0;opacity:.11;background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px);background-size:58px 58px}.cta-inner{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}

/* Page heroes */
.page-hero{padding:195px 0 90px;background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;inset:0;opacity:.12;background-image:repeating-linear-gradient(38deg,transparent 0 80px,rgba(255,255,255,.25) 82px 92px,transparent 95px 170px)}.page-hero .container-wide{position:relative;z-index:1}.page-hero p{max-width:820px;color:rgba(255,255,255,.84)}
.service-list{display:grid;gap:18px}.service-row{display:grid;grid-template-columns:70px 80px 1fr auto;gap:24px;align-items:center;padding:28px}.service-number{font-size:22px;font-weight:900;color:var(--red)}.service-icon-large{width:76px;height:76px;border-radius:24px;background:var(--cream);display:grid;place-items:center;color:var(--red);font-size:34px}.service-details h2{font-size:40px;margin:0 0 10px}.keyword-row,.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.filters-panel{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:30px}.solutions-grid .solution-card{min-height:320px}.tag-row b{font-size:12px}
.seo-note{background:var(--cream)}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product-card{padding:30px;min-height:300px}.product-card h2{font-size:36px;margin:20px 0 12px}.product-status{margin-top:18px;color:var(--red);font-weight:900}
.two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.mission-grid,.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.mission-grid div,.values-grid>div{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px}.mission-grid strong,.values-grid b{display:block;font-size:22px;color:var(--red);font-weight:900}.mission-grid span{display:block;color:var(--muted);line-height:1.6;margin-top:8px}.values-section{background:var(--cream)}.values-grid h3{font-size:29px;margin:18px 0 10px}.values-grid p{color:var(--muted);line-height:1.65}
.contact-grid-page{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px}.contact-cards{display:grid;gap:14px}.contact-cards a,.contact-cards div{padding:24px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 38px rgba(8,20,38,.05)}.contact-cards strong{display:block;font-size:22px;color:var(--red)}.contact-cards span{display:block;color:var(--muted);margin-top:8px}

/* Forms and modal */
.page-form,.enquiry-form{background:#fff;border:1px solid var(--line);border-radius:30px;padding:30px;box-shadow:var(--shadow)}.page-form.wide{padding:38px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;margin-bottom:15px}label span{display:block;font-weight:900;color:var(--navy);margin-bottom:8px}input,select,textarea{width:100%;border:1px solid #dfe6ef;background:#f8fafc;border-radius:16px;padding:14px 15px;font-size:16px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(18,106,122,.10)}
.submit-btn{width:100%;border:0;background:var(--red);color:#fff;border-radius:18px;min-height:54px;font-weight:900;font-size:16px;cursor:pointer}.submit-btn .btn-loading{display:none}.submit-btn.is-loading .btn-text{display:none}.submit-btn.is-loading .btn-loading{display:inline}.form-progress{height:6px;background:#edf1f5;border-radius:999px;overflow:hidden;margin-bottom:18px}.form-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--teal),var(--red));transition:.3s}.server-message{padding:14px 16px;border-radius:16px;margin-bottom:16px;font-weight:900}.server-message.success{background:#ecfdf3;color:#087443}.server-message.error{background:#fff0f0;color:#b42318}.privacy-note{display:block;color:var(--muted);margin-top:12px;text-align:center}
.modal-backdrop{position:fixed;inset:0;z-index:2000;background:rgba(5,13,24,.72);backdrop-filter:blur(10px);display:grid;place-items:center;padding:24px}.modal-backdrop[hidden]{display:none}.enquiry-modal{width:min(980px,100%);max-height:92vh;overflow:auto;background:var(--paper);border-radius:34px;display:grid;grid-template-columns:.9fr 1.1fr;position:relative;box-shadow:0 40px 120px rgba(0,0,0,.35)}.modal-close{position:absolute;right:18px;top:16px;width:40px;height:40px;border:0;border-radius:50%;background:var(--navy);color:#fff;font-size:26px;cursor:pointer}.modal-copy{padding:42px;background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff}.modal-copy h2{font-size:52px;line-height:.98;margin:24px 0 16px}.modal-copy p{color:#cde6eb;line-height:1.65}.modal-service-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.modal-service-pills button{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.10);color:#fff;border-radius:999px;padding:10px 12px;font-weight:900;cursor:pointer}.enquiry-form{border:0;border-radius:0;box-shadow:none}

/* Footer */
.site-footer{position:relative;overflow:hidden;background:radial-gradient(circle at 18% 20%,rgba(178,42,38,.20),transparent 30%),radial-gradient(circle at 86% 10%,rgba(18,106,122,.16),transparent 28%),#050d18;color:#fff;padding:92px 0 28px}
.footer-glow{position:absolute;inset:0;opacity:.11;background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,black,transparent 92%)}
.footer-main{position:relative;display:grid;grid-template-columns:1.45fr repeat(4,1fr);gap:34px;align-items:start}.footer-brand-block{padding:28px;border:1px solid rgba(255,255,255,.10);border-radius:30px;background:rgba(255,255,255,.04);box-shadow:0 24px 70px rgba(0,0,0,.22)}.footer-brand-block img{width:310px;max-width:100%;height:auto;object-fit:contain;background:#fff;padding:16px 18px;border-radius:20px}.footer-brand-block p,.footer-newsletter p{color:#aab7ca;line-height:1.72;font-size:16px}.footer-contact-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.footer-contact-chips a{display:inline-flex;min-height:38px;align-items:center;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);color:#fff;font-size:13px;font-weight:800}.footer-link-group{padding-top:10px}.footer-link-group strong{display:block;color:#fff;font-size:19px;font-weight:900;margin-bottom:18px}.footer-link-group a{display:flex;align-items:center;gap:8px;color:#94a4ba;font-size:15px;font-weight:700;margin:13px 0;transition:.25s}.footer-link-group a:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--red);opacity:.8}.footer-link-group a:hover{color:#fff;transform:translateX(4px)}.footer-cta:before{display:none}.footer-newsletter small{display:block;color:#6f8098;margin-top:16px;font-weight:800}.footer-bottom{position:relative;border-top:1px solid rgba(255,255,255,.09);margin-top:62px;padding-top:24px;display:flex;justify-content:space-between;gap:22px;color:#71829a;font-weight:700}

/* Responsive */
@media(max-width:1200px){.category-grid{grid-template-columns:repeat(3,1fr)}.footer-main{grid-template-columns:1.4fr 1fr 1fr}.product-grid,.solution-strip,.solutions-grid{grid-template-columns:1fr 1fr}}
@media(max-width:1100px){
  .nav-toggle{display:block}.nav-button{display:none}.main-nav{position:fixed;left:22px;right:22px;top:126px;background:#fff;border:1px solid rgba(8,20,38,.08);border-radius:24px;padding:24px;display:none;flex-direction:column;align-items:flex-start;box-shadow:0 18px 50px rgba(8,20,38,.12)}.main-nav.open{display:flex}
  .hero-grid,.product-highlight,.cta-inner,.two-col,.contact-grid-page{grid-template-columns:1fr}.hero-panel{margin-top:30px}.service-row{grid-template-columns:60px 70px 1fr}.row-action{grid-column:3}
  .mission-grid,.values-grid{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr 1fr}
}
@media(max-width:800px){
  .container-wide,.container-narrow,.nav-inner,.top-contact-inner{width:min(100% - 28px,1360px)}.top-contact-inner{padding:9px 0;display:block}.top-contact-left,.top-contact-right{gap:10px 18px}.top-contact-right{margin-top:8px}.top-contact-right span,.top-contact-left a[href^="mailto"]{display:none}.brand img{width:220px;max-height:54px}.main-nav{top:138px}.hero-lean{padding:170px 0 74px}.hero-copy h1,.page-hero h1,.center-copy h2,.section-head h2,.product-copy h2,.final-cta h2,.service-details h2{font-size:42px;line-height:1.02}.hero-copy p,.page-hero p,.center-copy p,.section-head p,.product-copy p,.final-cta p{font-size:17px}.hero-actions,.form-grid{grid-template-columns:1fr;display:grid}.hero-trust,.category-grid,.product-grid,.solution-strip,.solutions-grid{grid-template-columns:1fr}.section{padding:76px 0}.section-head{display:block}.section-head p{margin-top:18px}.service-row{grid-template-columns:1fr;gap:15px}.row-action{grid-column:auto}.product-stack div{display:block}.product-stack span{display:block;margin-top:8px}.enquiry-modal{grid-template-columns:1fr}.modal-copy{padding:30px}.modal-copy h2{font-size:38px}.footer-main{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin:8px 0}
}


/* v14 refinements: cropped logo, dotted header, hero slider, clickable service ticker */
.site-header{
  overflow:visible;
}

.site-header::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:38px;
  bottom:0;
  pointer-events:none;
  opacity:.38;
  background-image:radial-gradient(circle, rgba(8,20,38,.16) 1.15px, transparent 1.25px);
  background-size:18px 18px;
  z-index:0;
}

.top-contact-bar,
.nav-inner{
  position:relative;
  z-index:1;
}

.nav-inner{
  background:rgba(255,255,255,.84);
  border-radius:0 0 28px 28px;
}

.brand img{
  width:268px;
  max-height:54px;
  object-fit:contain;
}

.footer-brand-block img{
  width:300px;
  max-height:82px;
  object-fit:contain;
}

/* Hero slider */
.hero-slider-section{
  position:relative;
  overflow:hidden;
  color:#fff;
  min-height:calc(100vh + 90px);
  background:linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%);
}

.hero-slides{
  position:relative;
  min-height:calc(100vh + 90px);
}

.hero-slide{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  padding:180px 0 145px;
  opacity:0;
  visibility:hidden;
  transform:translateX(32px);
  transition:opacity .65s ease, transform .65s ease, visibility .65s ease;
}

.hero-slide.active{
  opacity:1;
  visibility:visible;
  transform:translateX(0);
  z-index:2;
}

.hero-slide:nth-child(2){
  background:linear-gradient(135deg,#1b1730 0%,#8f2433 52%,#b22a26 100%);
}

.hero-slide:nth-child(3){
  background:linear-gradient(135deg,#071426 0%,#182f4d 48%,#101827 100%);
}

.hero-slider-section .hero-pattern{
  z-index:4;
  pointer-events:none;
}

.hero-slider-section .hero-grid{
  z-index:5;
}

.hero-slider-section .hero-copy,
.hero-slider-section .hero-panel{
  opacity:0;
  transform:translateY(22px);
  transition:.7s ease;
}

.hero-slide.active .hero-copy,
.hero-slide.active .hero-panel{
  opacity:1;
  transform:none;
}

.hero-slide.active .hero-panel{
  transition-delay:.12s;
}

.hero-controls{
  position:absolute;
  z-index:10;
  left:50%;
  bottom:78px;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:18px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(14px);
  padding:10px 14px;
  border-radius:999px;
}

.hero-controls button{
  border:0;
  cursor:pointer;
}

.hero-controls > button{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:var(--navy);
  font-size:30px;
  line-height:1;
  font-weight:900;
}

.hero-dots{
  display:flex;
  align-items:center;
  gap:8px;
}

.hero-dots button{
  width:10px;
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,.52);
  padding:0;
  transition:.25s ease;
}

.hero-dots button.active{
  width:34px;
  background:#fff;
}

.software-panel .pos-card{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.software-panel .pos-card div{
  border-radius:24px;
  padding:22px;
  background:linear-gradient(135deg,var(--navy),var(--red));
  color:#fff;
}

.software-panel .pos-card small{
  display:block;
  color:rgba(255,255,255,.74);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.software-panel .pos-card strong{
  display:block;
  font-size:30px;
  margin-top:8px;
  font-weight:900;
}

.table-lines{
  display:grid;
  gap:12px;
  margin-top:20px;
}

.table-lines span{
  height:26px;
  border-radius:999px;
  background:#eef3f8;
  position:relative;
  overflow:hidden;
}

.table-lines span::after{
  content:"";
  position:absolute;
  inset:0;
  width:55%;
  background:linear-gradient(90deg,#dbe4ef,#f8fafc);
}

.infra-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.infra-grid div{
  min-height:128px;
  border-radius:26px;
  background:#f2f6fb;
  border:1px solid #e2eaf3;
  display:grid;
  place-items:center;
  color:var(--navy);
  font-size:42px;
  font-weight:900;
}

.infra-grid span{
  display:block;
  font-size:16px;
  color:var(--muted);
  margin-top:4px;
}

.ticker-track a{
  color:#fff;
  display:inline-flex;
  align-items:center;
  min-height:68px;
  transition:.25s ease;
}

.ticker-track a:hover{
  color:#d4f4fa;
  transform:translateY(-2px);
}

@media(max-width:1100px){
  .hero-slider-section,
  .hero-slides{
    min-height:auto;
  }

  .hero-slide{
    position:relative;
    display:none;
    min-height:auto;
    padding:170px 0 128px;
  }

  .hero-slide.active{
    display:flex;
  }

  .hero-controls{
    bottom:34px;
  }
}

@media(max-width:800px){
  .site-header::after{
    top:38px;
    background-size:16px 16px;
  }

  .nav-inner{
    border-radius:0 0 20px 20px;
  }

  .brand img{
    width:216px;
    max-height:48px;
  }

  .hero-slide{
    padding:168px 0 118px;
  }

  .hero-controls{
    bottom:24px;
  }

  .software-panel .pos-card,
  .infra-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:480px){
  .brand img{
    width:198px;
  }
}


/* v15: web technologies slider + company content refinements */
.hero-slide:nth-child(4){
  background:linear-gradient(135deg,#071426 0%,#0f3b5f 46%,#1f7f8f 100%);
}

.web-tech-panel .browser-preview{
  overflow:hidden;
  border-radius:26px;
  border:1px solid #e2eaf3;
  background:#f8fafc;
}

.browser-nav{
  height:52px;
  background:#eaf0f7;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 16px;
}

.browser-nav span{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#b7c3d2;
}

.browser-nav b{
  margin-left:10px;
  color:#627087;
  font-size:14px;
  font-weight:900;
}

.browser-hero-block{
  height:145px;
  margin:18px;
  border-radius:24px;
  background:
    radial-gradient(circle at 82% 24%,rgba(255,255,255,.35),transparent 18%),
    linear-gradient(135deg,var(--navy),var(--teal));
}

.browser-content-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  padding:0 18px 18px;
}

.browser-content-grid i{
  height:82px;
  border-radius:20px;
  background:#edf3f8;
  border:1px solid #dfe8f2;
}

.mission-grid div{
  min-height:230px;
}

.contact-cards{
  align-content:start;
}


/* v16 dedicated solution detail pages */
.solution-hero-detail{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:198px 0 105px;
  background:linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%);
}

.solution-hero-detail.pos-theme{
  background:linear-gradient(135deg,#1b1730 0%,#8f2433 55%,#b22a26 100%);
}

.solution-hero-detail.inventory-theme{
  background:linear-gradient(135deg,#071426 0%,#19385f 52%,#101827 100%);
}

.solution-hero-pattern{
  position:absolute;
  inset:0;
  opacity:.13;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 10% 20%,rgba(255,255,255,.9) 0 8px,transparent 9px),
    radial-gradient(circle at 84% 18%,rgba(255,255,255,.8) 0 7px,transparent 8px),
    repeating-linear-gradient(36deg,transparent 0 82px,rgba(255,255,255,.30) 84px 94px,transparent 96px 170px);
}

.solution-hero-grid{
  position:relative;
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:70px;
  align-items:center;
}

.solution-hero-copy h1{
  font-size:clamp(46px,5.2vw,82px);
  line-height:.98;
  margin:24px 0 20px;
  font-weight:900;
  letter-spacing:-.035em;
}

.solution-hero-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:760px;
}

.solution-mini-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:28px;
}

.solution-mini-tags span{
  padding:10px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.15);
  color:#fff;
  font-weight:900;
  font-size:13px;
}

.solution-showcase-card{
  overflow:hidden;
  border-radius:34px;
  background:#fff;
  box-shadow:0 34px 90px rgba(0,0,0,.22);
  color:var(--navy);
}

.showcase-top{
  height:54px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  background:#edf1f7;
}

.showcase-top i{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#b4bfce;
}

.showcase-top strong{
  margin-left:10px;
  color:#617086;
  font-weight:900;
}

.showcase-main{
  padding:28px;
}

.showcase-metric{
  border-radius:28px;
  background:linear-gradient(135deg,var(--navy),var(--teal));
  padding:28px;
  color:#fff;
}

.pos-theme .showcase-metric{
  background:linear-gradient(135deg,var(--navy),var(--red));
}

.inventory-theme .showcase-metric{
  background:linear-gradient(135deg,#101827,#19385f);
}

.showcase-metric small{
  display:block;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  color:rgba(255,255,255,.72);
}

.showcase-metric b{
  display:block;
  font-size:70px;
  line-height:1;
  font-weight:900;
  margin-top:8px;
}

.showcase-metric span{
  color:rgba(255,255,255,.80);
}

.showcase-bars{
  display:grid;
  gap:12px;
  margin-top:20px;
}

.showcase-bars span{
  height:26px;
  border-radius:999px;
  background:#eef3f8;
  position:relative;
  overflow:hidden;
}

.showcase-bars span::after{
  content:"";
  position:absolute;
  inset:0;
  width:58%;
  background:linear-gradient(90deg,#dbe4ef,#f8fafc);
}

.showcase-bars span:nth-child(2)::after{width:72%}
.showcase-bars span:nth-child(3)::after{width:48%}
.showcase-bars span:nth-child(4)::after{width:64%}

.showcase-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}

.showcase-pills em{
  font-style:normal;
  padding:10px 13px;
  border-radius:999px;
  background:#f7f2ea;
  color:var(--red);
  font-weight:900;
  font-size:13px;
}

.solution-overview-section{
  background:var(--paper);
}

.problem-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

.problem-grid div{
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  padding:24px;
  box-shadow:0 12px 38px rgba(8,20,38,.05);
}

.problem-grid strong{
  display:block;
  color:var(--red);
  font-size:24px;
  font-weight:900;
  margin-bottom:12px;
}

.problem-grid p{
  color:var(--muted);
  line-height:1.65;
  margin:0;
}

.solution-main-section{
  background:var(--cream);
}

.solution-main-grid{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:40px;
  align-items:start;
}

.solution-sticky{
  position:sticky;
  top:150px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  padding:34px;
  box-shadow:var(--shadow);
}

.solution-sticky h2,
.integrations-card h2{
  font-size:clamp(38px,4vw,62px);
  line-height:1;
  margin:22px 0 16px;
  letter-spacing:-.03em;
}

.solution-sticky p,
.integrations-card p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin-bottom:24px;
}

.feature-box{
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  padding:34px;
  box-shadow:0 12px 38px rgba(8,20,38,.05);
}

.feature-box h3{
  font-size:38px;
  margin:0 0 22px;
  font-weight:900;
}

.feature-box ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.feature-box li{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:16px;
  border-radius:18px;
  background:#f8fafc;
  color:#344055;
  font-weight:800;
  line-height:1.45;
}

.feature-box li span{
  color:var(--red);
  font-weight:900;
}

.audience-section{
  background:#fffaf2;
}

.audience-tags{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.audience-tags span{
  padding:14px 18px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 10px 30px rgba(8,20,38,.04);
  font-weight:900;
}

.benefits-section{
  background:var(--navy);
  color:#fff;
}

.benefits-section .section-head p{
  color:#aeb9c9;
}

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

.benefit-grid article{
  padding:28px;
  border-radius:28px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
}

.benefit-grid b{
  display:block;
  font-size:25px;
  line-height:1.05;
  margin-bottom:14px;
  font-weight:900;
}

.benefit-grid p{
  color:#aeb9c9;
  line-height:1.65;
}

.integrations-section{
  background:var(--paper);
}

.integrations-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:34px;
  padding:40px;
  box-shadow:var(--shadow);
}

.integration-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin:30px 0;
}

.integration-grid div{
  border-radius:24px;
  background:#f8fafc;
  border:1px solid #e5ecf5;
  padding:24px;
}

.integration-grid strong{
  display:block;
  font-size:22px;
  font-weight:900;
  color:var(--navy);
}

.integration-grid span{
  display:block;
  color:var(--muted);
  line-height:1.55;
  margin-top:8px;
}

.report-list{
  background:var(--cream);
  border-radius:24px;
  padding:24px;
}

.report-list strong{
  display:block;
  font-size:22px;
  margin-bottom:14px;
}

.report-list ul{
  columns:2;
  margin:0;
  padding-left:20px;
  color:#344055;
  font-weight:800;
  line-height:1.8;
}

.process-section-detail{
  background:var(--cream);
}

.process-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.process-grid article{
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  padding:30px;
  box-shadow:0 12px 38px rgba(8,20,38,.05);
}

.process-grid b{
  color:var(--red);
  font-size:24px;
  font-weight:900;
}

.process-grid h3{
  font-size:31px;
  margin:18px 0 10px;
  font-weight:900;
}

.process-grid p{
  color:var(--muted);
  line-height:1.65;
}

.faq-list{
  margin-top:34px;
  display:grid;
  gap:12px;
}

.faq-list details{
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:20px 24px;
  box-shadow:0 10px 30px rgba(8,20,38,.04);
}

.faq-list summary{
  cursor:pointer;
  font-size:20px;
  font-weight:900;
  color:var(--navy);
}

.faq-list p{
  color:var(--muted);
  line-height:1.65;
  margin:14px 0 0;
}

.related-section{
  background:#fff;
}

.related-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.related-grid a{
  display:block;
  padding:28px;
  border-radius:28px;
  background:var(--navy);
  color:#fff;
  min-height:150px;
  transition:.25s ease;
}

.related-grid a:hover{
  transform:translateY(-5px);
  background:linear-gradient(135deg,var(--navy),var(--teal));
}

.related-grid span{
  display:block;
  font-size:26px;
  font-weight:900;
  line-height:1.05;
}

.related-grid b{
  display:block;
  margin-top:22px;
  color:#d4f4fa;
}

.solution-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-top:20px;
}

.solution-actions a,
.solution-actions button{
  margin-top:0 !important;
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:16px;
  padding:0 16px;
  font-weight:900;
}

.solution-actions a{
  background:var(--cream);
  color:var(--navy);
  border:1px solid var(--line);
}

.solution-actions button{
  background:var(--navy);
  color:#fff;
}

@media(max-width:1100px){
  .solution-hero-grid,
  .solution-main-grid{
    grid-template-columns:1fr;
  }

  .solution-sticky{
    position:relative;
    top:auto;
  }

  .benefit-grid,
  .integration-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:800px){
  .solution-hero-detail{
    padding:178px 0 76px;
  }

  .solution-hero-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .problem-grid,
  .feature-box ul,
  .benefit-grid,
  .integration-grid,
  .process-grid,
  .related-grid{
    grid-template-columns:1fr;
  }

  .report-list ul{
    columns:1;
  }

  .integrations-card{
    padding:26px;
  }
}


/* v17: expanded useful report descriptions */
.report-list ul{
  columns:1;
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
}

.report-list li{
  background:#fff;
  border:1px solid rgba(8,20,38,.08);
  border-radius:18px;
  padding:18px 20px;
  color:var(--navy);
}

.report-list li strong{
  display:block;
  font-size:18px;
  font-weight:900;
  margin-bottom:7px;
  color:var(--navy);
}

.report-list li span{
  display:block;
  color:#637083;
  line-height:1.55;
  font-weight:700;
  font-size:15px;
}

@media(max-width:800px){
  .report-list ul{
    grid-template-columns:1fr;
  }
}


/* v18: additional high-conversion solution page themes */
.solution-hero-detail.mpesa-theme{
  background:linear-gradient(135deg,#071426 0%,#0b5f4c 48%,#0f8f63 100%);
}

.solution-hero-detail.cctv-theme{
  background:linear-gradient(135deg,#050d18 0%,#121c2d 52%,#343b4d 100%);
}

.solution-hero-detail.printer-theme{
  background:linear-gradient(135deg,#071426 0%,#243c5a 48%,#6f2230 100%);
}

.mpesa-theme .showcase-metric{
  background:linear-gradient(135deg,#071426,#0f8f63);
}

.cctv-theme .showcase-metric{
  background:linear-gradient(135deg,#050d18,#343b4d);
}

.printer-theme .showcase-metric{
  background:linear-gradient(135deg,#071426,#6f2230);
}


/* v19: CRM, Loan Management and SACCO solution page themes */
.solution-hero-detail.crm-theme{
  background:linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.solution-hero-detail.loan-theme{
  background:linear-gradient(135deg,#171225 0%,#5f2342 48%,#b22a26 100%);
}

.solution-hero-detail.sacco-theme{
  background:linear-gradient(135deg,#071426 0%,#15375f 48%,#0b5f4c 100%);
}

.crm-theme .showcase-metric{
  background:linear-gradient(135deg,#071426,#126a7a);
}

.loan-theme .showcase-metric{
  background:linear-gradient(135deg,#171225,#b22a26);
}

.sacco-theme .showcase-metric{
  background:linear-gradient(135deg,#071426,#0b5f4c);
}


/* v20: less monotonous solution pages + premium stylish buttons */

/* Premium buttons: avoid flat black/dark buttons */
.btn-dark,
.nav-button,
.solution-card button,
.product-card button,
.row-action,
.solution-actions button,
.submit-btn{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:0 !important;
  background:
    linear-gradient(135deg,var(--red) 0%,#7f1f35 48%,var(--navy) 100%) !important;
  color:#fff !important;
  box-shadow:0 18px 38px rgba(178,42,38,.22), inset 0 1px 0 rgba(255,255,255,.18);
}

.btn-dark::before,
.nav-button::before,
.solution-card button::before,
.product-card button::before,
.row-action::before,
.solution-actions button::before,
.submit-btn::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(135deg,var(--teal) 0%,var(--red) 55%,#f7b267 120%);
  opacity:0;
  transition:.28s ease;
}

.btn-dark:hover::before,
.nav-button:hover::before,
.solution-card button:hover::before,
.product-card button:hover::before,
.row-action:hover::before,
.solution-actions button:hover::before,
.submit-btn:hover::before{
  opacity:1;
}

.btn-white{
  box-shadow:0 18px 42px rgba(255,255,255,.18), inset 0 1px 0 rgba(255,255,255,.7);
}

.solution-actions a{
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(135deg,var(--teal),var(--red)) border-box !important;
  border:1px solid transparent !important;
  color:var(--navy) !important;
  box-shadow:0 12px 28px rgba(8,20,38,.08);
}

.footer-cta{
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(135deg,var(--teal),var(--red)) border-box !important;
  border:1px solid transparent !important;
  color:var(--navy) !important;
  box-shadow:0 16px 38px rgba(255,255,255,.12);
}

/* New visual snapshot section */
.solution-snapshot-section{
  position:relative;
  margin-top:-42px;
  z-index:6;
  padding:0 0 86px;
}

.solution-snapshot{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:24px;
  align-items:stretch;
  padding:26px;
  border-radius:34px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.snapshot-copy{
  border-radius:28px;
  padding:34px;
  background:
    radial-gradient(circle at 86% 10%,rgba(18,106,122,.16),transparent 28%),
    var(--paper);
  border:1px solid rgba(8,20,38,.08);
}

.snapshot-copy h2{
  font-size:clamp(34px,3.3vw,54px);
  line-height:1.02;
  letter-spacing:-.03em;
  margin:22px 0 14px;
  font-weight:900;
}

.snapshot-copy p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
}

.snapshot-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.snapshot-cards article{
  min-height:220px;
  border-radius:26px;
  padding:24px;
  color:#fff;
  background:
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.snapshot-cards article:nth-child(2){
  background:
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,#7f1f35,var(--red));
}

.snapshot-cards article:nth-child(3){
  background:
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,#14213d,#364b6d);
}

.snapshot-cards article::before{
  content:"";
  position:absolute;
  width:120px;
  height:120px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:50%;
  right:-34px;
  top:-34px;
}

.snapshot-cards strong{
  display:block;
  font-size:26px;
  line-height:1.02;
  font-weight:900;
  margin-bottom:12px;
}

.snapshot-cards span{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:700;
}

/* Break the repeated look through alternating content treatments */
.solution-overview-section{
  position:relative;
  overflow:hidden;
}

.solution-overview-section::before{
  content:"";
  position:absolute;
  left:-120px;
  top:70px;
  width:360px;
  height:360px;
  border-radius:50%;
  background:rgba(178,42,38,.08);
}

.solution-main-section{
  position:relative;
  overflow:hidden;
}

.solution-main-section::after{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-110px;
  width:360px;
  height:360px;
  border-radius:50%;
  background:rgba(18,106,122,.12);
}

.solution-main-grid,
.benefits-section .container-wide,
.integrations-card,
.process-section-detail .container-wide,
.faq-section .container-narrow,
.related-section .container-wide{
  position:relative;
  z-index:1;
}

.solution-sticky{
  background:
    radial-gradient(circle at 88% 10%,rgba(18,106,122,.14),transparent 28%),
    #fff;
}

.feature-box{
  background:
    linear-gradient(180deg,#fff 0%,#fffaf2 100%);
}

.feature-box li{
  min-height:78px;
  background:#fff;
  border:1px solid rgba(8,20,38,.07);
  box-shadow:0 10px 24px rgba(8,20,38,.04);
}

.feature-box li:nth-child(3n+1){
  border-left:4px solid var(--teal);
}

.feature-box li:nth-child(3n+2){
  border-left:4px solid var(--red);
}

.feature-box li:nth-child(3n+3){
  border-left:4px solid #f7b267;
}

.audience-section{
  background:
    radial-gradient(circle at 12% 22%,rgba(178,42,38,.09),transparent 24%),
    #fffaf2;
}

.audience-tags span:nth-child(odd){
  background:var(--navy);
  color:#fff;
  border-color:transparent;
}

.audience-tags span:nth-child(even){
  background:#fff;
}

.benefits-section{
  background:
    radial-gradient(circle at 18% 18%,rgba(178,42,38,.26),transparent 28%),
    radial-gradient(circle at 86% 12%,rgba(18,106,122,.22),transparent 24%),
    #071426;
}

.benefit-grid article{
  position:relative;
  overflow:hidden;
}

.benefit-grid article:nth-child(even){
  transform:translateY(24px);
}

.benefit-grid article::after{
  content:"";
  position:absolute;
  right:-30px;
  bottom:-30px;
  width:110px;
  height:110px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
}

.integrations-card{
  background:
    radial-gradient(circle at 92% 8%,rgba(178,42,38,.10),transparent 24%),
    #fff;
}

.integration-grid div:nth-child(1){
  background:linear-gradient(135deg,#f8fafc,#eaf7f9);
}

.integration-grid div:nth-child(2){
  background:linear-gradient(135deg,#fffaf2,#fff0ef);
}

.integration-grid div:nth-child(3){
  background:linear-gradient(135deg,#f8fafc,#f1f5f9);
}

.integration-grid div:nth-child(4){
  background:linear-gradient(135deg,#fffaf2,#eef8f8);
}

.process-grid article{
  position:relative;
  overflow:hidden;
}

.process-grid article:nth-child(2){
  margin-top:28px;
}

.process-grid article:nth-child(3){
  margin-top:56px;
}

.process-grid article::before{
  content:"";
  position:absolute;
  width:110px;
  height:110px;
  right:-34px;
  top:-34px;
  border-radius:50%;
  background:rgba(178,42,38,.07);
}

.faq-section{
  background:
    linear-gradient(180deg,var(--paper),#fff);
}

.faq-list details{
  transition:.25s ease;
}

.faq-list details[open]{
  border-color:rgba(178,42,38,.25);
  box-shadow:0 18px 42px rgba(178,42,38,.08);
}

.related-grid a{
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 24%),
    linear-gradient(135deg,var(--navy),#162c49);
}

/* Theme-specific card accents */
.stock-theme ~ .solution-snapshot-section .snapshot-copy,
.pos-theme ~ .solution-snapshot-section .snapshot-copy,
.inventory-theme ~ .solution-snapshot-section .snapshot-copy,
.mpesa-theme ~ .solution-snapshot-section .snapshot-copy,
.cctv-theme ~ .solution-snapshot-section .snapshot-copy,
.printer-theme ~ .solution-snapshot-section .snapshot-copy,
.crm-theme ~ .solution-snapshot-section .snapshot-copy,
.loan-theme ~ .solution-snapshot-section .snapshot-copy,
.sacco-theme ~ .solution-snapshot-section .snapshot-copy{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.5);
}

.pos-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1),
.loan-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1){
  background:linear-gradient(135deg,#43152b,var(--red));
}

.mpesa-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1),
.sacco-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1){
  background:linear-gradient(135deg,#071426,#0f8f63);
}

.cctv-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1){
  background:linear-gradient(135deg,#050d18,#343b4d);
}

.printer-theme ~ .solution-snapshot-section .snapshot-cards article:nth-child(1){
  background:linear-gradient(135deg,#243c5a,#6f2230);
}

/* Homepage and hub card actions also feel premium */
.solution-actions{
  gap:12px;
}

.solution-actions a:hover,
.solution-actions button:hover{
  transform:translateY(-2px);
}

@media(max-width:1100px){
  .solution-snapshot{
    grid-template-columns:1fr;
  }

  .snapshot-cards{
    grid-template-columns:1fr 1fr 1fr;
  }
}

@media(max-width:800px){
  .solution-snapshot-section{
    margin-top:-18px;
    padding-bottom:68px;
  }

  .solution-snapshot{
    padding:16px;
    border-radius:26px;
  }

  .snapshot-copy{
    padding:26px;
  }

  .snapshot-cards{
    grid-template-columns:1fr;
  }

  .snapshot-cards article{
    min-height:170px;
  }

  .benefit-grid article:nth-child(even),
  .process-grid article:nth-child(2),
  .process-grid article:nth-child(3){
    transform:none;
    margin-top:0;
  }
}


/* v21 product detail pages */
.product-hero-detail{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:198px 0 105px;
  background:linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%);
}

.product-hero-detail.pos-product-theme{
  background:linear-gradient(135deg,#1b1730 0%,#8f2433 55%,#b22a26 100%);
}

.product-hero-detail.kazi-product-theme{
  background:linear-gradient(135deg,#050d18 0%,#1d1d24 48%,#b22a26 100%);
}

.product-hero-detail.mkulima-product-theme{
  background:linear-gradient(135deg,#071426 0%,#0b5f4c 48%,#5c8f2f 100%);
}

.product-hero-pattern{
  position:absolute;
  inset:0;
  opacity:.13;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.9) 0 8px,transparent 9px),
    radial-gradient(circle at 85% 15%,rgba(255,255,255,.8) 0 7px,transparent 8px),
    repeating-linear-gradient(36deg,transparent 0 82px,rgba(255,255,255,.30) 84px 94px,transparent 96px 170px);
}

.product-hero-grid{
  position:relative;
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:70px;
  align-items:center;
}

.product-hero-copy h1{
  font-size:clamp(46px,5.2vw,82px);
  line-height:.98;
  margin:24px 0 20px;
  font-weight:900;
  letter-spacing:-.035em;
}

.product-hero-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:760px;
}

.product-showcase{
  overflow:hidden;
  border-radius:34px;
  background:#fff;
  color:var(--navy);
  box-shadow:0 34px 90px rgba(0,0,0,.22);
}

.product-window-top{
  height:54px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  background:#edf1f7;
}

.product-window-top i{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#b4bfce;
}

.product-window-top strong{
  margin-left:10px;
  color:#617086;
  font-weight:900;
}

.product-window-body{
  padding:28px;
}

.product-score{
  border-radius:28px;
  padding:28px;
  color:#fff;
  background:linear-gradient(135deg,var(--navy),var(--teal));
}

.pos-product-theme .product-score{
  background:linear-gradient(135deg,var(--navy),var(--red));
}

.kazi-product-theme .product-score{
  background:linear-gradient(135deg,#0b0b0d,var(--red));
}

.mkulima-product-theme .product-score{
  background:linear-gradient(135deg,#071426,#0b8f5e);
}

.product-score small{
  display:block;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  color:rgba(255,255,255,.72);
}

.product-score b{
  display:block;
  font-size:70px;
  line-height:1;
  font-weight:900;
  margin-top:8px;
}

.product-score span{
  color:rgba(255,255,255,.82);
}

.product-ui-lines{
  display:grid;
  gap:12px;
  margin-top:20px;
}

.product-ui-lines span{
  height:26px;
  border-radius:999px;
  background:#eef3f8;
  position:relative;
  overflow:hidden;
}

.product-ui-lines span::after{
  content:"";
  position:absolute;
  inset:0;
  width:58%;
  background:linear-gradient(90deg,#dbe4ef,#f8fafc);
}

.product-ui-lines span:nth-child(2)::after{width:72%}
.product-ui-lines span:nth-child(3)::after{width:48%}
.product-ui-lines span:nth-child(4)::after{width:64%}

.product-ui-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}

.product-ui-pills em{
  font-style:normal;
  padding:10px 13px;
  border-radius:999px;
  background:#f7f2ea;
  color:var(--red);
  font-weight:900;
  font-size:13px;
}

.product-intro-section{
  position:relative;
  z-index:6;
  margin-top:-42px;
  padding-bottom:82px;
}

.product-intro-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  padding:34px;
  border-radius:34px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.product-intro-card h2,
.product-feature-copy h2,
.product-roadmap-copy h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 0;
  font-weight:900;
}

.product-intro-card p,
.product-feature-copy p,
.product-roadmap-copy p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin:0;
}

.product-modules-section{
  background:var(--cream);
}

.product-module-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}

.product-module-grid div{
  min-height:230px;
  border-radius:28px;
  padding:26px;
  color:#fff;
  background:
    radial-gradient(circle at 84% 12%,rgba(255,255,255,.18),transparent 26%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.product-module-grid div:nth-child(2){
  background:linear-gradient(135deg,#7f1f35,var(--red));
}

.product-module-grid div:nth-child(3){
  background:linear-gradient(135deg,#14213d,#364b6d);
}

.product-module-grid div:nth-child(4){
  background:linear-gradient(135deg,#071426,#0b5f4c);
}

.product-module-grid div::before{
  content:"";
  position:absolute;
  width:126px;
  height:126px;
  border-radius:50%;
  right:-40px;
  top:-40px;
  border:1px solid rgba(255,255,255,.18);
}

.product-module-grid strong{
  font-size:27px;
  line-height:1.02;
  font-weight:900;
  margin-bottom:12px;
}

.product-module-grid span{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:700;
}

.product-features-section{
  background:#fffaf2;
}

.product-feature-layout{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:40px;
  align-items:start;
}

.product-feature-copy{
  position:sticky;
  top:150px;
  padding:34px;
  border-radius:30px;
  background:
    radial-gradient(circle at 90% 10%,rgba(18,106,122,.14),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.product-feature-copy .btn{
  margin-top:26px;
}

.product-feature-box{
  background:linear-gradient(180deg,#fff 0%,#fffaf2 100%);
}

.product-audience-section{
  background:
    radial-gradient(circle at 12% 22%,rgba(178,42,38,.09),transparent 24%),
    #fffaf2;
}

.product-benefits-section{
  background:
    radial-gradient(circle at 18% 18%,rgba(178,42,38,.26),transparent 28%),
    radial-gradient(circle at 86% 12%,rgba(18,106,122,.22),transparent 24%),
    #071426;
  color:#fff;
}

.product-benefits-section .section-head p{
  color:#aeb9c9;
}

.product-status-section{
  background:var(--paper);
}

.product-status-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:30px;
  align-items:stretch;
  padding:34px;
  border-radius:34px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.product-roadmap-copy{
  padding:26px;
  border-radius:28px;
  background:var(--cream);
}

.product-roadmap-list{
  padding:30px;
  border-radius:28px;
  background:linear-gradient(135deg,var(--navy),#182f4d);
  color:#fff;
}

.product-roadmap-list strong{
  display:block;
  font-size:26px;
  font-weight:900;
  margin-bottom:18px;
}

.product-roadmap-list ul{
  margin:0;
  padding-left:22px;
  color:#d7e0ec;
  font-weight:800;
  line-height:1.9;
}

.product-actions{
  align-items:center;
}

.product-stack a{
  padding:20px 22px;
  border-radius:22px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  justify-content:space-between;
  gap:20px;
  color:#fff;
  transition:.25s ease;
}

.product-stack a:hover{
  transform:translateX(6px);
  background:rgba(255,255,255,.12);
}

@media(max-width:1100px){
  .product-hero-grid,
  .product-intro-card,
  .product-feature-layout,
  .product-status-grid{
    grid-template-columns:1fr;
  }

  .product-feature-copy{
    position:relative;
    top:auto;
  }

  .product-module-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:800px){
  .product-hero-detail{
    padding:178px 0 76px;
  }

  .product-hero-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .product-intro-section{
    margin-top:-18px;
    padding-bottom:62px;
  }

  .product-intro-card,
  .product-status-grid{
    padding:20px;
    border-radius:26px;
  }

  .product-module-grid{
    grid-template-columns:1fr;
  }

  .product-module-grid div{
    min-height:180px;
  }

  .product-stack a{
    display:block;
  }

  .product-stack a span{
    display:block;
    margin-top:8px;
  }
}


/* v22: Mkulima Bora traction section */
.mkulima-traction-section{
  padding:0 0 88px;
  background:var(--paper);
}

.mkulima-traction-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:24px;
  align-items:stretch;
  border-radius:34px;
  padding:28px;
  background:
    radial-gradient(circle at 88% 10%,rgba(11,143,94,.15),transparent 26%),
    #fff;
  border:1px solid var(--line);
  box-shadow:0 28px 80px rgba(8,20,38,.12);
}

.traction-copy{
  border-radius:28px;
  padding:34px;
  background:
    radial-gradient(circle at 12% 18%,rgba(178,42,38,.10),transparent 28%),
    var(--cream);
  border:1px solid rgba(8,20,38,.08);
}

.traction-copy h2{
  font-size:clamp(34px,3.4vw,56px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 14px;
  font-weight:900;
}

.traction-copy p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin:0;
}

.traction-metrics{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.traction-metrics article{
  min-height:240px;
  border-radius:28px;
  padding:26px;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,#071426,#0b8f5e);
}

.traction-metrics article:nth-child(2){
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,#0b5f4c,#5c8f2f);
}

.traction-metrics article:nth-child(3){
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,#14213d,#b22a26);
}

.traction-metrics article::before{
  content:"";
  position:absolute;
  right:-40px;
  top:-40px;
  width:130px;
  height:130px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.20);
}

.traction-metrics strong{
  display:block;
  font-size:clamp(36px,4vw,64px);
  line-height:.95;
  font-weight:900;
  letter-spacing:-.04em;
}

.traction-metrics span{
  display:block;
  color:rgba(255,255,255,.80);
  font-size:16px;
  font-weight:800;
  margin-top:12px;
}

@media(max-width:1100px){
  .mkulima-traction-card{
    grid-template-columns:1fr;
  }
}

@media(max-width:800px){
  .mkulima-traction-section{
    padding-bottom:68px;
  }

  .mkulima-traction-card{
    padding:18px;
    border-radius:26px;
  }

  .traction-copy{
    padding:26px;
  }

  .traction-metrics{
    grid-template-columns:1fr;
  }

  .traction-metrics article{
    min-height:180px;
  }
}


/* v23: alternate product page UI to avoid monotony */
.alt-product-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  min-height:720px;
  padding:198px 0 120px;
  background:linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%);
}

.alt-product-hero.guarantify-alt{
  background:linear-gradient(135deg,#071426 0%,#183b62 45%,#b22a26 100%);
}

.alt-product-hero.mahaba-alt{
  background:linear-gradient(135deg,#1b0f24 0%,#742047 50%,#d4527d 100%);
}

.alt-product-hero.smartkids-alt{
  background:linear-gradient(135deg,#071426 0%,#126a7a 48%,#f7b267 130%);
}

.alt-product-hero.afya-alt{
  background:linear-gradient(135deg,#21102e 0%,#84389d 50%,#d4527d 100%);
}

.alt-hero-pattern{
  position:absolute;
  inset:0;
  opacity:.15;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 16% 20%,rgba(255,255,255,.9) 0 8px,transparent 9px),
    radial-gradient(circle at 84% 16%,rgba(255,255,255,.75) 0 7px,transparent 8px),
    repeating-linear-gradient(45deg,transparent 0 76px,rgba(255,255,255,.26) 78px 88px,transparent 90px 160px);
}

.alt-product-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr .95fr;
  gap:70px;
  align-items:center;
}

.alt-product-copy h1{
  font-size:clamp(46px,5.1vw,82px);
  line-height:.98;
  margin:24px 0 20px;
  font-weight:900;
  letter-spacing:-.035em;
}

.alt-product-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:760px;
}

.alt-product-orbit{
  position:relative;
  min-height:460px;
  display:grid;
  place-items:center;
}

.orbit-core{
  width:280px;
  height:280px;
  border-radius:50%;
  display:grid;
  place-items:center;
  text-align:center;
  padding:35px;
  background:rgba(255,255,255,.94);
  color:var(--navy);
  box-shadow:0 35px 95px rgba(0,0,0,.25);
  position:relative;
  z-index:3;
}

.orbit-core::before,
.orbit-core::after{
  content:"";
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.28);
}

.orbit-core::before{
  inset:-58px;
}

.orbit-core::after{
  inset:-112px;
}

.orbit-core small{
  display:block;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--red);
  font-weight:900;
  font-size:12px;
}

.orbit-core strong{
  display:block;
  font-size:54px;
  line-height:.95;
  font-weight:900;
  letter-spacing:-.04em;
}

.orbit-core span{
  display:block;
  color:var(--muted);
  line-height:1.35;
  font-weight:800;
  margin-top:6px;
}

.orbit-pill{
  position:absolute;
  z-index:4;
  min-height:50px;
  display:grid;
  place-items:center;
  padding:0 18px;
  border-radius:999px;
  background:rgba(255,255,255,.15);
  color:#fff;
  border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(14px);
  font-weight:900;
  box-shadow:0 18px 42px rgba(0,0,0,.12);
}

.orbit-pill.p1{top:54px;left:56px}
.orbit-pill.p2{top:110px;right:10px}
.orbit-pill.p3{bottom:96px;left:0}
.orbit-pill.p4{bottom:44px;right:74px}

.alt-product-brief{
  margin-top:-54px;
  position:relative;
  z-index:6;
  padding-bottom:86px;
}

.alt-brief-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  padding:34px;
  border-radius:34px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(255,255,255,.70);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.alt-brief-card h2,
.alt-flow-copy h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 0;
  font-weight:900;
}

.alt-brief-card p,
.alt-flow-copy p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin:0;
}

.alt-feature-mosaic{
  background:
    radial-gradient(circle at 12% 16%,rgba(178,42,38,.08),transparent 26%),
    var(--cream);
}

.alt-tile-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr 1fr;
  gap:18px;
}

.alt-tile-grid article{
  min-height:250px;
  border-radius:30px;
  padding:28px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 12px 38px rgba(8,20,38,.05);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.alt-tile-grid article:nth-child(1),
.alt-tile-grid article:nth-child(5){
  grid-row:span 2;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  color:#fff;
}

.alt-tile-grid article:nth-child(3){
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#7f1f35,var(--red));
  color:#fff;
}

.alt-tile-grid article span{
  position:absolute;
  top:22px;
  left:24px;
  color:var(--red);
  font-size:22px;
  font-weight:900;
}

.alt-tile-grid article:nth-child(1) span,
.alt-tile-grid article:nth-child(3) span,
.alt-tile-grid article:nth-child(5) span{
  color:rgba(255,255,255,.65);
}

.alt-tile-grid strong{
  display:block;
  font-size:28px;
  line-height:1.02;
  font-weight:900;
  margin-bottom:12px;
}

.alt-tile-grid p{
  color:var(--muted);
  line-height:1.62;
  font-weight:700;
}

.alt-tile-grid article:nth-child(1) p,
.alt-tile-grid article:nth-child(3) p,
.alt-tile-grid article:nth-child(5) p{
  color:rgba(255,255,255,.78);
}

.alt-flow-section{
  background:#fffaf2;
}

.alt-flow-layout{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:40px;
  align-items:start;
}

.alt-flow-copy{
  position:sticky;
  top:150px;
  padding:34px;
  border-radius:30px;
  background:
    radial-gradient(circle at 92% 10%,rgba(18,106,122,.14),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.alt-flow-copy .btn{
  margin-top:26px;
}

.alt-flow-steps{
  display:grid;
  gap:18px;
  counter-reset:flow;
}

.alt-flow-steps div{
  min-height:150px;
  padding:28px;
  border-radius:28px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 12px 38px rgba(8,20,38,.05);
  display:grid;
  grid-template-columns:70px 1fr;
  gap:10px 22px;
  align-items:start;
}

.alt-flow-steps div:nth-child(even){
  transform:translateX(34px);
}

.alt-flow-steps b{
  grid-row:span 2;
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:linear-gradient(135deg,var(--red),var(--navy));
  color:#fff;
  font-size:21px;
  font-weight:900;
}

.alt-flow-steps strong{
  font-size:26px;
  font-weight:900;
  line-height:1.05;
}

.alt-flow-steps p{
  margin:0;
  color:var(--muted);
  line-height:1.62;
  font-weight:700;
}

.alt-audience-section{
  background:
    radial-gradient(circle at 12% 22%,rgba(178,42,38,.09),transparent 24%),
    #fffaf2;
}

.alt-proof-section{
  color:#fff;
  background:
    radial-gradient(circle at 18% 18%,rgba(178,42,38,.26),transparent 28%),
    radial-gradient(circle at 86% 12%,rgba(18,106,122,.22),transparent 24%),
    #071426;
}

.alt-proof-section .section-head p{
  color:#aeb9c9;
}

.alt-proof-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.alt-proof-grid article{
  min-height:260px;
  border-radius:30px;
  padding:28px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  position:relative;
  overflow:hidden;
}

.alt-proof-grid article:nth-child(even){
  transform:translateY(26px);
}

.alt-proof-grid article::after{
  content:"";
  position:absolute;
  right:-32px;
  bottom:-32px;
  width:118px;
  height:118px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
}

.alt-proof-grid strong{
  display:block;
  font-size:26px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:14px;
}

.alt-proof-grid p{
  color:#aeb9c9;
  line-height:1.65;
  font-weight:700;
}

/* Product-specific accents */
.mahaba-alt ~ .alt-product-brief .alt-brief-card,
.afya-alt ~ .alt-product-brief .alt-brief-card{
  background:rgba(255,250,252,.88);
}

.smartkids-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(1),
.smartkids-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(5){
  background:linear-gradient(135deg,#0b5f4c,#f7b267);
}

.mahaba-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(1),
.mahaba-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(5){
  background:linear-gradient(135deg,#2b1339,#d4527d);
}

.afya-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(1),
.afya-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(5){
  background:linear-gradient(135deg,#84389d,#d4527d);
}

.guarantify-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(1),
.guarantify-alt ~ .alt-feature-mosaic .alt-tile-grid article:nth-child(5){
  background:linear-gradient(135deg,#071426,#b22a26);
}

@media(max-width:1100px){
  .alt-product-grid,
  .alt-brief-card,
  .alt-flow-layout{
    grid-template-columns:1fr;
  }

  .alt-product-orbit{
    min-height:420px;
  }

  .alt-tile-grid{
    grid-template-columns:1fr 1fr;
  }

  .alt-flow-copy{
    position:relative;
    top:auto;
  }

  .alt-proof-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:800px){
  .alt-product-hero{
    min-height:auto;
    padding:178px 0 90px;
  }

  .alt-product-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .alt-product-orbit{
    min-height:360px;
  }

  .orbit-core{
    width:235px;
    height:235px;
  }

  .orbit-core::before{
    inset:-34px;
  }

  .orbit-core::after{
    inset:-70px;
  }

  .orbit-pill{
    font-size:13px;
    min-height:42px;
    padding:0 13px;
  }

  .orbit-pill.p1{top:34px;left:10px}
  .orbit-pill.p2{top:80px;right:0}
  .orbit-pill.p3{bottom:68px;left:0}
  .orbit-pill.p4{bottom:20px;right:18px}

  .alt-product-brief{
    margin-top:-24px;
    padding-bottom:64px;
  }

  .alt-brief-card{
    padding:22px;
    border-radius:26px;
  }

  .alt-tile-grid,
  .alt-proof-grid{
    grid-template-columns:1fr;
  }

  .alt-tile-grid article:nth-child(1),
  .alt-tile-grid article:nth-child(5){
    grid-row:auto;
  }

  .alt-flow-steps div{
    grid-template-columns:1fr;
  }

  .alt-flow-steps div:nth-child(even),
  .alt-proof-grid article:nth-child(even){
    transform:none;
  }
}


/* v24: third product page layout style */
.showcase-product-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:198px 0 118px;
  background:linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.showcase-product-hero.uza-product-theme{
  background:linear-gradient(135deg,#071426 0%,#5f2342 48%,#b22a26 100%);
}

.showcase-product-pattern{
  position:absolute;
  inset:0;
  opacity:.14;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 13% 18%,rgba(255,255,255,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 7px,transparent 8px),
    linear-gradient(120deg,transparent 0 55%,rgba(255,255,255,.14) 55% 56%,transparent 56% 100%);
}

.showcase-product-grid{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:center;
}

.showcase-product-copy h1{
  font-size:clamp(46px,5.1vw,82px);
  line-height:.98;
  margin:24px 0 20px;
  font-weight:900;
  letter-spacing:-.035em;
}

.showcase-product-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:760px;
}

.showcase-dashboard{
  border-radius:36px;
  background:#fff;
  color:var(--navy);
  overflow:hidden;
  box-shadow:0 35px 95px rgba(0,0,0,.24);
  transform:rotate(1.5deg);
}

.uza-product-theme .showcase-dashboard{
  transform:rotate(-1.5deg);
}

.dash-top{
  height:56px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  background:#eef3f8;
}

.dash-top i{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#b4bfce;
}

.dash-top strong{
  margin-left:10px;
  color:#617086;
  font-weight:900;
}

.dash-body{
  padding:28px;
}

.dash-main-card{
  min-height:220px;
  border-radius:30px;
  padding:30px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 14%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.uza-product-theme .dash-main-card{
  background:
    radial-gradient(circle at 88% 14%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--red));
}

.dash-main-card small{
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:900;
  color:rgba(255,255,255,.72);
}

.dash-main-card strong{
  font-size:72px;
  line-height:.95;
  font-weight:900;
  letter-spacing:-.05em;
  margin:10px 0;
}

.dash-main-card span{
  color:rgba(255,255,255,.82);
  font-weight:800;
}

.dash-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:16px;
}

.dash-stats article{
  border-radius:22px;
  padding:18px;
  background:#f7f2ea;
  border:1px solid rgba(8,20,38,.06);
}

.dash-stats small{
  display:block;
  color:var(--muted);
  font-weight:900;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.dash-stats strong{
  display:block;
  font-size:24px;
  line-height:1;
  margin:10px 0 6px;
  color:var(--red);
  font-weight:900;
}

.dash-stats span{
  color:var(--muted);
  font-weight:800;
  font-size:13px;
}

.showcase-intro-strip{
  position:relative;
  z-index:6;
  margin-top:-48px;
  padding-bottom:86px;
}

.showcase-intro-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  padding:34px;
  border-radius:34px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(255,255,255,.70);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.showcase-intro-card h2,
.journey-copy h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 0;
  font-weight:900;
}

.showcase-intro-card p,
.journey-copy p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin:0;
}

.showcase-capabilities-section{
  background:var(--cream);
}

.capability-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.capability-grid article{
  min-height:250px;
  padding:28px;
  border-radius:30px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 42px rgba(8,20,38,.06);
  position:relative;
  overflow:hidden;
}

.capability-grid article:nth-child(2),
.capability-grid article:nth-child(5){
  transform:translateY(32px);
}

.capability-grid article::before{
  content:"";
  position:absolute;
  right:-36px;
  top:-36px;
  width:120px;
  height:120px;
  border-radius:50%;
  background:rgba(18,106,122,.10);
}

.uza-product-theme ~ .showcase-intro-strip + .showcase-capabilities-section .capability-grid article::before{
  background:rgba(178,42,38,.10);
}

.capability-grid div{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:linear-gradient(135deg,var(--navy),var(--teal));
  font-size:25px;
  margin-bottom:28px;
}

.uza-product-theme ~ .showcase-intro-strip + .showcase-capabilities-section .capability-grid div{
  background:linear-gradient(135deg,var(--navy),var(--red));
}

.capability-grid strong{
  display:block;
  font-size:26px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:12px;
}

.capability-grid p{
  color:var(--muted);
  line-height:1.62;
  font-weight:700;
}

.showcase-journey-section{
  background:#fff;
}

.showcase-journey-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:40px;
  align-items:start;
}

.journey-copy{
  position:sticky;
  top:150px;
  padding:34px;
  border-radius:30px;
  background:
    radial-gradient(circle at 92% 10%,rgba(18,106,122,.14),transparent 28%),
    var(--cream);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.journey-copy .btn{
  margin-top:26px;
}

.journey-rail{
  display:grid;
  gap:18px;
  position:relative;
}

.journey-rail::before{
  content:"";
  position:absolute;
  left:34px;
  top:22px;
  bottom:22px;
  width:2px;
  background:linear-gradient(var(--red),var(--teal));
}

.journey-rail div{
  position:relative;
  margin-left:76px;
  padding:28px;
  border-radius:28px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 42px rgba(8,20,38,.06);
}

.journey-rail b{
  position:absolute;
  left:-76px;
  top:24px;
  width:68px;
  height:68px;
  display:grid;
  place-items:center;
  border-radius:24px;
  background:linear-gradient(135deg,var(--red),var(--navy));
  color:#fff;
  font-size:21px;
  font-weight:900;
  box-shadow:0 18px 38px rgba(178,42,38,.20);
}

.journey-rail strong{
  display:block;
  font-size:26px;
  line-height:1.05;
  font-weight:900;
  margin-bottom:10px;
}

.journey-rail p{
  margin:0;
  color:var(--muted);
  line-height:1.62;
  font-weight:700;
}

.showcase-audience-section{
  background:
    radial-gradient(circle at 12% 22%,rgba(178,42,38,.09),transparent 24%),
    #fffaf2;
}

.showcase-outcomes-section{
  background:#071426;
  color:#fff;
}

.showcase-outcomes-card{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:32px;
  align-items:start;
  padding:36px;
  border-radius:36px;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.18),transparent 26%),
    rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
}

.showcase-outcomes-card h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 14px;
  font-weight:900;
}

.showcase-outcomes-card p{
  color:#aeb9c9;
  line-height:1.7;
  font-size:18px;
}

.showcase-outcomes-card ul{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  list-style:none;
  margin:0;
  padding:0;
}

.showcase-outcomes-card li{
  min-height:190px;
  border-radius:28px;
  padding:24px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.showcase-outcomes-card li:nth-child(even){
  transform:translateY(22px);
}

.showcase-outcomes-card li strong{
  display:block;
  font-size:25px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:12px;
}

.showcase-outcomes-card li span{
  color:#aeb9c9;
  line-height:1.55;
  font-weight:700;
}

@media(max-width:1100px){
  .showcase-product-grid,
  .showcase-intro-card,
  .showcase-journey-grid,
  .showcase-outcomes-card{
    grid-template-columns:1fr;
  }

  .showcase-dashboard,
  .uza-product-theme .showcase-dashboard{
    transform:none;
  }

  .journey-copy{
    position:relative;
    top:auto;
  }
}

@media(max-width:800px){
  .showcase-product-hero{
    padding:178px 0 86px;
  }

  .showcase-product-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .showcase-intro-strip{
    margin-top:-20px;
    padding-bottom:64px;
  }

  .showcase-intro-card,
  .showcase-outcomes-card{
    padding:22px;
    border-radius:26px;
  }

  .dash-stats,
  .capability-grid,
  .showcase-outcomes-card ul{
    grid-template-columns:1fr;
  }

  .capability-grid article:nth-child(2),
  .capability-grid article:nth-child(5),
  .showcase-outcomes-card li:nth-child(even){
    transform:none;
  }

  .journey-rail::before{
    display:none;
  }

  .journey-rail div{
    margin-left:0;
  }

  .journey-rail b{
    position:static;
    margin-bottom:18px;
  }
}


/* v25: Industries hub and industry detail pages */
.industries-hub-hero,
.industry-detail-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:198px 0 112px;
  background:linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.industry-detail-hero.finance-industry{
  background:linear-gradient(135deg,#071426 0%,#5f2342 48%,#b22a26 100%);
}

.industry-detail-hero.schools-industry{
  background:linear-gradient(135deg,#071426 0%,#126a7a 48%,#f7b267 130%);
}

.industry-detail-hero.agri-industry{
  background:linear-gradient(135deg,#071426 0%,#0b5f4c 48%,#5c8f2f 100%);
}

.industries-pattern{
  position:absolute;
  inset:0;
  opacity:.14;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 14% 18%,rgba(255,255,255,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 7px,transparent 8px),
    repeating-linear-gradient(45deg,transparent 0 78px,rgba(255,255,255,.24) 80px 90px,transparent 92px 160px);
}

.industries-hub-grid,
.industry-detail-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr .82fr;
  gap:70px;
  align-items:center;
}

.industries-hub-grid h1,
.industry-detail-copy h1{
  font-size:clamp(46px,5.2vw,84px);
  line-height:.98;
  margin:24px 0 20px;
  font-weight:900;
  letter-spacing:-.035em;
}

.industries-hub-grid p,
.industry-detail-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:780px;
}

.industries-hub-visual,
.industry-metric-card{
  min-height:360px;
  border-radius:36px;
  padding:34px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 35px 90px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.industries-hub-visual::before,
.industry-metric-card::before{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  border-radius:50%;
  right:-70px;
  top:-70px;
  border:1px solid rgba(255,255,255,.22);
}

.industries-hub-visual strong,
.industry-metric-card strong{
  display:block;
  font-size:clamp(72px,8vw,128px);
  line-height:.85;
  font-weight:900;
  letter-spacing:-.06em;
}

.industry-metric-card small{
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:900;
  color:rgba(255,255,255,.72);
}

.industries-hub-visual span,
.industry-metric-card span{
  color:rgba(255,255,255,.84);
  font-size:20px;
  font-weight:900;
  margin-top:18px;
}

.industries-hub-visual em{
  color:rgba(255,255,255,.72);
  font-style:normal;
  font-weight:800;
  margin-top:10px;
}

.industries-grid-section{
  background:var(--cream);
}

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

.industry-card{
  min-height:390px;
  border-radius:32px;
  padding:26px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  overflow:hidden;
  position:relative;
}

.industry-card.finance-industry{
  background:linear-gradient(135deg,#071426,#b22a26);
}

.industry-card.schools-industry{
  background:linear-gradient(135deg,#126a7a,#f7b267);
}

.industry-card.agri-industry{
  background:linear-gradient(135deg,#071426,#0b8f5e);
}

.industry-card::before{
  content:"";
  position:absolute;
  right:-42px;
  top:-42px;
  width:140px;
  height:140px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.20);
}

.industry-card-top{
  position:absolute;
  top:24px;
  left:24px;
  right:24px;
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
}

.industry-card-top span{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(255,255,255,.76);
  font-weight:900;
}

.industry-card-top strong{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(12px);
}

.industry-card h3{
  font-size:32px;
  line-height:1.02;
  font-weight:900;
  margin:0 0 14px;
}

.industry-card p{
  color:rgba(255,255,255,.78);
  line-height:1.58;
  font-weight:700;
}

.industry-card a{
  margin-top:22px;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  width:max-content;
  padding:13px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:#fff;
  border:1px solid rgba(255,255,255,.20);
  font-weight:900;
}

.industry-method-section{
  background:#fff;
}

.method-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:34px;
  padding:36px;
  border-radius:36px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.method-grid h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 14px;
  font-weight:900;
}

.method-grid p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
}

.method-steps{
  display:grid;
  gap:16px;
}

.method-steps article{
  padding:24px;
  border-radius:28px;
  background:var(--cream);
  display:grid;
  grid-template-columns:62px 1fr;
  gap:6px 18px;
  align-items:start;
}

.method-steps b{
  grid-row:span 2;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(135deg,var(--red),var(--navy));
  color:#fff;
  font-weight:900;
}

.method-steps strong{
  font-size:24px;
  font-weight:900;
}

.method-steps span{
  color:var(--muted);
  font-weight:700;
  line-height:1.55;
}

.industry-problem-strip{
  position:relative;
  z-index:6;
  margin-top:-48px;
  padding-bottom:86px;
}

.industry-problem-card{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:28px;
  padding:34px;
  border-radius:34px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(255,255,255,.70);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.industry-problem-card h2,
.industry-products-card h2,
.showcase-outcomes-card h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 0;
  font-weight:900;
}

.industry-problem-card p,
.industry-products-card p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin:0;
}

.industry-solutions-section{
  background:var(--cream);
}

.industry-solution-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.industry-solution-grid article{
  min-height:310px;
  padding:26px;
  border-radius:30px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 42px rgba(8,20,38,.06);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.industry-solution-grid article:nth-child(2),
.industry-solution-grid article:nth-child(4){
  transform:translateY(28px);
}

.industry-solution-grid article::before{
  content:"";
  position:absolute;
  right:-38px;
  top:-38px;
  width:126px;
  height:126px;
  border-radius:50%;
  background:rgba(18,106,122,.10);
}

.industry-solution-grid span{
  position:absolute;
  top:24px;
  left:24px;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--red);
  font-weight:900;
}

.industry-solution-grid h3{
  font-size:28px;
  line-height:1.03;
  font-weight:900;
  margin:0 0 12px;
}

.industry-solution-grid p{
  color:var(--muted);
  line-height:1.58;
  font-weight:700;
}

.industry-solution-grid a{
  margin-top:20px;
  width:max-content;
  display:inline-flex;
  gap:8px;
  align-items:center;
  padding:12px 15px;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,var(--red),var(--navy));
  font-weight:900;
}

.industry-products-section{
  background:#fff;
}

.industry-products-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  padding:34px;
  border-radius:36px;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.12),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.industry-product-links{
  display:grid;
  gap:14px;
}

.industry-product-links a{
  display:grid;
  grid-template-columns:.55fr 1fr;
  gap:18px;
  padding:22px;
  border-radius:24px;
  background:var(--cream);
  border:1px solid rgba(8,20,38,.06);
  color:var(--navy);
  transition:.25s ease;
}

.industry-product-links a:hover{
  transform:translateX(6px);
}

.industry-product-links strong{
  font-size:24px;
  line-height:1.05;
  font-weight:900;
}

.industry-product-links span{
  color:var(--muted);
  line-height:1.5;
  font-weight:700;
}

.industry-outcomes-section{
  background:#071426;
  color:#fff;
}

.industry-outcomes-section .section-head p{
  color:#aeb9c9;
}

.industry-outcome-grid{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.industry-outcome-grid li{
  min-height:260px;
  border-radius:30px;
  padding:26px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.industry-outcome-grid li:nth-child(even){
  transform:translateY(28px);
}

.industry-outcome-grid li::before{
  content:"";
  position:absolute;
  right:-34px;
  bottom:-34px;
  width:120px;
  height:120px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
}

.industry-outcome-grid strong{
  display:block;
  font-size:26px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:12px;
}

.industry-outcome-grid span{
  color:#aeb9c9;
  line-height:1.55;
  font-weight:700;
}

@media(max-width:1200px){
  .industry-card-grid,
  .industry-solution-grid,
  .industry-outcome-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:1000px){
  .industries-hub-grid,
  .industry-detail-grid,
  .method-grid,
  .industry-problem-card,
  .industry-products-card{
    grid-template-columns:1fr;
  }
}

@media(max-width:800px){
  .industries-hub-hero,
  .industry-detail-hero{
    padding:178px 0 84px;
  }

  .industries-hub-grid h1,
  .industry-detail-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .industry-card-grid,
  .industry-solution-grid,
  .industry-outcome-grid{
    grid-template-columns:1fr;
  }

  .industry-problem-strip{
    margin-top:-22px;
    padding-bottom:64px;
  }

  .industry-problem-card,
  .method-grid,
  .industry-products-card{
    padding:22px;
    border-radius:26px;
  }

  .industry-solution-grid article:nth-child(2),
  .industry-solution-grid article:nth-child(4),
  .industry-outcome-grid li:nth-child(even){
    transform:none;
  }

  .industry-product-links a{
    grid-template-columns:1fr;
  }

  .method-steps article{
    grid-template-columns:1fr;
  }
}


/* v26: more industries on hub + better fitting card previews */
.industry-card-grid{
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.industry-card{
  min-height:430px;
  padding:28px;
}

.industry-card h3{
  font-size:30px;
  margin-bottom:12px;
}

.industry-card p{
  font-size:16px;
  line-height:1.52;
  max-width:95%;
  min-height:74px;
}

.industry-card a{
  margin-top:18px;
}

.industry-card.health-industry{
  background:linear-gradient(135deg,#21102e,#84389d);
}

.industry-card.property-industry{
  background:linear-gradient(135deg,#071426,#364b6d);
}

.industry-card.hospitality-industry{
  background:linear-gradient(135deg,#5f2342,#b22a26);
}

.industry-card.ngo-industry{
  background:linear-gradient(135deg,#126a7a,#243c5a);
}

.industry-detail-hero.health-industry{
  background:linear-gradient(135deg,#21102e 0%,#84389d 48%,#d4527d 100%);
}

.industry-detail-hero.property-industry{
  background:linear-gradient(135deg,#071426 0%,#243c5a 48%,#364b6d 100%);
}

.industry-detail-hero.hospitality-industry{
  background:linear-gradient(135deg,#2b1339 0%,#7f1f35 48%,#b22a26 100%);
}

.industry-detail-hero.ngo-industry{
  background:linear-gradient(135deg,#071426 0%,#126a7a 48%,#243c5a 100%);
}

@media(max-width:1400px){
  .industry-card-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:1200px){
  .industry-card{
    min-height:400px;
  }
}

@media(max-width:800px){
  .industry-card{
    min-height:360px;
    padding:24px;
  }

  .industry-card p{
    min-height:auto;
  }
}


/* v27: Portfolio / Case Studies - fresh premium editorial layout */
.portfolio-hero,
.case-detail-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:198px 0 118px;
  background:linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.case-detail-hero.case-health{
  background:linear-gradient(135deg,#21102e 0%,#84389d 48%,#d4527d 100%);
}

.case-detail-hero.case-kazi{
  background:linear-gradient(135deg,#050d18 0%,#1d1d24 48%,#b22a26 100%);
}

.case-detail-hero.case-kids{
  background:linear-gradient(135deg,#071426 0%,#126a7a 48%,#f7b267 130%);
}

.case-detail-hero.case-stock{
  background:linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%);
}

.case-detail-hero.case-uneca{
  background:linear-gradient(135deg,#071426 0%,#283a5d 48%,#7f1f35 100%);
}

.portfolio-pattern{
  position:absolute;
  inset:0;
  opacity:.14;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 7px,transparent 8px),
    repeating-linear-gradient(45deg,transparent 0 78px,rgba(255,255,255,.24) 80px 90px,transparent 92px 160px);
}

.portfolio-hero-grid,
.case-detail-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr .85fr;
  gap:70px;
  align-items:center;
}

.portfolio-hero-copy h1,
.case-detail-copy h1{
  font-size:clamp(46px,5.25vw,86px);
  line-height:.96;
  margin:24px 0 20px;
  font-weight:900;
  letter-spacing:-.04em;
}

.portfolio-hero-copy p,
.case-detail-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:780px;
}

.portfolio-hero-board,
.case-metric-panel{
  min-height:380px;
  border-radius:38px;
  padding:34px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 35px 90px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.portfolio-hero-board::before,
.case-metric-panel::before{
  content:"";
  position:absolute;
  width:240px;
  height:240px;
  border-radius:50%;
  right:-80px;
  top:-80px;
  border:1px solid rgba(255,255,255,.22);
}

.portfolio-hero-board strong{
  font-size:clamp(76px,8vw,130px);
  line-height:.82;
  letter-spacing:-.07em;
  font-weight:900;
}

.portfolio-hero-board span,
.case-metric-panel span{
  color:rgba(255,255,255,.84);
  font-size:20px;
  font-weight:900;
  margin-top:18px;
}

.portfolio-hero-board em{
  color:rgba(255,255,255,.72);
  font-style:normal;
  font-weight:800;
  margin-top:10px;
}

.portfolio-feature-strip,
.case-summary-strip{
  position:relative;
  z-index:6;
  margin-top:-52px;
  padding-bottom:86px;
}

.portfolio-feature-card,
.case-summary-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  padding:34px;
  border-radius:36px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(255,255,255,.70);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.portfolio-feature-card h2,
.case-summary-card h2,
.case-story-grid h2,
.case-feature-copy h2,
.case-tech-card h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 0;
  font-weight:900;
}

.portfolio-feature-card p,
.case-summary-card p,
.case-story-grid p,
.case-feature-copy p,
.case-tech-card p{
  color:var(--muted);
  line-height:1.7;
  font-size:18px;
  margin:0;
}

.portfolio-grid-section{
  background:var(--cream);
}

.portfolio-case-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}

.portfolio-case-card{
  min-height:440px;
  border-radius:34px;
  padding:28px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  overflow:hidden;
  position:relative;
}

.portfolio-case-card.case-health{
  background:linear-gradient(135deg,#21102e,#84389d);
}

.portfolio-case-card.case-kazi{
  background:linear-gradient(135deg,#050d18,#b22a26);
}

.portfolio-case-card.case-kids{
  background:linear-gradient(135deg,#0b5f4c,#f7b267);
}

.portfolio-case-card.case-stock{
  background:linear-gradient(135deg,#071426,#126a7a);
}

.portfolio-case-card.case-uneca{
  background:linear-gradient(135deg,#071426,#7f1f35);
}

.portfolio-case-card:nth-child(2),
.portfolio-case-card:nth-child(5){
  transform:translateY(34px);
}

.portfolio-case-card::before{
  content:"";
  position:absolute;
  right:-42px;
  top:-42px;
  width:150px;
  height:150px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.20);
}

.case-card-top{
  position:absolute;
  top:24px;
  left:24px;
  right:24px;
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
}

.case-card-top span{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(255,255,255,.76);
  font-weight:900;
}

.case-card-top strong{
  min-width:62px;
  height:62px;
  padding:0 12px;
  display:grid;
  place-items:center;
  border-radius:22px;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(12px);
  font-size:20px;
}

.portfolio-case-card h3{
  font-size:34px;
  line-height:1.02;
  font-weight:900;
  margin:0 0 14px;
}

.portfolio-case-card p{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:700;
  min-height:96px;
}

.case-card-meta{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
  justify-content:space-between;
  margin-top:18px;
}

.case-card-meta em{
  color:rgba(255,255,255,.72);
  font-style:normal;
  font-weight:900;
  font-size:13px;
}

.case-card-meta a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:12px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  font-weight:900;
}

.portfolio-credibility-section{
  background:#071426;
  color:#fff;
}

.portfolio-credibility-grid{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:32px;
  align-items:start;
  padding:36px;
  border-radius:38px;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.18),transparent 26%),
    rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
}

.portfolio-credibility-grid h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 14px;
  font-weight:900;
}

.portfolio-credibility-grid p{
  color:#aeb9c9;
  line-height:1.7;
  font-size:18px;
}

.uneca-mini-list{
  display:grid;
  gap:14px;
}

.uneca-mini-list article{
  display:grid;
  grid-template-columns:62px 1fr;
  gap:8px 18px;
  padding:22px;
  border-radius:26px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
}

.uneca-mini-list b{
  grid-row:span 2;
  width:54px;
  height:54px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--red),var(--teal));
  color:#fff;
  font-weight:900;
}

.uneca-mini-list strong{
  font-size:22px;
  line-height:1.05;
  font-weight:900;
}

.uneca-mini-list span{
  color:#aeb9c9;
  line-height:1.5;
  font-weight:700;
}

.case-metric-panel{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  align-content:end;
}

.case-metric-panel div{
  min-height:170px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:24px;
  border-radius:28px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.18);
}

.case-metric-panel small{
  color:rgba(255,255,255,.70);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  font-size:12px;
}

.case-metric-panel strong{
  font-size:clamp(38px,4vw,68px);
  line-height:.9;
  letter-spacing:-.05em;
  font-weight:900;
  margin-top:12px;
}

.case-metric-panel > span{
  grid-column:1/-1;
}

.case-story-section{
  background:#fff;
}

.case-story-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

.case-story-grid article{
  min-height:360px;
  padding:34px;
  border-radius:34px;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.10),transparent 28%),
    #fff;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.case-story-grid article:nth-child(2){
  background:
    radial-gradient(circle at 90% 12%,rgba(178,42,38,.10),transparent 28%),
    var(--cream);
}

.case-features-section{
  background:var(--cream);
}

.case-feature-layout{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:40px;
  align-items:start;
}

.case-feature-copy{
  position:sticky;
  top:150px;
  padding:34px;
  border-radius:30px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.case-feature-box{
  background:linear-gradient(180deg,#fff 0%,#fffaf2 100%);
}

.case-impact-section{
  background:#071426;
  color:#fff;
}

.case-impact-section .section-head p{
  color:#aeb9c9;
}

.case-impact-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.case-impact-grid article{
  min-height:270px;
  border-radius:30px;
  padding:26px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.case-impact-grid article:nth-child(even){
  transform:translateY(28px);
}

.case-impact-grid article::before{
  content:"";
  position:absolute;
  right:-34px;
  bottom:-34px;
  width:120px;
  height:120px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
}

.case-impact-grid strong{
  font-size:26px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:12px;
}

.case-impact-grid p{
  color:#aeb9c9;
  line-height:1.58;
  font-weight:700;
}

.case-tech-section{
  background:#fff;
}

.case-tech-card{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:30px;
  align-items:start;
  padding:36px;
  border-radius:36px;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.12),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.case-tech-tags{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.case-tech-tags span{
  display:inline-flex;
  align-items:center;
  min-height:48px;
  padding:0 16px;
  border-radius:999px;
  background:var(--cream);
  border:1px solid rgba(8,20,38,.06);
  color:var(--navy);
  font-weight:900;
}

@media(max-width:1200px){
  .portfolio-case-grid{
    grid-template-columns:1fr 1fr;
  }

  .case-impact-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:1000px){
  .portfolio-hero-grid,
  .case-detail-grid,
  .portfolio-feature-card,
  .case-summary-card,
  .portfolio-credibility-grid,
  .case-story-grid,
  .case-feature-layout,
  .case-tech-card{
    grid-template-columns:1fr;
  }

  .case-feature-copy{
    position:relative;
    top:auto;
  }
}

@media(max-width:800px){
  .portfolio-hero,
  .case-detail-hero{
    padding:178px 0 86px;
  }

  .portfolio-hero-copy h1,
  .case-detail-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .portfolio-feature-strip,
  .case-summary-strip{
    margin-top:-22px;
    padding-bottom:64px;
  }

  .portfolio-feature-card,
  .case-summary-card,
  .portfolio-credibility-grid,
  .case-tech-card{
    padding:22px;
    border-radius:26px;
  }

  .portfolio-case-grid,
  .case-impact-grid{
    grid-template-columns:1fr;
  }

  .portfolio-case-card,
  .case-story-grid article{
    min-height:340px;
  }

  .portfolio-case-card:nth-child(2),
  .portfolio-case-card:nth-child(5),
  .case-impact-grid article:nth-child(even){
    transform:none;
  }

  .case-metric-panel{
    grid-template-columns:1fr;
  }

  .uneca-mini-list article{
    grid-template-columns:1fr;
  }
}


/* v28: portfolio refresh - new hero design and more detailed case pages */
.portfolio-hero-v2{
  padding:198px 0 88px;
  background:
    radial-gradient(circle at 12% 18%,rgba(18,106,122,.36),transparent 26%),
    radial-gradient(circle at 84% 18%,rgba(178,42,38,.28),transparent 24%),
    linear-gradient(135deg,#071426 0%,#172d46 42%,#243c5a 100%);
}

.portfolio-hero-shell{
  position:relative;
  z-index:2;
  display:grid;
  gap:34px;
}

.portfolio-hero-head{
  max-width:900px;
}

.portfolio-hero-head h1{
  font-size:clamp(48px,5.5vw,92px);
  line-height:.94;
  margin:24px 0 18px;
  letter-spacing:-.045em;
  font-weight:900;
  color:#fff;
}

.portfolio-hero-head p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.7;
  max-width:820px;
}

.portfolio-hero-stage{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr 1.2fr;
  gap:18px;
}

.stage-card{
  min-height:210px;
  border-radius:30px;
  padding:24px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(16px);
  box-shadow:0 22px 50px rgba(0,0,0,.14);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.stage-card::before{
  content:"";
  position:absolute;
  right:-34px;
  top:-34px;
  width:130px;
  height:130px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.18);
}

.stage-card.small{
  min-height:180px;
}

.stage-card small{
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(255,255,255,.70);
  font-weight:900;
  font-size:12px;
}

.stage-card strong{
  color:#fff;
  font-size:34px;
  line-height:1.02;
  font-weight:900;
  margin:14px 0 10px;
}

.stage-card.one{background:linear-gradient(135deg,rgba(18,106,122,.45),rgba(255,255,255,.10))}
.stage-card.two{background:linear-gradient(135deg,rgba(127,31,53,.50),rgba(255,255,255,.10))}
.stage-card.three{background:linear-gradient(135deg,rgba(255,255,255,.15),rgba(255,255,255,.08))}
.stage-card.four{background:linear-gradient(135deg,rgba(7,20,38,.35),rgba(255,255,255,.10))}

.stage-card span{
  color:rgba(255,255,255,.82);
  font-weight:800;
  line-height:1.45;
}

.portfolio-stats-band{
  position:relative;
  z-index:6;
  margin-top:-26px;
  padding-bottom:78px;
}

.portfolio-stats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}

.portfolio-stats-grid article{
  min-height:148px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 18px 44px rgba(8,20,38,.07);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.portfolio-stats-grid strong{
  font-size:40px;
  line-height:.95;
  color:var(--red);
  font-weight:900;
  letter-spacing:-.04em;
}

.portfolio-stats-grid span{
  color:var(--muted);
  font-weight:800;
  line-height:1.45;
  margin-top:10px;
}

.portfolio-case-grid{
  grid-template-columns:repeat(4,1fr);
}

.portfolio-case-card{
  min-height:420px;
}

.portfolio-case-card:nth-child(2),
.portfolio-case-card:nth-child(5),
.portfolio-case-card:nth-child(8),
.portfolio-case-card:nth-child(11),
.portfolio-case-card:nth-child(14){
  transform:translateY(34px);
}

.case-longform-section{
  background:#fffaf2;
}

.case-longform-card{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:30px;
  padding:36px;
  border-radius:36px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.case-longform-card h2{
  font-size:clamp(36px,4vw,62px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 0;
  font-weight:900;
}

.case-longform-text{
  display:grid;
  gap:16px;
}

.case-longform-text p{
  color:var(--muted);
  line-height:1.75;
  font-size:18px;
  margin:0;
}

@media(max-width:1400px){
  .portfolio-case-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:1100px){
  .portfolio-hero-stage,
  .portfolio-stats-grid,
  .case-longform-card{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:900px){
  .portfolio-case-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:800px){
  .portfolio-hero-v2{
    padding:178px 0 72px;
  }

  .portfolio-hero-head h1{
    font-size:42px;
    line-height:1.02;
  }

  .portfolio-hero-stage,
  .portfolio-stats-grid,
  .portfolio-case-grid,
  .case-longform-card{
    grid-template-columns:1fr;
  }

  .portfolio-stats-band{
    margin-top:-12px;
    padding-bottom:56px;
  }

  .portfolio-case-card:nth-child(2),
  .portfolio-case-card:nth-child(5),
  .portfolio-case-card:nth-child(8),
  .portfolio-case-card:nth-child(11),
  .portfolio-case-card:nth-child(14){
    transform:none;
  }

  .case-longform-card{
    padding:22px;
    border-radius:26px;
  }
}


/* v29: portfolio card layout fix - prevent overlay and improve readability */
.portfolio-case-grid{
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:24px !important;
  align-items:stretch;
}

.portfolio-case-card{
  min-height:520px !important;
  padding:112px 28px 28px !important;
  border-radius:34px;
  justify-content:flex-start !important;
}

.portfolio-case-card h3{
  font-size:clamp(28px, 2.1vw, 40px) !important;
  line-height:1.03 !important;
  margin:0 0 16px !important;
  max-width:95%;
  word-break:break-word;
}

.portfolio-case-card p{
  min-height:auto !important;
  line-height:1.6 !important;
  margin-bottom:20px;
}

.case-card-top{
  top:24px !important;
  left:24px !important;
  right:24px !important;
  align-items:flex-start !important;
}

.case-card-top span{
  display:block;
  max-width:72%;
  line-height:1.25;
}

.case-card-top strong{
  flex:0 0 auto;
}

.case-card-meta{
  margin-top:auto !important;
  padding-top:18px;
  gap:12px;
  align-items:flex-end !important;
}

.case-card-meta a{
  white-space:nowrap;
}

.portfolio-case-card:nth-child(2),
.portfolio-case-card:nth-child(5),
.portfolio-case-card:nth-child(8),
.portfolio-case-card:nth-child(11),
.portfolio-case-card:nth-child(14){
  transform:none !important;
}

@media(max-width:1400px){
  .portfolio-case-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }
}

@media(max-width:1100px){
  .portfolio-case-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }

  .portfolio-case-card{
    min-height:500px !important;
  }
}

@media(max-width:700px){
  .portfolio-case-grid{
    grid-template-columns:1fr !important;
  }

  .portfolio-case-card{
    min-height:unset !important;
    padding:104px 24px 24px !important;
  }

  .portfolio-case-card h3{
    font-size:32px !important;
  }
}


/* v30: complete UI/UX refinement for individual portfolio pages */
.case-detail-hero{
  padding:184px 0 88px !important;
  min-height:auto;
}

.case-detail-grid{
  grid-template-columns:1.08fr .92fr !important;
  gap:54px !important;
}

.case-detail-copy{
  max-width:900px;
}

.case-detail-copy h1{
  font-size:clamp(46px,5vw,78px) !important;
  line-height:.97 !important;
  max-width:960px;
}

.case-detail-copy p{
  max-width:760px !important;
}

.case-metric-panel{
  min-height:unset !important;
  padding:24px !important;
  border-radius:34px !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:14px !important;
  align-content:stretch !important;
  background:rgba(255,255,255,.14) !important;
}

.case-metric-panel div{
  min-height:190px !important;
  border-radius:26px !important;
  background:rgba(255,255,255,.15) !important;
}

.case-metric-panel > span{
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  border-radius:22px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  text-align:center;
}

/* sticky mini navigation */
.case-page-nav-section{
  position:sticky;
  top:82px;
  z-index:20;
  margin-top:-34px;
  padding:0 0 42px;
  pointer-events:none;
}

.case-page-nav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  padding:12px;
  border-radius:999px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 18px 48px rgba(8,20,38,.12);
  backdrop-filter:blur(18px);
  pointer-events:auto;
  width:max-content;
  max-width:calc(100% - 36px);
}

.case-page-nav a{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:0 16px;
  border-radius:999px;
  color:var(--navy);
  font-weight:900;
  font-size:14px;
  transition:.22s ease;
}

.case-page-nav a:hover{
  color:#fff;
  background:linear-gradient(135deg,var(--red),var(--navy));
}

/* Overview now feels like a premium intro panel */
.case-summary-strip{
  margin-top:0 !important;
  padding:32px 0 28px !important;
  background:
    radial-gradient(circle at 12% 10%,rgba(18,106,122,.08),transparent 24%),
    #fff;
}

.case-summary-card{
  grid-template-columns:.75fr 1.25fr !important;
  align-items:center;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 92% 10%,rgba(178,42,38,.08),transparent 26%),
    #fff !important;
  border:1px solid rgba(8,20,38,.08) !important;
  box-shadow:0 24px 70px rgba(8,20,38,.08) !important;
}

.case-summary-card h2{
  font-size:clamp(30px,3vw,48px) !important;
}

.case-summary-card p{
  font-size:18px !important;
  line-height:1.75 !important;
}

/* Quick facts */
.case-facts-section{
  padding:0 0 76px;
  background:#fff;
}

.case-facts-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}

.case-facts-grid article{
  min-height:165px;
  border-radius:28px;
  padding:24px;
  background:var(--cream);
  border:1px solid rgba(8,20,38,.07);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.case-facts-grid article::before{
  content:"";
  position:absolute;
  right:-34px;
  top:-34px;
  width:110px;
  height:110px;
  border-radius:50%;
  background:rgba(178,42,38,.08);
}

.case-facts-grid span{
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--red);
  font-size:12px;
  font-weight:900;
  margin-bottom:10px;
}

.case-facts-grid strong{
  color:var(--navy);
  font-size:22px;
  line-height:1.08;
  font-weight:900;
}

/* Challenge / solution redesigned to avoid huge blank cards */
.case-story-section{
  padding-top:96px !important;
  background:
    linear-gradient(180deg,#fff 0%,var(--paper) 100%) !important;
}

.case-story-grid{
  grid-template-columns:1fr 1fr !important;
  gap:24px !important;
}

.case-story-grid article{
  min-height:360px !important;
  padding:34px !important;
  border-radius:34px !important;
  background:#fff !important;
  box-shadow:0 24px 70px rgba(8,20,38,.08) !important;
  justify-content:flex-start !important;
}

.case-story-grid article:nth-child(2){
  background:
    radial-gradient(circle at 92% 12%,rgba(178,42,38,.10),transparent 28%),
    #fffaf2 !important;
}

.case-story-grid .section-kicker{
  width:max-content !important;
  max-width:100%;
  padding:12px 16px !important;
  border-radius:999px !important;
  background:#f6e7e7 !important;
  color:var(--red) !important;
  text-align:left !important;
  margin-bottom:28px !important;
}

.case-story-grid h2{
  font-size:clamp(34px,3.4vw,58px) !important;
  line-height:1 !important;
  margin:0 0 20px !important;
}

.case-story-grid p{
  font-size:18px !important;
  line-height:1.75 !important;
}

/* Detailed description is now easier to read */
.case-longform-section{
  background:var(--paper) !important;
}

.case-longform-card{
  grid-template-columns:.72fr 1.28fr !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 88% 12%,rgba(18,106,122,.10),transparent 28%),
    #fff !important;
}

.case-longform-card h2{
  font-size:clamp(34px,3.6vw,58px) !important;
}

.case-longform-text{
  padding:8px 0;
  border-left:4px solid rgba(178,42,38,.18);
  padding-left:28px;
}

.case-longform-text p{
  font-size:18px !important;
  line-height:1.8 !important;
}

/* Features section feels more like a product spec area */
.case-features-section{
  background:#fffaf2 !important;
}

.case-feature-layout{
  grid-template-columns:.74fr 1.26fr !important;
}

.case-feature-copy{
  border-radius:34px !important;
  background:
    radial-gradient(circle at 92% 12%,rgba(18,106,122,.12),transparent 28%),
    #fff !important;
}

.case-feature-copy h2{
  font-size:clamp(34px,3.6vw,58px) !important;
}

.case-feature-box{
  border-radius:34px !important;
  padding:30px !important;
}

.case-feature-box ul{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.case-feature-box li{
  min-height:94px !important;
  border-radius:22px !important;
  padding:18px !important;
  align-items:flex-start !important;
}

/* Impact section more premium and less cramped */
.case-impact-section{
  background:
    radial-gradient(circle at 18% 18%,rgba(178,42,38,.22),transparent 28%),
    radial-gradient(circle at 86% 12%,rgba(18,106,122,.18),transparent 24%),
    #071426 !important;
}

.case-impact-grid{
  grid-template-columns:repeat(2,1fr) !important;
  gap:18px !important;
}

.case-impact-grid article{
  min-height:250px !important;
  border-radius:30px !important;
}

.case-impact-grid article:nth-child(even){
  transform:none !important;
}

.case-impact-grid strong{
  display:block;
  font-size:30px !important;
  line-height:1.03 !important;
}

/* Technology */
.case-tech-section{
  background:#fff !important;
}

.case-tech-card{
  grid-template-columns:.72fr 1.28fr !important;
  border-radius:34px !important;
}

.case-tech-tags span{
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(135deg,var(--teal),var(--red)) border-box;
  border:1px solid transparent !important;
  box-shadow:0 8px 22px rgba(8,20,38,.05);
}

/* Previous / next */
.case-next-section{
  background:var(--paper);
  padding:84px 0;
}

.case-next-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.case-next-grid a{
  min-height:220px;
  border-radius:32px;
  padding:28px;
  background:
    radial-gradient(circle at 90% 12%,rgba(255,255,255,.16),transparent 26%),
    linear-gradient(135deg,var(--navy),#243c5a);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.case-next-grid a:nth-child(2){
  text-align:right;
  background:
    radial-gradient(circle at 90% 12%,rgba(255,255,255,.16),transparent 26%),
    linear-gradient(135deg,#7f1f35,var(--red));
}

.case-next-grid a::before{
  content:"";
  position:absolute;
  right:-34px;
  top:-34px;
  width:120px;
  height:120px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.18);
}

.case-next-grid span{
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  color:rgba(255,255,255,.70);
  font-size:12px;
}

.case-next-grid strong{
  display:block;
  font-size:clamp(26px,2.4vw,38px);
  line-height:1.04;
  margin:14px 0 16px;
  font-weight:900;
}

.case-next-grid b{
  color:rgba(255,255,255,.82);
  font-weight:900;
}

/* Better anchor offset */
#overview,
#challenge,
#features,
#impact,
#technology{
  scroll-margin-top:150px;
}

@media(max-width:1100px){
  .case-detail-grid,
  .case-summary-card,
  .case-longform-card,
  .case-feature-layout,
  .case-tech-card{
    grid-template-columns:1fr !important;
  }

  .case-facts-grid{
    grid-template-columns:1fr 1fr;
  }

  .case-page-nav-section{
    position:relative;
    top:auto;
  }
}

@media(max-width:900px){
  .case-story-grid,
  .case-impact-grid,
  .case-next-grid{
    grid-template-columns:1fr !important;
  }

  .case-feature-box ul{
    grid-template-columns:1fr;
  }

  .case-next-grid a:nth-child(2){
    text-align:left;
  }
}

@media(max-width:700px){
  .case-detail-hero{
    padding:168px 0 72px !important;
  }

  .case-detail-copy h1{
    font-size:42px !important;
    line-height:1.02 !important;
  }

  .case-metric-panel,
  .case-facts-grid{
    grid-template-columns:1fr !important;
  }

  .case-page-nav{
    width:100%;
    border-radius:26px;
    justify-content:flex-start;
  }

  .case-summary-card,
  .case-story-grid article,
  .case-longform-card,
  .case-feature-copy,
  .case-feature-box,
  .case-tech-card{
    padding:22px !important;
    border-radius:26px !important;
  }

  .case-story-grid h2,
  .case-longform-card h2,
  .case-feature-copy h2,
  .case-tech-card h2{
    font-size:34px !important;
  }

  .case-longform-text{
    border-left:0;
    padding-left:0;
  }
}


/* v31: lead-generation offer pages */
.offers-hub-hero,
.offer-detail-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:190px 0 104px;
  background:
    radial-gradient(circle at 12% 18%,rgba(18,106,122,.34),transparent 26%),
    radial-gradient(circle at 84% 18%,rgba(178,42,38,.28),transparent 24%),
    linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.offer-detail-hero.stock-offer-theme{
  background:
    radial-gradient(circle at 12% 18%,rgba(18,106,122,.34),transparent 26%),
    linear-gradient(135deg,#071426 0%,#0e3658 48%,#126a7a 100%);
}

.offer-detail-hero.pos-offer-theme{
  background:
    radial-gradient(circle at 84% 18%,rgba(178,42,38,.30),transparent 24%),
    linear-gradient(135deg,#1b1730 0%,#8f2433 55%,#b22a26 100%);
}

.offer-pattern{
  position:absolute;
  inset:0;
  opacity:.14;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 7px,transparent 8px),
    repeating-linear-gradient(45deg,transparent 0 78px,rgba(255,255,255,.24) 80px 90px,transparent 92px 160px);
}

.offers-hub-grid,
.offer-detail-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr .82fr;
  gap:64px;
  align-items:center;
}

.offers-hub-grid h1,
.offer-detail-copy h1{
  font-size:clamp(46px,5.3vw,86px);
  line-height:.96;
  letter-spacing:-.04em;
  margin:24px 0 20px;
  font-weight:900;
}

.offers-hub-grid p,
.offer-detail-copy p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.7;
  max-width:790px;
}

.offers-hub-note,
.offer-price-card{
  min-height:370px;
  border-radius:38px;
  padding:34px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 34px 90px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.offers-hub-note::before,
.offer-price-card::before{
  content:"";
  position:absolute;
  right:-72px;
  top:-72px;
  width:220px;
  height:220px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
}

.offers-hub-note strong,
.offer-price-card strong{
  font-size:clamp(54px,6vw,96px);
  line-height:.9;
  letter-spacing:-.06em;
  color:#fff;
  font-weight:900;
  margin:10px 0;
}

.offer-price-card small{
  color:rgba(255,255,255,.70);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:900;
}

.offers-hub-note span,
.offer-price-card span{
  color:rgba(255,255,255,.84);
  line-height:1.5;
  font-weight:800;
}

.offer-price-card .btn{
  margin-top:26px;
  width:max-content;
}

.offer-highlight-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}

.offer-highlight-pills span{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  padding:0 15px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  font-weight:900;
}

.offers-list-section{
  background:var(--cream);
}

.offer-card-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}

.offer-card{
  min-height:430px;
  border-radius:34px;
  padding:28px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.offer-card.stock-offer-theme{
  background:linear-gradient(135deg,#071426,#126a7a);
}

.offer-card.pos-offer-theme{
  background:linear-gradient(135deg,#7f1f35,var(--red));
}

.offer-card::before{
  content:"";
  position:absolute;
  right:-42px;
  top:-42px;
  width:150px;
  height:150px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.20);
}

.offer-card > span{
  position:absolute;
  top:26px;
  left:28px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(255,255,255,.72);
  font-size:12px;
  font-weight:900;
}

.offer-card h3{
  font-size:36px;
  line-height:1.02;
  font-weight:900;
  margin:0 0 14px;
}

.offer-card p{
  color:rgba(255,255,255,.78);
  line-height:1.58;
  font-weight:700;
  min-height:104px;
}

.offer-card div{
  margin-top:20px;
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
}

.offer-card strong{
  font-size:28px;
  line-height:1;
  font-weight:900;
}

.offer-card a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:12px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  font-weight:900;
  white-space:nowrap;
}

.offer-included-strip{
  position:relative;
  z-index:6;
  margin-top:-44px;
  padding-bottom:50px;
}

.offer-included-intro{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:28px;
  padding:34px;
  border-radius:36px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 30px 90px rgba(8,20,38,.14);
  backdrop-filter:blur(16px);
}

.offer-included-intro h2,
.offer-audience-card h2{
  font-size:clamp(34px,3.8vw,60px);
  line-height:1;
  letter-spacing:-.03em;
  margin:22px 0 0;
  font-weight:900;
}

.offer-included-intro p,
.offer-audience-card p{
  color:var(--muted);
  font-size:18px;
  line-height:1.75;
  margin:0;
}

.offer-included-section{
  background:#fff;
  padding-top:34px;
}

.offer-included-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}

.offer-included-grid article{
  min-height:230px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 42px rgba(8,20,38,.06);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.offer-included-grid article::before{
  content:"";
  position:absolute;
  right:-34px;
  top:-34px;
  width:116px;
  height:116px;
  border-radius:50%;
  background:rgba(178,42,38,.08);
}

.offer-included-grid strong{
  font-size:25px;
  line-height:1.04;
  font-weight:900;
  margin-bottom:12px;
}

.offer-included-grid p{
  color:var(--muted);
  line-height:1.58;
  font-weight:700;
}

.offer-audience-section{
  background:var(--cream);
}

.offer-audience-card{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:30px;
  padding:36px;
  border-radius:36px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.offer-audience-tags{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-content:flex-start;
}

.offer-audience-tags span{
  min-height:50px;
  display:inline-flex;
  align-items:center;
  padding:0 16px;
  border-radius:999px;
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(135deg,var(--teal),var(--red)) border-box;
  border:1px solid transparent;
  color:var(--navy);
  font-weight:900;
}

.offer-process-section{
  background:#fff;
}

.offer-process-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.offer-process-grid article{
  min-height:280px;
  border-radius:30px;
  padding:26px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),#243c5a);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.offer-process-grid article:nth-child(even){
  background:linear-gradient(135deg,#7f1f35,var(--red));
  transform:translateY(26px);
}

.offer-process-grid b{
  position:absolute;
  top:24px;
  left:24px;
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  font-weight:900;
}

.offer-process-grid strong{
  font-size:27px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:12px;
}

.offer-process-grid p{
  color:rgba(255,255,255,.78);
  line-height:1.58;
  font-weight:700;
}

@media(max-width:1200px){
  .offer-included-grid,
  .offer-process-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:1000px){
  .offers-hub-grid,
  .offer-detail-grid,
  .offer-included-intro,
  .offer-audience-card{
    grid-template-columns:1fr;
  }

  .offer-card-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:700px){
  .offers-hub-hero,
  .offer-detail-hero{
    padding:172px 0 80px;
  }

  .offers-hub-grid h1,
  .offer-detail-copy h1{
    font-size:42px;
    line-height:1.02;
  }

  .offer-included-strip{
    margin-top:-22px;
    padding-bottom:34px;
  }

  .offer-included-intro,
  .offer-audience-card{
    padding:22px;
    border-radius:26px;
  }

  .offer-included-grid,
  .offer-process-grid{
    grid-template-columns:1fr;
  }

  .offer-process-grid article:nth-child(even){
    transform:none;
  }

  .offer-card div{
    display:block;
  }

  .offer-card a{
    margin-top:16px;
  }
}


/* v32: offer countdown + clean footer layout */
.offer-countdown{
  margin-top:24px;
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
  backdrop-filter:blur(14px);
}

.offer-countdown small{
  display:block;
  color:rgba(255,255,255,.72);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:12px;
  font-weight:900;
  margin-bottom:8px;
}

.offer-countdown strong{
  display:block;
  color:#fff;
  font-size:clamp(28px,3vw,46px);
  line-height:1;
  letter-spacing:-.04em;
  font-weight:900;
}

.offer-countdown em{
  display:block;
  color:rgba(255,255,255,.78);
  font-style:normal;
  font-weight:800;
  line-height:1.45;
  margin-top:10px;
}

.offer-countdown.is-ending{
  background:rgba(178,42,38,.26);
  border-color:rgba(255,255,255,.28);
}

.offer-countdown.is-expired strong{
  opacity:.78;
}

.offer-countdown.compact{
  margin-top:20px;
  padding:16px;
}

.offer-countdown.compact strong{
  font-size:32px;
}

/* Footer cleanup: keep all links inside the footer grid and prevent stray link text */
.footer-main-clean{
  grid-template-columns:1.45fr repeat(4,1fr);
}

.site-footer .footer-link-group,
.site-footer .footer-brand-block{
  min-width:0;
}

.site-footer .footer-link-group a{
  line-height:1.35;
}

@media(max-width:1100px){
  .footer-main-clean{
    grid-template-columns:1fr 1fr;
  }

  .footer-brand-block{
    grid-column:1/-1;
  }
}

@media(max-width:700px){
  .footer-main-clean{
    grid-template-columns:1fr;
  }

  .offer-countdown strong{
    font-size:30px;
  }
}


/* v33: make offer countdown highly visible from afar */
.offer-countdown{
  background:linear-gradient(135deg,#fff4bf 0%, #ffd96a 100%) !important;
  border:2px solid rgba(255,255,255,.55) !important;
  box-shadow:
    0 18px 40px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.45) !important;
  backdrop-filter:none !important;
}

.offer-countdown small{
  color:#8a1d1d !important;
  font-size:13px !important;
  letter-spacing:.1em !important;
  margin-bottom:10px !important;
}

.offer-countdown strong{
  color:#071426 !important;
  font-size:clamp(34px,3.2vw,56px) !important;
  text-shadow:none !important;
}

.offer-countdown em{
  color:#243c5a !important;
  font-weight:900 !important;
}

.offer-countdown.is-ending{
  background:linear-gradient(135deg,#ffd9d9 0%, #ff9e9e 100%) !important;
  border-color:rgba(178,42,38,.35) !important;
}

.offer-countdown.is-expired{
  background:linear-gradient(135deg,#e9eef3 0%, #cfd9e3 100%) !important;
}

.offer-countdown.compact{
  background:linear-gradient(135deg,#fff4bf 0%, #ffd96a 100%) !important;
  padding:18px !important;
}

.offer-countdown.compact strong{
  font-size:36px !important;
  color:#071426 !important;
}

@media(max-width:700px){
  .offer-countdown strong{
    font-size:36px !important;
    line-height:1.05 !important;
  }
}


/* v34: better character spacing across the site */
body{
  letter-spacing:.012em;
}

p,li,a,span,small,input,textarea,select,button,label{
  letter-spacing:.012em;
}

h1,h2,h3,h4,h5,h6,
.hero-copy h1,
.page-hero h1,
.offer-detail-copy h1,
.portfolio-hero-head h1,
.case-detail-copy h1,
.solution-hero-copy h1,
.product-hero-copy h1,
.alt-product-copy h1,
.showcase-product-copy h1{
  letter-spacing:-.015em !important;
}

/* v34: contextual enquiry fields */
.context-fields{
  margin:18px 0;
  padding:18px;
  border-radius:24px;
  background:
    radial-gradient(circle at 92% 10%,rgba(18,106,122,.10),transparent 26%),
    #fffaf2;
  border:1px solid rgba(8,20,38,.08);
}

.context-fields[hidden]{
  display:none !important;
}

.context-head{
  margin-bottom:16px;
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-end;
}

.context-head strong{
  color:var(--navy);
  font-size:22px;
  font-weight:900;
  line-height:1.05;
}

.context-head span{
  color:var(--muted);
  font-weight:800;
  font-size:14px;
  text-align:right;
}

.context-fields label{
  margin-bottom:12px;
}

.context-fields textarea{
  min-height:92px;
}

@media(max-width:700px){
  .context-head{
    display:block;
  }

  .context-head span{
    display:block;
    text-align:left;
    margin-top:6px;
  }
}


/* v35: serious countdown visibility fix - high contrast from far */
.offer-countdown{
  background:
    radial-gradient(circle at 90% 12%,rgba(255,228,92,.18),transparent 28%),
    linear-gradient(135deg,#071426 0%,#101b2d 52%,#2b1020 100%) !important;
  border:3px solid #ffe45c !important;
  box-shadow:
    0 22px 52px rgba(0,0,0,.34),
    0 0 0 8px rgba(255,228,92,.12),
    inset 0 1px 0 rgba(255,255,255,.16) !important;
}

.offer-countdown small{
  color:#ffe45c !important;
  font-size:15px !important;
  letter-spacing:.12em !important;
  font-weight:1000 !important;
  margin-bottom:14px !important;
}

.offer-countdown strong{
  color:#ffffff !important;
  font-size:clamp(46px,4.6vw,82px) !important;
  line-height:.95 !important;
  letter-spacing:-.055em !important;
  font-weight:1000 !important;
  text-shadow:0 4px 18px rgba(0,0,0,.35) !important;
}

.offer-countdown strong span{
  color:#ffe45c !important;
}

.offer-countdown em{
  display:inline-flex !important;
  margin-top:16px !important;
  padding:10px 14px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  color:#ffffff !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1.3 !important;
}

.offer-countdown.is-ending{
  background:
    radial-gradient(circle at 90% 12%,rgba(255,228,92,.22),transparent 28%),
    linear-gradient(135deg,#4a0812 0%,#8f1524 52%,#071426 100%) !important;
  border-color:#ffffff !important;
  box-shadow:
    0 24px 58px rgba(178,42,38,.32),
    0 0 0 8px rgba(255,255,255,.12) !important;
}

.offer-countdown.compact{
  background:
    radial-gradient(circle at 90% 12%,rgba(255,228,92,.18),transparent 28%),
    linear-gradient(135deg,#071426 0%,#101b2d 52%,#2b1020 100%) !important;
  border:3px solid #ffe45c !important;
}

.offer-countdown.compact strong{
  color:#ffffff !important;
  font-size:42px !important;
}

.offer-countdown.compact strong span{
  color:#ffe45c !important;
}

@media(max-width:700px){
  .offer-countdown strong{
    font-size:46px !important;
    line-height:1 !important;
  }
}


/* v36: repeated offer countdown CTA sections while scrolling */
.offer-scroll-cta-section{
  background:#fff;
  padding:78px 0;
}

.offer-scroll-cta-section.mid{
  background:
    radial-gradient(circle at 12% 18%,rgba(18,106,122,.08),transparent 26%),
    #fff;
}

.offer-scroll-cta-section.bottom{
  background:
    radial-gradient(circle at 88% 12%,rgba(178,42,38,.08),transparent 26%),
    var(--cream);
}

.offer-scroll-cta{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:24px;
  align-items:stretch;
  padding:28px;
  border-radius:38px;
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(135deg,rgba(18,106,122,.45),rgba(178,42,38,.45)) border-box;
  border:1px solid transparent;
  box-shadow:0 28px 80px rgba(8,20,38,.12);
}

.offer-scroll-copy{
  border-radius:30px;
  padding:34px;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.12),transparent 28%),
    var(--paper);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.offer-scroll-copy h2{
  font-size:clamp(34px,3.8vw,62px);
  line-height:1;
  letter-spacing:-.015em;
  margin:22px 0 14px;
  font-weight:900;
}

.offer-scroll-copy p{
  color:var(--muted);
  font-size:18px;
  line-height:1.7;
  margin:0 0 24px;
}

.offer-scroll-copy .btn{
  width:max-content;
}

.scroll-countdown{
  margin:0 !important;
  min-height:300px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-radius:30px !important;
}

.scroll-countdown strong{
  font-size:clamp(48px,4.8vw,84px) !important;
}

@media(max-width:1000px){
  .offer-scroll-cta{
    grid-template-columns:1fr;
  }

  .scroll-countdown{
    min-height:250px;
  }
}

@media(max-width:700px){
  .offer-scroll-cta-section{
    padding:54px 0;
  }

  .offer-scroll-cta{
    padding:18px;
    border-radius:28px;
  }

  .offer-scroll-copy{
    padding:24px;
    border-radius:24px;
  }

  .offer-scroll-copy .btn{
    width:100%;
  }
}


/* v37: buyer-focused conversion content on Offers page */
.offers-buyer-section{
  background:#fff;
}

.buyer-offer-card{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:28px;
  padding:34px;
  border-radius:38px;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.12),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.buyer-offer-copy{
  padding:30px;
  border-radius:30px;
  background:var(--cream);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.buyer-offer-copy h2{
  font-size:clamp(34px,3.8vw,62px);
  line-height:1;
  letter-spacing:-.015em;
  margin:22px 0 14px;
  font-weight:900;
}

.buyer-offer-copy p{
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
  margin:0 0 24px;
}

.buyer-offer-copy .btn{
  width:max-content;
}

.buyer-benefit-list{
  display:grid;
  gap:14px;
}

.buyer-benefit-list article{
  min-height:150px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(8,20,38,.07);
  box-shadow:0 12px 34px rgba(8,20,38,.05);
  display:grid;
  grid-template-columns:64px 1fr;
  gap:6px 18px;
  align-items:start;
}

.buyer-benefit-list b{
  grid-row:span 2;
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:linear-gradient(135deg,var(--red),var(--navy));
  color:#fff;
  font-weight:900;
}

.buyer-benefit-list strong{
  color:var(--navy);
  font-size:25px;
  line-height:1.05;
  font-weight:900;
}

.buyer-benefit-list span{
  color:var(--muted);
  line-height:1.55;
  font-weight:700;
}

.offers-decision-section{
  background:
    radial-gradient(circle at 12% 18%,rgba(178,42,38,.08),transparent 26%),
    var(--cream);
}

.offer-decision-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.offer-decision-grid article{
  min-height:360px;
  padding:28px;
  border-radius:32px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.offer-decision-grid article:nth-child(2){
  background:linear-gradient(135deg,#071426,#126a7a);
}

.offer-decision-grid article:nth-child(3){
  background:linear-gradient(135deg,#7f1f35,var(--red));
}

.offer-decision-grid article::before{
  content:"";
  position:absolute;
  right:-42px;
  top:-42px;
  width:150px;
  height:150px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.20);
}

.offer-decision-grid span{
  position:absolute;
  top:26px;
  left:28px;
  right:28px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(255,255,255,.72);
  font-size:12px;
  font-weight:900;
}

.offer-decision-grid h3{
  font-size:34px;
  line-height:1.02;
  font-weight:900;
  margin:0 0 14px;
}

.offer-decision-grid p{
  color:rgba(255,255,255,.78);
  line-height:1.58;
  font-weight:700;
  margin-bottom:22px;
}

.offer-decision-grid a{
  width:max-content;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:12px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  font-weight:900;
}

@media(max-width:1000px){
  .buyer-offer-card{
    grid-template-columns:1fr;
  }

  .offer-decision-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:700px){
  .buyer-offer-card{
    padding:20px;
    border-radius:28px;
  }

  .buyer-offer-copy{
    padding:24px;
    border-radius:24px;
  }

  .buyer-offer-copy .btn{
    width:100%;
  }

  .buyer-benefit-list article{
    grid-template-columns:1fr;
  }

  .offer-decision-grid article{
    min-height:320px;
  }
}


/* v38: Contact, Request Quote and Thank You conversion refinement */
.contact-hero-v38,
.quote-hero-v38,
.thankyou-hero-v38{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:190px 0 108px;
  background:
    radial-gradient(circle at 12% 18%,rgba(18,106,122,.34),transparent 26%),
    radial-gradient(circle at 84% 18%,rgba(178,42,38,.28),transparent 24%),
    linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.quote-hero-v38{
  background:
    radial-gradient(circle at 12% 18%,rgba(18,106,122,.30),transparent 26%),
    radial-gradient(circle at 84% 18%,rgba(178,42,38,.30),transparent 24%),
    linear-gradient(135deg,#071426 0%,#172d46 48%,#7f1f35 100%);
}

.thankyou-hero-v38{
  background:
    radial-gradient(circle at 18% 20%,rgba(18,106,122,.32),transparent 26%),
    linear-gradient(135deg,#071426 0%,#126a7a 52%,#243c5a 100%);
}

.contact-hero-pattern{
  position:absolute;
  inset:0;
  opacity:.14;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 7px,transparent 8px),
    repeating-linear-gradient(45deg,transparent 0 78px,rgba(255,255,255,.24) 80px 90px,transparent 92px 160px);
}

.contact-hero-grid-v38,
.quote-hero-grid-v38,
.thankyou-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr .82fr;
  gap:64px;
  align-items:center;
}

.contact-hero-grid-v38 h1,
.quote-hero-grid-v38 h1,
.thankyou-grid h1{
  font-size:clamp(46px,5.3vw,86px);
  line-height:.96;
  letter-spacing:-.015em;
  margin:24px 0 20px;
  font-weight:900;
}

.contact-hero-grid-v38 p,
.quote-hero-grid-v38 p,
.thankyou-grid p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.7;
  max-width:820px;
}

.contact-response-card,
.thankyou-card{
  min-height:360px;
  border-radius:38px;
  padding:34px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 34px 90px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.contact-response-card::before,
.thankyou-card::before{
  content:"";
  position:absolute;
  right:-72px;
  top:-72px;
  width:220px;
  height:220px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
}

.contact-response-card small,
.thankyou-card small{
  color:rgba(255,255,255,.70);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:900;
}

.contact-response-card strong,
.thankyou-card strong{
  color:#fff;
  font-size:clamp(36px,3.7vw,62px);
  line-height:1;
  letter-spacing:-.015em;
  font-weight:900;
  margin:14px 0;
}

.contact-response-card span,
.thankyou-card span{
  color:rgba(255,255,255,.80);
  line-height:1.55;
  font-weight:800;
}

.contact-channels-v38,
.contact-form-section-v38,
.quote-form-section-v38,
.thankyou-next-section{
  background:#fff;
}

.contact-channel-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}

.contact-channel-grid a{
  min-height:230px;
  border-radius:30px;
  padding:26px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.contact-channel-grid a:nth-child(2){background:linear-gradient(135deg,#0b5f4c,#126a7a);}
.contact-channel-grid a:nth-child(3){background:linear-gradient(135deg,#7f1f35,var(--red));}
.contact-channel-grid a:nth-child(4){background:linear-gradient(135deg,#14213d,#364b6d);}

.contact-channel-grid span{
  position:absolute;
  top:24px;
  left:26px;
  text-transform:uppercase;
  letter-spacing:.09em;
  color:rgba(255,255,255,.70);
  font-size:12px;
  font-weight:900;
}

.contact-channel-grid strong{
  font-size:26px;
  line-height:1.05;
  font-weight:900;
  margin-bottom:10px;
}

.contact-channel-grid em{
  color:rgba(255,255,255,.74);
  font-style:normal;
  font-weight:800;
}

.contact-need-section,
.quote-trust-section,
.thankyou-explore-section{
  background:var(--cream);
}

.contact-need-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.contact-need-grid button{
  min-height:220px;
  border:0;
  text-align:left;
  border-radius:30px;
  padding:26px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  cursor:pointer;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  transition:.25s ease;
}

.contact-need-grid button:nth-child(2),
.contact-need-grid button:nth-child(5){background:linear-gradient(135deg,#071426,#126a7a);}
.contact-need-grid button:nth-child(3),
.contact-need-grid button:nth-child(6){background:linear-gradient(135deg,#7f1f35,var(--red));}

.contact-need-grid button:hover{
  transform:translateY(-5px);
}

.contact-need-grid strong{
  font-size:28px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:10px;
}

.contact-need-grid span{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:700;
}

.contact-form-shell,
.quote-form-shell{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:30px;
  align-items:start;
}

.contact-form-copy,
.quote-assist-panel{
  position:sticky;
  top:135px;
  border-radius:34px;
  padding:34px;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.12),transparent 28%),
    var(--cream);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.contact-form-copy h2,
.quote-assist-panel h2{
  font-size:clamp(34px,3.8vw,62px);
  line-height:1;
  letter-spacing:-.015em;
  margin:22px 0 14px;
  font-weight:900;
}

.contact-form-copy p,
.quote-assist-panel p{
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
}

.contact-trust-list,
.quote-assist-points{
  display:grid;
  gap:10px;
  margin-top:24px;
}

.contact-trust-list span,
.quote-assist-points span{
  padding:14px 16px;
  border-radius:18px;
  background:#fff;
  color:var(--navy);
  font-weight:900;
  border:1px solid rgba(8,20,38,.06);
}

.smart-enquiry-form{
  border-radius:34px;
  box-shadow:var(--shadow);
}

.quote-steps-preview{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.quote-steps-preview article{
  min-height:165px;
  border-radius:28px;
  padding:24px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  backdrop-filter:blur(14px);
}

.quote-steps-preview b{
  font-size:42px;
  line-height:1;
  font-weight:900;
  color:#ffe45c;
  margin-bottom:12px;
}

.quote-steps-preview span{
  font-weight:900;
  color:rgba(255,255,255,.82);
}

.quote-form-step{
  padding:22px;
  border-radius:26px;
  background:#fffaf2;
  border:1px solid rgba(8,20,38,.06);
  margin-bottom:18px;
}

.quote-form-step > span{
  display:inline-flex;
  padding:9px 12px;
  border-radius:999px;
  background:#f6e7e7;
  color:var(--red);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  font-weight:900;
  margin-bottom:12px;
}

.quote-form-step h3{
  font-size:28px;
  line-height:1.04;
  font-weight:900;
  margin:0 0 18px;
}

.contact-after-grid,
.quote-trust-grid,
.thankyou-next-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.contact-after-grid article,
.quote-trust-grid article,
.thankyou-next-grid article{
  min-height:240px;
  border-radius:30px;
  padding:26px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),#243c5a);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.contact-after-grid article:nth-child(2),
.quote-trust-grid article:nth-child(2),
.thankyou-next-grid article:nth-child(2){background:linear-gradient(135deg,#071426,#126a7a);}
.contact-after-grid article:nth-child(3),
.quote-trust-grid article:nth-child(3),
.thankyou-next-grid article:nth-child(3){background:linear-gradient(135deg,#7f1f35,var(--red));}

.contact-after-grid b,
.thankyou-next-grid b{
  position:absolute;
  top:24px;
  left:24px;
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  font-weight:900;
}

.contact-after-grid strong,
.quote-trust-grid strong,
.thankyou-next-grid strong{
  font-size:27px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:12px;
}

.contact-after-grid span,
.quote-trust-grid span,
.thankyou-next-grid span{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:700;
}

@media(max-width:1200px){
  .contact-channel-grid,
  .contact-need-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:1000px){
  .contact-hero-grid-v38,
  .quote-hero-grid-v38,
  .thankyou-grid,
  .contact-form-shell,
  .quote-form-shell{
    grid-template-columns:1fr;
  }

  .contact-form-copy,
  .quote-assist-panel{
    position:relative;
    top:auto;
  }
}

@media(max-width:800px){
  .contact-hero-v38,
  .quote-hero-v38,
  .thankyou-hero-v38{
    padding:172px 0 82px;
  }

  .contact-hero-grid-v38 h1,
  .quote-hero-grid-v38 h1,
  .thankyou-grid h1{
    font-size:42px;
    line-height:1.02;
  }

  .contact-channel-grid,
  .contact-need-grid,
  .quote-steps-preview,
  .contact-after-grid,
  .quote-trust-grid,
  .thankyou-next-grid{
    grid-template-columns:1fr;
  }

  .contact-form-copy,
  .quote-assist-panel,
  .quote-form-step{
    padding:22px;
    border-radius:26px;
  }
}


/* v39: Contact page spacing and card readability fixes */
.contact-hero-v38{
  padding:150px 0 72px !important;
}

.contact-hero-grid-v38{
  grid-template-columns:1.08fr .72fr !important;
  gap:42px !important;
}

.contact-hero-grid-v38 h1{
  font-size:clamp(40px,4.4vw,66px) !important;
  line-height:1 !important;
  max-width:980px;
}

.contact-hero-grid-v38 p{
  font-size:18px !important;
  max-width:720px !important;
}

.contact-response-card{
  min-height:260px !important;
  padding:28px !important;
  border-radius:30px !important;
}

.contact-response-card strong{
  font-size:clamp(28px,2.7vw,44px) !important;
}

/* The Reach Us section was too wide and squeezing long contacts */
.contact-channels-v38{
  padding-top:78px !important;
}

.contact-channels-v38 .section-head{
  grid-template-columns:.78fr .42fr !important;
  gap:48px !important;
  align-items:end !important;
}

.contact-channels-v38 .section-head h2{
  font-size:clamp(42px,5vw,78px) !important;
  line-height:1.02 !important;
  max-width:980px;
}

.contact-channels-v38 .section-head p{
  font-size:19px !important;
  line-height:1.65 !important;
  max-width:460px;
}

.contact-channel-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:22px !important;
}

.contact-channel-grid a{
  min-height:250px !important;
  padding:30px !important;
  border-radius:32px !important;
}

.contact-channel-grid strong{
  font-size:clamp(28px,2.6vw,42px) !important;
  line-height:1.05 !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
  max-width:100%;
}

.contact-channel-grid em{
  font-size:18px !important;
  line-height:1.35 !important;
}

/* Improve the rest of the contact page spacing after the card fix */
.contact-need-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

@media(max-width:1100px){
  .contact-hero-grid-v38,
  .contact-channels-v38 .section-head{
    grid-template-columns:1fr !important;
  }

  .contact-channel-grid,
  .contact-need-grid{
    grid-template-columns:1fr 1fr !important;
  }
}

@media(max-width:700px){
  .contact-hero-v38{
    padding:132px 0 58px !important;
  }

  .contact-hero-grid-v38 h1,
  .contact-channels-v38 .section-head h2{
    font-size:38px !important;
    line-height:1.03 !important;
  }

  .contact-channel-grid,
  .contact-need-grid{
    grid-template-columns:1fr !important;
  }

  .contact-channel-grid a{
    min-height:220px !important;
    padding:24px !important;
  }

  .contact-channel-grid strong{
    font-size:30px !important;
  }
}


/* v40: Shorter hero sections for detail pages / non-main pages */
.solution-hero,
.product-hero-detail,
.alt-product-hero,
.showcase-product-hero,
.industry-detail-hero,
.case-detail-hero{
  padding-top:148px !important;
  padding-bottom:72px !important;
  min-height:auto !important;
}

.solution-hero-copy h1,
.product-hero-copy h1,
.alt-product-copy h1,
.showcase-product-copy h1,
.industry-detail-copy h1,
.case-detail-copy h1{
  font-size:clamp(40px,4.6vw,70px) !important;
  line-height:1 !important;
}

.solution-hero-copy p,
.product-hero-copy p,
.alt-product-copy p,
.showcase-product-copy p,
.industry-detail-copy p,
.case-detail-copy p{
  font-size:18px !important;
  line-height:1.62 !important;
}

.product-hero-grid,
.alt-product-grid,
.showcase-product-grid,
.industry-detail-grid,
.case-detail-grid{
  gap:42px !important;
}

/* Keep true landing pages and major hub pages more expressive */
.home-hero,
.offers-hub-hero,
.offer-detail-hero,
.portfolio-hero-v2,
.industries-hub-hero,
.contact-hero-v38,
.quote-hero-v38{
  min-height:unset;
}

/* Compact visual panels on detail heroes */
.product-showcase,
.showcase-dashboard,
.alt-product-orbit,
.industry-metric-card,
.case-metric-panel{
  transform:none;
}

.alt-product-orbit{
  min-height:360px !important;
}

.industry-metric-card,
.portfolio-hero-board,
.case-metric-panel{
  min-height:260px !important;
}

/* v40: launch/SEO polish helpers */
img{
  max-width:100%;
  height:auto;
}

@media(max-width:800px){
  .solution-hero,
  .product-hero-detail,
  .alt-product-hero,
  .showcase-product-hero,
  .industry-detail-hero,
  .case-detail-hero{
    padding-top:132px !important;
    padding-bottom:58px !important;
  }

  .solution-hero-copy h1,
  .product-hero-copy h1,
  .alt-product-copy h1,
  .showcase-product-copy h1,
  .industry-detail-copy h1,
  .case-detail-copy h1{
    font-size:38px !important;
    line-height:1.03 !important;
  }
}


/* v44: improved Solutions hub page */
.solutions-hub-hero-v44{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:160px 0 86px;
  background:
    radial-gradient(circle at 12% 18%,rgba(18,106,122,.34),transparent 26%),
    radial-gradient(circle at 84% 18%,rgba(178,42,38,.26),transparent 24%),
    linear-gradient(135deg,#071426 0%,#243c5a 50%,#126a7a 100%);
}

.solutions-hero-pattern{
  position:absolute;
  inset:0;
  opacity:.13;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 7px,transparent 8px),
    repeating-linear-gradient(45deg,transparent 0 78px,rgba(255,255,255,.24) 80px 90px,transparent 92px 160px);
}

.solutions-hero-grid-v44{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.06fr .72fr;
  gap:52px;
  align-items:center;
}

.solutions-hero-grid-v44 h1{
  font-size:clamp(44px,5vw,80px);
  line-height:.98;
  letter-spacing:-.015em;
  margin:24px 0 20px;
  font-weight:900;
}

.solutions-hero-grid-v44 p{
  color:rgba(255,255,255,.84);
  font-size:19px;
  line-height:1.68;
  max-width:780px;
}

.solutions-hero-board{
  min-height:330px;
  border-radius:38px;
  padding:34px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 34px 90px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.solutions-hero-board::before{
  content:"";
  position:absolute;
  right:-72px;
  top:-72px;
  width:220px;
  height:220px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
}

.solutions-hero-board span{
  position:absolute;
  top:30px;
  left:34px;
  right:34px;
  color:rgba(255,255,255,.70);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:12px;
  font-weight:900;
}

.solutions-hero-board strong{
  color:#fff;
  font-size:clamp(32px,3vw,50px);
  line-height:1;
  letter-spacing:-.015em;
  font-weight:900;
  margin-bottom:14px;
}

.solutions-hero-board p{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:800;
  margin:0;
}

.solution-intent-section,
.solution-includes-section{
  background:#fff;
}

.solution-path-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.solution-path-grid article{
  min-height:345px;
  padding:28px;
  border-radius:34px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
  box-shadow:0 18px 54px rgba(8,20,38,.12);
}

.solution-path-grid article:nth-child(2),
.solution-path-grid article:nth-child(5){
  background:linear-gradient(135deg,#071426,#126a7a);
}

.solution-path-grid article:nth-child(3),
.solution-path-grid article:nth-child(6){
  background:linear-gradient(135deg,#7f1f35,var(--red));
}

.solution-path-grid article::before{
  content:"";
  position:absolute;
  top:-42px;
  right:-42px;
  width:150px;
  height:150px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.20);
}

.solution-path-grid article > span{
  position:absolute;
  top:26px;
  left:28px;
  right:28px;
  color:rgba(255,255,255,.72);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  font-weight:900;
}

.solution-path-grid h3{
  font-size:34px;
  line-height:1.02;
  font-weight:900;
  margin:0 0 14px;
}

.solution-path-grid p{
  color:rgba(255,255,255,.78);
  line-height:1.58;
  font-weight:700;
  margin:0 0 22px;
}

.solution-path-grid div{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.solution-path-grid a,
.solution-path-grid button{
  display:inline-flex;
  align-items:center;
  gap:7px;
  border-radius:999px;
  padding:12px 15px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}

.solutions-list-section{
  background:
    radial-gradient(circle at 12% 18%,rgba(178,42,38,.08),transparent 26%),
    var(--cream);
}

.improved-solutions-grid .solution-card{
  background:#fff;
}

.solution-value-section{
  background:#fff;
}

.solution-value-grid{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:28px;
  align-items:stretch;
  padding:34px;
  border-radius:38px;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.11),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.solution-value-copy{
  padding:34px;
  border-radius:30px;
  background:var(--cream);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.solution-value-copy h2{
  font-size:clamp(34px,3.8vw,62px);
  line-height:1;
  letter-spacing:-.015em;
  margin:22px 0 14px;
  font-weight:900;
}

.solution-value-copy p{
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
  margin:0 0 24px;
}

.solution-value-copy .btn{
  width:max-content;
}

.solution-page-preview{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.solution-page-preview article{
  min-height:190px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(8,20,38,.07);
  box-shadow:0 12px 34px rgba(8,20,38,.05);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
}

.solution-page-preview b{
  position:absolute;
  top:20px;
  left:20px;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:18px;
  color:#fff;
  background:linear-gradient(135deg,var(--red),var(--navy));
  font-weight:900;
}

.solution-page-preview strong{
  color:var(--navy);
  font-size:24px;
  line-height:1.05;
  font-weight:900;
  margin-bottom:8px;
}

.solution-page-preview span{
  color:var(--muted);
  line-height:1.55;
  font-weight:700;
}

.solution-includes-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.solution-includes-grid article{
  min-height:220px;
  border-radius:30px;
  padding:26px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 44px rgba(8,20,38,.06);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.solution-includes-grid article::before{
  content:"";
  position:absolute;
  top:24px;
  left:26px;
  width:54px;
  height:54px;
  border-radius:20px;
  background:linear-gradient(135deg,var(--teal),var(--red));
}

.solution-includes-grid strong{
  color:var(--navy);
  font-size:28px;
  line-height:1.04;
  font-weight:900;
  margin-bottom:10px;
}

.solution-includes-grid span{
  color:var(--muted);
  line-height:1.6;
  font-weight:700;
}

.solution-industry-fit{
  background:var(--cream);
}

.solution-industry-card{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:30px;
  align-items:center;
  padding:34px;
  border-radius:38px;
  background:
    radial-gradient(circle at 88% 12%,rgba(178,42,38,.10),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.solution-industry-card h2{
  font-size:clamp(34px,3.8vw,62px);
  line-height:1;
  letter-spacing:-.015em;
  margin:22px 0 14px;
  font-weight:900;
}

.solution-industry-card p{
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
}

.industry-chip-cloud{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:flex-end;
}

.industry-chip-cloud span{
  display:inline-flex;
  padding:14px 17px;
  border-radius:999px;
  background:#fff7f0;
  border:1px solid rgba(178,42,38,.13);
  color:var(--navy);
  font-weight:900;
  box-shadow:0 8px 24px rgba(8,20,38,.04);
}

@media(max-width:1100px){
  .solutions-hero-grid-v44,
  .solution-value-grid,
  .solution-industry-card{
    grid-template-columns:1fr;
  }

  .solution-path-grid,
  .solution-includes-grid{
    grid-template-columns:1fr 1fr;
  }

  .industry-chip-cloud{
    justify-content:flex-start;
  }
}

@media(max-width:760px){
  .solutions-hub-hero-v44{
    padding:136px 0 66px;
  }

  .solutions-hero-grid-v44 h1{
    font-size:40px;
    line-height:1.03;
  }

  .solutions-hero-board{
    min-height:260px;
    border-radius:30px;
    padding:28px;
  }

  .solution-path-grid,
  .solution-page-preview,
  .solution-includes-grid{
    grid-template-columns:1fr;
  }

  .solution-value-grid,
  .solution-industry-card{
    padding:20px;
    border-radius:28px;
  }

  .solution-value-copy{
    padding:24px;
    border-radius:24px;
  }

  .solution-value-copy .btn{
    width:100%;
  }
}


/* v45: buyer-facing solution value section + visible implementation icons */
.solution-page-preview.buyer-preview article{
  min-height:210px;
}

.solution-page-preview.buyer-preview strong{
  max-width:92%;
}

.solution-includes-grid article::before{
  display:none !important;
}

.solution-include-icon{
  position:absolute;
  top:24px;
  left:26px;
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:
    radial-gradient(circle at 32% 28%,rgba(255,255,255,.28),transparent 38%),
    linear-gradient(135deg,var(--teal),var(--red));
  box-shadow:0 14px 34px rgba(178,42,38,.16);
  font-size:26px;
  font-style:normal;
  line-height:1;
}

.solution-includes-grid article{
  padding-top:104px !important;
  justify-content:flex-start !important;
}

.solution-includes-grid strong{
  margin-top:auto;
}

@media(max-width:760px){
  .solution-page-preview.buyer-preview article{
    min-height:190px;
  }
}


/* v47: Reduce Solutions page hero height */
.solutions-hub-hero-v44{
  padding-top:136px !important;
  padding-bottom:58px !important;
}

.solutions-hero-grid-v44{
  gap:36px !important;
}

.solutions-hero-grid-v44 h1{
  font-size:clamp(38px,4.2vw,64px) !important;
  line-height:1.02 !important;
  max-width:980px;
}

.solutions-hero-grid-v44 p{
  font-size:18px !important;
  line-height:1.58 !important;
  max-width:720px;
}

.solutions-hero-board{
  min-height:240px !important;
  padding:28px !important;
  border-radius:30px !important;
}

.solutions-hero-board strong{
  font-size:clamp(28px,2.6vw,42px) !important;
}

.solutions-hero-board p{
  font-size:16px !important;
}

@media(max-width:760px){
  .solutions-hub-hero-v44{
    padding-top:122px !important;
    padding-bottom:48px !important;
  }

  .solutions-hero-grid-v44 h1{
    font-size:36px !important;
  }

  .solutions-hero-board{
    min-height:220px !important;
  }
}


/* v48: Products hub conversion upgrade */
.products-hub-hero-v48{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:142px 0 64px;
  background:
    radial-gradient(circle at 14% 18%,rgba(18,106,122,.34),transparent 26%),
    radial-gradient(circle at 82% 18%,rgba(178,42,38,.28),transparent 24%),
    linear-gradient(135deg,#071426 0%,#243c5a 48%,#7f1f35 100%);
}

.products-hero-pattern{
  position:absolute;
  inset:0;
  opacity:.13;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 7px,transparent 8px),
    repeating-linear-gradient(45deg,transparent 0 78px,rgba(255,255,255,.24) 80px 90px,transparent 92px 160px);
}

.products-hero-grid-v48{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr;
  gap:42px;
  align-items:center;
}

.products-hero-grid-v48 h1{
  font-size:clamp(40px,4.8vw,74px);
  line-height:1;
  letter-spacing:-.015em;
  margin:24px 0 18px;
  font-weight:900;
}

.products-hero-grid-v48 p{
  color:rgba(255,255,255,.84);
  font-size:18px;
  line-height:1.65;
  max-width:780px;
}

.products-hero-board{
  min-height:270px;
  border-radius:34px;
  padding:32px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 30px 80px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.products-hero-board::before{
  content:"";
  position:absolute;
  top:-72px;
  right:-72px;
  width:210px;
  height:210px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
}

.products-hero-board span{
  position:absolute;
  top:28px;
  left:32px;
  right:32px;
  color:rgba(255,255,255,.70);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:12px;
  font-weight:900;
}

.products-hero-board strong{
  color:#fff;
  font-size:clamp(30px,3vw,48px);
  line-height:1;
  font-weight:900;
  margin-bottom:14px;
}

.products-hero-board p{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:800;
  margin:0;
}

.product-stats-section-v48{
  background:#fff;
  padding:42px 0;
}

.product-stat-grid-v48{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.product-stat-grid-v48 article{
  border-radius:28px;
  padding:28px;
  background:var(--cream);
  border:1px solid var(--line);
  box-shadow:0 10px 34px rgba(8,20,38,.05);
}

.product-stat-grid-v48 strong{
  display:block;
  color:var(--red);
  font-size:46px;
  line-height:1;
  font-weight:900;
  margin-bottom:8px;
}

.product-stat-grid-v48 span{
  color:var(--navy);
  font-weight:900;
}

.product-buyer-section-v48{
  background:var(--cream);
}

.product-buyer-card{
  display:grid;
  grid-template-columns:1fr auto;
  gap:28px;
  align-items:center;
  border-radius:36px;
  padding:34px;
  background:
    radial-gradient(circle at 88% 12%,rgba(18,106,122,.10),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.product-buyer-card h2{
  font-size:clamp(34px,3.8vw,62px);
  line-height:1;
  letter-spacing:-.015em;
  margin:20px 0 12px;
  font-weight:900;
}

.product-buyer-card p{
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
  max-width:900px;
}

.product-buyer-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:flex-end;
}

.product-catalog-section-v48{
  background:#fff;
}

.product-group-block{
  margin-top:34px;
}

.product-group-block + .product-group-block{
  margin-top:58px;
}

.product-group-head{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:26px;
  align-items:end;
  margin-bottom:18px;
  padding:24px;
  border-radius:28px;
  background:var(--cream);
  border:1px solid var(--line);
}

.product-group-head h3{
  font-size:clamp(30px,3.2vw,48px);
  line-height:1;
  font-weight:900;
  margin:16px 0 0;
}

.product-group-head p{
  color:var(--muted);
  line-height:1.65;
  font-weight:700;
  margin:0;
}

.product-showcase-grid-v48{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.product-showcase-card-v48{
  min-height:460px;
  padding:28px;
  border-radius:34px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 18px 54px rgba(8,20,38,.08);
  display:flex;
  flex-direction:column;
  position:relative;
  overflow:hidden;
}

.product-showcase-card-v48::before{
  content:"";
  position:absolute;
  right:-48px;
  top:-48px;
  width:160px;
  height:160px;
  border-radius:50%;
  background:linear-gradient(135deg,rgba(18,106,122,.10),rgba(178,42,38,.12));
}

.product-status-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  position:relative;
  z-index:2;
  margin-bottom:34px;
}

.product-status-row span{
  display:inline-flex;
  padding:9px 12px;
  border-radius:999px;
  background:#f7eeee;
  color:var(--red);
  text-transform:uppercase;
  letter-spacing:.07em;
  font-size:11px;
  font-weight:900;
}

.product-status-row b{
  display:inline-flex;
  padding:9px 12px;
  border-radius:999px;
  background:#ecf7f9;
  color:var(--teal);
  text-transform:uppercase;
  letter-spacing:.07em;
  font-size:11px;
  font-weight:900;
  text-align:right;
}

.product-showcase-card-v48 h2{
  color:var(--navy);
  font-size:34px;
  line-height:1.02;
  font-weight:900;
  margin:0 0 14px;
  position:relative;
  z-index:2;
}

.product-showcase-card-v48 p{
  color:var(--muted);
  line-height:1.62;
  font-weight:700;
  margin:0 0 22px;
  position:relative;
  z-index:2;
}

.product-audience{
  margin-top:auto;
  padding:18px;
  border-radius:22px;
  background:var(--cream);
  border:1px solid rgba(8,20,38,.06);
  position:relative;
  z-index:2;
}

.product-audience small{
  display:block;
  color:var(--red);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:11px;
  font-weight:900;
  margin-bottom:8px;
}

.product-audience strong{
  color:var(--navy);
  line-height:1.45;
  font-weight:900;
}

.product-showcase-card-v48 .product-actions{
  margin-top:16px;
  position:relative;
  z-index:2;
}

.product-opportunity-section-v48{
  background:
    radial-gradient(circle at 12% 18%,rgba(178,42,38,.08),transparent 26%),
    var(--cream);
}

.product-opportunity-grid{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:28px;
  align-items:stretch;
  padding:34px;
  border-radius:38px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.product-opportunity-copy{
  padding:34px;
  border-radius:30px;
  background:var(--cream);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.product-opportunity-copy h2{
  font-size:clamp(34px,3.8vw,62px);
  line-height:1;
  letter-spacing:-.015em;
  margin:22px 0 14px;
  font-weight:900;
}

.product-opportunity-copy p{
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
}

.product-work-options{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.product-work-options article{
  min-height:205px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(8,20,38,.07);
  box-shadow:0 12px 34px rgba(8,20,38,.05);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
}

.product-work-options b{
  position:absolute;
  top:20px;
  left:20px;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:18px;
  color:#fff;
  background:linear-gradient(135deg,var(--red),var(--navy));
  font-weight:900;
}

.product-work-options strong{
  color:var(--navy);
  font-size:25px;
  line-height:1.05;
  font-weight:900;
  margin-bottom:8px;
}

.product-work-options span{
  color:var(--muted);
  line-height:1.55;
  font-weight:700;
}

/* v48: product detail client conversion strip */
.product-build-similar-section-v48{
  background:#fff;
}

.product-build-similar-card{
  display:grid;
  grid-template-columns:1fr .62fr auto;
  gap:24px;
  align-items:center;
  padding:32px;
  border-radius:36px;
  background:
    radial-gradient(circle at 88% 12%,rgba(178,42,38,.10),transparent 28%),
    var(--cream);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.product-build-similar-card h2{
  font-size:clamp(32px,3.2vw,52px);
  line-height:1;
  letter-spacing:-.015em;
  margin:20px 0 12px;
  font-weight:900;
}

.product-build-similar-card p{
  color:var(--muted);
  font-size:17px;
  line-height:1.68;
  margin:0;
}

.product-build-points{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.product-build-points span{
  padding:13px 14px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(8,20,38,.06);
  color:var(--navy);
  font-weight:900;
  white-space:nowrap;
}

@media(max-width:1180px){
  .product-showcase-grid-v48{
    grid-template-columns:1fr 1fr;
  }

  .product-build-similar-card,
  .product-opportunity-grid,
  .products-hero-grid-v48,
  .product-buyer-card{
    grid-template-columns:1fr;
  }

  .product-buyer-actions{
    justify-content:flex-start;
  }
}

@media(max-width:800px){
  .products-hub-hero-v48{
    padding:128px 0 56px;
  }

  .products-hero-grid-v48 h1{
    font-size:38px;
    line-height:1.03;
  }

  .product-stat-grid-v48,
  .product-showcase-grid-v48,
  .product-work-options,
  .product-group-head,
  .product-build-points{
    grid-template-columns:1fr;
  }

  .product-buyer-card,
  .product-opportunity-grid,
  .product-build-similar-card{
    padding:22px;
    border-radius:28px;
  }

  .product-showcase-card-v48{
    min-height:auto;
  }

  .product-build-points span{
    white-space:normal;
  }

  .product-build-similar-card .btn{
    width:100%;
  }
}


/* v49: Services page conversion upgrade */
.services-hub-hero-v49{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:136px 0 58px;
  background:
    radial-gradient(circle at 14% 18%,rgba(18,106,122,.34),transparent 26%),
    radial-gradient(circle at 84% 18%,rgba(178,42,38,.26),transparent 24%),
    linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.services-hero-pattern{
  position:absolute;
  inset:0;
  opacity:.13;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 7px,transparent 8px),
    repeating-linear-gradient(45deg,transparent 0 78px,rgba(255,255,255,.24) 80px 90px,transparent 92px 160px);
}

.services-hero-grid-v49{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.08fr .68fr;
  gap:38px;
  align-items:center;
}

.services-hero-grid-v49 h1{
  font-size:clamp(38px,4.4vw,66px);
  line-height:1.01;
  letter-spacing:-.015em;
  margin:24px 0 18px;
  font-weight:900;
}

.services-hero-grid-v49 p{
  color:rgba(255,255,255,.84);
  font-size:18px;
  line-height:1.62;
  max-width:760px;
}

.services-hero-board{
  min-height:245px;
  border-radius:32px;
  padding:30px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 30px 80px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.services-hero-board::before{
  content:"";
  position:absolute;
  right:-72px;
  top:-72px;
  width:210px;
  height:210px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
}

.services-hero-board span{
  position:absolute;
  top:28px;
  left:30px;
  right:30px;
  color:rgba(255,255,255,.70);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:12px;
  font-weight:900;
}

.services-hero-board strong{
  color:#fff;
  font-size:clamp(28px,2.7vw,44px);
  line-height:1;
  font-weight:900;
  margin-bottom:12px;
}

.services-hero-board p{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:800;
  margin:0;
}

.service-problem-section-v49,
.service-benefit-section-v49,
.unsure-service-section-v49{
  background:#fff;
}

.service-problem-grid-v49{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.service-problem-grid-v49 article{
  min-height:300px;
  padding:28px;
  border-radius:34px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  box-shadow:0 18px 54px rgba(8,20,38,.12);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.service-problem-grid-v49 article:nth-child(2),
.service-problem-grid-v49 article:nth-child(5){
  background:linear-gradient(135deg,#071426,#126a7a);
}

.service-problem-grid-v49 article:nth-child(3),
.service-problem-grid-v49 article:nth-child(6){
  background:linear-gradient(135deg,#7f1f35,var(--red));
}

.service-problem-grid-v49 article::before{
  content:"";
  position:absolute;
  top:-42px;
  right:-42px;
  width:150px;
  height:150px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.20);
}

.service-problem-grid-v49 article > span{
  position:absolute;
  top:26px;
  left:28px;
  right:28px;
  color:rgba(255,255,255,.76);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  font-weight:900;
}

.service-problem-grid-v49 p{
  color:rgba(255,255,255,.84);
  font-size:22px;
  line-height:1.25;
  font-weight:900;
  margin:0 0 22px;
}

.service-problem-grid-v49 button{
  width:max-content;
  display:inline-flex;
  align-items:center;
  gap:7px;
  border-radius:999px;
  padding:12px 15px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}

.service-groups-section-v49{
  background:
    radial-gradient(circle at 12% 18%,rgba(178,42,38,.08),transparent 26%),
    var(--cream);
}

.service-group-block-v49{
  margin-top:34px;
}

.service-group-block-v49 + .service-group-block-v49{
  margin-top:58px;
}

.service-group-head-v49{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:26px;
  align-items:end;
  margin-bottom:18px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 12px 38px rgba(8,20,38,.05);
}

.service-group-head-v49 h3{
  font-size:clamp(30px,3.2vw,48px);
  line-height:1;
  font-weight:900;
  margin:16px 0 0;
}

.service-group-head-v49 p{
  color:var(--muted);
  line-height:1.65;
  font-weight:700;
  margin:0;
}

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

.service-card-v49{
  min-height:420px;
  padding:28px;
  border-radius:34px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 18px 54px rgba(8,20,38,.08);
  display:flex;
  flex-direction:column;
  position:relative;
  overflow:hidden;
}

.service-card-v49::before{
  content:"";
  position:absolute;
  right:-48px;
  top:-48px;
  width:160px;
  height:160px;
  border-radius:50%;
  background:linear-gradient(135deg,rgba(18,106,122,.10),rgba(178,42,38,.12));
}

.service-card-top-v49{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:34px;
  position:relative;
  z-index:2;
}

.service-card-top-v49 em{
  width:58px;
  height:58px;
  border-radius:20px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,var(--red),var(--navy));
  font-size:26px;
  font-style:normal;
  font-weight:900;
}

.service-card-top-v49 span{
  display:inline-flex;
  padding:9px 12px;
  border-radius:999px;
  background:#ecf7f9;
  color:var(--teal);
  text-transform:uppercase;
  letter-spacing:.07em;
  font-size:11px;
  font-weight:900;
  text-align:right;
}

.service-card-v49 h2{
  color:var(--navy);
  font-size:32px;
  line-height:1.02;
  font-weight:900;
  margin:0 0 14px;
  position:relative;
  z-index:2;
}

.service-card-v49 p{
  color:var(--muted);
  line-height:1.62;
  font-weight:700;
  margin:0 0 20px;
  position:relative;
  z-index:2;
}

.service-card-v49 .keyword-row{
  margin-top:auto;
  position:relative;
  z-index:2;
}

.service-card-v49 .keyword-row b{
  display:inline-flex;
  padding:9px 11px;
  border-radius:999px;
  background:#fff7f0;
  color:var(--navy);
  border:1px solid rgba(178,42,38,.12);
  font-size:12px;
  font-weight:900;
  margin:4px;
}

.service-card-actions-v49{
  margin-top:18px;
  position:relative;
  z-index:2;
}

.service-card-actions-v49 button{
  width:100%;
  border:0;
  border-radius:999px;
  padding:13px 16px;
  cursor:pointer;
  color:#fff;
  background:linear-gradient(135deg,var(--navy),var(--teal));
  font-weight:900;
}

.service-benefit-grid-v49{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:28px;
  align-items:stretch;
  padding:34px;
  border-radius:38px;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.11),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.service-benefit-copy-v49{
  padding:34px;
  border-radius:30px;
  background:var(--cream);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.service-benefit-copy-v49 h2{
  font-size:clamp(34px,3.8vw,62px);
  line-height:1;
  letter-spacing:-.015em;
  margin:22px 0 14px;
  font-weight:900;
}

.service-benefit-copy-v49 p{
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
  margin:0 0 24px;
}

.service-benefit-copy-v49 .btn{
  width:max-content;
}

.service-benefit-list-v49{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.service-benefit-list-v49 article{
  min-height:205px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(8,20,38,.07);
  box-shadow:0 12px 34px rgba(8,20,38,.05);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
}

.service-benefit-list-v49 article::before{
  content:"✓";
  position:absolute;
  top:20px;
  left:20px;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:18px;
  color:#fff;
  background:linear-gradient(135deg,var(--red),var(--navy));
  font-weight:900;
}

.service-benefit-list-v49 strong{
  color:var(--navy);
  font-size:25px;
  line-height:1.05;
  font-weight:900;
  margin-bottom:8px;
}

.service-benefit-list-v49 span{
  color:var(--muted);
  line-height:1.55;
  font-weight:700;
}

.service-process-section-v49{
  background:var(--cream);
}

.service-process-grid-v49{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.service-process-grid-v49 article{
  min-height:260px;
  padding:26px;
  border-radius:30px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),#243c5a);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.service-process-grid-v49 article:nth-child(2){background:linear-gradient(135deg,#071426,#126a7a);}
.service-process-grid-v49 article:nth-child(3){background:linear-gradient(135deg,#7f1f35,var(--red));}
.service-process-grid-v49 article:nth-child(4){background:linear-gradient(135deg,#13243c,#5b6f8d);}

.service-process-grid-v49 b{
  position:absolute;
  top:24px;
  left:24px;
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  font-weight:900;
}

.service-process-grid-v49 strong{
  font-size:27px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:12px;
}

.service-process-grid-v49 span{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:700;
}

.unsure-service-card-v49{
  display:grid;
  grid-template-columns:1fr auto;
  gap:28px;
  align-items:center;
  border-radius:36px;
  padding:34px;
  background:
    radial-gradient(circle at 88% 12%,rgba(178,42,38,.10),transparent 28%),
    var(--cream);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.unsure-service-card-v49 h2{
  font-size:clamp(34px,3.8vw,62px);
  line-height:1;
  letter-spacing:-.015em;
  margin:20px 0 12px;
  font-weight:900;
}

.unsure-service-card-v49 p{
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
  max-width:900px;
}

.unsure-service-actions-v49{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:flex-end;
}

@media(max-width:1180px){
  .services-hero-grid-v49,
  .service-benefit-grid-v49,
  .unsure-service-card-v49{
    grid-template-columns:1fr;
  }

  .service-card-grid-v49,
  .service-problem-grid-v49{
    grid-template-columns:1fr 1fr;
  }

  .service-process-grid-v49{
    grid-template-columns:1fr 1fr;
  }

  .unsure-service-actions-v49{
    justify-content:flex-start;
  }
}

@media(max-width:800px){
  .services-hub-hero-v49{
    padding:122px 0 48px;
  }

  .services-hero-grid-v49 h1{
    font-size:36px;
    line-height:1.03;
  }

  .service-card-grid-v49,
  .service-problem-grid-v49,
  .service-process-grid-v49,
  .service-benefit-list-v49,
  .service-group-head-v49{
    grid-template-columns:1fr;
  }

  .service-benefit-grid-v49,
  .unsure-service-card-v49{
    padding:22px;
    border-radius:28px;
  }

  .service-benefit-copy-v49{
    padding:24px;
    border-radius:24px;
  }

  .service-benefit-copy-v49 .btn,
  .unsure-service-actions-v49 .btn,
  .unsure-service-actions-v49 a{
    width:100%;
  }

  .service-card-v49{
    min-height:auto;
  }
}


/* v50: Individual Service Detail Pages */
.service-detail-hero-v50{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:134px 0 58px;
  background:
    radial-gradient(circle at 14% 18%,rgba(18,106,122,.34),transparent 26%),
    radial-gradient(circle at 84% 18%,rgba(178,42,38,.26),transparent 24%),
    linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.service-detail-pattern-v50{
  position:absolute;
  inset:0;
  opacity:.13;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 7px,transparent 8px),
    repeating-linear-gradient(45deg,transparent 0 78px,rgba(255,255,255,.24) 80px 90px,transparent 92px 160px);
}

.service-detail-grid-v50{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.08fr .68fr;
  gap:38px;
  align-items:center;
}

.service-detail-grid-v50 h1{
  font-size:clamp(40px,4.6vw,70px);
  line-height:1.01;
  letter-spacing:-.015em;
  margin:24px 0 18px;
  font-weight:900;
}

.service-detail-grid-v50 p{
  color:rgba(255,255,255,.84);
  font-size:18px;
  line-height:1.62;
  max-width:780px;
}

.service-detail-board-v50{
  min-height:245px;
  border-radius:32px;
  padding:30px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 30px 80px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.service-detail-board-v50::before{
  content:"";
  position:absolute;
  right:-72px;
  top:-72px;
  width:210px;
  height:210px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
}

.service-detail-board-v50 span{
  position:absolute;
  top:28px;
  left:30px;
  right:30px;
  color:rgba(255,255,255,.70);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:12px;
  font-weight:900;
}

.service-detail-board-v50 strong{
  color:#fff;
  font-size:clamp(28px,2.7vw,44px);
  line-height:1;
  font-weight:900;
  margin-bottom:12px;
}

.service-detail-board-v50 p{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:800;
  margin:0;
}

.service-fit-section-v50,
.service-tools-section-v50,
.service-benefits-detail-v50{
  background:#fff;
}

.service-fit-grid-v50,
.service-tools-grid-v50,
.service-faq-grid-v50{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:28px;
  align-items:stretch;
}

.service-fit-copy-v50,
.service-tools-copy-v50{
  padding:34px;
  border-radius:34px;
  background:var(--cream);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.service-fit-copy-v50 h2,
.service-tools-copy-v50 h2,
.service-faq-grid-v50 h2{
  font-size:clamp(34px,3.6vw,58px);
  line-height:1;
  letter-spacing:-.015em;
  margin:20px 0 12px;
  font-weight:900;
}

.service-fit-copy-v50 p,
.service-tools-copy-v50 p{
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
}

.service-fit-list-v50{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.service-fit-list-v50 article{
  min-height:160px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(8,20,38,.07);
  box-shadow:0 12px 34px rgba(8,20,38,.05);
  display:flex;
  gap:14px;
  align-items:flex-end;
}

.service-fit-list-v50 span{
  width:44px;
  height:44px;
  flex:0 0 44px;
  display:grid;
  place-items:center;
  border-radius:16px;
  color:#fff;
  background:linear-gradient(135deg,var(--red),var(--navy));
  font-weight:900;
}

.service-fit-list-v50 strong{
  color:var(--navy);
  font-size:21px;
  line-height:1.16;
  font-weight:900;
}

.service-included-section-v50,
.service-stack-section-v50,
.service-faq-section-v50{
  background:var(--cream);
}

.service-included-grid-v50{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.service-included-grid-v50 article{
  min-height:210px;
  padding:24px;
  border-radius:28px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),#243c5a);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.service-included-grid-v50 article:nth-child(2n){background:linear-gradient(135deg,#071426,#126a7a);}
.service-included-grid-v50 article:nth-child(3n){background:linear-gradient(135deg,#7f1f35,var(--red));}

.service-included-grid-v50 b{
  position:absolute;
  top:22px;
  left:22px;
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  font-weight:900;
}

.service-included-grid-v50 strong{
  font-size:21px;
  line-height:1.13;
  font-weight:900;
}

.service-tool-cloud-v50{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-content:center;
  padding:28px;
  border-radius:34px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.service-tool-cloud-v50 span{
  display:inline-flex;
  padding:14px 17px;
  border-radius:999px;
  background:#fff7f0;
  border:1px solid rgba(178,42,38,.13);
  color:var(--navy);
  font-weight:900;
  box-shadow:0 8px 24px rgba(8,20,38,.04);
}

.service-stack-grid-v50{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.service-stack-grid-v50 article{
  padding:30px;
  border-radius:34px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 44px rgba(8,20,38,.06);
}

.service-stack-grid-v50 h3{
  color:var(--navy);
  font-size:32px;
  line-height:1;
  font-weight:900;
  margin:0 0 22px;
}

.service-stack-grid-v50 div{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.service-stack-grid-v50 span{
  display:inline-flex;
  padding:12px 14px;
  border-radius:999px;
  background:var(--cream);
  color:var(--navy);
  border:1px solid rgba(8,20,38,.06);
  font-weight:900;
}

.service-benefit-cards-v50{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.service-benefit-cards-v50 article{
  min-height:190px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 44px rgba(8,20,38,.06);
  display:flex;
  align-items:flex-end;
  position:relative;
  overflow:hidden;
}

.service-benefit-cards-v50 article::before{
  content:"✓";
  position:absolute;
  top:22px;
  left:22px;
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  border-radius:18px;
  color:#fff;
  background:linear-gradient(135deg,var(--teal),var(--red));
  font-weight:900;
}

.service-benefit-cards-v50 strong{
  color:var(--navy);
  font-size:22px;
  line-height:1.13;
  font-weight:900;
}

.service-faq-grid-v50 > div:first-child{
  padding:34px;
  border-radius:34px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.service-faq-list-v50{
  display:grid;
  gap:14px;
}

.service-faq-list-v50 article{
  padding:24px;
  border-radius:26px;
  background:#fff;
  border:1px solid rgba(8,20,38,.07);
  box-shadow:0 12px 34px rgba(8,20,38,.05);
}

.service-faq-list-v50 strong{
  display:block;
  color:var(--navy);
  font-size:22px;
  line-height:1.14;
  font-weight:900;
  margin-bottom:8px;
}

.service-faq-list-v50 span{
  color:var(--muted);
  line-height:1.6;
  font-weight:700;
}

/* v50: service card details link */
.service-card-actions-v49{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.service-card-actions-v49 a{
  width:100%;
  border-radius:999px;
  padding:13px 16px;
  color:var(--navy);
  background:#fff7f0;
  border:1px solid rgba(178,42,38,.14);
  font-weight:900;
  text-align:center;
}

.service-card-actions-v49 button{
  width:100%;
}

@media(max-width:1180px){
  .service-detail-grid-v50,
  .service-fit-grid-v50,
  .service-tools-grid-v50,
  .service-faq-grid-v50{
    grid-template-columns:1fr;
  }

  .service-included-grid-v50,
  .service-benefit-cards-v50{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:800px){
  .service-detail-hero-v50{
    padding:122px 0 48px;
  }

  .service-detail-grid-v50 h1{
    font-size:36px;
    line-height:1.03;
  }

  .service-fit-list-v50,
  .service-included-grid-v50,
  .service-stack-grid-v50,
  .service-benefit-cards-v50,
  .service-card-actions-v49{
    grid-template-columns:1fr;
  }

  .service-fit-copy-v50,
  .service-tools-copy-v50,
  .service-faq-grid-v50 > div:first-child{
    padding:24px;
    border-radius:26px;
  }
}


/* v51: Tighten service detail pages and reduce empty spaces */
.service-detail-hero-v50{
  padding-top:124px !important;
  padding-bottom:46px !important;
}

.service-detail-grid-v50{
  gap:28px !important;
}

.service-detail-grid-v50 h1{
  font-size:clamp(36px,4.2vw,62px) !important;
  margin:18px 0 14px !important;
}

.service-detail-grid-v50 p{
  line-height:1.54 !important;
}

.service-detail-board-v50{
  min-height:205px !important;
  padding:26px !important;
  border-radius:28px !important;
}

.service-fit-section-v50,
.service-included-section-v50,
.service-tools-section-v50,
.service-stack-section-v50,
.service-benefits-detail-v50,
.service-faq-section-v50{
  padding-top:62px !important;
  padding-bottom:62px !important;
}

.service-detail-hero-v50 + .service-fit-section-v50{
  padding-top:54px !important;
}

.service-fit-grid-v50,
.service-tools-grid-v50,
.service-faq-grid-v50{
  gap:20px !important;
}

.service-fit-copy-v50,
.service-tools-copy-v50,
.service-faq-grid-v50 > div:first-child{
  padding:26px !important;
  border-radius:28px !important;
}

.service-fit-copy-v50 h2,
.service-tools-copy-v50 h2,
.service-faq-grid-v50 h2{
  font-size:clamp(30px,3.2vw,48px) !important;
  margin:16px 0 10px !important;
}

.service-fit-copy-v50 p,
.service-tools-copy-v50 p{
  font-size:17px !important;
  line-height:1.62 !important;
}

.service-fit-list-v50{
  gap:12px !important;
}

.service-fit-list-v50 article{
  min-height:125px !important;
  padding:20px !important;
}

.service-fit-list-v50 strong{
  font-size:19px !important;
}

.service-included-section-v50 .section-head,
.service-stack-section-v50 .section-head,
.service-benefits-detail-v50 .section-head,
.related-section .section-head{
  margin-bottom:26px !important;
}

.service-included-grid-v50{
  gap:14px !important;
}

.service-included-grid-v50 article{
  min-height:165px !important;
  padding:20px !important;
}

.service-included-grid-v50 b{
  width:44px !important;
  height:44px !important;
  border-radius:16px !important;
  top:18px !important;
  left:18px !important;
}

.service-included-grid-v50 strong{
  font-size:19px !important;
  line-height:1.12 !important;
}

.service-tool-cloud-v50{
  padding:22px !important;
  border-radius:28px !important;
  gap:10px !important;
  align-content:flex-start !important;
}

.service-tool-cloud-v50 span,
.service-stack-grid-v50 span{
  padding:10px 13px !important;
  font-size:14px !important;
}

.service-stack-grid-v50 article{
  padding:24px !important;
  border-radius:28px !important;
}

.service-stack-grid-v50 h3{
  font-size:28px !important;
  margin-bottom:16px !important;
}

.service-benefit-cards-v50{
  gap:14px !important;
}

.service-benefit-cards-v50 article{
  min-height:145px !important;
  padding:20px !important;
}

.service-benefit-cards-v50 article::before{
  width:42px !important;
  height:42px !important;
  border-radius:15px !important;
  top:16px !important;
  left:16px !important;
}

.service-benefit-cards-v50 strong{
  font-size:19px !important;
  line-height:1.12 !important;
}

.service-faq-list-v50{
  gap:10px !important;
}

.service-faq-list-v50 article{
  padding:20px !important;
  border-radius:22px !important;
}

.service-faq-list-v50 strong{
  font-size:20px !important;
  margin-bottom:6px !important;
}

.service-faq-list-v50 span{
  line-height:1.5 !important;
}

@media(max-width:800px){
  .service-detail-hero-v50{
    padding-top:116px !important;
    padding-bottom:42px !important;
  }

  .service-fit-section-v50,
  .service-included-section-v50,
  .service-tools-section-v50,
  .service-stack-section-v50,
  .service-benefits-detail-v50,
  .service-faq-section-v50{
    padding-top:48px !important;
    padding-bottom:48px !important;
  }

  .service-detail-grid-v50 h1{
    font-size:34px !important;
  }
}


/* v52: Redesign service detail sections to remove large empty/stretch spaces */

/* Stop two-column grids from stretching short cards to match very tall content */
.service-tools-grid-v50,
.service-faq-grid-v50,
.service-fit-grid-v50{
  align-items:start !important;
}

.service-tools-copy-v50,
.service-fit-copy-v50,
.service-faq-grid-v50 > div:first-child,
.service-tool-cloud-v50{
  align-self:start !important;
}

/* FAQ section: left card should be compact, not a tall empty block */
.service-faq-grid-v50{
  grid-template-columns:.72fr 1.28fr !important;
}

.service-faq-grid-v50 > div:first-child{
  min-height:unset !important;
  height:auto !important;
  padding:26px !important;
}

.service-faq-grid-v50 h2{
  font-size:clamp(28px,2.9vw,44px) !important;
  margin-bottom:0 !important;
}

/* FAQ cards should be denser and more readable */
.service-faq-list-v50{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
}

.service-faq-list-v50 article{
  padding:18px 20px !important;
  border-radius:20px !important;
}

.service-faq-list-v50 strong{
  font-size:18px !important;
  line-height:1.16 !important;
}

.service-faq-list-v50 span{
  font-size:15px !important;
  line-height:1.45 !important;
}

/* Tools section: tool cloud should wrap closely around chips, not stretch into a tall blank card */
.service-tools-grid-v50{
  grid-template-columns:.84fr 1.16fr !important;
}

.service-tool-cloud-v50{
  min-height:unset !important;
  height:auto !important;
  padding:20px !important;
  border-radius:26px !important;
  display:flex !important;
  align-items:flex-start !important;
  align-content:flex-start !important;
  justify-content:flex-start !important;
}

.service-tool-cloud-v50 span{
  padding:9px 12px !important;
  font-size:13px !important;
}

/* Make the explanatory side cards cleaner and less tall */
.service-tools-copy-v50,
.service-fit-copy-v50{
  padding:26px !important;
}

.service-tools-copy-v50 h2,
.service-fit-copy-v50 h2{
  font-size:clamp(30px,3vw,48px) !important;
}

.service-tools-copy-v50 p,
.service-fit-copy-v50 p{
  font-size:16px !important;
  line-height:1.55 !important;
}

/* Related section should feel tighter now that it only links to services */
.related-section{
  padding-top:58px !important;
  padding-bottom:58px !important;
}

.related-grid a{
  min-height:145px !important;
}

@media(max-width:1180px){
  .service-faq-grid-v50,
  .service-tools-grid-v50{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:800px){
  .service-faq-grid-v50 > div:first-child,
  .service-tools-copy-v50,
  .service-fit-copy-v50,
  .service-tool-cloud-v50{
    padding:22px !important;
    border-radius:24px !important;
  }

  .service-faq-list-v50 article{
    padding:16px 18px !important;
  }
}


/* v53: Serious redesign to remove empty side spaces on all service detail pages */

/* Reduce overall vertical breathing on service detail sections */
.service-fit-section-v50,
.service-included-section-v50,
.service-tools-section-v50,
.service-stack-section-v50,
.service-benefits-detail-v50,
.service-faq-section-v50,
.related-section{
  padding-top:52px !important;
  padding-bottom:52px !important;
}

/* BRANDS / PLATFORMS / TOOLS:
   The previous 2-column layout created a huge empty area beside a short chip list.
   This redesign makes it one compact full-width card. */
.service-tools-grid-v50{
  display:block !important;
  max-width:1500px !important;
  margin-inline:auto !important;
}

.service-tools-copy-v50{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  min-height:unset !important;
  padding:30px !important;
  border-radius:30px 30px 0 0 !important;
  box-shadow:none !important;
  border:1px solid var(--line) !important;
  border-bottom:0 !important;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.08),transparent 28%),
    var(--cream) !important;
}

.service-tools-copy-v50 h2{
  max-width:920px !important;
  font-size:clamp(30px,3.1vw,52px) !important;
  line-height:1.02 !important;
  margin:16px 0 12px !important;
}

.service-tools-copy-v50 p{
  max-width:980px !important;
  margin-bottom:20px !important;
}

.service-tools-copy-v50 .btn{
  width:max-content !important;
  max-width:100% !important;
}

.service-tool-cloud-v50{
  width:100% !important;
  min-height:unset !important;
  height:auto !important;
  padding:24px 30px 30px !important;
  border-radius:0 0 30px 30px !important;
  box-shadow:0 22px 60px rgba(8,20,38,.08) !important;
  border:1px solid var(--line) !important;
  border-top:0 !important;
  background:#fff !important;
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  align-content:flex-start !important;
  justify-content:flex-start !important;
  gap:10px !important;
}

.service-tool-cloud-v50 span{
  padding:10px 14px !important;
  border-radius:999px !important;
  font-size:14px !important;
  line-height:1 !important;
}

/* FAQ:
   The previous left intro column stretched vertically to the height of 10 FAQs.
   This redesign places the heading at the top and lays FAQs below in two columns. */
.service-faq-grid-v50{
  display:block !important;
  max-width:1500px !important;
  margin-inline:auto !important;
}

.service-faq-grid-v50 > div:first-child{
  width:100% !important;
  min-height:unset !important;
  height:auto !important;
  padding:28px 30px !important;
  border-radius:30px 30px 0 0 !important;
  box-shadow:none !important;
  border:1px solid var(--line) !important;
  border-bottom:0 !important;
  background:#fff !important;
}

.service-faq-grid-v50 h2{
  max-width:900px !important;
  font-size:clamp(30px,3vw,50px) !important;
  line-height:1.02 !important;
  margin:16px 0 0 !important;
}

.service-faq-list-v50{
  width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  padding:0 30px 30px !important;
  border:1px solid var(--line) !important;
  border-top:0 !important;
  border-radius:0 0 30px 30px !important;
  background:#fff !important;
  box-shadow:0 22px 60px rgba(8,20,38,.08) !important;
}

.service-faq-list-v50 article{
  margin:0 !important;
  min-height:118px !important;
  padding:20px !important;
  border-radius:22px !important;
  background:var(--cream) !important;
  box-shadow:none !important;
  border:1px solid rgba(8,20,38,.06) !important;
}

.service-faq-list-v50 strong{
  font-size:18px !important;
  line-height:1.18 !important;
}

.service-faq-list-v50 span{
  display:block !important;
  font-size:15px !important;
  line-height:1.45 !important;
}

/* WHO NEEDS THIS:
   Avoid similar empty-card feeling by making both sides compact. */
.service-fit-grid-v50{
  align-items:start !important;
}

.service-fit-copy-v50{
  min-height:unset !important;
}

.service-fit-list-v50 article{
  min-height:110px !important;
}

/* TECH STACK sections: tighten cards */
.service-stack-grid-v50 article{
  min-height:unset !important;
}

/* Related services only: compact cards */
.related-grid{
  align-items:start !important;
}

.related-grid a{
  min-height:120px !important;
  padding:22px !important;
}

/* Ensure no previous CSS forces huge vertical cards in these redesigned sections */
.service-tools-section-v50 .container-wide,
.service-faq-section-v50 .container-wide{
  align-items:start !important;
}

@media(max-width:900px){
  .service-faq-list-v50{
    grid-template-columns:1fr !important;
  }

  .service-tools-copy-v50,
  .service-faq-grid-v50 > div:first-child{
    padding:24px !important;
    border-radius:24px 24px 0 0 !important;
  }

  .service-tool-cloud-v50,
  .service-faq-list-v50{
    padding:0 24px 24px !important;
    border-radius:0 0 24px 24px !important;
  }

  .service-tools-copy-v50 .btn{
    width:100% !important;
  }
}

@media(max-width:700px){
  .service-fit-section-v50,
  .service-included-section-v50,
  .service-tools-section-v50,
  .service-stack-section-v50,
  .service-benefits-detail-v50,
  .service-faq-section-v50,
  .related-section{
    padding-top:42px !important;
    padding-bottom:42px !important;
  }
}


/* v54: Properly align "Who needs this?" section on all service detail pages */

/* The previous 2-column layout made the intro card and checklist cards feel disconnected.
   This redesign uses one compact full-width intro panel with the audience cards directly below it. */
.service-fit-grid-v50{
  display:block !important;
  max-width:1500px !important;
  margin-inline:auto !important;
}

.service-fit-copy-v50{
  width:100% !important;
  max-width:none !important;
  min-height:unset !important;
  height:auto !important;
  padding:28px 30px !important;
  border-radius:30px 30px 0 0 !important;
  box-shadow:none !important;
  border:1px solid var(--line) !important;
  border-bottom:0 !important;
  background:
    radial-gradient(circle at 90% 12%,rgba(18,106,122,.08),transparent 28%),
    var(--cream) !important;
}

.service-fit-copy-v50 h2{
  max-width:920px !important;
  font-size:clamp(30px,3.2vw,50px) !important;
  line-height:1.02 !important;
  margin:16px 0 10px !important;
}

.service-fit-copy-v50 p{
  max-width:980px !important;
  margin:0 !important;
  font-size:16px !important;
  line-height:1.55 !important;
}

.service-fit-list-v50{
  width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
  padding:0 30px 30px !important;
  border:1px solid var(--line) !important;
  border-top:0 !important;
  border-radius:0 0 30px 30px !important;
  background:#fff !important;
  box-shadow:0 22px 60px rgba(8,20,38,.08) !important;
}

.service-fit-list-v50 article{
  margin:0 !important;
  min-height:130px !important;
  padding:20px !important;
  border-radius:22px !important;
  background:#fff !important;
  border:1px solid rgba(8,20,38,.07) !important;
  box-shadow:none !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
}

.service-fit-list-v50 span{
  width:48px !important;
  height:48px !important;
  flex:0 0 48px !important;
  border-radius:17px !important;
}

.service-fit-list-v50 strong{
  font-size:19px !important;
  line-height:1.16 !important;
}

/* Keep all three redesigned service detail blocks consistent */
.service-fit-section-v50 .container-wide,
.service-tools-section-v50 .container-wide,
.service-faq-section-v50 .container-wide{
  max-width:1540px !important;
}

@media(max-width:1200px){
  .service-fit-list-v50{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:760px){
  .service-fit-copy-v50{
    padding:24px !important;
    border-radius:24px 24px 0 0 !important;
  }

  .service-fit-list-v50{
    grid-template-columns:1fr !important;
    padding:0 24px 24px !important;
    border-radius:0 0 24px 24px !important;
  }

  .service-fit-list-v50 article{
    min-height:110px !important;
  }
}


/* v55: Serious service detail QA — prevent hero overlap and normalize all 13 pages */

/*
  Problem fixed:
  Some service titles are longer than others and the previous hero grid could feel cramped,
  especially where the left headline and right focus card competed for horizontal space.
  This forces a safer layout with min-width:0, balanced text, smaller hero typography,
  and a responsive single-column fallback before overlap can happen.
*/

.service-detail-hero-v50{
  padding-top:128px !important;
  padding-bottom:52px !important;
  min-height:auto !important;
}

.service-detail-grid-v50{
  width:100% !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(320px,440px) !important;
  gap:30px !important;
  align-items:center !important;
}

.service-detail-grid-v50 > *{
  min-width:0 !important;
}

.service-detail-grid-v50 h1{
  max-width:980px !important;
  font-size:clamp(34px,3.85vw,56px) !important;
  line-height:1.04 !important;
  letter-spacing:-.012em !important;
  margin:18px 0 14px !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  text-wrap:balance;
}

.service-detail-grid-v50 p{
  max-width:820px !important;
  font-size:17px !important;
  line-height:1.56 !important;
  overflow-wrap:anywhere !important;
}

.service-detail-grid-v50 .hero-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  align-items:center !important;
}

.service-detail-grid-v50 .hero-actions .btn{
  white-space:normal !important;
}

.service-detail-board-v50{
  width:100% !important;
  max-width:440px !important;
  min-height:210px !important;
  padding:26px !important;
  border-radius:28px !important;
  justify-self:end !important;
}

.service-detail-board-v50 strong{
  font-size:clamp(25px,2.25vw,36px) !important;
  line-height:1.03 !important;
  overflow-wrap:anywhere !important;
  text-wrap:balance;
}

.service-detail-board-v50 p{
  font-size:15px !important;
  line-height:1.48 !important;
}

/* Long service headings deserve more room before we switch to mobile */
@media(max-width:1180px){
  .service-detail-grid-v50{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }

  .service-detail-board-v50{
    max-width:none !important;
    justify-self:stretch !important;
    min-height:160px !important;
  }

  .service-detail-board-v50 span{
    position:static !important;
    display:block !important;
    margin-bottom:14px !important;
  }

  .service-detail-board-v50::before{
    width:170px !important;
    height:170px !important;
  }
}

@media(max-width:760px){
  .service-detail-hero-v50{
    padding-top:116px !important;
    padding-bottom:42px !important;
  }

  .service-detail-grid-v50 h1{
    font-size:34px !important;
    line-height:1.06 !important;
  }

  .service-detail-grid-v50 p{
    font-size:16px !important;
  }

  .service-detail-board-v50{
    min-height:145px !important;
    padding:22px !important;
  }

  .service-detail-grid-v50 .hero-actions .btn{
    width:100% !important;
  }
}

/* v55: Normalize section layouts after hero to keep all 13 pages visually consistent */
.service-fit-section-v50 .container-wide,
.service-included-section-v50 .container-wide,
.service-tools-section-v50 .container-wide,
.service-stack-section-v50 .container-wide,
.service-benefits-detail-v50 .container-wide,
.service-faq-section-v50 .container-wide,
.related-section .container-wide{
  max-width:1540px !important;
}

/* Avoid any grid item stretching into awkward empty spaces */
.service-fit-list-v50,
.service-tool-cloud-v50,
.service-faq-list-v50,
.service-included-grid-v50,
.service-stack-grid-v50,
.service-benefit-cards-v50{
  align-items:start !important;
}

/* Make every card respect its content and avoid unexpected overflow */
.service-fit-list-v50 article,
.service-included-grid-v50 article,
.service-stack-grid-v50 article,
.service-benefit-cards-v50 article,
.service-faq-list-v50 article,
.related-grid a{
  min-width:0 !important;
  overflow:hidden !important;
}

.service-fit-list-v50 strong,
.service-included-grid-v50 strong,
.service-stack-grid-v50 span,
.service-benefit-cards-v50 strong,
.service-faq-list-v50 strong,
.service-faq-list-v50 span,
.related-grid span{
  overflow-wrap:anywhere !important;
}

/* Keep the full-width redesigned sections compact on desktop */
.service-tools-copy-v50,
.service-faq-grid-v50 > div:first-child,
.service-fit-copy-v50{
  min-height:unset !important;
}

.service-tool-cloud-v50,
.service-faq-list-v50,
.service-fit-list-v50{
  min-height:unset !important;
}


/* v56: Proper service detail page layout reset
   This fixes the service pages instead of patching one symptom at a time. */

/* HERO: make all 13 service heroes safe, centered and impossible to clip on the left */
.service-detail-hero-v50{
  padding-top:122px !important;
  padding-bottom:48px !important;
  overflow:hidden !important;
}

.service-detail-hero-v50 .container-wide{
  width:min(94%,1500px) !important;
  max-width:1500px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:24px !important;
  padding-right:24px !important;
}

.service-detail-grid-v50{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(300px,400px) !important;
  gap:34px !important;
  align-items:center !important;
  width:100% !important;
  margin:0 auto !important;
}

.service-detail-grid-v50 > div{
  min-width:0 !important;
}

.service-detail-grid-v50 h1{
  max-width:860px !important;
  font-size:clamp(34px,3.45vw,52px) !important;
  line-height:1.06 !important;
  letter-spacing:-.01em !important;
  margin:16px 0 12px !important;
  padding:0 !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}

.service-detail-grid-v50 p{
  max-width:760px !important;
  font-size:16.5px !important;
  line-height:1.55 !important;
}

.service-detail-grid-v50 .hero-actions{
  margin-top:24px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
}

.service-detail-grid-v50 .hero-actions .btn{
  min-width:0 !important;
  white-space:normal !important;
}

.service-detail-board-v50{
  justify-self:end !important;
  width:100% !important;
  max-width:400px !important;
  min-height:190px !important;
  padding:24px !important;
  border-radius:26px !important;
}

.service-detail-board-v50 span{
  position:static !important;
  display:block !important;
  margin-bottom:14px !important;
}

.service-detail-board-v50 strong{
  font-size:clamp(24px,2vw,33px) !important;
  line-height:1.05 !important;
  letter-spacing:-.006em !important;
}

.service-detail-board-v50 p{
  font-size:14.5px !important;
  line-height:1.48 !important;
}

/* WHO NEEDS THIS: remove the oversized full-width card and make it a clean section */
.service-fit-section-v50{
  background:#fff !important;
  padding-top:56px !important;
  padding-bottom:56px !important;
}

.service-fit-section-v50 .container-wide{
  width:min(92%,1450px) !important;
  max-width:1450px !important;
  margin:auto !important;
}

.service-fit-grid-v50{
  display:grid !important;
  grid-template-columns:.72fr 1.28fr !important;
  gap:20px !important;
  align-items:start !important;
}

.service-fit-copy-v50{
  padding:28px !important;
  border-radius:28px !important;
  background:var(--cream) !important;
  border:1px solid var(--line) !important;
  box-shadow:0 16px 46px rgba(8,20,38,.07) !important;
}

.service-fit-copy-v50 h2{
  font-size:clamp(30px,3.1vw,48px) !important;
  line-height:1.04 !important;
  margin:16px 0 12px !important;
}

.service-fit-copy-v50 p{
  font-size:16px !important;
  line-height:1.58 !important;
  margin:0 !important;
}

.service-fit-list-v50{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.service-fit-list-v50 article{
  min-height:128px !important;
  padding:22px !important;
  border-radius:24px !important;
  background:#fff !important;
  border:1px solid rgba(8,20,38,.08) !important;
  box-shadow:0 14px 40px rgba(8,20,38,.06) !important;
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
}

.service-fit-list-v50 span{
  width:48px !important;
  height:48px !important;
  flex:0 0 48px !important;
  border-radius:17px !important;
}

.service-fit-list-v50 strong{
  font-size:19px !important;
  line-height:1.18 !important;
}

/* Tools and FAQ remain compact but get consistent width */
.service-tools-section-v50 .container-wide,
.service-faq-section-v50 .container-wide,
.service-included-section-v50 .container-wide,
.service-stack-section-v50 .container-wide,
.service-benefits-detail-v50 .container-wide,
.related-section .container-wide{
  width:min(92%,1450px) !important;
  max-width:1450px !important;
  margin:auto !important;
}

/* Remove excessive top white gap after hero */
.service-detail-hero-v50 + .service-fit-section-v50{
  padding-top:50px !important;
}

/* Earlier fallback for medium screens */
@media(max-width:1200px){
  .service-detail-grid-v50,
  .service-fit-grid-v50{
    grid-template-columns:1fr !important;
  }

  .service-detail-board-v50{
    max-width:none !important;
    justify-self:stretch !important;
  }
}

@media(max-width:760px){
  .service-detail-hero-v50{
    padding-top:112px !important;
    padding-bottom:40px !important;
  }

  .service-detail-hero-v50 .container-wide{
    width:100% !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .service-detail-grid-v50 h1{
    font-size:32px !important;
    line-height:1.08 !important;
  }

  .service-detail-grid-v50 p{
    font-size:15.5px !important;
  }

  .service-detail-grid-v50 .hero-actions .btn{
    width:100% !important;
  }

  .service-fit-list-v50{
    grid-template-columns:1fr !important;
  }

  .service-fit-copy-v50,
  .service-fit-list-v50 article{
    border-radius:22px !important;
  }
}


/* v57: Service detail hero breathing room + FAQ accordions */

/* Bigger hero spacing for all 13 service detail pages */
.service-detail-hero-v50{
  padding-top:154px !important;
  padding-bottom:78px !important;
}

.service-detail-grid-v50{
  align-items:center !important;
}

.service-detail-grid-v50 h1{
  margin-top:20px !important;
  margin-bottom:16px !important;
}

.service-detail-grid-v50 .hero-actions{
  margin-top:28px !important;
}

.service-detail-board-v50{
  min-height:220px !important;
}

/* FAQ accordion layout */
.service-faq-grid-v50{
  display:block !important;
}

.service-faq-grid-v50 > div:first-child{
  border-radius:30px 30px 0 0 !important;
}

.service-faq-accordion-v57{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  padding:0 30px 30px !important;
  border:1px solid var(--line) !important;
  border-top:0 !important;
  border-radius:0 0 30px 30px !important;
  background:#fff !important;
  box-shadow:0 22px 60px rgba(8,20,38,.08) !important;
}

.service-faq-item-v57{
  border:1px solid rgba(8,20,38,.08) !important;
  border-radius:20px !important;
  background:var(--cream) !important;
  overflow:hidden !important;
  box-shadow:none !important;
}

.service-faq-item-v57 summary{
  list-style:none !important;
  cursor:pointer !important;
  padding:20px 22px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  color:var(--navy) !important;
}

.service-faq-item-v57 summary::-webkit-details-marker{
  display:none !important;
}

.service-faq-item-v57 summary strong{
  font-size:19px !important;
  line-height:1.18 !important;
  font-weight:900 !important;
  color:var(--navy) !important;
}

.service-faq-item-v57 summary > span{
  width:34px !important;
  height:34px !important;
  flex:0 0 34px !important;
  border-radius:14px !important;
  display:grid !important;
  place-items:center !important;
  background:linear-gradient(135deg,var(--red),var(--navy)) !important;
  color:#fff !important;
  font-weight:900 !important;
  line-height:1 !important;
  transition:transform .22s ease !important;
}

.service-faq-item-v57[open] summary > span{
  transform:rotate(45deg) !important;
}

.service-faq-item-v57 div{
  padding:0 22px 20px 22px !important;
}

.service-faq-item-v57 p{
  margin:0 !important;
  color:var(--muted) !important;
  font-size:16px !important;
  line-height:1.58 !important;
  font-weight:700 !important;
}

/* Remove old FAQ article assumptions where they still exist */
.service-faq-list-v50 article{
  min-height:unset !important;
}

/* Keep accordion comfortable on mobile */
@media(max-width:760px){
  .service-detail-hero-v50{
    padding-top:136px !important;
    padding-bottom:60px !important;
  }

  .service-detail-board-v50{
    min-height:185px !important;
  }

  .service-faq-accordion-v57{
    padding:0 22px 22px !important;
    border-radius:0 0 24px 24px !important;
  }

  .service-faq-item-v57 summary{
    padding:18px !important;
  }

  .service-faq-item-v57 summary strong{
    font-size:17px !important;
  }

  .service-faq-item-v57 div{
    padding:0 18px 18px !important;
  }
}


/* v58: Make service detail tags/chips highly visible and stylish across all 13 pages */

/* Brands / Platforms / Tools chips */
.service-tool-cloud-v50 span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:42px !important;
  padding:12px 17px !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#071426,#243c5a) !important;
  color:#ffffff !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:0 12px 26px rgba(8,20,38,.16) !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.01em !important;
  text-shadow:0 1px 3px rgba(0,0,0,.18) !important;
}

.service-tool-cloud-v50 span:nth-child(3n+2){
  background:linear-gradient(135deg,#126a7a,#071426) !important;
}

.service-tool-cloud-v50 span:nth-child(3n+3){
  background:linear-gradient(135deg,#b22a26,#2b1020) !important;
}

/* Tech stack and development platforms/frameworks chips */
.service-stack-grid-v50 span{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  min-height:42px !important;
  padding:12px 16px !important;
  border-radius:999px !important;
  background:#ffffff !important;
  color:#071426 !important;
  border:2px solid rgba(178,42,38,.22) !important;
  box-shadow:0 10px 24px rgba(8,20,38,.08) !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:950 !important;
}

.service-stack-grid-v50 span::before{
  content:"";
  width:9px !important;
  height:9px !important;
  border-radius:50% !important;
  background:linear-gradient(135deg,#b22a26,#126a7a) !important;
  box-shadow:0 0 0 4px rgba(178,42,38,.10) !important;
  flex:0 0 9px !important;
}

/* Stronger card contrast around tag sections */
.service-tool-cloud-v50,
.service-stack-grid-v50 article{
  background:
    radial-gradient(circle at 88% 12%,rgba(18,106,122,.08),transparent 28%),
    #ffffff !important;
  border:1px solid rgba(8,20,38,.10) !important;
}

/* Make related and service page chips consistent where service detail pages reuse chip rows */
.service-detail-hero-v50 .section-kicker,
.service-fit-copy-v50 .section-kicker,
.service-tools-copy-v50 .section-kicker,
.service-faq-grid-v50 .section-kicker,
.service-stack-section-v50 .section-kicker,
.service-included-section-v50 .section-kicker,
.service-benefits-detail-v50 .section-kicker,
.related-section .section-kicker{
  background:#f5e4df !important;
  color:#9f1f1f !important;
  border:1px solid rgba(178,42,38,.12) !important;
}

/* Any keyword/tag rows appearing on service-related pages */
.service-card-v49 .keyword-row b,
.keyword-row span,
.keyword-row b{
  color:#071426 !important;
  background:#fff7f0 !important;
  border:1px solid rgba(178,42,38,.18) !important;
  box-shadow:0 8px 20px rgba(8,20,38,.05) !important;
  font-weight:950 !important;
}

/* Mobile: keep chips readable without overflowing */
@media(max-width:760px){
  .service-tool-cloud-v50 span,
  .service-stack-grid-v50 span{
    width:100% !important;
    justify-content:flex-start !important;
    min-height:44px !important;
  }
}


/* v59: Industries service-first marketing upgrade */
.industries-services-hero-v59,
.industry-service-hero-v59{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:146px 0 68px;
  background:
    radial-gradient(circle at 14% 18%,rgba(18,106,122,.34),transparent 26%),
    radial-gradient(circle at 84% 18%,rgba(178,42,38,.26),transparent 24%),
    linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.industries-services-grid-v59,
.industry-service-hero-grid-v59{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr;
  gap:42px;
  align-items:center;
}

.industries-services-grid-v59 h1,
.industry-service-hero-grid-v59 h1{
  font-size:clamp(40px,4.6vw,72px);
  line-height:1;
  letter-spacing:-.015em;
  margin:24px 0 18px;
  font-weight:900;
}

.industries-services-grid-v59 p,
.industry-service-hero-grid-v59 p{
  color:rgba(255,255,255,.84);
  font-size:18px;
  line-height:1.64;
  max-width:820px;
}

.industries-services-board-v59,
.industry-service-board-v59{
  min-height:265px;
  border-radius:34px;
  padding:32px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 30px 80px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.industries-services-board-v59::before,
.industry-service-board-v59::before{
  content:"";
  position:absolute;
  right:-72px;
  top:-72px;
  width:210px;
  height:210px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
}

.industries-services-board-v59 span,
.industry-service-board-v59 span{
  position:absolute;
  top:28px;
  left:32px;
  right:32px;
  color:rgba(255,255,255,.70);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:12px;
  font-weight:900;
}

.industries-services-board-v59 strong,
.industry-service-board-v59 strong{
  color:#fff;
  font-size:clamp(28px,2.8vw,45px);
  line-height:1;
  font-weight:900;
  margin-bottom:12px;
}

.industries-services-board-v59 p,
.industry-service-board-v59 p{
  color:rgba(255,255,255,.78);
  font-size:16px;
  line-height:1.5;
  font-weight:800;
}

.industries-service-intro-v59,
.industry-services-section-v59,
.industry-workflow-section-v59{
  background:#fff;
}

.service-buyer-card-v59,
.industry-request-card-v59{
  display:grid;
  grid-template-columns:1fr auto;
  gap:28px;
  align-items:center;
  border-radius:36px;
  padding:34px;
  background:
    radial-gradient(circle at 88% 12%,rgba(18,106,122,.10),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}

.service-buyer-card-v59 h2,
.industry-request-card-v59 h2{
  font-size:clamp(34px,3.8vw,62px);
  line-height:1;
  letter-spacing:-.015em;
  margin:20px 0 12px;
  font-weight:900;
}

.service-buyer-card-v59 p,
.industry-request-card-v59 p{
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
  max-width:920px;
}

.industries-grid-section-v59,
.industry-request-section-v59,
.industry-faq-section-v59{
  background:var(--cream);
}

.industry-service-card-grid-v59,
.industry-service-grid-v59{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.industry-service-card-v59,
.industry-service-grid-v59 article{
  min-height:370px;
  padding:28px;
  border-radius:34px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),var(--teal));
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
  box-shadow:0 18px 54px rgba(8,20,38,.12);
}

.industry-service-card-v59::before,
.industry-service-grid-v59 article::before{
  content:"";
  position:absolute;
  top:-42px;
  right:-42px;
  width:150px;
  height:150px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.20);
}

.industry-service-card-v59 h3,
.industry-service-grid-v59 h3{
  font-size:32px;
  line-height:1.02;
  font-weight:900;
  margin:0 0 14px;
}

.industry-service-card-v59 p,
.industry-service-grid-v59 p{
  color:rgba(255,255,255,.80);
  line-height:1.55;
  font-weight:700;
  margin:0 0 18px;
}

.industry-service-card-v59 em{
  color:#ffe45c;
  font-style:normal;
  font-weight:900;
  margin-bottom:18px;
}

.industry-service-card-v59 a,
.industry-service-grid-v59 a{
  width:max-content;
  display:inline-flex;
  align-items:center;
  gap:8px;
  border-radius:999px;
  padding:12px 15px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  font-weight:900;
}

.industry-service-grid-v59 article > span{
  position:absolute;
  top:26px;
  left:28px;
  color:rgba(255,255,255,.72);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  font-weight:900;
}

.industry-problem-strip-v59{
  background:#fff;
  padding:48px 0 0;
}

.industry-problem-card-v59{
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  gap:30px;
  align-items:center;
  padding:30px;
  border-radius:34px;
  background:var(--cream);
  border:1px solid var(--line);
  box-shadow:0 18px 54px rgba(8,20,38,.08);
}

.industry-problem-card-v59 h2{
  font-size:clamp(30px,3vw,48px);
  line-height:1;
  font-weight:900;
  margin:18px 0 0;
}

.industry-problem-card-v59 p{
  color:var(--muted);
  font-size:18px;
  line-height:1.7;
  font-weight:700;
}

.industry-request-chips-v59{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
}

.industry-request-chips-v59 button{
  border:0;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:12px 16px;
  border-radius:999px;
  background:linear-gradient(135deg,#071426,#243c5a);
  color:#fff;
  font-weight:950;
  box-shadow:0 12px 26px rgba(8,20,38,.14);
}

.industry-request-chips-v59 button:nth-child(3n+2){
  background:linear-gradient(135deg,#126a7a,#071426);
}

.industry-request-chips-v59 button:nth-child(3n+3){
  background:linear-gradient(135deg,#b22a26,#2b1020);
}

.industry-workflow-grid-v59{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.industry-workflow-grid-v59 article{
  min-height:250px;
  padding:26px;
  border-radius:30px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,var(--navy),#243c5a);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.industry-workflow-grid-v59 article:nth-child(2){background:linear-gradient(135deg,#071426,#126a7a);}
.industry-workflow-grid-v59 article:nth-child(3){background:linear-gradient(135deg,#7f1f35,var(--red));}
.industry-workflow-grid-v59 article:nth-child(4){background:linear-gradient(135deg,#13243c,#5b6f8d);}

.industry-workflow-grid-v59 b{
  position:absolute;
  top:24px;
  left:24px;
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  font-weight:900;
}

.industry-workflow-grid-v59 strong{
  font-size:25px;
  line-height:1.03;
  font-weight:900;
  margin-bottom:12px;
}

.industry-workflow-grid-v59 span{
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-weight:700;
}

.industry-faq-grid-v59{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:24px;
  align-items:start;
}

.industry-faq-grid-v59 > div:first-child{
  padding:28px;
  border-radius:30px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 16px 48px rgba(8,20,38,.07);
}

.industry-faq-grid-v59 h2{
  font-size:clamp(32px,3.3vw,54px);
  line-height:1;
  font-weight:900;
  margin:18px 0 0;
}

.industry-faq-list-v59{
  display:grid;
  gap:10px;
}

.industry-faq-item-v59{
  border:1px solid rgba(8,20,38,.08);
  border-radius:20px;
  background:#fff;
  overflow:hidden;
}

.industry-faq-item-v59 summary{
  list-style:none;
  cursor:pointer;
  padding:20px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.industry-faq-item-v59 summary::-webkit-details-marker{display:none;}

.industry-faq-item-v59 summary strong{
  color:var(--navy);
  font-size:19px;
  line-height:1.18;
  font-weight:900;
}

.industry-faq-item-v59 summary span{
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--red),var(--navy));
  color:#fff;
  font-weight:900;
  transition:transform .22s ease;
}

.industry-faq-item-v59[open] summary span{
  transform:rotate(45deg);
}

.industry-faq-item-v59 div{
  padding:0 22px 20px;
}

.industry-faq-item-v59 p{
  margin:0;
  color:var(--muted);
  font-size:16px;
  line-height:1.58;
  font-weight:700;
}

@media(max-width:1180px){
  .industries-services-grid-v59,
  .industry-service-hero-grid-v59,
  .service-buyer-card-v59,
  .industry-request-card-v59,
  .industry-problem-card-v59,
  .industry-faq-grid-v59{
    grid-template-columns:1fr;
  }
  .industry-service-card-grid-v59,
  .industry-service-grid-v59{
    grid-template-columns:1fr 1fr;
  }
  .industry-workflow-grid-v59{
    grid-template-columns:1fr 1fr;
  }
  .industry-request-chips-v59{
    justify-content:flex-start;
  }
}

@media(max-width:760px){
  .industries-services-hero-v59,
  .industry-service-hero-v59{
    padding:128px 0 58px;
  }
  .industries-services-grid-v59 h1,
  .industry-service-hero-grid-v59 h1{
    font-size:36px;
    line-height:1.04;
  }
  .industry-service-card-grid-v59,
  .industry-service-grid-v59,
  .industry-workflow-grid-v59{
    grid-template-columns:1fr;
  }
  .service-buyer-card-v59,
  .industry-request-card-v59,
  .industry-problem-card-v59{
    padding:22px;
    border-radius:26px;
  }
  .industry-request-chips-v59 button{
    width:100%;
    justify-content:center;
  }
}


/* v60: Industries hub hero redesign only — cleaner, intentional service marketing */
.industries-services-hero-v59{
  padding-top:134px !important;
  padding-bottom:72px !important;
}

.industries-services-hero-v59 .container-wide{
  width:min(92%,1460px) !important;
  margin-inline:auto !important;
}

.industries-services-grid-v59{
  grid-template-columns:minmax(0,.98fr) minmax(360px,.62fr) !important;
  gap:48px !important;
  align-items:center !important;
}

.industries-services-grid-v59 h1{
  max-width:830px !important;
  font-size:clamp(44px,4.2vw,66px) !important;
  line-height:1.02 !important;
  letter-spacing:-.012em !important;
  margin:22px 0 20px !important;
}

.industries-services-grid-v59 p{
  max-width:850px !important;
  font-size:18px !important;
  line-height:1.62 !important;
}

.industries-services-board-v60{
  width:100% !important;
  min-height:unset !important;
  padding:30px !important;
  border-radius:32px !important;
  background:rgba(255,255,255,.13) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.20) !important;
  backdrop-filter:blur(16px);
  position:relative;
  overflow:hidden;
}

.industries-services-board-v60::before{
  content:"";
  position:absolute;
  top:-70px;
  right:-70px;
  width:190px;
  height:190px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.20);
}

.industries-services-board-v60 > span{
  display:inline-flex !important;
  align-items:center !important;
  width:max-content !important;
  max-width:100% !important;
  padding:10px 13px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.14) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  color:rgba(255,255,255,.84) !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  font-size:11px !important;
  font-weight:950 !important;
  position:relative !important;
  top:auto !important;
  left:auto !important;
  right:auto !important;
  margin-bottom:18px !important;
}

.industries-services-board-v60 h2{
  position:relative;
  z-index:1;
  color:#fff !important;
  max-width:460px !important;
  font-size:clamp(27px,2.25vw,40px) !important;
  line-height:1.04 !important;
  letter-spacing:-.008em !important;
  margin:0 0 20px !important;
  font-weight:900 !important;
}

.industry-hero-service-tags-v60{
  position:relative;
  z-index:1;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:20px;
}

.industry-hero-service-tags-v60 b{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:10px 13px;
  border-radius:999px;
  background:#ffffff;
  color:#071426;
  border:1px solid rgba(255,255,255,.30);
  box-shadow:0 10px 26px rgba(0,0,0,.12);
  font-size:13px;
  line-height:1;
  font-weight:950;
}

.industry-hero-service-tags-v60 b:nth-child(2n){
  background:#fff4ef;
  color:#9f1f1f;
}

.industries-services-board-v60 p{
  position:relative;
  z-index:1;
  color:rgba(255,255,255,.82) !important;
  font-size:15.5px !important;
  line-height:1.56 !important;
  font-weight:800 !important;
  margin:0 !important;
}

/* Keep only industry detail cards using the older v59 board style */
.industry-service-board-v59 strong{
  font-size:clamp(28px,2.8vw,45px) !important;
}

@media(max-width:1180px){
  .industries-services-grid-v59{
    grid-template-columns:1fr !important;
  }

  .industries-services-board-v60{
    max-width:760px !important;
  }
}

@media(max-width:760px){
  .industries-services-hero-v59{
    padding-top:126px !important;
    padding-bottom:58px !important;
  }

  .industries-services-grid-v59 h1{
    font-size:38px !important;
    line-height:1.05 !important;
  }

  .industry-hero-service-tags-v60 b{
    width:100%;
    justify-content:center;
  }
}


/* v61: Fix "What you can request" section on all industry detail pages
   The previous grid allowed the chip row to squeeze the heading into a narrow column.
   This makes the section intentional: header first, request tags below. */

.industry-request-section-v59{
  background:var(--cream) !important;
  padding-top:62px !important;
  padding-bottom:62px !important;
}

.industry-request-section-v59 .container-wide{
  width:min(92%,1450px) !important;
  max-width:1450px !important;
  margin-inline:auto !important;
}

.industry-request-card-v59{
  display:block !important;
  min-height:unset !important;
  padding:34px !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 90% 8%,rgba(18,106,122,.08),transparent 25%),
    #ffffff !important;
  border:1px solid rgba(8,20,38,.09) !important;
  box-shadow:0 20px 60px rgba(8,20,38,.08) !important;
}

.industry-request-card-v59 > div:first-child{
  max-width:920px !important;
}

.industry-request-card-v59 h2{
  max-width:860px !important;
  font-size:clamp(32px,3.3vw,54px) !important;
  line-height:1.03 !important;
  letter-spacing:-.012em !important;
  margin:18px 0 12px !important;
}

.industry-request-card-v59 p{
  max-width:900px !important;
  font-size:17px !important;
  line-height:1.65 !important;
  margin:0 !important;
}

.industry-request-chips-v59{
  margin-top:28px !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
  justify-content:stretch !important;
  align-items:stretch !important;
}

.industry-request-chips-v59 button{
  width:100% !important;
  min-height:54px !important;
  padding:14px 18px !important;
  justify-content:center !important;
  text-align:center !important;
  border-radius:18px !important;
  white-space:normal !important;
  line-height:1.15 !important;
  font-size:14px !important;
  letter-spacing:.002em !important;
  box-shadow:0 12px 26px rgba(8,20,38,.12) !important;
}

.industry-request-chips-v59 button:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 34px rgba(8,20,38,.16) !important;
}

/* Keep this section compact even with short chip labels */
.industry-request-chips-v59 button:focus-visible{
  outline:3px solid rgba(178,42,38,.25);
  outline-offset:3px;
}

@media(max-width:1180px){
  .industry-request-chips-v59{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:820px){
  .industry-request-chips-v59{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:560px){
  .industry-request-card-v59{
    padding:24px !important;
    border-radius:26px !important;
  }

  .industry-request-chips-v59{
    grid-template-columns:1fr !important;
  }

  .industry-request-card-v59 h2{
    font-size:32px !important;
    line-height:1.06 !important;
  }
}


/* v62: Bigger request tags on industry detail pages */
.industry-request-chips-v59{
  gap:16px !important;
}

.industry-request-chips-v59 button{
  min-height:72px !important;
  padding:20px 24px !important;
  border-radius:24px !important;
  font-size:17px !important;
  line-height:1.18 !important;
  font-weight:950 !important;
  letter-spacing:.003em !important;
  box-shadow:0 16px 34px rgba(8,20,38,.15) !important;
}

.industry-request-chips-v59 button:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 22px 44px rgba(8,20,38,.18) !important;
}

@media(max-width:820px){
  .industry-request-chips-v59 button{
    min-height:68px !important;
    font-size:16px !important;
  }
}

@media(max-width:560px){
  .industry-request-chips-v59 button{
    min-height:62px !important;
    padding:18px 20px !important;
    border-radius:20px !important;
    font-size:16px !important;
  }
}


/* v63: Informative conversion popup for industry request tags */
.request-fit-open-v63{
  overflow:hidden;
}

.request-fit-modal-v63{
  position:fixed;
  inset:0;
  z-index:10050;
  display:grid;
  place-items:center;
  padding:22px;
}

.request-fit-modal-v63[hidden]{
  display:none !important;
}

.request-fit-backdrop-v63{
  position:absolute;
  inset:0;
  background:rgba(7,20,38,.68);
  backdrop-filter:blur(10px);
}

.request-fit-dialog-v63{
  position:relative;
  width:min(94vw,620px);
  max-height:90vh;
  overflow:auto;
  border-radius:34px;
  padding:34px;
  background:
    radial-gradient(circle at 88% 8%,rgba(18,106,122,.12),transparent 30%),
    #fff;
  border:1px solid rgba(255,255,255,.28);
  box-shadow:0 34px 100px rgba(0,0,0,.32);
}

.request-fit-close-v63{
  position:absolute;
  top:18px;
  right:18px;
  width:42px;
  height:42px;
  border:0;
  border-radius:16px;
  background:#f5e4df;
  color:#9f1f1f;
  font-size:25px;
  line-height:1;
  font-weight:900;
  cursor:pointer;
}

.request-fit-dialog-v63 h2{
  color:var(--navy);
  font-size:clamp(34px,4vw,52px);
  line-height:1;
  letter-spacing:-.012em;
  margin:20px 46px 12px 0;
  font-weight:900;
}

.request-fit-dialog-v63 > strong{
  display:block;
  color:#9f1f1f;
  font-size:21px;
  line-height:1.2;
  margin-bottom:14px;
  font-weight:950;
}

.request-fit-dialog-v63 p{
  color:var(--muted);
  font-size:17px;
  line-height:1.65;
  font-weight:750;
  margin:0 0 18px;
}

.request-fit-dialog-v63 ul{
  display:grid;
  gap:10px;
  margin:0 0 24px;
  padding:0;
  list-style:none;
}

.request-fit-dialog-v63 li{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:13px 14px;
  border-radius:18px;
  background:var(--cream);
  border:1px solid rgba(8,20,38,.07);
  color:var(--navy);
  font-weight:900;
  line-height:1.35;
}

.request-fit-dialog-v63 li::before{
  content:"✓";
  width:28px;
  height:28px;
  flex:0 0 28px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:#fff;
  background:linear-gradient(135deg,var(--red),var(--navy));
  font-size:14px;
  font-weight:950;
}

.request-fit-actions-v63{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.request-fit-actions-v63 .btn{
  flex:1 1 220px;
  justify-content:center;
}

@media(max-width:600px){
  .request-fit-dialog-v63{
    padding:26px;
    border-radius:28px;
  }

  .request-fit-close-v63{
    top:14px;
    right:14px;
  }

  .request-fit-dialog-v63 h2{
    font-size:34px;
  }
}


/* v64: Recommended Service Packages on industry detail pages */
.industry-packages-section-v64{
  background:#fff !important;
  padding-top:68px !important;
  padding-bottom:68px !important;
}

.industry-packages-section-v64 .container-wide{
  width:min(92%,1450px) !important;
  max-width:1450px !important;
  margin-inline:auto !important;
}

.industry-package-grid-v64{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.industry-package-grid-v64 article{
  min-height:520px;
  padding:30px;
  border-radius:34px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 10%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#071426,#243c5a);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 22px 64px rgba(8,20,38,.14);
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}

.industry-package-grid-v64 article:nth-child(2){
  background:
    radial-gradient(circle at 88% 10%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#126a7a,#071426);
}

.industry-package-grid-v64 article:nth-child(3){
  background:
    radial-gradient(circle at 88% 10%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#b22a26,#2b1020);
}

.industry-package-grid-v64 article::before{
  content:"";
  position:absolute;
  top:-56px;
  right:-56px;
  width:170px;
  height:170px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
}

.industry-package-grid-v64 article > span{
  width:max-content;
  display:inline-flex;
  align-items:center;
  padding:10px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  color:rgba(255,255,255,.78);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:11px;
  font-weight:950;
  margin-bottom:24px;
  position:relative;
  z-index:1;
}

.industry-package-grid-v64 h3{
  position:relative;
  z-index:1;
  color:#fff;
  font-size:clamp(28px,2.4vw,40px);
  line-height:1.02;
  font-weight:900;
  margin:0 0 14px;
}

.industry-package-grid-v64 p{
  position:relative;
  z-index:1;
  color:rgba(255,255,255,.82);
  font-size:16px;
  line-height:1.55;
  font-weight:750;
  margin:0 0 20px;
}

.industry-package-grid-v64 ul{
  position:relative;
  z-index:1;
  display:grid;
  gap:10px;
  list-style:none;
  padding:0;
  margin:0 0 26px;
}

.industry-package-grid-v64 li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:#fff;
  font-size:15px;
  line-height:1.35;
  font-weight:850;
}

.industry-package-grid-v64 li::before{
  content:"✓";
  width:25px;
  height:25px;
  flex:0 0 25px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-size:13px;
  font-weight:950;
}

.industry-package-grid-v64 .btn{
  position:relative;
  z-index:1;
  margin-top:auto;
  width:100%;
  justify-content:center;
  background:#fff !important;
  color:#071426 !important;
}

.industry-package-grid-v64 .btn:hover{
  transform:translateY(-2px);
}

@media(max-width:1180px){
  .industry-package-grid-v64{
    grid-template-columns:1fr;
  }

  .industry-package-grid-v64 article{
    min-height:unset;
  }
}

@media(max-width:640px){
  .industry-package-grid-v64 article{
    padding:24px;
    border-radius:28px;
  }
}


/* v65: Government & Public Sector industry + county revenue service */
.government-industry,
.industry-service-card-v59.government-industry,
.industry-service-hero-v59.government-industry{
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#071426 0%,#314766 48%,#7f1f35 100%) !important;
}

.industry-service-card-v59.government-industry h3,
.industry-service-grid-v59 h3{
  overflow-wrap:anywhere;
}

.industry-service-card-v59.government-industry em{
  color:#ffe45c !important;
}

.service-card-v49 h3,
.service-group-card-v49 h3,
.industry-service-grid-v59 h3,
.related-grid span{
  overflow-wrap:anywhere;
}

/* Give very long service name room on service cards */
.service-card-v49,
.service-group-card-v49{
  min-width:0;
}

@media(max-width:760px){
  .industry-service-card-v59.government-industry h3{
    font-size:30px;
  }
}


/* v66: Full conversion and QA polish */

/* Homepage service-first conversion section */
.home-service-pathways-v66{
  background:#fff !important;
}

.home-service-path-grid-v66{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.home-service-path-grid-v66 article{
  min-height:340px;
  padding:30px;
  border-radius:34px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#071426,#243c5a);
  box-shadow:0 22px 64px rgba(8,20,38,.12);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.home-service-path-grid-v66 article:nth-child(2){
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#126a7a,#071426);
}

.home-service-path-grid-v66 article:nth-child(3){
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#b22a26,#2b1020);
}

.home-service-path-grid-v66 article::before{
  content:"";
  position:absolute;
  top:-48px;
  right:-48px;
  width:160px;
  height:160px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
}

.home-service-path-grid-v66 span{
  position:absolute;
  top:24px;
  left:24px;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:19px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-weight:950;
}

.home-service-path-grid-v66 h3{
  position:relative;
  z-index:1;
  color:#fff;
  font-size:clamp(25px,2.2vw,36px);
  line-height:1.03;
  font-weight:900;
  margin:0 0 14px;
}

.home-service-path-grid-v66 p{
  position:relative;
  z-index:1;
  color:rgba(255,255,255,.82);
  font-size:16px;
  line-height:1.55;
  font-weight:750;
  margin:0 0 20px;
}

.home-service-path-grid-v66 a{
  position:relative;
  z-index:1;
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:12px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  font-weight:950;
}

/* QA: avoid horizontal overflow from long titles or tags */
html, body{
  max-width:100%;
  overflow-x:hidden;
}

h1, h2, h3, h4, p, a, button, span, strong, em, li{
  overflow-wrap:break-word;
}

.container-wide{
  max-width:min(94vw,1560px);
}

/* QA: service and industry hero spacing */
.service-detail-hero-v50,
.industry-service-hero-v59,
.industries-services-hero-v59{
  min-height:auto !important;
}

.service-detail-grid-v50,
.industry-service-hero-grid-v59,
.industries-services-grid-v59{
  min-width:0 !important;
}

.service-detail-grid-v50 > *,
.industry-service-hero-grid-v59 > *,
.industries-services-grid-v59 > *{
  min-width:0 !important;
}

/* QA: request and package buttons should feel clickable and conversion-focused */
.industry-request-chips-v59 button,
.industry-package-grid-v64 .btn,
[data-open-enquiry],
[data-open-request-fit]{
  transition:transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

.industry-request-chips-v59 button:hover,
.industry-package-grid-v64 .btn:hover,
[data-open-enquiry]:hover,
[data-open-request-fit]:hover{
  filter:saturate(1.04);
}

/* QA: Popups should always sit above all sticky/nav elements */
.modal-backdrop{
  z-index:10080 !important;
}

.request-fit-modal-v63{
  z-index:10070 !important;
}

/* QA: Keep enquiry modal scrollable on smaller screens */
.enquiry-modal{
  max-height:92vh !important;
  overflow:auto !important;
}

/* QA: Government and county revenue long labels */
.government-industry h1,
.government-industry h2,
.government-industry h3,
.service-detail-grid-v50 h1{
  text-wrap:balance;
}

/* QA: industry cards have consistent sizing but no awkward clipping */
.industry-service-card-v59,
.industry-service-grid-v59 article,
.industry-package-grid-v64 article{
  min-width:0 !important;
}

.industry-service-card-v59 em{
  line-height:1.35;
}

/* QA: footer and related cards */
.related-grid a{
  min-width:0;
}

.related-grid span{
  line-height:1.15;
}

/* Mobile QA */
@media(max-width:1180px){
  .home-service-path-grid-v66{
    grid-template-columns:1fr;
  }

  .home-service-path-grid-v66 article{
    min-height:280px;
  }
}

@media(max-width:760px){
  .home-service-path-grid-v66 article{
    padding:24px;
    border-radius:28px;
    min-height:260px;
  }

  .home-service-path-grid-v66 a{
    width:100%;
    justify-content:center;
  }

  .service-detail-hero-v50,
  .industry-service-hero-v59,
  .industries-services-hero-v59{
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .enquiry-modal{
    width:min(94vw,680px) !important;
  }
}


/* v67: About page redesign */
.about-hero-v67{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:152px 0 78px;
  background:
    radial-gradient(circle at 14% 18%,rgba(18,106,122,.34),transparent 26%),
    radial-gradient(circle at 84% 18%,rgba(178,42,38,.26),transparent 24%),
    linear-gradient(135deg,#071426 0%,#243c5a 48%,#126a7a 100%);
}

.about-hero-pattern-v67{
  position:absolute;
  inset:0;
  opacity:.16;
  background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px);
  background-size:42px 42px;
}

.about-hero-grid-v67{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,440px);
  gap:46px;
  align-items:center;
}

.about-hero-grid-v67 h1{
  font-size:clamp(42px,4.8vw,76px);
  line-height:1;
  letter-spacing:-.016em;
  margin:22px 0 18px;
  max-width:980px;
}

.about-hero-grid-v67 p{
  color:rgba(255,255,255,.84);
  font-size:18px;
  line-height:1.65;
  max-width:860px;
}

.about-hero-card-v67{
  min-height:280px;
  border-radius:34px;
  padding:32px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 30px 80px rgba(0,0,0,.22);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.about-hero-card-v67::before{
  content:"";
  position:absolute;
  right:-74px;
  top:-74px;
  width:210px;
  height:210px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
}

.about-hero-card-v67 span{
  position:absolute;
  top:30px;
  left:32px;
  color:rgba(255,255,255,.72);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:12px;
  font-weight:900;
}

.about-hero-card-v67 strong{
  color:#fff;
  font-size:clamp(29px,2.7vw,44px);
  line-height:1;
  font-weight:900;
  margin-bottom:14px;
}

.about-hero-card-v67 p{
  color:rgba(255,255,255,.80);
  font-size:16px;
  line-height:1.55;
  font-weight:800;
}

.about-story-v67,
.about-focus-v67,
.about-team-v67{
  background:#fff;
}

.about-story-grid-v67{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:42px;
  align-items:start;
}

.about-story-grid-v67 h2,
.about-focus-v67 h2,
.about-team-v67 h2{
  font-size:clamp(34px,3.8vw,62px);
  line-height:1;
  letter-spacing:-.015em;
}

.about-copy-v67{
  display:grid;
  gap:18px;
}

.about-copy-v67 p{
  color:var(--muted);
  font-size:18px;
  line-height:1.78;
  font-weight:700;
}

.about-stat-grid-v67{
  margin-top:28px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.about-stat-grid-v67 article{
  padding:20px;
  border-radius:24px;
  background:var(--cream);
  border:1px solid var(--line);
}

.about-stat-grid-v67 strong{
  display:block;
  color:var(--red);
  font-size:34px;
  line-height:1;
  font-weight:950;
}

.about-stat-grid-v67 span{
  display:block;
  color:var(--navy);
  font-size:13px;
  font-weight:900;
  margin-top:8px;
}

.about-mission-v67{
  background:var(--cream);
}

.mission-grid-v67{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.mission-grid-v67 article{
  min-height:360px;
  padding:30px;
  border-radius:34px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#071426,#243c5a);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  box-shadow:0 22px 64px rgba(8,20,38,.12);
  position:relative;
  overflow:hidden;
}

.mission-grid-v67 article:nth-child(2){background:linear-gradient(135deg,#126a7a,#071426);}
.mission-grid-v67 article:nth-child(3){background:linear-gradient(135deg,#b22a26,#2b1020);}

.mission-grid-v67 article > span{
  position:absolute;
  top:28px;
  left:30px;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:12px;
  color:rgba(255,255,255,.72);
  font-weight:950;
}

.mission-grid-v67 h3{
  color:#fff;
  font-size:clamp(28px,2.5vw,42px);
  line-height:1.02;
  font-weight:900;
  margin:0 0 14px;
}

.mission-grid-v67 p{
  color:rgba(255,255,255,.82);
  line-height:1.62;
  font-weight:750;
}

.about-focus-grid-v67{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.about-focus-grid-v67 article{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:116px;
  padding:22px;
  border-radius:24px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 14px 40px rgba(8,20,38,.06);
}

.about-focus-grid-v67 span{
  width:46px;
  height:46px;
  flex:0 0 46px;
  display:grid;
  place-items:center;
  border-radius:16px;
  color:#fff;
  background:linear-gradient(135deg,var(--red),var(--navy));
  font-weight:950;
}

.about-focus-grid-v67 strong{
  color:var(--navy);
  font-size:18px;
  line-height:1.2;
  font-weight:950;
}

.team-grid-v67{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.team-grid-v67 article{
  min-height:380px;
  padding:30px;
  border-radius:34px;
  background:
    radial-gradient(circle at 88% 12%,rgba(18,106,122,.08),transparent 28%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.team-avatar-v67{
  position:absolute;
  top:28px;
  left:30px;
  width:76px;
  height:76px;
  border-radius:28px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,var(--red),var(--navy));
  font-size:34px;
  font-weight:950;
  box-shadow:0 18px 38px rgba(8,20,38,.18);
}

.team-grid-v67 article > span{
  color:#9f1f1f;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  margin-bottom:12px;
}

.team-grid-v67 h3{
  color:var(--navy);
  font-size:clamp(27px,2.4vw,38px);
  line-height:1;
  font-weight:950;
  margin:0 0 14px;
}

.team-grid-v67 p{
  color:var(--muted);
  line-height:1.6;
  font-weight:750;
}

/* v67: Admin dashboard */
.admin-body-v67{
  min-height:100vh;
  background:#f5f2ed;
  color:#071426;
  display:grid;
  grid-template-columns:290px 1fr;
}

.admin-sidebar-v67{
  position:sticky;
  top:0;
  height:100vh;
  padding:24px;
  background:#071426;
  color:#fff;
  overflow:auto;
}

.admin-brand-v67{
  display:block;
  padding:16px;
  border-radius:24px;
  background:#fff;
  margin-bottom:24px;
}

.admin-brand-v67 img{
  width:100%;
  height:auto;
}

.admin-sidebar-v67 nav{
  display:grid;
  gap:10px;
}

.admin-sidebar-v67 nav a{
  display:flex;
  align-items:center;
  padding:14px 16px;
  border-radius:16px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-weight:900;
}

.admin-sidebar-v67 nav a:hover{
  background:rgba(255,255,255,.14);
}

.admin-main-v67{
  padding:30px;
  min-width:0;
}

.admin-page-head-v67{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-end;
  padding:30px;
  border-radius:34px;
  color:#fff;
  background:linear-gradient(135deg,#071426,#243c5a);
  box-shadow:0 22px 64px rgba(8,20,38,.13);
  margin-bottom:22px;
}

.admin-page-head-v67 span,
.admin-card-head-v67 span{
  display:inline-flex;
  color:#ffe45c;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  font-weight:950;
  margin-bottom:10px;
}

.admin-page-head-v67 h1{
  color:#fff;
  font-size:clamp(34px,3.6vw,58px);
  line-height:1;
  font-weight:950;
  margin:0 0 10px;
}

.admin-page-head-v67 p{
  color:rgba(255,255,255,.80);
  font-size:16px;
  line-height:1.55;
  font-weight:750;
}

.admin-stat-grid-v67,
.admin-action-grid-v67{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:22px;
}

.admin-stat-grid-v67 article,
.admin-action-grid-v67 a,
.admin-card-v67{
  background:#fff;
  border:1px solid rgba(8,20,38,.08);
  border-radius:28px;
  box-shadow:0 16px 46px rgba(8,20,38,.07);
}

.admin-stat-grid-v67 article{
  padding:24px;
}

.admin-stat-grid-v67 span{
  color:#68758a;
  font-weight:900;
}

.admin-stat-grid-v67 strong{
  display:block;
  color:#b22a26;
  font-size:42px;
  line-height:1;
  font-weight:950;
  margin-top:10px;
}

.admin-card-v67{
  padding:24px;
  margin-bottom:22px;
}

.admin-card-head-v67{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:18px;
}

.admin-card-head-v67 h2{
  color:#071426;
  font-size:28px;
  line-height:1.05;
  font-weight:950;
  margin:0;
}

.admin-table-wrap-v67{
  overflow:auto;
}

.admin-table-v67{
  width:100%;
  border-collapse:collapse;
  min-width:780px;
}

.admin-table-v67 th,
.admin-table-v67 td{
  text-align:left;
  padding:15px;
  border-bottom:1px solid rgba(8,20,38,.08);
  vertical-align:top;
}

.admin-table-v67 th{
  color:#68758a;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-weight:950;
}

.lead-status-v67{
  display:inline-flex;
  padding:8px 11px;
  border-radius:999px;
  background:#eef2f7;
  color:#071426;
  font-size:12px;
  font-weight:950;
}

.status-new{background:#fff4cf;color:#8a5a00;}
.status-contacted{background:#dff8ff;color:#075b68;}
.status-quoted{background:#ede7ff;color:#4b238f;}
.status-won{background:#dcfce7;color:#166534;}
.status-lost{background:#fee2e2;color:#991b1b;}

.admin-filter-form-v67{
  display:grid;
  grid-template-columns:1.2fr .7fr 1fr auto;
  gap:12px;
  align-items:end;
}

.admin-filter-form-v67 label,
.admin-ajax-form-v67 label,
.admin-login-card-v67 label{
  display:grid;
  gap:8px;
  color:#071426;
  font-weight:900;
}

.admin-filter-form-v67 input,
.admin-filter-form-v67 select,
.admin-ajax-form-v67 input,
.admin-ajax-form-v67 select,
.admin-ajax-form-v67 textarea,
.admin-login-card-v67 input{
  width:100%;
  border:1px solid rgba(8,20,38,.12);
  border-radius:16px;
  padding:14px 15px;
  font:inherit;
  background:#fff;
}

.admin-actions-v67{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.admin-actions-v67 a,
.admin-card-head-v67 a,
.admin-action-grid-v67 a{
  font-weight:950;
  color:#9f1f1f;
}

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

.admin-action-grid-v67 a{
  display:block;
  padding:24px;
  color:#071426;
}

.admin-action-grid-v67 span{
  color:#9f1f1f;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  font-weight:950;
}

.admin-action-grid-v67 strong{
  display:block;
  font-size:26px;
  line-height:1.05;
  margin:12px 0;
}

.admin-action-grid-v67 em{
  color:#68758a;
  font-style:normal;
  font-weight:750;
}

.admin-lead-grid-v67{
  display:grid;
  grid-template-columns:1.1fr .8fr;
  gap:22px;
  align-items:start;
}

.admin-detail-list-v67{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:12px 18px;
}

.admin-detail-list-v67 dt{
  color:#68758a;
  font-weight:950;
}

.admin-detail-list-v67 dd{
  margin:0;
  color:#071426;
  font-weight:750;
}

.admin-lead-actions-v67{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}

.admin-json-v67{
  background:#071426;
  color:#fff;
  border-radius:22px;
  padding:20px;
  overflow:auto;
}

.admin-form-section-v67{
  padding:22px;
  border-radius:24px;
  background:#f8f5ef;
  border:1px solid rgba(8,20,38,.08);
  margin-bottom:18px;
}

.admin-form-section-v67 h2{
  color:#071426;
  font-size:26px;
  margin:0 0 18px;
}

.admin-team-edit-v67{
  display:grid;
  gap:12px;
  padding:16px;
  background:#fff;
  border:1px solid rgba(8,20,38,.08);
  border-radius:22px;
  margin-bottom:12px;
}

.admin-alert-v67,
.server-message{
  padding:13px 15px;
  border-radius:16px;
  font-weight:900;
  margin-bottom:14px;
}

.admin-alert-v67.error,
.server-message.error{background:#fee2e2;color:#991b1b;}
.server-message.success{background:#dcfce7;color:#166534;}

.admin-login-body-v67{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:22px;
  background:
    radial-gradient(circle at 20% 20%,rgba(18,106,122,.22),transparent 28%),
    linear-gradient(135deg,#071426,#243c5a);
}

.admin-login-card-v67{
  width:min(94vw,480px);
  padding:34px;
  border-radius:34px;
  background:#fff;
  box-shadow:0 34px 100px rgba(0,0,0,.28);
}

.admin-login-card-v67 img{
  display:block;
  margin-bottom:24px;
}

.admin-login-card-v67 > span{
  display:inline-flex;
  color:#9f1f1f;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  font-weight:950;
}

.admin-login-card-v67 h1{
  color:#071426;
  font-size:42px;
  line-height:1;
  margin:14px 0 10px;
}

.admin-login-card-v67 p{
  color:#68758a;
  font-weight:750;
  margin-bottom:22px;
}

.admin-login-card-v67 form{
  display:grid;
  gap:14px;
}

@media(max-width:1180px){
  .about-hero-grid-v67,
  .about-story-grid-v67,
  .mission-grid-v67,
  .team-grid-v67,
  .admin-lead-grid-v67{
    grid-template-columns:1fr;
  }

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

  .admin-body-v67{
    grid-template-columns:1fr;
  }

  .admin-sidebar-v67{
    position:relative;
    height:auto;
  }

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

  .admin-filter-form-v67{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){
  .about-hero-v67{
    padding:130px 0 62px;
  }

  .about-hero-grid-v67 h1{
    font-size:38px;
  }

  .about-stat-grid-v67,
  .about-focus-grid-v67,
  .admin-stat-grid-v67,
  .admin-action-grid-v67{
    grid-template-columns:1fr;
  }

  .about-hero-card-v67,
  .mission-grid-v67 article,
  .team-grid-v67 article{
    min-height:unset;
    padding:24px;
    border-radius:28px;
  }

  .team-avatar-v67{
    position:static;
    margin-bottom:90px;
  }

  .admin-main-v67{
    padding:18px;
  }

  .admin-page-head-v67{
    display:block;
    padding:24px;
    border-radius:28px;
  }

  .admin-page-head-v67 .btn{
    width:100%;
    margin-top:16px;
  }

  .admin-detail-list-v67{
    grid-template-columns:1fr;
  }
}


/* v68: Homepage service-first redesign and cleanup */

/* Ticker immediately after hero */
.ticker-v68{
  margin-top:0 !important;
  border-top:0 !important;
  background:#fff7ef !important;
  border-bottom:1px solid rgba(8,20,38,.08) !important;
}

.ticker-v68 .ticker-track a{
  color:#071426 !important;
  font-weight:950 !important;
}

.ticker-v68 .ticker-track i{
  background:linear-gradient(135deg,#b22a26,#126a7a) !important;
}

.home-intro-v68{
  background:#fff !important;
  padding-top:76px !important;
  padding-bottom:56px !important;
}

.home-intro-grid-v68{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:42px;
  align-items:start;
}

.home-intro-grid-v68 h2{
  color:#071426;
  font-size:clamp(36px,4vw,66px);
  line-height:1;
  letter-spacing:-.015em;
  margin:18px 0 0;
  font-weight:950;
}

.home-intro-copy-v68{
  display:grid;
  gap:16px;
}

.home-intro-copy-v68 p{
  color:#68758a;
  font-size:18px;
  line-height:1.72;
  font-weight:750;
}

.home-services-v68{
  background:#f8f5ef !important;
}

.home-services-grid-v68{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.home-service-card-v68{
  min-height:430px;
  padding:28px;
  border-radius:34px;
  background:
    radial-gradient(circle at 88% 10%,rgba(18,106,122,.08),transparent 28%),
    #fff;
  border:1px solid rgba(8,20,38,.08);
  box-shadow:0 18px 54px rgba(8,20,38,.07);
  display:flex;
  flex-direction:column;
  position:relative;
  overflow:hidden;
  transition:transform .24s ease, box-shadow .24s ease;
}

.home-service-card-v68:hover{
  transform:translateY(-5px);
  box-shadow:0 26px 70px rgba(8,20,38,.11);
}

.home-service-icon-v68{
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  border-radius:23px;
  color:#fff;
  background:linear-gradient(135deg,#b22a26,#071426);
  font-size:30px;
  font-weight:950;
  box-shadow:0 16px 34px rgba(8,20,38,.16);
  margin-bottom:30px;
}

.home-service-card-v68 h3{
  color:#071426;
  font-size:clamp(24px,2vw,33px);
  line-height:1.04;
  font-weight:950;
  margin:0 0 14px;
}

.home-service-card-v68 p{
  color:#68758a;
  line-height:1.58;
  font-weight:750;
  margin:0 0 20px;
}

.home-service-keywords-v68{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:auto;
  margin-bottom:22px;
}

.home-service-keywords-v68 span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:9px 11px;
  border-radius:999px;
  background:#fff4ef;
  color:#9f1f1f;
  border:1px solid rgba(178,42,38,.13);
  font-size:12px;
  line-height:1;
  font-weight:950;
}

.home-service-actions-v68{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}

.home-view-service-v68{
  flex:1 1 170px;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  min-height:48px;
  padding:13px 16px;
  border-radius:999px;
  color:#fff !important;
  background:linear-gradient(135deg,#071426,#243c5a);
  font-weight:950;
  box-shadow:0 14px 30px rgba(8,20,38,.13);
}

.home-view-service-v68:hover{
  transform:translateY(-2px);
  box-shadow:0 20px 40px rgba(8,20,38,.17);
}

.home-service-actions-v68 button{
  flex:0 0 auto;
  min-height:48px;
  padding:13px 15px;
  border-radius:999px;
  border:1px solid rgba(8,20,38,.10);
  background:#fff;
  color:#9f1f1f;
  font-weight:950;
  cursor:pointer;
}

.home-service-pathways-v68{
  background:#fff !important;
}

.home-packages-v68{
  background:#f8f5ef !important;
}

.home-package-grid-v68{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.home-package-grid-v68 article{
  min-height:480px;
  padding:30px;
  border-radius:34px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 10%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#071426,#243c5a);
  box-shadow:0 22px 64px rgba(8,20,38,.13);
  display:flex;
  flex-direction:column;
  position:relative;
  overflow:hidden;
}

.home-package-grid-v68 article:nth-child(2){
  background:
    radial-gradient(circle at 88% 10%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#126a7a,#071426);
}

.home-package-grid-v68 article:nth-child(3){
  background:
    radial-gradient(circle at 88% 10%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(135deg,#b22a26,#2b1020);
}

.home-package-grid-v68 article > span{
  width:max-content;
  max-width:100%;
  display:inline-flex;
  padding:10px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  color:rgba(255,255,255,.82);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:11px;
  font-weight:950;
  margin-bottom:26px;
}

.home-package-grid-v68 h3{
  color:#fff;
  font-size:clamp(27px,2.35vw,40px);
  line-height:1.02;
  font-weight:950;
  margin:0 0 14px;
}

.home-package-grid-v68 p{
  color:rgba(255,255,255,.82);
  line-height:1.58;
  font-weight:750;
  margin:0 0 20px;
}

.home-package-grid-v68 ul{
  list-style:none;
  padding:0;
  margin:0 0 26px;
  display:grid;
  gap:10px;
}

.home-package-grid-v68 li{
  display:flex;
  gap:10px;
  color:#fff;
  font-weight:850;
  line-height:1.35;
}

.home-package-grid-v68 li::before{
  content:"✓";
  width:24px;
  height:24px;
  flex:0 0 24px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.18);
  font-size:12px;
  font-weight:950;
}

.home-package-grid-v68 .btn{
  margin-top:auto;
  background:#fff !important;
  color:#071426 !important;
  justify-content:center;
}

.products-preview-v68{
  background:#fff !important;
}

.home-industries-v68{
  background:#f8f5ef !important;
}

.home-industry-grid-v68{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.home-industry-grid-v68 a{
  min-height:150px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(8,20,38,.08);
  box-shadow:0 14px 40px rgba(8,20,38,.06);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  color:#071426;
}

.home-industry-grid-v68 span{
  font-size:22px;
  line-height:1.05;
  font-weight:950;
}

.home-industry-grid-v68 b{
  color:#9f1f1f;
  font-size:13px;
  line-height:1.35;
}

@media(max-width:1180px){
  .home-intro-grid-v68,
  .home-services-grid-v68,
  .home-package-grid-v68,
  .home-industry-grid-v68{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:760px){
  .home-intro-grid-v68,
  .home-services-grid-v68,
  .home-package-grid-v68,
  .home-industry-grid-v68{
    grid-template-columns:1fr;
  }

  .home-intro-v68{
    padding-top:56px !important;
  }

  .home-service-card-v68,
  .home-package-grid-v68 article{
    min-height:unset;
    padding:24px;
    border-radius:28px;
  }

  .home-service-actions-v68 button,
  .home-view-service-v68{
    width:100%;
    flex:1 1 100%;
  }
}


/* v69: Fix broken homepage Products preview section */
.products-preview-v68,
.products-preview-v68 .product-highlight,
.products-preview-v68 .product-stack{
  min-height:0 !important;
  height:auto !important;
}

.home-product-proof-v69{
  background:#fff !important;
  padding-top:78px !important;
  padding-bottom:78px !important;
}

.home-product-proof-card-v69{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:28px;
  align-items:stretch;
  padding:34px;
  border-radius:38px;
  color:#fff;
  background:
    radial-gradient(circle at 15% 15%,rgba(18,106,122,.28),transparent 30%),
    radial-gradient(circle at 90% 10%,rgba(178,42,38,.22),transparent 28%),
    linear-gradient(135deg,#071426 0%,#243c5a 52%,#126a7a 100%);
  box-shadow:0 28px 86px rgba(8,20,38,.18);
  border:1px solid rgba(255,255,255,.14);
  overflow:hidden;
  position:relative;
}

.home-product-proof-card-v69::before{
  content:"";
  position:absolute;
  width:240px;
  height:240px;
  border-radius:50%;
  right:-90px;
  top:-90px;
  border:1px solid rgba(255,255,255,.18);
}

.home-product-proof-copy-v69{
  position:relative;
  z-index:1;
  min-height:420px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:12px 10px;
}

.home-product-proof-copy-v69 h2{
  color:#fff;
  font-size:clamp(36px,4vw,66px);
  line-height:1;
  letter-spacing:-.015em;
  font-weight:950;
  margin:20px 0 18px;
  max-width:820px;
}

.home-product-proof-copy-v69 p{
  color:rgba(255,255,255,.82);
  font-size:18px;
  line-height:1.65;
  font-weight:750;
  max-width:760px;
  margin:0 0 26px;
}

.home-product-proof-actions-v69{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.home-product-proof-list-v69{
  position:relative;
  z-index:1;
  display:grid;
  gap:12px;
  align-content:center;
}

.home-product-proof-list-v69 a,
.home-product-proof-list-v69 div{
  min-height:76px;
  padding:18px 20px;
  border-radius:24px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  backdrop-filter:blur(12px);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  transition:transform .22s ease, background .22s ease;
}

.home-product-proof-list-v69 a:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.18);
}

.home-product-proof-list-v69 b{
  color:#fff;
  font-size:20px;
  line-height:1.1;
  font-weight:950;
}

.home-product-proof-list-v69 span{
  color:#ffe45c;
  font-size:13px;
  font-weight:950;
  text-align:right;
  white-space:nowrap;
}

@media(max-width:1080px){
  .home-product-proof-card-v69{
    grid-template-columns:1fr;
  }

  .home-product-proof-copy-v69{
    min-height:unset;
  }
}

@media(max-width:680px){
  .home-product-proof-v69{
    padding-top:54px !important;
    padding-bottom:54px !important;
  }

  .home-product-proof-card-v69{
    padding:24px;
    border-radius:30px;
  }

  .home-product-proof-copy-v69 h2{
    font-size:36px;
  }

  .home-product-proof-list-v69 a,
  .home-product-proof-list-v69 div{
    display:block;
  }

  .home-product-proof-list-v69 span{
    display:block;
    text-align:left;
    margin-top:8px;
    white-space:normal;
  }

  .home-product-proof-actions-v69 .btn{
    width:100%;
    justify-content:center;
  }
}


/* v70 homepage intro redesign */
.home-intro-v70{
  background:linear-gradient(180deg,#fff 0%,#f8f5ef 100%) !important;
  padding:78px 0 64px !important;
}

.home-intro-shell-v70{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);
  gap:26px;
  align-items:stretch;
}

.home-intro-main-v70,
.home-intro-card-v70{
  border-radius:38px;
  position:relative;
  overflow:hidden;
}

.home-intro-main-v70{
  padding:38px 38px 34px;
  background:
    radial-gradient(circle at 82% 10%,rgba(178,42,38,.10),transparent 28%),
    radial-gradient(circle at 12% 88%,rgba(18,106,122,.11),transparent 30%),
    #fff;
  border:1px solid rgba(8,20,38,.08);
  box-shadow:0 20px 60px rgba(8,20,38,.08);
}

.home-intro-main-v70 h2{
  color:#071426;
  font-size:clamp(42px,4.6vw,78px);
  line-height:.96;
  letter-spacing:-.025em;
  margin:18px 0 18px;
  font-weight:950;
  max-width:11ch;
}

.home-intro-main-v70 p{
  color:#657389;
  font-size:19px;
  line-height:1.72;
  font-weight:760;
  max-width:760px;
  margin:0;
}

.home-intro-pills-v70{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:26px;
}

.home-intro-pills-v70 span{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:12px 15px;
  border-radius:999px;
  background:#fff4ef;
  border:1px solid rgba(178,42,38,.14);
  color:#9f1f1f;
  font-size:13px;
  line-height:1;
  font-weight:950;
  box-shadow:0 10px 22px rgba(178,42,38,.07);
}

.home-intro-card-v70{
  min-height:100%;
  padding:32px;
  background:
    radial-gradient(circle at 90% 10%,rgba(255,255,255,.12),transparent 22%),
    linear-gradient(135deg,#071426 0%,#243c5a 54%,#126a7a 100%);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 28px 78px rgba(8,20,38,.16);
  color:#fff;
}

.home-intro-card-kicker-v70{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:11px;
  font-weight:950;
}

.home-intro-steps-v70{
  display:grid;
  gap:16px;
  margin-top:22px;
}

.home-intro-steps-v70 article{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:14px;
  align-items:start;
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(10px);
}

.home-intro-steps-v70 b{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:18px;
  color:#fff;
  font-size:18px;
  font-weight:950;
  background:linear-gradient(135deg,#b22a26,#2b1020);
  box-shadow:0 14px 32px rgba(0,0,0,.18);
}

.home-intro-steps-v70 h3{
  color:#fff;
  font-size:23px;
  line-height:1.05;
  font-weight:950;
  margin:2px 0 8px;
}

.home-intro-steps-v70 p{
  color:rgba(255,255,255,.82);
  font-size:15px;
  line-height:1.65;
  font-weight:760;
  margin:0;
}

.home-intro-stats-v70{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:18px;
}

.home-intro-stats-v70 article{
  min-height:116px;
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.12);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.home-intro-stats-v70 strong{
  color:#ffe45c;
  font-size:24px;
  line-height:1;
  font-weight:950;
  margin-bottom:8px;
}

.home-intro-stats-v70 span{
  color:rgba(255,255,255,.84);
  font-size:13px;
  line-height:1.45;
  font-weight:850;
}

@media (max-width:1100px){
  .home-intro-shell-v70{grid-template-columns:1fr;}
  .home-intro-main-v70 h2{max-width:14ch;}
}

@media (max-width:760px){
  .home-intro-v70{padding:54px 0 46px !important;}
  .home-intro-main-v70,.home-intro-card-v70{padding:24px;border-radius:28px;}
  .home-intro-main-v70 h2{font-size:42px;max-width:none;}
  .home-intro-main-v70 p{font-size:17px;}
  .home-intro-steps-v70 article{grid-template-columns:1fr;}
  .home-intro-steps-v70 b{width:52px;height:52px;border-radius:16px;}
  .home-intro-stats-v70{grid-template-columns:1fr;}
}


/* v72: Legal, News & Careers pages + footer links */
.footer-main.footer-main-clean{
  grid-template-columns:1.35fr repeat(5,minmax(0,1fr));
}

.footer-legal-links-v72{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}

.footer-legal-links-v72 a{
  color:#94a4ba;
  font-weight:850;
}

.footer-legal-links-v72 a:hover{
  color:#fff;
}

.legal-hero-v72,
.news-hero-v72,
.careers-hero-v72{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:150px 0 82px;
  background:
    radial-gradient(circle at 16% 18%,rgba(18,106,122,.32),transparent 28%),
    radial-gradient(circle at 84% 20%,rgba(178,42,38,.24),transparent 25%),
    linear-gradient(135deg,#071426 0%,#243c5a 52%,#126a7a 100%);
}

.privacy-hero-v72{
  background:
    radial-gradient(circle at 16% 18%,rgba(178,42,38,.24),transparent 28%),
    radial-gradient(circle at 84% 20%,rgba(18,106,122,.28),transparent 25%),
    linear-gradient(135deg,#071426 0%,#1d2942 52%,#2b1020 100%);
}

.legal-pattern-v72,
.news-pattern-v72,
.careers-pattern-v72{
  position:absolute;
  inset:0;
  opacity:.15;
  background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px);
  background-size:42px 42px;
}

.legal-hero-inner-v72,
.news-hero-grid-v72,
.careers-hero-grid-v72{
  position:relative;
  z-index:2;
}

.legal-hero-inner-v72 h1,
.news-hero-grid-v72 h1,
.careers-hero-grid-v72 h1{
  color:#fff;
  font-size:clamp(42px,5vw,82px);
  line-height:.98;
  letter-spacing:-.022em;
  font-weight:950;
  max-width:1000px;
  margin:22px 0 18px;
}

.legal-hero-inner-v72 p,
.news-hero-grid-v72 p,
.careers-hero-grid-v72 p{
  color:rgba(255,255,255,.82);
  font-size:18px;
  line-height:1.65;
  font-weight:750;
  max-width:850px;
}

.legal-hero-inner-v72 small{
  display:inline-flex;
  margin-top:20px;
  color:#ffe45c;
  font-weight:950;
}

.legal-page-v72{
  background:#f8f5ef !important;
}

.legal-grid-v72{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:26px;
  align-items:start;
}

.legal-side-v72{
  position:sticky;
  top:130px;
  padding:24px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(8,20,38,.08);
  box-shadow:0 16px 46px rgba(8,20,38,.07);
  display:grid;
  gap:10px;
}

.legal-side-v72 strong{
  color:#071426;
  font-size:20px;
  font-weight:950;
  margin-bottom:8px;
}

.legal-side-v72 a{
  color:#9f1f1f;
  font-weight:900;
  padding:10px 0;
  border-bottom:1px solid rgba(8,20,38,.06);
}

.legal-content-v72{
  padding:34px;
  border-radius:34px;
  background:#fff;
  border:1px solid rgba(8,20,38,.08);
  box-shadow:0 16px 46px rgba(8,20,38,.07);
}

.legal-content-v72 section{
  padding:0 0 30px;
  margin:0 0 30px;
  border-bottom:1px solid rgba(8,20,38,.08);
}

.legal-content-v72 section:last-child{
  border-bottom:0;
  margin-bottom:0;
  padding-bottom:0;
}

.legal-content-v72 h2{
  color:#071426;
  font-size:clamp(26px,2.6vw,42px);
  line-height:1.05;
  font-weight:950;
  margin:0 0 14px;
}

.legal-content-v72 p{
  color:#657389;
  font-size:17px;
  line-height:1.78;
  font-weight:720;
  margin:0 0 12px;
}

.legal-content-v72 a{
  color:#9f1f1f;
  font-weight:950;
}

.news-hero-grid-v72,
.careers-hero-grid-v72{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,440px);
  gap:42px;
  align-items:center;
}

.news-hero-card-v72,
.careers-card-v72{
  min-height:300px;
  padding:32px;
  border-radius:34px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(14px);
  box-shadow:0 30px 80px rgba(0,0,0,.20);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.news-hero-card-v72 span,
.careers-card-v72 span{
  color:#ffe45c;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  font-weight:950;
  margin-bottom:16px;
}

.news-hero-card-v72 strong,
.careers-card-v72 strong{
  color:#fff;
  font-size:clamp(28px,2.7vw,42px);
  line-height:1;
  font-weight:950;
  margin-bottom:14px;
}

.news-list-section-v72,
.careers-section-v72{
  background:#fff !important;
}

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

.news-grid-v72 article,
.career-grid-v72 article{
  min-height:330px;
  padding:28px;
  border-radius:32px;
  background:
    radial-gradient(circle at 88% 12%,rgba(18,106,122,.08),transparent 28%),
    #fff;
  border:1px solid rgba(8,20,38,.08);
  box-shadow:0 16px 46px rgba(8,20,38,.07);
  display:flex;
  flex-direction:column;
}

.news-meta-v72{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-bottom:22px;
}

.news-meta-v72 span,
.career-grid-v72 article > span{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  padding:10px 13px;
  border-radius:999px;
  background:#fff4ef;
  color:#9f1f1f;
  border:1px solid rgba(178,42,38,.14);
  font-size:11px;
  line-height:1;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.07em;
}

.news-meta-v72 b{
  color:#657389;
  font-size:13px;
  font-weight:900;
}

.news-grid-v72 h3,
.career-grid-v72 h3{
  color:#071426;
  font-size:clamp(26px,2.4vw,40px);
  line-height:1.04;
  font-weight:950;
  margin:0 0 14px;
}

.news-grid-v72 p,
.career-grid-v72 p{
  color:#657389;
  line-height:1.62;
  font-weight:740;
  margin:0 0 24px;
}

.news-grid-v72 a,
.career-grid-v72 button{
  margin-top:auto;
  display:inline-flex;
  width:max-content;
  max-width:100%;
  align-items:center;
  gap:8px;
  min-height:46px;
  padding:13px 16px;
  border-radius:999px;
  border:0;
  color:#fff;
  background:linear-gradient(135deg,#071426,#243c5a);
  font-weight:950;
  cursor:pointer;
}

.careers-culture-v72{
  background:#f8f5ef !important;
}

.careers-culture-card-v72{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:center;
  padding:32px;
  border-radius:34px;
  background:#fff;
  border:1px solid rgba(8,20,38,.08);
  box-shadow:0 16px 46px rgba(8,20,38,.07);
}

.careers-culture-card-v72 h2{
  color:#071426;
  font-size:clamp(32px,3.6vw,56px);
  line-height:1;
  font-weight:950;
  margin:16px 0 14px;
}

.careers-culture-card-v72 p{
  color:#657389;
  line-height:1.68;
  font-weight:750;
  max-width:760px;
}

@media(max-width:1320px){
  .footer-main.footer-main-clean{
    grid-template-columns:1.4fr repeat(3,minmax(0,1fr));
  }
}

@media(max-width:1100px){
  .legal-grid-v72,
  .news-hero-grid-v72,
  .careers-hero-grid-v72{
    grid-template-columns:1fr;
  }

  .legal-side-v72{
    position:relative;
    top:auto;
  }

  .news-grid-v72,
  .career-grid-v72{
    grid-template-columns:1fr;
  }

  .careers-culture-card-v72{
    display:block;
  }

  .careers-culture-card-v72 .btn{
    margin-top:20px;
  }
}

@media(max-width:760px){
  .legal-hero-v72,
  .news-hero-v72,
  .careers-hero-v72{
    padding:130px 0 62px;
  }

  .legal-content-v72,
  .careers-culture-card-v72{
    padding:24px;
    border-radius:28px;
  }

  .news-grid-v72 article,
  .career-grid-v72 article{
    min-height:unset;
    padding:24px;
    border-radius:28px;
  }

  .footer-bottom{
    display:grid !important;
  }

  .footer-legal-links-v72{
    order:2;
  }
}


/* v73: Admin management for News & Updates and Careers */
.admin-content-shell-v73{
  background:
    radial-gradient(circle at 92% 4%,rgba(18,106,122,.08),transparent 24%),
    #fff;
}

.admin-two-grid-v73{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.admin-repeat-head-v73{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}

.admin-repeat-head-v73 h2{
  margin:0;
}

.admin-repeat-head-v73 p{
  color:#68758a;
  font-weight:760;
  line-height:1.55;
  max-width:520px;
  margin:0;
}

.admin-repeat-card-v73{
  padding:20px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(8,20,38,.08);
  box-shadow:0 10px 28px rgba(8,20,38,.045);
  margin-bottom:14px;
  display:grid;
  gap:14px;
}

.admin-repeat-title-v73{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:14px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(8,20,38,.08);
}

.admin-repeat-title-v73 strong{
  color:#071426;
  font-size:21px;
  font-weight:950;
}

.admin-repeat-title-v73 label{
  min-width:190px;
}

.admin-sidebar-v67 nav a[href*="content-news"],
.admin-sidebar-v67 nav a[href*="content-careers"]{
  background:rgba(178,42,38,.20);
}

@media(max-width:760px){
  .admin-two-grid-v73,
  .admin-repeat-title-v73{
    grid-template-columns:1fr;
    display:grid;
  }

  .admin-repeat-title-v73 label{
    min-width:0;
  }
}


/* v74: Premium news manager, WYSIWYG, images and clickable frontend cards */
.admin-three-grid-v74{
  display:grid;
  grid-template-columns:1fr 220px 1fr;
  gap:14px;
}

.admin-news-card-editor-v74{
  background:
    radial-gradient(circle at 96% 4%,rgba(18,106,122,.07),transparent 22%),
    #fff;
}

.admin-image-picker-v74{
  display:grid;
  grid-template-columns:260px 1fr;
  gap:16px;
  align-items:stretch;
  padding:16px;
  border-radius:22px;
  background:#f8f5ef;
  border:1px solid rgba(8,20,38,.08);
}

.admin-image-picker-v74 > div > span{
  display:block;
  color:#071426;
  font-weight:950;
  margin-bottom:10px;
}

.admin-image-preview-v74{
  min-height:170px;
  border-radius:20px;
  background:#fff;
  border:1px dashed rgba(8,20,38,.18);
  overflow:hidden;
  display:grid;
  place-items:center;
  color:#68758a;
  font-weight:900;
}

.admin-image-preview-v74 img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.admin-image-fields-v74{
  display:grid;
  gap:12px;
}

.admin-image-fields-v74 small{
  color:#68758a;
  font-weight:750;
}

.admin-wysiwyg-wrap-v74{
  display:grid;
  gap:8px;
}

.admin-wysiwyg-v74{
  border:1px solid rgba(8,20,38,.12);
  border-radius:22px;
  background:#fff;
  overflow:hidden;
}

.admin-wysiwyg-toolbar-v74{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:12px;
  background:#071426;
  border-bottom:1px solid rgba(255,255,255,.10);
}

.admin-wysiwyg-toolbar-v74 button{
  min-height:36px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:rgba(255,255,255,.10);
  color:#fff;
  padding:8px 11px;
  font-weight:950;
  cursor:pointer;
}

.admin-wysiwyg-toolbar-v74 button:hover{
  background:rgba(255,255,255,.18);
}

.admin-wysiwyg-editor-v74{
  min-height:260px;
  padding:18px;
  color:#071426;
  line-height:1.72;
  outline:none;
  font-weight:650;
}

.admin-wysiwyg-editor-v74 h2,
.admin-wysiwyg-editor-v74 h3{
  line-height:1.08;
  margin:16px 0 10px;
  font-weight:950;
}

.admin-wysiwyg-editor-v74 blockquote{
  margin:14px 0;
  padding:14px 16px;
  border-left:5px solid #b22a26;
  background:#fff4ef;
  border-radius:14px;
  color:#071426;
}

.news-list-section-v74{
  background:#fff !important;
}

.news-category-strip-v74{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 24px;
}

.news-category-strip-v74 button{
  min-height:42px;
  padding:11px 15px;
  border-radius:999px;
  border:1px solid rgba(8,20,38,.10);
  background:#fff;
  color:#071426;
  font-weight:950;
  cursor:pointer;
}

.news-category-strip-v74 button.active,
.news-category-strip-v74 button:hover{
  background:linear-gradient(135deg,#071426,#243c5a);
  color:#fff;
}

.news-card-grid-v74{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.news-card-v74{
  min-height:520px;
  display:flex;
  flex-direction:column;
  border-radius:32px;
  background:#fff;
  border:1px solid rgba(8,20,38,.08);
  box-shadow:0 18px 54px rgba(8,20,38,.08);
  color:#071426;
  overflow:hidden;
  transition:transform .24s ease, box-shadow .24s ease;
}

.news-card-v74:hover{
  transform:translateY(-5px);
  box-shadow:0 30px 76px rgba(8,20,38,.13);
}

.news-card-image-v74{
  height:230px;
  overflow:hidden;
  background:#f8f5ef;
}

.news-card-image-v74 img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .35s ease;
}

.news-card-v74:hover .news-card-image-v74 img{
  transform:scale(1.04);
}

.news-card-placeholder-v74{
  height:100%;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 20% 20%,rgba(178,42,38,.24),transparent 30%),
    linear-gradient(135deg,#071426,#243c5a);
}

.news-card-placeholder-v74 span{
  width:92px;
  height:92px;
  display:grid;
  place-items:center;
  border-radius:30px;
  color:#fff;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  font-size:44px;
  font-weight:950;
}

.news-card-body-v74{
  padding:24px;
  display:flex;
  flex-direction:column;
  flex:1;
}

.news-card-v74 h3{
  color:#071426;
  font-size:clamp(24px,2vw,34px);
  line-height:1.05;
  font-weight:950;
  margin:0 0 14px;
}

.news-card-v74 p{
  color:#657389;
  line-height:1.62;
  font-weight:740;
  margin:0 0 22px;
}

.news-read-more-v74{
  margin-top:auto;
  display:inline-flex;
  width:max-content;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:12px 15px;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,#071426,#243c5a);
  font-weight:950;
}

.news-detail-hero-v74{
  position:relative;
  overflow:hidden;
  color:#fff;
  padding:150px 0 82px;
  background:
    radial-gradient(circle at 16% 18%,rgba(18,106,122,.32),transparent 28%),
    radial-gradient(circle at 84% 20%,rgba(178,42,38,.24),transparent 25%),
    linear-gradient(135deg,#071426 0%,#243c5a 52%,#126a7a 100%);
}

.news-detail-hero-grid-v74{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,520px);
  gap:42px;
  align-items:center;
}

.news-detail-meta-v74{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:22px;
}

.news-detail-meta-v74 span,
.news-detail-meta-v74 b{
  display:inline-flex;
  min-height:40px;
  align-items:center;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:950;
}

.news-detail-hero-v74 h1{
  color:#fff;
  font-size:clamp(42px,5vw,82px);
  line-height:.98;
  letter-spacing:-.022em;
  font-weight:950;
  margin:0 0 18px;
}

.news-detail-hero-v74 p{
  color:rgba(255,255,255,.82);
  font-size:18px;
  line-height:1.65;
  font-weight:750;
  max-width:900px;
}

.news-detail-image-v74{
  min-height:430px;
  border-radius:34px;
  overflow:hidden;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 30px 80px rgba(0,0,0,.20);
}

.news-detail-image-v74 img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.news-detail-image-v74 > div{
  height:430px;
  display:grid;
  place-items:center;
}

.news-detail-image-v74 span{
  width:120px;
  height:120px;
  display:grid;
  place-items:center;
  border-radius:36px;
  color:#fff;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  font-size:56px;
  font-weight:950;
}

.news-detail-body-section-v74{
  background:#fff !important;
}

.news-detail-body-v74{
  padding:36px;
  border-radius:34px;
  background:#fff;
  border:1px solid rgba(8,20,38,.08);
  box-shadow:0 18px 54px rgba(8,20,38,.07);
  color:#071426;
}

.news-detail-body-v74 h2,
.news-detail-body-v74 h3{
  color:#071426;
  line-height:1.08;
  font-weight:950;
  margin:22px 0 12px;
}

.news-detail-body-v74 p,
.news-detail-body-v74 li{
  color:#657389;
  font-size:18px;
  line-height:1.78;
  font-weight:720;
}

.news-detail-body-v74 blockquote{
  margin:22px 0;
  padding:20px 22px;
  border-left:6px solid #b22a26;
  background:#fff4ef;
  border-radius:18px;
  color:#071426;
  font-weight:850;
}

.news-detail-body-v74 a{
  color:#9f1f1f;
  font-weight:950;
}

@media(max-width:1180px){
  .news-card-grid-v74,
  .news-detail-hero-grid-v74{
    grid-template-columns:1fr 1fr !important;
  }

  .admin-three-grid-v74,
  .admin-image-picker-v74{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){
  .news-card-grid-v74,
  .news-detail-hero-grid-v74{
    grid-template-columns:1fr !important;
  }

  .news-card-v74{
    min-height:unset;
  }

  .news-detail-hero-v74{
    padding:130px 0 62px;
  }

  .news-detail-image-v74,
  .news-detail-image-v74 > div{
    min-height:280px;
    height:280px;
  }

  .news-detail-body-v74{
    padding:24px;
    border-radius:28px;
  }
}


/* v75: Unlimited admin entries + reduced News and Careers heroes */
.news-hero-v72,
.careers-hero-v72{
  padding:118px 0 56px !important;
}

.news-hero-grid-v72 h1,
.careers-hero-grid-v72 h1{
  font-size:clamp(38px,4.2vw,68px) !important;
  margin:16px 0 14px !important;
}

.news-hero-grid-v72 p,
.careers-hero-grid-v72 p{
  font-size:17px !important;
  line-height:1.55 !important;
}

.news-hero-card-v72,
.careers-card-v72{
  min-height:230px !important;
  padding:26px !important;
  border-radius:30px !important;
}

.news-hero-card-v72 strong,
.careers-card-v72 strong{
  font-size:clamp(25px,2.3vw,36px) !important;
}

.admin-dynamic-list-v75{
  display:grid;
  gap:14px;
}

.admin-add-item-v75,
.admin-remove-item-v75{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  border:0;
  border-radius:999px;
  cursor:pointer;
  font-weight:950;
}

.admin-add-item-v75{
  margin-top:12px;
  padding:13px 18px;
  color:#fff;
  background:linear-gradient(135deg,#126a7a,#071426);
  box-shadow:0 14px 34px rgba(8,20,38,.12);
}

.admin-remove-item-v75{
  width:max-content;
  max-width:100%;
  padding:11px 14px;
  color:#991b1b;
  background:#fee2e2;
}

.admin-add-item-v75:hover,
.admin-remove-item-v75:hover{
  transform:translateY(-1px);
}

@media(max-width:760px){
  .news-hero-v72,
  .careers-hero-v72{
    padding:108px 0 48px !important;
  }

  .news-hero-grid-v72 h1,
  .careers-hero-grid-v72 h1{
    font-size:36px !important;
  }
}


/* v76: Database-backed News & Careers */
.admin-setup-list-v76{
  display:grid;
  gap:12px;
  margin:0 0 22px;
  padding-left:22px;
  color:#071426;
  font-weight:780;
  line-height:1.62;
}

.admin-setup-list-v76 code{
  display:inline-flex;
  padding:4px 7px;
  border-radius:8px;
  background:#f8f5ef;
  color:#9f1f1f;
  font-weight:950;
}

.admin-alert-v67 a{
  color:inherit;
  text-decoration:underline;
  font-weight:950;
}
