:root { --eurion-blue: #009aff; --eurion-header-height: 80px; --eurion-panel-base:#080808; --eurion-panel-raised:#101010; --eurion-panel-muted:#a0a0a0; --eurion-panel-label:#858585; }
/* Navigation typography stays neutral, including shared button text. */
.eurion-header, .catalog-menu { --color-background-7:#f8f8f8; --color-background-14:#111; font-family: 'Manrope', sans-serif; }
.eurion-header { position: fixed; inset: 0 0 auto; z-index: 100; height: var(--eurion-header-height); padding: 0 clamp(20px, 4vw, 76px); background: rgb(6 6 6 / .88); border: 0; }
.eurion-header__inner, .catalog-topbar { display: flex; align-items: center; justify-content: space-between; height: 100%; gap: 24px; max-width: 1920px; margin: auto; }
.eurion-logo { display: block; flex: 0 0 auto; width: 220px; }
.eurion-logo img { width: 100%; height: auto; object-fit: contain; }
.eurion-header__actions { display: flex; align-items: center; justify-content: flex-end; gap: 24px; }
.eurion-menu-trigger, .catalog-close { display: inline-flex; align-items: center; justify-content: center; gap: 16px; min-height: 44px; color: #fff; font-size: 14px; font-weight: 600; cursor: pointer; padding: 8px 0; }
.eurion-menu-trigger { flex:0 0 auto; min-height:48px; padding:10px 16px; border:0; border-radius:999px; background:transparent; font-size:18px; }
.eurion-menu-trigger__text { font-weight: 750; white-space:nowrap; }
.eurion-menu-glyph { display:grid; flex:0 0 28px; gap:7px; width:28px; }
.eurion-menu-glyph i { display:block; width:100%; height:3px; border-radius:999px; background:currentColor; }
.eurion-menu-glyph i:last-child { width:19px; margin-left:auto; transition:width .2s; }
.eurion-menu-trigger:hover .eurion-menu-glyph i:last-child { width:28px; }
.eurion-contact { flex: 0 0 auto; }
.eurion-header :focus-visible, .catalog-menu :focus-visible { outline: 2px solid #6dcaff; outline-offset: 5px; }
.eurion-account { display:flex; flex:0 0 auto; }
.eurion-account-fallback { position:relative; color:#ededed; }
.eurion-account-fallback summary { display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#ffffff14; cursor:pointer; list-style:none; }
.eurion-account-fallback summary::-webkit-details-marker { display:none; }
.eurion-account-fallback>div { position:absolute; top:54px; right:0; width:280px; max-width:calc(100vw - 40px); display:grid; gap:14px; padding:24px; border:1px solid #ffffff16; border-radius:14px; background:#101010; }
.eurion-account-fallback form { margin:0; }.eurion-account-fallback button { width:100%; padding:12px; border:0; border-radius:24px; background:#e9e9e9; color:#3d3d3d; cursor:pointer; }
.eurion-account-fallback span { overflow-wrap:anywhere; }
.account-status { max-width:760px; margin:140px auto 80px; padding:32px; color:#e8edf5; }
.account-status h1 { font-size:32px; margin:20px 0; }.account-status a { display:inline-block; margin:12px 20px 12px 0; text-decoration:underline; }
@media (max-width:480px) {
  .eurion-header__inner { gap:12px; }
  .eurion-header__inner>.eurion-logo { flex:0 1 160px; min-width:110px; }
  .eurion-header .eurion-header__actions { gap:12px; }
}

.catalog-menu { position: fixed; inset: 0 0 auto; margin: 0; width: 100%; max-width: none; height: auto; max-height: calc(100dvh - 40px); padding: 0; border: 0; border-bottom: 1px solid #ffffff16; background:var(--eurion-panel-base); color:white; overflow: auto; overscroll-behavior: contain; box-shadow:0 24px 70px #0009; color-scheme:dark; scrollbar-width:thin; scrollbar-color:#3b3b3b #101010; }
.catalog-menu[open] { display: flex; flex-direction: column; animation: catalog-slide-in .6s cubic-bezier(.16, 1, .3, 1) both; }
.catalog-menu::backdrop { background: #0009; }
.catalog-menu[open]::backdrop { animation: catalog-backdrop-in .35s ease-out both; }
.catalog-menu.is-closing::backdrop { animation: catalog-backdrop-out .32s ease-in both; }
.catalog-menu[open] :is(.catalog-sidebar__label, .catalog-side-link, .catalog-content .catalog-eyebrow, .catalog-panel-title, .catalog-product, .catalog-note) { animation: catalog-content-in .48s cubic-bezier(.16, 1, .3, 1) both; animation-delay: calc(.2s + var(--catalog-order, 0) * .045s); }
.catalog-menu[open] .catalog-promo { animation: catalog-content-in .65s cubic-bezier(.16, 1, .3, 1) .32s both; }
.catalog-topbar { position: sticky; top: 0; z-index: 2; background:var(--eurion-panel-base); flex: 0 0 var(--eurion-header-height); width: 100%; max-width: none; margin: 0; padding: 0 clamp(20px, 4vw, 76px); border-bottom: 1px solid #ffffff16; }
.catalog-topbar__actions { display: flex; flex: 0 0 auto; align-items: center; gap: 12px; }
.catalog-close { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px; width: 44px; height: 44px; padding: 0; border-radius: 50%; background: #ffffff12; transition: background .2s; }
.catalog-close:hover { background: #ffffff24; }
.catalog-social { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: #cecece; font-size: 13px; font-weight: 600; white-space: nowrap; transition: color .2s; }
.catalog-social:hover { color: #fff; }
.catalog-social img { width: 20px; height: 20px; }
.catalog-close svg { width: 22px; height: 22px; }
.catalog-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr) 270px; flex: 0 0 auto; width: 100%; margin: 0; }
.catalog-sidebar { padding: 34px 22px 36px 32px; border-right: 1px solid #ffffff14; background:var(--eurion-panel-base); }
.catalog-sidebar__label, .catalog-eyebrow { color:var(--eurion-panel-label); font: 10px/1.6 'IBM Plex Mono', monospace; text-transform: uppercase; letter-spacing: .12em; }
.catalog-sidebar__label { padding: 10px 12px; margin-top: 14px; }
.catalog-sidebar > .catalog-side-link { margin-bottom: 6px; }
.catalog-sidebar [role='tablist'] { display: grid; gap: 6px; }
.catalog-side-link { display: flex; align-items: center; gap: 13px; width: 100%; min-height: 40px; padding: 8px 12px; border-radius: 16px; font-size: 13px; font-weight: 600; text-align: left; cursor: pointer; color: #cecece; }
.catalog-side-link :is(svg, .product-logo-icon) { flex: 0 0 20px; }
.product-logo-icon { display:block; flex-shrink:0; width:20px; height:20px; object-fit:contain; }
.catalog-side-link:hover, .catalog-side-link[aria-current='page'], .catalog-side-link[aria-selected='true'] { color: #fff; background: #171717; }
.catalog-side-link[aria-selected='true'] svg { color:var(--eurion-blue); }
.catalog-side-link[aria-selected='true'] .catalog-side-link__arrow { visibility:hidden; }
/* Override the legacy icon utilities only for the selected catalog tab. */
@layer utilities {
  .catalog-side-link[aria-selected='true'] svg :is(path,circle) { stroke:var(--eurion-blue)!important; }
}
.catalog-side-link__arrow { margin-left: auto; }
.catalog-content { padding: 42px clamp(24px, 3vw, 60px); background:var(--eurion-panel-base); }
.catalog-content [hidden] { display: none !important; }
.catalog-panel-title { font-size: 28px; line-height: 1.3; font-weight: 500; letter-spacing: -.04em; margin: 10px 0 34px; }
.catalog-products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px 30px; }
.catalog-product { display: block; border-top: 1px solid #ffffff19; padding-top: 19px; color: #fff; }
.catalog-product__icon { display: flex; color: #51b6fa; margin-bottom: 16px; }
.catalog-product__title { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 15px; font-weight: 600; margin-bottom: 8px; }
.catalog-product__title span:last-child { color: #808080; transition: transform .2s, color .2s; }
.catalog-product:hover .catalog-product__title { color: #fff; }
.catalog-product:hover .catalog-product__title span:last-child { transform: translate(3px, -3px); color: #fff; }
.catalog-product p { color:var(--eurion-panel-muted); font-size: 12px; line-height: 1.8; max-width: 250px; }
.catalog-note { display: flex; gap: 12px; align-items: flex-start; color: #a0a0a0; border-top: 1px solid #ffffff12; margin-top: 48px; padding-top: 22px; font-size: 12px; line-height: 1.8; }
.catalog-note::before { content: ''; width: 6px; height: 6px; flex: 0 0 6px; margin-top: 7px; border-radius: 50%; background: #009aff; box-shadow: 0 0 12px #009aff; }
.catalog-promo { position: relative; align-self: stretch; margin: 26px 24px 26px 0; padding: 28px 24px; border-radius: 8px; overflow: hidden; background:#07121e; }
.catalog-promo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 72% center; opacity: .6; }
.catalog-promo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(#080e16 15%, transparent 85%); }
.catalog-promo__copy { position: relative; z-index: 1; }
.catalog-promo h3 { font-size: 27px; line-height: 1.25; letter-spacing: -.04em; font-weight: 500; margin: 16px 0; }
.catalog-promo p { font-size: 13px; line-height: 1.8; color: #c4c4c4; margin-bottom: 26px; }
.catalog-promo a { display: inline-flex; gap: 20px; border-radius: 50px; padding: 11px 17px; background: white; color: #111; font-size: 12px; font-weight: 600; }
@keyframes catalog-slide-in { from { transform: translateY(-100%); } to { transform: translateY(0); } }
@keyframes catalog-content-in { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: translateY(0); } }
@keyframes catalog-backdrop-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes catalog-backdrop-out { from { opacity: 1; } to { opacity: 0; } }
@media (max-width: 1200px) { .catalog-layout { grid-template-columns: 210px minmax(0,1fr); } .catalog-promo { display: none; } .catalog-products { gap: 30px 22px; } }
@media (max-width: 700px) {
  :root { --eurion-header-height: 72px; }
  .eurion-logo { width: 160px; }
  .catalog-topbar { gap: 16px; }
  .catalog-topbar .eurion-logo { flex: 0 1 160px; min-width: 0; }
  .catalog-social { flex: 0 0 44px; width: 44px; justify-content: center; gap: 0; }
  .catalog-social > span { display: none; }
  .catalog-social img { width: 28px; height: 28px; border-radius: 50%; }
  .eurion-header__actions { gap: 17px; }
  .eurion-contact { display: none; }
  .eurion-menu-trigger { font-size:16px; gap:12px; padding-inline:14px; }
  .catalog-layout { display: block; }
  .catalog-sidebar { padding: 20px; border-right: 0; border-bottom: 1px solid #ffffff16; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px 10px; }
  .catalog-sidebar__label { grid-column: 1 / -1; margin-top: 8px; }
  .catalog-sidebar [role='tablist'] { display: contents; }
  .catalog-content { padding: 28px 24px 48px; }
  .catalog-panel-title { font-size: 25px; margin-bottom: 28px; }
  .catalog-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .catalog-product__title { font-size: 14px; }
  .catalog-product p { font-size: 12px; }
  .catalog-note { margin-top: 30px; }
}
@media (max-width: 480px) {
  .eurion-menu-trigger { width:48px; padding-inline:9px; }
  .eurion-menu-trigger__text { display:none; }
}
@media (max-width: 370px) { .catalog-products { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .catalog-menu[open], .catalog-menu[open]::backdrop, .catalog-menu[open] * { animation: none !important; } .catalog-menu *, .eurion-header * { transition: none !important; } }

/* Product catalog and contextual navigation share ProductCatalog definitions. */
.product-navigation { display:flex; align-items:center; flex:1; min-width:0; margin-left:auto; color:#fff; }
.product-navigation__links { display:flex; flex-shrink:0; align-items:center; gap:22px; margin-inline:auto; }
.product-navigation__links :is(a,button) { display:inline-flex; align-items:center; gap:8px; font:500 12px/1.5 'IBM Plex Mono',monospace; letter-spacing:.04em; white-space:nowrap; color:#bdbdbd; padding:12px 0; cursor:pointer; }
.product-navigation__links .product-navigation__brand { flex:0 0 auto; margin-right:6px; padding:0; }
/* Equal logo heights keep the shared EURION wordmark at the same size. */
.product-navigation__brand img { display:block; width:auto; height:34px; object-fit:contain; }
.product-navigation__links :is(a,button):hover, .product-navigation__links [aria-current], .product-navigation__links [aria-expanded='true'] { color:#fff; }
.product-navigation__links .is-current { color:#fff; }
.product-navigation__links button svg { flex-shrink:0; transition:transform .2s; }
.product-navigation__links button[aria-expanded='true'] svg { transform:rotate(180deg); }
.product-features-panel { box-sizing:border-box; position:fixed; inset:auto; top:calc(var(--eurion-header-height) + 8px); left:20px; width:var(--product-menu-column, 300px); max-width:calc(100vw - 40px); max-height:var(--product-menu-height, calc(100dvh - var(--eurion-header-height) - 32px)); margin:0; padding:0; overflow:hidden; border:1px solid #ffffff1c; border-radius:10px; background:#101010; box-shadow:0 18px 48px #0008; color:#eee; color-scheme:dark; }
.product-features-panel:popover-open { display:flex; align-items:stretch; animation:product-features-in .18s ease-out; }
@keyframes product-features-in { from { opacity:0; transform:translateY(-6px); } to { opacity:1; transform:translateY(0); } }
.product-features-panel::backdrop { background:transparent; }
.product-features-primary, .product-features-submenu { box-sizing:border-box; min-width:0; max-height:calc(var(--product-menu-height, calc(100dvh - var(--eurion-header-height) - 32px)) - 2px); padding:10px; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#393939 #101010; }
.product-features-primary { flex:0 0 calc(var(--product-menu-column, 300px) - 2px); width:calc(var(--product-menu-column, 300px) - 2px); }
.product-features-submenu { flex:0 0 340px; width:340px; border-left:1px solid #ffffff14; animation:product-submenu-in .18s ease-out; }
.product-features-submenu[hidden] { display:none !important; }
@keyframes product-submenu-in { from { opacity:0; transform:translateX(-10px); } to { opacity:1; transform:translateX(0); } }
.product-features-panel ul { margin:0; padding:0; list-style:none; }
.product-features-panel :is(a,button) { display:flex; align-items:center; justify-content:space-between; gap:20px; width:100%; padding:12px 14px; border:0; border-radius:6px; background:transparent; color:#c7c7c7; font:400 13px/1.5 'Manrope',sans-serif; text-align:left; text-decoration:none; cursor:pointer; }
.product-features-panel a > span { flex-shrink:0; color:#777; font-size:11px; }
.product-features-panel button > svg { flex-shrink:0; }
.product-features-panel :is(a,button):hover, .product-features-panel [aria-current], .product-features-panel [aria-expanded='true'], .product-features-panel .is-current { color:#fff; background:#ffffff08; }
.product-features-panel :is(a,button):focus-visible { outline:1px solid #aaa; outline-offset:-2px; }
.product-features-group__label { margin:0; padding:10px 14px 12px; color:var(--eurion-panel-label); font:500 10px/1.5 'IBM Plex Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }
.product-features-panel .product-features-back { display:none; }
@media (max-width:700px) {
  .product-features-submenu { flex-basis:100%; width:100%; border-left:0; }
  .product-features-panel.is-submenu-open .product-features-primary { display:none; }
  .product-features-panel .product-features-back { display:flex; justify-content:flex-start; gap:10px; margin-bottom:6px; border-bottom:1px solid #ffffff14; border-radius:0; color:#fff; }
}
@media (prefers-reduced-motion:reduce) { .product-features-panel:popover-open, .product-features-submenu { animation:none; } }
.has-product-navigation :is(main [id], main) { scroll-margin-top:calc(var(--eurion-header-height) + 30px); }
.catalog-layout { grid-template-columns:220px minmax(0,1fr) 240px; }
.catalog-sidebar { padding:20px 18px 28px; }
.catalog-sidebar__label { margin-top:4px; }
.catalog-company-links { display:grid; grid-template-columns:1fr; gap:3px; padding:0 12px; }
.catalog-company-links a { color:#b0b0b0; font-size:11px; padding:7px 0; }
.catalog-company-links a:hover { color:white; }
.catalog-product-heading { position:relative; display:flex; align-items:center; justify-content:space-between; gap:28px; cursor:pointer; }
.catalog-product-heading--text { cursor:default; }
.catalog-product-heading__copy { min-width:0; }
.catalog-product-heading__logo { display:block; flex:0 0 auto; width:auto; height:clamp(44px, 3.8vw, 60px); object-fit:contain; }
.catalog-product-heading .catalog-panel-title { font-size:48px; margin:7px 0 12px; }
.catalog-panel-title>span { color:#bdbdbd; }
.catalog-product-heading .catalog-visit { position:static; overflow:visible; flex-shrink:0; margin-top:24px; }
/* Stretch one real link across the heading, without nesting interactive elements. */
.catalog-visit::after { content:''; position:absolute; inset:-12px; z-index:1; border-radius:10px; }
.catalog-product-heading:has(.catalog-visit:focus-visible) { outline:1px solid #aaa; outline-offset:12px; border-radius:4px; }
.catalog-menu .catalog-visit svg path { stroke:none!important; }
.catalog-product-description { color:var(--eurion-panel-muted); max-width:520px; font-size:13px; line-height:1.8; }
.catalog-link-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px 28px; margin-top:38px; }
.catalog-link-grid a { display:flex; flex-direction:column; gap:14px; min-width:0; padding:23px 0; border-top:1px solid #ffffff1a; color:#f5f5f5; }
.catalog-link__title { display:flex; justify-content:space-between; align-items:baseline; gap:10px; min-height:44px; font-size:15px; font-weight:650; line-height:1.5; }
.catalog-link__logo { display:block; align-self:center; width:112px; max-width:100%; height:auto; }
.catalog-link__title>span:last-child { flex-shrink:0; color:#808080; transition:color .2s, transform .2s; }
.catalog-link__description { color:var(--eurion-panel-muted); font-size:12px; line-height:1.8; }
.catalog-link-grid a:hover .catalog-link__title, .catalog-link-grid a[aria-current] .catalog-link__title { color:#fff; }
.catalog-link-grid a:hover .catalog-link__title>span:last-child { color:#fff; transform:translate(2px,-2px); }
.catalog-mobile { margin-top:38px; padding-top:24px; border-top:1px solid #ffffff1a; }
.catalog-mobile>.catalog-eyebrow { margin-bottom:16px; }
.catalog-mobile-app { display:flex; align-items:center; justify-content:flex-start; flex-wrap:wrap; width:fit-content; max-width:100%; gap:24px 32px; padding:18px 20px; border:0; border-radius:9px; background:#ffffff04; }
.catalog-mobile-app__identity { display:flex; align-items:center; gap:14px; min-width:0; }
.catalog-mobile-app__identity>div { min-width:0; }
.catalog-mobile-app__icon { display:flex; align-items:center; justify-content:center; flex:0 0 38px; width:38px; height:38px; color:#55baff; background:#009aff12; border-radius:10px; }
.catalog-mobile-app__icon :is(svg, .product-logo-icon) { width:23px; height:23px; }
.catalog-mobile-app__icon--reviews { color:#ffd400; background:#ffd40012; }
.catalog-mobile-app__identity strong { font-size:16px; font-weight:650; }
.catalog-mobile-app__identity p { margin:4px 0 0; color:var(--eurion-panel-muted); font-size:12px; line-height:1.6; }
.catalog-menu svg * { stroke:currentColor!important; }
@media (min-width:1401px) {
  .has-product-navigation .eurion-header__inner { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); }
  .has-product-navigation .eurion-header__actions { justify-self:end; }
}
@media (max-width:1400px) { .product-navigation__links { gap:17px; } .catalog-layout { grid-template-columns:200px minmax(0,1fr); } .catalog-promo { display:none; } }
@media (max-width:1400px) {
  .has-product-navigation .eurion-header { height:calc(var(--eurion-header-height) + 50px); }
  .has-product-navigation .eurion-header__inner { height:var(--eurion-header-height); }
  .product-navigation { position:absolute; inset:var(--eurion-header-height) clamp(20px, 4vw, 76px) auto; height:50px; overflow:auto; scrollbar-width:none; }
  .product-navigation__links { gap:24px; }
  .has-product-navigation main { padding-top:50px; }
  .has-product-navigation .support-site { padding-top:calc(var(--eurion-header-height) + 50px); }
  .has-product-navigation :is(main [id], main) { scroll-margin-top:calc(var(--eurion-header-height) + 80px); }
}
@media (min-width:701px) and (max-width:1000px) { .catalog-link-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:700px) {
  .catalog-layout { display:block; }
  .catalog-sidebar { display:block; padding:18px 20px; }
  .catalog-sidebar [role=tablist] { display:grid; grid-template-columns:1fr 1fr; gap:6px 8px; }
  .catalog-company-links { display:flex; flex-wrap:wrap; gap:3px 20px; }
  .catalog-company-links a { white-space:nowrap; }
  .catalog-link-grid { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px; }
  .catalog-mobile { margin-top:24px; }
  .catalog-mobile-app { width:100%; padding:16px; gap:20px; }
  .catalog-product-heading .catalog-panel-title { font-size:38px; }
  .catalog-product-heading { align-items:flex-start; flex-direction:column; gap:22px; }
  .catalog-product-heading__logo { display:none; }
  .catalog-content { padding:28px 24px; }
  .product-navigation__links { gap:20px; }
}
@media (max-width:480px) {
  .product-navigation__links { gap:12px; }
  .product-navigation__links .product-navigation__brand { margin-right:0; }
  .product-navigation__brand img { height:30px; }
}
@media (max-width:380px) {
  .catalog-link-grid { grid-template-columns:1fr; }
  .product-navigation__links { gap:6px; }
  .product-navigation__links :is(a,button) { font-size:11px; }
  .product-navigation__brand img { height:26px; }
}

/* Tools reuse the same open link columns as the other catalog panels. */
.catalog-layout:has(#catalog-panel-business-tools:not([hidden])) { grid-template-columns:220px minmax(0,1fr); }
.catalog-layout:has(#catalog-panel-business-tools:not([hidden])) .catalog-promo { display:none; }
@media (max-width:1400px) { .catalog-layout:has(#catalog-panel-business-tools:not([hidden])) { grid-template-columns:200px minmax(0,1fr); } }
@media (max-width:700px) { .catalog-layout:has(#catalog-panel-business-tools:not([hidden])) { display:block; } }
