/* ==========================================================================
   SNATEK site styles (Elementor build) - part 7: service pages.
   Shared service components (sn-sv-*, FAQ, related services) and the three
   service-page layouts under review:
     sn-va-*  Variant A  sticky service rail        (Managed IT services)
     sn-vb-*  Variant B  security operations        (Cybersecurity)
     sn-vc-*  Variant C  platform constellation     (Cloud services)
   Motion follows the brand rules: transform and opacity only, reveals once,
   nothing moves for visitors who ask for reduced motion.
   ========================================================================== */

/* ---------- shared: type on dark, hero actions, trust row ---------- */
.sn-h-lg--light,.elementor .sn-h-lg--light .elementor-heading-title{color:#fff}
.sn-lead--light,.elementor .sn-lead--light,.elementor .sn-lead--light p{color:#B9CCD8}
.sn-lead a,.sn-va-prose a,.sn-va-note a,.sn-vc-intro__body a{color:var(--sn-link);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.sn-lead a:hover,.sn-va-prose a:hover,.sn-va-note a:hover{color:var(--sn-deep)}
.e-con.sn-sv-hero__cta{display:flex;flex-direction:row;flex-wrap:wrap;gap:.9rem;margin-top:2rem}
.sn-sv-trust{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;margin:1.9rem 0 0 !important;padding:0;list-style:none;
  font:600 13px/1.3 var(--sn-ff-body);letter-spacing:.06em;text-transform:uppercase;color:var(--sn-muted)}
.sn-sv-trust li{display:inline-flex;align-items:center;gap:.55rem}
.sn-sv-trust__dot{width:7px;height:7px;background:var(--sn-electric);transform:rotate(45deg);flex:none}
.sn-sv-trust--dark{color:#9FB7C5}

/* ---------- shared: word-by-word heading entrance ---------- */
.sn-split.is-split .sn-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em;margin-bottom:-.1em}
.sn-split.is-split .sn-w > span{display:inline-block;transform:translateY(105%);transition:transform .9s var(--sn-ease)}
.sn-split.is-split.is-in .sn-w > span{transform:none}

/* ---------- shared: decorative overlay widget (fills its parent, takes no grid cell) ---------- */
.e-con > .sn-xline,.e-con > .elementor-widget.sn-xline{position:absolute !important;inset:0;width:auto !important;max-width:none !important;margin:0 !important;pointer-events:none;z-index:0}

/* ---------- shared: line that draws in once its block is in view ---------- */
.sn-js .sn-draw [class$="__line"] > span,.sn-js .sn-draw [class$="__scan"] > span{transform:scaleY(0)}
.sn-js .sn-draw.is-drawn [class$="__line"] > span,.sn-js .sn-draw.is-drawn [class$="__scan"] > span{transform:none}

/* ---------- shared: checklists ---------- */
.sn-checklist--tight{margin-block:1.1rem 0 !important}
.elementor .sn-checklist--tight .elementor-icon-list-items{gap:.65rem}
.elementor .sn-checklist--tight .elementor-icon-list-item{font-size:15px}
.elementor .sn-checklist--cols .elementor-icon-list-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.75rem}
@media(max-width:640px){.elementor .sn-checklist--cols .elementor-icon-list-items{grid-template-columns:1fr}}
.elementor .sn-checklist a{color:var(--sn-link);text-decoration:underline;text-underline-offset:3px}

/* ---------- shared: FAQ (questions become buttons when the script runs) ---------- */
.e-con.sn-faq{display:grid;gap:.8rem}
.e-con.sn-faq__item{position:relative;display:block;background:#fff;border:1px solid var(--sn-line);border-radius:var(--sn-r);
  transition:border-color .25s var(--sn-ease),box-shadow .25s var(--sn-ease),background-color .25s var(--sn-ease)}
.e-con.sn-faq__item.is-open{background:rgba(24,175,230,.045);border-color:rgba(24,175,230,.45);box-shadow:inset 3px 0 0 var(--sn-electric)}
@media(hover:hover){
  .e-con.sn-faq__item:hover{border-color:rgba(24,175,230,.55);box-shadow:var(--sn-shadow-sm)}
  .e-con.sn-faq__item.is-open:hover{box-shadow:inset 3px 0 0 var(--sn-electric),var(--sn-shadow-sm)}
}
.sn-faq__q,.elementor .sn-faq__q .elementor-heading-title{font:600 clamp(1.02rem,1.5vw,1.12rem)/1.4 var(--sn-ff-display);color:var(--sn-ink);letter-spacing:-.01em;transition:color .22s var(--sn-ease)}
.sn-faq__item.is-open .sn-faq__q .elementor-heading-title{color:var(--sn-link)}
@media(hover:hover){.sn-faq__item:hover .sn-faq__q .elementor-heading-title{color:var(--sn-link)}}
.sn-faq__q{padding:1.25rem 1.5rem .25rem}
.sn-faq__a,.elementor .sn-faq__a p{color:var(--sn-muted);font-size:15.5px;line-height:1.7;max-width:70ch}
.sn-faq__a{padding:0 1.5rem 1.25rem}
.sn-faq__a a{color:var(--sn-link);text-decoration:underline;text-underline-offset:3px}
.sn-faq__a a:focus-visible{outline:3px solid var(--sn-deep);outline-offset:2px;border-radius:var(--sn-r-xs)}
.sn-faq.is-ready .sn-faq__q{padding:0}
/* The question button is reset completely and its hover, focus and active states are set here:
   the Hello Elementor reset paints every button:hover and button:focus crimson with white text. */
.sn-faq .sn-faq__btn{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:1.25rem;width:100%;
  padding:1.2rem 1.5rem;border-radius:var(--sn-r);cursor:pointer;font:inherit;color:inherit;text-align:left;text-decoration:none;
  -webkit-tap-highlight-color:transparent;transition:padding .32s var(--sn-ease)}
.sn-faq .sn-faq__btn:hover,.sn-faq .sn-faq__btn:focus,.sn-faq .sn-faq__btn:active{background:transparent;color:inherit;text-decoration:none;box-shadow:none}
.sn-faq .sn-faq__btn:focus-visible{outline:3px solid var(--sn-deep);outline-offset:-3px}
.sn-faq__item.is-open .sn-faq__btn{padding-bottom:.7rem}
.sn-faq__sign{position:relative;width:34px;height:34px;flex:none;background:rgba(24,175,230,.12);
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
  transition:background-color .22s var(--sn-ease)}
.sn-faq__sign::before,.sn-faq__sign::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;background:var(--sn-ink);transition:transform .26s var(--sn-ease),background-color .22s}
.sn-faq__sign::after{transform:rotate(90deg)}
@media(hover:hover){.sn-faq__item:hover .sn-faq__sign{background:rgba(24,175,230,.24)}}
.sn-faq__btn[aria-expanded="true"] .sn-faq__sign{background:var(--sn-panel)}
.sn-faq__btn[aria-expanded="true"] .sn-faq__sign::before,.sn-faq__btn[aria-expanded="true"] .sn-faq__sign::after{background:#fff}
.sn-faq__btn[aria-expanded="true"] .sn-faq__sign::after{transform:rotate(0)}
.sn-faq.is-ready .sn-faq__a{display:grid;grid-template-rows:0fr;padding:0 1.5rem;transition:grid-template-rows .32s var(--sn-ease)}
.sn-faq.is-ready .sn-faq__a > *{overflow:hidden;min-height:0}
.sn-faq.is-ready .sn-faq__item.is-open .sn-faq__a{grid-template-rows:1fr}
.sn-faq.is-ready .sn-faq__a > :last-child::after{content:"";display:block;height:1.25rem}
@media(max-width:640px){
  .e-con.sn-faq{gap:.65rem}
  .sn-faq__q{padding:1rem 1.05rem .2rem}
  .sn-faq__a,.sn-faq.is-ready .sn-faq__a{padding-inline:1.05rem}
  .sn-faq .sn-faq__btn{padding:1rem 1.05rem;gap:.9rem}
  .sn-faq__item.is-open .sn-faq__btn{padding-bottom:.6rem}
  .sn-faq__sign{width:32px;height:32px}
}

/* ---------- shared: case cards ---------- */
.e-con.sn-sv-case,.sn-sv-case{--accent:var(--sn-electric);position:relative;display:flex;flex-direction:column;gap:0;padding:1.6rem 1.6rem 1.5rem;
  background:#fff;border:1px solid var(--sn-line);border-radius:var(--sn-r);overflow:hidden;
  transition:transform .26s var(--sn-ease),box-shadow .26s var(--sn-ease),border-color .26s var(--sn-ease)}
.sn-sv-case::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--accent);transform:scaleX(.18);transform-origin:left;transition:transform .4s var(--sn-ease)}
.sn-sv-case:hover{transform:translateY(-4px);border-color:transparent;box-shadow:0 0 0 1.5px color-mix(in srgb,var(--accent) 50%,transparent),var(--sn-shadow)}
.sn-sv-case:hover::before{transform:scaleX(1)}
.sn-sv-case > *{position:relative;z-index:1}
.sn-sv-case--gov,.sn-sv-case--fin{--accent:var(--sn-deep)}
.sn-sv-case--health,.sn-sv-case--community{--accent:var(--sn-electric)}
.sn-sv-case--ins{--accent:var(--sn-red)}
.sn-sv-case__sector,.elementor .sn-sv-case__sector .elementor-heading-title{font:600 11.5px/1.3 var(--sn-ff-body);letter-spacing:.12em;text-transform:uppercase;color:var(--sn-link)}
.sn-sv-case__sector{margin-bottom:.7rem !important}
.sn-sv-case__name,.elementor .sn-sv-case__name .elementor-heading-title{font:700 1.18rem/1.25 var(--sn-ff-display);color:var(--sn-ink);letter-spacing:-.01em}
.sn-sv-case__where,.elementor .sn-sv-case__where .elementor-heading-title{font:500 13.5px/1.4 var(--sn-ff-body);color:var(--sn-muted)}
.sn-sv-case__where{margin:.3rem 0 .9rem !important}
.sn-sv-case__text,.elementor .sn-sv-case__text p{font-size:15px;line-height:1.6;color:var(--sn-muted)}
.sn-sv-case__tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:1.1rem 0 0 !important;padding:0;list-style:none}
.sn-sv-case__tags li{padding:.32rem .6rem;font:600 12px/1 var(--sn-ff-body);color:var(--sn-ink);background:var(--sn-tint);border-radius:var(--sn-r-xs)}

