/* ==========================================================================
   homev2 header + footer — ported from the "07Aug_V31_eaglehome" design.

   Every class is prefixed `sev2-` and every token `--sev2-`. The source design
   used bare .nav / .dropdown / .brand / .topbar, all of which already belong to
   Bootstrap and to the main site stylesheets that other pages load, so the
   prefix is what keeps this header from being restyled (or restyling others)
   when the two ever meet on one page.

   The tokens sit on :root rather than on a wrapper element on purpose: the
   sticky bar must be a direct child of <body>, and a wrapper would clip the
   sticky range to the wrapper's own height.
   ========================================================================== */

:root{
  --sev2-bg:#FFFFFF;
  --sev2-bg-soft:#F5F8F8;
  --sev2-bg-mute:#EAF0F0;
  --sev2-ink:#0A0F10;
  --sev2-ink-2:#495152;
  --sev2-ink-3:#7A8382;
  --sev2-line:rgba(10,15,16,.09);
  --sev2-line-2:rgba(10,15,16,.15);
  --sev2-brand:#009CA6;
  --sev2-brand-deep:#00767E;
  --sev2-brand-lite:#37B7C0;
  --sev2-sans:'Roboto','Helvetica Neue',Arial,sans-serif;
  --sev2-mono:'Roboto','Helvetica Neue',Arial,sans-serif;
  --sev2-wrap:1200px;
  --sev2-gut:clamp(20px,5vw,64px);
  /* The header runs tighter than the page gutter: the bar has to hold the logo,
     seven menu words and the call-to-action inside the same 1200px, and the
     page gutter alone eats 128px of that. */
  --sev2-gut-bar:clamp(16px,2.6vw,36px);
  --sev2-r-sm:10px;

  /* Dark palette — swapped in wherever a page marks itself dark (see the
     `.sev2-topbar--dark` / `.sev2-footer--dark` modifiers below), ported from
     the "19Aug_V38_eaglehome" design's own --dark/--don tokens. */
  --sev2-dark:#0A0E0F;
  --sev2-dark-2:#111A1B;
  --sev2-dark-3:#182324;
  --sev2-don:#EFF4F4;
  --sev2-don-2:#A9B7B6;
  --sev2-don-3:#7E8E8D;
  --sev2-dline:rgba(255,255,255,.10);
  --sev2-dline-2:rgba(255,255,255,.18);
}

/* ============================== UTILITY BAR ============================== */
.sev2-utilbar{background:var(--sev2-ink);color:#fff;font-family:var(--sev2-sans)}
.sev2-utilbar *{box-sizing:border-box}
.sev2-utilbar-inner{
  max-width:var(--sev2-wrap);margin:0 auto;padding:7px var(--sev2-gut);
  display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap;
}
.sev2-util-label{
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,255,255,.5);
}
.sev2-util-login{
  font-family:var(--sev2-mono);font-size:12px;letter-spacing:.05em;
  color:rgba(255,255,255,.85);text-decoration:none;padding:6px 0;
  border-bottom:1px solid transparent;
  transition:color .15s ease,border-color .15s ease;
}
.sev2-util-login:hover,.sev2-util-login:focus-visible{color:#fff;border-bottom-color:var(--sev2-brand);outline:none}
.sev2-util-sep{width:1px;height:14px;background:rgba(255,255,255,.22)}
.sev2-util-lang{display:flex;gap:4px}
.sev2-util-lang a{
  font-family:var(--sev2-mono);font-size:12px;letter-spacing:.05em;
  color:rgba(255,255,255,.6);text-decoration:none;padding:5px 9px;border-radius:4px;
  transition:color .15s ease,background .15s ease;
}
.sev2-util-lang a:hover,.sev2-util-lang a:focus-visible{color:#fff;outline:none}
.sev2-util-lang a[aria-current]{color:#fff;background:rgba(255,255,255,.14)}
@media(max-width:480px){
  .sev2-utilbar-inner{gap:10px;padding-top:6px;padding-bottom:6px}
  .sev2-util-login,.sev2-util-lang a{font-size:11px}
}

/* Language switcher — a hover/focus dropdown in the utility bar, ported from
   the design's .lang menu. The entries are the language pages below /homev2,
   so this is CSS only: no script, and nothing to keep in sync with the tree. */
.sev2-lang{position:relative;display:inline-flex;align-items:center}
.sev2-lang-btn{
  display:inline-flex;align-items:center;gap:8px;background:transparent;
  border:1px solid rgba(255,255,255,.22);color:rgba(255,255,255,.85);
  font-family:var(--sev2-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  padding:6px 10px;cursor:pointer;border-radius:4px;
  transition:border-color .15s ease,color .15s ease;
}
.sev2-lang:hover .sev2-lang-btn,.sev2-lang:focus-within .sev2-lang-btn{
  border-color:var(--sev2-brand);color:#fff;outline:none;
}
.sev2-lang .sev2-chev{width:6px;height:6px;border-width:1.2px;opacity:.7}
.sev2-lang:hover .sev2-lang-btn .sev2-chev,
.sev2-lang:focus-within .sev2-lang-btn .sev2-chev{transform:rotate(225deg) translateY(1px);opacity:1}
.sev2-lang-menu{
  position:absolute;top:100%;right:0;transform:translateY(8px);
  min-width:190px;background:var(--sev2-bg-soft);border:1px solid var(--sev2-line-2);
  padding:8px;opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .16s ease,transform .16s ease;z-index:90;
  box-shadow:0 24px 60px -24px rgba(10,12,11,.35);
  max-height:min(70vh,420px);overflow-y:auto;
}
/* Hover bridge: the pointer crosses a gap between button and panel. */
.sev2-lang-menu::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.sev2-lang:hover .sev2-lang-menu,.sev2-lang:focus-within .sev2-lang-menu{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);
}
.sev2-lang-menu a{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:8px 10px;color:var(--sev2-ink-2);text-decoration:none;font-size:13px;
  transition:background .13s ease,color .13s ease;
}
.sev2-lang-menu a:hover{background:var(--sev2-bg-mute);color:var(--sev2-brand)}
.sev2-lang-menu .sev2-lc{
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.06em;color:var(--sev2-ink-3);
}
.sev2-lang-menu a:hover .sev2-lc{color:var(--sev2-brand)}
.sev2-lang-menu a[aria-current]{color:var(--sev2-ink);font-weight:500}
.sev2-lang-menu a[aria-current] .sev2-lc{color:var(--sev2-brand)}
@media(max-width:480px){.sev2-lang-btn{font-size:10px;padding:5px 8px}}

/* ================================= TOP BAR ============================== */
.sev2-topbar{
  position:relative;top:0;z-index:80;
  background:rgba(255,255,255);
  backdrop-filter:saturate(140%) blur(12px);
  -webkit-backdrop-filter:saturate(140%) blur(12px);
  border-bottom:1px solid var(--sev2-line);
  font-family:var(--sev2-sans);color:var(--sev2-ink);
}
.sev2-topbar--sticky{position:sticky}
.sev2-topbar *{box-sizing:border-box}
.sev2-topbar a{color:inherit;text-decoration:none}

/* Dark variant — set by the `darkMode` document property (read in
   header.html.twig) for pages, like Contact Us, that run straight into a
   dark hero under the header. Redeclaring the shared tokens is enough on its
   own: every rule below already reads the bar's colors through var(), so the
   menu, dropdowns, burger and mobile drawer re-theme without a second copy
   of each rule — including the drawer, which is a DOM child of .sev2-topbar
   and inherits these custom properties whether or not it carries the class
   itself. Only the two hardcoded values (the translucent background here,
   and the hover/active accent below) need an explicit override. */
.sev2-topbar--dark{
  --sev2-bg:var(--sev2-dark);
  --sev2-bg-soft:var(--sev2-dark-2);
  --sev2-bg-mute:var(--sev2-dark-3);
  --sev2-ink:var(--sev2-don);
  --sev2-ink-2:var(--sev2-don-2);
  --sev2-ink-3:var(--sev2-don-3);
  --sev2-line:var(--sev2-dline);
  --sev2-line-2:var(--sev2-dline-2);
  background:rgba(10,14,15,.82);
}
.sev2-topbar--dark .sev2-nav-item:hover>a,
.sev2-topbar--dark .sev2-nav-item:focus-within>a,
.sev2-topbar--dark .sev2-nav-item.is-open>a,
.sev2-topbar--dark .sev2-nav-item--active>a{color:var(--sev2-brand-lite)}
.sev2-topbar--dark .sev2-dropdown a:hover{color:var(--sev2-brand-lite)}
.sev2-topbar--dark .sev2-nav-mobile-inner>a:active{color:var(--sev2-brand-lite)}

/* Transparent variant — `isTransparent` document property, for a header that
   sits directly on a full-bleed hero image or video instead of a translucent
   strip. Only the bar's own surface goes see-through; the dropdowns and the
   mobile drawer keep their normal solid background (via --sev2-bg-soft /
   --sev2-bg) so the menu is still legible once one of them opens. Declared
   after --dark so it wins the `background` property when a page combines
   both (a transparent bar over a dark hero). */
.sev2-topbar--transparent{
  background:transparent;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  border-bottom-color:transparent;
}
/* Flexbox, straight from the "19Aug_V38_eaglehome" reference: brand on the left,
   then one right-hand cluster (.sev2-nav-right = menu + CTA) pushed over by its
   own `margin-left:auto`. `justify-content` + the big `gap` are the floor on the
   logo↔menu space when the bar is otherwise full. Below 1280px the cluster is
   swapped for the drawer. */
.sev2-topbar-inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:clamp(28px,4vw,72px);
  padding:14px var(--sev2-gut-bar);max-width:var(--sev2-wrap);margin:0 auto;
}

/* Brand */
.sev2-brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;flex:0 0 auto}
/* The backend sets the logo's height inline (default 36px, matching the
   "19Aug_V38_eaglehome" mark); the cap only guards against an editor
   configuring something oversized enough to push the menu out of the bar. */
.sev2-brand-logo{display:block;width:auto;height:36px;max-height:44px;flex:0 0 auto}
.sev2-brand-name{font-family:var(--sev2-sans);font-weight:500;font-size:16px;letter-spacing:-.01em;white-space:nowrap}

/* The right-hand cluster — the menu and the CTA together, hugged to the right
   by `margin-left:auto` exactly as the reference's `.nav-right`. */
.sev2-nav-right{display:flex;align-items:center;gap:22px;flex-wrap:nowrap;margin-left:auto}
.sev2-nav{display:flex;gap:8px;align-items:center}
.sev2-nav-item{position:relative}
/* Same type size and padding as the reference — the menu never shrinks its font
   to fit; the 1280px breakpoint (below) hands narrower viewports the drawer
   before the long V38 labels stop fitting the bar. */
.sev2-nav-item>a{
  display:inline-flex;align-items:center;gap:6px;
  color:var(--sev2-ink);font-weight:500;text-decoration:none;
  font-size:14px;
  padding:10px 8px;transition:color .15s ease;cursor:pointer;white-space:nowrap;
}
.sev2-nav-sep{width:1px;height:16px;background:var(--sev2-line-2);margin:0 8px;flex:0 0 auto}
.sev2-nav-item--sec>a{color:var(--sev2-ink-3);font-weight:500}
.sev2-nav-item--sec>a:hover{color:var(--sev2-ink)}
.sev2-chev{
  display:inline-block;width:7px;height:7px;
  border-right:1.4px solid currentColor;border-bottom:1.4px solid currentColor;
  transform:rotate(45deg) translateY(-1px);opacity:.65;
  transition:transform .2s ease,opacity .15s ease;
}
.sev2-nav-item:hover>a,.sev2-nav-item:focus-within>a,.sev2-nav-item.is-open>a{color:var(--sev2-brand)}
/* Pimcore's active trail: the entry whose page (or child page) is being viewed. */
.sev2-nav-item--active>a{color:var(--sev2-brand)}
.sev2-nav-item--sec.sev2-nav-item--active>a{color:var(--sev2-brand)}
.sev2-nav-item:hover>a .sev2-chev,
.sev2-nav-item:focus-within>a .sev2-chev,
.sev2-nav-item.is-open>a .sev2-chev{transform:rotate(225deg) translateY(1px);opacity:1}

/* Dropdown panel — the children of a nav entry */
.sev2-dropdown{
  position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);
  min-width:214px;background:var(--sev2-bg-soft);border:1px solid var(--sev2-line-2);
  padding:7px;display:flex;flex-direction:column;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .16s ease,transform .16s ease;
  z-index:60;box-shadow:0 24px 60px -24px rgba(10,12,11,.16);
}
/* Hover bridge: keeps the panel open while the pointer crosses the gap. */
.sev2-dropdown::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.sev2-nav-item:hover .sev2-dropdown,
.sev2-nav-item:focus-within .sev2-dropdown,
.sev2-nav-item.is-open .sev2-dropdown{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0);
}
.sev2-dropdown a{
  display:block;padding:8px 11px;color:var(--sev2-ink-2);text-decoration:none;
  font-size:13px;transition:background .13s ease,color .13s ease;
}
.sev2-dropdown a:hover{background:var(--sev2-bg-mute);color:var(--sev2-brand)}
/* Keep the last menu from overflowing the right edge. */
.sev2-nav-item:last-of-type .sev2-dropdown{left:auto;right:0;transform:translateX(0) translateY(8px)}
.sev2-nav-item:last-of-type:hover .sev2-dropdown,
.sev2-nav-item:last-of-type:focus-within .sev2-dropdown,
.sev2-nav-item:last-of-type.is-open .sev2-dropdown{transform:translateX(0) translateY(0)}

