/* Extensiv 2026 theme — brand tokens from Theme settings.
   Modules read these variables; a module's own color fields override them per instance. */

:root {
  --brand-text: #17151c;
  --brand-muted: #514c58;
  --brand-accent: #cb2e78;
  --brand-accent-dark: #9d1957;
  --brand-accent-soft: #fdeaf3;
  --brand-bg: #fffdfb;
  --brand-surface: #f6f3f6;
  --brand-dark: #17151c;
  --brand-line: #ded8df;
  --brand-success: #126648;
  --brand-font: "Inter", Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --brand-heading-weight: 700;
  --brand-max: 1180px;
}

/* Bare canvas: no legacy theme CSS. Each module styles itself. */
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--brand-bg); color: var(--brand-text); font-family: var(--brand-font); -webkit-font-smoothing: antialiased; }
.body-container-wrapper, .body-container, .dnd-section, .dnd-section > .row-fluid, .dnd-column, .dnd-module { margin: 0 !important; padding: 0 !important; max-width: none !important; width: 100% !important; }
.row-fluid { display: block; }
.row-fluid [class*="span"] { float: none; width: 100%; margin: 0; min-height: 0; }
/* Anchor targets (module "Anchor ID" field): stop below the sticky nav. */
[data-mf-anchor] { scroll-margin-top: 88px; }
/* Sticky nav: the module sits inside a section wrapper, so stick the wrapper. */
.dnd-section:has(.mf-nav--sticky) { position: sticky !important; top: 0; z-index: 50; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* ===== Website header + footer (global partials from the main site) =====
   The main site's theme-overrides.css also restyles bare h1-h6, buttons and table cells site-wide,
   which broke these modules, so it isn't loaded. Its header/footer/menu rules are copied below instead
   (compiled values from Extensiv_april_2022/css/theme-overrides.css, 2026-10-13). */
.content-wrapper { max-width: 1250px; }
.header-main { background-color: rgba(0, 0, 0, 0.0); }
.menu__link, .hs_mega_menu_group .normal_menu > ul > li > a { color: rgba(255, 255, 255, 1.0); }
.menu__child-toggle-icon { border-top-color: rgba(255, 255, 255, 1.0); }
.header-main .menu__item--depth-1:not(:last-child):after { background-color: rgba(191, 191, 188, 1.0); }
.fix-header .header-main .menu__item--depth-1:not(:last-child):after { background-color: rgba(184, 143, 197, 1.0); }
.fix-header .header-main .hs_white_cta a.cta_button:not(:hover), .fix-header .header-main .hs_white_cta a:not(:hover), .without-banner .header-main .hs_white_cta a.cta_button:not(:hover), .without-banner .header-main .hs_white_cta a:not(:hover) { color: rgba(255, 255, 255, 1.0); background-color: rgba(65, 83, 100, 1.0); }
.hs-header-menu-group .menu__submenu .menu__link { color: rgba(65, 83, 100, 1.0); }
.menu .menu__item--depth-1 > .menu__link--active-link:after { background-color: rgba(255, 255, 255, 1.0); }
.fix-header .header-main, .without-banner .header-main { background-color: rgba(255, 255, 255, 1.0); }
.header-main .menu__item--depth-1:hover > .menu__link:after, .hs_mega_menu_group .normal_menu > ul > li:hover > a:after, .hs_mega_menu_group .normal_menu > ul > li.open-mega-menu > a:after { border-color: rgba(255, 110, 199, 1.0); }
.fix-header .menu .menu__item--depth-1 > .menu__link, .without-banner .menu .menu__item--depth-1 > .menu__link, .fix-header .hs_mega_menu_group .normal_menu > ul > li > a, .without-banner .hs_mega_menu_group .normal_menu > ul > li > a, .fix-header .hs-header-top-section .hs-menu-wrapper > ul > li > a, .without-banner .hs-header-top-section .hs-menu-wrapper > ul > li > a { color: rgba(65, 83, 100, 1.0); }
.fix-header .menu .menu__item--depth-1:hover > .menu__link, .without-banner .menu .menu__item--depth-1:hover > .menu__link, .fix-header .hs_mega_menu_group .normal_menu > ul > li:hover > a, .without-banner .hs_mega_menu_group .normal_menu > ul > li:hover > a, .fix-header .hs-header-top-section .hs-menu-wrapper > ul > li > a:hover { color: rgba(255, 110, 199, 1.0); }
.fix-header .header-main .menu__item--depth-1:hover > .menu__link:after, .without-banner .header-main .menu__item--depth-1:hover > .menu__link:after, .fix-header .hs_mega_menu_group .normal_menu > ul > li:hover > a:after, .without-banner .hs_mega_menu_group .normal_menu > ul > li:hover > a:after { border-color: rgba(255, 110, 199, 1.0); }
.menu .menu__submenu, .header__language-switcher .lang_list_class, .header-main .hs_mega_menu_group .hs_menuMenu_dropdown { background-color: rgba(255, 255, 255, 1.0); }
.menu__submenu--level-2 > .menu__item:first-child:before { rgba(184, 191, 197, 1.0) background-color: rgba(255, 255, 255, 1.0); }
.hs-header-menu-group .menu__submenu .menu__item--depth-2.menu__item:hover { background-color: rgba(249, 239, 242, 1.0); }
.hs-header-menu-group .menu__submenu .menu__item--depth-2.menu__item:hover > .menu__link { color: rgba(214, 0, 109, 1.0); }
.hs-header-menu-group .menu__submenu .menu__item--depth-2.menu__item:not(:last-child) .menu__link { border-bottom-color: rgba(184, 191, 197, 1.0); }
.fix-header .hs-header-top-section { display: none; }
.fix-header .hs-logo img { width: 100px!important; height: 27px !important; }
.menu__submenu .menu__link, .menu__submenu .menu__link:hover, .menu__submenu .menu__link:focus { color: rgba(65, 83, 100, 1.0); }
.menu__submenu .menu__link:hover, .menu__submenu .menu__link:focus, .header__language-switcher .lang_list_class li:hover, .menu__submenu--level-2 > .menu__item:first-child:hover:before, .menu__submenu--level-2 > .menu__item:first-child.focus:before { background-color: rgba(0, 0, 0, 0.0); }
.header__language-switcher .lang_list_class.first-active::after { border-bottom-color: rgba(0, 0, 0, 0.0); }
.header__language-switcher-label-current, .header__language-switcher .lang_list_class li a { font-family: Inter; }
.header__language-switcher-label-current:after { border-top-color: rgba(255, 255, 255, 1.0); }
.hs-logo img { width: 159px!important; height: 44px !important; }
.hs-lp-header .header-main .hs-logo img { width: 120px !important; height: auto !important; }
.ft-logo img { width: 192px!important; height: 53px !important; }
.menu .menu__item--depth-1 .menu__link:hover, .menu .menu__item--depth-1 .menu__link:focus { color: rgba(255, 110, 199, 1.0); }
.header__navigation-toggle svg, .menu-arrow svg { fill: rgba(255, 255, 255, 1.0); }
.footer { background-color: rgba(0, 0, 0, 1.0); }
.footer .ft-top, .footer h6 { color: rgba(255, 255, 255, 1.0); }
.footer .menu-sec .menu_items ul > li > a, .footer .cont-sec a { color: rgba(255, 255, 255, 1.0); }
.menu-sec .menu_items ul > li, .md-ft-menu h6 { border-bottom-color: rgba(255, 255, 255, 0.5); }
.footer .ft-bottom { background-color: rgba(0, 0, 0, 1.0); color: rgba(229, 242, 245, 1.0); }
.footer .ft-bottom a { color: rgba(229, 242, 245, 1.0); }
.footer .ft-bottom a:hover { color: rgba(229, 242, 245, 1.0); }
.footer .form-section .hs-button.primary.large { background: rgba(0, 0, 0, 1.0); color: rgba(255, 255, 255, 1.0); border-color: rgba(255, 255, 255, 1.0); }
.footer .form-section .hs-button.primary.large:hover { background: rgba(255, 255, 255, 1.0); color: rgba(0, 0, 0, 1.0); }
/* The site hides this duplicate mobile-only CTA (rule lives in its Request Demo popup module, not loaded here). */
.megaMenu_cta.mob-show { display: none; }
/* The site gives the footer its look through a dark page background; this theme's page is light. */
footer.footer { background: #130b11; color: #f3f5f7; }

/* The main site's main.css (needed for the header/footer) also styles a few bare elements.
   Undo the ones that change these modules — scoped to the page body, lowest specificity. */
.body-container-wrapper { letter-spacing: normal; }
:where(.body-container-wrapper) blockquote { border-left: 0; padding-left: 0; }