/* Source block: inline */
:root{
  --bg:#ffffff;
  --paper:#f7f8fc;
  --paper2:#f3f5f9;
  --ink:#160a35;
  --text:#5f6674;
  --line:#e7eaf0;
  --purple:#6d46d5;
  --purple-deep:#3d267d;
  --blue:#3d74ff;
  --green:#23a46d;
  --orange:#ffb23e;
  --signal:#7A3DB8;
  --guide:#D6A600;
  --align:#52A329;
  --clear:#015B93;
  --code:#018DD7;
  --flow:#E66A2C;
  --reach:#01867B;
  --core:#423E4F;
  --radius:18px;
  --shadow:0 15px 38px rgba(18,22,38,.08);
  --main-font:'Plus Jakarta Sans',sans-serif;
  --base-font:'Inter',sans-serif;
  --head:var(--main-font);
  --body:var(--base-font);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font:400 16px/1.7 var(--body);
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
/* HexTone uses Bootstrap 5 container widths. Keep this exact sitewide. */
.container,.wide{
  --bs-gutter-x:1.5rem;
  width:100%;
  padding-right:calc(var(--bs-gutter-x) * .5);
  padding-left:calc(var(--bs-gutter-x) * .5);
  margin-right:auto;
  margin-left:auto;
}
@media (min-width:576px){.container,.wide{max-width:540px}}
@media (min-width:768px){.container,.wide{max-width:720px}}
@media (min-width:992px){.container,.wide{max-width:960px}}
@media (min-width:1200px){.container,.wide{max-width:1140px}}
@media (min-width:1400px){.container,.wide{max-width:1320px}}

h1,h2,h3,h4,h5,h6{
  margin:0;
  font-family:var(--head);
  color:var(--ink);
  letter-spacing:0;
}
h1{font-size:64px;line-height:1.03;font-weight:700}
h2{font-size:46px;line-height:1.12;font-weight:700}
h3{font-size:24px;line-height:1.22;font-weight:700}
h4{font-size:18px;line-height:1.35;font-weight:700}
p{margin:0 0 14px}
small, .eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font:700 12px/1 var(--head);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#8690a0;
}
.eyebrow:before{
  content:"";
  width:26px; height:2px; border-radius:99px; background:var(--purple);
}
.btns{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;padding:0 24px;border-radius:10px;
  font:700 15px/1 var(--head);transition:.25s ease;
  border:1px solid transparent;
}
.btn.primary{background:var(--blue);color:#fff}
.btn.primary:hover{transform:translateY(-1px)}
.btn.secondary{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.22)}
.btn.secondary.dark{background:#fff;color:var(--ink);border-color:var(--line)}
.btn.secondary.dark:hover{background:var(--paper)}
.linkbtn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:52px;padding:0 24px;margin-top:10px;
  border:2px solid #334057;border-radius:8px;background:transparent;color:#334057;
  transition:all .25s ease
}
.linkbtn span{display:inline;font-size:1em;background:none;color:inherit;width:auto;height:auto}
.linkbtn:hover{background:#334057;color:#fff;border-color:#334057}
.section{padding:100px 0}
.section-head{max-width:760px;margin:0 auto 42px;text-align:center}
.section-head p{margin:18px auto 0;font-size:18px;max-width:720px}

/* header */
.header{
  position:absolute;z-index:20;top:0;left:0;width:100%;
  padding:20px 0;
}
.header .bar{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.logo{
  display:flex;align-items:center;gap:12px;
  color:#fff;font:800 31px/1 var(--head);letter-spacing:-.03em;
}
.logo .mark{
  width:28px;height:28px;border-radius:8px;
  background:linear-gradient(135deg,#57b0ff,#6d46d5);
  position:relative;box-shadow:0 10px 18px rgba(0,0,0,.15)
}
.logo .mark:before,.logo .mark:after{
  content:"";position:absolute;background:#fff;border-radius:20px;opacity:.95
}
.logo .mark:before{left:8px;top:5px;width:4px;height:18px}
.logo .mark:after{left:16px;top:5px;width:4px;height:18px}
.logo .txt{display:flex;flex-direction:column;gap:2px}
.logo .txt b{font-size:29px;font-weight:800}
.logo .txt em{font:700 10px/1 var(--head);letter-spacing:.18em;text-transform:uppercase;font-style:normal;color:rgba(255,255,255,.75)}
.nav{
  display:flex;align-items:center;gap:28px;color:#fff;
  font:600 14px/1 var(--head)
}
.nav a{opacity:.95}
.nav a:hover{opacity:1}
.nav .cta{padding:0 18px;min-height:44px;background:#fff;color:var(--ink);border-radius:8px;font-weight:700}

/* hero slider */
.hero{
  position:relative;
  min-height:900px;
  background:#120d24;
  color:#fff;
  overflow:hidden;
}
.hero-track{
  position:relative;
  min-height:900px;
}
.slide{
  position:absolute;inset:0;
  opacity:0;pointer-events:none;
  transition:opacity .65s ease;
}
.slide.active{opacity:1;pointer-events:auto}
.slide-bg{
  position:absolute;inset:0;
  background-size:cover;
  background-position:center right;
  transform:scale(1.02);
}
.slide::before{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(15,10,31,.82) 0%,rgba(18,12,39,.70) 32%,rgba(22,16,48,.40) 55%,rgba(17,12,34,.24) 72%,rgba(12,8,21,.16) 100%),
    linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.0));
  z-index:1;
}
.slide::after{
  content:"";
  position:absolute;inset:0;
  background-image:
    radial-gradient(circle at 15% 18%,rgba(255,255,255,.06),transparent 28%),
    linear-gradient(135deg,rgba(255,255,255,.07) 0 2px,transparent 2px 100%);
  background-size:auto, 220px 220px;
  opacity:.18;
  z-index:1;
}
.hero-inner{
  position:relative;z-index:2;
  min-height:900px;
  display:flex;align-items:center;
}
.hero-copy{
  width:min(650px,100%);
  padding-top:34px;
}
.hero-copy .eyebrow{color:rgba(255,255,255,.75)}
.hero-copy .eyebrow:before{background:#fff}
.hero-copy h1,.hero-copy h2{color:#fff;max-width:690px}
.hero-copy p{
  font-size:18px;line-height:1.68;margin:20px 0 30px;
  max-width:600px;color:rgba(255,255,255,.86)
}
.hero-tag{
  display:inline-flex;align-items:center;gap:9px;margin-bottom:18px;
  padding:8px 12px;border-radius:999px;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);
  color:#fff;font:700 12px/1 var(--head);letter-spacing:.08em;text-transform:uppercase
}
.hero-support{
  position:absolute;
  left:75%;
  right:auto;
  transform:translateX(-50%);
  bottom:150px;
  z-index:3;
  width:min(560px,40vw);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.hero-support-item{
  min-height:132px;
  padding:16px 16px 15px;
  border-radius:14px;
  background:rgba(12,10,25,.28);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  color:#fff;
}
.hero-support-item b{
  display:block;
  color:#fff;
  font:700 15px/1.3 var(--head);
  margin-bottom:7px
}
.hero-support-item span{
  display:block;
  color:rgba(255,255,255,.78);
  font-size:12.5px;
  line-height:1.5
}
.slider-nav{
  position:absolute;z-index:3;left:0;right:0;bottom:96px;
}
.slider-nav .wide{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
}
.dots{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dot{
  width:11px;height:11px;border-radius:50%;border:none;cursor:pointer;
  background:rgba(255,255,255,.30);transition:.25s
}
.dot.active{width:34px;border-radius:99px;background:#fff}
.arrows{display:flex;gap:10px}
.arrow{
  width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.08);color:#fff;cursor:pointer;
  font:700 18px/1 var(--head)
}
.arrow:hover{background:rgba(255,255,255,.18)}
.wave{
  position:absolute;left:0;right:0;bottom:-1px;z-index:4;line-height:0
}
.wave svg{display:block;width:100%;height:72px}
.wave path{fill:#fff}

/* quick recognition */
.recognition{padding:96px 0;background:#fff}.recognition .rec-grid{position:relative}.recognition .rec-copy{padding-right:18px}.recognition .pain-list{position:relative}.recognition .pain-list:before{content:"";display:block;width:100%;height:260px;border-radius:18px;background:url("/recognition.png") center/cover no-repeat;margin-bottom:28px}
.rec-grid{
  display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start
}
.rec-copy h2{max-width:680px}
.rec-copy p{font-size:18px;margin-top:18px;max-width:700px}
.pain-list{display:grid;gap:0;align-self:start}
.pain{
  padding:22px 0;background:transparent;border:0;border-radius:0
}
.pain:first-child{padding-top:0}
.pain + .pain{border-top:1px solid #d7d9df}
.pain h4{margin:0 0 10px;color:var(--ink)}
.pain p{margin:0;color:var(--text)}

/* value snapshots */
.snapshots{background:var(--paper);padding:96px 0}
.snapshot-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:22px
}
.snap{
  background:#fff;border:1px solid #e7e7ec;border-radius:18px;padding:34px 32px 30px;
  box-shadow:0 12px 34px rgba(24,28,46,.07)
}
.snap-icon{
  width:88px;height:88px;display:flex;align-items:center;justify-content:flex-start;
  color:var(--blue);margin-bottom:26px
}
.snap-icon svg{width:82px;height:82px;display:block;fill:none;stroke:currentColor;stroke-width:3.6;stroke-linecap:round;stroke-linejoin:round}
.snap h5{margin:0 0 14px}
.snap p{margin:0 0 18px}
.snap ul{list-style:none;margin:0;padding:0}
.snap li{position:relative;padding-left:28px;margin:0 0 9px}
.snap li:last-child{margin-bottom:0}
.snap li:before{
  content:"✓";position:absolute;left:0;top:0;color:var(--purple);
  font-family:var(--main-font);font-size:1rem;font-weight:700;line-height:1.6666
}

/* modules */
.modules{padding:96px 0;background:#fff}
.modules-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.module{
  --mod-color:var(--purple);
  position:relative;background:#fff;border:1px solid var(--line);border-radius:12px;
  padding:34px 28px 30px;overflow:hidden;min-height:330px;display:flex;flex-direction:column
}
.module:before{content:"";position:absolute;left:0;top:0;width:100%;height:5px;background:var(--mod-color)}
.module[data-mod="guide"]{--mod-color:var(--guide)}
.module[data-mod="align"]{--mod-color:var(--align)}
.module[data-mod="signal"]{--mod-color:var(--signal)}
.module[data-mod="clear"]{--mod-color:var(--clear)}
.module[data-mod="code"]{--mod-color:var(--code)}
.module[data-mod="flow"]{--mod-color:var(--flow)}
.module[data-mod="reach"]{--mod-color:var(--reach)}
.module[data-mod="core"]{--mod-color:var(--core)}
.module small{display:block;color:#818996;margin-bottom:18px}
.module h2{color:var(--mod-color)!important;margin:0 0 14px}
.module p{margin:0 0 18px}
.module-descriptor{font-family:var(--base-font);font-size:1rem;line-height:1.6666;font-weight:400;color:var(--text);margin:0 0 22px}
a.tra-link{font-family:var(--main-font);font-size:1rem;line-height:1;font-weight:600;color:var(--ink);margin-top:auto;display:inline-block;width:max-content}
a.tra-link:after{position:relative;font-weight:600;content:"›";font-size:.95rem;top:0;left:5px}
a.tra-link:hover{color:var(--mod-color)!important}

/* core feature — HexTone edge-break layout */
.coreband{padding:112px 0;background:#fff;overflow:hidden}
.core-wrap{display:grid;grid-template-columns:minmax(0,.74fr) minmax(0,1.26fr);gap:54px;align-items:center}
.core-copy{align-self:center;min-width:0}
.core-copy h2{max-width:590px}
.core-copy p{margin-top:22px;max-width:590px}
.core-stats{display:grid;grid-template-columns:1fr 1fr;margin-top:34px;border:1px solid #e1e3e8;border-radius:10px;overflow:hidden;background:#fff}
.core-stat{padding:28px 24px;min-height:150px;display:flex;flex-direction:column;justify-content:center}
.core-stat:nth-child(1),.core-stat:nth-child(3){border-right:1px solid #e1e3e8}
.core-stat:nth-child(1),.core-stat:nth-child(2){border-bottom:1px solid #e1e3e8}
.core-stat strong{font-family:var(--main-font);font-size:1.5rem;line-height:1.25;font-weight:700;color:var(--ink);margin-bottom:9px}
.core-stat span{font-family:var(--base-font);font-size:1rem;line-height:1.6666;font-weight:400;color:var(--text)}
.core-visual{min-width:0;overflow:hidden;width:calc(100% + max(36px,(100vw - 1260px)/2));margin-right:calc(-1 * max(36px,(100vw - 1260px)/2));}
.core-dashboard{width:calc(100% + 140px);max-width:none;height:auto;display:block;border:1px solid #e1e3e8;border-radius:18px 0 0 18px;box-shadow:0 15px 38px rgba(18,22,38,.08)}

/* trust */
.trust{padding:96px 0;background:#fff}
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;align-items:start}
.trust-card{background:transparent;border:0;border-radius:0;padding:0;text-align:center}
.trust-card:before{display:none}
.trust-card img{width:100%;height:220px;object-fit:cover;display:block;border-radius:18px;margin:0 0 24px}
.trust-card h3{font-size:22px;margin-bottom:10px}
.trust-card p{font-size:15px;max-width:320px;margin:0 auto}
.trust-note{margin:32px auto 0;text-align:center;color:var(--ink);font:700 17px/1.6 var(--head);background:#f5f2ff;border-radius:999px;padding:16px 28px;width:max-content;max-width:100%}

/* industries strip */
.industries{padding:104px 0;background:linear-gradient(rgba(57,59,96,.88),rgba(57,59,96,.88)), url("/industry_bg.jpg") center center/cover fixed no-repeat;position:relative;color:#fff}
.industries .section-head h2,.industries .section-head p,.industries .section-head .eyebrow{color:#fff}
.industries .section-head{max-width:980px;margin-bottom:46px}
.industries .section-head p{max-width:760px;color:rgba(255,255,255,.88)}
.industries .section-head .eyebrow{color:#cbe86d}
.industries .section-head .eyebrow:before{background:#cbe86d}
.ind-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;align-items:start}
.ind{position:relative;min-height:0;border-radius:0;overflow:visible;background:transparent;box-shadow:none}
.ind:before{display:none}
.ind-thumb{display:block;width:100%;aspect-ratio:4/5;border-radius:16px;overflow:hidden;background:#fff;margin:0 0 18px}
.ind-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ind .lab{position:static;color:#fff}
.ind .lab small{color:rgba(255,255,255,.80);margin-bottom:8px}
.ind .lab small:before{background:#fff}
.ind .lab b{display:block;font:700 22px/1.15 var(--head);margin-bottom:10px;color:#fff}
.ind .lab span{display:block;font-size:13px;line-height:1.55;color:rgba(255,255,255,.88)}

/* leadership CTA */
.challenge{padding:100px 0;background:#fff}
.challenge-wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:52px;align-items:start;background:#fff;border:0;border-radius:0;padding:0}
.challenge-photo{min-height:760px;border-radius:0;overflow:visible;position:relative;background:transparent}
.challenge-photo:before,.challenge-photo:after{display:none}
.challenge-collage{width:100%;height:auto;display:block}
.challenge-copy h2{max-width:700px}
.challenge-copy p{font-size:17px;margin:18px 0 16px;max-width:640px}
.challenge-list{display:grid;gap:22px;margin:30px 0 0}
.challenge-list .item{display:grid;grid-template-columns:56px 1fr;gap:18px;align-items:start;background:transparent;border:0;border-radius:0;padding:0}
.challenge-list i{width:56px;height:56px;border-radius:0;background:transparent;color:#6b66f6;display:inline-flex;align-items:flex-start;justify-content:center;font-style:normal;font-weight:700;flex:0 0 56px}
.challenge-list i svg{width:44px;height:44px;display:block;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.challenge-list b{display:block;color:var(--ink);font:700 1.944rem/1.2 var(--head);margin-bottom:6px}
.challenge-list span{display:block;font-size:16px;line-height:1.75}

/* final CTA */
.finalcta{padding:90px 0;background:#fff}
.cta-box{
  border-radius:26px;padding:54px 56px;background:linear-gradient(135deg,#5f3fc8 0%,#3c67e8 100%);
  color:#fff;position:relative;overflow:hidden
}
.cta-box:before{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(135deg,rgba(255,255,255,.08) 0 2px,transparent 2px 100%);
  background-size:180px 180px;opacity:.18
}
.cta-box > *{position:relative;z-index:1}
.cta-box h2{color:#fff;max-width:660px}
.cta-box p{font-size:18px;color:rgba(255,255,255,.92);margin:18px 0 28px;max-width:720px}
.cta-box .btn.primary{background:#fff;color:var(--ink)}
.cta-box .btn.secondary{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.24)}
.cta-meta{display:flex;gap:28px;flex-wrap:wrap;margin-top:24px}
.cta-meta div{font:700 13px/1.5 var(--head);color:rgba(255,255,255,.86)}

/* footer */
.footer{
  padding:34px 0 26px;background:#fff;border-top:1px solid var(--line)
}
.footer-top{
  display:grid;grid-template-columns:1.2fr 2fr;gap:24px;align-items:start;padding-bottom:26px
}
.footer .f-logo{
  display:flex;align-items:center;gap:12px;color:var(--ink);font:800 28px/1 var(--head)
}
.footer .f-logo .mark{
  width:24px;height:24px;border-radius:7px;background:linear-gradient(135deg,#57b0ff,#6d46d5);position:relative
}
.footer .f-logo .mark:before,.footer .f-logo .mark:after{
  content:"";position:absolute;background:#fff;border-radius:20px
}
.footer .f-logo .mark:before{left:7px;top:4px;width:3px;height:16px}
.footer .f-logo .mark:after{left:14px;top:4px;width:3px;height:16px}
.footer .sub{margin-top:14px;font-size:14px;max-width:340px}
.fgrid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:18px
}
.fcol h5{
  font:700 14px/1 var(--head);text-transform:none;color:var(--ink);margin-bottom:16px
}
.fcol a{
  display:block;font-size:14px;line-height:1.65;color:var(--text);margin-bottom:9px
}
.footer-bottom{
  border-top:1px solid var(--line);padding-top:18px;
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  font-size:13px;color:#89909c
}

@media (max-width:1200px){
  h1{font-size:56px}
  .hero,.hero-inner,.hero-track{min-height:860px}
  .slider-nav{bottom:84px}
  .modules-grid{grid-template-columns:repeat(3,1fr)}
  .ind-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:1100px){
  .hero-support{width:min(500px,48vw);grid-template-columns:1fr 1fr}
  .hero-support-item:last-child{grid-column:1 / -1}
}
@media (max-width:980px){
  h1{font-size:48px}
  h2{font-size:38px}
  .nav{display:none}
  .hero,.hero-inner,.hero-track{min-height:820px}
  .hero-copy p{font-size:18px}
  .hero-support{
    position:relative;left:auto;right:auto;transform:none;bottom:auto;width:min(650px,100%);
    grid-template-columns:repeat(3,1fr);margin-top:28px
  }
  .hero-support-item:last-child{grid-column:auto}
  .rec-grid,.core-wrap,.challenge-wrap,.footer-top{grid-template-columns:1fr}
  .snapshot-grid,.trust-grid{grid-template-columns:1fr 1fr}
  .modules-grid{grid-template-columns:repeat(2,1fr)}
  .ind-grid{grid-template-columns:repeat(2,1fr)}
  .fgrid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:680px){
  body{font-size:15px}
  .container,.wide{width:min(100%,calc(100% - 28px))}
  .header{padding:18px 0}
  .logo .txt b{font-size:25px}
  h1{font-size:40px}
  h2{font-size:33px}
  .hero,.hero-inner,.hero-track{min-height:780px}
  .hero-copy{padding-top:56px}
  .hero-copy p{font-size:17px;margin:18px 0 28px}
  .hero-support{
    position:relative;left:auto;right:auto;transform:none;bottom:auto;width:100%;
    grid-template-columns:1fr;margin-top:26px
  }
  .hero-support-item{min-height:0;padding:13px 14px;background:rgba(12,10,25,.32)}
  .slider-nav{bottom:78px}
  .slider-nav .wide{flex-direction:column;align-items:flex-start}
  .recognition,.snapshots,.modules,.coreband,.trust,.industries,.challenge,.finalcta{padding:72px 0}
  .section-head p{font-size:17px}
  .snapshot-grid,.trust-grid,.modules-grid,.ind-grid,.fgrid{grid-template-columns:1fr}
  .synergy,.ui-panels{grid-template-columns:1fr}
  .cta-box{padding:34px 24px}
}


/* ==========================================================================\n   VAIIO V4 — EXACT HEXTONE TYPOGRAPHY LOCK\n   Source: HexTone Home Demo 24 / css/style_1.css + responsive.css\n   No component-specific mini type scale is allowed to override these roles.\n   ========================================================================== */
html{font-size:16px!important;}
body{
  font-family:var(--base-font)!important;
  color:var(--text)!important;
  line-height:1.6666!important;
  font-weight:400!important;
  font-size:1rem!important;
}

/* HexTone heading foundation */
h1,h2,h3,h4,h5,h6{
  font-family:var(--main-font)!important;
  font-weight:700!important;
  letter-spacing:0!important;
  margin-bottom:0;
}
p{font-family:var(--base-font)!important;font-size:1rem!important;line-height:1.6666!important;font-weight:400!important;}

/* Exact HexTone size utilities used by Home Demo 24 */
.fs-16{font-size:1rem!important;}
.fs-18{font-size:1.125rem!important;}
.fs-21{font-size:1.3125rem!important;}
.fs-46{font-size:2.875rem!important;}
.fs-52{font-size:3.25rem!important;}
.fs-64{font-size:4rem!important;}

/* HexTone module subtitle / eyebrow */
.eyebrow, small{
  font-family:var(--main-font)!important;
  font-size:.825rem!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:.75px!important;
  text-transform:uppercase!important;
}

/* Exact HexTone button typography */
.btn,.linkbtn,.nav .cta{
  font-family:var(--main-font)!important;
  font-size:.975rem!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:0!important;
}
.nav{
  font-family:var(--main-font)!important;
  font-size:1rem!important;
  line-height:50px!important;
  font-weight:600!important;
  letter-spacing:0!important;
}

/* HERO-24 typography: fs-64 + fs-18 exactly */
.hero-copy h1,.hero-copy h2{
  font-family:var(--main-font)!important;
  font-size:4rem!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:0!important;
}
.hero-copy p{
  font-family:var(--base-font)!important;
  font-size:1.125rem!important;
  line-height:1.6666!important;
  font-weight:400!important;
}
.hero-copy .eyebrow{margin-bottom:35px;}

/* ==========================================================
   CONTENT TYPOGRAPHY: the HexTone hierarchy the user approved
   H2 = fs-52 (52px) / H6 = fs-21 (21px) / Body = 16px
   Section intro = fs-18 only where HexTone itself uses fs-18.
   ========================================================== */
.rec-copy h2,
.snapshots .section-head h2,
.modules .section-head h2,
.core-copy h2,
.trust .section-head h2,
.industries .section-head h2,
.challenge-copy h2,
.finalcta h2{
  font-family:var(--main-font)!important;
  font-size:3.25rem!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:0!important;
}

/* Exact HexTone semantic sizes used by our approved references:
   accordion h4.fs-22 = 22px; feature-card h5.fs-24 = 24px. */
.pain h4{
  font-family:var(--main-font)!important;
  font-size:1.375rem!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:0!important;
}
.snap h5{
  font-family:var(--main-font)!important;
  font-size:1.5rem!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:0!important;
}

/* Section intro copy mirrors HexTone .section-title p.fs-18 */
.section-head>p,
.rec-copy>p,
.core-copy>p,
.challenge-copy>p,
.cta-box>p{
  font-family:var(--base-font)!important;
  font-size:1.125rem!important;
  line-height:1.6666!important;
  font-weight:400!important;
}

/* Every feature / card / subsection title = HexTone h6.fs-21 */
.module h2,
.core-stat strong,
.trust-card h3,
.ind .lab b,
.challenge-list b,
.ui-top strong,
.barrow strong,
.listrow b{
  font-family:var(--main-font)!important;
  font-size:1.3125rem!important;
  line-height:1.35!important;
  font-weight:700!important;
  letter-spacing:0!important;
}

/* Every supporting paragraph/list = HexTone base body, never mini copy */
.pain p,
.snap p,.snap li,
.module p,.module-descriptor,
.core-stat span,
.trust-card p,
.ind .lab span,
.challenge-list span,
.barrow span,
.listrow span,
.ui-panels,
.trust-note{
  font-family:var(--base-font)!important;
  font-size:1rem!important;
  line-height:1.6666!important;
  font-weight:400!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* Product/module utility labels: HexTone module-subtitle treatment, not body hierarchy */
.module .kicker,.hero-support-item small,.cta-meta div{
  font-family:var(--main-font)!important;
  font-size:.825rem!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:.75px!important;
  text-transform:uppercase!important;
}
a.tra-link{font-family:var(--main-font)!important;font-size:1rem!important;line-height:1!important;font-weight:600!important;letter-spacing:0!important;}

/* Homepage hero support cards: use HexTone body/title scale, no 12px descriptive text */
.hero-support-item b{
  font-family:var(--main-font)!important;
  font-size:1.3125rem!important;
  line-height:1.35!important;
  font-weight:700!important;
}
.hero-support-item span{
  font-family:var(--base-font)!important;
  font-size:1rem!important;
  line-height:1.6666!important;
  font-weight:400!important;
}

/* Keep logo treatment bespoke; navigation/content type remains HexTone exact */
.logo,.logo .txt b,.logo .txt em{font-family:var(--main-font)!important;}

/* HexTone footer typography */
.footer{font-family:var(--base-font)!important;}
.footer h6,.footer-col h4{
  font-family:var(--main-font)!important;
  font-size:1.0815rem!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.footer a,.footer .sub{
  font-family:var(--base-font)!important;
  font-size:1rem!important;
  line-height:1.6666!important;
  font-weight:400!important;
}
.footer-bottom,.footer-bottom *{
  font-family:var(--base-font)!important;
  font-size:1rem!important;
  line-height:1.6666!important;
  font-weight:400!important;
}

/* Exact HexTone responsive size reductions for fs-52 / fs-64 families */
@media (min-width:992px) and (max-width:1199.95px){
  .hero-copy h1,.hero-copy h2{font-size:3.875rem!important;} /* HexTone fs-64 => 62px */
  .rec-copy h2,.snapshots .section-head h2,.modules .section-head h2,.core-copy h2,.trust .section-head h2,.industries .section-head h2,.challenge-copy h2,.finalcta h2{font-size:3.125rem!important;} /* fs-52 => 50px */
}
@media (min-width:768px) and (max-width:991.98px){
  .hero-copy h1,.hero-copy h2{font-size:3.5rem!important;} /* 56px */
  .rec-copy h2,.snapshots .section-head h2,.modules .section-head h2,.core-copy h2,.trust .section-head h2,.industries .section-head h2,.challenge-copy h2,.finalcta h2{font-size:2.875rem!important;} /* 46px */
}
@media (min-width:480px) and (max-width:767.98px){
  .hero-copy h1,.hero-copy h2{font-size:2.75rem!important;} /* 44px */
  .rec-copy h2,.snapshots .section-head h2,.modules .section-head h2,.core-copy h2,.trust .section-head h2,.industries .section-head h2,.challenge-copy h2,.finalcta h2{font-size:2.375rem!important;} /* 38px */
}
@media (min-width:414px) and (max-width:479.98px){
  .hero-copy h1,.hero-copy h2{font-size:2.6255rem!important;} /* 42px */
  .rec-copy h2,.snapshots .section-head h2,.modules .section-head h2,.core-copy h2,.trust .section-head h2,.industries .section-head h2,.challenge-copy h2,.finalcta h2{font-size:2.25rem!important;} /* 36px */
}
@media (min-width:390px) and (max-width:413.98px){
  .hero-copy h1,.hero-copy h2{font-size:2.5rem!important;} /* 40px */
  .rec-copy h2,.snapshots .section-head h2,.modules .section-head h2,.core-copy h2,.trust .section-head h2,.industries .section-head h2,.challenge-copy h2,.finalcta h2{font-size:2.125rem!important;} /* 34px */
}
@media (min-width:321px) and (max-width:389.98px){
  .hero-copy h1,.hero-copy h2{font-size:2.375rem!important;} /* 38px */
  .rec-copy h2,.snapshots .section-head h2,.modules .section-head h2,.core-copy h2,.trust .section-head h2,.industries .section-head h2,.challenge-copy h2,.finalcta h2{font-size:2rem!important;} /* 32px */
}
@media (max-width:320.98px){
  .hero-copy h1,.hero-copy h2{font-size:2.344827rem!important;} /* HexTone fs-64 => 34px */
  .rec-copy h2,.snapshots .section-head h2,.modules .section-head h2,.core-copy h2,.trust .section-head h2,.industries .section-head h2,.challenge-copy h2,.finalcta h2{font-size:1.931032rem!important;} /* HexTone fs-52 => 28px */
}


/* V7 responsive corrections for Sections 03–05 */
@media(max-width:1199.98px){
  .modules-grid{grid-template-columns:repeat(2,1fr)}
  .core-wrap{grid-template-columns:1fr 1.25fr;gap:42px}
  .core-visual{width:calc(100% + 24px);margin-right:-24px}
}
@media(max-width:991.98px){
  .core-wrap{grid-template-columns:1fr}
  .core-visual{width:100%;margin-right:0}
  .core-dashboard{border-radius:18px}
}
@media(max-width:767.98px){
  .modules-grid{grid-template-columns:1fr}
  .core-stats{grid-template-columns:1fr}
  .core-stat{border-right:0!important;border-bottom:1px solid #e1e3e8!important}
  .core-stat:last-child{border-bottom:0!important}
}

@media (max-width: 1199px){
  .trust-grid{grid-template-columns:repeat(3,1fr);gap:24px}
  .ind-grid{grid-template-columns:repeat(3,1fr)}
  .challenge-wrap{grid-template-columns:1fr;gap:36px}
  .challenge-photo{min-height:0}
}
@media (max-width: 991px){
  .core-wrap{grid-template-columns:1fr;gap:40px}
  .core-visual{width:100%;margin-right:0}
  .core-dashboard{width:100%;min-width:0;border-radius:18px}
  .trust-grid{grid-template-columns:1fr 1fr}
  .ind-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 767px){
  .trust-grid{grid-template-columns:1fr}
  .ind-grid{grid-template-columns:1fr}
}


/* Production image and conversion refinements */
.header{position:fixed;padding:16px 0;transition:.28s ease;background:transparent}
.header.scrolled{background:#fff;box-shadow:0 1px 0 rgba(16,24,40,.08);padding:10px 0}
.logo{height:46px;display:flex;align-items:center}
.logo img{height:38px;width:auto;object-fit:contain}
.logo .logo-color{display:none}.header.scrolled .logo-white{display:none}.header.scrolled .logo-color{display:block}
.header.scrolled .nav{color:#17203a}.header.scrolled .nav .cta{background:#17203a;color:#fff}
.hero .slide-bg{background-position:center right}
.recognition .rec-grid{grid-template-columns:.88fr 1.12fr;gap:68px}
.finalcta{padding:0;background:#121727}
.finalcta .container{max-width:none!important;padding:0}
.finalcta .cta-box{min-height:520px;border-radius:0;padding:120px max(24px,calc((100vw - 1320px)/2));background:linear-gradient(90deg,rgba(13,19,35,.88) 0%,rgba(13,19,35,.72) 46%,rgba(13,19,35,.48) 100%),url("/cta_bg.png") center/cover no-repeat;display:flex;flex-direction:column;justify-content:center}
.finalcta .cta-box:before{display:none}
.finalcta .cta-box h2{max-width:780px}.finalcta .cta-box p{max-width:700px;font-size:18px;line-height:1.7;color:rgba(255,255,255,.88);margin:20px 0 30px}
.finalcta .eyebrow{color:#fff}.finalcta .eyebrow:before{background:#fff}
.footer .fbrand img{width:190px;height:auto;margin-bottom:16px}.footer .fbrand p{max-width:330px}
.footer a{display:block;margin:9px 0}.foot-bottom{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:22px;margin-top:34px;font-size:14px}
@media(max-width:991px){.header .nav a:not(.cta){display:none}.hero{min-height:840px}.hero-track,.hero-inner{min-height:840px}.hero-support{left:50%;bottom:120px;width:calc(100% - 48px)}.recognition .rec-grid{grid-template-columns:1fr}.recognition .pain-list:before{height:320px}.foot-bottom{flex-direction:column}.finalcta .cta-box{padding:90px 36px}}
@media(max-width:767px){.hero-support{grid-template-columns:1fr;position:relative;left:auto;bottom:auto;transform:none;margin-top:30px;width:100%}.hero{min-height:980px}.hero-track,.hero-inner{min-height:980px}.hero-copy{padding-top:120px}.slider-nav{bottom:70px}.recognition .pain-list:before{height:240px}}



/* V2 visual corrections requested by user */
.recognition .pain-list:before{display:none!important;height:0!important;margin:0!important;background:none!important}
.recognition .rec-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;gap:68px!important;align-items:start!important}

.coreband{background:var(--paper)!important;padding:104px 0!important}
.core-wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:64px!important;align-items:center!important}
.core-copy,.core-visual{min-width:0}
.core-visual{position:relative;overflow:hidden;width:calc(100% + max(0px,(100vw - 1320px)/2));margin-right:calc(-1 * max(0px,(100vw - 1320px)/2));display:flex;align-items:center}
.core-dashboard{width:118%!important;max-width:none!important;min-width:920px;border-radius:20px 0 0 20px!important;box-shadow:0 18px 40px rgba(18,22,38,.08)!important}

.industries{background:linear-gradient(rgba(61,64,104,.78),rgba(61,64,104,.78)),url("/industry_bg.jpg") center center/cover fixed no-repeat!important}
.ind-grid{gap:20px!important}
.ind-thumb{border-radius:18px!important;box-shadow:0 12px 28px rgba(10,10,20,.14)}
.ind .lab b{font-size:18px!important;line-height:1.18!important}
.ind .lab span{font-size:14px!important;line-height:1.55!important}

.challenge-wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:64px!important;align-items:center!important}
.challenge-photo{overflow:hidden!important;min-height:0!important}
.challenge-collage{width:112%!important;max-width:none!important;margin-left:-36px}

.finalcta{background:#fff!important}
.finalcta .cta-box{min-height:500px!important;background:linear-gradient(90deg,rgba(24,31,48,.56) 0%,rgba(24,31,48,.36) 44%,rgba(24,31,48,.16) 100%),url("/cta_bg.png") center/cover no-repeat!important}
.finalcta .cta-box p{color:rgba(255,255,255,.92)!important}

.footer{padding:42px 0 28px!important;background:#fff!important;border-top:1px solid var(--line)!important}
.footer-top{display:grid!important;grid-template-columns:minmax(0,1.45fr) repeat(3,minmax(0,1fr))!important;gap:36px!important;align-items:start!important;padding-bottom:28px!important}
.footer .fbrand{padding-right:20px}
.footer .fbrand img{width:190px!important;height:auto!important;margin-bottom:18px!important}
.footer .fbrand p{max-width:340px!important;margin:0!important;color:var(--text)!important}
.footer .fcol h4{font:700 16px/1.2 var(--head)!important;color:var(--ink)!important;margin:6px 0 16px!important}
.footer .fcol a{display:block!important;font-size:15px!important;line-height:1.85!important;color:var(--text)!important;margin:0 0 4px!important}
.foot-bottom{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:24px!important;flex-wrap:wrap!important;border-top:1px solid var(--line)!important;padding-top:22px!important;margin-top:30px!important;font-size:14px!important;color:#7d8696!important}

@media (max-width: 1199px){
  .core-dashboard{width:120%!important;min-width:760px}
  .challenge-collage{width:106%!important;margin-left:-18px}
}
@media (max-width: 991px){
  .core-wrap,.challenge-wrap,.recognition .rec-grid,.footer-top{grid-template-columns:1fr!important}
  .core-visual{width:100%!important;margin-right:0!important}
  .core-dashboard{width:100%!important;min-width:0;border-radius:18px!important}
  .challenge-collage{width:100%!important;max-width:100%!important;margin-left:0!important}
  .foot-bottom{flex-direction:column!important}
}
@media (max-width: 767px){
  .footer-top{gap:22px!important}
}


/* V3 header + finalized industry image corrections */
.header .logo img{height:42px!important;width:auto!important}
.header.scrolled .logo img{height:40px!important}
.nav .cta{display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;padding:0 20px!important;min-height:44px!important;line-height:1!important}
.ind-thumb img{object-fit:cover!important}
.ind:nth-child(1) .ind-thumb img{object-position:62% center!important}
.ind:nth-child(2) .ind-thumb img{object-position:58% center!important}
.ind:nth-child(3) .ind-thumb img{object-position:58% center!important}
.ind:nth-child(4) .ind-thumb img{object-position:62% center!important}
.ind:nth-child(5) .ind-thumb img{object-position:55% center!important}
.ind .lab b{margin-top:0!important}



/* V4 refinements: section 7 final imagery, clearer parallax, larger logo, and universal hover states */
:root{--homepage-accent:var(--blue)}
.logo img{height:46px!important}
.header.scrolled .logo img{height:44px!important}

.btn,.linkbtn,.nav .cta{transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease}

.btn.primary{background:var(--homepage-accent)!important;border-color:var(--homepage-accent)!important;color:#fff!important}
.btn.primary:hover{background:transparent!important;color:var(--homepage-accent)!important;border-color:var(--homepage-accent)!important;transform:translateY(-1px)}

.btn.secondary{background:transparent!important;border-color:rgba(255,255,255,.44)!important;color:#fff!important}
.btn.secondary:hover{background:var(--homepage-accent)!important;border-color:var(--homepage-accent)!important;color:#fff!important}

.btn.secondary.dark{background:transparent!important;border-color:#334057!important;color:#334057!important}
.btn.secondary.dark:hover{background:var(--homepage-accent)!important;border-color:var(--homepage-accent)!important;color:#fff!important}

.linkbtn{background:transparent!important;border-color:#334057!important;color:#334057!important}
.linkbtn:hover{background:var(--homepage-accent)!important;border-color:var(--homepage-accent)!important;color:#fff!important}

.nav .cta{display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;padding:0 20px!important;min-height:44px!important;line-height:1!important;border:1px solid rgba(255,255,255,.9)!important;background:#fff!important;color:var(--ink)!important;border-radius:8px!important}
.nav .cta:hover{background:transparent!important;color:#fff!important;border-color:#fff!important;box-shadow:none!important;opacity:1!important}
.header.scrolled .nav .cta{background:var(--homepage-accent)!important;border-color:var(--homepage-accent)!important;color:#fff!important}
.header.scrolled .nav .cta:hover{background:transparent!important;color:var(--homepage-accent)!important;border-color:var(--homepage-accent)!important}

.cta-box .btn.primary{background:#fff!important;border-color:#fff!important;color:var(--ink)!important}
.cta-box .btn.primary:hover{background:transparent!important;border-color:#fff!important;color:#fff!important}
.cta-box .btn.secondary{background:transparent!important;border-color:rgba(255,255,255,.55)!important;color:#fff!important}
.cta-box .btn.secondary:hover{background:#fff!important;border-color:#fff!important;color:var(--ink)!important}

.industries{background:linear-gradient(rgba(52,57,96,.60),rgba(52,57,96,.60)),url("/industry_bg.jpg") center center/cover fixed no-repeat!important}
.ind-grid{gap:22px!important}
.ind-thumb{background:rgba(255,255,255,.08)!important;border-radius:18px!important;overflow:hidden!important}
.ind-thumb img{display:block;width:100%!important;height:100%!important;object-fit:cover!important;filter:saturate(.92) contrast(1.02)}
.ind:nth-child(1) .ind-thumb img{object-position:center center!important}
.ind:nth-child(2) .ind-thumb img{object-position:center center!important}
.ind:nth-child(3) .ind-thumb img{object-position:center center!important}
.ind:nth-child(4) .ind-thumb img{object-position:center center!important}
.ind:nth-child(5) .ind-thumb img{object-position:center center!important}
.ind .lab b{font-size:18px!important;line-height:1.18!important;margin-bottom:10px!important}
.ind .lab span{font-size:14px!important;line-height:1.55!important;color:rgba(255,255,255,.92)!important}

@media (max-width: 991px){
  .logo img{height:42px!important}
  .header.scrolled .logo img{height:40px!important}
}


/* V5 Section 5: preserve dashboard at natural visual scale; clip only at browser edge */
.coreband{overflow:hidden!important}
.core-wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:64px!important;align-items:center!important}
.core-visual{position:relative!important;overflow:hidden!important;width:calc(100% + max(0px,(100vw - 1320px)/2))!important;margin-right:calc(-1 * max(0px,(100vw - 1320px)/2))!important;min-width:0!important}
.core-dashboard{width:1496px!important;min-width:1496px!important;max-width:none!important;height:auto!important;flex:0 0 auto!important;border-radius:20px 0 0 20px!important}
@media(max-width:991px){.core-visual{width:100%!important;margin-right:0!important}.core-dashboard{width:100%!important;min-width:0!important;max-width:100%!important;border-radius:18px!important}}

/* Source block: vaiio-homepage-brand-color-pass-v6 */
/* HOMEPAGE BRAND COLOR PASS V6
   Homepage/support-page palette lock:
   VAIIO Blue  #306199
   VAIIO Green #57BA6D
   Module-specific colors remain intact only where modules are being identified. */

:root{
  --blue:#306199!important;
  --green:#57BA6D!important;
  --homepage-accent:#306199!important;
  --homepage-green:#57BA6D;
  --homepage-blue-soft:#eef4f9;
  --homepage-green-soft:#f1f8f3;
}

/* Shared homepage eyebrow language */
.eyebrow{color:var(--blue)!important}
.eyebrow:before{background:var(--green)!important}
.hero-copy .eyebrow{color:rgba(255,255,255,.82)!important}
.hero-copy .eyebrow:before{background:var(--green)!important}

/* Primary CTA system — blue primary, green hover/support accent */
.btn.primary{background:var(--blue)!important;border-color:var(--blue)!important}
.btn.primary:hover{background:transparent!important;color:var(--blue)!important;border-color:var(--blue)!important}
.header.scrolled .nav .cta{background:var(--blue)!important;border-color:var(--blue)!important;color:#fff!important}
.header.scrolled .nav .cta:hover{background:transparent!important;color:var(--blue)!important;border-color:var(--blue)!important}
.linkbtn:hover,.btn.secondary.dark:hover{background:var(--green)!important;border-color:var(--green)!important;color:#fff!important}

/* Recognition: subtle green rule reinforces the two-color system */
.pain + .pain{border-top-color:rgba(48,97,153,.18)!important}
.pain h4{color:var(--ink)!important}

/* Value snapshots — alternating VAIIO blue / green, no module colors */
.snap:nth-child(odd) .snap-icon{color:var(--blue)!important}
.snap:nth-child(even) .snap-icon{color:var(--green)!important}
.snap:nth-child(odd) li:before{color:var(--green)!important}
.snap:nth-child(even) li:before{color:var(--blue)!important}
.snap:nth-child(1){border-top:3px solid var(--blue)!important}
.snap:nth-child(2){border-top:3px solid var(--green)!important}
.snap:nth-child(3){border-top:3px solid var(--blue)!important}

/* CORE is platform content: use support-page blue/green accents around the module-specific CORE visual */
.coreband{background:linear-gradient(180deg,var(--homepage-blue-soft) 0%,#fff 100%)!important}
.core-stats{border-color:rgba(48,97,153,.18)!important}
.core-stat:nth-child(1),.core-stat:nth-child(3){border-right-color:rgba(48,97,153,.16)!important}
.core-stat:nth-child(1),.core-stat:nth-child(2){border-bottom-color:rgba(48,97,153,.16)!important}
.core-stat:nth-child(odd) strong{color:var(--blue)!important}
.core-stat:nth-child(even) strong{color:var(--green)!important}

/* Trust: blue/green brand reinforcement without touching approved images */
.trust{background:#fff!important}
.trust-card:nth-child(1) h3,.trust-card:nth-child(3) h3{color:var(--blue)!important}
.trust-card:nth-child(2) h3{color:var(--green)!important}
.trust-note{
  background:linear-gradient(90deg,rgba(48,97,153,.09),rgba(87,186,109,.11))!important;
  border:1px solid rgba(48,97,153,.12)!important;
}

/* Industries: replace the old purple cast with VAIIO blue/green atmosphere */
.industries{
  background:
    linear-gradient(110deg,rgba(34,70,104,.78) 0%,rgba(48,97,153,.68) 52%,rgba(46,103,73,.58) 100%),
    url("/industry_bg.jpg") center center/cover fixed no-repeat!important;
}
.industries .section-head .eyebrow{color:#d7f2dd!important}
.industries .section-head .eyebrow:before{background:var(--green)!important}
.ind-thumb{box-shadow:0 14px 30px rgba(14,45,66,.20)!important}
.ind:nth-child(odd) .lab b{color:#fff!important}
.ind:nth-child(even) .lab b{color:#eefaf1!important}

/* Leadership section — established standalone glyph treatment in brand colors */
.challenge-list .item:nth-child(odd) i{color:var(--blue)!important}
.challenge-list .item:nth-child(even) i{color:var(--green)!important}

/* Final CTA: keep approved photography but give the overlay VAIIO identity */
.finalcta .cta-box{
  background:
    linear-gradient(100deg,rgba(31,69,105,.78) 0%,rgba(48,97,153,.62) 48%,rgba(57,126,79,.42) 100%),
    url("/cta_bg.png") center/cover no-repeat!important;
}
.finalcta .cta-box .btn.primary{background:#fff!important;border-color:#fff!important;color:var(--blue)!important}
.finalcta .cta-box .btn.primary:hover{background:var(--green)!important;border-color:var(--green)!important;color:#fff!important}
.finalcta .cta-box .btn.secondary:hover{background:var(--blue)!important;border-color:#fff!important;color:#fff!important}

/* Footer/link polish */
.footer .fcol a:hover{color:var(--blue)!important}
.footer .fcol:nth-of-type(even) a:hover{color:var(--green)!important}

/* Source block: vaiio-homepage-hero-premium-v7 */
.hero{background:#17344f!important}
.slide::before{background:linear-gradient(90deg,rgba(20,43,67,.88) 0%,rgba(28,65,98,.76) 30%,rgba(48,97,153,.44) 53%,rgba(48,97,153,.18) 72%,rgba(87,186,109,.075) 100%)!important}
.slide::after{background-image:radial-gradient(circle at 12% 20%,rgba(48,97,153,.16),transparent 31%),radial-gradient(circle at 88% 28%,rgba(87,186,109,.09),transparent 32%),linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,0))!important;background-size:auto!important;opacity:1!important}
.slide-bg{image-rendering:auto!important}

/* VAIIO final QA: scoped corrective styles */
.finalcta .eyebrow{color:#57BA6D!important;}.finalcta .eyebrow:before{background:#57BA6D!important;}

/* POST-REVIEW MOBILE: Why CORE matters. Do not miniaturize the dashboard. */
@media (max-width: 991px){
  #core .core-wrap{grid-template-columns:minmax(0,1fr)!important;gap:30px!important}
  #core .core-copy,#core .core-visual{min-width:0!important}
  #core .core-visual{display:block!important;width:100%!important;max-width:100%!important;margin:0!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border-radius:16px!important;scrollbar-width:thin;scrollbar-color:#306199 #edf2f7}
  #core .core-dashboard{display:block!important;width:1100px!important;min-width:1100px!important;max-width:none!important;height:auto!important;border-radius:16px!important;box-shadow:none!important}
  #core .core-visual:focus-visible{outline:3px solid #306199;outline-offset:3px}
}
@media (max-width: 480px){
  #core .core-dashboard{width:1050px!important;min-width:1050px!important}
  #core .core-stats{min-width:0!important}
}

/* Visible mobile discovery cue; hidden on approved desktop composition. */
.core-mobile-hint{display:none!important}
@media(max-width:991px){
 #core .core-mobile-hint{display:block!important;grid-column:1/-1!important;margin:-14px 0 0!important;font-size:13px!important;line-height:1.5!important;font-weight:600!important;color:#306199!important;text-align:left!important}
}