/* Actions — the CTA, sitting inside .sev2-nav-right after the menu. */
.sev2-nav-actions{display:flex;align-items:center;gap:18px;flex:0 0 auto}
.sev2-nav-cta{
  display:inline-flex;align-items:center;gap:9px;white-space:nowrap;flex:0 0 auto;
  padding:10px 16px;border:1px solid var(--sev2-brand);background:var(--sev2-brand);
  color:#fff!important;border-radius:var(--sev2-r-sm);
  font-family:var(--sev2-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;
  font-weight:500;text-decoration:none;
  transition:background .15s ease,transform .15s ease,box-shadow .2s ease;
}
.sev2-nav-cta span{transition:transform .2s ease}
.sev2-nav-cta:hover{
  background:var(--sev2-brand-deep);border-color:var(--sev2-brand-deep);
  transform:translateY(-1px);box-shadow:0 10px 24px -14px rgba(10,15,16,.45);
}
.sev2-nav-cta:hover span{transform:translateX(4px)}

/* Hamburger — hidden on desktop, shown below the breakpoint in place of the
   whole right-hand cluster. */
.sev2-burger{
  display:none;background:transparent;border:0;
  padding:7px 9px;cursor:pointer;flex-direction:column;gap:4px;flex:0 0 auto;
}
.sev2-burger span{display:block;width:18px;height:1.5px;background:var(--sev2-ink);transition:transform .25s ease,opacity .2s ease}
.sev2-burger.is-open span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
.sev2-burger.is-open span:nth-child(2){opacity:0}
.sev2-burger.is-open span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}

/* Mobile drawer */
.sev2-nav-mobile{
  display:none;position:absolute;left:0;right:0;top:100%;
  background:var(--sev2-bg);border-bottom:1px solid var(--sev2-line);
  box-shadow:0 26px 44px -30px rgba(10,12,11,.45);
  max-height:calc(100vh - 56px);overflow-y:auto;z-index:49;
}
.sev2-nav-mobile.is-open{display:block}
.sev2-nav-mobile-inner{display:flex;flex-direction:column;padding:6px var(--sev2-gut-bar) 22px}
.sev2-nav-mobile-inner>a{
  padding:15px 2px;font-size:16px;color:var(--sev2-ink);text-decoration:none;
  border-bottom:1px solid var(--sev2-line);font-family:var(--sev2-sans);font-weight:500;
}
.sev2-nav-mobile-inner>a:active{color:var(--sev2-brand)}
.sev2-nm-actions{display:flex;align-items:center;gap:16px;margin-top:18px}

/* Collapsible group in the drawer: a parent entry that has a dropdown on the
   bar. Tapping anywhere on the row — the label or the chevron — toggles the
   sub-list (homev2.js adds .is-open to .sev2-nm-group). */
.sev2-nm-group{border-bottom:1px solid var(--sev2-line)}
.sev2-nm-row{display:flex;align-items:stretch;cursor:pointer}
.sev2-nm-row>a{
  flex:1 1 auto;padding:15px 2px;font-size:16px;color:var(--sev2-ink);text-decoration:none;
  font-family:var(--sev2-sans);font-weight:500;
}
.sev2-nm-row>a:active{color:var(--sev2-brand)}
.sev2-nm-toggle{
  flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;
  width:44px;padding:0 2px;background:transparent;border:0;cursor:pointer;color:var(--sev2-ink-3);
}
.sev2-nm-toggle .sev2-chev{width:8px;height:8px}
.sev2-nm-toggle[aria-expanded="true"] .sev2-chev{transform:rotate(225deg) translateY(1px);opacity:1}
.sev2-nm-sub{
  display:none;flex-direction:column;
  margin:0 0 12px 2px;padding-left:14px;border-left:1px solid var(--sev2-line-2);
}
.sev2-nm-group.is-open .sev2-nm-sub{display:flex}
.sev2-nm-sub>a{
  padding:10px 2px;font-size:14.5px;color:var(--sev2-ink-2);text-decoration:none;
  font-family:var(--sev2-sans);
}
.sev2-nm-sub>a:active{color:var(--sev2-brand)}
.sev2-topbar--dark .sev2-nm-row>a:active,
.sev2-topbar--dark .sev2-nm-sub>a:active{color:var(--sev2-brand-lite)}

