/* =========================================================
   KNDev customer tokens: start
   Maintained automatically by Theme Configurator.
   Existing values are preserved; missing tokens are added on update.
   Source of truth: kndev-global.css token declarations.
   ========================================================= */
:root {
  /* =========================================================
     01. Global brand, typography and layout
     ========================================================= */
  --knd-color-primary: #2c495b;
  --knd-color-secondary: #b98232;
  --knd-color-accent: #c38a36;
  --knd-color-text: #102136;
  --knd-color-background: #fbf8f2;
  --knd-color-surface: #f5f0e8;
  --knd-color-surface-hover: #eee5d8;
  --knd-color-border: #ded8ce;
  --knd-color-primary-rgb: 44, 73, 91;
  --knd-color-success: #188251;
  --knd-color-info: #0b69f6;
  --knd-color-warning: #b77900;
  --knd-color-danger: #d92d42;
  --knd-color-muted: #65707d;
  --knd-color-dark: #212529;
  --knd-font-body: "Inter", Arial, sans-serif;
  --knd-font-heading: Georgia, "Times New Roman", serif;
  --knd-radius-sm: 4px;
  --knd-radius-md: 8px;
  --knd-radius-lg: 16px;
  --knd-radius-modal: var(--knd-radius-block, var(--knd-radius-lg, 24px));
  --knd-radius-dropdown: var(--knd-radius-md, 16px);
  --knd-radius-card: var(--knd-radius-block, var(--knd-radius-lg, 24px));
  --knd-radius-block: var(--knd-radius-lg, 24px);
  --knd-radius-input: var(--knd-radius-button, var(--knd-radius-sm, 10px));
  --knd-radius-button: 999px;
  --knd-container-width: 1320px;
  --knd-shadow-card: 0 8px 30px rgb(0 0 0 / 8%);
  --knd-shadow-dropdown: 0 18px 45px rgb(0 0 0 / 12%);
  --knd-container-gutter: 20px;
  --knd-shadow-panel: 0 20px 60px rgb(0 0 0 / 18%);
  --knd-font-size-base: 16px;
  --knd-line-height-base: 1.5;
  --knd-heading-font-weight: 500;
  --knd-body-font-weight: 400;
  --knd-section-padding-y: clamp(2.5rem, 5vw, 5rem);
  --knd-section-padding-x: 0px;
  --knd-radius-pill: var(--knd-radius-button, var(--knd-radius-sm, 10px));
  --knd-font-family: var(--knd-font-body, inherit);
  --knd-line-height-tight: 1.1;
  --knd-font-weight-bold: 800;
  --knd-brand-primary: var(--knd-color-primary, #007f79);
  --knd-shadow-sm: 0 6px 18px rgb(15 23 42 / 8%);
  --knd-shadow-lg: 0 24px 70px rgb(15 23 42 / 18%);

  /* =========================================================
     02. Cards, surfaces and shared form controls
     ========================================================= */
  --knd-card-bg: #ffffff;
  --knd-card-color: var(--knd-color-text);
  --knd-card-border-width: 1px;
  --knd-card-border-color: var(--knd-color-border);
  --knd-card-border-radius: var(--knd-radius-card, var(--knd-radius-block, 24px));
  --knd-card-shadow: var(--knd-shadow-card);
  --knd-card-padding: clamp(18px, 2.4vw, 28px);
  --knd-card-body-padding: clamp(22px, 2.6vw, 34px);
  --knd-input-placeholder-color: #b7c0cf;
  --knd-input-placeholder-opacity: .72;
  --knd-input-default-value-color: var(--knd-input-placeholder-color);
  --knd-input-bg: rgba(255, 255, 255, .96);
  --knd-input-color: var(--knd-color-primary);
  --knd-input-border-color: rgba(255, 255, 255, .5);
  --knd-input-focus-border-color: var(--knd-color-accent);
  --knd-input-border-radius: 5px;
  --knd-input-min-height: 50px;
  --knd-input-padding-y: 12px;
  --knd-input-padding-x: 14px;
  --knd-input-font-size: 14px;
  --knd-input-focus-shadow: 0 0 0 1px var(--knd-input-focus-border-color);
  --knd-shop-page-bg: var(--knd-page-bg, #ffffff);
  --knd-shop-surface-bg: #ffffff;
  --knd-shop-surface-color: var(--knd-color-text, #111827);
  --knd-shop-surface-border-width: 1px;
  --knd-shop-surface-border-color: color-mix(in srgb, var(--knd-color-border, #d7e7e4) 86%, transparent);
  --knd-shop-surface-radius: var(--knd-radius-card, var(--knd-radius-block, 24px));
  --knd-shop-surface-shadow: 0 14px 40px rgb(15 23 42 / 6%);
  --knd-shop-surface-padding: clamp(18px, 2.2vw, 28px);
  --knd-shop-muted-color: #64748b;
  --knd-shop-button-radius: var(--knd-button-border-radius, var(--knd-radius-button, 10px));
  --knd-shop-button-min-height: var(--knd-button-min-height, 44px);
  --knd-shop-button-padding-x: var(--knd-button-padding-x, 1.2rem);
  --knd-shop-button-font-weight: var(--knd-button-font-weight, 600);
  --knd-shop-input-radius: var(--knd-input-border-radius, var(--knd-radius-input, 10px));
  --knd-shop-input-min-height: var(--knd-input-min-height, 48px);

  /* =========================================================
     03. Buttons, icon buttons and back to top
     ========================================================= */
  --knd-button-bg: var(--knd-color-accent);
  --knd-button-color: #ffffff;
  --knd-button-border-color: var(--knd-color-accent);
  --knd-button-border-width: 1px;
  --knd-button-min-height: 44px;
  --knd-button-font-size: .83rem;
  --knd-button-line-height: 1.1;
  --knd-button-shadow: none;
  --knd-button-hover-shadow: none;
  --knd-button-transform: none;
  --knd-button-hover-transform: none;
  --knd-button-hover-bg: #966322;
  --knd-button-hover-color: #ffffff;
  --knd-button-hover-border-color: #966322;
  --knd-button-border-radius: var(--knd-radius-button, var(--knd-radius-sm, 10px));
  --knd-button-secondary-bg: #ffffff;
  --knd-button-secondary-color: var(--knd-color-text);
  --knd-button-secondary-border-color: var(--knd-color-border);
  --knd-button-secondary-hover-bg: var(--knd-color-surface);
  --knd-button-secondary-hover-color: var(--knd-color-text);
  --knd-button-secondary-hover-border-color: var(--knd-color-primary);
  --knd-button-font-weight: 800;
  --knd-icon-button-size: 44px;
  --knd-icon-button-bg: #ffffff;
  --knd-icon-button-color: currentColor;
  --knd-icon-button-border-width: 1px;
  --knd-icon-button-border-color: var(--knd-color-border);
  --knd-icon-button-radius: var(--knd-radius-button, var(--knd-radius-sm, 10px));
  --knd-icon-button-hover-bg: #f7f8f8;
  --knd-icon-button-hover-color: currentColor;
  --knd-backtotop-size: var(--knd-icon-button-size);
  --knd-backtotop-bg: #111827;
  --knd-backtotop-color: #ffffff;
  --knd-backtotop-border-width: 0px;
  --knd-backtotop-border-color: transparent;
  --knd-backtotop-radius: var(--knd-icon-button-radius);
  --knd-backtotop-hover-bg: var(--knd-color-primary);
  --knd-backtotop-hover-color: #ffffff;
  --knd-backtotop-shadow: 0 12px 32px rgb(15 23 42 / 14%);
  --knd-backtotop-right: 24px;
  --knd-backtotop-bottom: 24px;
  --knd-backtotop-z-index: 20040;
  --knd-button-text-decoration: none;
  --knd-button-hover-text-decoration: none;
  --knd-icon-button-shadow: none;
  --knd-icon-button-hover-border-color: var(--knd-icon-button-border-color);
  --knd-button-padding-y: .92rem;
  --knd-button-padding-x: 1.5rem;

  /* =========================================================
     04. Header global, zones and selectors
     ========================================================= */
  --knd-header-bg: transparent;
  --knd-header-color: var(--knd-color-primary);
  --knd-header-link-color: var(--knd-color-primary);
  --knd-header-link-hover-color: var(--knd-color-accent);
  --knd-header-icon-color: currentColor;
  --knd-header-font-weight: inherit;
  --knd-header-border-width: 0px;
  --knd-header-border-color: transparent;
  --knd-header-border-style: solid;
  --knd-header-top-bg: transparent;
  --knd-header-top-color: var(--knd-header-color);
  --knd-header-main-bg: transparent;
  --knd-header-main-color: var(--knd-header-color, inherit);
  --knd-header-nav-bg: transparent;
  --knd-header-nav-color: var(--knd-header-color);
  --knd-header-mobile-bg: transparent;
  --knd-header-mobile-color: var(--knd-header-color);
  --knd-header-gap: 1rem;
  --knd-header-slot-gap: .75rem;
  --knd-header-mobile-action-gap: .35rem;
  --knd-header-top-min-height: 38px;
  --knd-header-main-min-height-desktop: 82px;
  --knd-header-main-min-height-mobile: 72px;
  --knd-header-top-border-width: var(--knd-header-border-width);
  --knd-header-top-border-color: var(--knd-header-border-color);
  --knd-header-nav-border-width: var(--knd-header-border-width);
  --knd-header-nav-border-color: var(--knd-header-border-color);
  --knd-header-nav2-zone-color: var(--knd-header-nav-full-color);
  --knd-header-nav2-zone-link-color: var(--knd-header-nav-full-link-color);
  --knd-header-nav2-zone-link-hover-color: var(--knd-header-nav-full-link-hover-color);
  --knd-header-shadow: none;
  --knd-header-banner-height-desktop: auto;
  --knd-header-topbar-height-desktop: 38px;
  --knd-header-main-height-desktop: 82px;
  --knd-header-navfull-height-desktop: 48px;
  --knd-header-nav-height-desktop: 54px;
  --knd-header-banner-bg-mobile: var(--knd-header-banner-bg);
  --knd-header-banner-color-mobile: var(--knd-header-banner-color);
  --knd-header-banner-height-mobile: auto;
  --knd-header-banner-link-color-mobile: var(--knd-header-banner-link-color);
  --knd-header-topbar-bg-mobile: var(--knd-header-topbar-bg);
  --knd-header-topbar-color-mobile: var(--knd-header-topbar-color);
  --knd-header-topbar-height-mobile: auto;
  --knd-header-topbar-link-color-mobile: var(--knd-header-topbar-link-color);
  --knd-header-main-bg-mobile: transparent !important;
  --knd-header-main-color-mobile: var(--knd-header-main-color);
  --knd-header-main-link-color-mobile: var(--knd-header-main-link-color);
  --knd-header-nav-bg-mobile: transparent !important;
  --knd-header-nav-color-mobile: var(--knd-header-nav-color);
  --knd-header-nav-link-color-mobile: var(--knd-header-nav-link-color);
  --knd-header-navfull-bg-mobile: transparent !important;
  --knd-header-navfull-color-mobile: var(--knd-header-navfull-color);
  --knd-header-navfull-link-color-mobile: var(--knd-header-navfull-link-color);
  --knd-header-main-height-mobile: 72px;
  --knd-header-nav-height-mobile: auto;
  --knd-header-navfull-height-mobile: auto;
  --knd-hf-header-bg: transparent;
  --knd-hf-header-text: var(--knd-header-color);
  --knd-hf-header-link: var(--knd-header-link-color);
  --knd-hf-header-hover: var(--knd-header-link-hover-color);
  --knd-hf-logo-width-desktop: var(--knd-logo-width-desktop);
  --knd-hf-logo-width-mobile: var(--knd-logo-width-mobile);
  --knd-header-action-font-family: inherit;
  --knd-header-action-icon-radius: var(--knd-header-action-radius);
  --knd-header-action-number-font-weight: 800;
  --knd-header-module-button-font-size: var(--knd-button-font-size, 1rem);
  --knd-header-module-button-font-weight: var(--knd-button-font-weight, 600);
  --knd-header-module-button-line-height: var(--knd-header-action-line-height, 1.1);
  --knd-header-module-button-font-family: var(--knd-header-action-font-family, inherit);
  --knd-header-module-button-min-height: var(--knd-icon-button-size, 44px);
  --knd-header-module-button-height: var(--knd-header-module-button-min-height, 44px);
  --knd-header-module-button-padding-y: var(--knd-button-padding-y, .75rem);
  --knd-header-module-button-padding-x: var(--knd-button-padding-x, 1.2rem);
  --knd-header-module-button-gap: var(--knd-header-action-gap, .55rem);
  --knd-header-module-button-bg: var(--knd-icon-button-bg, #ffffff);
  --knd-header-module-button-color: var(--knd-icon-button-color, var(--knd-color-text, #111827));
  --knd-header-module-button-border-width: var(--knd-icon-button-border-width, 1px);
  --knd-header-module-button-border-color: var(--knd-icon-button-border-color, var(--knd-color-border, #d7e7e4));
  --knd-header-module-button-radius: var(--knd-button-border-radius, var(--knd-radius-button, 10px));
  --knd-header-module-button-shadow: var(--knd-icon-button-shadow, none);
  --knd-header-module-button-hover-bg: var(--knd-header-module-button-bg,var(--knd-icon-button-bg,#fff));
  --knd-header-module-button-hover-color: var(--knd-header-module-button-color,var(--knd-icon-button-color,currentColor));
  --knd-header-module-button-hover-border-color: var(--knd-header-module-button-border-color,var(--knd-icon-button-border-color,var(--knd-color-border,#dbe3e8)));
  --knd-header-module-button-hover-shadow: var(--knd-header-module-button-shadow,none);
  --knd-header-module-button-hover-transform: none;
  --knd-header-module-icon-size: var(--knd-icon-button-size, 44px);
  --knd-header-module-icon-bg: var(--knd-icon-button-bg, #ffffff);
  --knd-header-module-icon-color: var(--knd-icon-button-color, currentColor);
  --knd-header-module-icon-border-width: var(--knd-icon-button-border-width, 1px);
  --knd-header-module-icon-border-color: var(--knd-icon-button-border-color, var(--knd-color-border, #d7e7e4));
  --knd-header-module-icon-radius: var(--knd-icon-button-radius, 999px);
  --knd-header-module-icon-shadow: var(--knd-icon-button-shadow, none);
  --knd-header-module-icon-hover-bg: var(--knd-icon-button-hover-bg, #f7f8f8);
  --knd-header-module-icon-hover-color: var(--knd-icon-button-hover-color, var(--knd-header-module-icon-color));
  --knd-header-module-icon-hover-border-color: var(--knd-icon-button-hover-border-color, var(--knd-header-module-icon-border-color));
  --knd-header-nav-link-color: var(--knd-header-link-color);
  --knd-logo-width-desktop: 245px;
  --knd-header-sticky-bg: #0b2238 !important;
  --knd-logo-width-mobile: 180px;
  --knd-header-banner-hover-color: var(--knd-header-link-hover-color);
  --knd-header-banner-hover-color-mobile: var(--knd-header-banner-hover-color);
  --knd-header-topbar-hover-color-mobile: var(--knd-header-topbar-hover-color);
  --knd-header-main-hover-color-mobile: var(--knd-header-main-hover-color);
  --knd-header-nav-hover-color: var(--knd-header-link-hover-color);
  --knd-header-nav-hover-color-mobile: var(--knd-header-nav-hover-color);
  --knd-header-navfull-hover-color-mobile: var(--knd-header-navfull-hover-color);
  --knd-header-sticky-color: #ffffff !important;
  --knd-header-sticky-shadow: 0 8px 24px rgb(0 0 0 / 8%);
  --knd-header-container-padding-x: 0px;
  --knd-header-zone-padding-x: 0px;
  --knd-header-zone-padding-y: 0px;
  --knd-header-item-gap: 8px;
  --knd-header-item-radius: var(--knd-radius-pill);
  --knd-header-item-font-size: 14px;
  --knd-header-item-font-weight: 600;
  --knd-header-item-line-height: var(--knd-line-height-tight);
  --knd-header-icon-size: var(--knd-icon-button-size, 44px);
  --knd-header-small-icon-size: 24px;
  --knd-header-topbar-bg: var(--knd-header-top-bg, var(--knd-header-bg));
  --knd-header-topbar-color: var(--knd-header-top-color, var(--knd-header-color));
  --knd-header-topbar-link-color: var(--knd-header-topbar-color);
  --knd-header-topbar-link-hover-color: var(--knd-header-link-hover-color);
  --knd-header-topbar-icon-color: var(--knd-header-topbar-link-color);
  --knd-header-topbar-padding-x: var(--knd-header-zone-padding-x);
  --knd-header-topbar-padding-y: var(--knd-header-zone-padding-y);
  --knd-header-topbar-min-height: var(--knd-header-top-min-height, 38px);
  --knd-header-topbar-gap: var(--knd-header-gap, 1rem);
  --knd-header-topbar-border-width: var(--knd-header-top-border-width, 0px);
  --knd-header-topbar-border-color: var(--knd-header-top-border-color, transparent);
  --knd-header-nav1-color: var(--knd-header-topbar-color);
  --knd-header-nav1-link-color: var(--knd-header-topbar-link-color);
  --knd-header-nav1-link-hover-color: var(--knd-header-topbar-link-hover-color);
  --knd-header-nav1-icon-color: var(--knd-header-topbar-icon-color);
  --knd-header-nav1-item-gap: var(--knd-header-item-gap);
  --knd-header-nav2-color: var(--knd-header-color);
  --knd-header-nav2-link-color: var(--knd-header-nav2-color);
  --knd-header-nav2-link-hover-color: var(--knd-header-link-hover-color);
  --knd-header-nav2-icon-color: var(--knd-header-nav2-link-color);
  --knd-header-nav2-item-gap: var(--knd-header-item-gap);
  --knd-header-nav2-item-height: 34px;
  --knd-header-nav2-item-padding-y: 5px;
  --knd-header-nav2-item-padding-x: 13px;
  --knd-header-nav2-padding-x: var(--knd-header-zone-padding-x);
  --knd-header-nav2-padding-y: var(--knd-header-zone-padding-y);
  --knd-header-nav2-font-size: var(--knd-header-item-font-size);
  --knd-header-nav2-font-weight: var(--knd-header-item-font-weight);
  --knd-header-main-padding-x: var(--knd-header-zone-padding-x);
  --knd-header-main-padding-y: var(--knd-header-zone-padding-y);
  --knd-header-main-padding-x-desktop: var(--knd-header-main-padding-x);
  --knd-header-main-padding-y-desktop: var(--knd-header-main-padding-y);
  --knd-header-main-padding-x-mobile: var(--knd-header-main-padding-x);
  --knd-header-main-padding-y-mobile: var(--knd-header-main-padding-y);
  --knd-header-main-gap: var(--knd-header-gap, 1rem);
  --knd-header-main-link-color: var(--knd-header-main-color);
  --knd-header-main-link-hover-color: var(--knd-header-link-hover-color);
  --knd-header-main-icon-color: var(--knd-header-main-link-color);
  --knd-header-nav-full-bg: var(--knd-header-nav-bg, var(--knd-header-bg));
  --knd-header-nav-full-color: var(--knd-header-nav-color, var(--knd-header-color));
  --knd-header-nav-full-link-color: var(--knd-header-nav-full-color);
  --knd-header-nav-full-link-hover-color: var(--knd-header-link-hover-color);
  --knd-header-nav-full-icon-color: var(--knd-header-nav-full-link-color);
  --knd-header-nav-full-padding-x: var(--knd-header-zone-padding-x);
  --knd-header-nav-full-padding-y: var(--knd-header-zone-padding-y);
  --knd-header-nav-full-padding-x-desktop: var(--knd-header-nav-full-padding-x);
  --knd-header-nav-full-padding-y-desktop: var(--knd-header-nav-full-padding-y);
  --knd-header-nav-full-padding-x-mobile: var(--knd-header-nav-full-padding-x);
  --knd-header-nav-full-padding-y-mobile: var(--knd-header-nav-full-padding-y);
  --knd-header-nav-full-min-height: 48px;
  --knd-header-nav-full-gap: var(--knd-header-gap, 1rem);
  --knd-header-nav-full-border-width: var(--knd-header-nav-border-width, 0px);
  --knd-header-nav-full-border-color: var(--knd-header-nav-border-color, transparent);
  --knd-header-menu-bg: var(--knd-header-nav-full-bg);
  --knd-header-menu-color: var(--knd-header-nav-full-color);
  --knd-header-menu-link-color: var(--knd-header-nav-full-link-color);
  --knd-header-menu-link-hover-color: var(--knd-header-nav-full-link-hover-color);
  --knd-header-topbar-hover-color: var(--knd-header-topbar-link-hover-color);
  --knd-header-main-hover-color: var(--knd-header-main-link-hover-color);
  --knd-header-navfull-bg: var(--knd-header-nav-full-bg);
  --knd-header-navfull-color: var(--knd-header-nav-full-color);
  --knd-header-navfull-link-color: var(--knd-header-nav-full-link-color);
  --knd-header-navfull-hover-color: var(--knd-header-nav-full-link-hover-color);
  --knd-header-secondary-nav-bg: var(--knd-header-nav2-bg, var(--knd-header-nav-full-bg));
  --knd-header-secondary-nav-color: var(--knd-header-nav2-zone-color, var(--knd-header-nav-full-color));
  --knd-header-secondary-nav-link-color: var(--knd-header-nav2-zone-link-color, var(--knd-header-nav-full-link-color));
  --knd-header-secondary-nav-link-hover-color: var(--knd-header-nav2-zone-link-hover-color, var(--knd-header-nav-full-link-hover-color));
  --knd-header-secondary-nav-padding-x: var(--knd-header-nav2-padding-x, var(--knd-header-zone-padding-x));
  --knd-header-secondary-nav-padding-y: var(--knd-header-nav2-padding-y, var(--knd-header-zone-padding-y));
  --knd-header-secondary-nav-min-height: 54px;
  --knd-header-secondary-nav-gap: var(--knd-header-gap, 1rem);
  --knd-header-action-min-height: var(--knd-header-nav2-item-height, 34px);
  --knd-header-action-padding-y: var(--knd-header-nav2-item-padding-y, 5px);
  --knd-header-action-padding-x: var(--knd-header-nav2-item-padding-x, 13px);
  --knd-header-action-gap: var(--knd-header-item-gap, 8px);
  --knd-header-action-radius: var(--knd-header-item-radius, 999px);
  --knd-header-action-font-size: var(--knd-header-item-font-size, 14px);
  --knd-header-action-font-weight: var(--knd-header-item-font-weight, 600);
  --knd-header-action-line-height: var(--knd-header-item-line-height, 1.1);
  --knd-header-action-color: currentColor;
  --knd-header-action-bg: transparent;
  --knd-header-action-border-width: 0px;
  --knd-header-action-border-color: transparent;
  --knd-header-action-shadow: none;
  --knd-header-action-hover-color: var(--knd-header-action-color);
  --knd-header-action-hover-bg: var(--knd-header-action-bg);
  --knd-header-action-hover-border-color: var(--knd-header-action-border-color);
  --knd-header-action-icon-size: var(--knd-header-small-icon-size, 24px);
  --knd-header-action-icon-bg: var(--kndev-brand-primary, var(--knd-brand-primary, var(--knd-color-primary, #007f79)));
  --knd-header-action-icon-color: #ffffff;
  --knd-header-nav2-action-color: var(--knd-header-nav2-link-color, currentColor);
  --knd-header-nav2-action-bg: rgba(255, 255, 255, 0.16);
  --knd-header-nav2-action-border-width: 1px;
  --knd-header-nav2-action-border-color: rgba(255, 255, 255, 0.28);
  --knd-header-nav2-action-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
  --knd-header-nav2-action-hover-color: var(--knd-header-nav2-action-color);
  --knd-header-nav2-action-hover-bg: rgba(255, 255, 255, 0.24);
  --knd-header-nav2-action-hover-border-color: rgba(255, 255, 255, 0.42);
  --knd-header-nav2-action-icon-bg: var(--knd-header-action-icon-bg);
  --knd-header-nav2-action-icon-color: var(--knd-header-action-icon-color);
  --knd-header-selector-bg: var(--knd-icon-button-bg, #ffffff);
  --knd-header-selector-color: var(--knd-color-text, #111827);
  --knd-header-selector-border-width: var(--knd-icon-button-border-width, 1px);
  --knd-header-selector-border-color: var(--knd-icon-button-border-color, var(--knd-color-border, #d7e7e4));
  --knd-header-selector-radius: var(--knd-icon-button-radius, 999px);
  --knd-header-selector-min-height: 36px;
  --knd-header-selector-padding-y: 6px;
  --knd-header-selector-padding-x: 14px;
  --knd-header-selector-gap: 8px;
  --knd-header-selector-font-size: 14px;
  --knd-header-selector-font-weight: 750;
  --knd-header-selector-line-height: 1.1;
  --knd-header-selector-letter-spacing: 0px;
  --knd-header-selector-text-transform: none;
  --knd-header-selector-shadow: none;
  --knd-header-selector-hover-shadow: var(--knd-header-selector-shadow, none);
  --knd-header-selector-chevron-size: var(--knd-ui-chevron-size, 10px);
  --knd-header-selector-chevron-color: currentColor;
  --knd-header-selector-chevron-stroke-width: 2px;
  --knd-header-selector-hover-bg: var(--knd-icon-button-hover-bg, var(--knd-color-surface, #f7f8f8));
  --knd-header-selector-hover-color: var(--knd-color-text, #111827);
  --knd-header-selector-hover-border-color: var(--knd-header-selector-border-color);
  --knd-header-selector-dropdown-bg: #ffffff;
  --knd-header-selector-dropdown-padding: 6px;
  --knd-header-selector-dropdown-color: var(--knd-color-text, #111827);
  --knd-header-selector-dropdown-border-color: var(--knd-color-border, #d7e7e4);
  --knd-header-selector-dropdown-radius: var(--knd-radius-md, 8px);
  --knd-header-selector-dropdown-shadow: var(--knd-shadow-dropdown, 0 18px 45px rgb(0 0 0 / 12%));
  --knd-header-selector-dropdown-offset-y: 6px;
  --knd-header-selector-dropdown-min-width: 128px;
  --knd-header-selector-item-padding-y: 8px;
  --knd-header-selector-item-padding-x: 10px;
  --knd-header-selector-item-radius: 6px;
  --knd-header-selector-item-font-weight: 650;
  --knd-header-selector-item-line-height: 1.2;
  --knd-header-selector-item-bg: #ffffff;
  --knd-header-selector-item-color: var(--knd-color-text, #111827);
  --knd-header-selector-item-hover-bg: var(--knd-color-surface, #f7f8f8);
  --knd-header-selector-item-hover-color: var(--knd-color-text, #111827);
  --knd-header-selector-item-active-bg: var(--knd-color-primary, #007f79);
  --knd-header-selector-item-active-color: #ffffff;
  --knd-header-selector-mobile-bg: transparent;
  --knd-header-selector-mobile-color: var(--knd-color-text, #111827);
  --knd-header-selector-mobile-border-color: var(--knd-color-border, #d7e7e4);
  --knd-header-selector-mobile-padding-y: 14px;
  --knd-header-selector-mobile-padding-x: 16px;
  --knd-header-selector-mobile-gap: var(--knd-header-selector-gap, 8px);
  --knd-header-selector-mobile-dropdown-offset-y: 8px;
  --knd-header-selector-mobile-dropdown-shadow: none;
  --knd-header-banner-bg: var(--knd-header-bg);
  --knd-header-banner-color: var(--knd-header-color);
  --knd-header-banner-link-color: var(--knd-header-link-color);
  --knd-header-banner-link-hover-color: var(--knd-header-link-hover-color);
  --knd-header-banner-icon-color: var(--knd-header-banner-link-color);
  --knd-header-banner-border-width: 0px;
  --knd-header-banner-border-color: transparent;
  --knd-header-main-border-width: 0px;
  --knd-header-main-border-color: transparent;
  --knd-header-nav2-bg: var(--knd-header-bg);
  --knd-header-nav2-border-width: 0px;
  --knd-header-nav2-border-color: transparent;
  --knd-header-below-bg: transparent;
  --knd-header-below-color: var(--knd-header-color);
  --knd-header-below-link-color: var(--knd-header-below-color);
  --knd-header-below-link-hover-color: var(--knd-header-link-hover-color);
  --knd-header-below-icon-color: var(--knd-header-below-link-color);
  --knd-header-below-border-width: 0px;
  --knd-header-below-border-color: transparent;
  --knd-header-selector-active-bg: var(--knd-color-surface, #f7f8f8);
  --knd-header-selector-active-color: var(--knd-color-primary, #007f79);
  --knd-header-selector-dropdown-item-bg: transparent;
  --knd-header-selector-dropdown-item-color: var(--knd-color-text, #111827);
  --knd-header-selector-dropdown-item-hover-bg: var(--knd-color-surface, #f7f8f8);
  --knd-header-selector-dropdown-item-hover-color: var(--knd-color-primary, #007f79);
  --knd-header-module-icon-inner-size: 20px;
  --knd-header-search-height: var(--knd-header-module-button-min-height, 44px);

  /* =========================================================
     05. Menu module
     ========================================================= */
  --knd-menu-link-text-decoration: none;
  --knd-menu-link-hover-text-decoration: none;
  --knd-menu-link-color: var(--knd-menu-color);
  --knd-menu-font-size: 16px;
  --knd-menu-font-weight: 700;
  --knd-menu-link-hover-color: var(--knd-color-primary, #007f79);
  --knd-menu-item-bg: transparent;
  --knd-menu-item-border-width: 0px;
  --knd-menu-item-border-color: transparent;
  --knd-menu-item-border-radius: 0px;
  --knd-menu-item-padding-y: 10px;
  --knd-menu-item-padding-x: 18px;
  --knd-menu-item-gap: 0px;
  --knd-menu-item-gap-x: var(--knd-menu-item-gap);
  --knd-menu-item-gap-y: 0px;
  --knd-menu-item-margin-x: 0px;
  --knd-menu-item-margin-y: 0px;
  --knd-menu-icon-size: 1.1em;
  --knd-menu-icon-gap: .45rem;
  --knd-menu-icon-color: currentColor;
  --knd-menu-item-gap-desktop: var(--knd-menu-item-gap);
  --knd-menu-item-gap-x-desktop: var(--knd-menu-item-gap-x);
  --knd-menu-item-gap-y-desktop: var(--knd-menu-item-gap-y);
  --knd-menu-item-margin-x-desktop: var(--knd-menu-item-margin-x);
  --knd-menu-item-margin-y-desktop: var(--knd-menu-item-margin-y);
  --knd-menu-icon-size-desktop: var(--knd-menu-icon-size);
  --knd-menu-icon-gap-desktop: var(--knd-menu-icon-gap);
  --knd-menu-icon-color-desktop: var(--knd-menu-icon-color);
  --knd-menu-item-gap-mobile: var(--knd-menu-item-gap);
  --knd-menu-item-gap-x-mobile: var(--knd-menu-item-gap-x);
  --knd-menu-item-gap-y-mobile: var(--knd-menu-item-gap-y);
  --knd-menu-item-margin-x-mobile: var(--knd-menu-item-margin-x);
  --knd-menu-item-margin-y-mobile: var(--knd-menu-item-margin-y);
  --knd-menu-icon-size-mobile: var(--knd-menu-icon-size);
  --knd-menu-icon-gap-mobile: var(--knd-menu-icon-gap);
  --knd-menu-icon-color-mobile: var(--knd-menu-icon-color);
  --knd-menu-item-hover-bg: transparent;
  --knd-menu-dropdown-bg: var(--knd-list-card-bg, var(--knd-surface-card-bg, #ffffff));
  --knd-menu-dropdown-color: var(--knd-list-card-color, var(--knd-color-text, #111827));
  --knd-menu-dropdown-border: var(--knd-menu-dropdown-border-width) var(--knd-menu-dropdown-border-style) var(--knd-menu-dropdown-border-color);
  --knd-menu-dropdown-radius: var(--knd-list-card-radius, var(--knd-radius-md, 16px));
  --knd-menu-dropdown-shadow: var(--knd-list-card-shadow, 0 14px 40px rgb(15 23 42 / 6%));
  --knd-menu-mobile-panel-bg: #ffffff;
  --knd-menu-mobile-panel-color: #111111;
  --knd-menu-mobile-panel-width: min(440px, 100vw);
  --knd-menu-mobile-panel-shadow: var(--knd-shadow-panel);
  --knd-menu-color: var(--knd-header-link-color);
  --knd-menu-dropdown-border-width: var(--knd-surface-card-border-width, 1px);
  --knd-menu-dropdown-border-style: solid;
  --knd-menu-dropdown-border-color: var(--knd-surface-card-border-color, var(--knd-color-border, #d7e7e4));
  --knd-menu-bg: transparent;
  --knd-menu-link-active-color: var(--knd-menu-link-color);
  --knd-menu-text: var(--knd-menu-link-color);
  --knd-menu-hover-text: var(--knd-menu-link-hover-color);
  --knd-menu-hover-bg: var(--knd-menu-item-hover-bg);
  --knd-menu-active-text: var(--knd-menu-link-active-color);
  --knd-menu-active-bg: var(--knd-menu-item-active-bg);
  --knd-menu-padding-y: var(--knd-menu-item-padding-y);
  --knd-menu-padding-x: var(--knd-menu-item-padding-x);
  --knd-menu-text-transform: none;
  --knd-menu-item-active-bg: transparent;
  --knd-menu-item-line-height: auto;
  --knd-menu-wrapper-margin-y: 0px;
  --knd-menu-wrapper-margin-x: 0px;
  --knd-menu-wrapper-padding-y: 0px;
  --knd-menu-wrapper-padding-x: 0px;
  --knd-menu-border-width: 0px;
  --knd-menu-border-color: transparent;
  --knd-menu-border-radius: 0px;
  --knd-menu-shadow: none;
  --knd-menu-top-desktop: 0px;
  --knd-menu-top-mobile: 0px;
  --knd-menu-toggle-size: var(--knd-icon-button-size);
  --knd-menu-toggle-size-mobile: var(--knd-menu-toggle-size);
  --knd-menu-toggle-bg: var(--knd-icon-button-bg);
  --knd-menu-toggle-color: var(--knd-icon-button-color);
  --knd-menu-toggle-border-width: var(--knd-icon-button-border-width);
  --knd-menu-toggle-border-color: var(--knd-icon-button-border-color);
  --knd-menu-toggle-radius: var(--knd-icon-button-radius);
  --knd-menu-toggle-shadow: var(--knd-icon-button-shadow);
  --knd-menu-toggle-hover-bg: var(--knd-icon-button-hover-bg);
  --knd-menu-toggle-hover-color: var(--knd-icon-button-hover-color);
  --knd-menu-toggle-hover-border-color: var(--knd-icon-button-hover-border-color);
  --knd-menu-dropdown-link-color: var(--knd-menu-dropdown-color);
  --knd-menu-dropdown-link-hover-color: var(--knd-list-card-item-hover-color, var(--knd-color-text, #111827));
  --knd-menu-dropdown-hover-bg: var(--knd-list-card-item-hover-bg, var(--knd-color-surface, #f6fbfa));
  --knd-menu-dropdown-padding: 0px;
  --knd-menu-dropdown-min-width: 220px;
  --knd-menu-dropdown-item-gap: 0px;
  --knd-menu-dropdown-margin: 0px;
  --knd-menu-dropdown-overflow: hidden;
  --knd-menu-dropdown-z-index: 10020;
  --knd-menu-dropdown-column-gap: 1.5rem;
  --knd-menu-dropdown-link-bg: transparent;
  --knd-menu-dropdown-link-hover-bg: var(--knd-menu-dropdown-hover-bg);
  --knd-menu-dropdown-link-radius: 0px;
  --knd-menu-dropdown-title-font-size: inherit;
  --knd-menu-dropdown-title-font-weight: inherit;
  --knd-menu-dropdown-title-transform: none;
  --knd-menu-dropdown-sub-font-size: .92em;
  --knd-menu-dropdown-sub-transform: none;
  --knd-menu-dropdown-sub-prefix: "";
  --knd-menu-dropdown-container-width: var(--knd-container-width);
  --knd-menu-mobile-overlay-bg: rgba(15,23,42,.48);
  --knd-menu-mobile-panel-border-width: 0px;
  --knd-menu-mobile-panel-border-color: transparent;
  --knd-menu-mobile-panel-border-radius: 0px;
  --knd-menu-mobile-panel-header-bg: transparent;
  --knd-menu-mobile-panel-header-color: var(--knd-menu-mobile-panel-color);
  --knd-menu-mobile-panel-header-border-color: var(--knd-color-border);
  --knd-menu-mobile-panel-title-font-size: 1.2rem;
  --knd-menu-mobile-close-bg: var(--knd-color-surface);
  --knd-menu-mobile-close-color: var(--knd-menu-mobile-panel-color);
  --knd-menu-mobile-close-border-color: var(--knd-color-border);
  --knd-menu-mobile-item-bg: transparent;
  --knd-menu-mobile-item-color: var(--knd-menu-mobile-panel-color);
  --knd-menu-mobile-item-hover-bg: transparent;
  --knd-menu-mobile-item-hover-color: var(--knd-list-card-item-hover-color, var(--knd-color-text, #111827));
  --knd-menu-mobile-item-active-bg: transparent;
  --knd-menu-mobile-item-active-color: var(--knd-list-card-item-hover-color, var(--knd-color-text, #111827));
  --knd-menu-mobile-item-font-size: inherit;
  --knd-menu-mobile-item-font-weight: 500;
  --knd-menu-mobile-item-text-transform: none;
  --knd-menu-mobile-item-line-height: 44px;
  --knd-menu-mobile-item-padding-y: .8rem;
  --knd-menu-mobile-item-padding-x: 1.25rem;
  --knd-menu-mobile-item-border-width: 0px;
  --knd-menu-mobile-item-border-color: transparent;
  --knd-menu-mobile-item-border-radius: 0px;
  --knd-menu-icon-mask: var(--knd-menu-icon-mask-default, none);
  --knd-menu-icon-mask-default: none;

  /* =========================================================
     06. Search and social icons
     ========================================================= */
  --knd-search-input-bg: #ffffff;
  --knd-search-input-color: #111111;
  --knd-search-input-border-color: var(--knd-color-border);
  --knd-search-input-border-width: 1px;
  --knd-search-input-radius: var(--knd-radius-input, var(--knd-radius-button, 10px));
  --knd-search-input-height: 44px;
  --knd-search-input-width-desktop: 320px;
  --knd-search-button-bg: var(--knd-button-bg);
  --knd-search-button-color: #ffffff;
  --knd-search-button-hover-bg: var(--knd-button-hover-bg);
  --knd-search-button-hover-color: #ffffff;
  --knd-search-input-width-mobile: 100%;
  --knd-social-icon-gap: .55rem;
  --knd-social-icon-size: 24px;
  --knd-social-icon-radius: 999px;
  --knd-social-icon-bg: transparent;
  --knd-social-icon-color: var(--knd-header-link-color, currentColor);
  --knd-social-icon-hover-bg: transparent;
  --knd-social-icon-hover-color: var(--knd-header-link-hover-color, var(--knd-color-primary));
  --knd-search-submit-color: var(--knd-search-button-color);
  --knd-search-button-text-color: var(--knd-search-button-color);
  --knd-search-icon-bg: var(--knd-icon-button-bg);
  --knd-search-icon-color: var(--knd-icon-button-color);
  --knd-search-bg: var(--knd-search-input-bg);
  --knd-search-text: var(--knd-search-input-color);
  --knd-search-border: var(--knd-search-input-border-color);
  --knd-search-primary: var(--knd-search-button-bg);
  --knd-search-primary-hover: var(--knd-search-button-hover-bg);
  --knd-search-results-bg: #ffffff;
  --knd-search-results-color: var(--knd-color-text);
  --knd-search-results-border-color: var(--knd-color-border);
  --knd-search-results-shadow: var(--knd-shadow-dropdown);
  --knd-search-button-height: var(--knd-header-search-height, 44px);
  --knd-search-button-padding-x: var(--knd-connected-button-padding-x, 1.2rem);
  --knd-search-input-width: var(--knd-search-input-width-desktop, 320px);
  --knd-search-mobile-button-min-width: 84px;
  --knd-search-overlay-field-width: 720px;
  --knd-search-overlay-mobile-width: calc(100vw - 2rem);
  --knd-search-overlay-mobile-padding: .75rem 1rem;
  --knd-search-overlay-panel-bg: #ffffff;
  --knd-search-button-radius: 0 var(--knd-search-input-radius, var(--knd-radius-button, 10px)) var(--knd-search-input-radius, var(--knd-radius-button, 10px)) 0;
  --knd-search-button-border-color: var(--knd-button-border-color, var(--knd-search-button-bg, var(--knd-button-bg, var(--knd-color-primary, #007f79))));
  --knd-search-button-hover-border-color: var(--knd-button-hover-border-color, var(--knd-search-button-hover-bg, var(--knd-button-hover-bg, var(--knd-color-secondary, #0f766e))));

  /* =========================================================
     07. Cart dropdown
     ========================================================= */
  --knd-cart-accessory-popup-enabled: 1;
  --knd-cart-accessory-popup-z-index: 20080;
  --knd-cart-accessory-popup-backdrop-bg: var(--knd-modal-backdrop-bg, rgba(15, 23, 42, .62));
  --knd-cart-accessory-popup-bg: var(--knd-modal-bg, #ffffff);
  --knd-cart-accessory-popup-color: var(--knd-modal-color, var(--knd-color-text, #111827));
  --knd-cart-accessory-popup-border-width: var(--knd-modal-border-width, 1px);
  --knd-cart-accessory-popup-border-color: var(--knd-modal-border-color, var(--knd-color-border, #d7e7e4));
  --knd-cart-accessory-popup-radius: var(--knd-modal-border-radius, 22px);
  --knd-cart-accessory-popup-shadow: var(--knd-modal-shadow, 0 24px 70px rgb(15 23 42 / 24%));
  --knd-cart-accessory-popup-padding: var(--knd-modal-body-padding, clamp(22px, 2.6vw, 34px));
  --knd-cart-accessory-card-bg: var(--knd-surface-card-bg, #ffffff);
  --knd-cart-accessory-card-border-color: var(--knd-surface-card-border-color, var(--knd-color-border, #d7e7e4));
  --knd-cart-accessory-card-radius: var(--knd-radius-lg, 16px);
  --knd-cart-accessory-button-bg: var(--knd-button-bg, var(--knd-color-primary, #007f79));
  --knd-cart-accessory-button-color: var(--knd-button-color, #ffffff);
  --knd-cart-accessory-button-hover-bg: var(--knd-button-hover-bg, var(--knd-color-secondary, #0f766e));
  --knd-cart-accessory-button-hover-color: var(--knd-button-hover-color, #ffffff);
  --knd-cart-icon-color: var(--knd-icon-button-color);
  --knd-cart-icon-size: var(--knd-icon-button-size);
  --knd-cart-icon-bg: var(--knd-icon-button-bg);
  --knd-cart-icon-border-color: var(--knd-icon-button-border-color);
  --knd-cart-icon-radius: var(--knd-icon-button-radius);
  --knd-cart-panel-bg: #ffffff;
  --knd-cart-panel-color: #111111;
  --knd-cart-panel-width: 420px;
  --knd-cart-panel-shadow: var(--knd-shadow-panel);
  --knd-cart-badge-bg: #0f7b50;
  --knd-cart-badge-color: #ffffff;
  --knd-cartdrawer-badge-bg: var(--knd-cartdrawer-primary);
  --knd-cartdrawer-primary: var(--knd-color-primary);
  --knd-cartdrawer-badge-color: #ffffff;
  --knd-cartdrawer-badge-font-weight: 800;
  --knd-cartdrawer-width: var(--knd-cart-panel-width);
  --knd-cartdrawer-z-index: 10020;
  --knd-cartdrawer-bg: var(--knd-cart-panel-bg);
  --knd-cartdrawer-text: var(--knd-cart-panel-color);
  --knd-cartdrawer-muted: var(--knd-color-muted);
  --knd-cartdrawer-border: var(--knd-color-border);
  --knd-cartdrawer-primary-hover: var(--knd-color-secondary);
  --knd-cartdrawer-soft: var(--knd-color-surface);
  --knd-cartdrawer-success: #16a34a;
  --knd-cartdrawer-radius: var(--knd-radius-lg);
  --knd-cartdrawer-shadow: var(--knd-cart-panel-shadow);
  --knd-cart-trigger-text-display-desktop: inline;
  --knd-cart-trigger-text-display-mobile: none;
  --knd-cartdrawer-checkout-border-width: 0px;
  --knd-cartdrawer-checkout-border-color: transparent;
  --knd-cartdrawer-checkout-color: #ffffff;
  --knd-cartdrawer-checkout-hover-color: #ffffff;
  --knd-cartdrawer-checkout-hover-border-width: var(--knd-cartdrawer-checkout-border-width);
  --knd-cartdrawer-checkout-hover-border-color: var(--knd-cartdrawer-checkout-border-color);

  /* =========================================================
     08. Footer global and footer contact
     ========================================================= */
  --knd-footer-bg: var(--knd-color-background);
  --knd-footer-color: var(--knd-color-primary);
  --knd-footer-link-color: var(--knd-color-primary);
  --knd-footer-link-hover-color: var(--knd-color-primary, #007f79);
  --knd-footer-border-width: 0px;
  --knd-footer-border-color: transparent;
  --knd-footer-bottom-border-width: 0px;
  --knd-footer-bottom-border-color: transparent;
  --knd-footer-bottom-font-size: 12px;
  --knd-footer-bottom-line-height: 1.45;
  --knd-footer-bottom-padding-y: 10px;
  --knd-footer-bottom-padding-y-mobile: 12px;
  --knd-footer-bottom-padding-x: 16px;
  --knd-footer-bottom-margin: 0;
  --knd-footer-bottom-gap: 16px;
  --knd-footer-bottom-mobile-gap: 4px;
  --knd-footer-bottom-container-width: var(--knd-container-width);
  --knd-footer-bottom-link-color: var(--knd-color-text);
  --knd-footer-bottom-link-hover-color: currentColor;
  --knd-footer-bottom-credit-opacity: 1;
  --knd-footer-bottom-prefix-opacity: 1
  --knd-footer-contact-margin-top: clamp(46px, 6vw, 86px);
  --knd-footer-contact-margin-top: clamp(46px, 6vw, 86px);
  --knd-footer-contact-bg: radial-gradient(circle at 80% 0%, color-mix(in srgb, var(--knd-color-accent, #f59e0b) 16%, transparent), transparent 24rem), linear-gradient(135deg, #101820 0%, #0b1118 100%);
  --knd-footer-contact-color: rgba(255,255,255,.78);
  --knd-footer-contact-link-color: rgba(255,255,255,.84);
  --knd-footer-contact-link-hover-color: var(--knd-color-primary, #007f79);
  --knd-footer-contact-padding-y: clamp(42px, 5vw, 72px);
  --knd-footer-contact-padding-x: 0px;
  --knd-footer-contact-gap: clamp(28px, 5vw, 56px);
  --knd-footer-contact-align-items: stretch;
  --knd-footer-contact-form-align-items: center;
  --knd-footer-contact-heading-color: #ffffff;
  --knd-footer-contact-heading-size: clamp(1.55rem, 2.4vw, 2.1rem);
  --knd-footer-contact-heading-weight: 900;
  --knd-footer-contact-logo-width: 230px;
  --knd-footer-contact-badge-bg: color-mix(in srgb, var(--knd-color-primary, #007f79) 28%, transparent);
  --knd-footer-contact-badge-color: #ffffff;
  --knd-footer-contact-muted-color: rgba(255,255,255,.72);
  --knd-footer-contact-divider-color: rgba(255,255,255,.16);
  --knd-footer-contact-link-gap: .75rem;
  --knd-footer-contact-icon-size: 20px;
  --knd-footer-contact-card-bg: rgba(255,255,255,.06);
  --knd-footer-contact-card-color: #ffffff;
  --knd-footer-contact-card-border-color: rgba(255,255,255,.14);
  --knd-footer-contact-card-radius: 22px;
  --knd-footer-contact-card-shadow: 0 18px 40px rgb(0 0 0 / 18%);
  --knd-footer-contact-card-padding: clamp(18px, 3vw, 26px);
  --knd-footer-contact-map-min-height: 320px;
  --knd-footer-contact-map-visual-bg: radial-gradient(circle at 20% 25%, rgba(255,255,255,.22), transparent 10rem), radial-gradient(circle at 78% 70%, color-mix(in srgb, var(--knd-color-primary, #007f79) 45%, transparent), transparent 14rem), linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.04));
  --knd-footer-contact-cta-bg: var(--knd-color-primary, #007f79);
  --knd-footer-contact-cta-color: #ffffff;
  --knd-footer-contact-cta-hover-bg: var(--knd-color-secondary, #0f766e);
  --knd-footer-contact-cta-radius: 999px;
  --knd-footer-contact-form-bg: rgba(255,255,255,.06);
  --knd-footer-contact-form-border-color: rgba(255,255,255,.14);
  --knd-footer-contact-form-shell-padding-x: 0px;
  --knd-footer-contact-form-shell-padding-y: 0px;
  --knd-footer-contact-form-shell-max-width: none;
  --knd-footer-contact-form-shell-margin: 0;
  --knd-footer-contact-margin-top-mobile: 0px;
  --knd-footer-contact-padding-y-mobile: clamp(24px, 8vw, 42px);
  --knd-footer-contact-gap-mobile: clamp(18px, 6vw, 32px);
  --knd-hf-footer-padding-top: var(--knd-footer-main-padding-top);
  --knd-hf-footer-padding-bottom: var(--knd-footer-main-padding-bottom);
  --knd-hf-footer-bg: var(--knd-footer-bg);
  --knd-hf-footer-text: var(--knd-footer-color);
  --knd-hf-footer-link: var(--knd-footer-link-color);
  --knd-hf-footer-hover: var(--knd-footer-link-hover-color);
  --knd-footer-shadow: none;
  --knd-footer-padding-top: 48px;
  --knd-footer-padding-bottom: 24px;
  --knd-footer-bottom-bg: var(--knd-footer-bg);
  --knd-footer-bottom-color: var(--knd-footer-color);
  --knd-footer-main-padding-top: var(--knd-hf-footer-padding-top, clamp(32px, 5vw, 72px));
  --knd-footer-main-padding-bottom: var(--knd-hf-footer-padding-bottom, clamp(28px, 4vw, 56px));
  --knd-footer-main-padding-x: 0px;
  --knd-footer-column-gap: 1.5rem;
  --knd-footer-row-gap: 1.5rem;
  --knd-footer-text-color: #ffffff!important;
  --knd-footer-muted-color: color-mix(in srgb, var(--knd-footer-text-color) 72%, transparent);
  --knd-footer-heading-color: #ffffff!important;
  --knd-footer-heading-font-weight: 800;
  --knd-footer-link-text-decoration: none;
  --knd-footer-link-hover-text-decoration: none;
  --knd-footer-icon-color: currentColor;
  --knd-footer-action-bg: color-mix(in srgb, var(--knd-footer-link-color, #ffffff) 10%, transparent);
  --knd-footer-action-color: var(--knd-footer-link-color, #ffffff);
  --knd-footer-action-border-color: color-mix(in srgb, var(--knd-footer-link-color, #ffffff) 18%, transparent);
  --knd-footer-action-hover-bg: color-mix(in srgb, var(--knd-footer-link-hover-color, var(--knd-color-primary, #007f79)) 16%, transparent);
  --knd-footer-action-hover-color: var(--knd-footer-link-hover-color, var(--knd-color-primary, #007f79));

  /* =========================================================
     09. Breadcrumb, category and product grids
     ========================================================= */
  --knd-product-card-quantity-display: none;
  --knd-product-card-add-icon-display: none;
  --knd-product-card-add-text-display: inline;
  --knd-product-quickview-display: inline-flex;
  --knd-category-bg: var(--knd-page-bg, var(--knd-shop-page-bg, var(--knd-color-background, #ffffff)));
  --knd-category-subcategories-toggle-margin-bottom: 20px;
  --knd-category-subcategories-toggle-width: auto;
  --knd-breadcrumb-bg: var(--knd-color-background, #ffffff);
  --knd-breadcrumb-color: var(--knd-color-muted);
  --knd-breadcrumb-font-size: 14px;
  --knd-breadcrumb-padding-y: 12px;
  --knd-breadcrumb-padding-x: 0px;
  --knd-breadcrumb-link-color: var(--knd-color-muted);
  --knd-breadcrumb-link-hover-color: var(--knd-color-primary);
  --knd-product-grid-gap: 24px;
  --knd-products-per-row-with-sidebar-xxs: 1;
  --knd-products-per-row-with-sidebar-xs: 2;
  --knd-products-per-row-with-sidebar-sm: 2;
  --knd-products-per-row-with-sidebar-md: 2;
  --knd-products-per-row-with-sidebar-lg: 2;
  --knd-products-per-row-with-sidebar-xl: 3;
  --knd-products-per-row-with-sidebar-xxl: 3;
  --knd-products-per-row-without-sidebar-xxs: 1;
  --knd-products-per-row-without-sidebar-xs: 2;
  --knd-products-per-row-without-sidebar-sm: 2;
  --knd-products-per-row-without-sidebar-md: 2;
  --knd-products-per-row-without-sidebar-lg: 3;
  --knd-products-per-row-without-sidebar-xl: 4;
  --knd-products-per-row-without-sidebar-xxl: 4;
  --knd-product-card-bg: #ffffff;
  --knd-product-card-color: var(--knd-color-text);
  --knd-product-card-border-width: 1px;
  --knd-product-card-border-color: var(--knd-color-border);
  --knd-product-card-border-radius: var(--knd-radius-card, var(--knd-radius-block, 24px));
  --knd-product-card-shadow: none;
  --knd-product-card-padding: 16px;
  --knd-product-card-hover-shadow: var(--knd-shadow-card);
  --knd-product-card-inner-shadow: none;
  --knd-product-card-brand-color: var(--knd-color-text);
  --knd-product-card-brand-font-size: 14px;
  --knd-product-card-brand-font-weight: 800;
  --knd-product-card-meta-height: 34px;
  --knd-product-card-image-min-height: clamp(180px, 24vw, 320px);
  --knd-product-card-label-inset: 12px;
  --knd-product-card-content-gap: 14px;
  --knd-product-card-action-margin-top: 16px;
  --knd-product-card-availability-margin-top: 12px;
  --knd-product-card-title-font-weight: 600;
  --knd-product-card-price-font-size: 18px;
  --knd-product-card-price-font-weight: 600;
  --knd-product-card-availability-color: var(--knd-color-muted);
  --knd-product-card-availability-icon-color: #16a34a;
  --knd-product-title-color: var(--knd-color-text);
  --knd-product-title-font-size: 16px;
  --knd-product-title-font-weight: 600;
  --knd-product-title-hover-color: var(--knd-color-primary);
  --knd-product-price-color: var(--knd-color-text);
  --knd-product-price-font-size: 18px;
  --knd-product-price-font-weight: 700;
  --knd-product-regular-price-color: var(--knd-color-muted);
  --knd-product-flags-bg: var(--knd-color-primary);
  --knd-product-flags-color: #ffffff;
  --knd-category-title-color: var(--knd-color-text);
  --knd-category-description-color: var(--knd-color-text);
  --knd-category-sidebar-bg: var(--knd-color-surface);
  --knd-category-sidebar-border-color: var(--knd-color-border);
  --knd-product-card-image-bg: #ffffff;
  --knd-product-card-image-radius: var(--knd-radius-sm);

  /* =========================================================
     10. Product page and product split blocks
     ========================================================= */
  --knd-product-page-add-icon-display: none;
  --knd-products-split-gap: clamp(28px, 5vw, 72px);
  --knd-products-split-align: center;
  --knd-products-split-content-max-width: 560px;
  --knd-products-split-products-min-width: 0;
  --knd-products-split-eyebrow-color: var(--knd-color-primary);
  --knd-products-split-eyebrow-font-size: .82rem;
  --knd-products-split-eyebrow-font-weight: 800;
  --knd-products-split-eyebrow-letter-spacing: .12em;
  --knd-products-split-eyebrow-text-transform: uppercase;
  --knd-product-page-bg: var(--knd-page-bg, var(--knd-shop-page-bg, #ffffff));
  --knd-product-page-title-color: var(--knd-color-text);
  --knd-product-page-price-color: var(--knd-color-text);
  --knd-product-page-price-font-size: clamp(24px, 3vw, 36px);
  --knd-product-page-price-font-weight: 700;
  --knd-product-page-summary-color: var(--knd-color-text);
  --knd-product-page-gallery-bg: transparent;
  --knd-product-page-gallery-radius: var(--knd-radius-lg);
  --knd-product-page-content-width: var(--knd-container-width, 1320px);
  --knd-product-page-padding-y: clamp(24px, 4vw, 56px);
  --knd-product-page-block-bg: var(--knd-surface-card-bg, #ffffff);
  --knd-product-page-block-color: var(--knd-surface-card-color, var(--knd-color-text, #111827));
  --knd-product-page-block-border-width: var(--knd-surface-card-border-width, 1px);
  --knd-product-page-block-border-color: var(--knd-surface-card-border-color, var(--knd-color-border, #d7e7e4));
  --knd-product-page-block-radius: var(--knd-surface-card-radius, 18px);
  --knd-product-page-block-shadow: var(--knd-surface-card-shadow, none);
  --knd-product-page-block-padding: var(--knd-surface-card-padding, clamp(18px, 2.2vw, 28px));
  --knd-product-page-block-padding-mobile: var(--knd-surface-card-padding-mobile, 18px);

  /* =========================================================
     12. Forms, alerts and misc
     ========================================================= */
  --knd-account-sidebar-width: 260px;
  --knd-account-layout-gap: clamp(24px, 3vw, 48px);
  --knd-account-content-margin-bottom: clamp(44px, 6vw, 84px);
  --knd-page-bg: #ffffff;
  --knd-index-page-bg: var(--knd-page-bg, #ffffff);
  --knd-ui-chevron-size: 10px;
  --knd-ui-chevron-icon-size: 14px;
  --knd-ui-chevron-stroke-width: 2px;
  --knd-filter-visible-lines: 5;
  --knd-filter-heading-font-weight: 700;
  --knd-filter-section-heading-font-size: 18px;
  --knd-filter-section-heading-font-weight: 700;
  --knd-filter-section-padding-y: .55rem;
  --knd-filter-title-min-height: 30px;
  --knd-filter-list-margin-bottom: 4px;
  --knd-filter-option-gap-y: 4px;
  --knd-filter-show-all-margin: 4px 0 3px var(--knd-filter-indent, 5px);
  --knd-filter-chevron-size: 8px;
  --knd-filter-chevron-icon-size: 12px;
  --knd-text-font-size: var(--knd-font-size-base, 16px);
  --knd-text-line-height: var(--knd-line-height-base, 1.5);
  --knd-paragraph-margin-bottom: 1rem;
  --knd-link-font-size: inherit;
  --knd-label-font-size: .875rem;
  --knd-connected-control-height: var(--knd-button-min-height, 44px);
  --knd-connected-control-radius: var(--knd-radius-input, var(--knd-radius-button, 10px));
  --knd-connected-control-gap: 0px;
  --knd-connected-input-bg: var(--knd-input-bg, #ffffff);
  --knd-connected-input-color: var(--knd-input-color, var(--knd-color-text, #111827));
  --knd-connected-input-border-color: var(--knd-input-border-color, var(--knd-color-border, #d7e7e4));
  --knd-connected-input-focus-border-color: var(--knd-input-focus-border-color, var(--knd-color-primary, #007f79));
  --knd-connected-input-padding-x: 1rem;
  --knd-connected-button-min-width: 112px;
  --knd-connected-button-padding-x: 1.2rem;
  --knd-add-to-cart-bg: var(--knd-color-success);
  --knd-add-to-cart-color: #ffffff;
  --knd-add-to-cart-hover-bg: color-mix(in srgb, var(--knd-add-to-cart-bg) 82%, #000000);
  --knd-add-to-cart-hover-color: #ffffff;
  --knd-add-to-cart-icon-display: none;
  --knd-add-to-cart-icon-gap: 0px;
  --knd-product-delivery-display: inline-flex;
  --knd-product-delivery-align-items: center;
  --knd-product-delivery-gap: .45rem;
  --knd-product-delivery-margin-top: .65rem;
  --knd-product-delivery-margin-bottom: .75rem;
  --knd-product-delivery-font-size: .96rem;
  --knd-product-delivery-font-weight: 600;
  --knd-product-delivery-color: var(--knd-color-text, #111827);
  --knd-product-delivery-muted-color: #6b7280;
  --knd-product-delivery-warning-color: #d97706;
  --knd-product-delivery-success-color: #0f8a48;
  --knd-product-delivery-danger-color: #b42318;
  --knd-product-delivery-icon-size: 1.1em;
  --knd-product-campaigns-margin: 0;
  --knd-product-commerce-section-gap: 14px;
  --knd-product-commerce-card-padding: 16px;
  --knd-product-trust-padding: var(--knd-product-commerce-card-padding, 16px);
  --knd-product-trust-gap: 14px;
  --knd-product-review-card-margin: clamp(24px, 4vw, 48px) 0;
  --knd-product-info-card-gap: 24px;
  --knd-product-delivery-icon-content: "✓";
  --knd-product-availability-duplicate-display: none;
  --knd-product-delivery-information-display: inline-flex;
  --knd-modal-backdrop-bg: rgba(15, 23, 42, .62);
  --knd-modal-max-width: min(980px, calc(100vw - 32px));
  --knd-modal-bg: var(--knd-card-bg, #ffffff);
  --knd-modal-color: var(--knd-card-color, var(--knd-color-text, #111827));
  --knd-modal-border-width: var(--knd-card-border-width, 1px);
  --knd-modal-border-color: var(--knd-card-border-color, var(--knd-color-border, #d7e7e4));
  --knd-modal-border-radius: var(--knd-radius-modal, var(--knd-radius-block, 16px));
  --knd-modal-shadow: var(--knd-shadow-panel, 0 24px 70px rgb(15 23 42 / 24%));
  --knd-modal-body-padding: clamp(20px, 2.4vw, 32px);
  --knd-modal-close-size: 40px;
  --knd-modal-close-bg: var(--knd-icon-button-bg, #ffffff);
  --knd-modal-close-color: var(--knd-color-text, #111827);
  --knd-modal-close-border-color: var(--knd-color-border, #d7e7e4);
  --knd-modal-close-hover-bg: var(--knd-icon-button-hover-bg, #f7f8f8);
  --knd-modal-close-hover-color: var(--knd-modal-close-color);
  --knd-modal-close-hover-border-color: var(--knd-modal-close-border-color);
  --knd-modal-close-top: 14px;
  --knd-modal-close-right: 14px;
  --knd-modal-close-border-width: var(--knd-icon-button-border-width, 1px);
  --knd-modal-close-radius: var(--knd-button-border-radius, var(--knd-radius-button, 10px));
  --knd-modal-close-shadow: 0 10px 26px rgb(15 23 42 / 10%);
  --knd-modal-close-font-size: 24px;
  --knd-payment-icon-height: 34px;
  --knd-payment-icon-min-width: 54px;
  --knd-payment-icon-padding: 5px 8px;
  --knd-payment-icon-radius: 8px;
  --knd-payment-icon-bg: #ffffff;
  --knd-payment-icon-image-height: 22px;
  --knd-payment-icon-image-max-width: 80px;
  --knd-sticky-contact-size: 46px;
  --knd-sticky-contact-size-mobile: 44px;
  --knd-sticky-contact-bottom: 24px;
  --knd-sticky-contact-bottom-mobile: calc(var(--knd-backtotop-bottom, 16px) + var(--knd-backtotop-size, var(--knd-icon-button-size, 44px)) + var(--knd-sticky-contact-gap, 10px));
  --knd-sticky-contact-right: 24px;
  --knd-sticky-contact-left: 24px;
  --knd-sticky-contact-gap: 10px;
  --knd-sticky-contact-radius: var(--knd-radius-pill, 999px);
  --knd-sticky-contact-bg: var(--knd-color-primary);
  --knd-sticky-contact-bg-hover: var(--knd-color-surface, #f6fbfa);
  --knd-sticky-contact-color: #fff;
  --knd-sticky-contact-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
  --knd-sticky-contact-z-index: 20050;
  --knd-sticky-contact-border-width: 1px;
  --knd-sticky-contact-border-color: var(--knd-color-primary);
  --knd-sticky-contact-icon-size: 20px;
  --knd-sticky-contact-custom-bg: #ffffff;
  --knd-sticky-contact-custom-color: var(--knd-color-text, #111827);
  --knd-sticky-contact-item-bg: var(--knd-color-primary);
  --knd-sticky-contact-item-color: var(--knd-color-text,#111827);
  --knd-sticky-contact-item-hover-bg: var(--knd-color-surface,#f6fbfa);
  --knd-sticky-contact-item-hover-color: var(--knd-color-primary,#007f79);
  --knd-mobile-panel-contact-icon-color: currentColor;
  --knd-mobile-overlay-bg: rgb(15 23 42 / 42%);
  --knd-mobile-panel-bg: var(--knd-menu-mobile-panel-bg, #ffffff);
  --knd-mobile-panel-text: var(--knd-menu-mobile-panel-color, var(--knd-color-text, #111827));
  --knd-mobile-panel-width: var(--knd-menu-mobile-panel-width, min(440px, 100vw));
  --knd-mobile-panel-shadow: var(--knd-menu-mobile-panel-shadow, var(--knd-shadow-panel));
  --knd-mobile-panel-border-width: 0px;
  --knd-mobile-panel-border-color: transparent;
  --knd-mobile-panel-border-radius: 0px;
  --knd-mobile-panel-header-bg: var(--knd-menu-mobile-panel-header-bg, transparent);
  --knd-mobile-panel-header-text: var(--knd-menu-mobile-panel-header-color, inherit);
  --knd-mobile-panel-header-border: var(--knd-menu-mobile-panel-header-border-color, var(--knd-color-border, #e5e7eb));
  --knd-mobile-panel-close-bg: var(--knd-menu-mobile-close-bg, var(--knd-color-surface, #f3f4f6));
  --knd-mobile-panel-close-color: var(--knd-menu-mobile-close-color, inherit);
  --knd-mobile-panel-close-border: var(--knd-menu-mobile-close-border-color, var(--knd-color-border, #e5e7eb));
  --knd-mobile-item-bg: transparent;
  --knd-mobile-item-text: var(--knd-menu-link-color, inherit);
  --knd-mobile-item-hover-bg: var(--knd-menu-item-hover-bg, transparent);
  --knd-mobile-item-hover-text: var(--knd-menu-link-hover-color, var(--knd-mobile-item-text));
  --knd-mobile-item-active-bg: var(--knd-menu-item-active-bg, var(--knd-mobile-item-hover-bg));
  --knd-mobile-item-active-text: var(--knd-menu-link-active-color, var(--knd-mobile-item-text));
  --knd-mobile-item-border-width: 0px;
  --knd-mobile-item-border-color: transparent;
  --knd-mobile-item-border-radius: 0px;
  --knd-mobile-item-padding-y: var(--knd-menu-item-padding-y-mobile, var(--knd-menu-item-padding-y, 10px));
  --knd-mobile-item-padding-x: var(--knd-menu-item-padding-x-mobile, var(--knd-menu-item-padding-x, 14px));
  --knd-mobile-item-font-size: var(--knd-menu-font-size, 16px);
  --knd-mobile-item-font-weight: var(--knd-menu-font-weight, 500);
  --knd-mobile-item-line-height: var(--knd-menu-item-line-height, 1.2);
  --knd-mobile-item-text-transform: var(--knd-menu-text-transform, none);
  --knd-catalog-toolbar-gap: 16px;
  --knd-catalog-sort-min-width: 190px;
  --knd-catalog-sort-max-width: 320px;
  --knd-catalog-control-height: var(--knd-button-min-height, 44px);
  --knd-catalog-control-radius: var(--knd-button-border-radius, var(--knd-radius-button, 10px));
  --knd-catalog-control-padding-x: var(--knd-button-padding-x, 20px);
  --knd-catalog-control-font-size: var(--knd-button-font-size, 16px);
  --knd-catalog-control-font-weight: var(--knd-button-font-weight, 600);
  --knd-catalog-control-border-width: var(--knd-button-border-width, 1px);
  --knd-catalog-control-border-color: var(--knd-color-border);
  --knd-product-flag-new-bg: var(--knd-product-flags-bg);
  --knd-product-flag-new-color: var(--knd-product-flags-color);
  --knd-product-flag-on-sale-bg: var(--knd-product-flags-bg);
  --knd-product-flag-on-sale-color: var(--knd-product-flags-color);
  --knd-product-flag-discount-bg: var(--knd-product-flags-bg);
  --knd-product-flag-discount-color: var(--knd-product-flags-color);
  --knd-product-flag-pack-bg: var(--knd-product-flags-bg);
  --knd-product-flag-pack-color: var(--knd-product-flags-color);
  --knd-product-flag-online-only-bg: var(--knd-product-flags-bg);
  --knd-product-flag-online-only-color: var(--knd-product-flags-color);
  --knd-product-flag-out-of-stock-bg: var(--knd-product-flags-bg);
  --knd-product-flag-out-of-stock-color: var(--knd-product-flags-color);
  --knd-product-flag-campaign-bg: var(--knd-product-flags-bg);
  --knd-product-flag-campaign-color: var(--knd-product-flags-color);
  --knd-product-flag-cashback-bg: var(--knd-product-flags-bg);
  --knd-product-flag-cashback-color: var(--knd-product-flags-color);
  --knd-product-flag-used-bg: var(--knd-product-flags-bg);
  --knd-product-flag-used-color: var(--knd-product-flags-color);
  --knd-product-flag-promo-bg: var(--knd-product-flags-bg);
  --knd-product-flag-promo-color: var(--knd-product-flags-color);
  --knd-product-flag-info-bg: var(--knd-product-flags-bg);
  --knd-product-flag-info-color: var(--knd-product-flags-color);
  --knd-product-flag-custom-bg: var(--knd-product-flags-bg);
  --knd-product-flag-custom-color: var(--knd-product-flags-color);
  --knd-hf-sticky-bg: var(--knd-customer-header-mobile-sticky-bg) !important;
  --knd-login-gap: var(--knd-header-action-gap, .55rem);
  --knd-login-icon-size: var(--knd-icon-button-size, 44px);
  --knd-login-icon-bg: var(--knd-icon-button-bg, #ffffff);
  --knd-login-icon-color: var(--knd-icon-button-color, currentColor);
  --knd-login-icon-border-width: var(--knd-icon-button-border-width, 1px);
  --knd-login-icon-border-color: var(--knd-icon-button-border-color, var(--knd-color-border, #d7e7e4));
  --knd-login-icon-radius: var(--knd-icon-button-radius, 999px);
  --knd-login-icon-shadow: var(--knd-icon-button-shadow, none);
  --knd-login-icon-hover-bg: var(--knd-icon-button-hover-bg, #f7f8f8);
  --knd-login-icon-hover-color: var(--knd-icon-button-hover-color, currentColor);
  --knd-login-icon-hover-border-color: var(--knd-icon-button-hover-border-color, var(--knd-login-icon-border-color));
  --knd-login-icon-hover-shadow: 0 10px 30px rgb(15 23 42 / 8%);
  --knd-login-label-size: var(--knd-header-action-font-size, .9rem);
  --knd-login-label-weight: var(--knd-header-action-font-weight, 600);
  --knd-login-label-min-width: var(--knd-icon-button-size, 44px);
  --knd-login-label-padding-x: var(--knd-header-action-padding-x, 13px);
  --knd-login-label-radius: var(--knd-icon-button-radius, 999px);
  --knd-login-account-menu-offset-y: 2px;
  --knd-login-account-menu-z-index: 10060;
  --knd-login-account-menu-min-width: 180px;
  --knd-login-account-menu-padding: 6px;
  --knd-login-account-menu-bg: #ffffff;
  --knd-login-account-menu-color: var(--knd-color-text, #111827);
  --knd-login-account-menu-border: 1px solid var(--knd-color-border, #d7e7e4);
  --knd-login-account-menu-radius: var(--knd-radius-dropdown, var(--knd-radius-md, 16px));
  --knd-login-account-menu-shadow: var(--knd-shadow-dropdown, 0 18px 45px rgb(0 0 0 / 12%));
  --knd-login-account-menu-mobile-shadow: none;
  --knd-login-account-menu-item-min-height: 38px;
  --knd-login-account-menu-item-padding-y: 8px;
  --knd-login-account-menu-item-padding-x: 10px;
  --knd-login-account-menu-item-radius: var(--knd-radius-sm, 10px);
  --knd-login-account-menu-item-color: currentColor;
  --knd-login-account-menu-item-font-weight: 600;
  --knd-login-account-menu-item-hover-bg: var(--knd-color-surface, #f7f8f8);
  --knd-login-account-menu-item-hover-color: var(--knd-color-primary, currentColor);
  --knd-login-logout-color: var(--knd-color-secondary, currentColor);
  --knd-label-font-weight: 600;
  --knd-payment-option-logo-height: 22px;
  --knd-payment-option-logo-max-width: 80px;
  --knd-page-footer-gap: clamp(36px, 5vw, 64px);
  --knd-dropdown-bg: var(--knd-menu-dropdown-bg, var(--knd-surface-card-bg, #ffffff));
  --knd-dropdown-text: var(--knd-menu-dropdown-color, var(--knd-surface-card-color, var(--knd-color-text, #111827)));
  --knd-dropdown-border: var(--knd-menu-dropdown-border-width, var(--knd-surface-card-border-width, 1px)) solid var(--knd-menu-dropdown-border-color, var(--knd-surface-card-border-color, var(--knd-color-border, #d7e7e4)));
  --knd-dropdown-radius: var(--knd-menu-dropdown-radius, var(--knd-surface-card-radius, 20px));
  --knd-dropdown-shadow: var(--knd-menu-dropdown-shadow, var(--knd-surface-card-shadow, 0 18px 55px rgb(15 23 42 / 7%)));
  --knd-dropdown-hover-bg: var(--knd-menu-dropdown-hover-bg, var(--knd-color-surface, #f7f8f8));
  --knd-dropdown-hover-text: var(--knd-menu-dropdown-link-hover-color, var(--knd-color-primary));
  --knd-dropdown-item-gap: var(--knd-menu-dropdown-item-gap, .65rem);
  --knd-dropdown-title-font-size: var(--knd-menu-dropdown-title-font-size, inherit);
  --knd-dropdown-title-transform: var(--knd-menu-dropdown-title-transform, none);
  --knd-dropdown-sub-font-size: var(--knd-menu-dropdown-sub-font-size, .92em);
  --knd-dropdown-sub-transform: var(--knd-menu-dropdown-sub-transform, none);
  --knd-dropdown-sub-prefix: var(--knd-menu-dropdown-sub-prefix, "");
  --knd-form-input-bg: #ffffff;
  --knd-form-input-color: var(--knd-color-text);
  --knd-form-input-border-color: var(--knd-color-border);
  --knd-form-input-border-width: 1px;
  --knd-form-input-radius: var(--knd-radius-md);
  --knd-form-input-height: 44px;
  --knd-form-label-color: var(--knd-color-text);
  --knd-alert-bg: var(--knd-color-surface);
  --knd-alert-color: var(--knd-color-text);
  --knd-alert-border-color: var(--knd-color-border);
  --knd-alert-border-width: 1px;
  --knd-alert-radius: var(--knd-surface-card-radius, 18px);
  --knd-alert-shadow: var(--knd-surface-card-shadow, 0 18px 55px rgb(15 23 42 / 7%));
  --knd-alert-padding-y: .95rem;
  --knd-alert-padding-x: 1rem;
  --knd-alert-success-bg: color-mix(in srgb, var(--knd-color-primary) 7%, #ffffff);
  --knd-alert-success-color: var(--knd-color-text);
  --knd-alert-success-border-color: color-mix(in srgb, var(--knd-color-primary) 28%, var(--knd-color-border));
  --knd-alert-info-bg: color-mix(in srgb, var(--knd-color-primary) 7%, #ffffff);
  --knd-alert-info-color: var(--knd-color-text);
  --knd-alert-info-border-color: color-mix(in srgb, var(--knd-color-primary) 28%, var(--knd-color-border));
  --knd-alert-warning-bg: color-mix(in srgb, var(--knd-color-accent) 8%, #ffffff);
  --knd-alert-warning-color: var(--knd-color-text);
  --knd-alert-warning-border-color: color-mix(in srgb, var(--knd-color-accent) 24%, var(--knd-color-border));
  --knd-alert-error-bg: color-mix(in srgb, #dc2626 7%, #ffffff);
  --knd-alert-error-color: var(--knd-color-text);
  --knd-alert-error-border-color: color-mix(in srgb, #dc2626 28%, var(--knd-color-border));
  --knd-surface-card-bg: var(--knd-shop-surface-bg, #ffffff);
  --knd-surface-card-color: var(--knd-shop-surface-color, var(--knd-color-text, #111827));
  --knd-surface-card-border-width: var(--knd-shop-surface-border-width, 1px);
  --knd-surface-card-border-color: var(--knd-shop-surface-border-color, var(--knd-color-border, #d7e7e4));
  --knd-surface-card-radius: var(--knd-radius-card, var(--knd-radius-block, 24px));
  --knd-surface-card-shadow: var(--knd-shop-surface-shadow, var(--knd-shadow-card, none));
  --knd-surface-card-padding: var(--knd-shop-surface-padding, clamp(18px, 2.2vw, 28px));
  --knd-surface-card-padding-mobile: 18px;
  --knd-list-card-bg: var(--knd-surface-card-bg, #ffffff);
  --knd-list-card-color: var(--knd-surface-card-color, var(--knd-color-text, #111827));
  --knd-list-card-border-width: var(--knd-surface-card-border-width, 1px);
  --knd-list-card-border-color: var(--knd-surface-card-border-color, var(--knd-color-border, #d7e7e4));
  --knd-list-card-radius: var(--knd-surface-card-radius, var(--knd-radius-card, 16px));
  --knd-list-card-shadow: var(--knd-surface-card-shadow, 0 14px 40px rgb(15 23 42 / 6%));
  --knd-list-card-divider-color: var(--knd-list-card-border-color);
  --knd-list-card-title-padding: 20px 18px;
  --knd-list-card-title-font-size: 24px;
  --knd-list-card-title-font-weight: 700;
  --knd-list-card-item-min-height: 48px;
  --knd-list-card-item-padding-y: 12px;
  --knd-list-card-item-padding-x: 18px;
  --knd-list-card-item-gap: 12px;
  --knd-list-card-item-font-size: 16px;
  --knd-list-card-item-font-weight: 400;
  --knd-list-card-item-hover-bg: var(--knd-color-surface, #f6fbfa);
  --knd-list-card-item-hover-color: var(--knd-color-text, #111827);
  --knd-product-thumb-image-size: 84px;
  --knd-product-thumb-gap: 14px;
  --knd-product-thumb-padding: 14px;
  --knd-product-thumb-min-height: 156px;
  --knd-product-thumb-actions-margin-top: 1rem;
  --knd-product-thumb-excerpt-margin-top: .45rem;
  --knd-product-thumb-excerpt-color: var(--knd-color-muted, #667085);
  --knd-product-thumb-excerpt-font-size: .875rem;
  --knd-product-thumb-radius: 16px;
  --knd-product-thumb-name-font-size: 1rem;
  --knd-product-thumb-name-font-weight: 600;
  --knd-product-thumb-price-color: var(--knd-color-text, #111827);
  --knd-product-thumb-price-font-size: 1.05rem;
  --knd-product-thumb-price-font-weight: 600;
  --knd-product-thumb-action-gap: .55rem;
  --knd-product-info-inner-bg: var(--knd-color-surface, #f6fbfa);
  --knd-product-info-inner-padding: 18px;
  --knd-product-brand-logo-size: 104px;
  --knd-product-brand-gap: 18px;
  --knd-product-main-media-column: 1fr;
  --knd-product-main-info-column: 1fr;
  --knd-product-main-stack-gap: var(--knd-product-page-grid-gap, 32px);
  --knd-quantity-control-border-width: 1px;
  --knd-quantity-control-border-color: var(--knd-color-border, #d7e7e4);
  --knd-quantity-control-radius: 0;
  --knd-quantity-control-bg: #ffffff;
  --knd-quantity-control-height: 38px;
  --knd-quantity-button-size: 38px;
  --knd-quantity-button-bg: #ffffff;
  --knd-quantity-button-color: var(--knd-color-text, #111827);
  --knd-quantity-button-border-width: 1px;
  --knd-quantity-button-border-color: var(--knd-color-border, #d7e7e4);
  --knd-quantity-button-radius: 0;
  --knd-quantity-button-shadow: none;
  --knd-quantity-button-hover-bg: var(--knd-color-surface, #f7f8f8);
  --knd-quantity-button-hover-color: var(--knd-color-text, #111827);
  --knd-quantity-button-hover-border-color: var(--knd-quantity-control-border-color, var(--knd-color-border, #d7e7e4));
  --knd-quantity-input-bg: #ffffff;
  --knd-quantity-input-color: var(--knd-color-text, #111827);
  --knd-quantity-input-border-color: var(--knd-color-border, #d7e7e4);
  --knd-quantity-input-radius: 0;
  --knd-quantity-input-width: 42px;
  --knd-quantity-input-font-weight: 500;
  --knd-campaign-bg: var(--knd-page-bg, var(--knd-shop-page-bg, var(--knd-color-background, #ffffff)));
  --knd-campaign-section-padding-y: 0;
  --knd-campaign-section-padding-x: 0;
  --knd-campaign-surface: var(--knd-surface-card-bg, var(--knd-color-surface, #f7f8f8));
  --knd-campaign-card-bg: var(--knd-surface-card-bg, #ffffff);
  --knd-campaign-text: var(--knd-color-text, #111827);
  --knd-campaign-muted: var(--knd-shop-muted-color, var(--knd-color-muted, #6b7280));
  --knd-campaign-primary: var(--knd-color-primary, #007f79);
  --knd-campaign-secondary: var(--knd-color-secondary, #0f766e);
  --knd-campaign-accent: var(--knd-color-accent, #f59e0b);
  --knd-campaign-border: var(--knd-surface-card-border-color, var(--knd-color-border, #d7e7e4));
  --knd-campaign-radius: var(--knd-surface-card-radius, var(--knd-radius-md, 8px));
  --knd-campaign-radius-lg: var(--knd-surface-card-radius, var(--knd-radius-lg, 16px));
  --knd-campaign-shadow: var(--knd-surface-card-shadow, var(--knd-shadow-card, 0 8px 30px rgb(0 0 0 / 8%)));
  --knd-campaign-widget-gap: 18px;
  --knd-campaign-widget-slide-width: min(86vw, 420px);
  --knd-campaign-product-sticker-max-width: min(92%, 360px);
  --knd-campaign-product-sticker-image-max-width: 100%;
  --knd-campaign-product-sticker-top: 14px;
  --knd-campaign-product-sticker-x: 14px;
  --knd-campaign-product-item-bg: color-mix(in srgb, var(--knd-campaign-primary, var(--knd-color-primary, #007f79)) 7%, #ffffff);
  --knd-campaign-product-item-color: var(--knd-campaign-text, var(--knd-color-text, #111827));
  --knd-campaign-product-item-border-color: color-mix(in srgb, var(--knd-campaign-primary, var(--knd-color-primary, #007f79)) 16%, var(--knd-campaign-border, var(--knd-color-border, #d7e7e4)));
  --knd-campaign-product-item-hover-bg: color-mix(in srgb, var(--knd-campaign-primary, var(--knd-color-primary, #007f79)) 10%, #ffffff);
  --knd-campaign-product-item-hover-color: var(--knd-campaign-primary, var(--knd-color-primary, #007f79));
  --knd-campaign-product-item-hover-border-color: var(--knd-campaign-primary, var(--knd-color-primary, #007f79));
  --knd-campaign-product-item-radius: var(--knd-campaign-radius, var(--knd-radius-md, 8px));
  --knd-campaign-product-item-padding-y: .85rem;
  --knd-campaign-product-item-padding-x: 1rem;
  --knd-campaign-product-plus-color: var(--knd-campaign-primary, var(--knd-color-primary, #007f79));
  --knd-account-bg: var(--knd-page-bg, var(--knd-shop-page-bg, #ffffff));
  --knd-account-content-width: var(--knd-container-width, 1320px);
  --knd-account-page-padding-y: clamp(24px, 4vw, 56px);
  --knd-account-card-bg: var(--knd-list-card-bg, var(--knd-surface-card-bg, #ffffff));
  --knd-account-card-color: var(--knd-list-card-color, var(--knd-color-text, #111827));
  --knd-account-card-border-width: var(--knd-list-card-border-width, 1px);
  --knd-account-card-border-color: var(--knd-list-card-border-color, var(--knd-color-border, #d7e7e4));
  --knd-account-card-radius: var(--knd-list-card-radius, var(--knd-radius-card, 16px));
  --knd-account-card-shadow: var(--knd-list-card-shadow, 0 14px 40px rgb(15 23 42 / 6%));
  --knd-account-card-padding: var(--knd-surface-card-padding, clamp(22px, 2.6vw, 34px));
  --knd-account-card-padding-mobile: var(--knd-surface-card-padding-mobile, 18px);
  --knd-account-title-color: var(--knd-color-text, #111827);
  --knd-account-title-font-size: clamp(28px, 2.4vw, 38px);
  --knd-account-title-font-weight: var(--knd-heading-font-weight, 700);
  --knd-account-text-color: var(--knd-color-text, #111827);
  --knd-account-muted-color: var(--knd-shop-muted-color, #64748b);
  --knd-account-link-color: var(--knd-color-primary, #007f79);
  --knd-account-link-hover-color: var(--knd-color-secondary, #0f766e);
  --knd-account-input-bg: var(--knd-input-bg, #ffffff);
  --knd-account-input-color: var(--knd-input-color, var(--knd-color-text, #111827));
  --knd-account-input-border-color: var(--knd-input-border-color, var(--knd-color-border, #d7e7e4));
  --knd-account-input-focus-border-color: var(--knd-input-focus-border-color, var(--knd-color-primary, #007f79));
  --knd-account-input-radius: var(--knd-radius-input, var(--knd-radius-button, 10px));
  --knd-account-input-min-height: var(--knd-input-min-height, 48px);
  --knd-account-input-padding-x: var(--knd-input-padding-x, 14px);
  --knd-account-button-bg: var(--knd-button-bg, var(--knd-color-primary, #007f79));
  --knd-account-button-color: var(--knd-button-color, #ffffff);
  --knd-account-button-border-color: var(--knd-button-border-color, var(--knd-color-primary, #007f79));
  --knd-account-button-hover-bg: var(--knd-button-hover-bg, var(--knd-color-secondary, #0f766e));
  --knd-account-button-hover-color: var(--knd-button-hover-color, #ffffff);
  --knd-account-button-hover-border-color: var(--knd-button-hover-border-color, var(--knd-color-secondary, #0f766e));
  --knd-account-button-radius: var(--knd-button-border-radius, var(--knd-radius-button, 10px));
  --knd-account-button-min-height: var(--knd-button-min-height, 44px);
  --knd-account-button-font-weight: var(--knd-button-font-weight, 600);
  --knd-account-sidebar-bg: var(--knd-list-card-bg);
  --knd-account-sidebar-color: var(--knd-list-card-color);
  --knd-account-sidebar-border-width: var(--knd-list-card-border-width);
  --knd-account-sidebar-border-color: var(--knd-list-card-border-color);
  --knd-account-sidebar-radius: var(--knd-list-card-radius);
  --knd-account-sidebar-shadow: var(--knd-list-card-shadow);
  --knd-account-sidebar-divider-color: var(--knd-list-card-divider-color);
  --knd-account-sidebar-title-padding: var(--knd-list-card-title-padding);
  --knd-account-sidebar-title-size: var(--knd-list-card-title-font-size);
  --knd-account-sidebar-title-weight: var(--knd-list-card-title-font-weight);
  --knd-account-sidebar-link-min-height: var(--knd-list-card-item-min-height);
  --knd-account-sidebar-link-padding-y: var(--knd-list-card-item-padding-y);
  --knd-account-sidebar-link-padding-x: var(--knd-list-card-item-padding-x);
  --knd-account-sidebar-link-gap: var(--knd-list-card-item-gap);
  --knd-account-sidebar-link-size: var(--knd-list-card-item-font-size);
  --knd-account-sidebar-link-weight: var(--knd-list-card-item-font-weight);
  --knd-account-sidebar-active-bg: var(--knd-list-card-item-hover-bg);
  --knd-account-sidebar-active-color: var(--knd-list-card-item-hover-color);
  --knd-account-sidebar-display: block;
  --knd-account-links-grid-min: 220px;
  --knd-primary: var(--knd-color-primary, #007f79);
  --knd-border-color: var(--knd-color-border, #d7e7e4);
  --knd-link-color: var(--knd-color-text, #111827);
  --knd-link-hover-color: var(--knd-color-primary, #007f79);
  --knd-neutral-0: #ffffff;
  --knd-modal-overlay: rgb(15 23 42 / 52%);
  --knd-modal-z: 9999;
  --knd-product-commerce-gap: 12px;
  --knd-product-commerce-margin-top: 14px;
  --knd-product-delivery-line-gap: 8px;
  --knd-product-delivery-line-margin: 0;
  --knd-product-delivery-line-font-size: .96rem;
  --knd-product-delivery-line-font-weight: 600;
  --knd-product-trust-margin-top: 14px;
  --knd-product-trust-section-padding-y: 12px;
  --knd-product-trust-divider-color: var(--knd-color-border, #d7e7e4);
  --knd-product-trust-row-gap: clamp(3px, 1.4cqw, 10px);
  --knd-product-trust-item-gap: clamp(2px, .7cqw, 7px);
  --knd-product-trust-item-font-size: clamp(8px, 2.4cqw, 13px);
  --knd-product-trust-title-font-size: 1rem;
  --knd-product-trust-icon-size: 20px;
  --knd-product-trust-responsive-icon-size: clamp(11px, 4cqw, 20px);
  --knd-product-payment-row-gap: clamp(2px, 1.2cqw, 8px);
  --knd-product-payment-item-min-height: clamp(26px, 7cqw, 36px);
  --knd-product-payment-item-padding-y: 4px;
  --knd-product-payment-item-padding-x: clamp(2px, 1.2cqw, 8px);
  --knd-product-payment-icon-height: clamp(14px, 5cqw, 24px);
  --knd-product-reviews-margin: clamp(24px, 4vw, 48px) 0;
  --knd-product-reviews-padding: var(--knd-surface-card-padding, clamp(22px, 2.6vw, 34px));
  --knd-wishlist-card-gap: 18px;
  --knd-wishlist-page-gap: 22px;
  --knd-checkout-review-card-margin-y: 18px;
  --knd-checkout-review-card-padding: 18px;
  --knd-checkout-review-card-bg: var(--knd-surface-card-bg, #ffffff);
  --knd-checkout-review-card-border-width: 1px;
  --knd-checkout-review-card-border-color: var(--knd-color-border, #d7e7e4);
  --knd-checkout-review-card-radius: var(--knd-radius-card, 16px);
  --knd-checkout-review-card-shadow: none;
  --knd-alert-close-size: 34px;
  --knd-alert-close-radius: 10px;
  --knd-alert-close-bg: #ffffff;
  --knd-alert-close-color: var(--knd-color-text, #111827);
  --knd-alert-close-border-color: var(--knd-color-border, #dbe8ff);
  --knd-material-icons-mode: font;
  --knd-filter-indent: 5px;
  --knd-filter-heading-font-size: 1rem;
  --knd-filter-heading-line-height: 1.35;
  --knd-filter-heading-margin-top: 1rem;
  --knd-filter-heading-margin-bottom: .5rem;
  --knd-filter-title-font-size: .95rem;
  --knd-filter-title-font-weight: 700;
  --knd-filter-option-gap: .5rem;
  --knd-filter-control-size: 16px;
  --knd-image-strip-gap: clamp(8px, 1vw, 16px);
}
/* =========================================================
   KNDev customer tokens: end
   ========================================================= */

/* =========================================================
   CUSTOMER CUSTOM CSS START
   Write shop-specific selectors below this line.
   This area is preserved by KNDev System updates.
   ========================================================= */

/* KNDev protected customer CSS overrides. */
.page:not(body) {
    padding-bottom: 0!important;
}

body.knd-header-layout-active .knd-theme-header, body.knd-header-layout-active header[data-knd-header], body.knd-header-layout-active #header, body.knd-header-layout-active header.header {
  background: transparent!important;
}

.knd-sticky-contact__item--search-tool {
  display: none;
}

.knd-footer-contact__meta .knd-footer-contact__meta-link,
.knd-footer-contact__meta .knd-footer-contact__meta-icon,
.knd-footer-contact__links a {
  color: #fff!important;
}

.knd-footer-bottom__credit a {
  color: #000!important;
}
 
/* =====================================================
   KNDEV CUSTOMER HEADER CONFIGURATION

   Redigér kun værdierne i dette første afsnit.
===================================================== */

html,
body.kndev-theme {
  --knd-customer-header-desktop-bg: transparent;
  --knd-customer-header-desktop-text: #0b2238;
  --knd-customer-header-desktop-icon: #0b2238;

  --knd-customer-header-desktop-sticky-bg: ##2c495b;
  --knd-customer-header-desktop-sticky-text: #ffffff;
  --knd-customer-header-desktop-sticky-icon: #ffffff;

  --knd-customer-header-mobile-bg: transparent;
  --knd-customer-header-mobile-text: #0b2238;
  --knd-customer-header-mobile-icon: #0b2238;

  --knd-customer-header-mobile-sticky-bg: ##2c495b;
  --knd-customer-header-mobile-sticky-text: #ffffff;
  --knd-customer-header-mobile-sticky-icon: #ffffff;

  --knd-customer-header-hover: #f59e0b;
}


/* =====================================================
   DESKTOP MAPPING
===================================================== */

@media (min-width: 992px) {
  body {
    --knd-customer-header-current-bg:
      var(--knd-customer-header-desktop-bg);

    --knd-customer-header-current-text:
      var(--knd-customer-header-desktop-text);

    --knd-customer-header-current-icon:
      var(--knd-customer-header-desktop-icon);
  }

  body.knd-hf-stuck {
    --knd-customer-header-current-bg:
      var(--knd-customer-header-desktop-sticky-bg);

    --knd-customer-header-current-text:
      var(--knd-customer-header-desktop-sticky-text);

    --knd-customer-header-current-icon:
      var(--knd-customer-header-desktop-sticky-icon);
  }

  html.kndev-theme,
  body.kndev-theme {
    --knd-hf-sticky-bg:
      var(--knd-customer-header-desktop-sticky-bg) !important;

    --knd-hf-sticky-text:
      var(--knd-customer-header-desktop-sticky-text) !important;
  }
}


/* =====================================================
   MOBILE MAPPING
===================================================== */

@media (max-width: 991.98px) {
  body {
    --knd-customer-header-current-bg:
      var(--knd-customer-header-mobile-bg);

    --knd-customer-header-current-text:
      var(--knd-customer-header-mobile-text);

    --knd-customer-header-current-icon:
      var(--knd-customer-header-mobile-icon);
  }

  body.knd-hf-stuck {
    --knd-customer-header-current-bg:
      var(--knd-customer-header-mobile-sticky-bg);

    --knd-customer-header-current-text:
      var(--knd-customer-header-mobile-sticky-text);

    --knd-customer-header-current-icon:
      var(--knd-customer-header-mobile-sticky-icon);
  }

  html.kndev-theme,
  body.kndev-theme {
    --knd-hf-sticky-bg:
      var(--knd-customer-header-mobile-sticky-bg) !important;

    --knd-hf-sticky-text:
      var(--knd-customer-header-mobile-sticky-text) !important;
  }
}


/* =====================================================
   IMPLEMENTATION – ALMINDELIG HEADER
===================================================== */

body:not(.knd-hf-stuck) #header :is(
  .knd-theme-header__main,
  .knd-theme-header__nav-full,
  .knd-zone--main,
  .knd-zone--nav-fullwidth
) {
  background-color:
    var(--knd-customer-header-current-bg) !important;

  color:
    var(--knd-customer-header-current-text) !important;
}


/* =====================================================
   IMPLEMENTATION – STICKY HEADER

   Gradienten dækker den inline-baggrund, som det
   nuværende KNDev-script skriver på desktop.
===================================================== */

body.knd-hf-stuck .knd-hf-sticky-active {
  background-image: linear-gradient(
    var(--knd-customer-header-current-bg),
    var(--knd-customer-header-current-bg)
  ) !important;
}


/* =====================================================
   HEADERTEKST
===================================================== */

body #header .knd-hf-sticky-candidate > :is(
  .container,
  .container-md,
  .container-fluid
) {
  color:
    var(--knd-customer-header-current-text) !important;
}


/* =====================================================
   DESKTOP HOVEDMENU

   Kun øverste niveau ændres. Dropdown-menuerne beholder
   deres normale baggrund og mørke tekst.
===================================================== */

body #header
.knd-menu--desktop
.knd-menu__list--level-0
> .knd-menu__item--level-0
> .knd-menu__link {
  color:
    var(--knd-customer-header-current-text) !important;

  -webkit-text-fill-color:
    var(--knd-customer-header-current-text) !important;
}

body #header
.knd-menu--desktop
.knd-menu__list--level-0
> .knd-menu__item--level-0
> .knd-menu__link:hover {
  color:
    var(--knd-customer-header-hover) !important;

  -webkit-text-fill-color:
    var(--knd-customer-header-hover) !important;
}


/* =====================================================
   HEADERIKONER
===================================================== */

body #header :is(
  .knd-menu__toggle-main,
  .knd-icon-button,
  .knd-cartdropdown-trigger,
  .knd-searchpro-trigger,
  .header-block__action-btn
) {
  color:
    var(--knd-customer-header-current-icon) !important;
}

body #header :is(
  .knd-menu__toggle-main,
  .knd-icon-button,
  .knd-cartdropdown-trigger,
  .knd-searchpro-trigger,
  .header-block__action-btn
) svg {
  color:
    var(--knd-customer-header-current-icon) !important;
}


/* Pil ved desktop-undermenu */
body #header
.knd-menu--desktop
.knd-menu__list--level-0
> .knd-menu__item--level-0
> .knd-menu__toggle-sub {
  color:
    var(--knd-customer-header-current-icon) !important;
}

/* =========================================================
   KNDev contact section

   Generic theme component. Shop-specific appearance is set
   through --knd-contact-* and the existing global KNDev tokens.
   Buttons deliberately use the global .btn/.btn-primary rules.
   ========================================================= */


.card:not(.product-miniature__inner):not(.knd-contactform--footer-context .card) {
  background: transparent!important;
  border: none!important;
}
.knd-form label {
  color: #fff!important;
}

.knd-fullbleed {
  position: relative;
  left: 50%;
  width: 100vw;
  max-width: 100vw;
  margin-right: -50vw;
  margin-left: -50vw;
}

.knd-contact {
  --knd-contact-bg: var(--knd-sticky-contact-item-bg);
  --knd-contact-bg-deep: color-mix(
    in srgb,
    var(--knd-contact-bg) 82%,
    #10160e
  );
  --knd-contact-color: #ffffff;
  --knd-contact-muted-color: rgb(255 255 255 / 78%);
  --knd-contact-accent-color: var(--knd-color-accent, #f0cdbf);
  --knd-contact-brand-color: var(--knd-color-primary, #a23d21);
  --knd-contact-grid-gap: clamp(2.5rem, 6vw, 6rem);
  --knd-contact-heading-size: clamp(2rem, 4vw, 3.75rem);
  --knd-contact-form-bg: var(--knd-card-bg, #ffffff);
  --knd-contact-form-color: var(--knd-color-text, #252a22);
  --knd-contact-form-radius: var(--knd-radius-card, var(--knd-radius-lg, 16px));
  --knd-contact-form-shadow: var(--knd-shadow-panel, 0 20px 60px rgb(0 0 0 / 18%));
  --knd-contact-form-padding: clamp(1.5rem, 4vw, 2.75rem);
  --knd-contact-icon-size: 48px;

  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(3.75rem, 7vw, 6.5rem) 0;
  color: var(--knd-contact-color);
  background:
    radial-gradient(
      circle at 5% 55%,
      color-mix(in srgb, var(--knd-contact-brand-color) 32%, transparent),
      transparent 24%
    ),
    linear-gradient(
      110deg,
      var(--knd-contact-bg-deep) 0%,
      var(--knd-contact-bg) 54%,
      color-mix(in srgb, var(--knd-contact-bg) 84%, #182117) 100%
    );
}

.knd-contact::before {
  position: absolute;
  z-index: -1;
  top: -12%;
  bottom: -12%;
  left: -8vw;
  width: min(36vw, 520px);
  border-radius: 50%;
  background: repeating-radial-gradient(
    ellipse at center,
    transparent 0 8px,
    color-mix(in srgb, var(--knd-contact-accent-color) 12%, transparent) 9px 11px
  );
  content: "";
  opacity: .58;
  pointer-events: none;
}

.knd-contact > .container {
  position: relative;
  z-index: 1;
}

.knd-contactform__body {
  background: rgba(255,255,255,.1);
  border-radius: 1rem;
}

.knd-contact__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .82fr);
  gap: var(--knd-contact-grid-gap);
  align-items: center;
}

.knd-contact__content,
.knd-contact__form {
  min-width: 0;
}

.knd-contact__eyebrow {
  margin: 0 0 .75rem;
  color: var(--knd-contact-accent-color);
  font-size: .8125rem;
  font-weight: var(--knd-font-weight-bold, 800);
  letter-spacing: .12em;
  line-height: 1.35;
  text-transform: uppercase;
}

.knd-contact h2 {
  max-width: 760px;
  margin: 0;
  color: var(--knd-contact-color)!important;
  font-family: var(--knd-font-heading, inherit);
  font-size: var(--knd-contact-heading-size);
  font-weight: var(--knd-heading-font-weight, 700);
  letter-spacing: -.025em;
  line-height: var(--knd-line-height-tight, 1.08);
}

.knd-contact__lead {
  max-width: 720px;
  margin: 1rem 0 2rem;
  color: var(--knd-contact-muted-color)!important;
  font-size: clamp(1.05rem, 1.4vw, 1.2rem);
  line-height: 1.7;
}

.knd-contact__details {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem 1.5rem;
  margin: 0 0 clamp(2rem, 5vw, 3rem);
  font-style: normal;
}

.knd-contact__details span,
.knd-contact__details a {
  color: var(--knd-contact-color)!important;
  font-size: .95rem;
  line-height: 1.6;
}

.knd-contact__details a {
  text-decoration-color: color-mix(in srgb, var(--knd-contact-accent-color) 72%, transparent);
  text-decoration-thickness: 1px;
  text-underline-offset: .22em;
}

.knd-contact__details a:is(:hover, :focus-visible) {
  color: var(--knd-contact-accent-color);
}

.knd-contact__reasons {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1.25rem, 3vw, 2.25rem);
}

.knd-contact__reason {
  min-width: 0;
}

.knd-contact__icon {
  display: grid;
  width: var(--knd-contact-icon-size);
  height: var(--knd-contact-icon-size);
  margin-bottom: 1rem;
  place-items: center;
  border: 2px solid var(--knd-contact-accent-color);
  border-radius: 50%;
  color: var(--knd-contact-accent-color);
}

.knd-contact__icon svg {
  width: 24px;
  height: 24px;
  stroke: currentColor;
}

.knd-contact__reason h3 {
  margin: 0 0 .6rem;
  color: var(--knd-contact-color);
  font-family: var(--knd-font-heading, inherit);
  font-size: .8125rem;
  font-weight: var(--knd-font-weight-bold, 800);
  letter-spacing: .06em;
  line-height: 1.35;
  text-transform: uppercase;
}

.knd-contact__reason p {
  margin: 0;
  color: var(--knd-contact-muted-color);
  font-size: .875rem;
  line-height: 1.65;
}

.knd-contact__form {
  padding: var(--knd-contact-form-padding);
  border: 1px solid color-mix(in srgb, var(--knd-color-border, #d8cbb8) 72%, transparent);
  border-radius: var(--knd-contact-form-radius);
  color: var(--knd-contact-form-color);
  background: var(--knd-contact-form-bg);
  box-shadow: var(--knd-contact-form-shadow);
}

.knd-contact__form-header {
  margin-bottom: 1.5rem;
}

.knd-contact__form-header h3 {
  margin: 0 0 .45rem;
  color: var(--knd-color-dark, #3f4635);
  font-family: var(--knd-font-heading, inherit);
  font-size: clamp(1.4rem, 2.2vw, 2rem);
  font-weight: var(--knd-heading-font-weight, 700);
  line-height: var(--knd-line-height-tight, 1.1);
}

.knd-contact__form-header p {
  margin: 0;
  color: var(--knd-color-muted, #625c50);
  line-height: 1.6;
}

.knd-contact__form .contact-form,
.knd-contact__form .contact-rich {
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--knd-contact-form-color);
  background: transparent;
  box-shadow: none;
}

.knd-contact__form .contact-form > h3,
.knd-contact__form .contact-form .form-control-comment,
.knd-contact__form .contact-rich {
  display: none;
}

.knd-contact__form .form-group,
.knd-contact__form .form-group.row {
  display: block;
  margin: 0 0 .85rem;
}

.knd-contact__form .form-group > [class*="col-"],
.knd-contact__form .form-group.row > [class*="col-"] {
  display: block;
  width: 100%;
  max-width: none;
  padding: 0;
}

.knd-contact__form label {
  display: block;
  margin: 0 0 .4rem;
  color: var(--knd-contact-form-color);
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.4;
}

.knd-contact__form :is(input, select, textarea).form-control {
  width: 100%;
  min-height: var(--knd-input-min-height, 48px);
  padding: var(--knd-input-padding-y, 12px) var(--knd-input-padding-x, 14px);
  border: 1px solid var(--knd-input-border-color, var(--knd-color-border, #d8cbb8));
  border-radius: var(--knd-input-border-radius, var(--knd-radius-input, 4px));
  color: var(--knd-input-color, var(--knd-color-text, #252a22));
  background: var(--knd-input-bg, #ffffff);
  font-family: var(--knd-font-body, inherit);
  font-size: var(--knd-input-font-size, 1rem);
  font-weight: var(--knd-body-font-weight, 400);
}

.knd-contact__form textarea.form-control {
  min-height: 132px;
  resize: vertical;
}

.knd-contact__form :is(input, select, textarea).form-control:focus {
  border-color: var(--knd-input-focus-border-color, var(--knd-color-primary, #a23d21));
  outline: 0;
  box-shadow: var(--knd-input-focus-shadow, 0 0 0 1px var(--knd-color-primary, #a23d21));
}

.knd-contact__form .form-footer {
  margin-top: 1.25rem;
  text-align: left;
}

@media (max-width: 991px) {
  .knd-contact__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .knd-contact__form {
    width: min(100%, 760px);
  }
}

@media (max-width: 767px) {
  .knd-contact {
    padding-block: clamp(3rem, 12vw, 4.5rem);
  }

  .knd-contact::before {
    top: auto;
    right: -32vw;
    bottom: -10%;
    left: auto;
    width: 78vw;
    height: 78vw;
  }

  .knd-contact__reasons {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
  }

  .knd-contact__reason {
    display: grid;
    grid-template-columns: var(--knd-contact-icon-size) minmax(0, 1fr);
    column-gap: 1rem;
  }

  .knd-contact__icon {
    grid-row: 1 / span 2;
    margin: 0;
  }
}

@media (max-width: 575px) {
  .knd-contact__details {
    display: grid;
    gap: .55rem;
  }

  .knd-contact__form {
    padding: 1.25rem;
    border-radius: var(--knd-radius-md, 8px);
  }
}

/* =========================================================
   Jyderupfejeren – customer tokens
   ========================================================= */
:root {
  --jfr-bg: var(--knd-color-background);
  --jfr-navy: var(--knd-color-primary);
  --jfr-gold: var(--knd-color-accent);
  --jfr-cream: var(--knd-color-surface);
  --jfr-copy: #17283a;
  --jfr-muted: #5e6975;
  --jfr-line: #ded8ce;
  --jfr-white: #ffffff;
  --jfr-section-space: clamp(58px, 7vw, 104px);
  --jfr-grid-gap: clamp(28px, 5vw, 72px);
  --jfr-hero-height: clamp(620px, 68vw, 860px);
  --jfr-hero-position: 63% center;
  --jfr-heading-xl: clamp(3rem, 5.5vw, 5.75rem);
  --jfr-heading-lg: clamp(2.2rem, 3.4vw, 3.75rem);
  --jfr-heading-sm: clamp(1.55rem, 2.5vw, 2.35rem);
  --jfr-contact-bg: #092239;
  --jfr-contact-color: #ffffff;
  --jfr-icon-size: 48px;
  --jfr-transition: 180ms ease;
}

.page-content--home {
    gap: 0!important;
}

.card.h-100.knd-contactform__card {
    background: transparent !important;
    border: 0 !important;
}

/* =========================================================
   Jyderupfejeren – shared block styles
   ========================================================= */
.jfr-fullbleed {
  position: relative;
  left: 50%;
  width: 100vw;
  margin-left: -50vw;
}

.jfr-container {
  width: min(100% - (2 * var(--knd-container-gutter)), var(--knd-container-width));
  margin-inline: auto;
}

.jfr-eyebrow {
  margin: 0 0 1rem;
  color: var(--jfr-gold);
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .12em;
  line-height: 1.2;
  text-transform: uppercase;
}

.jfr-heading-rule {
  display: block;
  width: 46px;
  height: 2px;
  margin: 1rem 0 1.6rem;
  background: var(--jfr-gold);
}

.jfr-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  min-height: var(--knd-button-min-height);
  padding: var(--knd-button-padding-y) var(--knd-button-padding-x);
  border: 1px solid var(--knd-button-border-color);
  border-radius: var(--knd-button-border-radius);
  background: var(--knd-button-bg);
  color: var(--knd-button-color);
  font-size: var(--knd-button-font-size);
  font-weight: var(--knd-button-font-weight);
  letter-spacing: .02em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
  transition: background var(--jfr-transition), border-color var(--jfr-transition), transform var(--jfr-transition);
}

.jfr-button:hover,
.jfr-button:focus-visible {
  border-color: var(--knd-button-hover-border-color);
  background: var(--knd-button-hover-bg);
  color: var(--knd-button-hover-color);
  text-decoration: none;
  transform: translateY(-1px);
}

/* Hero */
.jfr-hero {
  min-height: var(--jfr-hero-height);
  overflow: hidden;
  background-color: var(--jfr-bg);
  background-image:
    linear-gradient(90deg, rgba(251, 248, 242, .98) 0%, rgba(251, 248, 242, .92) 25%, rgba(251, 248, 242, .38) 48%, rgba(251, 248, 242, 0) 67%),
    url("/img/cms/jyderupfejeren/hero.webp");
  background-position: center, var(--jfr-hero-position);
  background-repeat: no-repeat;
  background-size: cover;
}

.jfr-hero__inner {
  display: flex;
  align-items: center;
  min-height: var(--jfr-hero-height);
}

.jfr-hero__content {
  width: min(39rem, 48%);
  padding-block: clamp(72px, 9vw, 120px);
}

.jfr-hero h1 {
  margin: 0;
  color: var(--jfr-navy);
  font-family: var(--knd-font-heading);
  font-size: var(--jfr-heading-xl);
  font-weight: var(--knd-heading-font-weight);
  letter-spacing: -.035em;
  line-height: .98;
}

.jfr-hero h1 em {
  display: inline-block;
  margin-top: .15em;
  color: var(--jfr-gold);
  font-family: "Brush Script MT", "Segoe Script", cursive;
  font-size: 1.05em;
  font-weight: 400;
  letter-spacing: 0;
}

.jfr-hero__lead {
  max-width: 30rem;
  margin: 2rem 0;
  color: var(--jfr-copy);
  font-size: clamp(1rem, 1.25vw, 1.15rem);
  line-height: 1.8;
}

/* Benefits */
.jfr-benefits {
  padding: clamp(36px, 5vw, 64px) 0;
  background: var(--jfr-bg);
}

.jfr-benefits__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.jfr-benefit {
  position: relative;
  padding: 0 clamp(20px, 3vw, 48px);
  text-align: center;
}

.jfr-benefit + .jfr-benefit::before,
.jfr-service + .jfr-service::before {
  position: absolute;
  inset: 12% auto 12% 0;
  width: 1px;
  background: var(--jfr-line);
  content: "";
}

.jfr-benefit__icon,
.jfr-service > .material-icons {
  display: inline-grid;
  place-items: center;
  width: var(--jfr-icon-size);
  height: var(--jfr-icon-size);
  margin-bottom: 1rem;
  color: var(--jfr-navy);
  font-size: var(--jfr-icon-size);
  font-weight: 300;
}

.jfr-benefit h2,
.jfr-service h3 {
  margin: 0 0 .7rem;
  color: var(--jfr-navy);
  font-family: var(--knd-font-body);
  font-size: .86rem;
  font-weight: 800;
  letter-spacing: .01em;
  line-height: 1.35;
  text-transform: uppercase;
}

.jfr-benefit p,
.jfr-service p {
  margin: 0;
  color: var(--jfr-copy);
  font-size: .9rem;
  line-height: 1.65;
}

/* Local section */
.jfr-local {
  padding: var(--jfr-section-space) 0;
  background: var(--jfr-cream);
}

.jfr-local__grid {
  display: grid;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1.45fr);
  gap: var(--jfr-grid-gap);
  align-items: center;
}

.jfr-local__content h2,
.jfr-section-heading h2,
.jfr-contact h2 {
  margin: 0;
  color: var(--jfr-navy);
  font-family: var(--knd-font-heading);
  font-size: var(--jfr-heading-lg);
  font-weight: var(--knd-heading-font-weight);
  letter-spacing: -.025em;
  line-height: 1.08;
}

.jfr-local__content > p:not(.jfr-eyebrow) {
  max-width: 34rem;
  margin: 0 0 1.25rem;
  color: var(--jfr-copy);
  line-height: 1.8;
}

.jfr-local__content .jfr-button {
  margin-top: 1rem;
}

.jfr-local__visual {
  position: relative;
  min-height: 520px;
  padding-right: min(22%, 210px);
}

.jfr-local__photo {
  height: 480px;
  margin: 0;
  overflow: hidden;
  border: 10px solid var(--jfr-white);
  box-shadow: 0 20px 50px rgba(11, 34, 56, .16);
  transform: rotate(1.2deg);
}

.jfr-local__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 63% center;
}

.jfr-local__stamp {
  position: absolute;
  top: 42%;
  left: -34px;
  display: grid;
  place-items: center;
  width: 132px;
  aspect-ratio: 1;
  padding: 15px;
  border: 2px solid var(--jfr-gold);
  border-radius: 50%;
  background: rgba(251, 248, 242, .96);
  color: var(--jfr-gold);
  text-align: center;
  text-transform: uppercase;
  transform: rotate(-7deg);
}

.jfr-local__stamp span {
  font-size: .63rem;
  font-weight: 800;
  letter-spacing: .08em;
}

.jfr-local__stamp strong {
  font-family: var(--knd-font-heading);
  font-size: 1rem;
  line-height: 1.05;
}

.jfr-local__area {
  position: absolute;
  top: 22px;
  right: 0;
  width: min(27%, 210px);
  color: var(--jfr-navy);
}

.jfr-local__area > p {
  margin: 0 0 1.5rem;
  font-family: "Brush Script MT", "Segoe Script", cursive;
  font-size: clamp(1.3rem, 2.1vw, 2rem);
  line-height: 1.15;
  transform: rotate(-4deg);
}

.jfr-local__area ul {
  display: grid;
  gap: 1rem;
  margin: 0;
  padding: 1.2rem;
  border-radius: 48% 52% 43% 57%;
  background: rgba(213, 225, 232, .66);
  list-style: none;
}

.jfr-local__area li {
  display: flex;
  align-items: center;
  gap: .35rem;
  font-size: .72rem;
  font-weight: 800;
  text-transform: uppercase;
  margin-left: 2rem;
}

.jfr-local__area .material-icons {
  color: var(--jfr-navy);
  font-size: 1.2rem;
}

/* Services */
.jfr-services {
  padding: var(--jfr-section-space) 0;
  background: var(--jfr-bg);
}

.jfr-section-heading {
  margin-bottom: clamp(36px, 5vw, 62px);
  text-align: center;
}

.jfr-section-heading .jfr-heading-rule {
  margin-inline: auto;
}

.jfr-services__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.jfr-service {
  position: relative;
  padding: 0 clamp(12px, 1.5vw, 24px);
  text-align: center;
}



@media (max-width: 1100px) {
  :root {
    --jfr-hero-position: 68% center;
}

  .jfr-services__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 42px;
  }

  .jfr-service:nth-child(4)::before {
    display: none;
  }

  .jfr-local__visual {
    min-height: 470px;
    padding-right: 0;
  }

  .jfr-local__photo {
    height: 430px;
  }

  .jfr-local__area {
    display: none;
  }
}

@media (max-width: 767px) {
  :root {
    --jfr-hero-height: 700px;
    --jfr-heading-xl: clamp(2.75rem, 14vw, 4.1rem);
}

  .jfr-hero {
    background-image:
      linear-gradient(180deg, rgba(251, 248, 242, .98) 0%, rgba(251, 248, 242, .92) 36%, rgba(251, 248, 242, .25) 64%, rgba(251, 248, 242, 0) 100%),
      url("/img/cms/jyderupfejeren/hero.webp");
    background-position: center, 66% center;
  }

  .jfr-hero__inner {
    align-items: flex-start;
  }

  .jfr-hero__content {
    width: 100%;
    padding-top: 58px;
  }

  .jfr-hero__lead {
    max-width: 19rem;
    margin: 1.4rem 0;
    font-size: .95rem;
    line-height: 1.6;
  }

  .jfr-benefits__grid,
  .jfr-local__grid,
  .jfr-contact__grid {
    grid-template-columns: 1fr;
  }

  .jfr-benefits__grid {
    gap: 0;
  }

  .jfr-benefit {
    padding: 28px 0;
  }

  .jfr-benefit + .jfr-benefit::before {
    inset: 0 20% auto;
    width: auto;
    height: 1px;
  }

  .jfr-local__visual {
    min-height: 350px;
    margin-top: 1rem;
  }

  .jfr-local__photo {
    height: 340px;
    border-width: 7px;
  }

  .jfr-local__stamp {
    top: auto;
    bottom: -20px;
    left: -8px;
    width: 108px;
  }

  .jfr-services__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 36px;
  }

  .jfr-service:nth-child(odd)::before {
    display: none;
  }

  .jfr-service:nth-child(even)::before {
    display: block;
  }

  .jfr-contact__reasons {
    grid-template-columns: 1fr;
  }

  .jfr-contact__reasons article {
    display: grid;
    grid-template-columns: 48px 1fr;
    column-gap: 14px;
  }

  .jfr-contact__reasons .material-icons {
    grid-row: 1 / span 2;
    margin: 0;
  }

  .jfr-contact__form {
    margin-top: 1rem;
  }
}


/* =========================================================
   KNDev affiliation / membership strip
   ========================================================= */

.knd-affiliation {
  --knd-affiliation-bg: var(--knd-color-background-soft, #f7f4ee);
  --knd-affiliation-color: var(--knd-color-text, #252a22)!important;
  --knd-affiliation-heading: var(--knd-color-heading, #111);
  --knd-affiliation-accent: var(--knd-color-primary, #a83d21);
  --knd-affiliation-border:
    var(--knd-color-border, rgb(37 42 34 / 12%));

  width: 100%;
  border-block: 1px solid var(--knd-affiliation-border);
  background: var(--knd-affiliation-bg);
  color: var(--knd-affiliation-color)!important;
}

.knd-affiliation__inner {
  display: flex;
  width: min(100% - 2rem, var(--knd-container-max-width, 1180px));
  min-height: 150px;
  margin-inline: auto;
  padding-block: clamp(1.5rem, 3vw, 2.25rem);
  gap: clamp(1.25rem, 3vw, 2.25rem);
  align-items: center;
  justify-content: center;
}

.knd-affiliation__logo {
  flex: 0 0 auto;
  width: clamp(78px, 8vw, 104px);
  height: auto;
  object-fit: contain;
}

.knd-affiliation__content {
  max-width: 620px;
}

.knd-affiliation__eyebrow {
  margin: 0 0 .35rem;
  color: var(--knd-affiliation-accent)!important;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .12em;
  line-height: 1.3;
  text-transform: uppercase;
}

#knd-affiliation-title .knd-theme-footer h2 {
  color: var(--knd-affiliation-heading)!important;
}

.knd-affiliation__title {
  margin: 0 0 .35rem;
  color: var(--knd-affiliation-heading)!important;
  font-family: var(--knd-font-heading, inherit);
  font-size: clamp(1.35rem, 2.2vw, 1.8rem);
  font-weight: var(--knd-heading-font-weight, 800);
  line-height: 1.15;
}

.knd-affiliation__text {
  margin: 0;
  color: var(--knd-affiliation-color)!important;
  font-family: var(--knd-font-body, inherit);
  font-size: clamp(.95rem, 1.4vw, 1.05rem);
  line-height: 1.55;
}

@media (max-width: 575px) {
  .knd-affiliation__inner {
    min-height: 0;
    padding-block: 1.5rem;
    flex-direction: column;
    gap: .9rem;
    text-align: center;
  }

  .knd-affiliation__logo {
    width: 74px;
  }
}

/* =========================================================
   KNDev gallery component
   Add to the customer's customer.css.
   ========================================================= */
/* Galleri – CMS-side 16 */
body#cms.cms-id-16 .breadcrumb,
body#cms.cms-id-16 .breadcrumb__wrapper,
body#cms.cms-id-16 .page-header {
  display: none;
}

/* Gør Theme Builder-blokkens baggrund fuld bredde */
body#cms.cms-id-16 .knd-tb-block:has(.knd-gallery) {
  --knd-gallery-bg: var(--knd-color-surface, #f5f0e8);
}

/* Baggrunden håndteres nu af den ydre Theme Builder-blok */
body#cms.cms-id-16 .knd-gallery {
  background: transparent;
}
.knd-gallery {
  --knd-gallery-section-padding-y: clamp(3rem, 6vw, 6rem);
  --knd-gallery-header-max-width: 46rem;
  --knd-gallery-gap: clamp(.75rem, 1.5vw, 1.25rem);
  --knd-gallery-radius: var(--knd-card-border-radius, var(--knd-radius-lg, 1rem));
  --knd-gallery-bg: var(--knd-color-surface, transparent);
  --knd-gallery-color: var(--knd-color-text, #10283c);
  --knd-gallery-muted-color: var(--knd-color-text-muted, #5b6670);
  --knd-gallery-focus-color: var(--knd-color-primary, #9e2f26);
  --knd-gallery-shadow: var(--knd-shadow-card, 0 14px 34px rgb(7 24 39 / 12%));

  padding-block: var(--knd-gallery-section-padding-y);
  background: var(--knd-gallery-bg);
  color: var(--knd-gallery-color);
}

.knd-gallery__header {
  max-width: var(--knd-gallery-header-max-width);
  margin-bottom: clamp(1.75rem, 4vw, 3rem);
}

.knd-gallery__header h2 {
  margin: 0;
  color: inherit;
}

.knd-gallery__lead {
  margin: .85rem 0 0;
  color: var(--knd-gallery-muted-color);
  font-size: clamp(1rem, 1.4vw, 1.15rem);
  line-height: 1.7;
}

.knd-gallery__grid {
  display: block;
  columns: 4;
  column-gap: var(--knd-gallery-gap);
}

.knd-gallery__thumb {
  position: relative;
  display: block;
  width: 100%;
  margin: 0 0 var(--knd-gallery-gap);
  overflow: hidden;
  border: 0;
  border-radius: var(--knd-gallery-radius);
  background: var(--knd-color-surface-subtle, #eef1f2);
  box-shadow: var(--knd-gallery-shadow);
  color: inherit;
  text-decoration: none;
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
}

.knd-gallery__thumb::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgb(7 24 39 / 28%));
  content: "";
  opacity: 0;
  transition: opacity 180ms ease;
}

.knd-gallery__thumb img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 260ms ease;
}

.knd-gallery__thumb:hover::after {
  opacity: 1;
}

.knd-gallery__thumb:hover img {
  transform: scale(1.035);
}

.knd-gallery__thumb:focus-visible {
  outline: 3px solid var(--knd-gallery-focus-color);
  outline-offset: 4px;
}

.knd-gallery-modal {
  position: fixed;
  inset: 0;
  z-index: var(--knd-modal-z, 9999);
  display: none;
}

.knd-gallery-modal.knd-modal--open {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}

.knd-gallery-modal > .knd-modal__overlay {
  position: absolute;
  inset: 0;
  background: var(--knd-modal-overlay, rgb(7 24 39 / 82%));
}

.knd-gallery-modal__dialog {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  width: min(72rem, calc(100vw - 2rem));
  max-width: none;
  min-height: min(46rem, calc(100vh - 2rem));
  padding: clamp(1.25rem, 3vw, 2.5rem);
  border: 0;
  border-radius: var(--knd-modal-border-radius, var(--knd-radius-lg, 1rem));
  background: var(--knd-color-dark, #071827);
  color: var(--knd-color-white, #fff);
}

.knd-gallery-modal .knd-modal__close,
.knd-gallery-modal .knd-modal-close {
  position: absolute;
  top: .75rem;
  right: .75rem;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  border: 1px solid rgb(255 255 255 / 45%);
  border-radius: var(--knd-button-border-radius, var(--knd-radius-button, .5rem));
  background: rgb(7 24 39 / 72%);
  color: #fff;
  font: inherit;
  font-size: 1.75rem;
  line-height: 1;
  cursor: pointer;
}

html.knd-modal-open,
body.modal-open {
  overflow: hidden;
}

.knd-gallery-modal__figure {
  min-width: 0;
  margin: 0;
  text-align: center;
}

.knd-gallery-modal__image {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: calc(100vh - 9rem);
  margin-inline: auto;
  object-fit: contain;
}

.knd-gallery-modal__caption {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: .85rem;
  color: rgb(255 255 255 / 82%);
  font-size: .875rem;
  line-height: 1.5;
  text-align: left;
}

.knd-gallery-modal__counter {
  flex: 0 0 auto;
}

.knd-gallery-modal__nav {
  display: grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  border: 1px solid rgb(255 255 255 / 45%);
  border-radius: var(--knd-button-border-radius, var(--knd-radius-button, .5rem));
  background: rgb(7 24 39 / 62%);
  color: #fff;
  font: inherit;
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
}

.knd-gallery-modal__nav:hover,
.knd-gallery-modal__nav:focus-visible {
  border-color: #fff;
  background: rgb(7 24 39 / 88%);
}

.knd-gallery-modal__nav--prev {
  margin-right: clamp(.5rem, 2vw, 1.5rem);
}

.knd-gallery-modal__nav--next {
  margin-left: clamp(.5rem, 2vw, 1.5rem);
}

@media (max-width: 991.98px) {
  .knd-gallery__grid {
    columns: 3;
  }
}

@media (max-width: 767.98px) {
  .knd-gallery__grid {
    columns: 2;
  }

  .knd-gallery-modal__dialog {
    grid-template-columns: 1fr;
    min-height: 0;
    padding: 3.5rem 1rem 1rem;
  }

  .knd-gallery-modal__nav {
    position: absolute;
    top: 50%;
    z-index: 1;
    transform: translateY(-50%);
  }

  .knd-gallery-modal__nav--prev {
    left: .75rem;
    margin: 0;
  }

  .knd-gallery-modal__nav--next {
    right: .75rem;
    margin: 0;
  }

  .knd-gallery-modal__caption {
    padding-inline: .25rem;
  }
}

@media (max-width: 399.98px) {
  .knd-gallery__grid {
    columns: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .knd-gallery__thumb::after,
  .knd-gallery__thumb img {
    transition: none;
  }
}

/* =========================================================
   Full width autoplay video
   ========================================================= */

.knd-video-fullwidth {
  position: relative;
  left: 50%;
  width: 100vw;
  max-width: none;
  margin: 0;
  margin-left: -50vw;
  overflow: hidden;
  background: #000000;
}

.knd-video-fullwidth__video {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  background: #000000;
  object-fit: cover;
}
