
:root{
  --navy:#101B3D;
  --slate:#5B6478;
  --slate-light:#8891A3;
  --bg:#FFFFFF;
  --bg-alt:#F5F7FC;
  --line:#E5E9F2;
  --line-strong:#D6DCEA;
  --blue:#2F5FE4;
  --blue-deep:#1B2FA6;
  --teal:#20D6C4;
  --amber:#FF9F40;
  --grad:linear-gradient(120deg,var(--blue-deep) 0%,var(--blue) 48%,var(--teal) 100%);
  --radius:20px;
  --radius-sm:12px;
  --maxw:1200px;
  --font-display:'Sora', sans-serif;
  --font-body:'Inter', sans-serif;
  --shadow-card:0 2px 6px rgba(16,27,61,0.04), 0 12px 28px -12px rgba(16,27,61,0.10);
  --shadow-card-hover:0 8px 16px rgba(16,27,61,0.06), 0 24px 44px -16px rgba(16,27,61,0.16);
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--bg); color:var(--navy); font-family:var(--font-body); line-height:1.65; -webkit-font-smoothing:antialiased; overflow-x:hidden;}
img,svg{display:block; max-width:100%;}
a{color:inherit; text-decoration:none;}
ul{list-style:none;}
h1,h2,h3,h4{font-family:var(--font-display); font-weight:700; letter-spacing:-0.015em; color:var(--navy);}
::selection{background:var(--teal); color:#04231F;}
@media (prefers-reduced-motion:reduce){*{animation-duration:0.001s !important; transition-duration:0.001s !important;}}

.wrap{max-width:var(--maxw); margin:0 auto; padding:0 28px;}
.section{position:relative; padding:104px 0;}
.section-alt{background:var(--bg-alt);}
.eyebrow{
  display:inline-flex; align-items:center; gap:8px; font-size:13px; letter-spacing:0.05em; text-transform:uppercase;
  color:var(--blue-deep); margin-bottom:18px; font-weight:800;
  background:linear-gradient(120deg, rgba(47,95,228,0.10), rgba(32,214,196,0.14));
  border:1px solid rgba(47,95,228,0.18); padding:7px 16px; border-radius:999px;
}
.h2{font-size:clamp(28px,3.6vw,42px); line-height:1.16; max-width:820px; color:var(--navy);}
.center{text-align:center; margin-left:auto; margin-right:auto;}
.lead{font-size:clamp(16px,1.6vw,19px); color:var(--slate); max-width:680px; margin-top:18px;}
.body-copy{color:var(--slate); font-size:15.5px; max-width:760px; margin-top:16px;}
.body-copy + .body-copy{margin-top:12px;}
.section-head{margin-bottom:52px;}

.btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:15px 28px; border-radius:999px; font-weight:700; font-size:14.5px; cursor:pointer; border:1px solid transparent; transition:.18s ease; white-space:nowrap;}
.btn-primary{background:var(--grad); color:#fff; box-shadow:0 10px 26px -8px rgba(27,47,166,0.5);}
.btn-primary:hover{box-shadow:0 14px 32px -8px rgba(27,47,166,0.65); transform:translateY(-1px);}
.btn-sm{padding:11px 22px; font-size:13.5px;}
.text-link{display:inline-flex; align-items:center; gap:8px; font-weight:700; font-size:14.5px; color:var(--navy); border-bottom:2px solid var(--line-strong); padding-bottom:2px; transition:.18s;}
.text-link:hover{color:var(--blue-deep); border-color:var(--blue-deep);}
.cta-row{display:flex; gap:22px; flex-wrap:wrap; align-items:center; margin-top:34px;}
.section-cta{margin-top:46px;}

/* nav */
.nav{position:sticky; top:0; z-index:200; background:rgba(255,255,255,0.9); backdrop-filter:blur(10px); border-bottom:1px solid var(--line);}
.nav-inner{display:flex; align-items:center; justify-content:space-between; padding:14px 28px; max-width:var(--maxw); margin:0 auto;}
.logo img{height:32px; width:auto;}
.nav-links{display:flex; gap:34px; align-items:center;}
.nav-links a{font-size:14.5px; color:var(--slate); font-weight:600; transition:.15s;}
.nav-links a:hover{color:var(--navy);}
.nav-toggle{display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:6px;}
.nav-toggle span{width:22px; height:2px; background:var(--navy);}
.mobile-panel{display:none;}

/* hero */
.hero{position:relative; padding:80px 0 60px; overflow:hidden; text-align:center;}
.hero-glow{position:absolute; top:-260px; left:50%; transform:translateX(-50%); width:900px; height:700px; border-radius:50%;
  background:radial-gradient(circle,rgba(47,95,228,0.14),rgba(32,214,196,0.08) 45%, transparent 72%); pointer-events:none;}
.hero .wrap{position:relative; z-index:2; max-width:840px;}
.hero .eyebrow{margin-left:auto; margin-right:auto;}
.hero h1{font-size:clamp(38px,5.4vw,60px); line-height:1.08; margin:0 auto; max-width:760px;}
.hero .lead{max-width:600px; margin-left:auto; margin-right:auto; text-align:center;}
.hero .cta-row{justify-content:center;}

/* dashboard mock under hero */
.dash-wrap{max-width:920px; margin:60px auto 0; position:relative; z-index:2;}
.dash-card{background:#fff; border:1px solid var(--line); border-radius:24px; box-shadow:var(--shadow-card-hover); padding:30px;}
.dash-grid{display:grid; grid-template-columns:1.1fr 1fr; gap:28px; align-items:center;}
.dash-title{font-family:var(--font-display); font-weight:700; font-size:14px; color:var(--navy); margin-bottom:16px; display:flex; align-items:center; gap:8px;}
.dash-dot{width:8px; height:8px; border-radius:50%; background:var(--teal); box-shadow:0 0 0 4px rgba(32,214,196,0.18);}
.dash-row{display:flex; align-items:center; justify-content:space-between; padding:12px 14px; border-radius:12px; background:var(--bg-alt); margin-bottom:9px;}
.dash-row .name{font-size:13.5px; font-weight:600; color:var(--navy); display:flex; align-items:center; gap:10px;}
.dash-badge{font-size:11.5px; font-weight:700; padding:4px 10px; border-radius:999px;}
.badge-cited{background:rgba(32,214,196,0.14); color:#0E8477;}
.badge-partial{background:rgba(255,159,64,0.16); color:#B4600B;}
.engine-dot{width:9px; height:9px; border-radius:3px;}
.mini-chart{display:flex; align-items:flex-end; gap:6px; height:110px;}
.mini-bar{flex:1; border-radius:6px 6px 0 0; background:linear-gradient(180deg,var(--teal),var(--blue));}
.dash-foot{display:flex; justify-content:space-between; margin-top:12px; font-size:11.5px; color:var(--slate-light); font-weight:600;}

/* industry text-tabs (defyd style) */
.itabs{display:flex; justify-content:center; gap:0; flex-wrap:wrap; border-bottom:1px solid var(--line); margin-bottom:48px;}
.itab-btn{
  padding:16px 26px; background:none; border:none; border-bottom:3px solid transparent; cursor:pointer;
  font-family:var(--font-display); font-weight:700; font-size:13.5px; letter-spacing:0.04em; text-transform:uppercase; color:var(--slate-light);
  transition:.18s;
}
.itab-btn.active{color:var(--navy); border-bottom-color:var(--blue-deep);}
.itab-btn:hover{color:var(--navy);}
.itab-panel{display:none; animation:fadeIn .35s ease;}
.itab-panel.active{display:block;}
@keyframes fadeIn{from{opacity:0; transform:translateY(8px);} to{opacity:1; transform:none;}}

.problem-card{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:30px; box-shadow:var(--shadow-card);}
.problem-card h3{font-size:19px; margin-bottom:12px;}
.problem-card p{color:var(--slate); font-size:14.5px;}

/* stat band */
.stat-band{display:grid; grid-template-columns:repeat(3,1fr); gap:0; border:1px solid var(--line); border-radius:24px; overflow:hidden; background:#fff; box-shadow:var(--shadow-card);}
.stat-cell{padding:44px 34px; border-right:1px solid var(--line); text-align:center;}
.stat-cell:last-child{border-right:none;}
.stat-label{font-size:12px; font-weight:800; letter-spacing:0.08em; text-transform:uppercase; color:var(--slate-light); margin-bottom:14px;}
.stat-big{font-family:var(--font-display); font-size:clamp(30px,4vw,44px); font-weight:800; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; line-height:1; margin-bottom:12px;}
.stat-cell p{color:var(--slate); font-size:14px; max-width:240px; margin:0 auto;}

/* grids/cards reused */
.grid{display:grid; gap:20px;}
.grid-2{grid-template-columns:repeat(2,1fr);}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
.card{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:28px; transition:.2s; box-shadow:var(--shadow-card);}
.card:hover{border-color:var(--line-strong); transform:translateY(-4px); box-shadow:var(--shadow-card-hover);}
.card h3{font-size:18px; margin-bottom:10px;}
.card p{font-size:14.5px; color:var(--slate);}
.card-icon{width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; margin-bottom:16px;
  background:linear-gradient(135deg, rgba(47,95,228,0.12), rgba(32,214,196,0.16)); border:1px solid rgba(47,95,228,0.18);}
.card-icon svg{width:21px; height:21px; stroke:var(--blue-deep);}

/* checklist */
.check-list{display:grid; gap:14px; margin-top:28px;}
.check-item{display:flex; gap:14px; align-items:flex-start; padding:16px 0; border-top:1px solid var(--line);}
.check-item:first-child{border-top:none;}
.check-mark{flex:none; width:24px; height:24px; border-radius:50%; margin-top:1px; display:flex; align-items:center; justify-content:center; background:rgba(32,214,196,0.14); border:1px solid rgba(32,214,196,0.35);}
.check-mark svg{width:13px; height:13px; stroke:#0E8477;}
.check-item p{color:var(--slate); font-size:15px;}

/* module tabs */
.tab-select{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:36px; justify-content:center;}
.tab-btn{padding:12px 24px; border-radius:999px; border:1px solid var(--line-strong); background:#fff; color:var(--slate); font-weight:700; font-size:13.5px; cursor:pointer; transition:.18s;}
.tab-btn.active{background:var(--grad); color:#fff; border-color:transparent; box-shadow:0 8px 20px -8px rgba(27,47,166,0.5);}
.tab-panel{display:none; animation:fadeIn .3s ease;}
.tab-panel.active{display:block;}
.module-pill{background:#fff; border:1px solid var(--line); border-radius:var(--radius-sm); padding:16px 18px; font-size:14px; color:var(--navy); font-weight:600; display:flex; align-items:center; gap:10px; box-shadow:var(--shadow-card);}
.module-pill::before{content:''; width:7px; height:7px; border-radius:50%; background:var(--teal); flex:none;}
.feature-mini{background:#fff; border:1px solid var(--line); border-radius:var(--radius-sm); padding:20px 22px; box-shadow:var(--shadow-card); transition:.2s;}
.feature-mini:hover{border-color:var(--line-strong); transform:translateY(-3px); box-shadow:var(--shadow-card-hover);}
.feature-mini h4{font-family:var(--font-display); font-size:15px; font-weight:700; color:var(--navy); margin-bottom:7px; display:flex; align-items:center; gap:9px;}
.feature-mini h4::before{content:''; width:7px; height:7px; border-radius:50%; background:var(--teal); flex:none;}
.feature-mini p{font-size:13.5px; color:var(--slate); line-height:1.55; padding-left:16px;}
.module-panel .grid{grid-template-columns:repeat(3,1fr);}

/* three powerful components (defyd layer style) */
.layer-stack{display:flex; flex-direction:column; margin-top:20px;}
.layer-row{display:grid; grid-template-columns:1fr 110px; gap:32px; align-items:center; padding:36px 0; border-top:1px solid var(--line);}
.layer-row:first-child{border-top:none;}
.layer-row h3{font-size:19px; margin-bottom:10px;}
.layer-meta{font-size:14px; color:var(--slate); margin-top:6px;}
.layer-meta b{color:var(--navy); font-weight:700;}
.layer-num{font-family:var(--font-display); font-size:52px; font-weight:800; text-align:right; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; line-height:1;}
.layer-result{text-align:center; margin-top:34px; font-weight:700; font-size:15px; color:var(--navy);}
.layer-result span{color:var(--blue-deep);}

/* insights */
.insight-card{text-align:left;}

/* real world use cases (defyd quote card) */
.usecase-card{background:#fff; border:1px solid var(--line); border-radius:24px; padding:34px; box-shadow:var(--shadow-card); display:flex; flex-direction:column; height:100%;}
.usecase-tag{display:inline-block; font-size:11.5px; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:var(--blue-deep); background:rgba(47,95,228,0.08); padding:5px 12px; border-radius:999px; margin-bottom:10px; width:fit-content;}
.usecase-sub{font-size:12.5px; font-weight:700; color:var(--slate-light); margin-bottom:16px;}
.usecase-quote{font-family:var(--font-display); font-size:18.5px; font-weight:600; color:var(--navy); line-height:1.4; margin-bottom:22px;}
.usecase-quote::before{content:'“'; color:var(--teal);}
.usecase-quote::after{content:'”'; color:var(--teal);}
.usecase-label{font-size:12px; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:var(--slate-light); margin-bottom:10px;}
.usecase-card ul{margin-bottom:20px;}
.usecase-card ul li{font-size:14.5px; color:var(--slate); padding:5px 0 5px 20px; position:relative;}
.usecase-card ul li::before{content:'✓'; position:absolute; left:0; color:#0E8477; font-weight:800;}
.impact-list{margin-bottom:16px;}
.impact-list li{font-family:var(--font-display); font-weight:700; font-size:14.5px; color:var(--navy); padding:4px 0; list-style:none;}
.usecase-result{border-top:1px solid var(--line); padding-top:16px; margin-top:auto; font-size:14px; color:var(--slate);}
.usecase-result b{color:var(--navy);}

/* comparison table */
.table-wrap{overflow-x:auto; margin-top:36px; border:1px solid var(--line); border-radius:var(--radius); background:#fff; box-shadow:var(--shadow-card);}
table{width:100%; border-collapse:collapse; min-width:760px;}
th,td{padding:16px 18px; text-align:left; font-size:14px; border-bottom:1px solid var(--line);}
th{font-size:11.5px; text-transform:uppercase; letter-spacing:0.05em; color:var(--slate-light); font-weight:700;}
td:first-child, th:first-child{color:var(--navy); font-weight:600; min-width:260px;}
tr:last-child td{border-bottom:none;}
td.yes{color:#0E8477; font-weight:700;}
td.polyscalix-col{background:linear-gradient(120deg, rgba(47,95,228,0.06), rgba(32,214,196,0.08));}
th.polyscalix-th{color:var(--blue-deep);}

/* integrations */
.integ-grid{grid-template-columns:repeat(4,1fr); margin-top:36px;}
.integ-card h4{font-size:12px; text-transform:uppercase; letter-spacing:0.05em; color:var(--slate-light); margin-bottom:10px; font-weight:800;}
.integ-card ul li{color:var(--slate); font-size:14px; padding:5px 0; font-weight:500;}

/* audit path */
.apath h3{font-size:20px; margin-bottom:12px;}
.apath .num{font-size:12px; color:var(--blue-deep); letter-spacing:0.08em; margin-bottom:14px; display:block; font-weight:800;}

/* FAQ */
.faq-item{border-bottom:1px solid var(--line);}
.faq-item:first-child{border-top:1px solid var(--line);}
.faq-q{width:100%; text-align:left; background:none; border:none; color:var(--navy); cursor:pointer; padding:22px 4px; display:flex; justify-content:space-between; align-items:center; gap:20px; font-family:var(--font-display); font-size:16.5px; font-weight:600;}
.faq-q .plus{flex:none; width:22px; height:22px; position:relative;}
.faq-q .plus::before, .faq-q .plus::after{content:''; position:absolute; background:var(--blue-deep); transition:transform .25s;}
.faq-q .plus::before{width:100%; height:2px; top:50%; left:0; transform:translateY(-50%);}
.faq-q .plus::after{width:2px; height:100%; left:50%; top:0; transform:translateX(-50%);}
.faq-item.open .plus::after{transform:translateX(-50%) rotate(90deg); opacity:0;}
.faq-a{max-height:0; overflow:hidden; transition:max-height .3s ease;}
.faq-a p{color:var(--slate); font-size:15px; padding:0 4px 22px; max-width:760px;}

/* final CTA */
.final-cta{background:var(--grad); border-radius:32px; padding:74px 50px; text-align:center; position:relative; overflow:hidden; margin:0 28px;}
.final-cta .eyebrow{background:rgba(255,255,255,0.16); border-color:rgba(255,255,255,0.3); color:#fff;}
.final-cta h2{color:#fff; margin:0 auto; text-align:center;}
.final-cta .lead{color:rgba(255,255,255,0.88); margin-left:auto; margin-right:auto; text-align:center;}
.final-cta .cta-row{justify-content:center;}
.final-cta .btn-outline{background:rgba(255,255,255,0.08); color:#fff; border:1px solid rgba(255,255,255,0.45); padding:15px 28px; border-radius:999px; font-weight:800; font-size:13.5px; letter-spacing:0.04em; text-transform:uppercase; transition:.18s;}
.final-cta .btn-outline:hover{background:rgba(255,255,255,0.18); border-color:#fff;}
.final-cta .btn-primary{background:#fff; color:var(--blue-deep); box-shadow:0 10px 26px -8px rgba(0,0,0,0.25); font-weight:800; letter-spacing:0.04em; text-transform:uppercase; font-size:13.5px;}

/* footer (defyd style with location blocks) */
footer{background:var(--navy); padding:70px 0 30px;}
.footer-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:40px; padding-bottom:44px; border-bottom:1px solid rgba(255,255,255,0.12);}
.office-card h5{font-size:13px; text-transform:uppercase; letter-spacing:0.06em; color:var(--teal); margin-bottom:10px; font-weight:800;}
.office-card p{color:rgba(255,255,255,0.68); font-size:14px; line-height:1.6;}
.footer-links{display:grid; grid-template-columns:repeat(4,1fr); gap:30px; padding:44px 0; border-bottom:1px solid rgba(255,255,255,0.12);}
.footer-col h5{font-size:12px; text-transform:uppercase; letter-spacing:0.06em; color:rgba(255,255,255,0.4); margin-bottom:16px; font-weight:800;}
.footer-col li{padding:5px 0;}
.footer-col a{color:rgba(255,255,255,0.72); font-size:14px; transition:.15s;}
.footer-col a:hover{color:var(--teal);}
.footer-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:26px; flex-wrap:wrap; gap:16px;}
.footer-bottom p{color:rgba(255,255,255,0.4); font-size:13px;}
.footer-brand-row{display:flex; align-items:center; justify-content:space-between; padding-bottom:36px; flex-wrap:wrap; gap:20px;}
.footer-brand-row img{height:30px; filter:brightness(0) invert(1);}
.social-row{display:flex; gap:14px;}
.social-row a{width:36px; height:36px; border-radius:50%; border:1px solid rgba(255,255,255,0.2); display:flex; align-items:center; justify-content:center;}
.social-row svg{width:15px; height:15px; stroke:rgba(255,255,255,0.72);}

@media (max-width:980px){
  .dash-grid{grid-template-columns:1fr;}
  .grid-4{grid-template-columns:repeat(2,1fr);}
  .grid-3{grid-template-columns:repeat(2,1fr);}
  .integ-grid{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:1fr;}
  .footer-links{grid-template-columns:1fr 1fr;}
  .nav-links{display:none;}
  .stat-band{grid-template-columns:1fr;}
  .stat-cell{border-right:none; border-bottom:1px solid var(--line);}
  .stat-cell:last-child{border-bottom:none;}
}
@media (max-width:640px){
  .section{padding:72px 0;}
  .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
  .integ-grid{grid-template-columns:1fr;}
  .footer-links{grid-template-columns:1fr;}
  .nav-toggle{display:flex;}
  .layer-row{grid-template-columns:1fr; gap:8px;}
  .layer-num{text-align:left;}
  .final-cta{margin:0 14px; padding:50px 24px;}
  .itab-btn{padding:12px 14px; font-size:12px;}
}

/* ============ MULTIPAGE ADDITIONS ============ */

/* dropdown nav */
.nav-inner{position:relative;}
.nav-links{display:flex; gap:30px; align-items:center;}
.nav-item{position:relative;}
.nav-item > a{display:flex; align-items:center; gap:5px; font-size:14.5px; color:var(--slate); font-weight:600; padding:10px 0; cursor:pointer;}
.nav-item > a:hover{color:var(--navy);}
.nav-item .caret{width:9px; height:9px; border-right:1.6px solid currentColor; border-bottom:1.6px solid currentColor; transform:rotate(45deg); margin-top:-3px; opacity:0.6;}
.dropdown{
  position:absolute; top:100%; left:50%; transform:translateX(-50%) translateY(8px);
  background:#fff; border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow-card-hover);
  padding:12px; min-width:230px; display:grid; gap:2px;
  opacity:0; visibility:hidden; transition:opacity .18s, transform .18s;
  z-index:50;
}
.nav-item:hover .dropdown{opacity:1; visibility:visible; transform:translateX(-50%) translateY(0);}
.dropdown a{display:block; padding:9px 14px; border-radius:10px; font-size:13.5px; font-weight:600; color:var(--slate); white-space:nowrap;}
.dropdown a:hover{background:var(--bg-alt); color:var(--blue-deep);}

/* mobile nav dropdown (accordion) */
.mobile-panel .m-group{border-top:1px solid var(--line); padding-top:12px; margin-top:6px;}
.mobile-panel .m-group-title{font-weight:800; font-size:12px; text-transform:uppercase; letter-spacing:0.05em; color:var(--slate-light); margin-bottom:8px;}
.mobile-panel .m-sub{display:flex; flex-direction:column; gap:2px; margin-bottom:6px;}
.mobile-panel .m-sub a{font-size:14px; color:var(--slate); padding:6px 0;}

/* interior page hero */
.page-hero{padding:64px 0 56px; text-align:center; border-bottom:1px solid var(--line); background:var(--bg-alt);}
.page-hero .eyebrow{margin-left:auto; margin-right:auto;}
.page-hero h1{font-size:clamp(32px,4.6vw,48px); line-height:1.12; max-width:760px; margin:0 auto;}
.page-hero .lead{max-width:600px; margin:18px auto 0; text-align:center;}
.crumb{font-size:13px; color:var(--slate-light); font-weight:600; margin-bottom:18px;}
.crumb a{color:var(--blue-deep);}

/* detail cards used on solutions/industries/tools/resources pages */
.detail-card{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:30px; box-shadow:var(--shadow-card); transition:.2s; scroll-margin-top:90px;}
.detail-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-card-hover); border-color:var(--line-strong);}
.detail-card .tag{display:inline-block; font-size:11px; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:var(--blue-deep); background:rgba(47,95,228,0.08); padding:4px 11px; border-radius:999px; margin-bottom:14px;}
.detail-card h3{font-size:19px; margin-bottom:10px;}
.detail-card p{color:var(--slate); font-size:14.5px;}
.detail-card .cta-link{display:inline-flex; align-items:center; gap:6px; margin-top:16px; font-weight:700; font-size:13.5px; color:var(--blue-deep);}

/* 4-col hero stat strip (matches live site pattern) */
.hero-stats{display:grid; grid-template-columns:repeat(4,1fr); gap:0; border:1px solid var(--line); border-radius:24px; overflow:hidden; background:#fff; box-shadow:var(--shadow-card-hover); max-width:960px; margin:52px auto 0;}
.hstat-cell{padding:30px 22px; border-right:1px solid var(--line); text-align:center;}
.hstat-cell:last-child{border-right:none;}
.hstat-label{font-size:11.5px; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:var(--slate-light); margin-bottom:10px;}
.hstat-num{font-family:var(--font-display); font-size:clamp(24px,2.6vw,32px); font-weight:800; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; line-height:1; margin-bottom:8px;}
.hstat-cell p{font-size:12.5px; color:var(--slate); margin:0;}
@media (max-width:780px){
  .hero-stats{grid-template-columns:1fr 1fr;}
  .hstat-cell{border-bottom:1px solid var(--line);}
}

/* about / contact / careers pages */
.value-block{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:40px;}
.contact-grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-top:20px; align-items:start;}
.contact-info-card{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:32px; box-shadow:var(--shadow-card);}
.contact-info-row{display:flex; gap:16px; align-items:flex-start; padding:16px 0; border-top:1px solid var(--line);}
.contact-info-row:first-child{border-top:none;}
.contact-info-row .ci-icon{width:38px; height:38px; border-radius:10px; background:linear-gradient(135deg, rgba(47,95,228,0.12), rgba(32,214,196,0.16)); display:flex; align-items:center; justify-content:center; flex:none;}
.contact-info-row .ci-icon svg{width:17px; height:17px; stroke:var(--blue-deep);}
.contact-info-row h4{font-size:14px; margin-bottom:3px;}
.contact-info-row p, .contact-info-row a{font-size:14.5px; color:var(--slate);}
.contact-form{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:32px; box-shadow:var(--shadow-card); display:grid; gap:16px;}
.contact-form label{font-size:13px; font-weight:700; color:var(--navy); margin-bottom:6px; display:block;}
.contact-form input, .contact-form textarea, .contact-form select{
  width:100%; padding:12px 14px; border-radius:10px; border:1px solid var(--line-strong); font-family:var(--font-body); font-size:14px; color:var(--navy); background:var(--bg-alt);
}
.contact-form textarea{min-height:110px; resize:vertical;}
.contact-form input:focus, .contact-form textarea:focus, .contact-form select:focus{outline:none; border-color:var(--blue);}

@media (max-width:980px){
  .value-block{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:780px){
  .value-block{grid-template-columns:1fr;}
  .contact-grid{grid-template-columns:1fr;}
}

/* ============ EXPANDED SOLUTIONS CONTENT (GEO/AEO-optimized) ============ */
.solutions-list{display:flex; flex-direction:column; gap:22px; margin-top:36px;}
.solution-row{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:32px; box-shadow:var(--shadow-card); scroll-margin-top:90px; transition:.2s;}
.solution-row:hover{box-shadow:var(--shadow-card-hover); border-color:var(--line-strong);}
.solution-row .tag{display:inline-block; font-size:11px; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:var(--blue-deep); background:rgba(47,95,228,0.08); padding:4px 11px; border-radius:999px; margin-bottom:14px;}
.solution-row h3{font-size:21px; margin-bottom:12px;}
.solution-def{font-weight:700; color:var(--navy); font-size:15.5px; line-height:1.55; margin-bottom:10px;}
.solution-para{color:var(--slate); font-size:14.5px; margin-bottom:22px;}
.solution-grid-inner{display:grid; grid-template-columns:1.2fr 1fr; gap:32px; align-items:start;}
.cap-list{display:flex; flex-direction:column; gap:9px;}
.cap-list li{display:flex; gap:10px; align-items:flex-start; font-size:14px; color:var(--slate);}
.cap-list li::before{content:'✓'; color:#0E8477; font-weight:800; flex:none; margin-top:1px;}
.cap-title{font-size:12px; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:var(--slate-light); margin-bottom:10px;}
.mini-faq{border-top:1px solid var(--line); padding-top:16px;}
.mini-faq summary{cursor:pointer; font-weight:700; font-size:14px; color:var(--navy); list-style:none; display:flex; justify-content:space-between; gap:10px; align-items:center;}
.mini-faq summary::-webkit-details-marker{display:none;}
.mini-faq summary::after{content:'+'; font-size:18px; color:var(--blue-deep); flex:none; transition:transform .2s;}
.mini-faq[open] summary::after{transform:rotate(45deg);}
.mini-faq p{font-size:13.5px; color:var(--slate); margin-top:10px; line-height:1.6;}
@media (max-width:780px){
  .solution-grid-inner{grid-template-columns:1fr;}
}

/* answer-first callout box (AEO/GEO pattern: direct, citable answer near the top of the page) */
.answer-box{
  background:#fff; border:1px solid var(--line-strong); border-left:4px solid var(--blue-deep);
  border-radius:14px; padding:26px 28px; margin:32px 0; box-shadow:var(--shadow-card);
}
.answer-box .aq{font-family:var(--font-display); font-weight:700; font-size:15.5px; color:var(--navy); margin-bottom:10px;}
.answer-box p{color:var(--slate); font-size:15px; margin:0;}
.related-grid{margin-top:36px;}

/* ============ SOLUTION PANELS (deep content, GEO/AEO-optimized) ============ */
.solution-panel{background:#fff; border:1px solid var(--line); border-radius:24px; padding:40px; box-shadow:var(--shadow-card); margin-bottom:22px; scroll-margin-top:90px;}
.solution-panel-head{display:flex; justify-content:space-between; align-items:flex-start; gap:20px; flex-wrap:wrap; margin-bottom:6px;}
.solution-panel-head .tag{display:inline-block; font-size:11px; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:var(--blue-deep); background:rgba(47,95,228,0.08); padding:4px 11px; border-radius:999px; margin-bottom:14px;}
.solution-panel h3{font-size:24px; margin-bottom:14px;}
.solution-def{font-size:15.5px; color:var(--navy); font-weight:500; line-height:1.6; max-width:820px; margin-bottom:8px;}
.solution-who{font-size:13.5px; color:var(--slate-light); font-weight:700; margin-bottom:24px;}
.solution-who b{color:var(--slate);}
.solution-2col{display:grid; grid-template-columns:1.1fr 1fr; gap:36px; margin-top:8px;}
.solution-2col h4{font-size:12.5px; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:var(--slate-light); margin-bottom:14px;}
.cap-list{display:flex; flex-direction:column; gap:10px;}
.cap-list li{font-size:14px; color:var(--slate); padding-left:20px; position:relative; list-style:none;}
.cap-list li::before{content:'✓'; position:absolute; left:0; color:#0E8477; font-weight:800;}
.mini-faq{display:flex; flex-direction:column; gap:16px;}
.mini-faq-item p.q{font-size:14px; font-weight:700; color:var(--navy); margin-bottom:4px;}
.mini-faq-item p.a{font-size:13.5px; color:var(--slate); line-height:1.55;}
.solution-cta-row{margin-top:26px; padding-top:20px; border-top:1px solid var(--line);}
@media (max-width:780px){
  .solution-2col{grid-template-columns:1fr;}
}

.panel-subhead{font-size:12.5px; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:var(--slate-light); margin:28px 0 14px;}

.footer-links-5{grid-template-columns:repeat(5,1fr) !important;}
@media (max-width:980px){.footer-links-5{grid-template-columns:repeat(2,1fr) !important;}}
@media (max-width:640px){.footer-links-5{grid-template-columns:1fr !important;}}

/* ============ VISUAL / CONVERSION / AEO UPGRADES FOR DETAIL PAGES ============ */
.page-hero{text-align:left;}
.page-hero .hero-grid-2{display:grid; grid-template-columns:1.3fr 1fr; gap:44px; align-items:center;}
.page-hero .eyebrow, .page-hero .crumb{margin-left:0; margin-right:0;}
.page-hero h1{margin:0; max-width:none; text-align:left;}
.page-hero .lead{margin-left:0; text-align:left; max-width:none;}
.page-hero .cta-row{justify-content:flex-start;}
.updated-line{font-size:12.5px; color:var(--slate-light); font-weight:600; margin-top:18px;}

.quickfacts-card{background:#fff; border:1px solid var(--line); border-radius:20px; padding:26px; box-shadow:var(--shadow-card-hover);}
.quickfacts-card .qf-title{font-size:12px; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:var(--blue-deep); margin-bottom:14px;}
.qf-row{display:flex; justify-content:space-between; gap:12px; padding:11px 0; border-top:1px solid var(--line); font-size:13.5px;}
.qf-row:first-of-type{border-top:none;}
.qf-label{color:var(--slate-light); font-weight:600;}
.qf-value{color:var(--navy); font-weight:700; text-align:right;}

.toc-row{display:flex; flex-wrap:wrap; gap:10px; margin:8px 0 0;}
.toc-link{padding:8px 16px; border:1px solid var(--line-strong); border-radius:999px; font-size:13px; font-weight:600; color:var(--slate); background:#fff; transition:.18s;}
.toc-link:hover{border-color:var(--blue); color:var(--blue-deep);}

.takeaways-box{background:linear-gradient(120deg, rgba(47,95,228,0.06), rgba(32,214,196,0.07)); border-left:4px solid var(--blue); border-radius:14px; padding:24px 28px; margin:26px 0;}
.takeaways-box .tb-label{font-size:12px; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:var(--blue-deep); margin-bottom:12px;}
.takeaways-box ul{display:flex; flex-direction:column; gap:9px;}
.takeaways-box li{font-size:14.5px; color:var(--navy); font-weight:500; padding-left:22px; position:relative;}
.takeaways-box li::before{content:'✓'; position:absolute; left:0; color:#0E8477; font-weight:800;}

.mid-cta-band{
  display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap;
  background:var(--bg-alt); border:1px solid var(--line); border-radius:20px; padding:28px 32px; margin:44px 0;
}
.mid-cta-band h3{font-size:18px; margin-bottom:6px;}
.mid-cta-band p{font-size:14px; color:var(--slate); margin:0;}

@media (max-width:780px){
  .page-hero .hero-grid-2{grid-template-columns:1fr;}
  .mid-cta-band{flex-direction:column; align-items:flex-start;}
}

/* ============ VISUAL + CRO + AEO ENHANCEMENTS FOR DEEP PAGES ============ */

/* meta chips under page-hero (read time, category, freshness) */
.hero-meta-row{display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-top:18px;}
.hero-chip{font-size:12px; font-weight:700; color:var(--slate); background:#fff; border:1px solid var(--line-strong); padding:6px 14px; border-radius:999px; display:flex; align-items:center; gap:6px;}
.hero-chip svg{width:13px; height:13px; stroke:var(--blue-deep);}

/* Key takeaways / quick-answer box (GEO/AEO extraction target) */
.takeaway-box{background:#fff; border:1px solid var(--line); border-left:4px solid var(--teal); border-radius:16px; padding:28px 30px; box-shadow:var(--shadow-card); margin-top:-30px; position:relative; z-index:3;}
.takeaway-box h2{font-size:15px; text-transform:uppercase; letter-spacing:0.05em; color:var(--blue-deep); margin-bottom:14px; font-family:var(--font-body); font-weight:800;}
.takeaway-list{display:grid; gap:10px;}
.takeaway-list li{list-style:none; display:flex; gap:10px; align-items:flex-start; font-size:14.5px; color:var(--navy); font-weight:500;}
.takeaway-list li::before{content:'✓'; color:#0E8477; font-weight:800; flex:none;}

/* table of contents pill nav */
.toc-row{display:flex; gap:8px; flex-wrap:wrap; justify-content:center; padding:18px 0; margin-top:24px; border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.toc-row a{font-size:13px; font-weight:700; color:var(--slate); background:var(--bg-alt); padding:8px 16px; border-radius:999px; transition:.15s;}
.toc-row a:hover{background:var(--blue-deep); color:#fff;}

/* icon on problem-card / feature-mini for visual hierarchy */
.problem-card .pc-icon, .feature-mini .fm-icon{width:36px; height:36px; border-radius:10px; display:flex; align-items:center; justify-content:center; margin-bottom:14px;}
.problem-card .pc-icon{background:rgba(240,101,79,0.10);}
.problem-card .pc-icon svg{width:17px; height:17px; stroke:#C4442F;}
.feature-mini .fm-icon{background:linear-gradient(135deg, rgba(47,95,228,0.12), rgba(32,214,196,0.16));}
.feature-mini .fm-icon svg{width:16px; height:16px; stroke:var(--blue-deep);}

/* mid-page conversion banner */
.mid-cta{
  background:linear-gradient(120deg, rgba(47,95,228,0.06), rgba(32,214,196,0.08));
  border:1px solid rgba(47,95,228,0.16); border-radius:20px; padding:32px 36px;
  display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; margin-top:40px;
}
.mid-cta h4{font-size:18px; margin-bottom:6px;}
.mid-cta p{font-size:14px; color:var(--slate); max-width:460px;}

/* step number badges already exist via layer-num; add checkmark accent to steps */
.layer-row{position:relative;}

@media (max-width:640px){
  .mid-cta{flex-direction:column; align-items:flex-start; text-align:left;}
  .takeaway-box{margin-top:-16px;}
}

.footer-links-6{grid-template-columns:repeat(6,1fr) !important;}
@media (max-width:980px){.footer-links-6{grid-template-columns:repeat(3,1fr) !important;}}
@media (max-width:640px){.footer-links-6{grid-template-columns:1fr 1fr !important;}}

/* ============ TOP-TIER POLISH LAYER ============ */

/* scroll-reveal system */
.reveal{opacity:0; transform:translateY(28px); transition:opacity .8s cubic-bezier(.16,1,.3,1), transform .8s cubic-bezier(.16,1,.3,1);}
.reveal.is-visible{opacity:1; transform:none;}
.reveal-scale{opacity:0; transform:scale(.96); transition:opacity .7s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1);}
.reveal-scale.is-visible{opacity:1; transform:none;}
@media (prefers-reduced-motion:reduce){
  .reveal, .reveal-scale{opacity:1 !important; transform:none !important; transition:none !important;}
}

/* refined focus states (accessibility + polish) */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible{
  outline:2px solid var(--blue); outline-offset:3px; border-radius:4px;
}
.btn:focus-visible{outline-offset:4px;}

/* richer card hover: lift + glow + icon nudge */
.card, .detail-card, .problem-card, .feature-mini, .usecase-card, .solution-panel{
  transition:transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s ease, border-color .35s ease;
}
.card:hover, .detail-card:hover{
  box-shadow:0 20px 48px -16px rgba(27,47,166,0.22), 0 4px 12px rgba(16,27,61,0.06);
}
.card:hover .card-icon{transform:translateY(-3px) scale(1.06); box-shadow:0 8px 20px -6px rgba(47,95,228,0.35);}
.card-icon{transition:transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s ease;}

/* animated underline links (replaces flat hover-color-only) */
.cta-link{position:relative; display:inline-flex; align-items:center; gap:6px;}
.cta-link::after{content:''; position:absolute; left:0; bottom:-2px; width:0; height:1.5px; background:var(--blue-deep); transition:width .3s cubic-bezier(.16,1,.3,1);}
.cta-link:hover::after{width:100%;}

/* animated nav underline */
.nav-item > a{position:relative;}
.nav-item > a::after{content:''; position:absolute; left:0; bottom:-4px; width:0; height:2px; background:var(--grad); transition:width .3s ease; border-radius:2px;}
.nav-item:hover > a::after{width:100%;}

/* button micro-interaction */
.btn-primary{position:relative; overflow:hidden;}
.btn-primary::before{content:''; position:absolute; inset:0; background:linear-gradient(120deg, rgba(255,255,255,0) 30%, rgba(255,255,255,0.25) 50%, rgba(255,255,255,0) 70%); transform:translateX(-100%); transition:transform .6s ease;}
.btn-primary:hover::before{transform:translateX(100%);}

/* animated hero dash-card bars (grow in) */
.mini-bar{transform-origin:bottom; animation:barGrow 1s cubic-bezier(.16,1,.3,1) both;}
.mini-bar:nth-child(1){animation-delay:.05s;} .mini-bar:nth-child(2){animation-delay:.12s;}
.mini-bar:nth-child(3){animation-delay:.19s;} .mini-bar:nth-child(4){animation-delay:.26s;}
.mini-bar:nth-child(5){animation-delay:.33s;} .mini-bar:nth-child(6){animation-delay:.40s;}
.mini-bar:nth-child(7){animation-delay:.47s;}
@keyframes barGrow{from{transform:scaleY(0); opacity:0;} to{transform:scaleY(1); opacity:1;}}
.dash-row{animation:rowFade .6s cubic-bezier(.16,1,.3,1) both;}
.dash-row:nth-child(1){animation-delay:.1s;} .dash-row:nth-child(2){animation-delay:.22s;}
.dash-row:nth-child(3){animation-delay:.34s;} .dash-row:nth-child(4){animation-delay:.46s;}
@keyframes rowFade{from{opacity:0; transform:translateX(-8px);} to{opacity:1; transform:none;}}
.dash-dot{animation:dashPulse 2.4s ease-in-out infinite;}
@keyframes dashPulse{0%,100%{box-shadow:0 0 0 4px rgba(32,214,196,0.18);} 50%{box-shadow:0 0 0 8px rgba(32,214,196,0.06);}}

/* signature dark section (breaks the light-page rhythm) */
.section-dark{background:var(--navy); position:relative; overflow:hidden;}
.section-dark::before{content:''; position:absolute; top:-200px; right:-200px; width:600px; height:600px; border-radius:50%;
  background:radial-gradient(circle, rgba(47,95,228,0.25), transparent 70%); pointer-events:none;}
.section-dark::after{content:''; position:absolute; bottom:-220px; left:-180px; width:500px; height:500px; border-radius:50%;
  background:radial-gradient(circle, rgba(32,214,196,0.18), transparent 70%); pointer-events:none;}
.section-dark .eyebrow{background:rgba(255,255,255,0.1); border-color:rgba(255,255,255,0.24); color:var(--teal);}
.section-dark h2, .section-dark h3{color:#fff;}
.section-dark .lead, .section-dark p{color:rgba(255,255,255,0.72);}
.section-dark .lead.center{color:rgba(255,255,255,0.72);}
.dark-stat-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(255,255,255,0.1); border-radius:20px; overflow:hidden; margin-top:44px; position:relative; z-index:2;}
.dark-stat-cell{background:#141b3d; padding:38px 26px; text-align:center;}
.dark-stat-num{font-family:var(--font-display); font-size:clamp(28px,3.2vw,40px); font-weight:800; background:linear-gradient(120deg,#fff,var(--teal)); -webkit-background-clip:text; background-clip:text; color:transparent; line-height:1; margin-bottom:10px;}
.dark-stat-label{font-size:12.5px; font-weight:700; color:rgba(255,255,255,0.55); letter-spacing:0.04em;}
@media (max-width:780px){.dark-stat-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:480px){.dark-stat-grid{grid-template-columns:1fr;}}

/* refined heading rhythm — slightly larger, tighter tracking for a more "designed" feel */
.h2{letter-spacing:-0.02em;}
.hero h1{letter-spacing:-0.025em;}

/* subtle text-balance for headlines (modern CSS, progressive enhancement) */
h1, h2, .h2{text-wrap:balance;}

/* audience/global-reach strip */
.strip{padding:30px 0; border-bottom:1px solid var(--line); background:var(--bg-alt);}
.strip-inner{display:flex; flex-wrap:wrap; gap:10px 28px; align-items:center; justify-content:center;}
.strip-label{font-size:12px; letter-spacing:0.06em; text-transform:uppercase; color:var(--slate-light); font-weight:700; width:100%; text-align:center; margin-bottom:6px;}
.strip-item{font-family:var(--font-display); font-size:14px; color:var(--navy); font-weight:600; padding:6px 14px; background:#fff; border:1px solid var(--line); border-radius:999px;}