/* The drawer takes over while the bar still fits, not once it has already
   broken: the seven V38 entries ("Subsurface Insights (GPR)", "Industrial NDT
   Solutions", …) need ~1280px to sit next to the logo and the button without
   the CTA spilling — well above the reference's 900px, which relied on the
   spill just being clipped. `justify-content:space-between` then holds the
   brand and the burger at the two ends of the bar. */
@media (max-width:1280px){
  /* The whole right-hand cluster is swapped for the drawer. .sev2-nav-actions
     is listed explicitly too: the CTA has lived both inside and as a sibling of
     .sev2-nav-right across revisions, and on mobile it belongs only in the
     drawer (.sev2-nm-actions), never the bar. */
  .sev2-topbar .sev2-nav-right,
  .sev2-topbar .sev2-nav-actions{display:none}
  .sev2-burger{display:flex}
}

/* ================================= FOOTER =============================== */
/* White, minimal, Apple/OpenAI-style — the design's counterweight to the dark
   utility bar at the top. */
.sev2-footer{
  border-top:1px solid var(--sev2-line);background:#fff;padding:72px 0 36px;
  color:var(--sev2-ink);font-family:var(--sev2-sans);line-height:1.5;
}
.sev2-footer *{box-sizing:border-box}
.sev2-footer a{color:inherit;text-decoration:none}
.sev2-footer-wrap{max-width:var(--sev2-wrap);margin:0 auto;padding:0 var(--sev2-gut)}
.sev2-foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:44px;margin-bottom:56px}

.sev2-foot-brand{max-width:none}
.sev2-foot-brand-mark{display:block;margin-bottom:4px}
.sev2-foot-logo{height:46px;width:auto;display:block;border-radius:0}
.sev2-foot-brand p{
  font-size:19px;font-weight:500;letter-spacing:-.015em;line-height:1.4;
  margin:16px 0 18px;color:var(--sev2-ink);
}
.sev2-foot-brand p em{font-style:normal;color:var(--sev2-brand-deep)}
.sev2-foot-meta{
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--sev2-ink-3);line-height:1.8;
}
.sev2-foot-social{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.sev2-foot-social a,.sev2-foot-social .sev2-fs-ico,.sev2-foot-social .sev2-fs-qr-btn{
  display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;
  border:1px solid var(--sev2-line-2);border-radius:8px;color:var(--sev2-ink-3);background:#fff;
  padding:0;cursor:pointer;
  transition:color .18s ease,border-color .18s ease,transform .18s ease;
}
.sev2-foot-social a:hover,.sev2-foot-social a:focus-visible,
.sev2-foot-social .sev2-fs-qr-btn:hover,.sev2-foot-social .sev2-fs-qr-btn:focus-visible{
  color:var(--sev2-brand-deep);border-color:var(--sev2-brand-deep);transform:translateY(-2px);outline:none;
}
.sev2-foot-social svg{width:16px;height:16px;fill:currentColor}

/* Shared QR popup (opened by a social link with the `qr-for-popup` class). */
.sev2-qr-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}
.sev2-qr-modal[hidden]{display:none}
.sev2-qr-modal__backdrop{position:absolute;inset:0;background:rgba(10,12,11,.55)}
.sev2-qr-modal__card{
  position:relative;background:#fff;border-radius:14px;padding:24px;
  box-shadow:0 30px 80px -20px rgba(10,12,11,.42);max-width:calc(100vw - 40px);
}
.sev2-qr-modal__card img{display:block;width:220px;height:220px;max-width:100%;object-fit:contain}
.sev2-qr-modal__x{
  position:absolute;top:6px;right:10px;border:0;background:transparent;padding:4px;
  font-size:22px;line-height:1;color:var(--sev2-ink-3);cursor:pointer;
}
.sev2-qr-modal__x:hover{color:var(--sev2-ink)}

.sev2-foot-col h5{
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--sev2-ink-3);font-weight:700;margin:0 0 16px;
}
.sev2-foot-col a{
  display:block;padding:7px 0;color:var(--sev2-ink-2);text-decoration:none;font-size:14.5px;
  transition:color .18s ease,transform .18s ease;
}
.sev2-foot-col a:hover{color:var(--sev2-brand-deep);transform:translateX(3px)}

.sev2-foot-bottom{
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;
  padding-top:26px;border-top:1px solid var(--sev2-line);
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.05em;
  color:var(--sev2-ink-3);margin-top:0;
}
.sev2-foot-bottom a{color:var(--sev2-ink-3);text-decoration:none}
.sev2-foot-bottom a:hover{color:var(--sev2-brand-deep)}

@media(max-width:820px){
  .sev2-foot-grid{grid-template-columns:1fr 1fr}
  .sev2-foot-brand{grid-column:1/-1}
}

/* Dark variant — same `darkMode` document property as the header (read in
   footer.html.twig), for a page whose footer should carry straight on from
   a dark final section instead of cutting to white. As with the header,
   redeclaring the tokens re-themes every rule above that reads them through
   var(); only the hardcoded backgrounds (footer itself, the social icon
   circles) and the brand-deep accents (too dim on a dark background) need an
   explicit override. */
.sev2-footer--dark{
  --sev2-bg:var(--sev2-dark);
  --sev2-bg-soft:var(--sev2-dark-2);
  --sev2-bg-mute:var(--sev2-dark-3);
  --sev2-ink:var(--sev2-don);
  --sev2-ink-2:var(--sev2-don-2);
  --sev2-ink-3:var(--sev2-don-3);
  --sev2-line:var(--sev2-dline);
  --sev2-line-2:var(--sev2-dline-2);
  background:var(--sev2-dark);
}
.sev2-footer--dark .sev2-foot-brand p em{color:var(--sev2-brand-lite)}
.sev2-footer--dark .sev2-foot-social a,
.sev2-footer--dark .sev2-foot-social .sev2-fs-ico,
.sev2-footer--dark .sev2-foot-social .sev2-fs-qr-btn{background:var(--sev2-dark-2)}
.sev2-footer--dark .sev2-foot-social a:hover,
.sev2-footer--dark .sev2-foot-social a:focus-visible,
.sev2-footer--dark .sev2-foot-social .sev2-fs-qr-btn:hover,
.sev2-footer--dark .sev2-foot-social .sev2-fs-qr-btn:focus-visible,
.sev2-footer--dark .sev2-foot-col a:hover,
.sev2-footer--dark .sev2-foot-bottom a:hover{color:var(--sev2-brand-lite);border-color:var(--sev2-brand-lite)}

/* ============================== EDIT MODE ============================== */
/* The backend preview renders the same templates, so blocks collapse into
   plain editable lists instead of hover-only or grid-only layouts. */
