
/* EPICORE NEXT WEBSITE PREVIEW R47.1
   Final approved production Website release R47.21. */
:root{
  --next-bg:#03111d;
  --next-bg2:#061827;
  --next-panel:#0a2437;
  --next-panel2:#0c2b42;
  --next-line:#155477;
  --next-cyan:#13afe0;
  --next-cyan-hi:#66ddfa;
  --next-gold:#c5962f;
  --next-text:#f4f8fb;
  --next-muted:#9bb6c8;
}
html,body{margin:0;background:var(--next-bg)!important;color:var(--next-text)!important;font-family:"Segoe UI",Arial,sans-serif!important;overflow-x:hidden}
*{box-sizing:border-box}
a{text-decoration:none}
.next-wrap{width:min(1180px,calc(100% - 44px));margin:0 auto}
.next-header{position:sticky;top:0;z-index:50;background:rgba(2,14,24,.94)!important;border-bottom:1px solid rgba(38,118,157,.35)!important;backdrop-filter:blur(16px)}
.next-header-row{min-height:76px;display:flex;align-items:center;gap:28px}
.next-header .epicore-r2-brand-logo{width:48px!important;height:48px!important;flex-basis:48px!important}
.next-header .epicore-r2-brand-name{font-size:23px!important}
.next-header .epicore-r2-brand-slogan{font-size:9px!important;letter-spacing:.1em!important}
.next-nav{display:flex;align-items:center;gap:21px;margin-left:auto}
.next-nav a{color:#9fb7c8!important;font-size:13px;font-weight:650}
.next-nav a:hover,.next-nav a.active{color:#fff!important}
.next-nav a.active{position:relative}
.next-nav a.active:after{content:"";height:2px;position:absolute;left:0;right:0;bottom:-9px;background:var(--next-cyan);box-shadow:0 0 10px rgba(19,175,224,.45)}
.next-header-actions{display:flex;align-items:center;gap:14px}
.next-signin{color:#b9cbd7!important;font-size:13px;font-weight:650;white-space:nowrap}
.next-menu{display:none}
.next-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:12px!important;font-weight:750!important;border:1px solid var(--next-line)!important;transition:.2s ease;background:#0c2b42!important;color:#fff!important}
.next-btn:hover{transform:translateY(-2px);border-color:var(--next-cyan)!important}
.next-btn-small{min-height:40px;padding:0 16px;font-size:12px}
.next-btn-primary{background:linear-gradient(180deg,#19b9e7,#079dce)!important;border-color:#42caf0!important;color:#00131d!important;box-shadow:0 10px 28px rgba(4,150,198,.16)}
.next-btn-secondary{background:rgba(7,31,47,.74)!important;border-color:#18739b!important}
.next-btn-gold{background:linear-gradient(180deg,#b98b28,#8d671a)!important;border-color:#d2a94b!important}
.next-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.next-centered{justify-content:center}
.next-eyebrow{font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--next-cyan)!important}
.next-home-hero{position:relative!important;min-height:650px!important;padding:92px 0 86px!important;background:linear-gradient(125deg,#041421 0%,#08283b 54%,#07304a 100%)!important}
.next-home-hero .next-hero-content{position:relative;z-index:2;max-width:1180px}
.next-home-hero .next-hero-content>div:not(.next-actions):not(.next-hero-trust),.next-home-hero h1,.next-home-hero p{max-width:540px}
.next-home-hero h1{font-size:clamp(36px,4vw,58px)!important;line-height:1.02!important;margin:20px 0 24px!important;letter-spacing:-.035em!important}
.next-home-hero h1 span{color:var(--next-cyan-hi)!important;text-shadow:0 0 24px rgba(37,190,231,.10)}
.next-hero-copy{font-size:17px!important;line-height:1.72!important;color:#abc1cf!important;padding-left:22px!important;border-left:1px solid rgba(29,189,231,.48)}
.next-hero-trust{display:flex;gap:22px;flex-wrap:wrap;margin-top:34px;color:#789caf;font-size:11px}
.next-hero-trust b{color:#b8d5e2}
.next-section{padding:84px 0;position:relative}
.next-dark{background:#04131f}
.next-section-heading{text-align:center;max-width:720px;margin:0 auto 40px}
.next-section-heading.next-left{text-align:left;margin-left:0}
.next-section-heading h2,.next-section h2,.next-final-cta h2{font-size:clamp(28px,3vw,40px)!important;margin:12px 0!important;letter-spacing:-.025em!important}
.next-section-heading p,.next-section p,.next-final-cta p{color:var(--next-muted)!important}
.next-ecosystem-section{background:linear-gradient(180deg,#071a29,#061521)}
.next-ecosystem{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:10px;margin-top:36px}
.next-ecosystem a{min-height:122px;padding:19px;border:1px solid rgba(27,108,148,.48);border-radius:18px;background:linear-gradient(180deg,rgba(11,43,65,.9),rgba(5,25,39,.9));display:flex;flex-direction:column;gap:5px;color:#fff}
.next-ecosystem a:hover{border-color:#1db5e3;transform:translateY(-2px)}
.next-ecosystem a span{font-size:10px;color:var(--next-cyan)}
.next-ecosystem a strong{font-size:15px}
.next-ecosystem a small{color:#7797a9}
.next-ecosystem i{color:#279dc8;font-style:normal}
.next-feature-story{background:radial-gradient(circle at 85% 10%,rgba(13,127,172,.08),transparent 30%),#03111d}
.next-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.next-feature-grid.compact{grid-template-columns:repeat(4,1fr)}
.next-feature-card{padding:26px!important;border-radius:18px!important;background:linear-gradient(150deg,rgba(12,45,67,.96),rgba(5,25,39,.96))!important;border:1px solid rgba(29,103,140,.58)!important;min-height:245px}
.next-feature-card h3{font-size:19px!important;margin:18px 0 10px!important}
.next-feature-card p{font-size:14px;line-height:1.65}
.next-feature-card a{color:#65d8f5;font-size:12px;font-weight:750}
.next-icon{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;background:#073653;border:1px solid #1484b2;color:#6ddcf7;font-size:11px;font-weight:900;letter-spacing:.08em;box-shadow:0 0 24px rgba(17,170,216,.08)}
.next-industry-block{background:linear-gradient(180deg,#061827,#04121e)}
.next-industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.next-industry-grid a{min-height:125px;padding:22px;border-radius:17px;border:1px solid rgba(28,90,120,.55);background:linear-gradient(135deg,rgba(12,46,69,.96),rgba(5,24,37,.96));display:flex;flex-direction:column;justify-content:flex-end;color:#fff}
.next-industry-grid a:hover{border-color:#1aa9d8}
.next-industry-grid b{font-size:17px}
.next-industry-grid span{color:#85a9ba;font-size:12px;margin-top:5px}
.next-mobile-block{background:radial-gradient(circle at 70% 50%,rgba(13,139,185,.16),transparent 32%),#03111d}
.next-split{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.next-split>div>p{font-size:16px;line-height:1.72}
.next-mobile-stack{display:grid;gap:12px}
.next-mobile-stack article{padding:19px 20px;border-radius:16px;border:1px solid rgba(24,102,138,.52);background:rgba(7,32,49,.82)}
.next-mobile-stack article span{color:#4ac9ee;text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:800}
.next-mobile-stack article h3{margin:7px 0 3px!important;font-size:17px!important}
.next-mobile-stack article p{margin:0;font-size:12px}
.next-confidence{background:#061725}
.next-confidence-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.next-confidence-grid article{padding:24px;border-top:2px solid rgba(20,170,215,.45);background:rgba(5,29,44,.65)}
.next-confidence-grid b{color:#4cd1f1;font-size:11px}
.next-confidence-grid h3{font-size:16px!important;margin:12px 0 8px!important}
.next-confidence-grid p{font-size:12px}
.next-final-cta{padding:56px 0;background:radial-gradient(circle at 82% 20%,rgba(19,165,213,.20),transparent 32%),linear-gradient(120deg,#061927,#08283b);border-top:1px solid rgba(27,103,139,.55)}
.next-final-cta .next-wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}
.next-final-cta .next-actions{margin:0;justify-content:flex-end}
.next-inner-hero{min-height:430px!important;padding:88px 0!important;background:linear-gradient(125deg,#041421,#08283b)!important}
.next-inner-content{max-width:1180px}
.next-inner-content h1{max-width:610px;font-size:clamp(34px,3.5vw,50px)!important;margin:14px 0 18px!important}
.next-inner-content p{max-width:590px;font-size:16px!important;line-height:1.7!important;color:#9eb8c8!important}
.next-panel{padding:30px;border:1px solid rgba(28,101,137,.56);border-radius:20px;background:linear-gradient(160deg,rgba(10,42,63,.94),rgba(5,25,38,.94))}
.next-checks{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:12px}
.next-checks li{position:relative;padding-left:24px;color:#9fb9c9}
.next-checks li:before{content:"✓";position:absolute;left:0;color:#41d0ef}
.next-industry-detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.next-industry-detail-grid article{padding:25px;border:1px solid rgba(26,98,134,.52);border-radius:17px;background:#072033}
.next-industry-detail-grid span{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#45c6e9}
.next-industry-detail-grid h3{font-size:17px!important;margin:10px 0!important}
.next-industry-detail-grid p{font-size:12px}
.next-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.next-pricing-grid article{padding:30px;border:1px solid rgba(29,103,140,.58);border-radius:20px;background:#082238}
.next-pricing-grid article.featured{border-color:#a77c25;box-shadow:0 0 35px rgba(171,123,33,.06)}
.next-price-label{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#4dd2f2}
.next-pricing-grid h3{font-size:22px!important;margin:13px 0!important}
.next-pricing-grid p{min-height:92px}
.next-pricing-note{margin-top:20px}
.next-mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.next-mini-grid span{padding:14px;border:1px solid rgba(30,92,122,.5);border-radius:11px;color:#9db7c8}
.next-download-layout,.next-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.next-support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.next-support-grid article{padding:26px;border:1px solid rgba(28,100,136,.55);border-radius:18px;background:#072137}
.next-support-grid span{color:#39c6eb;font-size:10px}
.next-support-grid h3{font-size:18px!important}
.next-support-grid p{font-size:13px}
.next-support-grid a{color:#60d8f4;font-size:12px;font-weight:700}
.next-footer{background:#020d16!important;border-top:1px solid rgba(27,87,116,.5)!important;padding:52px 0 18px}
.next-footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:34px}
.next-footer-grid p{max-width:330px;color:#7796a8!important;font-size:12px}
.next-footer-grid h4{font-size:12px!important;color:#fff!important;margin:0 0 13px!important}
.next-footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:8px}
.next-footer-grid a{color:#87a7b8!important;font-size:12px}
.next-footer-grid a:hover{color:#fff!important}
.next-footer-bottom{display:flex;justify-content:space-between;margin-top:38px;padding-top:16px;border-top:1px solid rgba(28,75,99,.4);font-size:10px;color:#54788c}

/* Reuse CURRENT Connected Business animation, preview modifications only. */
.next-site .epv3-map-arc{display:none!important}
.next-site .epv3-spark{display:none!important}
.next-site .epv3-core{width:158px!important;height:158px!important;box-shadow:0 0 0 12px rgba(16,168,216,.025),0 0 0 25px rgba(16,168,216,.012),0 0 42px rgba(16,168,216,.19)!important}
.next-site .epv3-core img{width:112px!important;height:112px!important}
.next-site .epv3-core::before{inset:-16px!important}
.next-site .next-orbit-circle{position:absolute;left:50%;top:50%;width:84%;aspect-ratio:1/1;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(67,198,239,.27);box-shadow:0 0 28px rgba(28,180,224,.04),inset 0 0 24px rgba(25,155,198,.025);pointer-events:none;z-index:2}
.next-site .next-orbit-runner{position:absolute;inset:0;border-radius:50%;animation:nextOrbitTwinkle 12s linear infinite}
.next-site .next-orbit-twinkle{position:absolute;left:50%;top:-4px;width:8px;height:8px;transform:translateX(-50%);border-radius:50%;background:#eaffff;box-shadow:0 0 5px #fff,0 0 14px #55daf8,0 0 26px #0aa4d4}
.next-site .next-orbit-twinkle:before,.next-site .next-orbit-twinkle:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:linear-gradient(90deg,transparent,#eaffff,transparent)}
.next-site .next-orbit-twinkle:before{width:22px;height:1px}
.next-site .next-orbit-twinkle:after{width:1px;height:22px}
@keyframes nextOrbitTwinkle{to{transform:rotate(360deg)}}
.next-site .epv3-caption{bottom:-4%!important}
.next-site .epicore-home-ghost-control-r5{top:-2%!important}
@media(prefers-reduced-motion:reduce){.next-site .next-orbit-runner{animation:none!important}.next-site .next-orbit-twinkle{display:none}}

@media(max-width:1080px){
  .next-nav{display:none;position:absolute;left:22px;right:22px;top:76px;padding:18px;border:1px solid #174c68;border-radius:14px;background:#031521;flex-direction:column;align-items:stretch}
  .next-nav.open{display:flex}
  .next-menu{display:inline-flex;margin-left:auto;background:#08273b!important;color:#fff!important;border:1px solid #155477!important;border-radius:10px;padding:9px 13px}
  .next-header-actions{display:none}
  .next-home-hero{padding-top:70px!important}
  .next-home-hero .next-hero-content>div:not(.next-actions):not(.next-hero-trust),.next-home-hero h1,.next-home-hero p{max-width:100%}
  .next-ecosystem{grid-template-columns:1fr 1fr;gap:12px}
  .next-ecosystem i{display:none}
  .next-feature-grid,.next-feature-grid.compact{grid-template-columns:1fr 1fr}
  .next-confidence-grid,.next-industry-detail-grid,.next-support-grid{grid-template-columns:1fr 1fr}
  .next-site .epv3-map{margin-top:42px!important}
  .next-split{grid-template-columns:1fr}
}
@media(max-width:700px){
  .next-wrap{width:min(100% - 28px,1180px)}
  .next-header-row{min-height:66px}
  .next-nav{top:66px}
  .next-home-hero{min-height:auto!important;padding:56px 0 40px!important}
  .next-home-hero h1{font-size:38px!important}
  .next-hero-copy{font-size:15px!important}
  .next-ecosystem,.next-feature-grid,.next-feature-grid.compact,.next-industry-grid,.next-confidence-grid,.next-industry-detail-grid,.next-pricing-grid,.next-support-grid,.next-download-layout,.next-contact-grid,.next-mini-grid,.next-footer-grid{grid-template-columns:1fr}
  .next-section{padding:58px 0}
  .next-final-cta .next-wrap{display:block}
  .next-final-cta .next-actions{justify-content:flex-start;margin-top:24px}
  .next-footer-bottom{display:block}
  .next-footer-bottom span{display:block;margin-top:5px}
  .next-site .epv3-core{width:135px!important;height:135px!important}
  .next-site .epv3-core img{width:94px!important;height:94px!important}
  .next-site .next-orbit-circle{width:82%}
}

/* EPICORE INNER HERO CONSISTENCY R47.5
   Lock the Connected Business animation to one size/position on every inner page.
   Protect the text column so headings and descriptions never run under the map. */
@media (min-width:1080px){
  body.next-site .next-inner-hero{
    position:relative!important;
    min-height:520px!important;
    height:520px!important;
    padding:0!important;
    overflow:hidden!important;
  }

  body.next-site .next-inner-hero .next-inner-content{
    position:relative!important;
    z-index:4!important;
    height:520px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
  }

  body.next-site .next-inner-hero .next-inner-content > .next-eyebrow,
  body.next-site .next-inner-hero .next-inner-content > h1,
  body.next-site .next-inner-hero .next-inner-content > p{
    width:560px!important;
    max-width:560px!important;
  }

  body.next-site .next-inner-hero .next-inner-content > h1{
    font-size:44px!important;
    line-height:1.08!important;
    letter-spacing:-.03em!important;
    margin:14px 0 20px!important;
  }

  body.next-site .next-inner-hero .next-inner-content > p{
    font-size:16px!important;
    line-height:1.68!important;
    margin:0!important;
  }

  body.next-site .next-inner-hero .epv3-map,
  body.next-site .next-inner-hero .epv3-map.epv3-map-standard,
  body.next-site .next-inner-hero .epv3-map.epv3-map-compact,
  body.next-site .next-inner-hero .epv3-map.epv3-map-mini{
    position:absolute!important;
    width:560px!important;
    max-width:none!important;
    min-height:0!important;
    aspect-ratio:1.2/1!important;
    right:clamp(58px,4.8vw,92px)!important;
    left:auto!important;
    top:50%!important;
    margin:0!important;
    transform:translateY(-50%)!important;
    transform-origin:center center!important;
    opacity:.90!important;
    filter:none!important;
  }

  body.next-site .next-inner-hero .epv3-caption{
    bottom:-2%!important;
  }

  body.next-site .next-inner-hero .next-orbit-circle{
    width:84%!important;
  }
}

/* Tablet keeps the map below text so there can be no collision. */
@media (min-width:701px) and (max-width:1079px){
  body.next-site .next-inner-hero{
    min-height:auto!important;
    height:auto!important;
    padding:60px 0 34px!important;
    overflow:hidden!important;
  }

  body.next-site .next-inner-hero .next-inner-content > h1,
  body.next-site .next-inner-hero .next-inner-content > p{
    max-width:680px!important;
  }

  body.next-site .next-inner-hero .epv3-map,
  body.next-site .next-inner-hero .epv3-map.epv3-map-standard,
  body.next-site .next-inner-hero .epv3-map.epv3-map-compact,
  body.next-site .next-inner-hero .epv3-map.epv3-map-mini{
    position:relative!important;
    right:auto!important;
    left:auto!important;
    top:auto!important;
    width:min(560px,88vw)!important;
    min-height:0!important;
    margin:34px auto 0!important;
    transform:none!important;
    opacity:.90!important;
  }
}

/* Phone: preserve natural text wrapping and the existing centred scaled map. */
@media (max-width:700px){
  body.next-site .next-inner-hero .next-inner-content > h1,
  body.next-site .next-inner-hero .next-inner-content > p{
    width:auto!important;
    max-width:100%!important;
  }
}

/* EPICORE INNER HERO TEXT LINES R47.7
   Preserve approved desktop line breaks while allowing natural wrapping on smaller screens. */
.next-desktop-break{display:inline!important}
@media(max-width:1079px){
  .next-desktop-break{display:none!important}
}

/* ================================================================
   EPICORE MOBILE CONNECTED BUSINESS REPAIR R47.10
   The desktop geometry above 1079px is intentionally unchanged.
   On tablet/phone the map becomes a normal, fully-sized block below
   hero copy. No negative margins, no desktop scale transform, no clipping.
   ================================================================ */

@media (max-width:1079px){
  body.next-site .epv3-hero{
    overflow:hidden!important;
  }

  body.next-site .next-home-hero,
  body.next-site .next-inner-hero{
    height:auto!important;
    min-height:auto!important;
  }

  body.next-site .next-home-hero{
    padding-bottom:26px!important;
  }

  body.next-site .next-inner-hero{
    padding-bottom:28px!important;
  }

  body.next-site .next-home-hero .epv3-map,
  body.next-site .next-home-hero .epv3-map.epv3-map-standard,
  body.next-site .next-home-hero .epv3-map.epv3-map-compact,
  body.next-site .next-home-hero .epv3-map.epv3-map-mini,
  body.next-site .next-inner-hero .epv3-map,
  body.next-site .next-inner-hero .epv3-map.epv3-map-standard,
  body.next-site .next-inner-hero .epv3-map.epv3-map-compact,
  body.next-site .next-inner-hero .epv3-map.epv3-map-mini{
    position:relative!important;
    display:block!important;
    visibility:visible!important;
    opacity:.96!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    width:min(560px,92vw)!important;
    max-width:92vw!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:5/4!important;
    margin:30px auto 8px!important;
    transform:none!important;
    transform-origin:center center!important;
    filter:none!important;
    overflow:visible!important;
    pointer-events:none!important;
  }

  body.next-site .next-home-hero .epv3-map svg,
  body.next-site .next-inner-hero .epv3-map svg{
    width:100%!important;
    height:100%!important;
    overflow:visible!important;
  }

  body.next-site .next-home-hero .next-orbit-circle,
  body.next-site .next-inner-hero .next-orbit-circle{
    display:block!important;
    visibility:visible!important;
    width:82%!important;
  }

  body.next-site .next-home-hero .epv3-caption,
  body.next-site .next-inner-hero .epv3-caption{
    display:block!important;
    bottom:1.5%!important;
  }
}

@media (max-width:700px){
  body.next-site .next-wrap{
    width:min(100% - 28px,1180px)!important;
  }

  body.next-site .next-home-hero{
    padding:48px 0 24px!important;
  }

  body.next-site .next-inner-hero{
    padding:46px 0 24px!important;
  }

  body.next-site .next-home-hero .next-hero-content,
  body.next-site .next-inner-hero .next-inner-content{
    height:auto!important;
    min-height:0!important;
  }

  body.next-site .next-home-hero .epv3-map,
  body.next-site .next-home-hero .epv3-map.epv3-map-standard,
  body.next-site .next-home-hero .epv3-map.epv3-map-compact,
  body.next-site .next-home-hero .epv3-map.epv3-map-mini,
  body.next-site .next-inner-hero .epv3-map,
  body.next-site .next-inner-hero .epv3-map.epv3-map-standard,
  body.next-site .next-inner-hero .epv3-map.epv3-map-compact,
  body.next-site .next-inner-hero .epv3-map.epv3-map-mini{
    width:94vw!important;
    max-width:94vw!important;
    min-height:0!important;
    aspect-ratio:5/4!important;
    margin:26px auto 10px!important;
    transform:none!important;
  }

  /* Keep all module pills readable inside a phone-width map. */
  body.next-site .epv3-node,
  body.next-site .epv3-map.epv3-map-standard .epv3-node,
  body.next-site .epv3-map.epv3-map-compact .epv3-node,
  body.next-site .epv3-map.epv3-map-mini .epv3-node{
    padding:5px 7px!important;
    gap:4px!important;
    font-size:9px!important;
    line-height:1!important;
    letter-spacing:.01em!important;
  }

  body.next-site .epv3-node-dot,
  body.next-site .epv3-map.epv3-map-mini .epv3-node-dot{
    width:5px!important;
    height:5px!important;
  }

  /* Preserve the larger-logo character, but size it for a phone. */
  body.next-site .epv3-core,
  body.next-site .epv3-map.epv3-map-standard .epv3-core,
  body.next-site .epv3-map.epv3-map-compact .epv3-core,
  body.next-site .epv3-map.epv3-map-mini .epv3-core{
    width:118px!important;
    height:118px!important;
  }

  body.next-site .epv3-core img,
  body.next-site .epv3-map.epv3-map-standard .epv3-core img,
  body.next-site .epv3-map.epv3-map-compact .epv3-core img,
  body.next-site .epv3-map.epv3-map-mini .epv3-core img{
    width:82px!important;
    height:82px!important;
  }

  body.next-site .epv3-core::before{
    inset:-11px!important;
  }

  body.next-site .next-orbit-circle{
    width:80%!important;
  }

  body.next-site .next-orbit-twinkle{
    width:7px!important;
    height:7px!important;
  }

  body.next-site .next-orbit-twinkle:before{
    width:18px!important;
  }

  body.next-site .next-orbit-twinkle:after{
    height:18px!important;
  }

  body.next-site .epv3-caption{
    bottom:0!important;
    font-size:9px!important;
    letter-spacing:.08em!important;
  }
}

@media (max-width:390px){
  body.next-site .next-home-hero .epv3-map,
  body.next-site .next-inner-hero .epv3-map{
    width:96vw!important;
    max-width:96vw!important;
  }

  body.next-site .epv3-node{
    padding:4px 6px!important;
    font-size:8.5px!important;
  }

  body.next-site .epv3-core{
    width:108px!important;
    height:108px!important;
  }

  body.next-site .epv3-core img{
    width:75px!important;
    height:75px!important;
  }
}

/* Accessibility: keep the diagram visible even when motion is disabled.
   Existing prefers-reduced-motion rules continue to stop the pulse/twinkle. */
@media (prefers-reduced-motion:reduce){
  body.next-site .epv3-map{
    display:block!important;
    visibility:visible!important;
    opacity:.96!important;
  }
}

/* ================================================================
   EPICORE MOBILE MOTION REPAIR R47.10.2
   User-approved preview behaviour:
   Keep the Connected Business animation moving on phone/tablet even
   when the device/browser reports reduced motion. This override is
   scoped ONLY to the R47 preview Connected Business visual.
   ================================================================ */

@media (max-width:1079px) and (prefers-reduced-motion:reduce){
  body.next-site .next-orbit-runner{
    animation:nextOrbitTwinkle 10s linear infinite!important;
  }
  body.next-site .next-orbit-twinkle{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
  body.next-site .epv3-map-ring{
    animation:epv3RingRotate 42s linear infinite!important;
  }
  body.next-site .epv3-map-ring:nth-of-type(2){
    animation-direction:reverse!important;
    animation-duration:55s!important;
  }
  body.next-site .epv3-core::before{
    animation:epv3CorePulse 5.8s ease-in-out infinite!important;
  }
  body.next-site .epv3-pulse{
    display:block!important;
    visibility:visible!important;
  }
}

/* Also recover this one visual if a previously saved Epicore motion-off
   preference is present in localStorage. Other page motion remains off. */
@media (max-width:1079px){
  html.epv3-motion-off body.next-site .next-orbit-runner{
    animation:nextOrbitTwinkle 10s linear infinite!important;
  }
  html.epv3-motion-off body.next-site .next-orbit-twinkle{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
  html.epv3-motion-off body.next-site .epv3-map-ring{
    animation:epv3RingRotate 42s linear infinite!important;
  }
  html.epv3-motion-off body.next-site .epv3-map-ring:nth-of-type(2){
    animation-direction:reverse!important;
    animation-duration:55s!important;
  }
  html.epv3-motion-off body.next-site .epv3-core::before{
    animation:epv3CorePulse 5.8s ease-in-out infinite!important;
  }
  html.epv3-motion-off body.next-site .epv3-pulse{
    display:block!important;
    visibility:visible!important;
  }
}