/* ---------- shared: related services ---------- */
.e-con.sn-rel__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
@media(max-width:900px){.e-con.sn-rel__grid{grid-template-columns:1fr}}
.e-con.sn-rel__card,.sn-rel__card{--accent:var(--sn-electric);position:relative;display:flex;flex-direction:column;padding:1.75rem;background:#fff;
  border:1px solid var(--sn-line);border-radius:var(--sn-r);overflow:hidden;transition:transform .26s var(--sn-ease),box-shadow .26s var(--sn-ease),border-color .26s var(--sn-ease)}
.sn-rel__card:hover{transform:translateY(-3px);border-color:var(--sn-electric);box-shadow:var(--sn-shadow)}
.sn-rel__card > *{position:relative;z-index:1}
.sn-rel__icon{width:48px;height:48px;display:grid;place-items:center;margin-bottom:1.1rem;color:var(--sn-link);background:rgba(24,175,230,.1);
  clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px)}
.sn-rel__icon svg{width:22px;height:22px}
.sn-rel__title,.elementor .sn-rel__title .elementor-heading-title{font:700 1.15rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-rel__text,.elementor .sn-rel__text p{color:var(--sn-muted);font-size:15px;line-height:1.6}
.sn-rel__text{margin-top:.5rem}
.sn-rel__text{flex:1}
.sn-rel__link{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.2rem;font:600 14.5px/1 var(--sn-ff-body);color:var(--sn-link) !important}
.sn-rel__link::after{content:"";position:absolute;inset:0;z-index:2}
.sn-rel__link svg{width:16px;height:16px;transition:transform .22s var(--sn-ease)}
.sn-rel__card:hover .sn-rel__link svg{transform:translateX(4px)}
.sn-rel__card:focus-within{border-color:var(--sn-deep)}
.e-con.sn-rel__card > .sn-rel__more{position:static}

/* ==========================================================================
   VARIANT A: sticky service rail (Managed IT services)
   ========================================================================== */
.e-con.sn-va-hero,.sn-va-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#fff 0%,var(--sn-tint) 100%);border-bottom:1px solid var(--sn-line)}
.sn-va-hero__fx{position:absolute !important;inset:0;z-index:-1;pointer-events:none;width:auto !important;max-width:none !important;margin:0 !important}
.sn-va-hero__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(22,126,172,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(22,126,172,.07) 1px,transparent 1px);
  background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse 60% 80% at 85% 30%,#000 10%,transparent 70%);mask-image:radial-gradient(ellipse 60% 80% at 85% 30%,#000 10%,transparent 70%)}
.sn-va-hero__glow{position:absolute;width:min(680px,90vw);aspect-ratio:1;right:-12%;top:-40%;border-radius:50%;background:radial-gradient(circle,rgba(24,175,230,.18),rgba(24,175,230,0) 64%)}
.e-con.sn-va-hero__inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;padding-block:clamp(2.75rem,6vw,5rem)}
@media(max-width:1000px){.e-con.sn-va-hero__inner{grid-template-columns:1fr}}
.e-con.sn-va-hero__content{display:block}
.sn-va-hero .sn-crumbs ol{color:var(--sn-muted)}
.sn-va-hero .sn-crumbs a{color:var(--sn-link)}
.sn-va-hero .sn-crumbs [aria-current]{color:var(--sn-ink)}
.sn-va-hero .sn-crumbs li + li::before{border-color:#9DB3C0}
.sn-va-hero__title,.elementor .sn-va-hero__title .elementor-heading-title{font:800 clamp(2.15rem,4.8vw,3.6rem)/1.06 var(--sn-ff-display);letter-spacing:-.03em;color:var(--sn-ink);max-width:16ch;text-wrap:balance}
.sn-va-hero__title{margin-bottom:1.2rem !important}
.sn-va-hero__lead,.elementor .sn-va-hero__lead p{font-size:clamp(1.03rem,1.45vw,1.15rem);line-height:1.65;color:var(--sn-muted);max-width:56ch}
.sn-js .sn-va-hero__content > :not(.sn-va-hero__title){animation:sn-ph-rise .8s var(--sn-ease) both}
.sn-js .sn-va-hero__content > :nth-child(4){animation-delay:.25s}
.sn-js .sn-va-hero__content > :nth-child(5){animation-delay:.35s}
.sn-js .sn-va-hero__content > :nth-child(6){animation-delay:.45s}
.elementor-editor-active .sn-va-hero__content > *{animation:none}

/* status board */
.sn-va-board{position:relative;padding:1.4rem;background:var(--sn-panel);border-radius:var(--sn-r-lg);color:#C3D4DE;box-shadow:var(--sn-shadow-lg);overflow:hidden}
.sn-va-board::before{content:"";position:absolute;inset:0;background:radial-gradient(420px 220px at 80% 0%,rgba(24,175,230,.22),transparent 70%);pointer-events:none}
.sn-va-board__top{position:relative;display:flex;justify-content:space-between;align-items:center;font:600 12px/1 var(--sn-ff-body);letter-spacing:.1em;text-transform:uppercase;color:#8FA9B8}
.sn-va-board__live{display:inline-flex;align-items:center;gap:.55rem;color:#fff}
.sn-va-board__live i{width:8px;height:8px;border-radius:50%;background:#3DDC97;box-shadow:0 0 0 0 rgba(61,220,151,.6);animation:sn-va-live 2.4s var(--sn-ease) infinite}
@keyframes sn-va-live{0%{box-shadow:0 0 0 0 rgba(61,220,151,.55)}70%,100%{box-shadow:0 0 0 9px rgba(61,220,151,0)}}
.sn-va-board__map{position:relative;width:100%;height:auto;margin:1rem 0 .4rem}
.sn-va-board__map .ln{fill:none;stroke:rgba(24,175,230,.45);stroke-width:1.5;stroke-dasharray:4 6}
.sn-va-board__map .ln--b{stroke:rgba(24,175,230,.22)}
.sn-va-board__map circle{fill:#16394A;stroke:#48C4F0;stroke-width:1.5}
.sn-va-board__map .hub{fill:#18AFE6;stroke:none}
.sn-va-board__map .ping{fill:none;stroke:#18AFE6;stroke-width:1.5;transform-origin:200px 96px;animation:sn-va-ping 2.6s var(--sn-ease) infinite}
@keyframes sn-va-ping{from{transform:scale(1);opacity:.9}to{transform:scale(3.4);opacity:0}}
.sn-va-board__rows{position:relative;display:grid;gap:.55rem;margin:0;padding:0;list-style:none}
.sn-va-board__row{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:.8rem;padding:.7rem .85rem;background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.07);border-radius:var(--sn-r-sm);font-size:14.5px}
.sn-va-board__ic{width:34px;height:34px;display:grid;place-items:center;color:#7FD3F5;background:rgba(24,175,230,.12);border-radius:var(--sn-r-xs)}
.sn-va-board__ic svg{width:17px;height:17px}
.sn-va-board__label{color:#fff;font-weight:600}
.sn-va-board__state{display:inline-flex;align-items:center;gap:.45rem;font:600 12px/1 var(--sn-ff-body);letter-spacing:.06em;text-transform:uppercase;color:#3DDC97}
.sn-va-board__state::before{content:"";width:14px;height:14px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233DDC97' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4.5 4.5L19 7'/%3E%3C/svg%3E")}
.sn-js .sn-va-board__row{opacity:0;transform:translateY(12px);animation:sn-va-row .6s var(--sn-ease) forwards;animation-delay:calc(.55s + var(--i) * .14s)}
@keyframes sn-va-row{to{opacity:1;transform:none}}
.elementor-editor-active .sn-va-board__row{opacity:1;transform:none;animation:none}

/* body layout: sticky rail + main column */
.e-con.sn-va-body{padding-top:clamp(2.5rem,5vw,4.5rem)}
.e-con.sn-va-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.e-con.sn-va-rail{display:flex;flex-direction:column;gap:1.25rem;position:sticky;top:112px}
body.admin-bar .e-con.sn-va-rail{top:144px}
@media(max-width:1100px){
  .e-con.sn-va-layout{grid-template-columns:1fr}
  .e-con.sn-va-rail{position:static;order:2}
  .sn-va-rail__toc{display:none}
}
.sn-va-toc{position:relative;padding:1.25rem 1.25rem 1.1rem;background:#fff;border:1px solid var(--sn-line);border-radius:var(--sn-r)}
.sn-va-toc__title{margin:0 0 .85rem;font:600 12px/1 var(--sn-ff-body);letter-spacing:.14em;text-transform:uppercase;color:var(--sn-link)}
.sn-va-toc ol{position:relative;margin:0;padding:0;list-style:none;display:grid;gap:.1rem}
.sn-va-toc__track{position:absolute;left:1.25rem;top:3.05rem;bottom:1.15rem;width:2px;background:var(--sn-line-soft)}
.sn-va-toc__fill{position:absolute;left:0;top:0;width:100%;height:100%;background:linear-gradient(var(--sn-deep),var(--sn-electric));transform-origin:top;transform:scaleY(var(--p,0));transition:transform .2s linear}
.sn-va-toc a{position:relative;display:flex;align-items:center;gap:.75rem;padding:.48rem .5rem .48rem 1rem;border-radius:var(--sn-r-xs);
  font:500 14.5px/1.3 var(--sn-ff-body);color:var(--sn-muted) !important;transition:color .18s var(--sn-ease),background-color .18s var(--sn-ease)}
.sn-va-toc a .n{font:600 11.5px/1 var(--sn-ff-display);color:#9DB3C0;transition:color .18s}
.sn-va-toc a:hover{color:var(--sn-ink) !important;background:var(--sn-tint)}
.sn-va-toc a[aria-current="true"]{color:var(--sn-ink) !important;font-weight:600}
.sn-va-toc a[aria-current="true"] .n{color:var(--sn-link)}
.e-con.sn-va-call{display:block;padding:1.4rem;background:var(--sn-panel);border-radius:var(--sn-r);color:#C3D4DE;position:relative;overflow:hidden}
.sn-va-call::before{content:"";position:absolute;inset:0;background:radial-gradient(300px 160px at 100% 0,rgba(24,175,230,.24),transparent 70%);pointer-events:none}
.sn-va-call > *{position:relative}
.sn-va-call__title,.elementor .sn-va-call__title .elementor-heading-title{font:700 1.1rem/1.3 var(--sn-ff-display);color:#fff}
.sn-va-call__text,.elementor .sn-va-call__text p{font-size:14.5px;line-height:1.55;color:#B9CCD8}
.sn-va-call__text{margin:.4rem 0 1rem !important}
.sn-va-call__lines{display:grid;gap:.5rem;margin-bottom:1.1rem}
.sn-va-call__line{display:flex;align-items:center;gap:.75rem;padding:.6rem .7rem;border:1px solid rgba(255,255,255,.1);border-radius:var(--sn-r-xs);color:#fff !important;font:700 15px/1.2 var(--sn-ff-display);transition:border-color .2s,background-color .2s}
.sn-va-call__line:hover{border-color:var(--sn-electric);background:rgba(24,175,230,.08)}
.sn-va-call__line svg{width:18px;height:18px;color:var(--sn-electric);flex:none}
.sn-va-call__line small{display:block;font:600 11px/1.2 var(--sn-ff-body);letter-spacing:.1em;text-transform:uppercase;color:#8FA9B8;margin-bottom:.15rem}

/* main column blocks */
.e-con.sn-va-main{display:flex;flex-direction:column;gap:0}
.e-con.sn-va-block{display:block;padding-block:0 clamp(3rem,6vw,4.75rem);margin-bottom:clamp(3rem,6vw,4.75rem);border-bottom:1px solid var(--sn-line)}
.e-con.sn-va-block:last-child{border-bottom:0;margin-bottom:0}
.sn-va-block .sn-section-head{margin-bottom:clamp(1.5rem,3vw,2.25rem)}
.sn-va-block .sn-h-lg,.elementor .sn-va-block .sn-h-lg .elementor-heading-title{font-size:clamp(1.65rem,2.7vw,2.35rem)}
.sn-va-answer,.elementor .sn-va-answer p{position:relative;font:500 clamp(1.08rem,1.6vw,1.24rem)/1.6 var(--sn-ff-body);color:var(--sn-ink);max-width:66ch}
.sn-va-answer{padding:1.4rem 1.5rem 1.4rem 1.75rem;margin-bottom:1.5rem !important;background:var(--sn-tint);border-radius:0 var(--sn-r) var(--sn-r) 0;border-left:3px solid var(--sn-electric)}
.sn-va-prose,.elementor .sn-va-prose p{color:var(--sn-muted);font-size:16px;line-height:1.75;max-width:68ch}
.sn-va-note,.elementor .sn-va-note p{font-size:15px;line-height:1.65;color:var(--sn-muted)}
.sn-va-note{margin-top:1.5rem;padding-top:1.25rem;border-top:1px dashed var(--sn-line)}

.e-con.sn-va-inc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
@media(max-width:640px){.e-con.sn-va-inc-grid{grid-template-columns:1fr}}
.e-con.sn-va-inc,.sn-va-inc{--accent:var(--sn-electric);position:relative;display:block;padding:1.5rem 1.5rem 1.4rem;background:#fff;border:1px solid var(--sn-line);border-radius:var(--sn-r);overflow:hidden;
  transition:transform .26s var(--sn-ease),border-color .26s var(--sn-ease),box-shadow .26s var(--sn-ease)}
.sn-va-inc:hover{transform:translateY(-3px);border-color:var(--sn-electric);box-shadow:var(--sn-shadow)}
.sn-va-inc > *{position:relative;z-index:1}
.sn-va-inc__num{position:absolute;right:1.25rem;top:1.15rem;font:700 13px/1 var(--sn-ff-display);color:#B4C6D1;letter-spacing:.04em}
.sn-va-inc__icon{width:46px;height:46px;display:grid;place-items:center;margin-bottom:1rem;color:var(--sn-link);background:rgba(24,175,230,.1);
  clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px);transition:background-color .26s,color .26s}
.sn-va-inc:hover .sn-va-inc__icon{background:var(--sn-panel);color:var(--sn-electric)}
.sn-va-inc__icon svg{width:22px;height:22px}
.sn-va-inc__title,.elementor .sn-va-inc__title .elementor-heading-title{font:700 1.06rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-va-inc__title{padding-right:2rem}
.sn-va-inc__text,.elementor .sn-va-inc__text p{font-size:15px;line-height:1.62;color:var(--sn-muted)}
.sn-va-inc__text{margin-top:.55rem}

/* onboarding timeline */
.e-con.sn-va-steps{position:relative;display:grid;gap:0;margin:0;padding:0;list-style:none}
.sn-va-steps__line{position:absolute !important;left:21px;top:22px;bottom:22px;width:2px !important;background:var(--sn-line-soft)}
.sn-va-steps__line > span{position:absolute;inset:0;background:linear-gradient(var(--sn-deep),var(--sn-electric));transform-origin:top;transition:transform 1.6s var(--sn-ease)}
.e-con.sn-va-step{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:1.25rem;padding-bottom:1.6rem}
.e-con.sn-va-step:last-child{padding-bottom:0}
.sn-va-step__dot{position:relative;z-index:1;width:44px;height:44px;display:grid;place-items:center;background:#fff;border:2px solid var(--sn-electric);border-radius:50%;
  font:700 15px/1 var(--sn-ff-display);color:var(--sn-link)}
.e-con.sn-va-step__body{display:block;padding-top:.55rem}
.sn-va-step__title,.elementor .sn-va-step__title .elementor-heading-title{font:700 1.08rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-va-step__text,.elementor .sn-va-step__text p{font-size:15.5px;line-height:1.65;color:var(--sn-muted);max-width:62ch}
.sn-va-step__text{margin-top:.35rem}
.sn-va-step__text a{color:var(--sn-link);text-decoration:underline;text-underline-offset:3px}

/* models + comparison */
.e-con.sn-va-models{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
@media(max-width:700px){.e-con.sn-va-models{grid-template-columns:1fr}}
.e-con.sn-va-model{display:block;padding:1.6rem;background:#fff;border:1px solid var(--sn-line);border-radius:var(--sn-r);border-top:3px solid var(--sn-deep)}
.e-con.sn-va-model--alt{border-top-color:var(--sn-electric)}
.sn-va-model__sub,.elementor .sn-va-model__sub .elementor-heading-title{font:600 12px/1.3 var(--sn-ff-body);letter-spacing:.1em;text-transform:uppercase;color:var(--sn-link)}
.sn-va-model__title,.elementor .sn-va-model__title .elementor-heading-title{font:700 1.3rem/1.25 var(--sn-ff-display);color:var(--sn-ink)}
.sn-va-model__title{margin-top:.45rem}
.sn-va-model__text,.elementor .sn-va-model__text p{font-size:15px;line-height:1.62;color:var(--sn-muted)}
.sn-va-model__text{margin-top:.55rem}
.e-con.sn-va-compare{display:block;margin-top:1.75rem}
.sn-va-compare__title,.elementor .sn-va-compare__title .elementor-heading-title{font:700 1.1rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-va-compare__title{margin-bottom:.9rem !important}
.sn-va-compare__scroll{overflow-x:auto;border:1px solid var(--sn-line);border-radius:var(--sn-r)}
.sn-va-compare__table{width:100%;min-width:560px;border-collapse:collapse;font-size:15px;line-height:1.45;margin:0}
.sn-va-compare__table th,.sn-va-compare__table td{padding:.9rem 1.1rem;text-align:left;border:0;border-bottom:1px solid var(--sn-line);vertical-align:top}
.sn-va-compare__table tbody tr:last-child th,.sn-va-compare__table tbody tr:last-child td{border-bottom:0}
.sn-va-compare__table thead th{font:600 12px/1.3 var(--sn-ff-body);letter-spacing:.08em;text-transform:uppercase;color:var(--sn-muted);background:var(--sn-tint)}
.sn-va-compare__table thead th:last-child{color:#fff;background:var(--sn-panel)}
.sn-va-compare__table tbody th{font-weight:600;color:var(--sn-ink);width:30%;background:#fff}
.sn-va-compare__table td{color:var(--sn-muted);background:#fff}
.sn-va-compare__table td:last-child{color:var(--sn-ink);font-weight:500;background:rgba(24,175,230,.06)}
@media(max-width:640px){.sn-va-compare__table{min-width:0;font-size:13.5px}.sn-va-compare__table th,.sn-va-compare__table td{padding:.75rem .65rem}.sn-va-compare__table thead th{font-size:10.5px;letter-spacing:.05em}.sn-va-compare__table tbody th{width:28%}}

/* industries, why, stats, area */
.e-con.sn-va-inds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
@media(max-width:640px){.e-con.sn-va-inds{grid-template-columns:1fr}}
.e-con.sn-va-ind{display:grid;grid-template-columns:44px minmax(0,1fr);gap:1rem;padding:1.3rem;background:var(--sn-tint);border-radius:var(--sn-r);transition:background-color .26s var(--sn-ease)}
.sn-va-ind:hover{background:#E6F0F5}
.sn-va-ind__icon{width:44px;height:44px;display:grid;place-items:center;color:#fff;background:var(--sn-deep);clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px)}
.sn-va-ind__icon svg{width:21px;height:21px}
.e-con.sn-va-ind__body{display:block}
.sn-va-ind__title,.elementor .sn-va-ind__title .elementor-heading-title{font:700 1.02rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-va-ind__text,.elementor .sn-va-ind__text p{font-size:14.5px;line-height:1.6;color:var(--sn-muted)}
.sn-va-ind__text{margin-top:.35rem}
.e-con.sn-va-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-bottom:1.75rem;background:var(--sn-panel);border-radius:var(--sn-r);overflow:hidden}
.e-con.sn-va-stat{display:block;padding:1.5rem 1.4rem;border-right:1px solid rgba(255,255,255,.08)}
.e-con.sn-va-stat:last-child{border-right:0}
.sn-va-stat .sn-stat__num,.elementor .sn-va-stat .sn-stat__num .elementor-heading-title{color:#fff}
.sn-va-stat .sn-stat__label,.elementor .sn-va-stat .sn-stat__label .elementor-heading-title{color:#9FB7C5}
@media(max-width:560px){.e-con.sn-va-stats{grid-template-columns:1fr}.e-con.sn-va-stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}}
.e-con.sn-va-whys{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 2rem}
@media(max-width:640px){.e-con.sn-va-whys{grid-template-columns:1fr}}
.e-con.sn-va-why{display:block;padding-left:1.1rem;border-left:2px solid var(--sn-line);transition:border-color .26s var(--sn-ease)}
.sn-va-why:hover{border-left-color:var(--sn-electric)}
.sn-va-why__icon{display:inline-grid;place-items:center;width:34px;height:34px;margin-bottom:.6rem;color:var(--sn-link)}
.sn-va-why__icon svg{width:24px;height:24px}
.sn-va-why__title,.elementor .sn-va-why__title .elementor-heading-title{font:700 1.04rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-va-why__text,.elementor .sn-va-why__text p{font-size:15px;line-height:1.6;color:var(--sn-muted)}
.sn-va-why__text{margin-top:.35rem}
.e-con.sn-va-area{display:block;margin-top:2rem;padding:1.6rem;border:1px solid var(--sn-line);border-radius:var(--sn-r);background:#fff}
.sn-va-area__title,.elementor .sn-va-area__title .elementor-heading-title{font:700 1.15rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-va-area__lead,.elementor .sn-va-area__lead p{font-size:15px;line-height:1.65;color:var(--sn-muted)}
.sn-va-area__lead{margin:.5rem 0 1.2rem !important}
.sn-va-area__cols{display:grid;grid-template-columns:1fr 1.6fr;gap:1.5rem}
@media(max-width:640px){.sn-va-area__cols{grid-template-columns:1fr}}
.sn-va-area__col h4{margin:0 0 .6rem;font:600 12px/1.3 var(--sn-ff-body);letter-spacing:.1em;text-transform:uppercase;color:var(--sn-link)}
.sn-va-area__col ul{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none}
.sn-va-area__col li{padding:.38rem .65rem;font-size:13.5px;font-weight:500;color:var(--sn-ink);background:var(--sn-tint);border-radius:var(--sn-r-xs)}
.sn-va-area__nap{display:flex;align-items:center;gap:.6rem;margin:1.25rem 0 0;padding-top:1.1rem;border-top:1px dashed var(--sn-line);font-size:14.5px;color:var(--sn-muted)}
.sn-va-area__nap svg{width:18px;height:18px;color:var(--sn-electric);flex:none}
.e-con.sn-va-cases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
@media(max-width:1250px){.e-con.sn-va-cases{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.e-con.sn-va-cases{grid-template-columns:1fr}}

/* ==========================================================================
   VARIANT B: security operations (Cybersecurity)
   ========================================================================== */
.e-con.sn-vb-hero,.sn-vb-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--sn-panel);color:#C3D4DE}
.sn-vb-hero__fx{position:absolute !important;inset:0;z-index:-1;pointer-events:none;width:auto !important;max-width:none !important;margin:0 !important}
.sn-vb-hero__grid{position:absolute;inset:0;opacity:.7;background-image:linear-gradient(rgba(24,175,230,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(24,175,230,.08) 1px,transparent 1px);
  background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 65% 90% at 78% 40%,#000 10%,transparent 72%);mask-image:radial-gradient(ellipse 65% 90% at 78% 40%,#000 10%,transparent 72%)}
.sn-vb-hero__glow{position:absolute;width:min(820px,100vw);aspect-ratio:1;right:-18%;top:-30%;border-radius:50%;background:radial-gradient(circle,rgba(24,175,230,.22),rgba(24,175,230,0) 62%)}
.e-con.sn-vb-hero__inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,5vw,4rem);align-items:center;padding-block:clamp(3rem,7vw,5.5rem)}
@media(max-width:1000px){.e-con.sn-vb-hero__inner{grid-template-columns:1fr}}
.e-con.sn-vb-hero__content{display:block}
.sn-vb-hero__title,.elementor .sn-vb-hero__title .elementor-heading-title{font:800 clamp(2.1rem,4.4vw,3.35rem)/1.08 var(--sn-ff-display);letter-spacing:-.03em;color:#fff;max-width:20ch;text-wrap:balance}
.sn-vb-hero__title{margin-bottom:1.2rem !important}
.sn-vb-hero__lead,.elementor .sn-vb-hero__lead p{font-size:clamp(1.02rem,1.45vw,1.13rem);line-height:1.68;color:#C3D4DE;max-width:58ch}
.sn-js .sn-vb-hero__content > :not(.sn-vb-hero__title){animation:sn-ph-rise .8s var(--sn-ease) both}
.sn-js .sn-vb-hero__content > :nth-child(4){animation-delay:.25s}
.sn-js .sn-vb-hero__content > :nth-child(5){animation-delay:.35s}
.sn-js .sn-vb-hero__content > :nth-child(6){animation-delay:.45s}
.elementor-editor-active .sn-vb-hero__content > *{animation:none}

/* radar: the one moving element in the hero */
.sn-vb-radar{position:relative;display:grid;gap:1.1rem;justify-items:center}
.sn-vb-radar__scope{position:relative;width:min(380px,82vw);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(24,175,230,.1) 0,rgba(14,42,56,0) 70%);border:1px solid rgba(24,175,230,.35);overflow:hidden}
.sn-vb-radar__rings{position:absolute;inset:0;border-radius:50%;
  background:repeating-radial-gradient(circle,transparent 0 calc(16.66% - 1px),rgba(24,175,230,.22) calc(16.66% - 1px) 16.66%),
             linear-gradient(rgba(24,175,230,.18),rgba(24,175,230,.18)) center/1px 100% no-repeat,
             linear-gradient(90deg,rgba(24,175,230,.18),rgba(24,175,230,.18)) center/100% 1px no-repeat}
.sn-vb-radar__sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,rgba(24,175,230,0) 0deg,rgba(24,175,230,0) 290deg,rgba(24,175,230,.45) 358deg,rgba(72,196,240,.9) 360deg);
  animation:sn-vb-sweep 6.9s linear infinite}
@keyframes sn-vb-sweep{to{transform:rotate(360deg)}}
.sn-vb-radar__core{position:absolute;left:50%;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--sn-electric);box-shadow:0 0 18px rgba(24,175,230,.8)}
.sn-vb-radar__blip{position:absolute;left:var(--x);top:var(--y);width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:#48C4F0;opacity:0;
  animation:sn-vb-blip 6.9s var(--sn-ease) infinite;animation-delay:var(--d)}
.sn-vb-radar__blip:nth-of-type(3n){background:var(--sn-red)}
@keyframes sn-vb-blip{0%{opacity:0;transform:scale(.4)}6%{opacity:1;transform:scale(1.25)}30%{opacity:.75;transform:scale(1)}60%,100%{opacity:0;transform:scale(1)}}
.sn-vb-feed{width:min(380px,82vw);padding:1rem 1.1rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:var(--sn-r)}
.sn-vb-feed__title{display:flex;align-items:center;gap:.55rem;margin:0 0 .6rem;font:600 11.5px/1 var(--sn-ff-body);letter-spacing:.12em;text-transform:uppercase;color:#8FA9B8}
.sn-vb-feed__title i{width:7px;height:7px;border-radius:50%;background:#3DDC97}
.sn-vb-feed ul{display:grid;gap:.15rem;margin:0;padding:0;list-style:none}
.sn-vb-feed li{display:flex;align-items:center;gap:.6rem;padding:.38rem 0;font:500 13.5px/1.3 var(--sn-ff-body);color:#9FB7C5;
  animation:sn-vb-row 6.9s var(--sn-ease) infinite;animation-delay:var(--d)}
.sn-vb-feed li i{width:6px;height:6px;flex:none;background:#3DDC97;transform:rotate(45deg)}
@keyframes sn-vb-row{0%,4%{color:#9FB7C5}8%,26%{color:#fff}36%,100%{color:#9FB7C5}}

/* intro */
.e-con.sn-vb-intro__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:start}
@media(max-width:900px){.e-con.sn-vb-intro__grid{grid-template-columns:1fr}}
.sn-vb-intro__grid > .sn-section-head{margin-bottom:0}
.e-con.sn-vb-intro__side{display:block;padding-top:.4rem}
.sn-vb-intro__body,.elementor .sn-vb-intro__body p{color:var(--sn-muted);font-size:16px;line-height:1.75}
.sn-vb-outs{display:grid;gap:.75rem;margin:1.75rem 0 0;padding:0;list-style:none}
.sn-vb-outs li{display:grid;grid-template-columns:42px 1fr;gap:.9rem;align-items:center;padding:.9rem 1rem;border:1px solid var(--sn-line);border-radius:var(--sn-r-sm);transition:border-color .22s,transform .22s var(--sn-ease)}
.sn-vb-outs li:hover{border-color:var(--sn-electric);transform:translateX(3px)}
.sn-vb-out__icon{width:42px;height:42px;display:grid;place-items:center;color:var(--sn-link);background:rgba(24,175,230,.1);border-radius:var(--sn-r-xs)}
.sn-vb-out__icon svg{width:20px;height:20px}
.sn-vb-outs b{display:block;font:700 15px/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-vb-outs span{font-size:14.5px;color:var(--sn-muted);line-height:1.5}

/* process: five nodes on a scan line */
.e-con.sn-vb-steps{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.25rem;margin:0;padding:0;list-style:none}
.sn-vb-steps__scan{position:absolute !important;left:28px;right:28px;top:27px;height:2px !important;width:auto !important;background:var(--sn-line)}
.sn-vb-steps__scan > span{position:absolute;inset:0;background:linear-gradient(90deg,var(--sn-deep),var(--sn-electric));transform-origin:left;transition:transform 1.8s var(--sn-ease)}
.sn-js .sn-draw .sn-vb-steps__scan > span{transform:scaleX(0)}
.sn-js .sn-draw.is-drawn .sn-vb-steps__scan > span{transform:none}
.e-con.sn-vb-step{position:relative;display:block}
.sn-vb-step__node{position:relative;z-index:1;display:grid;place-items:center;width:56px;height:56px;margin-bottom:1.1rem;background:#fff;border:2px solid var(--sn-electric);border-radius:50%;
  color:var(--sn-link);transition:background-color .26s,color .26s,border-color .26s}
.sn-vb-step__node svg{width:22px;height:22px}
.sn-vb-step__node span{position:absolute;right:-6px;top:-6px;min-width:24px;height:24px;padding:0 5px;display:grid;place-items:center;border-radius:12px;
  background:var(--sn-panel);color:#fff;font:700 11px/1 var(--sn-ff-display)}
.sn-vb-step:hover .sn-vb-step__node{background:var(--sn-panel);border-color:var(--sn-panel);color:var(--sn-electric)}
.sn-vb-step__title,.elementor .sn-vb-step__title .elementor-heading-title{font:700 1.1rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-vb-step__text,.elementor .sn-vb-step__text p{font-size:14.5px;line-height:1.62;color:var(--sn-muted)}
.sn-vb-step__text{margin-top:.45rem}
.sn-vb-step__text a{color:var(--sn-link);text-decoration:underline;text-underline-offset:3px}
@media(max-width:1000px){
  .e-con.sn-vb-steps{grid-template-columns:1fr;gap:0}
  .sn-vb-steps__scan{left:27px !important;right:auto !important;top:28px;bottom:28px;width:2px !important;height:auto !important}
  .sn-vb-steps__scan > span{transform-origin:top}
  .sn-js .sn-draw .sn-vb-steps__scan > span{transform:scaleY(0)}
  .e-con.sn-vb-step{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:1.25rem;padding-bottom:1.5rem}
  .e-con.sn-vb-step > *{grid-column:2}
  .e-con.sn-vb-step > :first-child{grid-column:1;grid-row:1 / span 3}
  .sn-vb-step__title{padding-top:.9rem}
}

/* protection layers: cards stack as you scroll */
.e-con.sn-vb-layers__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,5rem);align-items:start}
.e-con.sn-vb-layers__aside{display:block;position:sticky;top:120px}
body.admin-bar .e-con.sn-vb-layers__aside{top:152px}
.sn-vb-count{display:flex;align-items:baseline;gap:.6rem;margin:2rem 0 1.25rem;font-family:var(--sn-ff-display)}
.sn-vb-count__now{font-size:clamp(3.2rem,6vw,4.6rem);font-weight:800;line-height:1;letter-spacing:-.04em;color:var(--sn-ink);font-variant-numeric:tabular-nums}
.sn-vb-count__of{font-size:1.1rem;font-weight:600;color:#9DB3C0}
.sn-vb-legend{display:grid;gap:.35rem;margin:0;padding:0;list-style:none;counter-reset:l}
.sn-vb-legend li{display:flex;align-items:center;gap:.7rem;font:500 14px/1.3 var(--sn-ff-body);color:#8AA1AE;transition:color .25s var(--sn-ease)}
.sn-vb-legend li::before{content:"";width:18px;height:2px;background:var(--sn-line);transition:background-color .25s,width .25s var(--sn-ease)}
.sn-vb-legend li.is-on{color:var(--sn-ink);font-weight:600}
.sn-vb-legend li.is-on::before{background:var(--sn-electric);width:30px}
.e-con.sn-vb-stack{display:flex;flex-direction:column;gap:1.25rem}
.e-con.sn-vb-layer{--k:0;position:sticky;top:calc(120px + var(--k) * 18px);display:block;padding:clamp(1.5rem,3vw,2.1rem);background:#fff;border:1px solid var(--sn-line);border-radius:var(--sn-r-lg);
  box-shadow:0 -8px 30px rgba(14,42,56,.06);transform-origin:top center;transition:transform .3s var(--sn-ease),box-shadow .3s}
body.admin-bar .e-con.sn-vb-layer{top:calc(152px + var(--k) * 18px)}
.e-con.sn-vb-layer:nth-child(1){--k:0}.e-con.sn-vb-layer:nth-child(2){--k:1}.e-con.sn-vb-layer:nth-child(3){--k:2}.e-con.sn-vb-layer:nth-child(4){--k:3}.e-con.sn-vb-layer:nth-child(5){--k:4}
.sn-vb-layer.is-covered{transform:scale(.965);box-shadow:0 -8px 30px rgba(14,42,56,.04)}
.sn-vb-layer__idx{display:inline-block;margin-bottom:1.1rem;padding:.35rem .6rem;font:600 11.5px/1 var(--sn-ff-body);letter-spacing:.12em;text-transform:uppercase;color:var(--sn-link);background:var(--sn-tint);border-radius:var(--sn-r-xs)}
.sn-vb-layer__icon{position:absolute;right:0;top:0;width:52px;height:52px;display:grid;place-items:center;color:var(--sn-electric);background:var(--sn-panel);
  clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px)}
.sn-vb-layer__icon svg{width:24px;height:24px}
.sn-vb-layer__title,.elementor .sn-vb-layer__title .elementor-heading-title{font:700 clamp(1.2rem,2vw,1.42rem)/1.25 var(--sn-ff-display);color:var(--sn-ink);max-width:24ch}
.sn-vb-layer__title{padding-right:3.5rem}
.sn-vb-layer__text,.elementor .sn-vb-layer__text p{font-size:15.5px;line-height:1.7;color:var(--sn-muted)}
.sn-vb-layer__text{margin-top:.7rem}
.sn-vb-layer__tags{display:flex;flex-wrap:wrap;gap:.45rem;margin:1.2rem 0 0 !important;padding:0;list-style:none}
.sn-vb-layer__tags li{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .7rem;font:600 12.5px/1 var(--sn-ff-body);color:var(--sn-ink);border:1px solid var(--sn-line);border-radius:var(--sn-r-xs)}
.sn-vb-layer__tags li::before{content:"";width:6px;height:6px;background:var(--sn-electric);transform:rotate(45deg)}
@media(max-width:640px){
  .sn-vb-layer__icon{width:42px;height:42px}
  .sn-vb-layer__icon svg{width:20px;height:20px}
  .sn-vb-layer__idx{margin-bottom:1.5rem}
}
@media(max-width:1000px){
  .e-con.sn-vb-layers__grid{grid-template-columns:1fr}
  .e-con.sn-vb-layers__aside{position:static}
  .sn-vb-layers__meter{display:none}
  .e-con.sn-vb-layer{position:relative;top:auto !important}
}

/* specialist services on dark */
.e-con.sn-vb-specs{position:relative;isolation:isolate;overflow:hidden}
.sn-vb-specs__fx{position:absolute !important;inset:0;z-index:-1;pointer-events:none;width:auto !important;max-width:none !important;margin:0 !important}
.sn-vb-specs__glow{position:absolute;width:900px;height:520px;left:-200px;bottom:-260px;border-radius:50%;background:radial-gradient(ellipse,rgba(22,126,172,.3),transparent 66%)}
.e-con.sn-vb-spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
@media(max-width:760px){.e-con.sn-vb-spec-grid{grid-template-columns:1fr}}
.e-con.sn-vb-spec,.sn-vb-spec{position:relative;display:block;padding:clamp(1.5rem,3vw,2rem);background:var(--sn-panel-2);border-radius:var(--sn-r-lg);isolation:isolate;
  transition:transform .26s var(--sn-ease)}
.sn-vb-spec::before{content:"";position:absolute;inset:0;z-index:-1;padding:1px;border-radius:inherit;
  background:linear-gradient(140deg,rgba(255,255,255,.14),rgba(255,255,255,.04) 40%,rgba(255,255,255,.04) 60%,rgba(255,255,255,.1));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;transition:background .3s}
.sn-vb-spec:hover{transform:translateY(-4px)}
.sn-vb-spec:hover::before{background:linear-gradient(140deg,var(--sn-electric),rgba(24,175,230,.15) 45%,rgba(197,32,51,.25) 75%,var(--sn-red))}
.sn-vb-spec__icon{width:50px;height:50px;display:grid;place-items:center;margin-bottom:1.25rem;color:var(--sn-electric);background:rgba(24,175,230,.12);border-radius:var(--sn-r-sm)}
.sn-vb-spec__icon svg{width:24px;height:24px}
.sn-vb-spec__num{position:absolute;right:1.6rem;top:1.6rem;font:700 13px/1 var(--sn-ff-display);color:#5F8193}
.sn-vb-spec__title,.elementor .sn-vb-spec__title .elementor-heading-title{font:700 1.22rem/1.3 var(--sn-ff-display);color:#fff}
.sn-vb-spec__title a{color:#fff !important}
.sn-vb-spec__title a::after{content:"";position:absolute;inset:0;z-index:2;border-radius:var(--sn-r-lg)}
.sn-vb-spec__title a:focus-visible{outline:none}
.e-con.sn-vb-spec > .sn-vb-spec__title{position:static}
.sn-vb-spec:focus-within{box-shadow:0 0 0 3px var(--sn-electric)}
.sn-vb-spec__text,.elementor .sn-vb-spec__text p{font-size:15px;line-height:1.65;color:#A9BFCC}
.sn-vb-spec__text{margin-top:.55rem}
.sn-vb-spec__more{display:inline-flex;align-items:center;gap:.45rem;margin-top:1.2rem;font:600 14px/1 var(--sn-ff-body);color:var(--sn-electric)}
.sn-vb-spec__more svg{width:15px;height:15px;transition:transform .22s var(--sn-ease)}
.sn-vb-spec:hover .sn-vb-spec__more svg{transform:translate(3px,-3px)}

/* municipal */
.e-con.sn-vb-gov__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(2rem,6vw,5rem);align-items:start}
@media(max-width:900px){.e-con.sn-vb-gov__grid{grid-template-columns:1fr}}
.e-con.sn-vb-gov__copy{display:block}
.e-con.sn-vb-law{display:grid;grid-template-columns:44px minmax(0,1fr);gap:1rem;margin-top:1.75rem;padding:1.3rem 1.4rem;background:var(--sn-tint);border-radius:var(--sn-r);border-left:3px solid var(--sn-deep)}
.sn-vb-law__icon{width:44px;height:44px;display:grid;place-items:center;color:var(--sn-deep)}
.sn-vb-law__icon svg{width:26px;height:26px}
.sn-vb-law__text,.elementor .sn-vb-law__text p{font-size:15px;line-height:1.65;color:var(--sn-ink)}
.e-con.sn-vb-gov__list{display:block;padding:clamp(1.5rem,3vw,2rem);border:1px solid var(--sn-line);border-radius:var(--sn-r-lg);box-shadow:var(--sn-shadow-sm)}
.sn-vb-gov__title,.elementor .sn-vb-gov__title .elementor-heading-title{font:700 1.15rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-vb-gov__list .sn-checklist{margin-block:1.25rem 1.6rem !important}

/* insurance + frameworks */
.e-con.sn-vb-ins{padding-bottom:0}
.e-con.sn-vb-ins__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:center;padding-bottom:clamp(3rem,6vw,5rem)}
@media(max-width:900px){.e-con.sn-vb-ins__grid{grid-template-columns:1fr}}
.e-con.sn-vb-ins__copy{display:block}
.e-con.sn-vb-ins__card{display:block;padding:clamp(1.5rem,3vw,2rem);background:#fff;border-radius:var(--sn-r-lg);box-shadow:var(--sn-shadow)}
.sn-vb-ins__title,.elementor .sn-vb-ins__title .elementor-heading-title{font:700 1.1rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-vb-ins__card .sn-checklist{margin-block:1.25rem 0 !important}
.e-con.sn-vb-ins__marquee{padding-block:1.6rem}

/* industries + why */
.e-con.sn-vb-ind-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--sn-line);border:1px solid var(--sn-line);border-radius:var(--sn-r-lg);overflow:hidden}
@media(max-width:900px){.e-con.sn-vb-ind-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.e-con.sn-vb-ind-grid{grid-template-columns:1fr}}
.e-con.sn-vb-ind{display:block;padding:1.6rem;background:#fff;transition:background-color .26s var(--sn-ease)}
.sn-vb-ind:hover{background:var(--sn-tint)}
.sn-vb-ind__icon{display:inline-grid;place-items:center;width:44px;height:44px;margin-bottom:1rem;color:var(--sn-link);border:1px solid var(--sn-line);border-radius:var(--sn-r-xs);transition:background-color .26s,color .26s,border-color .26s}
.sn-vb-ind:hover .sn-vb-ind__icon{background:var(--sn-panel);border-color:var(--sn-panel);color:var(--sn-electric)}
.sn-vb-ind__icon svg{width:21px;height:21px}
.sn-vb-ind__title,.elementor .sn-vb-ind__title .elementor-heading-title{font:700 1.05rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-vb-ind__text,.elementor .sn-vb-ind__text p{font-size:14.5px;line-height:1.6;color:var(--sn-muted)}
.sn-vb-ind__text{margin-top:.4rem}
.e-con.sn-vb-why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
@media(max-width:900px){.e-con.sn-vb-why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.e-con.sn-vb-why-grid{grid-template-columns:1fr}}
.e-con.sn-vb-why{display:block;padding:1.5rem;background:#fff;border:1px solid var(--sn-line);border-radius:var(--sn-r);transition:transform .26s var(--sn-ease),border-color .26s}
.sn-vb-why:hover{transform:translateY(-3px);border-color:var(--sn-electric)}
.sn-vb-why__icon{display:inline-grid;place-items:center;width:40px;height:40px;margin-bottom:.9rem;color:var(--sn-electric);background:var(--sn-panel);border-radius:50%}
.sn-vb-why__icon svg{width:19px;height:19px}
.sn-vb-why__title,.elementor .sn-vb-why__title .elementor-heading-title{font:700 1.04rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-vb-why__text,.elementor .sn-vb-why__text p{font-size:14.5px;line-height:1.6;color:var(--sn-muted)}
.sn-vb-why__text{margin-top:.35rem}
.e-con.sn-vb-area{display:grid;grid-template-columns:48px minmax(0,1fr);gap:1.1rem;margin-top:1.5rem;padding:1.5rem;background:var(--sn-panel);border-radius:var(--sn-r)}
.sn-vb-area__icon{width:48px;height:48px;display:grid;place-items:center;color:var(--sn-electric);background:rgba(24,175,230,.12);border-radius:var(--sn-r-sm)}
.sn-vb-area__icon svg{width:22px;height:22px}
.e-con.sn-vb-area__body{display:block}
.sn-vb-area__title,.elementor .sn-vb-area__title .elementor-heading-title{font:700 1.1rem/1.3 var(--sn-ff-display);color:#fff}
.sn-vb-area__text,.elementor .sn-vb-area__text p{font-size:15px;line-height:1.65;color:#B9CCD8}
.sn-vb-area__text{margin-top:.4rem}
.elementor .sn-vb-area__text p.sn-vb-area__nap{color:#7FD3F5;font-weight:500}
.e-con.sn-vb-faq__grid{display:block}
.sn-vb-faq__grid > .sn-faq__wrap{max-width:900px}

/* ==========================================================================
   VARIANT C: platform constellation (Cloud services)
   ========================================================================== */
.e-con.sn-vc-hero,.sn-vc-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#fff,#EEF5F9);border-bottom:1px solid var(--sn-line)}
.sn-vc-hero__fx{position:absolute !important;inset:0;z-index:-1;pointer-events:none;width:auto !important;max-width:none !important;margin:0 !important}
.sn-vc-hero__grid{position:absolute;inset:0;background-image:radial-gradient(rgba(22,126,172,.2) 1.2px,transparent 1.4px);background-size:26px 26px;
  -webkit-mask-image:radial-gradient(ellipse 55% 70% at 72% 55%,#000 10%,transparent 72%);mask-image:radial-gradient(ellipse 55% 70% at 72% 55%,#000 10%,transparent 72%)}
.sn-vc-hero__glow{position:absolute;width:min(720px,95vw);aspect-ratio:1;right:-6%;top:-10%;border-radius:50%;background:radial-gradient(circle,rgba(24,175,230,.2),rgba(24,175,230,0) 62%)}
.e-con.sn-vc-hero__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem);align-items:center;padding-block:clamp(2.75rem,6vw,4.75rem)}
@media(max-width:1000px){.e-con.sn-vc-hero__inner{grid-template-columns:1fr}}
.e-con.sn-vc-hero__content{display:block}
.sn-vc-hero .sn-crumbs ol{color:var(--sn-muted)}
.sn-vc-hero .sn-crumbs a{color:var(--sn-link)}
.sn-vc-hero .sn-crumbs [aria-current]{color:var(--sn-ink)}
.sn-vc-hero__title,.elementor .sn-vc-hero__title .elementor-heading-title{font:800 clamp(2.1rem,4.5vw,3.4rem)/1.07 var(--sn-ff-display);letter-spacing:-.03em;color:var(--sn-ink);max-width:18ch;text-wrap:balance}
.sn-vc-hero__title{margin-bottom:1.2rem !important}
.sn-vc-hero__lead,.elementor .sn-vc-hero__lead p{font-size:clamp(1.02rem,1.45vw,1.13rem);line-height:1.68;color:var(--sn-muted);max-width:56ch}
.sn-js .sn-vc-hero__content > :not(.sn-vc-hero__title){animation:sn-ph-rise .8s var(--sn-ease) both}
.sn-js .sn-vc-hero__content > :nth-child(4){animation-delay:.25s}
.sn-js .sn-vc-hero__content > :nth-child(5){animation-delay:.35s}
.sn-js .sn-vc-hero__content > :nth-child(6){animation-delay:.45s}
.elementor-editor-active .sn-vc-hero__content > *{animation:none}

/* orbit: one slow rotation, the badges counter-rotate so labels stay upright */
.sn-vc-orbit{--r:clamp(130px,17vw,200px);--spin:60s;position:relative;width:calc(var(--r) * 2 + 110px);max-width:100%;aspect-ratio:1;margin-inline:auto}
.sn-vc-orbit__ring{position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%);border:1px dashed rgba(22,126,172,.35)}
.sn-vc-orbit__ring--a{width:calc(var(--r) * 2);height:calc(var(--r) * 2)}
.sn-vc-orbit__ring--b{width:calc(var(--r) * 1.2);height:calc(var(--r) * 1.2);border-style:solid;border-color:rgba(24,175,230,.22);
  background:radial-gradient(circle,rgba(24,175,230,.14),transparent 70%)}
.sn-vc-orbit__spin{position:absolute;inset:0;animation:sn-vc-spin var(--spin) linear infinite}
@keyframes sn-vc-spin{to{transform:rotate(360deg)}}
.sn-vc-orbit__node{--a:calc(var(--i) * 72deg - 90deg);position:absolute;left:50%;top:50%;
  transform:rotate(var(--a)) translate(var(--r)) rotate(calc(-1 * var(--a)))}
.sn-vc-orbit__node > *{animation:sn-vc-spin var(--spin) linear infinite reverse}
.sn-vc-orbit__node b{position:relative;display:grid;place-items:center;width:64px;height:64px;margin:-32px 0 0 -32px;background:#fff;border:1px solid var(--sn-line);border-radius:18px;
  box-shadow:var(--sn-shadow);font:800 15px/1 var(--sn-ff-display);color:var(--sn-ink);letter-spacing:-.01em}
.sn-vc-orbit__node em{position:absolute;left:50%;top:calc(100% + 8px);transform:translateX(-50%);white-space:nowrap;font:600 12px/1 var(--sn-ff-body);font-style:normal;color:var(--sn-muted);letter-spacing:0}
.sn-vc-orbit__node--m365 b{color:var(--sn-deep)}
.sn-vc-orbit__node--azure b{color:var(--sn-link)}
.sn-vc-orbit__node--aws b{color:var(--sn-graphite)}
.sn-vc-orbit__node--gws b,.sn-vc-orbit__node--gcp b{color:var(--sn-red)}
.sn-vc-orbit__core{position:absolute;left:50%;top:50%;width:92px;height:92px;margin:-46px 0 0 -46px;display:grid;place-items:center;background:var(--sn-panel);border-radius:26px;
  box-shadow:0 0 0 10px rgba(24,175,230,.1),0 20px 50px rgba(14,42,56,.25)}
.sn-vc-orbit__core img{width:52px;height:52px}
@media(max-width:480px){.sn-vc-orbit{--r:118px}.sn-vc-orbit__node b{width:54px;height:54px;margin:-27px 0 0 -27px;font-size:13px;border-radius:14px}.sn-vc-orbit__node em{display:none}}

/* intro + pillars */
.e-con.sn-vc-intro__head{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:820px;margin-inline:auto;margin-bottom:clamp(2.25rem,4vw,3.25rem)}
.sn-vc-intro__head .sn-section-head{margin-bottom:1.5rem}
.sn-vc-answer,.elementor .sn-vc-answer p{font:500 clamp(1.1rem,1.8vw,1.32rem)/1.6 var(--sn-ff-body);color:var(--sn-ink)}
.elementor .sn-vc-intro__body p{margin-top:1rem;margin-inline:auto}
.e-con.sn-vc-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
@media(max-width:860px){.e-con.sn-vc-pillars{grid-template-columns:1fr}}
.e-con.sn-vc-pillar,.sn-vc-pillar{--accent:var(--sn-electric);position:relative;display:block;padding:1.75rem;background:#fff;border:1px solid var(--sn-line);border-radius:var(--sn-r-lg);overflow:hidden;
  transition:transform .26s var(--sn-ease),border-color .26s,box-shadow .26s}
.sn-vc-pillar:hover{transform:translateY(-4px);border-color:var(--sn-electric);box-shadow:var(--sn-shadow)}
.sn-vc-pillar > *{position:relative;z-index:1}
.sn-vc-pillar__num{position:absolute;right:1.4rem;top:1.1rem;font:800 2.6rem/1 var(--sn-ff-display);color:var(--sn-line-soft);letter-spacing:-.04em}
.sn-vc-pillar__icon{display:inline-grid;place-items:center;width:48px;height:48px;margin-bottom:1.1rem;color:#fff;background:linear-gradient(140deg,var(--sn-deep),var(--sn-electric));border-radius:var(--sn-r-sm)}
.sn-vc-pillar__icon svg{width:22px;height:22px}
.sn-vc-pillar__title,.elementor .sn-vc-pillar__title .elementor-heading-title{font:700 1.2rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-vc-pillar__text,.elementor .sn-vc-pillar__text p{font-size:15px;line-height:1.62;color:var(--sn-muted)}
.sn-vc-pillar__text{margin-top:.45rem}

/* platform bento */
.e-con.sn-vc-bento{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.1rem}
.e-con.sn-vc-tile{grid-column:span 2}
.e-con.sn-vc-tile--m365{grid-column:span 4}
.e-con.sn-vc-tile--gws{grid-column:span 2}
.e-con.sn-vc-tile--azure,.e-con.sn-vc-tile--aws,.e-con.sn-vc-tile--gcp{grid-column:span 2}
@media(max-width:1000px){.e-con.sn-vc-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.e-con.sn-vc-tile,.e-con.sn-vc-tile--gws,.e-con.sn-vc-tile--azure,.e-con.sn-vc-tile--aws,.e-con.sn-vc-tile--gcp{grid-column:span 1}.e-con.sn-vc-tile--m365{grid-column:span 2}}
@media(max-width:640px){.e-con.sn-vc-bento{grid-template-columns:1fr}.e-con.sn-vc-tile,.e-con.sn-vc-tile--m365{grid-column:span 1 !important}}
.e-con.sn-vc-tile,.sn-vc-tile{--accent:var(--sn-electric);position:relative;display:flex;flex-direction:column;padding:clamp(1.5rem,2.6vw,1.9rem);background:#fff;border:1px solid var(--sn-line);border-radius:var(--sn-r-lg);overflow:hidden;
  transition:transform .26s var(--sn-ease),border-color .26s,box-shadow .26s}
.sn-vc-tile:hover{transform:translateY(-4px);border-color:var(--sn-electric);box-shadow:var(--sn-shadow)}
.sn-vc-tile > *{position:relative;z-index:1}
.e-con.sn-vc-tile--m365{background:var(--sn-panel);border-color:var(--sn-panel);color:#C3D4DE}
.sn-vc-tile--m365::before{content:"";position:absolute;inset:0;background:radial-gradient(520px 260px at 90% 0%,rgba(24,175,230,.28),transparent 70%);z-index:0}
.sn-vc-tile--gws,.sn-vc-tile--gcp{--accent:var(--sn-red)}
.sn-vc-tile__badge{display:inline-grid;place-items:center;min-width:54px;height:54px;padding:0 .6rem;margin-bottom:1.2rem;font:800 15px/1 var(--sn-ff-display);color:var(--sn-ink);
  background:var(--sn-tint);border-radius:14px;align-self:flex-start;transition:transform .26s var(--sn-ease)}
.sn-vc-tile:hover .sn-vc-tile__badge{transform:rotate(-6deg) scale(1.05)}
.sn-vc-tile--m365 .sn-vc-tile__badge{background:rgba(24,175,230,.16);color:#fff}
.sn-vc-tile__sub,.elementor .sn-vc-tile__sub .elementor-heading-title{font:600 12px/1.3 var(--sn-ff-body);letter-spacing:.1em;text-transform:uppercase;color:var(--sn-link)}
.sn-vc-tile--m365 .sn-vc-tile__sub .elementor-heading-title{color:#7FD3F5}
.sn-vc-tile__title,.elementor .sn-vc-tile__title .elementor-heading-title{font:700 1.3rem/1.25 var(--sn-ff-display);color:var(--sn-ink)}
.sn-vc-tile__title{margin-top:.4rem}
.sn-vc-tile--m365 .sn-vc-tile__title .elementor-heading-title{color:#fff;font-size:1.6rem}
.sn-vc-tile__text,.elementor .sn-vc-tile__text p{font-size:15px;line-height:1.65;color:var(--sn-muted)}
.sn-vc-tile__text{margin-top:.6rem}
.sn-vc-tile--m365 .sn-vc-tile__text p{color:#B9CCD8;max-width:60ch}
.sn-vc-tile__text{flex:1}
.sn-vc-tile__tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:1.2rem 0 0 !important;padding:0;list-style:none}
.sn-vc-tile__tags li{padding:.36rem .62rem;font:600 12px/1 var(--sn-ff-body);color:var(--sn-ink);background:var(--sn-tint);border-radius:var(--sn-r-xs)}
.sn-vc-tile--m365 .sn-vc-tile__tags li{color:#fff;background:rgba(255,255,255,.08)}

/* migration journey: pinned, cards travel sideways as the page scrolls */
.e-con.sn-vc-journey{position:relative;display:block;background:var(--sn-panel)}
.e-con.sn-vc-journey__pin{position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding-block:clamp(3.5rem,7vw,5.5rem);isolation:isolate}
.sn-vc-journey__fx{position:absolute !important;inset:0;z-index:-1;pointer-events:none;width:auto !important;max-width:none !important;margin:0 !important}
.sn-vc-journey__grid{position:absolute;inset:0;opacity:.6;background-image:linear-gradient(rgba(24,175,230,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(24,175,230,.07) 1px,transparent 1px);background-size:64px 64px}
.e-con.sn-vc-journey__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem;align-items:end;margin-bottom:clamp(2rem,4vw,3rem)}
.sn-vc-journey__head .sn-section-head{margin-bottom:0}
@media(max-width:1000px){.e-con.sn-vc-journey__head{grid-template-columns:1fr}}
.sn-vc-journey__bar{position:relative;padding-top:1.4rem}
.sn-vc-journey__bar::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:rgba(255,255,255,.1);border-radius:3px}
.sn-vc-journey__fill{position:absolute;left:0;top:0;height:3px;width:100%;border-radius:3px;background:linear-gradient(90deg,var(--sn-deep),var(--sn-electric));transform-origin:left;transform:scaleX(var(--p,0))}
.sn-vc-journey__marks{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.5rem;margin:0;padding:0;list-style:none}
.sn-vc-journey__marks li{font:500 12.5px/1.3 var(--sn-ff-body);color:#7B97A6;transition:color .25s}
.sn-vc-journey__marks li span{display:block;font:700 11px/1 var(--sn-ff-display);margin-bottom:.3rem;color:#5F8193}
.sn-vc-journey__marks li.is-on{color:#fff}
.sn-vc-journey__marks li.is-on span{color:var(--sn-electric)}
@media(max-width:640px){.sn-vc-journey__marks{display:none}}
.e-con.sn-vc-journey__viewport{display:block;width:100%;overflow:hidden}
.e-con.sn-vc-track{display:flex;flex-direction:row;gap:1.25rem;margin:0;padding:0 max(clamp(1rem,4vw,2.5rem),calc((100vw - var(--sn-container)) / 2 + clamp(1rem,4vw,2.5rem)));list-style:none;will-change:transform}
.e-con.sn-vc-stop{flex:0 0 clamp(270px,30vw,360px);display:block;padding:clamp(1.5rem,2.6vw,2rem);background:var(--sn-panel-2);border:1px solid rgba(255,255,255,.08);border-radius:var(--sn-r-lg);
  transition:border-color .3s,transform .3s var(--sn-ease)}
.sn-vc-stop.is-on{border-color:rgba(24,175,230,.55)}
.sn-vc-stop__num{display:block;font:800 2.6rem/1 var(--sn-ff-display);color:#fff;letter-spacing:-.04em}
.sn-vc-stop__num small{font-size:.9rem;font-weight:600;color:#5F8193;letter-spacing:0;margin-left:.3rem}
.sn-vc-stop__icon{position:absolute;right:0;top:.5rem;color:var(--sn-electric)}
.sn-vc-stop__icon svg{width:26px;height:26px}
.sn-vc-stop{position:relative}
.sn-vc-stop__title,.elementor .sn-vc-stop__title .elementor-heading-title{font:700 1.2rem/1.3 var(--sn-ff-display);color:#fff}
.sn-vc-stop__title{margin-top:1.5rem}
.sn-vc-stop__text,.elementor .sn-vc-stop__text p{font-size:15px;line-height:1.65;color:#A9BFCC}
.sn-vc-stop__text{margin-top:.5rem}
/* pinned mode is switched on by the script on wide screens only */
.sn-vc-journey.is-pinned{height:var(--h,300vh)}
.sn-vc-journey.is-pinned .sn-vc-journey__pin{position:sticky;top:0;min-height:100vh;min-height:100svh}
.sn-vc-journey:not(.is-pinned) .sn-vc-journey__viewport{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:.75rem}
.sn-vc-journey:not(.is-pinned) .sn-vc-stop{scroll-snap-align:start}
@media(max-width:640px){
  .sn-vc-journey:not(.is-pinned) .sn-vc-journey__viewport{overflow:visible}
  .sn-vc-journey:not(.is-pinned) .sn-vc-track{flex-direction:column;padding-inline:clamp(1rem,4vw,2.5rem)}
  .e-con.sn-vc-stop{flex-basis:auto}
}

/* ongoing management */
.e-con.sn-vc-manage__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}
@media(max-width:900px){.e-con.sn-vc-manage__grid{grid-template-columns:1fr}}
.e-con.sn-vc-man-list{display:grid;gap:1rem}
.e-con.sn-vc-man{display:grid;grid-template-columns:52px minmax(0,1fr);gap:1.1rem;padding:1.6rem;border:1px solid var(--sn-line);border-radius:var(--sn-r-lg);transition:border-color .26s,box-shadow .26s}
.sn-vc-man:hover{border-color:var(--sn-electric);box-shadow:var(--sn-shadow-sm)}
.sn-vc-man__icon{width:52px;height:52px;display:grid;place-items:center;color:var(--sn-link);background:var(--sn-tint);border-radius:50%;transition:background-color .26s,color .26s}
.sn-vc-man:hover .sn-vc-man__icon{background:var(--sn-panel);color:var(--sn-electric)}
.sn-vc-man__icon svg{width:23px;height:23px}
.e-con.sn-vc-man__body{display:block}
.sn-vc-man__title,.elementor .sn-vc-man__title .elementor-heading-title{font:700 1.08rem/1.3 var(--sn-ff-display);color:var(--sn-ink)}
.sn-vc-man__text,.elementor .sn-vc-man__text p{font-size:15px;line-height:1.62;color:var(--sn-muted)}
.sn-vc-man__text{margin-top:.4rem}
.sn-vc-man__text a{color:var(--sn-link);text-decoration:underline;text-underline-offset:3px}

/* hybrid diagram */
.e-con.sn-vc-hybrid__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:center}
@media(max-width:900px){.e-con.sn-vc-hybrid__grid{grid-template-columns:1fr}}
.e-con.sn-vc-hybrid__copy{display:block}
.e-con.sn-vc-hybrid__media{display:block;position:relative;padding:0 0 clamp(4rem,9vw,7rem) clamp(2rem,6vw,4rem)}
.e-con.sn-vc-hybrid__media > .sn-vc-hybrid__diagram{position:absolute;left:0;bottom:0;width:min(62%,380px);z-index:2}
@media(max-width:560px){.e-con.sn-vc-hybrid__media{padding:0}.e-con.sn-vc-hybrid__media > .sn-vc-hybrid__diagram{position:relative;width:100%;margin-top:-3rem;padding-inline:1rem}}
.sn-vc-hyb{padding:clamp(.75rem,2vw,1.25rem);background:#fff;border-radius:var(--sn-r-lg);box-shadow:var(--sn-shadow-lg)}
.sn-vc-hyb svg{width:100%;height:auto;overflow:visible}
.sn-vc-hyb .wire{fill:none;stroke:var(--sn-line);stroke-width:3}
.sn-vc-hyb .pkt{fill:none;stroke:url(#snvcg);stroke-width:3;stroke-linecap:round;stroke-dasharray:14 220;animation:sn-vc-pkt 3.2s linear infinite}
.sn-vc-hyb .pkt--b{animation-delay:-1.6s}
@keyframes sn-vc-pkt{from{stroke-dashoffset:234}to{stroke-dashoffset:0}}
.sn-vc-hyb .rack rect,.sn-vc-hyb .lap rect{fill:var(--sn-panel)}
.sn-vc-hyb .rack path{stroke:rgba(255,255,255,.15);stroke-width:2}
.sn-vc-hyb .led{fill:#3DDC97}
.sn-vc-hyb .cloud path{fill:var(--sn-tint);stroke:var(--sn-electric);stroke-width:2.5}
.sn-vc-hyb .lap path{stroke:var(--sn-panel);stroke-width:5;stroke-linecap:round}
.sn-vc-hyb text{font:600 13px var(--sn-ff-body);fill:var(--sn-muted);text-anchor:middle}

/* readiness tabs */
.e-con.sn-vc-ready__inner{display:block;max-width:980px}
.e-con.sn-vc-tabs{display:block;padding:clamp(1.25rem,3vw,2.25rem);background:#fff;border:1px solid var(--sn-line);border-radius:var(--sn-r-lg);box-shadow:var(--sn-shadow-sm)}
.sn-vc-tabs .sn-tabs__list{justify-content:safe center}
.sn-vc-tabs .sn-checklist{margin-block:.5rem 0 !important}

/* proof + area */
.e-con.sn-vc-cases{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
@media(max-width:1100px){.e-con.sn-vc-cases{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.e-con.sn-vc-cases{grid-template-columns:1fr}}
.e-con.sn-vc-faq__inner{display:block;max-width:880px}

/* ---------- photos (native image widgets) ---------- */
.sn-va-photo img,.sn-vb-gov__photo img,.sn-vc-manage__photo img,.sn-vc-hybrid__photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:var(--sn-r-lg)}
.sn-va-photo{margin-top:1.75rem !important}
.sn-va-photo img{aspect-ratio:16/7}
.sn-vb-gov__photo{margin:calc(-1 * clamp(1.5rem,3vw,2rem)) calc(-1 * clamp(1.5rem,3vw,2rem)) 1.5rem !important;width:auto !important;max-width:none !important}
.sn-vb-gov__photo img{aspect-ratio:16/8;border-radius:var(--sn-r-lg) var(--sn-r-lg) 0 0}
.e-con.sn-vb-gov__list{overflow:hidden}
.sn-vc-manage__photo img{aspect-ratio:4/3;object-position:62% 50%;filter:saturate(.9)}
@media(min-width:901px){.sn-vc-manage__photo{position:sticky;top:120px}}
@media(max-width:900px){.sn-vc-manage__photo img{aspect-ratio:16/9}}
.sn-vc-hybrid__photo img{aspect-ratio:4/3;box-shadow:var(--sn-shadow)}

/* ---------- decorative background layer: photo, optional loop, brand scrim ---------- */
.sn-bg__media{position:absolute;inset:0;overflow:hidden;border-radius:inherit}
.sn-bg__img,.sn-bg__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none}
.sn-bg__video{opacity:0;transition:opacity .9s var(--sn-ease)}
.sn-bg__video.is-playing{opacity:1}
.sn-bg__scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,42,56,.9) 0%,rgba(14,42,56,.72) 50%,rgba(14,42,56,.55) 100%)}
.e-con.sn-vb-area{position:relative;overflow:hidden;isolation:isolate}
.e-con.sn-vb-area > :not(.sn-xline){position:relative;z-index:1}
.sn-vb-area__bg .sn-bg__scrim{background:linear-gradient(90deg,rgba(14,42,56,.94) 0%,rgba(14,42,56,.8) 60%,rgba(14,42,56,.6) 100%)}

/* ---------- full-width band with a background photo or loop ---------- */
.e-con.sn-vband{position:relative;isolation:isolate;overflow:hidden;background:var(--sn-panel);color:#C3D4DE}
.e-con.sn-vband > .sn-vband__bg{z-index:-1}
.e-con.sn-vband__inner{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;min-height:clamp(360px,42vw,520px);padding-block:clamp(3.5rem,7vw,5.5rem)}
.e-con.sn-vband__copy{display:block;max-width:640px}
.sn-vband__title,.elementor .sn-vband__title .elementor-heading-title{font:800 clamp(1.7rem,3.4vw,2.6rem)/1.12 var(--sn-ff-display);letter-spacing:-.025em;color:#fff;text-wrap:balance}
.sn-vband__title{margin-bottom:1rem !important}
.sn-vband__text,.elementor .sn-vband__text p{font-size:clamp(1rem,1.4vw,1.1rem);line-height:1.68;color:#C3D4DE;max-width:56ch}
.sn-vband__text{margin-bottom:1.75rem !important}
@media(max-width:640px){.sn-bg__scrim{background:rgba(14,42,56,.78)}}

/* ---------- reduced motion: everything in its final state, nothing loops ---------- */
@media(prefers-reduced-motion:reduce){
  .sn-split.is-split .sn-w > span{transform:none}
  .sn-js .sn-draw [class$="__line"] > span,.sn-js .sn-draw [class$="__scan"] > span{transform:none !important}
  .sn-js .sn-va-board__row{opacity:1;transform:none;animation:none}
  .sn-va-board__map .ping,.sn-va-board__live i{animation:none}
  .sn-vb-radar__sweep,.sn-vb-radar__blip,.sn-vb-feed li{animation:none}
  .sn-vb-radar__blip{opacity:.8}
  .sn-vc-orbit__spin,.sn-vc-orbit__node > *{animation:none}
  .sn-vc-hyb .pkt{animation:none;stroke-dasharray:none;opacity:.6}
  .sn-vb-layer.is-covered{transform:none}
  .sn-bg__video{display:none}
  .e-con.sn-faq__item,.sn-faq .sn-faq__btn,.sn-faq__sign,.sn-faq__sign::before,.sn-faq__sign::after,.sn-faq.is-ready .sn-faq__a,.sn-faq__q,.elementor .sn-faq__q .elementor-heading-title{transition:none}
}