.sev2-admin{margin:0 0 16px;padding:12px 16px;border:1px solid #d0d0d0;border-radius:4px;background:#f7f7f7;font:12px/1.4 Arial,sans-serif}
.sev2-admin__title{margin:0 0 10px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#444}
.sev2-admin__group{margin:14px 0 6px;padding-top:10px;border-top:1px solid #e2e2e2;font-weight:700;color:#666}
.sev2-admin__row{display:flex;align-items:flex-start;gap:12px;padding:4px 0}
.sev2-admin__row>label{flex:0 0 260px;color:#333;padding-top:3px}
.sev2-admin__hint{margin:2px 0 8px;color:#888;font-style:italic}
.sev2-edit-region{margin:6px 0;padding:8px;border:1px dashed #bbb;border-radius:3px;background:#fcfcfc}
/* The editmode hint is a flex:1 1 100% child of the nowrap .sev2-nav-right — let
   the cluster wrap so it drops to its own line instead of squashing the menu. */
.sev2-nav-right:has(.sev2-edit-region){flex-wrap:wrap}
.sev2-edit-region__label{display:block;margin-bottom:6px;font:700 11px/1.3 Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em;color:#777}
.sev2-edit-item{padding:8px;margin:6px 0;border:1px solid #ddd;border-radius:3px;background:#fff}
.sev2-edit-item__flags{display:flex;gap:18px;padding:6px 0 0;color:#666}
.sev2-edit-children{margin:6px 0 0 18px;padding:6px 0 0 10px;border-left:2px solid #e2e2e2}
/* An edit region can sit inside a section that paints its own text white — the
   hero, the dark CTA band — and an inherited white on the panel's near-white
   background is an editable you cannot read while you type in it. These panels
   are light wherever they land, so their text is dark: once on the panel for
   everything that inherits, and again on the form controls, which do not. */
.sev2-admin,.sev2-edit-region,.sev2-edit-item{color:#222}
.sev2-admin .pimcore_editable,
.sev2-edit-region .pimcore_editable,
.sev2-edit-item .pimcore_editable,
.sev2-edit-region [contenteditable],
.sev2-edit-item [contenteditable]{color:#222}
.sev2-admin input,.sev2-admin textarea,.sev2-admin select,
.sev2-edit-region input,.sev2-edit-region textarea,.sev2-edit-region select,
.sev2-edit-item input,.sev2-edit-item textarea,.sev2-edit-item select{color:#222;background:#fff}
.sev2-edit-region a,.sev2-edit-item a{color:#15507f}
/* Empty editables collapse to 0x0 without a floor, leaving nothing to click. */
.sev2-admin .pimcore_editable_image{min-width:260px;min-height:90px;border:2px dashed #b5b5b5;border-radius:3px;background:#fff}
.sev2-admin .pimcore_editable_input,
.sev2-admin .pimcore_editable_numeric{min-width:180px;min-height:22px;border:1px solid #ccc;background:#fff;padding:2px 4px}

/* ==========================================================================
   homev2 page sections — ported from the same "07Aug_V31_eaglehome" design as
   the header and footer above, and under the same rule: every class is
   `sev2-` prefixed and every token `--sev2-`, so nothing here can be restyled
   by (or restyle) bootstrap or the main site stylesheets.

   The bricks in src/Document/Areabrick/Homev2*.php render this markup.
   ========================================================================== */

:root{
  --sev2-brand-lite:#37B7C0;
  --sev2-brand-ink:#00646B;
  --sev2-brand-tint:#E6F5F6;
  --sev2-coral:#FF968B;
  --sev2-coral-deep:#F2705F;
  --sev2-dark:#0A0E0F;
  --sev2-dark-2:#111A1B;
  --sev2-dark-3:#182324;
  --sev2-don:#EFF4F4;
  --sev2-don-2:#A9B7B6;
  --sev2-don-3:#7E8E8D;
  --sev2-dline:rgba(255,255,255,.10);
  --sev2-dline-2:rgba(255,255,255,.18);
  --sev2-r:16px;
  --sev2-r-md:16px;
  --sev2-r-lg:22px;
  --sev2-r-xl:30px;
  --sev2-sh-1:0 1px 2px rgba(10,15,16,.05),0 6px 16px rgba(10,15,16,.05);
  --sev2-sh-2:0 2px 6px rgba(10,15,16,.06),0 24px 50px -26px rgba(10,15,16,.32);
  --sev2-glow:0 30px 70px -34px rgba(0,156,166,.55);
  --sev2-sec:clamp(56px,7vw,96px);
  --sev2-ease:cubic-bezier(.16,1,.3,1);
}

/* ============================== SHARED LAYOUT ============================ */
/* `clip`, not `hidden`: it still bars sideways overflow but does NOT open a
   scroll container, so `position:sticky` keeps working for bricks inside the
   body (the section train). */
#homev2-body{overflow-x:clip}
#homev2-body *{box-sizing:border-box}
#homev2-body img,#homev2-body video{max-width:100%;display:block}
#homev2-body a{text-decoration:none}
/* Only bare links inherit body colour; anything with a class (buttons, cards,
   .sev2-lnk …) keeps its own component rules — an id-scoped `color` here would
   otherwise out-specify every `.sev2-*` class and, e.g., kill .sev2-btn--ghost:hover. */
#homev2-body a:not([class]){color:inherit}
#homev2-body h1,#homev2-body h2,#homev2-body h3,
#homev2-body h4,#homev2-body h5,#homev2-body h6,#homev2-body p{margin:0}
#homev2-body ::selection{background:rgba(0,156,166,.22)}

.sev2-wrap{max-width:var(--sev2-wrap);margin:0 auto;padding:0 var(--sev2-gut)}
.sev2-section{padding:var(--sev2-sec) 0;position:relative;font-family:var(--sev2-sans);color:var(--sev2-ink)}
.sev2-section--soft{background:var(--sev2-bg-soft)}
/* The newsroom sits on a light-turquoise band so it reads as its own segment
   between the white experts section and the dark closing CTA. */
#sev2-news.sev2-section{background:var(--sev2-brand-tint)}
.sev2-sec-head{max-width:820px;margin:18px 0 clamp(40px,5vw,64px)}
.sev2-h2{margin:18px 0 20px!important}
.sev2-sec-head-row{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  flex-wrap:wrap;margin-bottom:clamp(36px,4vw,52px);
}
.sev2-sec-head-row .sev2-sec-head{margin:0}
.sev2-sec-head-row .sev2-sec-head .sev2-h2{margin:18px 0 0}

.sev2-eyebrow{
  font-family:var(--sev2-mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--sev2-brand-ink);display:inline-flex;align-items:center;gap:10px;font-weight:500;
}
.sev2-eyebrow::before{content:"";width:26px;height:1px;background:linear-gradient(90deg,var(--sev2-brand),transparent)}
.sev2-eyebrow--center{justify-content:center}
.sev2-h2{font-size:clamp(30px,4.4vw,60px);font-weight:700;letter-spacing:-.018em;line-height:1.02}
.sev2-h2 em{font-style:normal;color:var(--sev2-brand)}
.sev2-lede{font-size:clamp(17px,1.4vw,20px);color:var(--sev2-ink-2);line-height:1.62;max-width:64ch}
.sev2-tag{
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--sev2-brand-ink);background:var(--sev2-brand-tint);border-radius:999px;
  padding:6px 12px;font-weight:500;display:inline-block;align-self:flex-start;
}

/* ============================ SECTION TRAIN ============================= */
/* Sticky in-page navigator (Homev2SectionTrain). Pins under the header;
   homev2.js (initSectionTrain) sets `top`, keeps `--sev2-anchor-offset` in
   sync and toggles `.is-active`. */
html{scroll-behavior:smooth}
:root{--sev2-anchor-offset:120px}
/* Every anchor target on the page clears the header + train when jumped to. */
#homev2-body [id]{scroll-margin-top:var(--sev2-anchor-offset)}

/* Pimcore wraps every brick in a <div class="pimcore_area_*"> whose height is
   exactly the brick's — that box would give the sticky train zero travel and it
   would never pin. Collapse the wrapper in the frontend so the train's sticky
   containing block is #homev2-body (the whole scroll length). */
body:not(.homev2-editmode) .pimcore_area_Homev2SectionTrain{display:contents}

.sev2-train{
  position:sticky;top:0;z-index:70;
  background:var(--sev2-bg);
  border-top:1px solid var(--sev2-line);border-bottom:1px solid var(--sev2-line);
  font-family:var(--sev2-mono);
}
.sev2-train-inner{
  max-width:var(--sev2-wrap);margin:0 auto;
  display:flex;align-items:stretch;
  overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;
  scroll-snap-type:x proximity;
}
.sev2-train-inner::-webkit-scrollbar{display:none}
.sev2-train-label{
  display:flex;align-items:center;padding:0 16px 0 var(--sev2-gut-bar);
  font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--sev2-ink-3);
  white-space:nowrap;flex:0 0 auto;
}
.sev2-train-item{
  display:inline-flex;align-items:center;gap:9px;
  padding:14px 18px;flex:0 0 auto;scroll-snap-align:start;
  font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;
  color:var(--sev2-ink-3);white-space:nowrap;
  border-left:1px solid var(--sev2-line);
  transition:color .16s ease,background .16s ease;
}
.sev2-train-item:first-of-type{border-left:0}
.sev2-train-label + .sev2-train-item{border-left:1px solid var(--sev2-line)}
.sev2-train-num{color:var(--sev2-ink-3);font-weight:400}
.sev2-train-txt{font-weight:500;color:var(--sev2-ink-2)}
.sev2-train-item:hover{color:var(--sev2-ink)}
.sev2-train-item:hover .sev2-train-txt,
.sev2-train-item:hover .sev2-train-num{color:var(--sev2-ink)}
.sev2-train-item.is-active{background:var(--sev2-ink)}
.sev2-train-item.is-active .sev2-train-txt{color:#fff}
.sev2-train-item.is-active .sev2-train-num{color:rgba(255,255,255,.55)}
.sev2-train-item:focus-visible{outline:2px solid var(--sev2-brand);outline-offset:-2px}
@media(max-width:600px){
  .sev2-train-item{padding:12px 13px;font-size:10px;gap:6px}
  .sev2-train-label{display:none}
}

/* ================================ BUTTONS =============================== */
.sev2-btn{
  display:inline-flex;align-items:center;gap:9px;font-family:var(--sev2-mono);font-size:12px;
  font-weight:500;letter-spacing:.06em;text-transform:uppercase;padding:14px 22px;
  border-radius:var(--sev2-r-sm);border:1px solid var(--sev2-ink);background:var(--sev2-ink);
  color:#fff;cursor:pointer;text-decoration:none;
  transition:transform .18s ease,box-shadow .2s ease,background .18s ease,color .18s ease,border-color .18s ease;
}
.sev2-ar{display:inline-block;transition:transform .2s ease}
.sev2-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px -14px rgba(10,15,16,.45)}
.sev2-btn:hover .sev2-ar{transform:translateX(4px)}
.sev2-btn--brand{background:var(--sev2-brand);border-color:var(--sev2-brand);box-shadow:var(--sev2-glow)}
.sev2-btn--brand:hover{background:var(--sev2-brand-deep);border-color:var(--sev2-brand-deep)}
.sev2-btn--ghost{background:transparent;color:var(--sev2-ink);border-color:var(--sev2-line-2)}
.sev2-btn--ghost:hover{background:var(--sev2-bg-mute);color:var(--sev2-ink);border-color:var(--sev2-ink)}
.sev2-lnk{
  font-family:var(--sev2-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--sev2-brand-ink);font-weight:500;display:inline-flex;align-items:center;gap:9px;
  text-decoration:none;transition:color .18s ease;
}
.sev2-lnk:hover{color:var(--sev2-brand-deep)}
.sev2-lnk:hover .sev2-ar{transform:translateX(4px)}

/* ================================= HERO ================================= */
.sev2-hero{
  background:
    radial-gradient(1200px 720px at 82% -12%,rgba(0,156,166,.26),transparent 58%),
    radial-gradient(820px 560px at 2% 116%,rgba(255,150,139,.16),transparent 60%),
    var(--sev2-dark);
  color:var(--sev2-don);position:relative;overflow:hidden;
  font-family:var(--sev2-sans);
  padding:clamp(56px,7vw,92px) 0 clamp(64px,7vw,92px);
}
.sev2-hero *{box-sizing:border-box}
.sev2-hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);
  background-size:52px 52px;
  -webkit-mask-image:radial-gradient(ellipse at 60% 30%,#000,transparent 78%);
  mask-image:radial-gradient(ellipse at 60% 30%,#000,transparent 78%);
}
.sev2-hero > .sev2-wrap{position:relative;z-index:1}
.sev2-hero-pre{
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  margin-bottom:clamp(30px,4.5vw,58px);
}
.sev2-brandline{
  font-family:var(--sev2-mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--sev2-don-3);
}
.sev2-latest{
  display:inline-flex;align-items:center;gap:10px;padding:7px 14px 7px 8px;
  border:1px solid var(--sev2-dline-2);border-radius:999px;font-size:12.5px;
  color:var(--sev2-don-2);text-decoration:none;transition:.18s;
}
.sev2-latest:hover{border-color:var(--sev2-brand);background:rgba(0,156,166,.12);color:#fff}
.sev2-latest b{
  font-family:var(--sev2-mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;
  background:var(--sev2-brand);color:#04211f;padding:4px 8px;border-radius:999px;font-weight:700;
}
.sev2-hero-top{
  display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,80px);align-items:start;
  margin-bottom:clamp(26px,3.4vw,44px);
}
.sev2-hero-head h1{
  font-size:clamp(46px,7.2vw,104px);font-weight:700;letter-spacing:-.02em;line-height:.94;
  color:#fff;margin-top:-8px;
}
.sev2-hero-head h1 em{font-style:italic;font-weight:300;color:var(--sev2-brand-lite)}
.sev2-hero-side{padding-bottom:6px}
.sev2-hero-sub{font-size:clamp(16px,1.35vw,19px);color:var(--sev2-don-2);line-height:1.62;max-width:56ch}
.sev2-hero-sub b{color:#fff;font-weight:500}
.sev2-hero-sub strong{color:var(--sev2-brand-lite);font-weight:500}
.sev2-hero-actions{display:flex;gap:10px;flex-wrap:nowrap;margin-top:34px}
.sev2-hero-actions .sev2-btn{padding:13px 16px;white-space:nowrap}
.sev2-hero .sev2-btn--ghost{color:#fff;border-color:var(--sev2-dline-2)}
.sev2-hero .sev2-btn--ghost:hover{background:#fff;color:var(--sev2-dark);border-color:#fff}
.sev2-hero-note{
  font-family:var(--sev2-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--sev2-don-3);margin-top:30px;
}
.sev2-hero-vis{
  position:relative;border-radius:var(--sev2-r-xl);overflow:hidden;
  border:1px solid var(--sev2-dline-2);aspect-ratio:16/9;width:100%;background:#0c1314;
  box-shadow:0 60px 120px -50px rgba(0,0,0,.85);
}
.sev2-hero-vis video,.sev2-hero-vis > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sev2-hero-vis::after{
  content:"";position:absolute;left:0;right:0;height:2px;top:0;z-index:2;
  background:linear-gradient(90deg,transparent,rgba(55,183,192,.9),transparent);
  animation:sev2-scan 5.5s cubic-bezier(.5,0,.5,1) infinite;
}
.sev2-vscrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 40%,rgba(6,12,12,.55))}
.sev2-vchip{
  position:absolute;left:16px;bottom:16px;z-index:3;display:flex;gap:10px;align-items:center;
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;
  color:#dff5f6;background:rgba(8,16,16,.5);border:1px solid var(--sev2-dline-2);
  backdrop-filter:blur(6px);padding:8px 12px;border-radius:999px;
}
.sev2-vchip .sev2-dot{
  width:7px;height:7px;border-radius:50%;background:var(--sev2-brand-lite);
  box-shadow:0 0 10px var(--sev2-brand-lite);animation:sev2-pulse 2.4s ease-in-out infinite;
}
@keyframes sev2-scan{0%{top:0;opacity:0}8%{opacity:1}92%{opacity:1}100%{top:100%;opacity:0}}
@keyframes sev2-pulse{0%,100%{opacity:1}50%{opacity:.35}}
@media(max-width:1040px){.sev2-hero-actions{flex-wrap:wrap}}
@media(max-width:860px){.sev2-hero-top{grid-template-columns:1fr}.sev2-hero-vis{margin-top:4px}}

/* ================================ TRUST ================================= */
.sev2-trust{background:var(--sev2-bg);border-bottom:1px solid var(--sev2-line);font-family:var(--sev2-sans)}
.sev2-trust *{box-sizing:border-box}
.sev2-trust-in{padding:clamp(30px,4.4vw,52px) var(--sev2-gut)}
.sev2-trust-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.sev2-trust-stats > div{display:flex;flex-direction:column;gap:5px;padding-right:18px;border-right:1px solid var(--sev2-line)}
.sev2-trust-stats > div:last-child{border-right:0}
.sev2-trust-stats .sev2-v{font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1;color:var(--sev2-ink)}
.sev2-trust-stats .sev2-v em{font-style:normal;color:var(--sev2-brand)}
.sev2-trust-stats .sev2-v p{margin:0}
.sev2-trust-stats .sev2-l{
  font-family:var(--sev2-mono);font-size:10px;letter-spacing:.09em;text-transform:uppercase;
  color:var(--sev2-ink-3);
}
.sev2-marquee-row{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;
  gap:clamp(16px,2.4vw,26px);margin-top:clamp(18px,2.4vw,28px);
  padding-top:clamp(16px,2.2vw,26px);border-top:1px solid var(--sev2-line);
}
.sev2-marquee-row .sev2-ml{
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--sev2-ink-3);flex-shrink:0;
}
.sev2-logos-static{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;
  gap:12px clamp(20px,3vw,40px);flex:0 1 auto;min-width:0;
}
.sev2-logos-static .sev2-lg{
  font-weight:700;font-size:clamp(13px,1.5vw,16px);letter-spacing:.02em;
  color:var(--sev2-ink-3);opacity:.72;white-space:nowrap;
}
/* The imported wordmarks carry a baked-in 30px white margin on a 260px canvas
   (bin/prepare-homev2-trust-logos.php), so ~23% of the box is padding — the
   CSS height is set higher than the wanted cap height to compensate. */
.sev2-logos-static .sev2-lg-img{height:40px;width:auto;max-width:170px;object-fit:contain;opacity:.72;filter:grayscale(1)}
@media(max-width:1040px){
  .sev2-trust-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:26px 34px}
  .sev2-trust-stats > div{flex:0 1 calc(33.333% - 34px);align-items:center;text-align:center;padding-right:0;border-right:0;gap:6px}
  .sev2-trust-stats .sev2-v{font-size:24px}
}
@media(max-width:600px){
  .sev2-trust-stats{gap:22px 26px}
  .sev2-trust-stats > div{flex:0 1 calc(50% - 26px)}
  .sev2-trust-stats .sev2-v{font-size:22px}
  .sev2-trust-stats .sev2-l{font-size:9.5px;letter-spacing:.07em}
  .sev2-marquee-row{flex-direction:column;gap:14px}
}

/* ============================ BUILT WORLD (§01) ========================= */
.sev2-world{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.82fr);gap:clamp(32px,4vw,56px);align-items:start}
.sev2-world-copy,.sev2-world-figures{min-width:0}
.sev2-world-copy .sev2-h2{margin:18px 0 20px}
.sev2-world-opp{
  margin-top:20px;padding-left:16px;border-left:2px solid var(--sev2-brand);
  max-width:60ch;font-size:15px;line-height:1.62;color:var(--sev2-ink-2);
}
.sev2-world-opp strong{color:var(--sev2-brand-ink);font-weight:700}
.sev2-world-opp-src{
  margin-top:6px;padding-left:16px;font-family:var(--sev2-mono);font-size:10px;
  letter-spacing:.04em;color:var(--sev2-ink-3);
}
.sev2-world-figures{
  display:flex;flex-direction:column;border:1px solid var(--sev2-line-2);
  border-radius:var(--sev2-r-lg);background:var(--sev2-bg);overflow:hidden;
}
.sev2-wf-sec{min-width:0;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid var(--sev2-line-2)}
.sev2-wf-sec--headline{background:var(--sev2-bg-soft)}
.sev2-wf{
  padding:18px 24px;display:flex;justify-content:space-between;align-items:baseline;gap:16px;
  border-bottom:1px solid var(--sev2-line);
}
.sev2-wf:last-child{border-bottom:0}
.sev2-wfk{font-family:var(--sev2-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--sev2-ink-2);font-weight:500}
.sev2-wfn{font-family:var(--sev2-mono);font-size:10px;color:var(--sev2-ink-3);letter-spacing:.04em;margin-top:5px}
.sev2-wfv{
  font-size:18px;font-weight:700;letter-spacing:-.018em;line-height:1;
  color:var(--sev2-ink-2);white-space:nowrap;text-align:right;
}
.sev2-wfv em{font-style:italic;color:var(--sev2-brand);font-size:32px;letter-spacing:-.016em;font-weight:700}
.sev2-wfv p{margin:0}
.sev2-wf-headline{padding:24px;flex-direction:column;align-items:flex-start;gap:10px;border-bottom:0}
.sev2-wf-headline .sev2-wfk{color:var(--sev2-ink);font-size:13.5px}
.sev2-wf-headline .sev2-wfv{font-size:22px;text-align:left}
.sev2-wf-odo{display:inline-flex;align-items:flex-end;justify-content:flex-start;line-height:1;font-variant-numeric:tabular-nums}
.sev2-odo-mount{display:inline-flex;align-items:flex-end}
.sev2-odo-reel{
  display:inline-block;height:1em;overflow:hidden;color:var(--sev2-brand);
  font-size:48px;line-height:1;letter-spacing:-.016em;font-weight:700;
}
.sev2-odo-strip{display:flex;flex-direction:column}
.sev2-odo-digit{height:1em;line-height:1;text-align:center;min-width:.62em}
.sev2-odo-comma,.sev2-odo-t{color:var(--sev2-brand);font-size:48px;line-height:1;letter-spacing:-.016em;font-weight:700}
.sev2-odo-dollar{color:var(--sev2-ink-2);font-size:22px;line-height:1;font-weight:700;display:inline-block;transform:translateY(-.22em)}
@keyframes sev2-odoPop{0%{opacity:0;transform:translateY(.5em) scale(.55)}55%{opacity:1}100%{opacity:1;transform:none}}
@media (max-width:680px){.sev2-odo-reel,.sev2-odo-comma,.sev2-odo-t{font-size:38px}}
.sev2-wf-divider{
  display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;
  min-height:80px;padding:0 24px;background:var(--sev2-bg-mute);
}
.sev2-wf-divider-label{
  font-family:var(--sev2-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--sev2-brand-ink);font-weight:700;
}
.sev2-wf-divider-note{font-family:var(--sev2-mono);font-size:10px;letter-spacing:.04em;color:var(--sev2-ink-3)}
.sev2-cost-ticker{
  position:relative;overflow:hidden;display:flex;align-items:center;min-height:62px;
  background:var(--sev2-brand-tint);border-left:3px solid var(--sev2-brand);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
.sev2-cost-ticker-track{
  display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap;
  will-change:transform;animation:sev2-ticker 30s linear infinite;
}
.sev2-cost-ticker:hover .sev2-cost-ticker-track{animation-play-state:paused}
.sev2-ct-item{display:inline-flex;align-items:baseline;gap:13px;padding:0 6px}
.sev2-ct-val{font-weight:700;font-size:24px;letter-spacing:-.02em;color:var(--sev2-brand);line-height:1}
.sev2-ct-label{font-size:14px;color:var(--sev2-ink-2)}
.sev2-ct-dot{width:6px;height:6px;border-radius:50%;background:var(--sev2-brand);opacity:.55;margin:0 30px;flex:0 0 auto;align-self:center}
@keyframes sev2-ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:820px){.sev2-world{grid-template-columns:1fr;gap:32px}}

/* =============================== SOLUTIONS ============================== */
.sev2-sol-feature{
  display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);align-items:center;
  border:1px solid var(--sev2-line);
  border-radius:var(--sev2-r-xl);overflow:hidden;background:#fff;box-shadow:var(--sev2-sh-1);
  margin-bottom:32px;
}
.sev2-sol-feature--rev{grid-template-columns:minmax(0,1fr) minmax(0,1.02fr)}
/* Image is a fixed 3:2 frame, inset and vertically centred against the copy —
   the same size on every card regardless of how much text the body carries.
   `cover` keeps the frame full (no letterbox). */
.sev2-sol-feature .sev2-media{
  position:relative;aspect-ratio:3/2;min-height:0;overflow:hidden;
  margin:clamp(16px,2.2vw,26px);border-radius:14px;background:var(--sev2-bg-soft);
  box-shadow:0 22px 48px -26px rgba(10,12,11,.28);
}
.sev2-sol-feature .sev2-media img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .6s cubic-bezier(.2,.7,.2,1);
}
.sev2-sol-feature:hover .sev2-media img{transform:scale(1.04)}
.sev2-sol-feature .sev2-body{
  padding:clamp(28px,3vw,44px);display:flex;flex-direction:column;justify-content:center;order:-1;
}
.sev2-sol-feature--rev .sev2-body{order:1}
.sev2-sol-feature--rev .sev2-media{order:0}
.sev2-sol-feature h3{font-size:clamp(24px,2.6vw,34px);font-weight:700;letter-spacing:-.02em;margin:14px 0 12px}
.sev2-sol-text{font-size:15.5px;color:var(--sev2-ink-2);line-height:1.55;max-width:52ch}
/* Feature chips — one pill per line: a colour dot (icon) + the bold label +
   the middot list. `For` and `Brands` carry their own colour + mark; every
   other label (capability) stays brand teal. Pills never wrap — a too-long
   one ellipsises rather than breaking onto a second line. */
.sev2-chips{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:22px 0 26px;max-width:100%}
.sev2-chip{
  display:inline-flex;align-items:center;gap:9px;max-width:100%;
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.02em;line-height:1.35;
  color:var(--sev2-ink-2);white-space:nowrap;overflow:hidden;
  background:var(--sev2-bg-soft);border:1px solid var(--sev2-line);border-radius:999px;
  padding:5px 15px 5px 5px;
}
.sev2-chip-txt{overflow:hidden;text-overflow:ellipsis;min-width:0}
.sev2-chip b{font-weight:600}
.sev2-chip-ico{
  flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  width:20px;height:20px;border-radius:50%;color:#fff;
}
.sev2-chip-ico svg{width:12px;height:12px;fill:currentColor;display:block}
.sev2-chip--cap .sev2-chip-ico{background:var(--sev2-brand)}
.sev2-chip--for .sev2-chip-ico{background:#5B5BD6}
.sev2-chip--brand .sev2-chip-ico{background:#B9822B}
.sev2-chip--cap{border-color:rgba(0,156,166,.28)}
.sev2-chip--for{border-color:rgba(91,91,214,.26)}
.sev2-chip--brand{border-color:rgba(185,130,43,.30)}
.sev2-chip--cap b{color:var(--sev2-brand-ink)}
.sev2-chip--for b{color:#4A4AC0}
.sev2-chip--brand b{color:#8A5F1C}
.sev2-sol-links{display:flex;gap:22px;flex-wrap:wrap}
.sev2-sol-card-eyebrow{
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--sev2-brand-deep);font-weight:700;
}
.sev2-gold-std{color:#8A6D1D}
.sev2-sol-aside-eyebrow{margin:clamp(36px,4.5vw,56px) 0 14px}
.sev2-sol-aside .sev2-sol-feature{margin-bottom:0}
.sev2-sol-strip-brands{display:flex;flex-direction:column;gap:8px;margin:20px 0 24px}
.sev2-sol-brands{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.sev2-sol-pill{
  display:inline-flex;padding:5px 12px;border-radius:7px;background:var(--sev2-bg-mute);
  color:var(--sev2-ink-2);font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.04em;
  text-transform:uppercase;font-weight:500;
}
@media(max-width:820px){
  .sev2-sol-feature,.sev2-sol-feature--rev{grid-template-columns:1fr}
  .sev2-sol-feature .sev2-media{aspect-ratio:16/10}
  .sev2-sol-feature .sev2-body,.sev2-sol-feature--rev .sev2-body{order:-1}
  .sev2-sol-feature .sev2-media,.sev2-sol-feature--rev .sev2-media{order:0}
}

/* ============================= ARCHITECTURE ============================= */
.sev2-arch{
  background:radial-gradient(1000px 600px at 88% 0%,rgba(0,156,166,.16),transparent 55%),var(--sev2-dark);
  color:var(--sev2-don);
}
.sev2-arch .sev2-h2{color:#fff}
.sev2-arch .sev2-eyebrow{color:var(--sev2-brand-lite)}
.sev2-arch .sev2-lede{color:var(--sev2-don-2)}
.sev2-layers{display:flex;flex-direction:column;gap:18px;position:relative}
.sev2-layer{
  border:1px solid var(--sev2-dline);border-radius:var(--sev2-r-xl);
  background:linear-gradient(180deg,var(--sev2-dark-2),rgba(17,26,27,.4));
  padding:clamp(24px,3vw,38px);position:relative;overflow:hidden;transition:border-color .25s;
}
.sev2-layer:hover{border-color:rgba(0,156,166,.5)}
.sev2-layer-top{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:6px}
.sev2-ln{font-family:var(--sev2-mono);font-size:12px;color:var(--sev2-brand-lite);letter-spacing:.1em}
.sev2-layer h3{font-size:clamp(24px,3vw,38px);font-weight:700;letter-spacing:-.02em;color:#fff}
.sev2-layer .sev2-role{
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--sev2-don-3);margin-left:auto;
}
.sev2-layer-lede{font-size:15.5px;color:var(--sev2-don-2);line-height:1.55;max-width:70ch;margin:10px 0 20px}

/* Collapsed summary row: attribute names + the expand button. */
.sev2-layer-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.sev2-attr-names{display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.sev2-attr-name{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--sev2-don-2);border:1px solid var(--sev2-dline-2);border-radius:999px;padding:6px 13px;
}
.sev2-attr-name::before{content:"";width:6px;height:6px;background:var(--sev2-brand);border-radius:2px;flex:0 0 auto}
.sev2-layer.is-open .sev2-attr-names{display:none}

.sev2-layer-toggle{
  display:inline-flex;align-items:center;gap:10px;margin-left:auto;flex:0 0 auto;
  background:transparent;border:1px solid var(--sev2-dline-2);border-radius:999px;
  color:var(--sev2-don);cursor:pointer;padding:6px 6px 6px 15px;
  font-family:var(--sev2-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;
  transition:border-color .2s ease,color .2s ease;
}
.sev2-layer-toggle:hover,.sev2-layer-toggle:focus-visible{border-color:var(--sev2-brand-lite);color:#fff;outline:none}
.sev2-layer-toggle-ico{
  position:relative;flex:0 0 auto;width:22px;height:22px;border-radius:50%;
  background:var(--sev2-brand);transition:transform .28s ease;
}
.sev2-layer-toggle-ico::before,.sev2-layer-toggle-ico::after{
  content:"";position:absolute;inset:0;margin:auto;background:#04211f;border-radius:1px;
}
.sev2-layer-toggle-ico::before{width:10px;height:1.8px}
.sev2-layer-toggle-ico::after{width:1.8px;height:10px;transition:transform .28s ease}
.sev2-layer.is-open .sev2-layer-toggle-ico{transform:rotate(90deg)}
.sev2-layer.is-open .sev2-layer-toggle-ico::after{transform:scaleY(0)}

/* Expanding detail — grid-rows 0fr → 1fr so it slides open. */
.sev2-attrs-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}
.sev2-layer.is-open .sev2-attrs-wrap{grid-template-rows:1fr}
.sev2-attrs{
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
  overflow:hidden;min-height:0;
}
.sev2-layer.is-open .sev2-attrs{padding-top:24px}
.sev2-attrs--edit{grid-template-rows:none;overflow:visible;padding-top:24px}
.sev2-attr{border-top:1px solid var(--sev2-dline);padding-top:16px}
.sev2-attr h6{font-size:14px;font-weight:700;color:#fff;margin-bottom:7px;display:flex;align-items:center;gap:8px}
.sev2-attr h6::before{content:"";width:7px;height:7px;background:var(--sev2-brand);border-radius:2px;flex:0 0 auto}
.sev2-attr-text{font-size:13px;color:var(--sev2-don-2);line-height:1.5}
@media(max-width:760px){.sev2-attrs{grid-template-columns:1fr}}

/* =============================== COMPOUND =============================== */
.sev2-comp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:44px}
.sev2-comp-card{
  background:var(--sev2-bg-soft);border:1px solid var(--sev2-line);border-radius:var(--sev2-r-lg);
  padding:30px;transition:transform .2s,box-shadow .25s;
}
.sev2-comp-card:hover{transform:translateY(-4px);box-shadow:var(--sev2-sh-2)}
.sev2-comp-card .sev2-k{
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--sev2-brand-ink);margin-bottom:16px;
}
.sev2-comp-card h4{font-size:20px;font-weight:700;letter-spacing:-.015em;line-height:1.2;margin-bottom:12px}
.sev2-comp-text{font-size:14.5px;color:var(--sev2-ink-2);line-height:1.55}
.sev2-flywheel{
  display:grid;grid-template-columns:1fr auto 1fr;gap:26px;align-items:stretch;
  background:var(--sev2-dark);border-radius:var(--sev2-r-xl);padding:clamp(28px,3vw,44px);
  color:var(--sev2-don);position:relative;overflow:hidden;
}
.sev2-flywheel::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(600px 400px at 50% 120%,rgba(0,156,166,.2),transparent 60%);
}
.sev2-flywheel > *{position:relative;z-index:1}
.sev2-fk{
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--sev2-brand-lite);margin-bottom:14px;
}
.sev2-fw-text{font-size:14.5px;color:var(--sev2-don-2);line-height:1.55}
.sev2-fw-arrow{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  font-family:var(--sev2-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--sev2-don-3);
}
.sev2-fw-arrow .sev2-a{font-size:22px;color:var(--sev2-brand-lite)}
@media(max-width:760px){
  .sev2-comp-grid{grid-template-columns:1fr}
  .sev2-flywheel{grid-template-columns:1fr}
  .sev2-fw-arrow{flex-direction:row;transform:rotate(90deg);padding:8px 0}
}

/* ============================== NORTH STAR ============================== */
.sev2-ns-lead{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap;margin-bottom:44px}
.sev2-ns-lead .sev2-h2{max-width:18ch;margin-top:18px}
.sev2-ns-lead .sev2-side{max-width:34ch}
.sev2-ns-lead .sev2-side .sev2-k{
  font-family:var(--sev2-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--sev2-brand-ink);margin-bottom:10px;
}
.sev2-side-text{font-size:16px;color:var(--sev2-ink-2);line-height:1.5}
.sev2-ns-panel{
  display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--sev2-line);
  border-radius:var(--sev2-r-lg);overflow:hidden;box-shadow:var(--sev2-sh-1);
}
.sev2-ns-item{display:flex;flex-direction:column}
.sev2-ns-item + .sev2-ns-item{border-left:1px solid var(--sev2-line)}
.sev2-ns-item .sev2-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--sev2-bg-mute)}
.sev2-ns-item .sev2-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sev2-ns-item .sev2-body{padding:22px 20px}
.sev2-ns-item .sev2-k{
  font-family:var(--sev2-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--sev2-brand-ink);margin-bottom:9px;
}
.sev2-ns-item h4{font-size:17px;font-weight:700;letter-spacing:-.015em;line-height:1.18;margin-bottom:9px}
.sev2-ns-text{font-size:13.5px;color:var(--sev2-ink-2);line-height:1.5}
@media(max-width:900px){
  .sev2-ns-panel{grid-template-columns:repeat(2,1fr)}
  .sev2-ns-item + .sev2-ns-item{border-left:0}
  .sev2-ns-item{border-top:1px solid var(--sev2-line)}
  .sev2-ns-item:nth-child(1),.sev2-ns-item:nth-child(2){border-top:0}
  .sev2-ns-item:nth-child(even){border-left:1px solid var(--sev2-line)}
}
@media(max-width:520px){
  .sev2-ns-panel{grid-template-columns:1fr}
  .sev2-ns-item{border-left:0!important}
  .sev2-ns-item:nth-child(1){border-top:0}
  .sev2-ns-item + .sev2-ns-item{border-top:1px solid var(--sev2-line)}
}

/* ========================== STORY / NEWS CARDS ========================== */
.sev2-cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.sev2-xcard{
  border:1px solid var(--sev2-line);border-radius:var(--sev2-r-lg);overflow:hidden;background:#fff;
  box-shadow:var(--sev2-sh-1);display:flex;flex-direction:column;
  transition:transform .2s,box-shadow .25s;text-decoration:none;color:inherit;
}
.sev2-xcard:hover{transform:translateY(-5px);box-shadow:var(--sev2-sh-2),var(--sev2-glow)}
.sev2-xcard .sev2-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:#0d2b2e}
.sev2-xcard .sev2-media img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .6s cubic-bezier(.2,.7,.2,1);
}
.sev2-xcard:hover .sev2-media img{transform:scale(1.05)}
.sev2-xcard .sev2-play{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;
  font-size:30px;text-shadow:0 2px 10px rgba(0,0,0,.5);z-index:2;
}
.sev2-xcard .sev2-body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.sev2-xmeta{display:flex;gap:10px;align-items:center;font-family:var(--sev2-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.sev2-xmeta .sev2-c{color:var(--sev2-brand-ink);font-weight:500}
.sev2-xmeta .sev2-d{color:var(--sev2-ink-3)}
.sev2-xcard h4{font-size:17.5px;font-weight:700;letter-spacing:-.015em;line-height:1.28}
.sev2-xtext{font-size:13.5px;color:var(--sev2-ink-2);line-height:1.5;flex:1}
@media(max-width:820px){.sev2-cards-3{grid-template-columns:1fr}}

/* ================================ EXPERTS =============================== */
.sev2-exp-carousel{
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
.sev2-exp-track{display:flex;width:max-content;animation:sev2-mq 52s linear infinite}
.sev2-exp-carousel:hover .sev2-exp-track{animation-play-state:paused}
.sev2-exp-set{display:flex;gap:18px;padding-right:18px}
.sev2-exp{
  flex:0 0 340px;width:340px;border:1px solid var(--sev2-line);border-radius:var(--sev2-r-lg);
  padding:26px;background:#fff;box-shadow:var(--sev2-sh-1);transition:transform .2s,box-shadow .25s;
}
.sev2-exp:hover{transform:translateY(-4px);box-shadow:var(--sev2-sh-2)}
.sev2-av{
  width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
  font-family:var(--sev2-mono);font-weight:500;font-size:15px;color:#fff;
  background:linear-gradient(135deg,var(--sev2-brand),var(--sev2-brand-deep));
  margin-bottom:18px;letter-spacing:.02em;
}
.sev2-exp:nth-child(3n-1) .sev2-av{background:linear-gradient(135deg,var(--sev2-coral),var(--sev2-coral-deep))}
.sev2-exp:nth-child(3n) .sev2-av{background:linear-gradient(135deg,var(--sev2-dark-3),var(--sev2-ink))}
.sev2-exp h4{font-size:17px;font-weight:700;letter-spacing:-.01em}
.sev2-exp .sev2-role{
  font-family:var(--sev2-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--sev2-brand-ink);margin:5px 0 12px;
}
.sev2-exp-text{font-size:13.5px;color:var(--sev2-ink-2);line-height:1.5}
@keyframes sev2-mq{to{transform:translateX(-50%)}}
@media(max-width:600px){.sev2-exp{flex:0 0 290px;width:290px}}

/* ============================== CLOSING CTA ============================= */
.sev2-cta{
  background:
    radial-gradient(1100px 640px at 82% -14%,rgba(0,156,166,.42),transparent 60%),
    radial-gradient(820px 520px at 8% 118%,rgba(255,150,139,.24),transparent 62%),
    linear-gradient(180deg,#060809 0%,#0B1214 52%,#060809 100%),var(--sev2-dark);
  color:var(--sev2-don);text-align:center;position:relative;overflow:hidden;
}
.sev2-cta::before{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:52px 52px;
  -webkit-mask-image:radial-gradient(ellipse at 50% 40%,#000,transparent 72%);
  mask-image:radial-gradient(ellipse at 50% 40%,#000,transparent 72%);
}
.sev2-cta::after{
  content:"";position:absolute;left:50%;top:34%;transform:translate(-50%,-50%);
  width:min(920px,86vw);height:340px;pointer-events:none;filter:blur(12px);
  background:radial-gradient(closest-side,rgba(0,156,166,.20),transparent 70%);
}
.sev2-cta > .sev2-wrap{position:relative;z-index:1}
.sev2-cta .sev2-eyebrow{color:var(--sev2-brand-lite)}
.sev2-cta h2{font-size:clamp(34px,5.5vw,72px);font-weight:700;letter-spacing:-.018em;line-height:1;color:#fff;margin:16px 0 20px}
.sev2-cta h2 em{font-style:italic;font-weight:300;color:var(--sev2-brand-lite);text-shadow:0 0 44px rgba(0,156,166,.45)}
.sev2-cta-lede{font-size:clamp(16px,1.4vw,19px);color:var(--sev2-don-2);line-height:1.6;max-width:58ch;margin:0 auto 34px}
.sev2-cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.sev2-cta .sev2-btn--brand{color:#fff;box-shadow:0 18px 48px -14px rgba(0,156,166,.55)}
.sev2-cta .sev2-btn--ghost{color:#fff;border-color:var(--sev2-dline-2)}
.sev2-cta .sev2-btn--ghost:hover{background:#fff;color:var(--sev2-dark);border-color:#fff}
.sev2-cta-note{
  font-family:var(--sev2-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--sev2-don-3);margin-top:30px;
}

/* ============================ REDUCED MOTION ============================ */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .sev2-hero-vis::after,.sev2-vchip .sev2-dot,
  .sev2-cost-ticker-track,.sev2-exp-track{animation:none!important}
  .sev2-exp-carousel{overflow-x:auto;-webkit-mask-image:none;mask-image:none}
  .sev2-btn:hover,.sev2-xcard:hover,.sev2-comp-card:hover,.sev2-exp:hover,.sev2-latest:hover{transform:none!important}
  .sev2-sol-feature:hover .sev2-media img,.sev2-xcard:hover .sev2-media img{transform:none!important}
}

/* ============================ EDIT MODE (bricks) ======================== */
/* Dark sections keep the editable widgets readable, and the hover-only or
   animated layouts collapse to plain stacks the editor can actually click. */
.homev2-editmode .sev2-hero,
.homev2-editmode .sev2-arch,
.homev2-editmode .sev2-cta,
.homev2-editmode .sev2-flywheel{background:var(--sev2-dark-2)}
.homev2-editmode .sev2-hero-vis{aspect-ratio:auto;min-height:120px;padding:12px}
.homev2-editmode .sev2-hero-vis::after{display:none}
.homev2-editmode .sev2-sol-feature .sev2-media,
.homev2-editmode .sev2-ns-item .sev2-media,
.homev2-editmode .sev2-xcard .sev2-media{position:static;min-height:0;aspect-ratio:auto;margin:0;padding:8px;background:#fff;box-shadow:none}
.homev2-editmode .sev2-cards-3,
.homev2-editmode .sev2-ns-panel,
.homev2-editmode .sev2-comp-grid,
.homev2-editmode .sev2-trust-stats,
.homev2-editmode .sev2-attrs{display:block}
.homev2-editmode .sev2-section{padding:24px 0}
/* Chips carry the wysiwyg editable in editmode — no icon dot, block layout. */
.homev2-editmode .sev2-chips{display:block}
.homev2-editmode .sev2-chip{display:block;white-space:normal;padding:6px 12px}

.sev2-foot-meta p {
    font-family: var(--sev2-mono);
    font-size: 10.5px;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--sev2-ink-3);
    line-height: 1.8;
}