/* Mobile-only guardrails. Intentionally scoped to <=768px so desktop remains unchanged. */
:root {
  --dm-header-height: 70px;
}

@media (max-width: 768px) {
  html,
  body {
    overflow-x: hidden !important;
    max-width: 100% !important;
  }

  body.mobile-menu-open {
    overflow: hidden !important;
    touch-action: none;
  }

  .container,
  .configurator-container {
    width: min(100%, 100vw) !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    overflow-x: clip !important;
  }

  section,
  .hero-video-section,
  .products-section,
  .news-section,
  .contact-section,
  .configurator-section,
  .footer {
    overflow-x: clip !important;
  }

  .header {
    width: 100% !important;
  }

  .header-content {
    gap: 10px !important;
    align-items: center !important;
  }

  .logo {
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }

  .logo img {
    width: auto !important;
    max-width: min(52vw, 220px) !important;
    height: auto !important;
    max-height: 46px !important;
  }

  .header-actions {
    gap: 8px !important;
    flex-shrink: 0 !important;
  }

  .btn-phone,
  .mobile-menu-toggle,
  .modal-close,
  .slider-arrow {
    min-width: 44px !important;
    min-height: 44px !important;
  }

  #nav-menu {
    display: none !important;
  }

  #nav-menu.active {
    display: block !important;
    position: fixed !important;
    top: var(--dm-header-height, 70px) !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: auto !important;
    padding: 16px 18px 32px !important;
    background: #ffffff !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.12) !important;
    z-index: 9998 !important;
  }

  #nav-menu.active .nav-list {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #nav-menu.active .nav-list > li {
    width: 100% !important;
    margin: 0 !important;
    border-bottom: 1px solid #eef2f7 !important;
  }

  #nav-menu.active .nav-list > li:last-child {
    border-bottom: 0 !important;
  }

  #nav-menu.active .nav-link {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 48px !important;
    padding: 14px 4px !important;
    white-space: normal !important;
  }

  #nav-menu .header-mega-dropdown,
  #nav-menu .mega-dropdown-content,
  #nav-menu .mega-subcategories-list {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .hero-video-section {
    min-height: clamp(500px, 76svh, 760px) !important;
    max-height: none !important;
    margin-top: var(--dm-header-height, 70px) !important;
  }

  .hero-content {
    min-height: clamp(500px, 76svh, 760px) !important;
    padding: 24px 0 28px !important;
  }

  .hero-main-content,
  .hero-subtitle-wrapper,
  .hero-cta-buttons {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .hero-title {
    font-size: clamp(1.6rem, 6vw, 2.1rem) !important;
    line-height: 1.25 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    word-break: break-word;
  }

  .hero-cta-buttons .btn,
  .product-footer .btn,
  .category-btn,
  .btn-primary-product,
  .btn-secondary-product,
  .contact-form button {
    width: 100% !important;
    justify-content: center !important;
  }

  .mobile-categories-grid,
  .products-grid,
  .news-grid,
  .services-grid,
  .stats-grid,
  .contact-grid,
  .footer-content,
  .categories-grid {
    grid-template-columns: 1fr !important;
  }

  .category-card,
  .product-card,
  .news-card,
  .news-article-card,
  .service-card,
  .stat-item {
    min-width: 0 !important;
  }

  .configurator-section .type-selector {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .configurator-section .type-option {
    width: 100% !important;
    min-width: 0 !important;
  }

  .configurator-section .products-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .configurator-section .product-card {
    width: 100% !important;
    max-width: 100% !important;
  }

  .configurator-section .image-slider-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    padding: 8px !important;
  }

  .configurator-section .product-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    background: #fff !important;
  }

  .configurator-section .product-actions,
  .product-footer {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .configurator-section .variant-selector-wrapper,
  .configurator-section .product-specs {
    width: 100% !important;
    min-width: 0 !important;
  }

  .configurator-section table td,
  .configurator-section table th,
  .modal-specs td,
  .modal-specs th {
    white-space: nowrap !important;
  }

  .dm-table-scroll {
    display: block !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: thin;
    padding-bottom: 4px;
  }

  .dm-table-scroll > table {
    min-width: 520px !important;
    width: max-content !important;
    max-width: none !important;
    margin: 0 !important;
  }

  .news-filters,
  .filter-buttons,
  .news-filters-wrapper {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 6px !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none;
  }

  .news-filters::-webkit-scrollbar,
  .filter-buttons::-webkit-scrollbar,
  .news-filters-wrapper::-webkit-scrollbar,
  .dm-table-scroll::-webkit-scrollbar {
    height: 6px;
    display: none;
  }

  input,
  select,
  textarea {
    font-size: 16px !important;
  }

  .modal-content {
    width: min(96vw, 720px) !important;
    max-width: min(96vw, 720px) !important;
    max-height: 90svh !important;
  }

  img,
  video,
  iframe {
    max-width: 100% !important;
  }
}

@media (max-width: 768px) {
  .hero-title {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  .hero-subtitle,
  .categories-hero-title,
  .configurator-header h1,
  .section-title,
  .product-title,
  .news-title {
    overflow-wrap: anywhere !important;
  }

  .products-section .products-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .products-section .product-card {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  .products-section .product-image {
    width: 100% !important;
    min-width: 0 !important;
    height: 220px !important;
    flex: 0 0 auto !important;
    border-radius: 16px 16px 0 0 !important;
  }

  .products-section .product-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  .products-section .product-content {
    width: 100% !important;
    min-width: 0 !important;
    padding: 18px !important;
    gap: 10px !important;
  }

  .products-section .product-features span,
  .products-section .product-description,
  .news-description,
  .categories-hero-subtitle {
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }

  .products-section .product-footer {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .btn-read-more,
  .news-read-more {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 44px !important;
    padding: 10px 0 !important;
  }

  .variant-select,
  .configurator-section .variant-select,
  .btn-primary-product,
  .btn-secondary-product,
  .configurator-section .btn-primary-product,
  .configurator-section .btn-secondary-product {
    min-height: 44px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }

  .categories-hero-subtitle,
  .categories-hero-subtitle a,
  .contact-text a,
  .footer a,
  .footer li a {
    line-height: 1.8 !important;
  }

  .categories-hero-subtitle a,
  .contact-text a,
  .footer a,
  .footer li a {
    display: inline-block !important;
    padding: 4px 0 !important;
  }

  a[href^="tel:"],
  a[href^="mailto:"] {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 44px !important;
  }

  .contact-text a[href^="tel:"],
  .contact-text a[href^="mailto:"] {
    padding: 4px 0 !important;
  }

  .quick-stats {
    grid-template-columns: 1fr !important;
  }

  #cookie-consent-banner {
    padding: 12px 0 calc(env(safe-area-inset-bottom, 0px) + 8px) !important;
  }

  .cookie-banner-content {
    gap: 12px !important;
    padding: 0 14px !important;
  }

  .cookie-banner-text p {
    font-size: 0.82rem !important;
    line-height: 1.45 !important;
  }

  .cookie-banner-text i.fa-cookie-bite {
    font-size: 1.25rem !important;
  }

  .cookie-banner-actions {
    width: 100% !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 10px !important;
  }

  .cookie-btn {
    flex: 1 1 0 !important;
    width: auto !important;
    min-height: 44px !important;
    padding: 12px 14px !important;
    font-size: 0.88rem !important;
  }
}

@media (max-width: 576px) {
  .container,
  .configurator-container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .logo img {
    max-width: min(50vw, 180px) !important;
    max-height: 42px !important;
  }

  .hero-video-section,
  .hero-content {
    min-height: clamp(470px, 72svh, 680px) !important;
  }

  .dm-table-scroll > table {
    min-width: 460px !important;
  }

  .cookie-banner-actions {
    flex-direction: column !important;
  }
}

/* Refined mobile UX layer - mobile only, desktop untouched */
@media (max-width: 768px) {
  html {
    scroll-padding-top: calc(var(--dm-header-height, 70px) + 12px);
  }

  body {
    -webkit-tap-highlight-color: rgba(29, 36, 80, 0.08);
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }

  main,
  section,
  [id] {
    scroll-margin-top: calc(var(--dm-header-height, 70px) + 12px);
  }

  .hero-video-section {
    min-height: clamp(440px, 68svh, 620px) !important;
  }

  .hero-content {
    min-height: clamp(440px, 68svh, 620px) !important;
    justify-content: center !important;
  }

  .hero-main-content {
    gap: 14px !important;
  }

  .hero-title {
    font-size: clamp(1.5rem, 6vw, 2rem) !important;
    letter-spacing: -0.02em;
  }

  .hero-subtitle {
    font-size: 0.88rem !important;
    line-height: 1.55 !important;
  }

  .hero-cta-buttons {
    gap: 10px !important;
  }

  .hero-cta-buttons .btn,
  .btn-phone,
  .mobile-menu-toggle,
  .category-btn,
  .btn-primary-product,
  .btn-secondary-product,
  .cookie-btn,
  .gh-modal-cta,
  .btn-viper-contact,
  .btn-viper-phone {
    border-radius: 14px !important;
  }

  .products-section,
  .news-section,
  .contact-section,
  .configurator-section,
  .promo-section,
  .stats-section,
  .services-section {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  .products-grid > *,
  .news-grid > *,
  .services-grid > *,
  .stats-grid > *,
  .contact-grid > *,
  .categories-grid > * {
    content-visibility: auto;
    contain-intrinsic-size: 320px;
  }

  .product-card,
  .news-card,
  .news-article-card,
  .service-card,
  .stat-item,
  .type-option {
    border-radius: 18px !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08) !important;
  }

  .product-content,
  .news-content,
  .service-card,
  .stat-item,
  .contact-card {
    padding: 18px !important;
  }

  .type-option {
    min-height: 112px !important;
    padding: 16px !important;
  }

  .type-option-title {
    line-height: 1.3 !important;
  }

  .variant-selector-wrapper label,
  .product-brand,
  .product-title,
  .product-description,
  .type-option-subtitle,
  .type-option-count {
    overflow-wrap: anywhere !important;
  }

  .dm-table-scroll {
    position: relative !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    box-shadow: inset -18px 0 18px -18px rgba(15, 23, 42, 0.18);
  }

  .dm-table-scroll.is-scrolled-end {
    box-shadow: none;
  }

  .dm-table-scroll > table {
    background: #fff !important;
  }

  .modal-content,
  .modal-container,
  .viper-modal-content,
  .product-modal .modal-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    border-radius: 22px 22px 0 0 !important;
  }

  .viper-modal,
  .modal-overlay {
    align-items: flex-end !important;
    padding: 0 !important;
  }

  .modal-body,
  .viper-modal-body,
  .tabs-content,
  .gh-modal-tab-panel,
  .product-modal .gh-modal-cta-row,
  .viper-modal-footer,
  .modal-footer {
    padding-bottom: calc(env(safe-area-inset-bottom, 0px) + 20px) !important;
  }

  #nav-menu.active {
    position: fixed !important;
    top: calc(var(--dm-header-height, 70px) + 8px) !important;
    right: 12px !important;
    left: 12px !important;
    bottom: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    width: auto !important;
    min-height: 0 !important;
    max-height: calc(100dvh - var(--dm-header-height, 70px) - 20px) !important;
    padding: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: none !important;
    overflow-y: auto !important;
    z-index: 12010 !important;
  }

  #nav-menu.active::before {
    display: none !important;
  }

  #nav-menu.active .nav-list {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    display: grid !important;
    gap: 8px !important;
    background: #ffffff !important;
    border: 1px solid rgba(226, 232, 240, 0.96) !important;
    border-radius: 22px !important;
    padding: 10px !important;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.14) !important;
  }

  #nav-menu.active .nav-list::before {
    content: '';
    display: block;
    width: 56px;
    height: 4px;
    margin: 2px auto 6px;
    border-radius: 999px;
    background: linear-gradient(135deg, #ed303d 0%, #ff8e84 100%);
    box-shadow: 0 4px 10px rgba(237, 48, 61, 0.18);
  }

  #nav-menu.active .nav-list > li {
    border-bottom: 0 !important;
    margin: 0 !important;
  }

  #nav-menu.active .nav-link {
    position: relative !important;
    z-index: 1 !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    color: #1d2450 !important;
    min-height: 46px !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
    box-shadow: inset 0 0 0 1px rgba(226, 232, 240, 0.92) !important;
    border-bottom: 0 !important;
  }

  #nav-menu.active .nav-link.active {
    color: #ed303d !important;
    background: linear-gradient(135deg, rgba(237, 48, 61, 0.1) 0%, rgba(255, 255, 255, 1) 100%) !important;
    box-shadow: inset 0 0 0 1px rgba(237, 48, 61, 0.18) !important;
  }

  #nav-menu.active .nav-link.active::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px;
    bottom: 10px;
    width: 3px;
    border-radius: 999px;
    background: linear-gradient(180deg, #ff8d85 0%, #ed303d 100%);
  }

  #nav-menu.active .has-mega-menu {
    order: -1 !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link {
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 54px !important;
    background: linear-gradient(135deg, #1d2450 0%, #2d3a73 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 14px 30px rgba(29, 36, 80, 0.18) !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link::before {
    content: 'Schimbă categoria';
    display: block;
    font-size: 0.68rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.72);
    margin-right: auto;
  }

  #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '+';
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
    font-size: 1rem;
    font-weight: 800;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12);
    transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease;
  }

  #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    transform: rotate(45deg);
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
  }

  #nav-menu.active .mobile-menu-products-link {
    position: relative !important;
    z-index: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 6px 0 0 !important;
    padding: 13px 16px !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #ed303d 0%, #ff6b60 100%) !important;
    color: #ffffff !important;
    font-size: 0.9rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
    border: 0 !important;
    box-shadow: 0 12px 22px rgba(237, 48, 61, 0.18) !important;
    text-align: center !important;
  }

  #nav-menu.active .mobile-menu-products-link::after {
    content: '→';
    font-size: 1rem;
    line-height: 1;
  }

  .dm-mobile-products-submenu {
    display: grid;
    gap: 10px;
    padding: 8px 0 6px !important;
  }

  .dm-mobile-products-submenu[hidden] {
    display: none !important;
  }

  .dm-mobile-submenu-section {
    margin: 0 !important;
    padding: 12px !important;
    background: #f8fafc !important;
    border: 1px solid #e8eef6 !important;
    border-radius: 16px !important;
    box-shadow: none !important;
  }

  .dm-mobile-submenu-title {
    margin: 0 0 8px !important;
    font-size: 0.72rem !important;
    line-height: 1.35 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: #64748b !important;
  }

  .dm-mobile-submenu-links {
    display: grid !important;
    gap: 8px !important;
  }

  .dm-mobile-submenu-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 42px !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    color: #1d2450 !important;
    border: 1px solid #e8eef6 !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    font-size: 0.88rem !important;
    white-space: normal !important;
    line-height: 1.4 !important;
  }

  .dm-mobile-submenu-link.is-current {
    background: linear-gradient(135deg, rgba(237, 48, 61, 0.1) 0%, #ffffff 100%) !important;
    border-color: rgba(237, 48, 61, 0.22) !important;
    color: #ed303d !important;
  }

  .dm-mobile-submenu-link .product-count {
    margin-left: 10px !important;
    padding: 2px 8px !important;
    border-radius: 999px !important;
    background: #edf2ff !important;
    color: #1d2450 !important;
    font-size: 0.72rem !important;
    flex: 0 0 auto !important;
  }

  .contact-form input,
  .contact-form textarea,
  .contact-form select,
  .variant-select,
  select,
  textarea,
  input {
    border-radius: 14px !important;
  }

  #cookie-consent-banner {
    left: 10px !important;
    right: 10px !important;
    bottom: 10px !important;
    border-radius: 18px !important;
    border-top: 0 !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 12px 0 calc(env(safe-area-inset-bottom, 0px) + 12px) !important;
    box-shadow: 0 12px 32px rgba(2, 6, 23, 0.28) !important;
  }

  .cookie-banner-content {
    gap: 10px !important;
    padding: 0 12px !important;
    text-align: left !important;
  }

  .cookie-banner-text p {
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 8px !important;
    font-size: 0.78rem !important;
    line-height: 1.45 !important;
  }

  .cookie-banner-text i.fa-cookie-bite {
    font-size: 1rem !important;
    margin-top: 2px !important;
  }

  .cookie-banner-actions {
    flex-direction: row !important;
    gap: 8px !important;
  }

  .cookie-btn {
    min-height: 42px !important;
    padding: 10px 12px !important;
    font-size: 0.8rem !important;
  }

  .footer {
    padding-bottom: calc(env(safe-area-inset-bottom, 0px) + 18px) !important;
  }
}

@media (max-width: 576px) {
  .hero-video-section,
  .hero-content {
    min-height: clamp(420px, 64svh, 580px) !important;
  }

  .btn-phone {
    min-width: 82px !important;
    padding: 0 10px !important;
  }

  .btn-phone span {
    font-size: 0.76rem !important;
  }

  .product-content,
  .news-content,
  .service-card,
  .stat-item,
  .contact-card,
  .dm-mobile-submenu-section {
    padding: 16px !important;
  }

  .dm-mobile-submenu-link {
    padding: 10px !important;
  }

  #cookie-consent-banner {
    left: 8px !important;
    right: 8px !important;
    bottom: 8px !important;
  }

  .cookie-banner-actions {
    flex-direction: column !important;
  }
}

/* Extra mobile polish pass - desktop remains untouched */
@media (max-width: 768px) {
  .header {
    z-index: 12020 !important;
    isolation: isolate !important;
    overflow: visible !important;
    background: rgba(255, 255, 255, 0.96) !important;
    backdrop-filter: saturate(180%) blur(12px);
    -webkit-backdrop-filter: saturate(180%) blur(12px);
    border-bottom: 1px solid rgba(148, 163, 184, 0.24) !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08) !important;
  }

  .header-content {
    min-height: 64px !important;
    padding: 10px 0 !important;
  }

  .header-actions {
    gap: 8px !important;
    align-items: center !important;
  }

  .btn-phone,
  .mobile-menu-toggle {
    position: relative !important;
    z-index: 12021 !important;
    min-height: 46px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 15px !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
  }

  .btn-phone {
    width: auto !important;
    min-width: 88px !important;
    padding: 0 12px !important;
    gap: 8px !important;
    color: #1d2450 !important;
    border: 1px solid rgba(237, 48, 61, 0.24) !important;
    background: rgba(255, 247, 247, 0.98) !important;
    box-shadow: 0 8px 22px rgba(237, 48, 61, 0.12) !important;
    white-space: nowrap !important;
  }

  .btn-phone::before {
    content: '☎' !important;
    color: #ed303d !important;
    font-size: 0.96rem !important;
    line-height: 1 !important;
    font-weight: 700 !important;
  }

  .btn-phone span {
    display: inline-flex !important;
    align-items: center !important;
    font-size: 0.8rem !important;
    font-weight: 700 !important;
    color: #1d2450 !important;
    line-height: 1 !important;
  }

  .btn-phone i {
    display: none !important;
  }

  .mobile-menu-toggle {
    width: 46px !important;
    min-width: 46px !important;
    border: 1px solid #1d2450 !important;
    background: #1d2450 !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.16) !important;
    gap: 4px !important;
    color: #ffffff !important;
  }

  body.mobile-menu-open .hero-video-section,
  body.mobile-menu-open main,
  body.mobile-menu-open section,
  body.mobile-menu-open footer {
    pointer-events: none !important;
  }

  .mobile-menu-toggle span {
    width: 18px !important;
    height: 2.5px !important;
    border-radius: 999px !important;
    background: currentColor !important;
    transform-origin: center !important;
  }

  .mobile-menu-toggle.active {
    background: #ed303d !important;
    border-color: #ed303d !important;
    color: #ffffff !important;
  }

  .mobile-menu-toggle.active span:nth-child(1) {
    transform: translateY(6px) rotate(45deg) !important;
  }

  .mobile-menu-toggle.active span:nth-child(2) {
    opacity: 0 !important;
  }

  .mobile-menu-toggle.active span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg) !important;
  }

  .logo img {
    max-width: min(44vw, 160px) !important;
    max-height: 40px !important;
  }

  .hero-content {
    padding: 20px 0 24px !important;
  }

  .hero-subtitle-wrapper {
    margin-bottom: 28px !important;
  }

  .hero-cta-buttons {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 340px !important;
    margin: 0 auto !important;
  }

  .hero-cta-buttons .btn {
    min-height: 52px !important;
    padding: 14px 18px !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14) !important;
  }

  .hero-cta-buttons .btn i {
    font-size: 0.95rem !important;
  }

  .hero-cta-buttons .btn-primary {
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 14px 30px rgba(237, 48, 61, 0.28) !important;
  }

  .hero-cta-buttons .btn-secondary,
  .hero-cta-buttons .btn-contact-hero {
    background: rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.52) !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.16) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
  }

  .configurator-header {
    margin-bottom: 16px !important;
  }

  .configurator-header h1 {
    font-size: clamp(1.55rem, 5.8vw, 1.95rem) !important;
    line-height: 1.2 !important;
    margin-bottom: 0 !important;
  }

  .configurator-header p {
    font-size: 0.92rem !important;
    line-height: 1.6 !important;
  }

  .type-selector {
    gap: 10px !important;
    margin-bottom: 14px !important;
  }

  .type-option {
    min-height: 98px !important;
    padding: 14px !important;
  }

  .type-option-icon {
    width: 44px !important;
    height: 44px !important;
    border-radius: 14px !important;
  }

  .type-option-title {
    font-size: 1rem !important;
  }

  .type-option-subtitle {
    font-size: 0.85rem !important;
    line-height: 1.45 !important;
  }

  .type-option-count {
    margin-top: 8px !important;
    padding: 4px 10px !important;
    border-radius: 999px !important;
  }

  .configurator-section .products-grid {
    gap: 14px !important;
  }

  .configurator-section .product-card {
    border-radius: 20px !important;
  }

  .configurator-section .product-content {
    padding: 16px !important;
  }

  .configurator-section .image-slider-wrapper {
    padding: 10px 10px 0 !important;
  }

  .product-title {
    font-size: 1.02rem !important;
    line-height: 1.35 !important;
  }

  .product-description,
  .product-features span {
    font-size: 0.84rem !important;
  }

  #nav-menu.active {
    padding-top: 8px !important;
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
  }

  #nav-menu.active .nav-list > li {
    padding: 2px 0 !important;
  }

  #nav-menu.active .nav-link {
    min-height: 46px !important;
    padding: 12px 6px !important;
    font-size: 0.98rem !important;
    font-weight: 600 !important;
    border-radius: 12px !important;
  }

  #nav-menu.active .nav-link.active {
    padding-left: 10px !important;
    padding-right: 10px !important;
    background: rgba(237, 48, 61, 0.07) !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link {
    background: #ffffff !important;
    color: #1d2450 !important;
    border: 1px solid #e8eef6 !important;
    box-shadow: none !important;
  }

  #nav-menu.active .has-mega-menu.is-open > .nav-link {
    background: linear-gradient(180deg, #fff5f5 0%, #ffffff 100%) !important;
    border-color: rgba(237, 48, 61, 0.18) !important;
    color: #ed303d !important;
  }

  .dm-mobile-products-submenu {
    gap: 10px !important;
    padding: 6px 0 14px !important;
  }

  .dm-mobile-submenu-section {
    padding: 12px !important;
    border-radius: 14px !important;
  }

  .dm-mobile-submenu-link {
    min-height: 42px !important;
    padding: 9px 11px !important;
    font-size: 0.91rem !important;
  }

  #cookie-consent-banner {
    left: 8px !important;
    right: 8px !important;
    bottom: 8px !important;
    max-width: none !important;
    padding: 10px 0 calc(env(safe-area-inset-bottom, 0px) + 10px) !important;
    border-radius: 16px !important;
  }

  #cookie-consent-banner.is-mobile-compact .cookie-banner-content {
    gap: 8px !important;
  }

  #cookie-consent-banner.is-mobile-compact .cookie-banner-text p {
    font-size: 0.76rem !important;
    line-height: 1.4 !important;
  }

  #cookie-consent-banner.is-mobile-compact .cookie-btn {
    min-height: 40px !important;
    padding: 10px 12px !important;
    font-size: 0.78rem !important;
  }

  body.mobile-menu-open #cookie-consent-banner {
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(calc(100% + 24px)) !important;
  }
}

@media (max-width: 576px) {
  .configurator-header h1 {
    font-size: clamp(1.45rem, 6vw, 1.75rem) !important;
  }

  .type-option {
    min-height: 92px !important;
  }

  .dm-mobile-submenu-link {
    font-size: 0.88rem !important;
  }
}

@media (max-width: 768px) {
  #nav-menu.active {
    top: calc(var(--dm-header-height, 70px) + 8px) !important;
    right: 12px !important;
    left: 12px !important;
    bottom: auto !important;
    display: flex !important;
    flex-direction: column !important;
    width: auto !important;
    min-height: 0 !important;
    max-height: min(78dvh, 640px) !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow-y: auto !important;
    z-index: 12030 !important;
  }

  #nav-menu.active .nav-list {
    display: grid !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 10px !important;
    background: rgba(255, 255, 255, 0.98) !important;
    border: 1px solid rgba(226, 232, 240, 0.96) !important;
    border-radius: 20px !important;
    box-shadow: 0 18px 36px rgba(15, 23, 42, 0.14) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
  }

  #nav-menu.active .nav-list::before {
    display: none !important;
  }

  #nav-menu.active .nav-list > li {
    margin: 0 !important;
    border-bottom: 0 !important;
  }

  #nav-menu.active .nav-link {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 48px !important;
    padding: 13px 14px !important;
    border-radius: 14px !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
    border: 1px solid #e7edf5 !important;
    box-shadow: none !important;
    color: #0f172a !important;
    font-size: 0.94rem !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
  }

  #nav-menu.active .nav-link.active {
    color: #1d2450 !important;
    background: linear-gradient(180deg, #f7f9fc 0%, #eef4fb 100%) !important;
    border-color: #d7e0ea !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.72) !important;
  }

  #nav-menu.active .nav-link.active::before {
    content: '';
    position: absolute;
    left: 12px;
    top: 12px;
    bottom: 12px;
    width: 3px;
    border-radius: 999px;
    background: linear-gradient(180deg, #ed303d 0%, #ff8e84 100%);
  }

  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 56px !important;
    padding: 12px 14px !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 6px !important;
    background: linear-gradient(180deg, #ffffff 0%, #f5f9ff 100%) !important;
    border-color: #d8e2ee !important;
    color: #0f172a !important;
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.08) !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link::before {
    content: 'Categorii produse';
    display: block;
    font-size: 0.7rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #64748b;
  }

  #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '⌄';
    position: absolute;
    top: 50%;
    right: 14px;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #eef4fb;
    color: #1d2450;
    font-size: 0.92rem;
    font-weight: 700;
    transition: transform 0.2s ease, background 0.2s ease;
  }

  #nav-menu.active .has-mega-menu.is-open > .nav-link {
    border-color: #cbd7e4 !important;
    background: linear-gradient(180deg, #ffffff 0%, #f9fbff 100%) !important;
  }

  #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    transform: translateY(-50%) rotate(180deg);
    background: #1d2450;
    color: #ffffff;
  }

  .dm-mobile-products-submenu {
    display: grid !important;
    gap: 12px !important;
    padding: 10px 0 2px !important;
  }

  .dm-mobile-submenu-tabs {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    padding: 0 2px 2px !important;
    margin: 0 !important;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .dm-mobile-submenu-tabs::-webkit-scrollbar {
    display: none;
  }

  .dm-mobile-submenu-tab {
    flex: 0 0 auto !important;
    min-height: 38px !important;
    padding: 9px 12px !important;
    border-radius: 999px !important;
    border: 1px solid #dde6f0 !important;
    background: #f8fafc !important;
    color: #475569 !important;
    font-size: 0.77rem !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
  }

  .dm-mobile-submenu-tab.is-active,
  .dm-mobile-submenu-tab.is-current-context {
    background: #1d2450 !important;
    border-color: #1d2450 !important;
    color: #ffffff !important;
    box-shadow: 0 8px 18px rgba(29, 36, 80, 0.16) !important;
  }

  .dm-mobile-submenu-panels {
    display: grid !important;
    gap: 10px !important;
  }

  .dm-mobile-submenu-section {
    display: none !important;
    margin: 0 !important;
    padding: 14px !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
    border: 1px solid #e7edf5 !important;
    border-radius: 16px !important;
    box-shadow: none !important;
  }

  .dm-mobile-submenu-section.is-active {
    display: block !important;
  }

  .dm-mobile-submenu-title {
    margin: 0 0 10px !important;
    padding-bottom: 8px !important;
    border-bottom: 1px solid #edf2f7 !important;
    font-size: 0.72rem !important;
    line-height: 1.35 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: #64748b !important;
  }

  .dm-mobile-submenu-links {
    display: grid !important;
    gap: 8px !important;
  }

  .dm-mobile-submenu-link {
    display: grid !important;
    grid-template-columns: 1fr auto auto !important;
    align-items: center !important;
    column-gap: 8px !important;
    min-height: 46px !important;
    padding: 11px 12px !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    color: #1d2450 !important;
    border: 1px solid #e7edf5 !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    font-size: 0.88rem !important;
    line-height: 1.35 !important;
    white-space: normal !important;
  }

  .dm-mobile-submenu-link::after {
    content: '→';
    color: #94a3b8;
    font-size: 0.9rem;
    line-height: 1;
  }

  .dm-mobile-submenu-link.is-current {
    background: linear-gradient(180deg, #fff7f7 0%, #ffffff 100%) !important;
    border-color: rgba(237, 48, 61, 0.22) !important;
    color: #c62d38 !important;
  }

  .dm-mobile-submenu-link .product-count {
    margin-left: 0 !important;
    padding: 3px 8px !important;
    border-radius: 999px !important;
    background: #eef4fb !important;
    color: #1d2450 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
  }

  #nav-menu.active .mobile-menu-products-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 2px 0 0 !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
    border: 1px dashed #d9e2ec !important;
    color: #1d2450 !important;
    font-size: 0.86rem !important;
    font-weight: 700 !important;
    box-shadow: none !important;
  }

  #nav-menu.active .mobile-menu-products-link::after {
    content: '→';
    font-size: 0.94rem;
    line-height: 1;
  }
}

@media (max-width: 576px) {
  #nav-menu.active {
    right: 10px !important;
    left: 10px !important;
    max-height: min(76dvh, 600px) !important;
  }

  #nav-menu.active .nav-list {
    padding: 8px !important;
    border-radius: 18px !important;
  }

  #nav-menu.active .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 46px !important;
    padding: 12px !important;
  }

  .dm-mobile-submenu-tab {
    font-size: 0.75rem !important;
    padding: 8px 11px !important;
  }
}

@media (max-width: 768px) {
  #nav-menu.active .has-mega-menu {
    display: block !important;
    order: -1 !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link {
    display: flex !important;
  }

  #nav-menu.active .mobile-menu-products-link {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    display: grid !important;
  }

  #nav-menu.active .dm-mobile-products-submenu[hidden] {
    display: none !important;
  }

  #nav-menu.active {
    max-height: min(84dvh, 720px) !important;
  }
}

@media (max-width: 768px) {
  #nav-menu.active {
    top: calc(var(--dm-header-height, 70px) + 10px) !important;
    left: 10px !important;
    right: 10px !important;
    width: auto !important;
    max-height: min(86dvh, 760px) !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    overflow: visible !important;
  }

  #nav-menu.active::before,
  #nav-menu.active .nav-list::before,
  #nav-menu.active .header-mega-dropdown,
  #nav-menu.active .mobile-menu-products-link {
    display: none !important;
    content: none !important;
  }

  #nav-menu.active .nav-list {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    gap: 8px !important;
    padding: 12px !important;
    background: rgba(255, 255, 255, 0.98) !important;
    border: 1px solid rgba(218, 226, 237, 0.96) !important;
    border-radius: 26px !important;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.16) !important;
    backdrop-filter: blur(18px) !important;
    overflow-y: auto !important;
    max-height: min(86dvh, 760px) !important;
  }

  #nav-menu.active .nav-list > li {
    margin: 0 !important;
    border: 0 !important;
  }

  #nav-menu.active .nav-list > li:nth-child(1) { order: 2 !important; }
  #nav-menu.active .nav-list > li:nth-child(2) { order: 3 !important; }
  #nav-menu.active .nav-list > li:nth-child(3) { order: 4 !important; }
  #nav-menu.active .nav-list > li.has-mega-menu { order: 1 !important; }
  #nav-menu.active .nav-list > li:nth-child(5) { order: 5 !important; }
  #nav-menu.active .nav-list > li:nth-child(6) { order: 6 !important; }
  #nav-menu.active .nav-list > li:nth-child(7) { order: 7 !important; }

  #nav-menu.active .nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 48px !important;
    padding: 13px 15px !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    border: 1px solid #e3eaf3 !important;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7) inset !important;
    color: #22314d !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
  }

  #nav-menu.active .nav-link.active {
    color: #ed303d !important;
    background: rgba(237, 48, 61, 0.06) !important;
    border-color: rgba(237, 48, 61, 0.16) !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link {
    font-weight: 580 !important;
    color: #41536f !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 54px !important;
    padding: 14px 16px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #1d2740 0%, #273452 100%) !important;
    border: 1px solid rgba(29, 39, 64, 0.84) !important;
    box-shadow: 0 18px 36px rgba(15, 23, 42, 0.16) !important;
    color: #ffffff !important;
    font-weight: 700 !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link::before {
    display: none !important;
    content: none !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '›' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
    font-size: 1.05rem !important;
    transform: rotate(90deg) !important;
    transition: transform 0.24s ease, background 0.24s ease !important;
  }

  #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    transform: rotate(270deg) !important;
    background: rgba(255, 255, 255, 0.18) !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    display: grid !important;
    gap: 12px !important;
    margin-top: 10px !important;
    padding: 0 !important;
  }

  #nav-menu.active .dm-mobile-products-submenu[hidden] {
    display: none !important;
  }

  .dm-mobile-family-ribbon {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    padding-bottom: 2px !important;
    scrollbar-width: none !important;
  }

  .dm-mobile-family-ribbon::-webkit-scrollbar {
    display: none !important;
  }

  .dm-mobile-family-chip {
    flex: 0 0 auto !important;
    min-height: 36px !important;
    padding: 8px 13px !important;
    border-radius: 999px !important;
    border: 1px solid #dde5ef !important;
    background: #f8fafc !important;
    color: #50627c !important;
    font-size: 0.78rem !important;
    font-weight: 650 !important;
    white-space: nowrap !important;
  }

  .dm-mobile-family-chip.is-active,
  .dm-mobile-family-chip.is-current-context {
    background: rgba(237, 48, 61, 0.08) !important;
    color: #c72631 !important;
    border-color: rgba(237, 48, 61, 0.18) !important;
    box-shadow: 0 8px 18px rgba(237, 48, 61, 0.08) !important;
  }

  .dm-mobile-family-stack {
    display: grid !important;
    gap: 8px !important;
  }

  .dm-mobile-family-group {
    background: #f8fafc !important;
    border: 1px solid #e4ebf3 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    transition: border-color 0.24s ease, box-shadow 0.24s ease, background 0.24s ease !important;
  }

  .dm-mobile-family-group.is-active {
    background: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%) !important;
    border-color: rgba(237, 48, 61, 0.18) !important;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.06) !important;
  }

  .dm-mobile-family-trigger {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    padding: 14px 15px !important;
    border: 0 !important;
    background: transparent !important;
    color: #22314d !important;
    text-align: left !important;
  }

  .dm-mobile-family-trigger-text {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    min-width: 0 !important;
  }

  .dm-mobile-family-label {
    font-size: 0.95rem !important;
    font-weight: 680 !important;
    line-height: 1.25 !important;
  }

  .dm-mobile-family-meta {
    font-size: 0.74rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    color: #7a879b !important;
  }

  .dm-mobile-family-arrow {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    border: 1px solid #e4ebf3 !important;
    color: #6b7c93 !important;
    font-size: 1rem !important;
    transform: rotate(90deg) !important;
    transition: transform 0.24s ease, color 0.24s ease, border-color 0.24s ease !important;
  }

  .dm-mobile-family-group.is-expanded .dm-mobile-family-arrow {
    transform: rotate(270deg) !important;
    color: #c72631 !important;
    border-color: rgba(237, 48, 61, 0.18) !important;
  }

  .dm-mobile-family-links {
    display: grid !important;
    gap: 8px !important;
    padding: 0 10px 10px !important;
  }

  .dm-mobile-family-links[hidden] {
    display: none !important;
  }

  .dm-mobile-family-links .dm-mobile-submenu-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    min-height: 44px !important;
    padding: 11px 12px !important;
    border-radius: 14px !important;
    border: 1px solid #e4ebf3 !important;
    background: #ffffff !important;
    color: #22314d !important;
    font-size: 0.9rem !important;
    font-weight: 590 !important;
    text-decoration: none !important;
  }

  .dm-mobile-family-links .dm-mobile-submenu-link.is-current {
    color: #c72631 !important;
    border-color: rgba(237, 48, 61, 0.2) !important;
    background: rgba(237, 48, 61, 0.05) !important;
  }

  .dm-mobile-family-links .product-count {
    flex: 0 0 auto !important;
    margin-left: 10px !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    background: #eff3f8 !important;
    color: #5d6f88 !important;
    font-size: 0.73rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  .dm-mobile-family-links .dm-mobile-submenu-link.is-current .product-count {
    background: rgba(237, 48, 61, 0.1) !important;
    color: #c72631 !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link {
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
  }
}

@media (max-width: 576px) {
  #nav-menu.active .nav-list {
    padding: 10px !important;
    border-radius: 22px !important;
  }

  #nav-menu.active .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 46px !important;
    padding: 12px 14px !important;
  }

  .dm-mobile-family-chip {
    font-size: 0.74rem !important;
    padding: 8px 11px !important;
  }

  .dm-mobile-family-label {
    font-size: 0.9rem !important;
  }

  .dm-mobile-family-links .dm-mobile-submenu-link {
    min-height: 42px !important;
    font-size: 0.86rem !important;
  }
}

/* v12 showroom-fluid correction: follow approved variant more closely */
@media (max-width: 768px) {
  #nav-menu.active {
    top: calc(var(--dm-header-height, 70px) + 10px) !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-height: min(84dvh, 740px) !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  #nav-menu.active::before,
  #nav-menu.active .header-mega-dropdown,
  #nav-menu.active .nav-list::before,
  #nav-menu.active .mobile-menu-products-link,
  #nav-menu.active .dm-mobile-family-stack,
  #nav-menu.active .dm-mobile-family-group,
  #nav-menu.active .dm-mobile-family-trigger,
  #nav-menu.active .dm-mobile-family-links {
    display: none !important;
    content: none !important;
  }

  #nav-menu.active .nav-list {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    gap: 10px !important;
    padding: 12px !important;
    background: rgba(255, 255, 255, 0.985) !important;
    border: 1px solid rgba(221, 229, 239, 0.95) !important;
    border-radius: 24px !important;
    box-shadow: 0 20px 60px rgba(15, 23, 42, 0.14) !important;
    backdrop-filter: blur(16px) !important;
    overflow-y: auto !important;
    max-height: min(84dvh, 740px) !important;
  }

  #nav-menu.active .nav-list > li {
    margin: 0 !important;
    border: 0 !important;
  }

  #nav-menu.active .nav-list > li:nth-child(1) { order: 2 !important; }
  #nav-menu.active .nav-list > li:nth-child(2) { order: 3 !important; }
  #nav-menu.active .nav-list > li:nth-child(3) { order: 4 !important; }
  #nav-menu.active .nav-list > li.has-mega-menu { order: 1 !important; }
  #nav-menu.active .nav-list > li:nth-child(5) { order: 5 !important; }
  #nav-menu.active .nav-list > li:nth-child(6) { order: 6 !important; }
  #nav-menu.active .nav-list > li:nth-child(7) { order: 7 !important; }

  #nav-menu.active .has-mega-menu {
    display: block !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 52px !important;
    padding: 14px 16px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #1c2740 0%, #24334f 100%) !important;
    color: #ffffff !important;
    border: 1px solid rgba(28, 39, 64, 0.9) !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.15) !important;
    font-size: 0.98rem !important;
    font-weight: 700 !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link::before {
    display: none !important;
    content: none !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '›' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
    font-size: 1rem !important;
    transform: rotate(90deg) !important;
    transition: transform 0.24s ease !important;
  }

  #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    transform: rotate(270deg) !important;
  }

  #nav-menu.active .dm-mobile-products-submenu.dm-mobile-products-showroom {
    display: grid !important;
    gap: 12px !important;
    margin-top: 10px !important;
    padding: 0 !important;
  }

  #nav-menu.active .dm-mobile-products-submenu.dm-mobile-products-showroom[hidden] {
    display: none !important;
  }

  .dm-mobile-family-ribbon {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    padding: 2px 0 4px !important;
    scrollbar-width: none !important;
  }

  .dm-mobile-family-ribbon::-webkit-scrollbar {
    display: none !important;
  }

  .dm-mobile-family-chip {
    flex: 0 0 auto !important;
    min-height: 36px !important;
    padding: 8px 13px !important;
    border-radius: 999px !important;
    border: 1px solid #dbe4ef !important;
    background: #f8fafc !important;
    color: #52647e !important;
    font-size: 0.78rem !important;
    font-weight: 650 !important;
    white-space: nowrap !important;
  }

  .dm-mobile-family-chip.is-active,
  .dm-mobile-family-chip.is-current-context {
    background: rgba(237, 48, 61, 0.08) !important;
    border-color: rgba(237, 48, 61, 0.18) !important;
    color: #c72631 !important;
    box-shadow: 0 8px 18px rgba(237, 48, 61, 0.08) !important;
  }

  .dm-mobile-showroom-panels {
    display: grid !important;
  }

  .dm-mobile-showroom-section {
    display: grid !important;
    gap: 10px !important;
    padding: 12px !important;
    border-radius: 20px !important;
    border: 1px solid rgba(226, 233, 242, 0.95) !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%) !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05) !important;
  }

  .dm-mobile-showroom-section[hidden] {
    display: none !important;
  }

  .dm-mobile-showroom-section-header {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 2px 2px 0 !important;
  }

  .dm-mobile-showroom-title {
    margin: 0 !important;
    color: #22314d !important;
    font-size: 0.94rem !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
  }

  .dm-mobile-showroom-meta {
    flex: 0 0 auto !important;
    color: #7a879b !important;
    font-size: 0.73rem !important;
    font-weight: 600 !important;
  }

  .dm-mobile-showroom-links {
    display: grid !important;
    gap: 8px !important;
  }

  .dm-mobile-showroom-links .dm-mobile-submenu-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    min-height: 46px !important;
    padding: 11px 12px !important;
    border-radius: 14px !important;
    border: 1px solid #e4ebf3 !important;
    background: #ffffff !important;
    color: #22314d !important;
    text-decoration: none !important;
    font-size: 0.9rem !important;
    font-weight: 590 !important;
  }

  .dm-mobile-showroom-links .dm-mobile-submenu-link::after {
    content: '→' !important;
    color: #8a98ab !important;
    font-size: 0.9rem !important;
    margin-left: auto !important;
  }

  .dm-mobile-showroom-links .dm-mobile-submenu-link.is-current {
    color: #c72631 !important;
    border-color: rgba(237, 48, 61, 0.2) !important;
    background: rgba(237, 48, 61, 0.05) !important;
  }

  .dm-mobile-showroom-links .product-count {
    flex: 0 0 auto !important;
    margin-left: 8px !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    background: #eff3f8 !important;
    color: #5e718a !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  .dm-mobile-showroom-links .dm-mobile-submenu-link.is-current .product-count {
    background: rgba(237, 48, 61, 0.1) !important;
    color: #c72631 !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 44px !important;
    padding: 11px 14px !important;
    border-radius: 14px !important;
    border: 1px solid #e7edf4 !important;
    background: linear-gradient(180deg, #ffffff 0%, #f9fbfd 100%) !important;
    color: #4a5d78 !important;
    font-size: 0.9rem !important;
    font-weight: 580 !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active {
    color: #c72631 !important;
    border-color: rgba(237, 48, 61, 0.18) !important;
    background: rgba(237, 48, 61, 0.05) !important;
  }
}

@media (max-width: 576px) {
  #nav-menu.active .nav-list {
    padding: 10px !important;
    border-radius: 22px !important;
  }

  .dm-mobile-family-chip {
    font-size: 0.74rem !important;
    padding: 8px 11px !important;
  }

  .dm-mobile-showroom-title {
    font-size: 0.9rem !important;
  }

  .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 44px !important;
    font-size: 0.86rem !important;
  }
}

/* v13 strict approved-variant correction */
@media (max-width: 768px) {
  #nav-menu.active .has-mega-menu > .nav-link {
    justify-content: flex-start !important;
    gap: 0 !important;
    pointer-events: none !important;
    cursor: default !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link::before,
  #nav-menu.active .has-mega-menu > .nav-link::after,
  #nav-menu.active .has-mega-menu.is-open > .nav-link::before,
  #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    display: none !important;
    content: none !important;
  }

  #nav-menu.active .dm-mobile-products-submenu.dm-mobile-products-showroom {
    display: grid !important;
    gap: 12px !important;
  }

  #nav-menu.active .dm-mobile-showroom-panels,
  #nav-menu.active .dm-mobile-showroom-section,
  #nav-menu.active .dm-mobile-showroom-links {
    display: grid !important;
  }

  #nav-menu.active .nav-list > li.has-mega-menu {
    margin-bottom: 4px !important;
  }

  #nav-menu.active .nav-list > li.has-mega-menu + li {
    margin-top: 10px !important;
    position: relative !important;
  }

  #nav-menu.active .nav-list > li.has-mega-menu + li::before {
    content: 'Pagini generale' !important;
    display: block !important;
    margin: 0 2px 8px !important;
    color: #7b879a !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active {
    color: #4a5d78 !important;
    background: linear-gradient(180deg, #ffffff 0%, #f9fbfd 100%) !important;
    border-color: #e7edf4 !important;
    box-shadow: none !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::before,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active::before,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active::after {
    display: none !important;
    content: none !important;
  }
}

/* v14 main scrollable menu rebuilt as site navigation */
@media (max-width: 768px) {
  #nav-menu.active .nav-list > li:not(.has-mega-menu) {
    display: none !important;
  }

  #nav-menu.active .has-mega-menu {
    display: block !important;
    margin: 0 !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-products-submenu.dm-mobile-products-showroom {
    display: grid !important;
    gap: 12px !important;
    margin-top: 0 !important;
    padding: 0 !important;
  }

  .dm-mobile-main-ribbon {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    padding: 2px 0 4px !important;
    scrollbar-width: none !important;
  }

  .dm-mobile-main-ribbon::-webkit-scrollbar {
    display: none !important;
  }

  .dm-mobile-main-ribbon .dm-mobile-main-tab {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 38px !important;
    padding: 9px 14px !important;
    border-radius: 999px !important;
    border: 1px solid #dbe4ef !important;
    background: #ffffff !important;
    color: #556781 !important;
    font-size: 0.79rem !important;
    font-weight: 650 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }

  .dm-mobile-main-ribbon .dm-mobile-main-tab.is-active {
    background: rgba(237, 48, 61, 0.08) !important;
    border-color: rgba(237, 48, 61, 0.18) !important;
    color: #c72631 !important;
    box-shadow: 0 8px 18px rgba(237, 48, 61, 0.08) !important;
  }

  .dm-mobile-family-ribbon {
    margin-top: 2px !important;
  }
}

@media (max-width: 576px) {
  .dm-mobile-main-ribbon .dm-mobile-main-tab {
    font-size: 0.75rem !important;
    padding: 8px 12px !important;
  }
}

/* v16 main ribbon exact order, no implicit active state */
@media (max-width: 768px) {
  .dm-mobile-main-ribbon .dm-mobile-main-tab.active,
  .dm-mobile-main-ribbon .dm-mobile-main-tab[aria-current='page'],
  .dm-mobile-main-ribbon .dm-mobile-main-tab.is-active {
    background: #ffffff !important;
    border-color: #dbe4ef !important;
    color: #556781 !important;
    box-shadow: none !important;
  }

  .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    appearance: none !important;
    -webkit-appearance: none !important;
    cursor: default !important;
  }
}

/* v17 make all main pages visible without horizontal scroll */
@media (max-width: 768px) {
  .dm-mobile-main-ribbon {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 6px !important;
    overflow: visible !important;
    padding: 2px 0 6px !important;
  }

  .dm-mobile-main-ribbon .dm-mobile-main-tab,
  .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 34px !important;
    padding: 8px 6px !important;
    border-radius: 12px !important;
    font-size: 0.68rem !important;
    line-height: 1.15 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
}

@media (max-width: 576px) {
  .dm-mobile-main-ribbon {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  .dm-mobile-main-ribbon .dm-mobile-main-tab,
  .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    font-size: 0.67rem !important;
    min-height: 34px !important;
    padding: 7px 6px !important;
  }
}

/* v18 readability polish: keep layout, improve contrast/typography */
@media (max-width: 768px) {
  .dm-mobile-main-ribbon {
    gap: 8px !important;
    padding: 4px 0 8px !important;
  }

  .dm-mobile-main-ribbon .dm-mobile-main-tab,
  .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    min-height: 40px !important;
    padding: 9px 8px !important;
    border-radius: 14px !important;
    border: 1px solid #d6deea !important;
    background: linear-gradient(180deg, #ffffff 0%, #f7f9fc 100%) !important;
    color: #22314d !important;
    font-size: 0.74rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.01em !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
  }

  .dm-mobile-family-ribbon {
    gap: 9px !important;
    padding: 2px 0 6px !important;
    margin-top: 4px !important;
  }

  .dm-mobile-family-chip {
    min-height: 38px !important;
    padding: 8px 14px !important;
    border: 1px solid #d8e1ec !important;
    background: #f4f7fb !important;
    color: #344865 !important;
    font-size: 0.8rem !important;
    font-weight: 700 !important;
  }

  .dm-mobile-family-chip.is-active,
  .dm-mobile-family-chip.is-current-context {
    background: #22314d !important;
    border-color: #22314d !important;
    color: #ffffff !important;
    box-shadow: 0 10px 22px rgba(34, 49, 77, 0.18) !important;
  }

  .dm-mobile-showroom-section {
    gap: 12px !important;
    padding: 14px !important;
    border-radius: 18px !important;
    border: 1px solid #dfe6ef !important;
    background: #ffffff !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05) !important;
  }

  .dm-mobile-showroom-section-header {
    align-items: center !important;
    padding: 0 2px !important;
  }

  .dm-mobile-showroom-title {
    color: #1f2d46 !important;
    font-size: 0.98rem !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
  }

  .dm-mobile-showroom-meta {
    color: #66758b !important;
    font-size: 0.76rem !important;
    font-weight: 700 !important;
  }

  .dm-mobile-showroom-links {
    gap: 10px !important;
  }

  .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 48px !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    border: 1px solid #e0e7f0 !important;
    background: #fbfcfe !important;
    color: #1f2d46 !important;
    font-size: 0.93rem !important;
    font-weight: 650 !important;
    line-height: 1.28 !important;
  }

  .dm-mobile-showroom-links .dm-mobile-submenu-link::after {
    color: #6c7c92 !important;
    font-size: 0.95rem !important;
  }

  .dm-mobile-showroom-links .product-count {
    padding: 4px 8px !important;
    background: #eef3f8 !important;
    color: #455a78 !important;
    font-size: 0.74rem !important;
    font-weight: 800 !important;
  }
}

@media (max-width: 576px) {
  .dm-mobile-main-ribbon .dm-mobile-main-tab,
  .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    font-size: 0.72rem !important;
    min-height: 40px !important;
  }

  .dm-mobile-family-chip {
    font-size: 0.78rem !important;
  }

  .dm-mobile-showroom-title {
    font-size: 0.95rem !important;
  }

  .dm-mobile-showroom-links .dm-mobile-submenu-link {
    font-size: 0.9rem !important;
  }
}

/* v19 top navigation rearranged: centered two-row wrap, products included */
@media (max-width: 768px) {
  .dm-mobile-main-ribbon {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 7px !important;
    overflow: visible !important;
    padding: 4px 0 10px !important;
  }

  .dm-mobile-main-ribbon .dm-mobile-main-tab,
  .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    flex: 0 1 auto !important;
    width: auto !important;
    min-width: 88px !important;
    max-width: 112px !important;
    min-height: 38px !important;
    padding: 8px 10px !important;
    border-radius: 12px !important;
    font-size: 0.72rem !important;
    line-height: 1.15 !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
    text-align: center !important;
  }
}

@media (max-width: 576px) {
  .dm-mobile-main-ribbon {
    gap: 6px !important;
    padding: 4px 0 9px !important;
  }

  .dm-mobile-main-ribbon .dm-mobile-main-tab,
  .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    min-width: 84px !important;
    max-width: 108px !important;
    min-height: 37px !important;
    padding: 8px 9px !important;
    font-size: 0.7rem !important;
  }
}

/* v20 top area rebalanced: 4 primary tabs on first row, 3 secondary tabs on second row */
@media (max-width: 768px) {
  .dm-mobile-main-ribbon {
    display: grid !important;
    grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 8px !important;
    overflow: visible !important;
    padding: 4px 0 10px !important;
  }

  .dm-mobile-main-ribbon .dm-mobile-main-tab,
  .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    grid-column: span 3 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 40px !important;
    padding: 9px 8px !important;
    border-radius: 13px !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    font-size: 0.73rem !important;
    line-height: 1.18 !important;
  }

  .dm-mobile-main-ribbon .dm-mobile-main-tab:nth-child(n+5),
  .dm-mobile-main-ribbon .dm-mobile-main-tab-products:nth-child(n+5) {
    grid-column: span 4 !important;
  }
}

@media (max-width: 576px) {
  .dm-mobile-main-ribbon {
    gap: 7px !important;
  }

  .dm-mobile-main-ribbon .dm-mobile-main-tab,
  .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    min-height: 39px !important;
    padding: 8px 7px !important;
    font-size: 0.71rem !important;
  }
}

/* v21 stable mobile menu override: mobile only, desktop untouched */
@media (max-width: 768px) {
  body.mobile-menu-open {
    overflow: hidden !important;
    touch-action: none !important;
  }

  .header,
  .header .container,
  .header-content,
  .header-actions,
  .mobile-menu-toggle,
  .btn-phone {
    overflow: visible !important;
  }

  .header {
    isolation: isolate !important;
    z-index: 10020 !important;
  }

  .mobile-menu-toggle,
  .btn-phone {
    position: relative !important;
    z-index: 10030 !important;
  }

  #nav-menu {
    position: fixed !important;
    top: calc(var(--dm-header-height, 72px) + env(safe-area-inset-top, 0px)) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 10010 !important;
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    margin: 0 !important;
    padding: 14px 14px calc(24px + env(safe-area-inset-bottom, 0px)) !important;
    background: linear-gradient(180deg, #f8fbff 0%, #eef4fb 100%) !important;
    border-top: 1px solid rgba(15, 23, 42, 0.08) !important;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.16) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
  }

  #nav-menu.active {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  #nav-menu.active::before,
  #nav-menu.active .nav-list::before,
  #nav-menu.active .header-mega-dropdown,
  #nav-menu.active .mobile-menu-products-link {
    display: none !important;
    content: none !important;
  }

  #nav-menu.active .nav-list {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  #nav-menu.active .nav-list > li {
    width: 100% !important;
    margin: 0 !important;
  }

  #nav-menu.active .nav-list > li.has-mega-menu {
    order: -1 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 54px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 15px 16px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #ffffff !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08) !important;
    color: #10213b !important;
    font-size: 0.98rem !important;
    font-weight: 700 !important;
    line-height: 1.24 !important;
    text-align: left !important;
    text-decoration: none !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active {
    background: linear-gradient(135deg, #d92d39 0%, #f04b57 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 14px 30px rgba(217, 45, 57, 0.22) !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link {
    background: linear-gradient(135deg, #0f2748 0%, #173a68 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 14px 32px rgba(15, 39, 72, 0.24) !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '' !important;
    flex: 0 0 10px !important;
    width: 10px !important;
    height: 10px !important;
    margin-left: auto !important;
    border-right: 2px solid currentColor !important;
    border-bottom: 2px solid currentColor !important;
    transform: rotate(45deg) translateY(-1px) !important;
    transition: transform 0.2s ease !important;
  }

  #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    transform: rotate(-135deg) translateY(-1px) !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    display: block !important;
    margin: 0 !important;
    padding: 14px !important;
    border-radius: 22px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    border: 1px solid rgba(15, 23, 42, 0.07) !important;
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.10) !important;
    overflow: hidden !important;
  }

  #nav-menu.active .dm-mobile-products-submenu[hidden] {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon {
    position: sticky !important;
    top: 0 !important;
    z-index: 2 !important;
    display: grid !important;
    grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin: 0 0 14px !important;
    padding: 2px 0 8px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.88) 100%) !important;
    backdrop-filter: blur(10px) !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab,
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    grid-column: span 3 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 8px 7px !important;
    border-radius: 13px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #ffffff !important;
    color: #16314f !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06) !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab:nth-child(n+5),
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products:nth-child(n+5) {
    grid-column: span 4 !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    background: linear-gradient(135deg, #d92d39 0%, #f04b57 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 12px 26px rgba(217, 45, 57, 0.22) !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon {
    display: flex !important;
    gap: 8px !important;
    margin: 0 0 14px !important;
    padding: 2px 0 4px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon::-webkit-scrollbar {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    flex: 0 0 auto !important;
    min-height: 38px !important;
    padding: 9px 13px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #f6f9fc !important;
    color: #1f3554 !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    scroll-snap-align: start !important;
  }

  #nav-menu.active .dm-mobile-family-chip.is-active,
  #nav-menu.active .dm-mobile-family-chip.is-current-context {
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 10px 22px rgba(22, 49, 79, 0.18) !important;
  }

  #nav-menu.active .dm-mobile-showroom-panels,
  #nav-menu.active .dm-mobile-showroom-section {
    display: block !important;
  }

  #nav-menu.active .dm-mobile-showroom-section[hidden] {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-showroom-section-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 0 0 12px !important;
    padding: 0 2px !important;
  }

  #nav-menu.active .dm-mobile-showroom-title {
    margin: 0 !important;
    color: #10213b !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

  #nav-menu.active .dm-mobile-showroom-meta {
    flex: 0 0 auto !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    background: #edf3fa !important;
    color: #506784 !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.02em !important;
  }

  #nav-menu.active .dm-mobile-showroom-links {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 52px !important;
    padding: 13px 14px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #ffffff !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05) !important;
    color: #132742 !important;
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    line-height: 1.26 !important;
    text-decoration: none !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link::after {
    color: #74849a !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link.is-current {
    border-color: rgba(217, 45, 57, 0.35) !important;
    background: linear-gradient(135deg, rgba(217, 45, 57, 0.08) 0%, rgba(240, 75, 87, 0.03) 100%) !important;
    box-shadow: 0 10px 22px rgba(217, 45, 57, 0.10) !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .product-count {
    flex: 0 0 auto !important;
    margin-left: 8px !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    background: #edf2f8 !important;
    color: #4a607d !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
  }
}

@media (max-width: 576px) {
  #nav-menu {
    padding: 12px 12px calc(20px + env(safe-area-inset-bottom, 0px)) !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 52px !important;
    padding: 14px 14px !important;
    font-size: 0.94rem !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    padding: 12px !important;
    border-radius: 18px !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon {
    gap: 7px !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab,
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    min-height: 39px !important;
    padding: 8px 6px !important;
    font-size: 0.69rem !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    font-size: 0.74rem !important;
  }

  #nav-menu.active .dm-mobile-showroom-title {
    font-size: 0.94rem !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 50px !important;
    font-size: 0.89rem !important;
  }
}

/* v22 full-screen mobile menu mask: hides site behind menu */
@media (max-width: 768px) {
  body.mobile-menu-open::before {
    content: '' !important;
    position: fixed !important;
    inset: 0 !important;
    background: linear-gradient(180deg, #f8fbff 0%, #eef4fb 100%) !important;
    z-index: 10000 !important;
  }

  body.mobile-menu-open main,
  body.mobile-menu-open footer,
  body.mobile-menu-open #back-to-top {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    user-select: none !important;
  }

  body.mobile-menu-open .header {
    position: relative !important;
    z-index: 10030 !important;
  }

  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active {
    top: 0 !important;
    bottom: 0 !important;
    min-height: 100dvh !important;
    padding-top: calc(var(--dm-header-height, 72px) + 14px + env(safe-area-inset-top, 0px)) !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list {
    min-height: calc(100dvh - var(--dm-header-height, 72px) - 24px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)) !important;
    align-content: start !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li.has-mega-menu {
    flex: 1 0 auto !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu {
    min-height: clamp(360px, calc(100dvh - var(--dm-header-height, 72px) - 150px), 720px) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-panels {
    min-height: calc(100% - 92px) !important;
  }
}

@media (max-width: 576px) {
  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active {
    padding-top: calc(var(--dm-header-height, 70px) + 12px + env(safe-area-inset-top, 0px)) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu {
    min-height: calc(100dvh - var(--dm-header-height, 70px) - 136px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* v23 top area redesign: cleaner mobile hierarchy, keep blue family selector */
@media (max-width: 768px) {
  body.mobile-menu-open .header .container {
    padding: calc(env(safe-area-inset-top, 0px) + 8px) 12px 0 !important;
  }

  body.mobile-menu-open .header-content {
    min-height: auto !important;
    padding: 10px 12px !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08) !important;
    backdrop-filter: blur(12px) !important;
  }

  body.mobile-menu-open .logo img {
    height: 32px !important;
    max-height: 32px !important;
    width: auto !important;
  }

  body.mobile-menu-open .header-actions {
    gap: 8px !important;
  }

  body.mobile-menu-open .btn-phone,
  body.mobile-menu-open .mobile-menu-toggle {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
    border-radius: 14px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #ffffff !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08) !important;
  }

  body.mobile-menu-open .btn-phone {
    color: #d92d39 !important;
  }

  body.mobile-menu-open .btn-phone i,
  body.mobile-menu-open .mobile-menu-toggle span {
    color: #d92d39 !important;
    background: #d92d39 !important;
  }

  body.mobile-menu-open .mobile-menu-toggle.active {
    background: linear-gradient(135deg, #fff5f5 0%, #ffe7e9 100%) !important;
  }

  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active {
    padding-top: calc(var(--dm-header-height, 72px) + 10px + env(safe-area-inset-top, 0px)) !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list {
    gap: 10px !important;
    min-height: auto !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li.has-mega-menu {
    gap: 8px !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link {
    display: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu {
    min-height: auto !important;
    padding: 10px !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(249,251,255,0.96) 100%) !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-main-ribbon {
    position: static !important;
    gap: 6px !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab,
  body.mobile-menu-open #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    min-height: 36px !important;
    padding: 7px 6px !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    font-size: 0.68rem !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab {
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    color: #203552 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    background: linear-gradient(135deg, #ffe9eb 0%, #ffd9dd 100%) !important;
    color: #d92d39 !important;
    border: 1px solid rgba(217, 45, 57, 0.14) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.35) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-ribbon {
    margin: 2px -2px 10px !important;
    padding: 2px 2px 4px !important;
    gap: 8px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip {
    min-height: 42px !important;
    padding: 10px 14px !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, #ffffff 0%, #f4f7fb 100%) !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    color: #213754 !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip.is-active,
  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip.is-current-context {
    background: linear-gradient(135deg, #173963 0%, #224d7b 58%, #2f6695 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 14px 24px rgba(23, 57, 99, 0.22) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-section-header {
    margin: 2px 0 10px !important;
    padding: 0 4px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-title {
    font-size: 0.98rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-meta {
    font-size: 0.68rem !important;
    padding: 5px 8px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links {
    gap: 8px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 48px !important;
    padding: 12px 13px !important;
    border-radius: 14px !important;
    box-shadow: 0 6px 14px rgba(15, 23, 42, 0.04) !important;
  }
}

@media (max-width: 576px) {
  body.mobile-menu-open .header .container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.mobile-menu-open .header-content {
    padding: 9px 10px !important;
    border-radius: 18px !important;
  }

  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab,
  body.mobile-menu-open #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products {
    font-size: 0.66rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip {
    min-height: 40px !important;
    font-size: 0.75rem !important;
  }
}

/* v25 clickable products submenu fix */
@media (max-width: 768px) {
  body.mobile-menu-open {
    touch-action: auto !important;
  }

  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-panels,
  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-section,
  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links {
    pointer-events: auto !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links {
    position: relative !important;
    z-index: 4 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    position: relative !important;
    z-index: 5 !important;
    pointer-events: auto !important;
    touch-action: manipulation !important;
    -webkit-tap-highlight-color: rgba(217, 45, 57, 0.12) !important;
    cursor: pointer !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link::after {
    pointer-events: none !important;
  }
}

/* v28 mobile footer applied from blended mockup: smooth, continuous, mobile only */
@media (max-width: 768px) {
  .footer,
  .main-footer {
    position: relative !important;
    padding: 32px 0 calc(18px + env(safe-area-inset-bottom, 0px)) !important;
    background:
      radial-gradient(circle at 14% 0%, rgba(0, 180, 216, 0.12), transparent 34%),
      radial-gradient(circle at 84% 8%, rgba(237, 48, 61, 0.08), transparent 22%),
      linear-gradient(180deg, #192544 0%, #10192d 42%, #0b1120 100%) !important;
    color: #ffffff !important;
    overflow: hidden !important;
  }

  .footer::before,
  .main-footer::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(255,255,255,0.025), transparent 24%, transparent 78%, rgba(255,255,255,0.02)) !important;
    pointer-events: none !important;
  }

  .footer .container,
  .main-footer .footer-container {
    position: relative !important;
    z-index: 1 !important;
    width: min(100%, calc(100vw - 30px)) !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  .footer-content,
  .main-footer .footer-container {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    margin-bottom: 18px !important;
  }

  .footer-col,
  .main-footer .footer-column {
    min-width: 0 !important;
    padding: 18px 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    position: relative !important;
  }

  .footer-col + .footer-col,
  .main-footer .footer-column + .footer-column {
    margin-top: 0 !important;
    padding-top: 24px !important;
  }

  .footer-col + .footer-col::before,
  .main-footer .footer-column + .footer-column::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent 0%, rgba(86, 182, 255, 0.06) 10%, rgba(110, 214, 236, 0.34) 24%, rgba(255,255,255,0.14) 50%, rgba(237,48,61,0.22) 76%, rgba(237,48,61,0.04) 92%, transparent 100%) !important;
  }

  .footer-about,
  .main-footer .footer-column:first-child {
    text-align: center !important;
    padding-top: 4px !important;
    padding-bottom: 18px !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  .footer-logo {
    height: auto !important;
    max-width: 158px !important;
    margin: 0 auto 14px !important;
  }

  .footer-about p,
  .main-footer .footer-column:first-child p {
    margin: 0 auto !important;
    max-width: 33ch !important;
    color: rgba(244, 247, 251, 0.78) !important;
    font-size: 0.93rem !important;
    line-height: 1.68 !important;
  }

  .footer-about::before,
  .footer-about::after,
  .main-footer .footer-column:first-child::after {
    content: none !important;
    display: none !important;
  }

  .footer-col h4,
  .footer-col .footer-heading,
  .main-footer .footer-column h3,
  .main-footer .footer-column h4 {
    margin: 0 0 12px !important;
    color: #ffffff !important;
    font-size: 0.98rem !important;
    line-height: 1.3 !important;
    letter-spacing: 0.01em !important;
  }

  .footer-col:not(.footer-about) h4,
  .footer-col:not(.footer-about) .footer-heading,
  .main-footer .footer-column:not(:first-child) h4 {
    padding-left: 0 !important;
    text-align: center !important;
  }

  .footer-col:not(.footer-about) h4::before,
  .footer-col:not(.footer-about) .footer-heading::before,
  .main-footer .footer-column:not(:first-child) h4::before {
    content: none !important;
  }

  .footer-social,
  .main-footer .social-links {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 10px !important;
    margin-top: 16px !important;
  }

  .footer-social a,
  .main-footer .social-links a {
    width: 42px !important;
    height: 42px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: none !important;
    color: #ffffff !important;
    font-size: 0.98rem !important;
    transform: none !important;
  }

  .footer-links,
  .main-footer .footer-column ul,
  .main-footer .contact-info {
    display: grid !important;
    gap: 7px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    justify-items: center !important;
    text-align: center !important;
  }

  .footer-links li,
  .main-footer .footer-column li,
  .main-footer .contact-info li {
    margin: 0 !important;
    color: rgba(244, 247, 251, 0.84) !important;
    font-size: 0.93rem !important;
    line-height: 1.5 !important;
    text-align: center !important;
  }

  .footer-links a,
  .main-footer .footer-column a {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 0 !important;
    padding: 6px 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: #f4f7fb !important;
    line-height: 1.5 !important;
    justify-content: center !important;
    text-align: center !important;
    transform: none !important;
    box-shadow: none !important;
  }

  .footer-links a:hover,
  .footer-links a:active,
  .main-footer .footer-column a:hover,
  .main-footer .footer-column a:active {
    color: #ffffff !important;
    background: transparent !important;
    border-color: transparent !important;
    transform: none !important;
  }

  .footer-links i,
  .main-footer .footer-column li i {
    margin-top: 0 !important;
    color: #6ed6ec !important;
    flex: 0 0 auto !important;
    align-self: center !important;
  }

  .footer-links li:not(:has(a)),
  .main-footer .footer-column li:not(:has(a)) {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    min-height: 0 !important;
    padding: 6px 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    border: 0 !important;
    text-align: center !important;
  }

  .footer-bottom,
  .main-footer .footer-bottom {
    margin-top: 8px !important;
    padding: 18px 0 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    text-align: center !important;
    color: rgba(255, 255, 255, 0.68) !important;
    font-size: 0.82rem !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 480px) {
  .footer,
  .main-footer {
    padding-top: 28px !important;
  }

  .footer-col,
  .main-footer .footer-column {
    padding: 16px 0 !important;
  }

  .footer-col + .footer-col,
  .main-footer .footer-column + .footer-column {
    padding-top: 22px !important;
  }

  .footer-links a,
  .main-footer .footer-column a,
  .footer-links li:not(:has(a)),
  .main-footer .footer-column li:not(:has(a)) {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    font-size: 0.91rem !important;
  }

  .footer-about p,
  .main-footer .footer-column:first-child p {
    font-size: 0.9rem !important;
  }
}

/* v29 mobile top menu restructure: vertical primary nav + separate product chips */
@media (max-width: 768px) {
  #nav-menu.active .dm-mobile-products-submenu {
    padding: 14px !important;
    border-radius: 22px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(248, 251, 255, 0.94) 100%) !important;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.10) !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon {
    position: relative !important;
    top: auto !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin: 0 0 16px !important;
    padding: 0 0 16px !important;
    background: transparent !important;
    backdrop-filter: none !important;
    border-bottom: 1px solid rgba(15, 39, 72, 0.08) !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon::after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -1px !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent 0%, rgba(62, 143, 225, 0.26) 20%, rgba(130, 184, 233, 0.18) 50%, rgba(237, 48, 61, 0.18) 80%, transparent 100%) !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab,
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products,
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab:nth-child(n+5),
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products:nth-child(n+5) {
    grid-column: auto !important;
    width: 100% !important;
    min-height: 46px !important;
    justify-content: flex-start !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    background: rgba(255, 255, 255, 0.9) !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04) !important;
    color: #16314f !important;
    font-size: 0.9rem !important;
    line-height: 1.2 !important;
    text-align: left !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products,
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab.is-active,
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab[aria-current='page'],
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products.is-active,
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products[aria-current='page'] {
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 12px 26px rgba(22, 49, 79, 0.18) !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon {
    gap: 8px !important;
    margin: 0 0 12px !important;
    padding: 0 0 6px !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon::before {
    content: 'Categorii produse' !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 10px !important;
    color: #5b6f89 !important;
    font-size: 0.73rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    min-height: 36px !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    font-size: 0.76rem !important;
    box-shadow: none !important;
  }

  #nav-menu.active .dm-mobile-showroom-section-header {
    justify-content: flex-end !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
  }

  #nav-menu.active .dm-mobile-showroom-title {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-showroom-meta {
    padding: 5px 9px !important;
    background: #edf3fa !important;
    color: #58708d !important;
    font-size: 0.7rem !important;
  }
}

@media (max-width: 576px) {
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab,
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products,
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab:nth-child(n+5),
  #nav-menu.active .dm-mobile-main-ribbon .dm-mobile-main-tab-products:nth-child(n+5) {
    min-height: 44px !important;
    padding: 11px 13px !important;
    font-size: 0.86rem !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    font-size: 0.74rem !important;
  }
}

/* v30 mobile menu cleanup from research: remove duplicated nav layer inside products */
@media (max-width: 768px) {
  #nav-menu.active .dm-mobile-main-ribbon {
    display: none !important;
  }

  #nav-menu.active .nav-list {
    gap: 10px !important;
  }

  #nav-menu.active .nav-list > li.has-mega-menu {
    gap: 10px !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 50px !important;
    padding: 13px 15px !important;
    border-radius: 16px !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    margin-top: 2px !important;
    padding: 12px !important;
    border-radius: 18px !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon {
    margin: 0 0 10px !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon::before {
    margin: 0 0 8px !important;
  }

  #nav-menu.active .dm-mobile-showroom-section-header {
    display: flex !important;
    justify-content: flex-start !important;
    margin: 0 0 8px !important;
  }

  #nav-menu.active .dm-mobile-showroom-title {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-showroom-meta {
    margin: 0 !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    background: #eef4fb !important;
    color: #5a708b !important;
    font-size: 0.69rem !important;
    font-weight: 800 !important;
  }

  #nav-menu.active .dm-mobile-showroom-links {
    gap: 8px !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 50px !important;
    padding: 12px 13px !important;
    border-radius: 14px !important;
    font-size: 0.9rem !important;
  }
}

@media (max-width: 576px) {
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 48px !important;
    padding: 12px 14px !important;
    font-size: 0.92rem !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    padding: 11px !important;
    border-radius: 16px !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 48px !important;
    font-size: 0.88rem !important;
  }
}

/* v30 mobile top menu alternative: single vertical menu + products accordion */
@media (max-width: 768px) {
  #nav-menu {
    padding-top: 12px !important;
  }

  #nav-menu.active .nav-list {
    gap: 10px !important;
  }

  #nav-menu.active .nav-list > li.has-mega-menu {
    order: 0 !important;
    gap: 10px !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 50px !important;
    padding: 13px 14px !important;
    border-radius: 16px !important;
    font-size: 0.93rem !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06) !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    margin-top: 2px !important;
    padding: 12px !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(245,249,253,0.96) 100%) !important;
    box-shadow: 0 14px 32px rgba(15, 23, 42, 0.08) !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin: 0 0 12px !important;
    padding: 26px 0 4px !important;
    overflow: visible !important;
    position: relative !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon::before {
    content: 'Categorii produse' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    color: #5c718d !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    width: 100% !important;
    min-height: 40px !important;
    justify-content: center !important;
    padding: 9px 10px !important;
    border-radius: 12px !important;
    font-size: 0.75rem !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.2 !important;
  }

  #nav-menu.active .dm-mobile-showroom-section-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin: 0 0 10px !important;
    padding: 2px 0 0 !important;
  }

  #nav-menu.active .dm-mobile-showroom-title {
    display: block !important;
    font-size: 0.98rem !important;
    font-weight: 800 !important;
    color: #10213b !important;
  }

  #nav-menu.active .dm-mobile-showroom-meta {
    padding: 5px 8px !important;
    font-size: 0.68rem !important;
  }
}

@media (max-width: 576px) {
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 48px !important;
    padding: 12px 13px !important;
    font-size: 0.9rem !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    min-height: 38px !important;
    font-size: 0.72rem !important;
    padding: 8px 9px !important;
  }
}

/* v31 mobile menu rethink: left drawer inspired layout */
@media (max-width: 768px) {
  #nav-menu {
    top: calc(var(--dm-header-height, 72px) + env(safe-area-inset-top, 0px)) !important;
    left: 0 !important;
    right: auto !important;
    width: min(88vw, 320px) !important;
    max-width: min(88vw, 320px) !important;
    padding: 10px 12px calc(18px + env(safe-area-inset-bottom, 0px)) !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
    border-top: 0 !important;
    border-right: 1px solid rgba(15, 23, 42, 0.08) !important;
    border-radius: 0 0 22px 0 !important;
    box-shadow: 18px 0 40px rgba(15, 23, 42, 0.16) !important;
  }

  #nav-menu.active .nav-list {
    gap: 8px !important;
  }

  #nav-menu.active .nav-list > li.has-mega-menu {
    order: 0 !important;
    gap: 8px !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 46px !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    box-shadow: none !important;
    color: #132742 !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active,
  #nav-menu.active .has-mega-menu > .nav-link,
  #nav-menu.active .has-mega-menu.is-open > .nav-link {
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    margin-top: 2px !important;
    padding: 10px !important;
    border-radius: 16px !important;
    background: #f6f9fc !important;
    border: 1px solid rgba(15, 23, 42, 0.05) !important;
    box-shadow: none !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    margin: 0 0 10px !important;
    padding: 22px 0 0 !important;
    overflow: visible !important;
    position: relative !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon::before {
    content: 'Categorii produse' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    color: #60758f !important;
    font-size: 0.71rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    width: 100% !important;
    min-height: 42px !important;
    padding: 11px 14px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    background: #ffffff !important;
    color: #183250 !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    text-align: left !important;
    justify-content: flex-start !important;
    white-space: normal !important;
    line-height: 1.2 !important;
    position: relative !important;
  }

  #nav-menu.active .dm-mobile-family-chip::after {
    content: '›' !important;
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #7a8ba0 !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
  }

  #nav-menu.active .dm-mobile-family-chip.is-active,
  #nav-menu.active .dm-mobile-family-chip.is-current-context {
    background: linear-gradient(135deg, #edf4fb 0%, #e7f0fa 100%) !important;
    color: #10213b !important;
    border-color: rgba(62, 143, 225, 0.18) !important;
    box-shadow: inset 3px 0 0 #1f5ea8 !important;
  }

  #nav-menu.active .dm-mobile-showroom-section-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin: 0 0 8px !important;
    padding: 4px 2px 0 !important;
  }

  #nav-menu.active .dm-mobile-showroom-title {
    margin: 0 !important;
    font-size: 0.9rem !important;
    font-weight: 800 !important;
    color: #10213b !important;
  }

  #nav-menu.active .dm-mobile-showroom-meta {
    padding: 4px 8px !important;
    font-size: 0.67rem !important;
    background: #eaf1f8 !important;
    color: #5d718a !important;
  }

  #nav-menu.active .dm-mobile-showroom-links {
    gap: 6px !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 44px !important;
    padding: 11px 12px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(15, 23, 42, 0.05) !important;
    background: #ffffff !important;
    box-shadow: none !important;
    font-size: 0.84rem !important;
  }
}

@media (max-width: 576px) {
  #nav-menu {
    width: min(90vw, 304px) !important;
    max-width: min(90vw, 304px) !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 44px !important;
    padding: 11px 13px !important;
    font-size: 0.88rem !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    min-height: 40px !important;
    font-size: 0.78rem !important;
    padding: 10px 12px !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 42px !important;
    font-size: 0.82rem !important;
  }
}

/* v32 mobile menu architecture: general pages visible + products accordion */
@media (max-width: 768px) {
  #nav-menu {
    top: calc(var(--dm-header-height, 72px) + env(safe-area-inset-top, 0px)) !important;
    left: 0 !important;
    right: auto !important;
    width: min(88vw, 336px) !important;
    max-width: min(88vw, 336px) !important;
    padding: 10px 12px calc(18px + env(safe-area-inset-bottom, 0px)) !important;
    background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%) !important;
    border-top: 0 !important;
    border-right: 1px solid rgba(15, 23, 42, 0.08) !important;
    border-radius: 0 0 24px 0 !important;
    box-shadow: 20px 0 44px rgba(15, 23, 42, 0.16) !important;
  }

  #nav-menu.active .nav-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
  }

  #nav-menu.active .nav-list > li,
  #nav-menu.active .nav-list > li:not(.has-mega-menu),
  #nav-menu.active .nav-list > li.has-mega-menu {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    order: 0 !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 47px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    background: #ffffff !important;
    color: #132742 !important;
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after {
    content: '›' !important;
    color: #8394a8 !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    margin-left: auto !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active {
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 12px 26px rgba(22, 49, 79, 0.16) !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active::after {
    color: rgba(255,255,255,0.85) !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link {
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 12px 26px rgba(22, 49, 79, 0.16) !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '⌄' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    margin-left: auto !important;
    border: 0 !important;
    background: rgba(255,255,255,0.14) !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    font-size: 0.92rem !important;
    transform: none !important;
    transition: transform 0.2s ease !important;
  }

  #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    transform: rotate(180deg) !important;
  }

  #nav-menu.active .dm-mobile-main-ribbon {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    display: block !important;
    margin: 8px 0 0 !important;
    padding: 12px !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(246, 250, 253, 0.98) 0%, rgba(239, 245, 251, 0.96) 100%) !important;
    border: 1px solid rgba(15, 23, 42, 0.05) !important;
    box-shadow: none !important;
  }

  #nav-menu.active .dm-mobile-products-submenu[hidden] {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 7px !important;
    margin: 0 0 12px !important;
    padding: 26px 0 0 !important;
    position: relative !important;
    overflow: visible !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon::before {
    content: 'Categorii produse' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    color: #617690 !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    width: 100% !important;
    min-height: 42px !important;
    padding: 11px 14px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    background: #ffffff !important;
    color: #183250 !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    text-align: left !important;
    justify-content: flex-start !important;
    white-space: normal !important;
    line-height: 1.2 !important;
    position: relative !important;
    box-shadow: none !important;
  }

  #nav-menu.active .dm-mobile-family-chip::after {
    content: '›' !important;
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #7f91a6 !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
  }

  #nav-menu.active .dm-mobile-family-chip.is-active,
  #nav-menu.active .dm-mobile-family-chip.is-current-context {
    background: linear-gradient(135deg, #eaf2fb 0%, #e2edf9 100%) !important;
    color: #10213b !important;
    border-color: rgba(31, 94, 168, 0.18) !important;
    box-shadow: inset 3px 0 0 #1f5ea8 !important;
  }

  #nav-menu.active .dm-mobile-showroom-section-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin: 0 0 10px !important;
    padding: 2px 0 0 !important;
  }

  #nav-menu.active .dm-mobile-showroom-title {
    display: block !important;
    margin: 0 !important;
    color: #10213b !important;
    font-size: 0.95rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

  #nav-menu.active .dm-mobile-showroom-meta {
    padding: 5px 8px !important;
    border-radius: 999px !important;
    background: #eaf1f8 !important;
    color: #5a6f89 !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
  }

  #nav-menu.active .dm-mobile-showroom-links {
    display: grid !important;
    gap: 6px !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 44px !important;
    padding: 11px 12px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(15, 23, 42, 0.05) !important;
    background: #ffffff !important;
    box-shadow: none !important;
    color: #132742 !important;
    font-size: 0.84rem !important;
    font-weight: 700 !important;
  }
}

@media (max-width: 576px) {
  #nav-menu {
    width: min(90vw, 312px) !important;
    max-width: min(90vw, 312px) !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 45px !important;
    padding: 11px 13px !important;
    font-size: 0.88rem !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    min-height: 40px !important;
    padding: 10px 12px !important;
    font-size: 0.78rem !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 42px !important;
    font-size: 0.82rem !important;
  }
}

/* v33 optimize mobile smooth navigation: general pages first, products accordion after */
@media (max-width: 768px) {
  #nav-menu.active .nav-list > li.has-mega-menu + li::before {
    display: none !important;
    content: none !important;
  }

  #nav-menu.active .nav-list > li:nth-child(1) { order: 1 !important; }
  #nav-menu.active .nav-list > li:nth-child(2) { order: 2 !important; }
  #nav-menu.active .nav-list > li:nth-child(3) { order: 3 !important; }
  #nav-menu.active .nav-list > li:nth-child(5) { order: 4 !important; }
  #nav-menu.active .nav-list > li:nth-child(6) { order: 5 !important; }
  #nav-menu.active .nav-list > li:nth-child(7) { order: 6 !important; }
  #nav-menu.active .nav-list > li.has-mega-menu { order: 7 !important; }

  #nav-menu.active .nav-list {
    gap: 7px !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 46px !important;
    border-radius: 13px !important;
    padding: 12px 14px !important;
    box-shadow: 0 6px 14px rgba(15, 23, 42, 0.03) !important;
  }

  #nav-menu.active .has-mega-menu {
    margin-top: 8px !important;
    padding-top: 10px !important;
    position: relative !important;
  }

  #nav-menu.active .has-mega-menu::before {
    content: 'Produse' !important;
    position: absolute !important;
    top: -2px !important;
    left: 2px !important;
    color: #617690 !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link {
    margin-top: 10px !important;
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    margin-top: 8px !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon {
    gap: 6px !important;
    margin-bottom: 10px !important;
    padding-top: 0 !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon::before {
    content: none !important;
    display: none !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    min-height: 40px !important;
    padding: 10px 12px !important;
    font-size: 0.79rem !important;
    border-radius: 11px !important;
  }

  #nav-menu.active .dm-mobile-showroom-section-header {
    margin: 0 0 8px !important;
  }

  #nav-menu.active .dm-mobile-showroom-title {
    font-size: 0.9rem !important;
  }

  #nav-menu.active .dm-mobile-showroom-links {
    gap: 5px !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 42px !important;
    padding: 10px 11px !important;
    border-radius: 11px !important;
    font-size: 0.82rem !important;
  }
}

@media (max-width: 576px) {
  #nav-menu.active .has-mega-menu {
    margin-top: 7px !important;
    padding-top: 9px !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 44px !important;
    padding: 11px 13px !important;
    font-size: 0.87rem !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    min-height: 38px !important;
    font-size: 0.76rem !important;
    padding: 9px 11px !important;
  }
}

/* v34 mobile menu full-width refinement: aligned rows, centered content, clean spacing */
@media (max-width: 768px) {
  body.mobile-menu-open #nav-menu,
  #nav-menu.active {
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;
    height: calc(100svh - var(--dm-header-height, 72px) - env(safe-area-inset-top, 0px)) !important;
    padding: 14px 16px calc(24px + env(safe-area-inset-bottom, 0px)) !important;
    background: linear-gradient(180deg, #ffffff 0%, #f6f9fc 100%) !important;
    border-right: 0 !important;
    border-left: 0 !important;
    border-bottom: 0 !important;
    border-radius: 0 !important;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.12) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.mobile-menu-open #nav-menu::before,
  #nav-menu.active::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(246,249,252,0.96) 100%) !important;
    pointer-events: none !important;
  }

  #nav-menu.active > * {
    position: relative !important;
    z-index: 1 !important;
  }

  #nav-menu.active .nav-list {
    width: 100% !important;
    max-width: 560px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 0 !important;
  }

  #nav-menu.active .nav-list > li,
  #nav-menu.active .nav-list > li:not(.has-mega-menu),
  #nav-menu.active .nav-list > li.has-mega-menu {
    width: 100% !important;
    margin: 0 !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    width: 100% !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 14px 16px !important;
    border-radius: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    font-size: 0.94rem !important;
    line-height: 1.2 !important;
    box-sizing: border-box !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after,
  #nav-menu.active .has-mega-menu > .nav-link::after {
    flex: 0 0 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: auto !important;
  }

  #nav-menu.active .has-mega-menu {
    margin-top: 12px !important;
    padding-top: 16px !important;
    border-top: 1px solid rgba(15, 23, 42, 0.08) !important;
  }

  #nav-menu.active .has-mega-menu::before {
    top: 0 !important;
    left: 2px !important;
    color: #5f7289 !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link {
    margin-top: 12px !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    width: 100% !important;
    max-width: 100% !important;
    margin: 10px 0 0 !important;
    padding: 14px !important;
    border-radius: 18px !important;
    box-sizing: border-box !important;
  }

  #nav-menu.active .dm-mobile-family-ribbon {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin: 0 0 12px !important;
  }

  #nav-menu.active .dm-mobile-family-chip {
    width: 100% !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
  }

  #nav-menu.active .dm-mobile-showroom-section-header {
    margin: 0 0 10px !important;
    padding: 0 2px !important;
  }

  #nav-menu.active .dm-mobile-showroom-links {
    gap: 8px !important;
  }

  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    width: 100% !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
  }
}

@media (max-width: 576px) {
  body.mobile-menu-open #nav-menu,
  #nav-menu.active {
    padding: 12px 12px calc(20px + env(safe-area-inset-bottom, 0px)) !important;
  }

  #nav-menu.active .nav-list {
    gap: 8px !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link,
  #nav-menu.active .dm-mobile-family-chip,
  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 44px !important;
    padding: 11px 13px !important;
    border-radius: 13px !important;
  }

  #nav-menu.active .dm-mobile-products-submenu {
    padding: 12px !important;
    border-radius: 16px !important;
  }
}

/* v35 mobile menu UX/UI rebuild: visible top nav, clean header, proper alignment */
@media (max-width: 768px) {
  body.mobile-menu-open .header {
    background: rgba(255, 255, 255, 0.98) !important;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08) !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08) !important;
    backdrop-filter: blur(14px) !important;
  }

  body.mobile-menu-open .header .container {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body.mobile-menu-open .header-content {
    min-height: 70px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
  }

  body.mobile-menu-open .logo {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
  }

  body.mobile-menu-open .logo img {
    height: 38px !important;
    max-height: 38px !important;
    width: auto !important;
  }

  body.mobile-menu-open .header-actions {
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
  }

  body.mobile-menu-open .btn-phone {
    width: auto !important;
    min-width: 0 !important;
    height: 40px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(217, 45, 57, 0.14) !important;
    background: linear-gradient(135deg, #fff5f5 0%, #ffecee 100%) !important;
    box-shadow: none !important;
    color: #d92d39 !important;
  }

  body.mobile-menu-open .btn-phone span {
    display: inline-block !important;
    color: #d92d39 !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  body.mobile-menu-open .btn-phone i {
    color: #d92d39 !important;
    background: none !important;
    font-size: 0.86rem !important;
  }

  body.mobile-menu-open .mobile-menu-toggle {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(217, 45, 57, 0.14) !important;
    background: linear-gradient(135deg, #fff5f5 0%, #ffe7e9 100%) !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open .mobile-menu-toggle span {
    background: #d92d39 !important;
  }

  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    top: calc(var(--dm-header-height, 72px) + env(safe-area-inset-top, 0px)) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;
    height: calc(100svh - var(--dm-header-height, 72px) - env(safe-area-inset-top, 0px)) !important;
    padding: 12px 14px calc(22px + env(safe-area-inset-bottom, 0px)) !important;
    background: linear-gradient(180deg, #ffffff 0%, #f7fafd 100%) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: 0 18px 38px rgba(15, 23, 42, 0.10) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  body.mobile-menu-open #nav-menu::before,
  body.mobile-menu-open #nav-menu.active::before,
  #nav-menu.active::before {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list,
  #nav-menu.active .nav-list {
    width: 100% !important;
    max-width: 560px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    list-style: none !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    align-items: start !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li,
  #nav-menu.active .nav-list > li {
    width: 100% !important;
    margin: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(1),
  #nav-menu.active .nav-list > li:nth-child(1) { order: 1 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(2),
  #nav-menu.active .nav-list > li:nth-child(2) { order: 2 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(3),
  #nav-menu.active .nav-list > li:nth-child(3) { order: 3 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(5),
  #nav-menu.active .nav-list > li:nth-child(5) { order: 4 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(6),
  #nav-menu.active .nav-list > li:nth-child(6) { order: 5 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(7),
  #nav-menu.active .nav-list > li:nth-child(7) { order: 6 !important; }

  body.mobile-menu-open #nav-menu.active .nav-list > li.has-mega-menu,
  #nav-menu.active .nav-list > li.has-mega-menu {
    order: 7 !important;
    grid-column: 1 / -1 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-top: 2px !important;
    padding-top: 14px !important;
    border-top: 1px solid rgba(15, 23, 42, 0.08) !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li.has-mega-menu::before,
  #nav-menu.active .nav-list > li.has-mega-menu::before {
    content: 'Produse' !important;
    position: static !important;
    display: block !important;
    margin: 0 0 2px !important;
    color: #617690 !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link {
    min-height: 52px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 12px 10px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%) !important;
    color: #16314f !important;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.04) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    white-space: normal !important;
    word-break: break-word !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active {
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 12px 24px rgba(22, 49, 79, 0.16) !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 54px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 14px 16px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 28px rgba(22, 49, 79, 0.16) !important;
    text-decoration: none !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link::before,
  #nav-menu.active .has-mega-menu > .nav-link::before {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link::after,
  #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '⌄' !important;
    width: 24px !important;
    height: 24px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.14) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transform: none !important;
    font-size: 0.92rem !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu.is-open > .nav-link::after,
  #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    transform: rotate(180deg) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-main-ribbon,
  #nav-menu.active .dm-mobile-main-ribbon,
  body.mobile-menu-open #nav-menu.active .mobile-menu-products-link,
  #nav-menu.active .mobile-menu-products-link {
    display: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    width: 100% !important;
    margin: 0 !important;
    padding: 14px !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(246,250,253,0.96) 0%, rgba(239,245,251,0.94) 100%) !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-ribbon,
  #nav-menu.active .dm-mobile-family-ribbon {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-ribbon::before,
  #nav-menu.active .dm-mobile-family-ribbon::before {
    content: none !important;
    display: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip,
  #nav-menu.active .dm-mobile-family-chip {
    width: 100% !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    background: #ffffff !important;
    color: #183250 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    font-size: 0.84rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip::after,
  #nav-menu.active .dm-mobile-family-chip::after {
    right: 14px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip.is-active,
  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip.is-current-context,
  #nav-menu.active .dm-mobile-family-chip.is-active,
  #nav-menu.active .dm-mobile-family-chip.is-current-context {
    background: linear-gradient(135deg, #e9f2fb 0%, #e3eef9 100%) !important;
    color: #10213b !important;
    border-color: rgba(31, 94, 168, 0.18) !important;
    box-shadow: inset 3px 0 0 #1f5ea8 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-section-header,
  #nav-menu.active .dm-mobile-showroom-section-header {
    margin: 0 0 10px !important;
    padding: 0 2px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-title,
  #nav-menu.active .dm-mobile-showroom-title {
    font-size: 0.95rem !important;
    color: #10213b !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links,
  #nav-menu.active .dm-mobile-showroom-links {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    width: 100% !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(15, 23, 42, 0.05) !important;
    background: #ffffff !important;
    color: #132742 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-shadow: none !important;
    font-size: 0.84rem !important;
    font-weight: 700 !important;
    line-height: 1.24 !important;
    text-decoration: none !important;
  }
}

@media (max-width: 576px) {
  body.mobile-menu-open .header .container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.mobile-menu-open .logo img {
    height: 34px !important;
    max-height: 34px !important;
  }

  body.mobile-menu-open .btn-phone {
    height: 38px !important;
    padding: 0 10px !important;
  }

  body.mobile-menu-open .btn-phone span {
    font-size: 0.78rem !important;
  }

  body.mobile-menu-open .mobile-menu-toggle {
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
  }

  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    padding: 10px 10px calc(18px + env(safe-area-inset-bottom, 0px)) !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list,
  #nav-menu.active .nav-list {
    gap: 8px !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link {
    min-height: 48px !important;
    padding: 11px 9px !important;
    font-size: 0.86rem !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link,
  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip,
  #nav-menu.active .dm-mobile-family-chip,
  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 44px !important;
    padding: 11px 12px !important;
    border-radius: 13px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    padding: 12px !important;
    border-radius: 16px !important;
  }
}

/* v33 mobile homepage first screen: hero only on load, promo begins after first scroll */
@media (max-width: 768px) {
  body.homepage-mobile-hero .header {
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: saturate(180%) blur(14px) !important;
    -webkit-backdrop-filter: saturate(180%) blur(14px) !important;
  }

  body.homepage-mobile-hero .header .container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  body.homepage-mobile-hero .header-content {
    min-height: 68px !important;
    padding: 10px 0 !important;
  }

  body.homepage-mobile-hero .hero-video-section {
    margin-top: var(--dm-header-height, 70px) !important;
    min-height: calc(100svh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
    min-height: calc(100dvh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
    align-items: stretch !important;
    overflow: clip !important;
  }

  body.homepage-mobile-hero .hero-content {
    margin-top: 0 !important;
    min-height: calc(100svh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
    min-height: calc(100dvh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
    padding: clamp(16px, 4vw, 24px) 0 clamp(22px, 5vw, 30px) !important;
    justify-content: center !important;
  }

  body.homepage-mobile-hero .hero-main-content {
    min-height: 100% !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 !important;
  }

  body.homepage-mobile-hero .hero-main-content .container {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-height: 100% !important;
  }

  body.homepage-mobile-hero .hero-title {
    margin-bottom: 24px !important;
  }

  body.homepage-mobile-hero .hero-subtitle-wrapper {
    margin-bottom: 24px !important;
  }

  body.homepage-mobile-hero .hero-cta-buttons {
    margin: 0 auto !important;
  }

  body.homepage-mobile-hero .products-section {
    padding-top: 42px !important;
  }
}

@media (max-width: 576px) {
  body.homepage-mobile-hero .header .container {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body.homepage-mobile-hero .logo img {
    max-width: min(40vw, 150px) !important;
    height: auto !important;
  }

  body.homepage-mobile-hero .hero-video-section {
    min-height: calc(100svh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
    min-height: calc(100dvh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
  }

  body.homepage-mobile-hero .hero-content {
    min-height: calc(100svh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
    min-height: calc(100dvh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
    padding: 14px 0 24px !important;
  }

  body.homepage-mobile-hero .hero-title {
    font-size: clamp(1.95rem, 8.2vw, 2.45rem) !important;
    margin-bottom: 20px !important;
  }

  body.homepage-mobile-hero .hero-subtitle {
    margin: 0 auto !important;
  }

  body.homepage-mobile-hero .hero-subtitle-wrapper {
    margin-bottom: 20px !important;
  }

  body.homepage-mobile-hero .hero-cta-buttons {
    max-width: 100% !important;
  }
}

/* v34 mobile homepage header: one clean top bar, less chopped-up */
@media (max-width: 768px) {
  body.homepage-mobile-hero .header {
    background: #ffffff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08) !important;
    box-shadow: 0 1px 0 rgba(15, 23, 42, 0.05) !important;
  }

  body.homepage-mobile-hero .header .container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.homepage-mobile-hero .header-content {
    min-height: 62px !important;
    padding: 8px 0 !important;
    gap: 8px !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body.homepage-mobile-hero .logo {
    display: flex !important;
    align-items: center !important;
  }

  body.homepage-mobile-hero .logo img {
    max-width: min(42vw, 148px) !important;
    max-height: 34px !important;
  }

  body.homepage-mobile-hero .header-actions {
    gap: 6px !important;
  }

  body.homepage-mobile-hero .btn-phone,
  body.homepage-mobile-hero .mobile-menu-toggle {
    min-height: 40px !important;
    height: 40px !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.homepage-mobile-hero .btn-phone {
    min-width: 78px !important;
    padding: 0 12px !important;
    background: #fff7f7 !important;
    border: 1px solid rgba(237, 48, 61, 0.18) !important;
  }

  body.homepage-mobile-hero .btn-phone span {
    font-size: 0.78rem !important;
  }

  body.homepage-mobile-hero .mobile-menu-toggle {
    width: 40px !important;
    min-width: 40px !important;
    border: 1px solid rgba(29, 36, 80, 0.1) !important;
    background: #1d2450 !important;
  }
}

@media (max-width: 576px) {
  body.homepage-mobile-hero .header .container {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  body.homepage-mobile-hero .header-content {
    min-height: 58px !important;
    padding: 7px 0 !important;
  }

  body.homepage-mobile-hero .logo img {
    max-width: min(39vw, 138px) !important;
    max-height: 31px !important;
  }

  body.homepage-mobile-hero .btn-phone {
    min-width: 72px !important;
    padding: 0 10px !important;
  }

  body.homepage-mobile-hero .btn-phone,
  body.homepage-mobile-hero .mobile-menu-toggle {
    height: 38px !important;
    min-height: 38px !important;
    border-radius: 11px !important;
  }

  body.homepage-mobile-hero .mobile-menu-toggle {
    width: 38px !important;
    min-width: 38px !important;
  }
}

/* v36 mobile menu redesign from research: simpler hierarchy, fewer levels visible, less dashboard-like */
@media (max-width: 768px) {
  body.mobile-menu-open .header {
    background: #ffffff !important;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08) !important;
    box-shadow: 0 1px 0 rgba(15, 23, 42, 0.05) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.mobile-menu-open .header .container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.mobile-menu-open .header-content {
    min-height: 60px !important;
    gap: 8px !important;
    padding: 8px 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open .logo img {
    height: 34px !important;
    max-height: 34px !important;
    width: auto !important;
  }

  body.mobile-menu-open .header-actions {
    gap: 6px !important;
  }

  body.mobile-menu-open .btn-phone,
  body.mobile-menu-open .mobile-menu-toggle {
    min-height: 38px !important;
    height: 38px !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open .btn-phone {
    padding: 0 10px !important;
    border-radius: 11px !important;
    background: #fff7f7 !important;
    border: 1px solid rgba(217, 45, 57, 0.16) !important;
  }

  body.mobile-menu-open .btn-phone span {
    font-size: 0.78rem !important;
  }

  body.mobile-menu-open .mobile-menu-toggle {
    width: 38px !important;
    min-width: 38px !important;
    border-radius: 11px !important;
    border: 1px solid rgba(29, 36, 80, 0.12) !important;
    background: #1d2450 !important;
  }

  body.mobile-menu-open .mobile-menu-toggle span {
    background: #ffffff !important;
  }

  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    top: calc(var(--dm-header-height, 72px) + env(safe-area-inset-top, 0px)) !important;
    height: calc(100svh - var(--dm-header-height, 72px) - env(safe-area-inset-top, 0px)) !important;
    padding: 10px 14px calc(20px + env(safe-area-inset-bottom, 0px)) !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu::before,
  body.mobile-menu-open #nav-menu.active::before,
  #nav-menu.active::before {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list,
  #nav-menu.active .nav-list {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    max-width: 560px !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li,
  #nav-menu.active .nav-list > li {
    order: initial !important;
    width: 100% !important;
    margin: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li.has-mega-menu,
  #nav-menu.active .nav-list > li.has-mega-menu {
    order: -1 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li.has-mega-menu::before,
  #nav-menu.active .nav-list > li.has-mega-menu::before {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link {
    min-height: 50px !important;
    padding: 13px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #ffffff !important;
    color: #16314f !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    text-align: left !important;
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after {
    content: '›' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    margin-left: 12px !important;
    color: #7d90a8 !important;
    font-size: 1rem !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active {
    background: #f3f7fb !important;
    border-color: rgba(31, 94, 168, 0.14) !important;
    color: #16314f !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 52px !important;
    padding: 14px 16px !important;
    border-radius: 14px !important;
    border: 0 !important;
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link::after,
  #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '⌄' !important;
    width: auto !important;
    height: auto !important;
    background: none !important;
    margin-left: 12px !important;
    font-size: 0.95rem !important;
    transform: none !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu.is-open > .nav-link::after,
  #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    transform: rotate(180deg) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    margin: 0 !important;
    padding: 12px !important;
    border-radius: 16px !important;
    background: #f7fafd !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-overview,
  #nav-menu.active .dm-mobile-products-overview {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 46px !important;
    margin: 0 0 10px !important;
    padding: 12px 14px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(15, 23, 42, 0.07) !important;
    background: #ffffff !important;
    color: #16314f !important;
    font-size: 0.88rem !important;
    font-weight: 700 !important;
    text-decoration: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-overview::after,
  #nav-menu.active .dm-mobile-products-overview::after {
    content: 'Vezi tot ›' !important;
    color: #5f7289 !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-overview.is-current,
  #nav-menu.active .dm-mobile-products-overview.is-current {
    background: #eef4fb !important;
    border-color: rgba(31, 94, 168, 0.16) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-ribbon,
  #nav-menu.active .dm-mobile-family-ribbon {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    margin: 0 0 12px !important;
    padding: 0 0 4px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-ribbon::-webkit-scrollbar,
  #nav-menu.active .dm-mobile-family-ribbon::-webkit-scrollbar {
    display: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-ribbon::before,
  #nav-menu.active .dm-mobile-family-ribbon::before {
    content: none !important;
    display: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip,
  #nav-menu.active .dm-mobile-family-chip {
    width: auto !important;
    min-width: max-content !important;
    min-height: 36px !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #ffffff !important;
    color: #183250 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    font-size: 0.8rem !important;
    font-weight: 700 !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip::after,
  #nav-menu.active .dm-mobile-family-chip::after {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip.is-active,
  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip.is-current-context,
  #nav-menu.active .dm-mobile-family-chip.is-active,
  #nav-menu.active .dm-mobile-family-chip.is-current-context {
    background: #16314f !important;
    color: #ffffff !important;
    border-color: #16314f !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-section-header,
  #nav-menu.active .dm-mobile-showroom-section-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 0 0 8px !important;
    padding: 0 2px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-title,
  #nav-menu.active .dm-mobile-showroom-title {
    display: block !important;
    color: #16314f !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-meta,
  #nav-menu.active .dm-mobile-showroom-meta {
    margin: 0 !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    background: #edf3fa !important;
    color: #5b708b !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links,
  #nav-menu.active .dm-mobile-showroom-links {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 46px !important;
    padding: 12px 14px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(15, 23, 42, 0.07) !important;
    background: #ffffff !important;
    color: #16314f !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    font-size: 0.88rem !important;
    font-weight: 700 !important;
    line-height: 1.24 !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link::after,
  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link::after {
    content: '›' !important;
    color: #7d90a8 !important;
    font-size: 1rem !important;
    margin-left: 10px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link.is-current,
  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link.is-current {
    background: #eef4fb !important;
    border-color: rgba(31, 94, 168, 0.18) !important;
  }
}

@media (max-width: 576px) {
  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    padding: 10px 12px calc(18px + env(safe-area-inset-bottom, 0px)) !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list,
  #nav-menu.active .nav-list {
    gap: 7px !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 48px !important;
    padding: 12px 13px !important;
    font-size: 0.89rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-overview,
  #nav-menu.active .dm-mobile-products-overview,
  body.mobile-menu-open #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-showroom-links .dm-mobile-submenu-link {
    min-height: 44px !important;
    padding: 11px 12px !important;
    font-size: 0.84rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-family-chip,
  #nav-menu.active .dm-mobile-family-chip {
    min-height: 34px !important;
    padding: 7px 11px !important;
    font-size: 0.76rem !important;
  }
}


/* v37 mobile menu: desktop order preserved + products octopus accordion, mobile only */
@media (max-width: 768px) {
  body.mobile-menu-open #nav-menu.active .nav-list > li.has-mega-menu,
  #nav-menu.active .nav-list > li.has-mega-menu {
    order: initial !important;
    width: 100% !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-main-ribbon,
  #nav-menu.active .dm-mobile-main-ribbon {
    display: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    margin-top: 8px !important;
    padding: 12px !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, #f7fafd 0%, #eef4fb 100%) !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack,
  #nav-menu.active .dm-mobile-categories-stack {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card,
  #nav-menu.active .dm-mobile-category-card {
    border-radius: 16px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: rgba(255, 255, 255, 0.96) !important;
    overflow: hidden !important;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.05) !important;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open,
  #nav-menu.active .dm-mobile-category-card.is-open {
    border-color: rgba(31, 94, 168, 0.18) !important;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle,
  #nav-menu.active .dm-mobile-category-toggle {
    width: 100% !important;
    min-height: 54px !important;
    padding: 14px 16px !important;
    border: 0 !important;
    background: #ffffff !important;
    color: #16314f !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    text-align: left !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle,
  #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle {
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle::after,
  #nav-menu.active .dm-mobile-category-toggle::after {
    content: '⌄' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 999px !important;
    background: rgba(22, 49, 79, 0.08) !important;
    color: #16314f !important;
    font-size: 0.86rem !important;
    flex: 0 0 24px !important;
    transition: transform 0.18s ease, background 0.18s ease, color 0.18s ease !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle::after,
  #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle::after {
    transform: rotate(180deg) !important;
    background: rgba(255, 255, 255, 0.16) !important;
    color: #ffffff !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle-main,
  #nav-menu.active .dm-mobile-category-toggle-main {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 4px !important;
    min-width: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-label,
  #nav-menu.active .dm-mobile-category-label {
    display: block !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    color: inherit !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-summary,
  #nav-menu.active .dm-mobile-category-summary {
    display: block !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #6d8198 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-summary,
  #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-summary {
    color: rgba(255, 255, 255, 0.82) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list,
  #nav-menu.active .dm-mobile-subcategory-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 10px 12px 12px !important;
    background: #f7fafd !important;
    border-top: 1px solid rgba(15, 23, 42, 0.06) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list[hidden],
  #nav-menu.active .dm-mobile-subcategory-list[hidden] {
    display: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link {
    min-height: 48px !important;
    padding: 13px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #ffffff !important;
    color: #16314f !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    font-size: 0.87rem !important;
    font-weight: 700 !important;
    line-height: 1.24 !important;
    text-decoration: none !important;
    transform: scale(1) !important;
    transition: transform 0.16s ease, background 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link::after,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link::after {
    content: '›' !important;
    color: #7d90a8 !important;
    font-size: 1rem !important;
    flex: 0 0 auto !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:active,
  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link.is-pressed,
  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:focus-visible,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:active,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link.is-pressed,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:focus-visible {
    transform: scale(1.035) !important;
    background: #eef4fb !important;
    border-color: rgba(31, 94, 168, 0.22) !important;
    box-shadow: 0 10px 20px rgba(15, 23, 42, 0.10) !important;
    outline: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link.is-current,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link.is-current {
    background: #eef4fb !important;
    border-color: rgba(31, 94, 168, 0.20) !important;
    box-shadow: 0 8px 16px rgba(31, 94, 168, 0.08) !important;
  }
}

@media (max-width: 576px) {
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    padding: 10px !important;
    border-radius: 16px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle,
  #nav-menu.active .dm-mobile-category-toggle {
    min-height: 50px !important;
    padding: 12px 14px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-label,
  #nav-menu.active .dm-mobile-category-label {
    font-size: 0.88rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-summary,
  #nav-menu.active .dm-mobile-category-summary {
    font-size: 0.7rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list,
  #nav-menu.active .dm-mobile-subcategory-list {
    padding: 9px 10px 10px !important;
    gap: 7px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link {
    min-height: 44px !important;
    padding: 11px 12px !important;
    font-size: 0.83rem !important;
  }
}


/* v38 mobile menu: inline octopus structure under Products, mobile only */
@media (max-width: 768px) {
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    margin-top: 8px !important;
    padding: 14px 12px 12px !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, #f8fbff 0%, #eef4fb 100%) !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-shell,
  #nav-menu.active .dm-mobile-octopus-shell {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-wrap,
  #nav-menu.active .dm-mobile-octopus-hub-wrap {
    position: relative !important;
    display: flex !important;
    justify-content: center !important;
    padding-bottom: 18px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-wrap::after,
  #nav-menu.active .dm-mobile-octopus-hub-wrap::after {
    content: '' !important;
    position: absolute !important;
    left: 50% !important;
    bottom: 0 !important;
    width: 2px !important;
    height: 18px !important;
    transform: translateX(-50%) !important;
    background: linear-gradient(180deg, rgba(237, 48, 61, 0.36) 0%, rgba(29, 36, 80, 0.12) 100%) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub,
  #nav-menu.active .dm-mobile-octopus-hub {
    min-width: 132px !important;
    min-height: 132px !important;
    padding: 18px 16px !important;
    border-radius: 50% !important;
    background: radial-gradient(circle at 30% 30%, #ffffff 0%, #fbfdff 48%, #f1f6fb 100%) !important;
    border: 1px solid rgba(237, 48, 61, 0.18) !important;
    box-shadow: 0 10px 26px rgba(237, 48, 61, 0.08), 0 6px 18px rgba(15, 23, 42, 0.05) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-label,
  #nav-menu.active .dm-mobile-octopus-hub-label {
    display: block !important;
    color: #16314f !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-meta,
  #nav-menu.active .dm-mobile-octopus-hub-meta {
    display: block !important;
    margin-top: 6px !important;
    color: #6b7f96 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-branches,
  #nav-menu.active .dm-mobile-octopus-branches {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-branches::before,
  #nav-menu.active .dm-mobile-octopus-branches::before {
    content: '' !important;
    position: absolute !important;
    left: calc(50% - 1px) !important;
    top: -10px !important;
    bottom: 0 !important;
    width: 2px !important;
    background: linear-gradient(180deg, rgba(237, 48, 61, 0.12) 0%, rgba(29, 36, 80, 0.06) 100%) !important;
    pointer-events: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-overview,
  #nav-menu.active .dm-mobile-products-overview {
    position: relative !important;
    z-index: 1 !important;
    align-self: center !important;
    min-width: min(100%, 280px) !important;
    justify-content: center !important;
    text-align: center !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack,
  #nav-menu.active .dm-mobile-categories-stack {
    position: relative !important;
    z-index: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card,
  #nav-menu.active .dm-mobile-category-card {
    position: relative !important;
    margin: 0 auto !important;
    width: min(100%, 340px) !important;
    border-radius: 16px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: rgba(255, 255, 255, 0.98) !important;
    overflow: hidden !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05) !important;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card::before,
  #nav-menu.active .dm-mobile-category-card::before {
    content: '' !important;
    position: absolute !important;
    left: 50% !important;
    top: -10px !important;
    width: 2px !important;
    height: 10px !important;
    transform: translateX(-50%) !important;
    background: rgba(237, 48, 61, 0.18) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open,
  #nav-menu.active .dm-mobile-category-card.is-open {
    border-color: rgba(31, 94, 168, 0.18) !important;
    box-shadow: 0 14px 28px rgba(15, 23, 42, 0.08) !important;
    transform: translateY(-1px) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle,
  #nav-menu.active .dm-mobile-category-toggle {
    width: 100% !important;
    min-height: 56px !important;
    padding: 14px 16px !important;
    border: 0 !important;
    background: #ffffff !important;
    color: #16314f !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    text-align: left !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle,
  #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle {
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle::after,
  #nav-menu.active .dm-mobile-category-toggle::after {
    content: '⌄' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 999px !important;
    background: rgba(22, 49, 79, 0.08) !important;
    color: #16314f !important;
    font-size: 0.86rem !important;
    transition: transform 0.18s ease, background 0.18s ease, color 0.18s ease !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle::after,
  #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle::after {
    transform: rotate(180deg) !important;
    background: rgba(255, 255, 255, 0.16) !important;
    color: #ffffff !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle-main,
  #nav-menu.active .dm-mobile-category-toggle-main {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 4px !important;
    min-width: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-label,
  #nav-menu.active .dm-mobile-category-label {
    display: block !important;
    font-size: 0.93rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    color: inherit !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-summary,
  #nav-menu.active .dm-mobile-category-summary {
    display: block !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #6d8198 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-summary,
  #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-summary {
    color: rgba(255, 255, 255, 0.82) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list,
  #nav-menu.active .dm-mobile-subcategory-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 10px 12px 12px !important;
    background: #f7fafd !important;
    border-top: 1px solid rgba(15, 23, 42, 0.06) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list[hidden],
  #nav-menu.active .dm-mobile-subcategory-list[hidden] {
    display: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link {
    min-height: 48px !important;
    padding: 13px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #ffffff !important;
    color: #16314f !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    font-size: 0.87rem !important;
    font-weight: 700 !important;
    line-height: 1.24 !important;
    text-decoration: none !important;
    transform: scale(1) !important;
    transform-origin: center center !important;
    transition: transform 0.16s ease, background 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link::after,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link::after {
    content: '›' !important;
    color: #7d90a8 !important;
    font-size: 1rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:active,
  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link.is-pressed,
  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:focus-visible,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:active,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link.is-pressed,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:focus-visible {
    transform: scale(1.045) !important;
    background: #eef4fb !important;
    border-color: rgba(31, 94, 168, 0.22) !important;
    box-shadow: 0 10px 20px rgba(15, 23, 42, 0.10) !important;
    outline: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link.is-current,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link.is-current {
    background: #eef4fb !important;
    border-color: rgba(31, 94, 168, 0.20) !important;
    box-shadow: 0 8px 16px rgba(31, 94, 168, 0.08) !important;
  }
}

@media (max-width: 576px) {
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    padding: 12px 10px 10px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub,
  #nav-menu.active .dm-mobile-octopus-hub {
    min-width: 118px !important;
    min-height: 118px !important;
    padding: 16px 14px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-label,
  #nav-menu.active .dm-mobile-octopus-hub-label {
    font-size: 0.94rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card,
  #nav-menu.active .dm-mobile-category-card {
    width: 100% !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle,
  #nav-menu.active .dm-mobile-category-toggle {
    min-height: 52px !important;
    padding: 12px 14px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list,
  #nav-menu.active .dm-mobile-subcategory-list {
    padding: 9px 10px 10px !important;
    gap: 7px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link {
    min-height: 44px !important;
    padding: 11px 12px !important;
    font-size: 0.83rem !important;
  }
}


/* v39 mobile menu polish: real inline octopus feel, cleaner and premium, mobile only */
@media (max-width: 768px) {
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    padding: 12px 10px 12px !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, #fbfdff 0%, #f2f6fb 100%) !important;
    border: 1px solid rgba(21, 38, 69, 0.07) !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.07) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-shell,
  #nav-menu.active .dm-mobile-octopus-shell {
    gap: 12px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-wrap,
  #nav-menu.active .dm-mobile-octopus-hub-wrap {
    padding-bottom: 12px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-wrap::after,
  #nav-menu.active .dm-mobile-octopus-hub-wrap::after {
    height: 12px !important;
    background: linear-gradient(180deg, rgba(237, 48, 61, 0.28) 0%, rgba(29, 36, 80, 0.08) 100%) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub,
  #nav-menu.active .dm-mobile-octopus-hub {
    min-width: 0 !important;
    width: auto !important;
    min-height: 0 !important;
    padding: 10px 16px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #ffffff 0%, #f7fbff 100%) !important;
    border: 1px solid rgba(237, 48, 61, 0.16) !important;
    box-shadow: 0 8px 18px rgba(237, 48, 61, 0.07), 0 4px 12px rgba(15, 23, 42, 0.05) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-label,
  #nav-menu.active .dm-mobile-octopus-hub-label {
    font-size: 0.92rem !important;
    line-height: 1 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-meta,
  #nav-menu.active .dm-mobile-octopus-hub-meta {
    margin-top: 4px !important;
    font-size: 0.66rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-branches,
  #nav-menu.active .dm-mobile-octopus-branches {
    gap: 12px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-branches::before,
  #nav-menu.active .dm-mobile-octopus-branches::before {
    top: -6px !important;
    width: 1.5px !important;
    background: linear-gradient(180deg, rgba(237, 48, 61, 0.14) 0%, rgba(29, 36, 80, 0.06) 100%) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-overview,
  #nav-menu.active .dm-mobile-products-overview {
    min-width: 0 !important;
    width: fit-content !important;
    max-width: calc(100% - 32px) !important;
    min-height: 42px !important;
    margin: 0 auto 2px !important;
    padding: 10px 14px !important;
    border-radius: 999px !important;
    justify-content: center !important;
    gap: 8px !important;
    font-size: 0.82rem !important;
    line-height: 1.15 !important;
    box-shadow: 0 6px 14px rgba(15, 23, 42, 0.04) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-overview::after,
  #nav-menu.active .dm-mobile-products-overview::after {
    content: '›' !important;
    margin-left: 0 !important;
    color: #72859c !important;
    font-size: 0.9rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack,
  #nav-menu.active .dm-mobile-categories-stack {
    gap: 12px !important;
    padding-bottom: 2px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card,
  #nav-menu.active .dm-mobile-category-card {
    width: min(86%, 300px) !important;
    margin-top: 0 !important;
    border-radius: 18px !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(odd),
  #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(odd) {
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(even),
  #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(even) {
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card::before,
  #nav-menu.active .dm-mobile-category-card::before {
    top: 28px !important;
    width: 24px !important;
    height: 1.5px !important;
    transform: none !important;
    background: rgba(237, 48, 61, 0.18) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(odd)::before,
  #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(odd)::before {
    left: auto !important;
    right: -24px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(even)::before,
  #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(even)::before {
    left: -24px !important;
    right: auto !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open,
  #nav-menu.active .dm-mobile-category-card.is-open {
    box-shadow: 0 14px 28px rgba(15, 23, 42, 0.08) !important;
    transform: translateY(-2px) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle,
  #nav-menu.active .dm-mobile-category-toggle {
    min-height: 54px !important;
    padding: 13px 14px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-label,
  #nav-menu.active .dm-mobile-category-label {
    font-size: 0.89rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-summary,
  #nav-menu.active .dm-mobile-category-summary {
    font-size: 0.68rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list,
  #nav-menu.active .dm-mobile-subcategory-list {
    padding: 8px 10px 10px !important;
    gap: 7px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link {
    min-height: 42px !important;
    padding: 10px 12px !important;
    border-radius: 13px !important;
    font-size: 0.8rem !important;
    line-height: 1.2 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:active,
  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link.is-pressed,
  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:focus-visible,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:active,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link.is-pressed,
  #nav-menu.active .dm-mobile-subcategory-list .dm-mobile-submenu-link:focus-visible {
    transform: scale(1.03) !important;
  }
}

@media (max-width: 576px) {
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card,
  #nav-menu.active .dm-mobile-category-card {
    width: min(88%, 286px) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-overview,
  #nav-menu.active .dm-mobile-products-overview {
    max-width: calc(100% - 20px) !important;
    font-size: 0.79rem !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card::before,
  #nav-menu.active .dm-mobile-category-card::before {
    width: 18px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(odd)::before,
  #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(odd)::before {
    right: -18px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(even)::before,
  #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(even)::before {
    left: -18px !important;
  }
}


/* v40 fresh mobile menu rebuild: custom drawer from zero, mobile only */
@media (max-width: 768px) {
  #nav-menu .nav-list,
  #nav-menu .dm-mobile-products-submenu,
  #nav-menu .dm-mobile-main-ribbon,
  #nav-menu .dm-mobile-octopus-shell,
  #nav-menu .dm-mobile-menu-banner {
    display: none !important;
  }

  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    top: calc(var(--dm-header-height, 72px) + env(safe-area-inset-top, 0px)) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: calc(100svh - var(--dm-header-height, 72px) - env(safe-area-inset-top, 0px)) !important;
    padding: 0 !important;
    background: rgba(248, 250, 252, 0.98) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.12) !important;
    overflow: hidden !important;
  }

  body.mobile-menu-open #nav-menu::before,
  body.mobile-menu-open #nav-menu.active::before,
  #nav-menu.active::before {
    display: none !important;
    content: none !important;
  }

  #nav-menu .dm-mobile-menu-root {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-menu-root,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-root {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    background: linear-gradient(180deg, #ffffff 0%, #f7f9fc 100%) !important;
  }

  #nav-menu.active .dm-mobile-menu-view,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-view {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    padding: 18px 16px calc(28px + env(safe-area-inset-bottom, 0px)) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateX(24px) !important;
    transition: transform 0.22s ease, opacity 0.22s ease, visibility 0.22s ease !important;
  }

  #nav-menu.active .dm-mobile-menu-view.is-active,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-view.is-active {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateX(0) !important;
  }

  #nav-menu.active .dm-mobile-menu-eyebrow,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-eyebrow {
    color: #71839a !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
  }

  #nav-menu.active .dm-mobile-menu-title,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-title {
    margin: 0 !important;
    color: #12233f !important;
    font-size: 1.4rem !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
  }

  #nav-menu.active .dm-mobile-menu-list,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  #nav-menu.active .dm-mobile-menu-item,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item,
  #nav-menu.active .dm-mobile-products-overview-link,
  body.mobile-menu-open #nav-menu .dm-mobile-products-overview-link {
    width: 100% !important;
    min-height: 56px !important;
    padding: 15px 16px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #ffffff !important;
    color: #16314f !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 3px !important;
    text-align: left !important;
    text-decoration: none !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04) !important;
    transition: transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease !important;
  }

  #nav-menu.active .dm-mobile-menu-link::after,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-link::after,
  #nav-menu.active .dm-mobile-menu-item-products::after,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item-products::after,
  #nav-menu.active .dm-mobile-products-overview-link::after,
  body.mobile-menu-open #nav-menu .dm-mobile-products-overview-link::after {
    content: '›' !important;
    position: absolute !important;
    right: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #7a8da4 !important;
    font-size: 1rem !important;
  }

  #nav-menu.active .dm-mobile-menu-item,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item,
  #nav-menu.active .dm-mobile-products-overview-link,
  body.mobile-menu-open #nav-menu .dm-mobile-products-overview-link {
    position: relative !important;
  }

  #nav-menu.active .dm-mobile-menu-item-label,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item-label {
    color: inherit !important;
    font-size: 0.98rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

  #nav-menu.active .dm-mobile-menu-item-meta,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item-meta {
    color: #71839a !important;
    font-size: 0.74rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
  }

  #nav-menu.active .dm-mobile-menu-item.is-current,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item.is-current,
  #nav-menu.active .dm-mobile-products-overview-link.is-current,
  body.mobile-menu-open #nav-menu .dm-mobile-products-overview-link.is-current {
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 14px 30px rgba(22, 49, 79, 0.16) !important;
  }

  #nav-menu.active .dm-mobile-menu-item.is-current .dm-mobile-menu-item-meta,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item.is-current .dm-mobile-menu-item-meta {
    color: rgba(255, 255, 255, 0.78) !important;
  }

  #nav-menu.active .dm-mobile-subview-head,
  body.mobile-menu-open #nav-menu .dm-mobile-subview-head {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    align-items: center !important;
    gap: 12px !important;
  }

  #nav-menu.active .dm-mobile-subview-back,
  body.mobile-menu-open #nav-menu .dm-mobile-subview-back {
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #ffffff !important;
    color: #16314f !important;
    font-size: 0.84rem !important;
    font-weight: 800 !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04) !important;
  }

  #nav-menu.active .dm-mobile-subview-title-wrap,
  body.mobile-menu-open #nav-menu .dm-mobile-subview-title-wrap {
    min-width: 0 !important;
  }

  #nav-menu.active .dm-mobile-products-categories,
  body.mobile-menu-open #nav-menu .dm-mobile-products-categories {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding-bottom: 8px !important;
  }

  #nav-menu.active .dm-mobile-products-category-card,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-card {
    border-radius: 18px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04) !important;
  }

  #nav-menu.active .dm-mobile-products-category-card.is-open,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-card.is-open {
    border-color: rgba(31, 94, 168, 0.18) !important;
    box-shadow: 0 14px 28px rgba(15, 23, 42, 0.08) !important;
  }

  #nav-menu.active .dm-mobile-products-category-button,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-button {
    width: 100% !important;
    min-height: 58px !important;
    padding: 14px 16px !important;
    border: 0 !important;
    background: #ffffff !important;
    color: #16314f !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 3px !important;
    text-align: left !important;
    position: relative !important;
  }

  #nav-menu.active .dm-mobile-products-category-button::after,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-button::after {
    content: '⌄' !important;
    position: absolute !important;
    right: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #7a8da4 !important;
    font-size: 0.95rem !important;
    transition: transform 0.16s ease !important;
  }

  #nav-menu.active .dm-mobile-products-category-card.is-open .dm-mobile-products-category-button,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-card.is-open .dm-mobile-products-category-button {
    background: #f8fbff !important;
  }

  #nav-menu.active .dm-mobile-products-category-card.is-open .dm-mobile-products-category-button::after,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-card.is-open .dm-mobile-products-category-button::after {
    transform: translateY(-50%) rotate(180deg) !important;
  }

  #nav-menu.active .dm-mobile-products-category-label,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-label {
    color: #16314f !important;
    font-size: 0.94rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

  #nav-menu.active .dm-mobile-products-category-meta,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-meta {
    color: #71839a !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
  }

  #nav-menu.active .dm-mobile-products-sublist,
  body.mobile-menu-open #nav-menu .dm-mobile-products-sublist {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 0 12px 12px !important;
    background: #ffffff !important;
  }

  #nav-menu.active .dm-mobile-products-sublist[hidden],
  body.mobile-menu-open #nav-menu .dm-mobile-products-sublist[hidden] {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-products-subitem,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem {
    min-height: 46px !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #f8fafc !important;
    color: #16314f !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    text-decoration: none !important;
    font-size: 0.84rem !important;
    font-weight: 700 !important;
    line-height: 1.24 !important;
    transform: scale(1) !important;
    transition: transform 0.14s ease, box-shadow 0.14s ease, background 0.14s ease, border-color 0.14s ease !important;
  }

  #nav-menu.active .dm-mobile-products-subitem::after,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem::after {
    content: '›' !important;
    color: #7a8da4 !important;
    font-size: 1rem !important;
  }

  #nav-menu.active .dm-mobile-products-subitem:active,
  #nav-menu.active .dm-mobile-products-subitem.is-pressed,
  #nav-menu.active .dm-mobile-products-subitem:focus-visible,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem:active,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem.is-pressed,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem:focus-visible {
    transform: scale(1.03) !important;
    background: #eef4fb !important;
    border-color: rgba(31, 94, 168, 0.22) !important;
    box-shadow: 0 10px 18px rgba(15, 23, 42, 0.08) !important;
    outline: none !important;
  }

  #nav-menu.active .dm-mobile-products-subitem.is-current,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem.is-current {
    background: #eef4fb !important;
    border-color: rgba(31, 94, 168, 0.18) !important;
  }
}

@media (max-width: 576px) {
  #nav-menu.active .dm-mobile-menu-view,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-view {
    padding: 16px 14px calc(24px + env(safe-area-inset-bottom, 0px)) !important;
  }

  #nav-menu.active .dm-mobile-menu-item,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item,
  #nav-menu.active .dm-mobile-products-overview-link,
  body.mobile-menu-open #nav-menu .dm-mobile-products-overview-link {
    min-height: 52px !important;
    padding: 13px 14px !important;
    border-radius: 16px !important;
  }

  #nav-menu.active .dm-mobile-products-category-button,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-button {
    min-height: 54px !important;
    padding: 13px 14px !important;
  }

  #nav-menu.active .dm-mobile-products-subitem,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem {
    min-height: 44px !important;
    padding: 11px 12px !important;
    font-size: 0.81rem !important;
  }
}


/* v41 desktop safety: never render custom mobile drawer on desktop */
#nav-menu .dm-mobile-menu-root,
#nav-menu .dm-mobile-products-submenu,
#nav-menu .dm-mobile-main-ribbon,
#nav-menu .dm-mobile-octopus-shell,
#nav-menu .dm-mobile-menu-banner {
  display: none !important;
}

@media (max-width: 768px) {
  #nav-menu.active .dm-mobile-menu-root,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-root {
    display: block !important;
  }
}


/* v42 mobile cleanup: hide legacy menu layer when custom drawer is active */
@media (max-width: 768px) {
  body.mobile-menu-open #nav-menu.active > .nav-list,
  #nav-menu.active > .nav-list {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  body.mobile-menu-open #nav-menu.active > .nav-list > li,
  #nav-menu.active > .nav-list > li,
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu,
  body.mobile-menu-open #nav-menu.active .dm-mobile-main-ribbon,
  #nav-menu.active .dm-mobile-main-ribbon,
  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-shell,
  #nav-menu.active .dm-mobile-octopus-shell {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-menu-root,
  #nav-menu.active .dm-mobile-menu-root {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* v43 remove mobile-only overview shortcut to match desktop structure */
@media (max-width: 768px) {
  #nav-menu.active .dm-mobile-products-overview-link,
  body.mobile-menu-open #nav-menu .dm-mobile-products-overview-link {
    display: none !important;
  }
}


/* v44 mobile menu blue system: unified primary buttons + improved Products subview */
@media (max-width: 768px) {
  #nav-menu.active .dm-mobile-menu-root,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-root {
    background: linear-gradient(180deg, #f4f8fc 0%, #eef4fb 100%) !important;
  }

  #nav-menu.active .dm-mobile-menu-view,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-view {
    gap: 12px !important;
    padding: 18px 16px calc(26px + env(safe-area-inset-bottom, 0px)) !important;
  }

  #nav-menu.active .dm-mobile-menu-eyebrow,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-eyebrow {
    color: #6d8198 !important;
  }

  #nav-menu.active .dm-mobile-menu-title,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-title {
    color: #11233d !important;
    font-size: 1.34rem !important;
  }

  #nav-menu.active .dm-mobile-menu-list,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-list,
  #nav-menu.active .dm-mobile-products-categories,
  body.mobile-menu-open #nav-menu .dm-mobile-products-categories {
    gap: 12px !important;
  }

  #nav-menu.active .dm-mobile-menu-item,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item {
    min-height: 60px !important;
    padding: 15px 18px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(18, 46, 82, 0.14) !important;
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(22, 49, 79, 0.16) !important;
  }

  #nav-menu.active .dm-mobile-menu-link::after,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-link::after,
  #nav-menu.active .dm-mobile-menu-item-products::after,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item-products::after {
    color: rgba(255, 255, 255, 0.82) !important;
  }

  #nav-menu.active .dm-mobile-menu-item-label,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item-label {
    color: #ffffff !important;
    font-size: 0.96rem !important;
    font-weight: 800 !important;
  }

  #nav-menu.active .dm-mobile-menu-item-meta,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item-meta {
    color: rgba(255, 255, 255, 0.72) !important;
    font-size: 0.71rem !important;
    letter-spacing: 0.01em !important;
  }

  #nav-menu.active .dm-mobile-menu-item.is-current,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item.is-current {
    border-color: rgba(255, 255, 255, 0.28) !important;
    background: linear-gradient(135deg, #173657 0%, #29578c 100%) !important;
    box-shadow: 0 14px 30px rgba(22, 49, 79, 0.22) !important;
  }

  #nav-menu.active .dm-mobile-subview-head,
  body.mobile-menu-open #nav-menu .dm-mobile-subview-head {
    grid-template-columns: auto 1fr !important;
    gap: 10px !important;
    margin-bottom: 2px !important;
  }

  #nav-menu.active .dm-mobile-subview-back,
  body.mobile-menu-open #nav-menu .dm-mobile-subview-back {
    min-width: 46px !important;
    min-height: 46px !important;
    padding: 0 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(18, 46, 82, 0.12) !important;
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 20px rgba(22, 49, 79, 0.14) !important;
  }

  #nav-menu.active .dm-mobile-products-category-card,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-card {
    border-radius: 18px !important;
    border: 1px solid rgba(18, 46, 82, 0.12) !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  #nav-menu.active .dm-mobile-products-category-button,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-button {
    min-height: 60px !important;
    padding: 15px 18px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(18, 46, 82, 0.14) !important;
    background: linear-gradient(135deg, #16314f 0%, #224a76 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(22, 49, 79, 0.16) !important;
  }

  #nav-menu.active .dm-mobile-products-category-button::after,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-button::after {
    color: rgba(255, 255, 255, 0.82) !important;
    font-size: 0.92rem !important;
  }

  #nav-menu.active .dm-mobile-products-category-card.is-open .dm-mobile-products-category-button,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-card.is-open .dm-mobile-products-category-button {
    border-bottom-left-radius: 14px !important;
    border-bottom-right-radius: 14px !important;
    background: linear-gradient(135deg, #173657 0%, #29578c 100%) !important;
    box-shadow: 0 14px 30px rgba(22, 49, 79, 0.20) !important;
  }

  #nav-menu.active .dm-mobile-products-category-label,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-label {
    color: #ffffff !important;
    font-size: 0.93rem !important;
    font-weight: 800 !important;
  }

  #nav-menu.active .dm-mobile-products-category-meta,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-meta {
    color: rgba(255, 255, 255, 0.72) !important;
    font-size: 0.71rem !important;
  }

  #nav-menu.active .dm-mobile-products-sublist,
  body.mobile-menu-open #nav-menu .dm-mobile-products-sublist {
    gap: 8px !important;
    margin-top: 8px !important;
    padding: 10px !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg, rgba(232, 240, 249, 0.92) 0%, rgba(241, 246, 252, 0.96) 100%) !important;
    border: 1px solid rgba(18, 46, 82, 0.08) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55) !important;
  }

  #nav-menu.active .dm-mobile-products-subitem,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem {
    min-height: 46px !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(18, 46, 82, 0.08) !important;
    background: #ffffff !important;
    color: #16314f !important;
    box-shadow: 0 6px 14px rgba(15, 23, 42, 0.04) !important;
  }

  #nav-menu.active .dm-mobile-products-subitem::after,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem::after {
    color: #6d8198 !important;
  }

  #nav-menu.active .dm-mobile-products-subitem:active,
  #nav-menu.active .dm-mobile-products-subitem.is-pressed,
  #nav-menu.active .dm-mobile-products-subitem:focus-visible,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem:active,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem.is-pressed,
  body.mobile-menu-open #nav-menu .dm-mobile-products-subitem:focus-visible {
    transform: scale(1.025) !important;
    background: #f5f9fd !important;
    border-color: rgba(31, 94, 168, 0.18) !important;
    box-shadow: 0 10px 20px rgba(15, 23, 42, 0.08) !important;
  }
}

@media (max-width: 576px) {
  #nav-menu.active .dm-mobile-menu-item,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item,
  #nav-menu.active .dm-mobile-products-category-button,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-button {
    min-height: 56px !important;
    padding: 14px 16px !important;
  }

  #nav-menu.active .dm-mobile-menu-item-label,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-item-label,
  #nav-menu.active .dm-mobile-products-category-label,
  body.mobile-menu-open #nav-menu .dm-mobile-products-category-label {
    font-size: 0.9rem !important;
  }
}

/* v61 standard mobile header: one single phone header for homepage, inner pages, and open menu */
@media (max-width: 768px) {
  :root {
    --dm-header-height: 80px !important;
  }

  .header,
  body.homepage-mobile-hero .header,
  body.mobile-menu-open .header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 1000 !important;
    background: #ffffff !important;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08) !important;
    box-shadow: 0 1px 0 rgba(15, 23, 42, 0.05) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .header .container,
  body.homepage-mobile-hero .header .container,
  body.mobile-menu-open .header .container {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .header-content,
  body.homepage-mobile-hero .header-content,
  body.mobile-menu-open .header-content {
    display: flex !important;
    align-items: center !important;
    height: var(--dm-header-height, 80px) !important;
    min-height: var(--dm-header-height, 80px) !important;
    padding: 0 !important;
    gap: 8px !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .logo,
  body.homepage-mobile-hero .logo,
  body.mobile-menu-open .logo {
    display: flex !important;
    align-items: center !important;
    align-self: stretch !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .logo img,
  body.homepage-mobile-hero .logo img,
  body.mobile-menu-open .logo img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: min(50vw, 172px) !important;
    max-height: 38px !important;
    object-fit: contain !important;
    object-position: left center !important;
    margin: 0 !important;
    transform: none !important;
  }

  .header-actions,
  body.homepage-mobile-hero .header-actions,
  body.mobile-menu-open .header-actions {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
  }

  .btn-phone,
  .mobile-menu-toggle,
  body.homepage-mobile-hero .btn-phone,
  body.homepage-mobile-hero .mobile-menu-toggle,
  body.mobile-menu-open .btn-phone,
  body.mobile-menu-open .mobile-menu-toggle {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    flex: 0 0 40px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
  }

  .btn-phone,
  body.homepage-mobile-hero .btn-phone,
  body.mobile-menu-open .btn-phone {
    background: #fff7f7 !important;
    border: 1px solid rgba(237, 48, 61, 0.18) !important;
    justify-content: center !important;
  }

  .btn-phone span,
  body.homepage-mobile-hero .btn-phone span,
  body.mobile-menu-open .btn-phone span {
    display: none !important;
  }

  .mobile-menu-toggle,
  body.homepage-mobile-hero .mobile-menu-toggle,
  body.mobile-menu-open .mobile-menu-toggle {
    width: 40px !important;
    min-width: 40px !important;
    border: 1px solid rgba(29, 36, 80, 0.1) !important;
    background: #1d2450 !important;
  }

  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    top: calc(var(--dm-header-height, 80px) + env(safe-area-inset-top, 0px)) !important;
    height: calc(100svh - var(--dm-header-height, 80px) - env(safe-area-inset-top, 0px)) !important;
  }

  body.homepage-mobile-hero .hero-video-section {
    margin-top: var(--dm-header-height, 80px) !important;
    min-height: calc(100svh - var(--dm-header-height, 80px) - env(safe-area-inset-top, 0px)) !important;
    min-height: calc(100dvh - var(--dm-header-height, 80px) - env(safe-area-inset-top, 0px)) !important;
  }

  body.homepage-mobile-hero .hero-content {
    min-height: calc(100svh - var(--dm-header-height, 80px) - env(safe-area-inset-top, 0px)) !important;
    min-height: calc(100dvh - var(--dm-header-height, 80px) - env(safe-area-inset-top, 0px)) !important;
  }
}

@media (max-width: 576px) {
  :root {
    --dm-header-height: 78px !important;
  }

  .header .container,
  body.homepage-mobile-hero .header .container,
  body.mobile-menu-open .header .container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .logo img,
  body.homepage-mobile-hero .logo img,
  body.mobile-menu-open .logo img {
    max-width: min(49vw, 166px) !important;
    max-height: 37px !important;
  }

  .btn-phone,
  .mobile-menu-toggle,
  body.homepage-mobile-hero .btn-phone,
  body.homepage-mobile-hero .mobile-menu-toggle,
  body.mobile-menu-open .btn-phone,
  body.mobile-menu-open .mobile-menu-toggle {
    width: 39px !important;
    min-width: 39px !important;
    height: 39px !important;
    min-height: 39px !important;
    flex-basis: 39px !important;
  }

  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    top: calc(var(--dm-header-height, 78px) + env(safe-area-inset-top, 0px)) !important;
    height: calc(100svh - var(--dm-header-height, 78px) - env(safe-area-inset-top, 0px)) !important;
  }

  body.homepage-mobile-hero .hero-video-section {
    margin-top: var(--dm-header-height, 78px) !important;
    min-height: calc(100svh - var(--dm-header-height, 78px) - env(safe-area-inset-top, 0px)) !important;
    min-height: calc(100dvh - var(--dm-header-height, 78px) - env(safe-area-inset-top, 0px)) !important;
  }

  body.homepage-mobile-hero .hero-content {
    min-height: calc(100svh - var(--dm-header-height, 78px) - env(safe-area-inset-top, 0px)) !important;
    min-height: calc(100dvh - var(--dm-header-height, 78px) - env(safe-area-inset-top, 0px)) !important;
  }
}

/* v63 simplified mobile menu: standard header + stable nav-list overlay, no custom drawer */
@media (max-width: 768px) {
  #nav-menu .dm-mobile-menu-root,
  #nav-menu.active .dm-mobile-menu-root,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-root,
  #nav-menu .dm-mobile-menu-view,
  #nav-menu.active .dm-mobile-menu-view,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-view {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  body.mobile-menu-open #nav-menu.active > .nav-list,
  #nav-menu.active > .nav-list {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    overflow: visible !important;
  }

  body.mobile-menu-open #nav-menu.active > .nav-list > li,
  #nav-menu.active > .nav-list > li {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu[hidden],
  #nav-menu.active .dm-mobile-products-submenu[hidden] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  body.mobile-menu-open .header-content,
  body.homepage-mobile-hero .header-content,
  .header-content {
    height: var(--dm-header-height, 80px) !important;
    min-height: var(--dm-header-height, 80px) !important;
  }
}

@media (max-width: 576px) {
  body.mobile-menu-open #nav-menu.active > .nav-list,
  #nav-menu.active > .nav-list {
    width: 100% !important;
    min-width: 100% !important;
  }
}

/* Mobile header standardization: pure white bar only, desktop untouched */
@media (max-width: 768px) {
  .header,
  #header {
    background: #ffffff !important;
    background-image: none !important;
    box-shadow: none !important;
    border: 0 !important;
    border-bottom: 0 !important;
    outline: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .header::before,
  .header::after,
  #header::before,
  #header::after,
  .header-content::before,
  .header-content::after {
    display: none !important;
    content: none !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .header-content {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .mobile-menu-toggle,
  .mobile-menu-toggle::before,
  .mobile-menu-toggle::after,
  .mobile-menu-toggle span {
    box-shadow: none !important;
  }
}

/* Emergency rollback: restore original mobile hamburger menu, keep white header */
@media (max-width: 768px) {
  #nav-menu .dm-mobile-menu-root,
  #nav-menu .dm-mobile-products-submenu,
  #nav-menu .dm-mobile-main-ribbon,
  #nav-menu .dm-mobile-octopus-shell {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  #nav-menu.active > .nav-list {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  #nav-menu.active > .nav-list > li {
    display: block !important;
    width: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}

/* v64 mobile menu: same order as desktop, Products expands categories inline */
@media (max-width: 768px) {
  #nav-menu .dm-mobile-menu-root,
  #nav-menu.active .dm-mobile-menu-root,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-root,
  #nav-menu .dm-mobile-menu-view,
  #nav-menu.active .dm-mobile-menu-view,
  body.mobile-menu-open #nav-menu .dm-mobile-menu-view,
  #nav-menu .dm-mobile-main-ribbon,
  #nav-menu .dm-mobile-octopus-shell {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  #nav-menu.active,
  body.mobile-menu-open #nav-menu.active {
    background: #ffffff !important;
    box-shadow: none !important;
    border: 0 !important;
    padding: 14px 16px 24px !important;
  }

  #nav-menu.active > .nav-list,
  body.mobile-menu-open #nav-menu.active > .nav-list {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    overflow: visible !important;
  }

  #nav-menu.active > .nav-list > li,
  body.mobile-menu-open #nav-menu.active > .nav-list > li {
    order: initial !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  #nav-menu.active > .nav-list > li.has-mega-menu,
  body.mobile-menu-open #nav-menu.active > .nav-list > li.has-mega-menu {
    order: initial !important;
    display: block !important;
    flex-direction: initial !important;
    gap: 0 !important;
  }

  #nav-menu.active .mobile-menu-products-link,
  body.mobile-menu-open #nav-menu.active .mobile-menu-products-link {
    display: none !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 50px !important;
    padding: 13px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(26, 35, 50, 0.08) !important;
    background: #ffffff !important;
    color: #1a2332 !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    box-shadow: none !important;
    text-decoration: none !important;
  }

  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after,
  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after {
    content: '›' !important;
    color: #7b8794 !important;
    font-size: 1rem !important;
    margin-left: 10px !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link,
  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 52px !important;
    padding: 14px 16px !important;
    border-radius: 999px !important;
    border: 0 !important;
    background: linear-gradient(135deg, #ed303d 0%, #ff6b60 100%) !important;
    color: #ffffff !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    box-shadow: 0 8px 20px rgba(237, 48, 61, 0.22) !important;
    text-decoration: none !important;
  }

  #nav-menu.active .has-mega-menu > .nav-link::after,
  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '⌄' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    margin-left: 12px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
    font-size: 0.95rem !important;
    transform: rotate(0deg) !important;
    transition: transform 0.2s ease !important;
  }

  #nav-menu.active .has-mega-menu.is-open > .nav-link::after,
  body.mobile-menu-open #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    transform: rotate(180deg) !important;
  }

  #nav-menu.active .dm-mobile-products-submenu,
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu {
    display: none !important;
    margin-top: 10px !important;
    padding: 12px !important;
    border-radius: 16px !important;
    border: 1px solid #e9ecef !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  #nav-menu.active .has-mega-menu.is-open > .dm-mobile-products-submenu,
  body.mobile-menu-open #nav-menu.active .has-mega-menu.is-open > .dm-mobile-products-submenu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  #nav-menu.active .dm-mobile-products-submenu[hidden],
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu[hidden] {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-products-overview,
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-overview {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-categories-stack,
  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  #nav-menu.active .dm-mobile-category-card,
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card {
    border: 1px solid #edf1f5 !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-shadow: none !important;
  }

  #nav-menu.active .dm-mobile-category-toggle,
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 50px !important;
    padding: 13px 14px !important;
    border: 0 !important;
    background: #f8fafc !important;
    color: #1a2332 !important;
    text-align: left !important;
    box-shadow: none !important;
  }

  #nav-menu.active .dm-mobile-category-toggle::after,
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle::after {
    content: '+' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #ed303d !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    flex: 0 0 24px !important;
  }

  #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle,
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle {
    background: #fff5f6 !important;
  }

  #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle::after,
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle::after {
    content: '−' !important;
  }

  #nav-menu.active .dm-mobile-category-toggle-main,
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle-main {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 3px !important;
    min-width: 0 !important;
  }

  #nav-menu.active .dm-mobile-category-label,
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-label {
    color: #1a2332 !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
  }

  #nav-menu.active .dm-mobile-category-summary,
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-summary {
    color: #6c7a89 !important;
    font-size: 0.74rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
  }

  #nav-menu.active .dm-mobile-subcategory-list,
  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list {
    display: grid !important;
    gap: 8px !important;
    padding: 0 10px 10px !important;
    background: #ffffff !important;
  }

  #nav-menu.active .dm-mobile-subcategory-list[hidden],
  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list[hidden] {
    display: none !important;
  }

  #nav-menu.active .dm-mobile-submenu-link,
  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    min-height: 44px !important;
    padding: 11px 12px !important;
    border-radius: 12px !important;
    border: 1px solid #edf1f5 !important;
    background: #ffffff !important;
    color: #1a2332 !important;
    font-size: 0.84rem !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }

  #nav-menu.active .dm-mobile-submenu-link::after,
  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link::after {
    content: '›' !important;
    color: #7b8794 !important;
    font-size: 0.95rem !important;
    flex: 0 0 auto !important;
  }

  #nav-menu.active .dm-mobile-submenu-link .product-count,
  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link .product-count {
    margin-left: 8px !important;
    padding: 2px 8px !important;
    border-radius: 999px !important;
    background: #fff1f2 !important;
    color: #ed303d !important;
    font-size: 0.7rem !important;
    font-weight: 700 !important;
    flex: 0 0 auto !important;
  }
}

/* v65 mobile menu polish: cleaner hierarchy, PC order, Products emphasized elegantly */
@media (max-width: 768px) {
  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    background: #ffffff !important;
    padding: 16px 16px calc(28px + env(safe-area-inset-bottom, 0px)) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
  }

  body.mobile-menu-open #nav-menu.active > .nav-list,
  #nav-menu.active > .nav-list {
    max-width: 430px !important;
    margin: 0 auto !important;
    gap: 12px !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(1),
  #nav-menu.active .nav-list > li:nth-child(1) { order: 2 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(2),
  #nav-menu.active .nav-list > li:nth-child(2) { order: 3 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(3),
  #nav-menu.active .nav-list > li:nth-child(3) { order: 4 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(5),
  #nav-menu.active .nav-list > li:nth-child(5) { order: 5 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(6),
  #nav-menu.active .nav-list > li:nth-child(6) { order: 6 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(7),
  #nav-menu.active .nav-list > li:nth-child(7) { order: 7 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li.has-mega-menu,
  #nav-menu.active .nav-list > li.has-mega-menu { order: 1 !important; }

  body.mobile-menu-open #nav-menu.active .nav-list::before,
  body.mobile-menu-open #nav-menu.active .nav-list::after,
  body.mobile-menu-open #nav-menu.active .nav-list > li::before,
  body.mobile-menu-open #nav-menu.active .nav-list > li::after,
  body.mobile-menu-open #nav-menu.active .nav-link::before,
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card::before,
  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(odd)::before,
  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(even)::before,
  #nav-menu.active .nav-list::before,
  #nav-menu.active .nav-list::after,
  #nav-menu.active .nav-list > li::before,
  #nav-menu.active .nav-list > li::after,
  #nav-menu.active .nav-link::before,
  #nav-menu.active .dm-mobile-category-card::before,
  #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(odd)::before,
  #nav-menu.active .dm-mobile-categories-stack > .dm-mobile-category-card:nth-child(even)::before {
    display: none !important;
    content: none !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open .header-content,
  .header-content {
    min-height: 72px !important;
    align-items: center !important;
  }

  body.mobile-menu-open .btn-phone,
  .btn-phone {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
    border-radius: 14px !important;
    border: 1px solid rgba(237, 48, 61, 0.10) !important;
    background: #fff6f7 !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open .mobile-menu-toggle,
  .mobile-menu-toggle {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    border-radius: 14px !important;
    border: 0 !important;
    background: #22356b !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link {
    min-height: 56px !important;
    padding: 16px 18px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(20, 35, 58, 0.08) !important;
    background: #ffffff !important;
    color: #18253d !important;
    font-size: 0.98rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06) !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after {
    color: #8a96a8 !important;
    font-size: 1.05rem !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active,
  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu).active .nav-link,
  #nav-menu.active .nav-list > li:not(.has-mega-menu).active .nav-link {
    border-color: rgba(237, 48, 61, 0.16) !important;
    background: #fff7f7 !important;
    color: #111f37 !important;
    box-shadow: 0 12px 26px rgba(237, 48, 61, 0.08) !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active::after,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active::after,
  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu).active .nav-link::after,
  #nav-menu.active .nav-list > li:not(.has-mega-menu).active .nav-link::after {
    color: #ed303d !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 58px !important;
    padding: 16px 18px !important;
    border-radius: 20px !important;
    border: 0 !important;
    background: linear-gradient(135deg, #ed303d 0%, #ff6560 100%) !important;
    color: #ffffff !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.01em !important;
    box-shadow: 0 16px 32px rgba(237, 48, 61, 0.22) !important;
    position: relative !important;
    overflow: hidden !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link::after,
  #nav-menu.active .has-mega-menu > .nav-link::after {
    width: 30px !important;
    height: 30px !important;
    margin-left: 14px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.18) !important;
    color: #ffffff !important;
    font-size: 0.96rem !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu.is-open > .nav-link,
  #nav-menu.active .has-mega-menu.is-open > .nav-link {
    box-shadow: 0 14px 28px rgba(237, 48, 61, 0.18) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    margin-top: 12px !important;
    padding: 10px !important;
    border-radius: 20px !important;
    border: 1px solid rgba(237, 48, 61, 0.10) !important;
    background: #fff8f8 !important;
    box-shadow: 0 16px 34px rgba(237, 48, 61, 0.08) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack,
  #nav-menu.active .dm-mobile-categories-stack {
    gap: 10px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card,
  #nav-menu.active .dm-mobile-category-card {
    border: 1px solid rgba(20, 35, 58, 0.07) !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle,
  #nav-menu.active .dm-mobile-category-toggle {
    min-height: 54px !important;
    padding: 15px 16px !important;
    background: #ffffff !important;
    color: #17243a !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle,
  #nav-menu.active .dm-mobile-category-card.is-open .dm-mobile-category-toggle {
    background: #fff3f4 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle::after,
  #nav-menu.active .dm-mobile-category-toggle::after {
    width: 28px !important;
    height: 28px !important;
    background: #fff1f2 !important;
    color: #ed303d !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-label,
  #nav-menu.active .dm-mobile-category-label {
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    color: #17243a !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-summary,
  #nav-menu.active .dm-mobile-category-summary {
    font-size: 0.74rem !important;
    color: #7c8698 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list,
  #nav-menu.active .dm-mobile-subcategory-list {
    gap: 8px !important;
    padding: 2px 10px 10px !important;
    background: #ffffff !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-submenu-link {
    min-height: 44px !important;
    padding: 12px 14px !important;
    border-radius: 13px !important;
    border: 1px solid rgba(20, 35, 58, 0.06) !important;
    background: #ffffff !important;
    color: #17243a !important;
    font-size: 0.84rem !important;
    font-weight: 700 !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link::after,
  #nav-menu.active .dm-mobile-submenu-link::after {
    color: #8a96a8 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link.is-current,
  #nav-menu.active .dm-mobile-submenu-link.is-current {
    border-color: rgba(237, 48, 61, 0.14) !important;
    background: #fff6f6 !important;
    color: #b92633 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link .product-count,
  #nav-menu.active .dm-mobile-submenu-link .product-count {
    background: #fff1f2 !important;
    color: #d72838 !important;
  }
}

/* v66 mobile menu redesign: desktop order + products opens category pills */
@media (max-width: 768px) {
  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    background: #ffffff !important;
    padding: 12px 18px calc(30px + env(safe-area-inset-bottom, 0px)) !important;
    box-shadow: none !important;
    overflow-y: auto !important;
  }

  body.mobile-menu-open #nav-menu.active > .nav-list,
  #nav-menu.active > .nav-list {
    max-width: 420px !important;
    margin: 0 auto !important;
    gap: 10px !important;
  }

  /* ordine identica cu PC: Acasa, Promotii, Servicii, Produse, Noutati, Despre Noi, Contact */
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(1),
  #nav-menu.active .nav-list > li:nth-child(1) { order: 1 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(2),
  #nav-menu.active .nav-list > li:nth-child(2) { order: 2 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(3),
  #nav-menu.active .nav-list > li:nth-child(3) { order: 3 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li.has-mega-menu,
  #nav-menu.active .nav-list > li.has-mega-menu { order: 4 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(5),
  #nav-menu.active .nav-list > li:nth-child(5) { order: 5 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(6),
  #nav-menu.active .nav-list > li:nth-child(6) { order: 6 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(7),
  #nav-menu.active .nav-list > li:nth-child(7) { order: 7 !important; }

  body.mobile-menu-open #nav-menu.active .nav-list::before,
  body.mobile-menu-open #nav-menu.active .nav-list::after,
  body.mobile-menu-open #nav-menu.active .nav-list > li::before,
  body.mobile-menu-open #nav-menu.active .nav-list > li::after,
  body.mobile-menu-open #nav-menu.active .nav-link::before,
  body.mobile-menu-open #nav-menu.active .nav-link::after,
  body.mobile-menu-open #nav-menu.active .has-mega-menu::before,
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card::before,
  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-branches::before,
  #nav-menu.active .nav-list::before,
  #nav-menu.active .nav-list::after,
  #nav-menu.active .nav-list > li::before,
  #nav-menu.active .nav-list > li::after,
  #nav-menu.active .nav-link::before,
  #nav-menu.active .nav-link::after,
  #nav-menu.active .has-mega-menu::before,
  #nav-menu.active .dm-mobile-category-card::before,
  #nav-menu.active .dm-mobile-octopus-branches::before {
    content: none !important;
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
  }

  body.mobile-menu-open .btn-phone,
  .btn-phone {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    border-radius: 13px !important;
    border: 1px solid rgba(237, 48, 61, 0.10) !important;
    background: #fff7f8 !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open .mobile-menu-toggle,
  .mobile-menu-toggle {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    border-radius: 13px !important;
    background: #22356b !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link {
    min-height: 52px !important;
    padding: 15px 18px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(19, 35, 58, 0.08) !important;
    background: #ffffff !important;
    color: #18263f !important;
    font-size: 0.98rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.05) !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link::after {
    content: '›' !important;
    display: inline-flex !important;
    color: #97a3b3 !important;
    font-size: 1rem !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) .nav-link.active,
  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu).active .nav-link,
  #nav-menu.active .nav-list > li:not(.has-mega-menu).active .nav-link {
    background: #fff7f7 !important;
    border-color: rgba(237, 48, 61, 0.16) !important;
    color: #18263f !important;
    box-shadow: 0 8px 18px rgba(237, 48, 61, 0.07) !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li.has-mega-menu,
  #nav-menu.active .nav-list > li.has-mega-menu {
    margin-top: 2px !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 54px !important;
    padding: 15px 18px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(237, 48, 61, 0.16) !important;
    background: linear-gradient(135deg, #ed303d 0%, #ff6a63 100%) !important;
    color: #ffffff !important;
    font-size: 0.98rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.01em !important;
    box-shadow: 0 10px 24px rgba(237, 48, 61, 0.18) !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link::before,
  #nav-menu.active .has-mega-menu > .nav-link::before {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link::after,
  #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '⌄' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    margin-left: 14px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.16) !important;
    color: #ffffff !important;
    font-size: 0.95rem !important;
    transform: rotate(0deg) !important;
    transition: transform 0.2s ease !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu.is-open > .nav-link::after,
  #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    transform: rotate(180deg) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    display: none !important;
    margin-top: 12px !important;
    padding: 14px !important;
    border-radius: 20px !important;
    border: 1px solid rgba(237, 48, 61, 0.12) !important;
    background: linear-gradient(180deg, #fff8f8 0%, #ffffff 100%) !important;
    box-shadow: 0 12px 28px rgba(237, 48, 61, 0.08) !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu.is-open > .dm-mobile-products-submenu,
  #nav-menu.active .has-mega-menu.is-open > .dm-mobile-products-submenu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-shell,
  #nav-menu.active .dm-mobile-octopus-shell {
    display: block !important;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    overflow: visible !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-wrap,
  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub,
  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-meta,
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-overview,
  #nav-menu.active .dm-mobile-octopus-hub-wrap,
  #nav-menu.active .dm-mobile-octopus-hub,
  #nav-menu.active .dm-mobile-octopus-hub-meta,
  #nav-menu.active .dm-mobile-products-overview {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-branches,
  #nav-menu.active .dm-mobile-octopus-branches {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack,
  #nav-menu.active .dm-mobile-categories-stack {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card,
  #nav-menu.active .dm-mobile-category-card {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    padding: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle,
  #nav-menu.active .dm-mobile-category-toggle {
    width: 100% !important;
    min-height: auto !important;
    padding: 0 0 8px !important;
    border: 0 !important;
    background: transparent !important;
    color: #15233d !important;
    box-shadow: none !important;
    pointer-events: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle::after,
  #nav-menu.active .dm-mobile-category-toggle::after {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle-main,
  #nav-menu.active .dm-mobile-category-toggle-main {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 3px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-label,
  #nav-menu.active .dm-mobile-category-label {
    font-size: 0.9rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    color: #17243a !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-summary,
  #nav-menu.active .dm-mobile-category-summary {
    font-size: 0.72rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    color: #8b96a6 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list,
  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list[hidden],
  #nav-menu.active .dm-mobile-subcategory-list,
  #nav-menu.active .dm-mobile-subcategory-list[hidden] {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 0 !important;
    background: transparent !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-submenu-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: auto !important;
    min-height: 36px !important;
    padding: 9px 14px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(237, 48, 61, 0.14) !important;
    background: #ffffff !important;
    color: #17243a !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    white-space: nowrap !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link::after,
  #nav-menu.active .dm-mobile-submenu-link::after {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link.is-current,
  #nav-menu.active .dm-mobile-submenu-link.is-current {
    background: #ed303d !important;
    border-color: #ed303d !important;
    color: #ffffff !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link .product-count,
  #nav-menu.active .dm-mobile-submenu-link .product-count {
    margin-left: 2px !important;
    padding: 2px 7px !important;
    border-radius: 999px !important;
    background: #fff1f2 !important;
    color: #d92f3c !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link.is-current .product-count,
  #nav-menu.active .dm-mobile-submenu-link.is-current .product-count {
    background: rgba(255, 255, 255, 0.18) !important;
    color: #ffffff !important;
  }
}

/* v67 mobile menu cleanup: elegant list + working products pills */
@media (max-width: 768px) {
  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    padding: 14px 16px calc(28px + env(safe-area-inset-bottom, 0px)) !important;
    background: #ffffff !important;
    box-shadow: none !important;
    overflow-y: auto !important;
  }

  body.mobile-menu-open #nav-menu.active > .nav-list,
  #nav-menu.active > .nav-list {
    max-width: 420px !important;
    margin: 0 auto !important;
    gap: 10px !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li,
  #nav-menu.active .nav-list > li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* ordine desktop */
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(1),
  #nav-menu.active .nav-list > li:nth-child(1) { order: 1 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(2),
  #nav-menu.active .nav-list > li:nth-child(2) { order: 2 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(3),
  #nav-menu.active .nav-list > li:nth-child(3) { order: 3 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li.has-mega-menu,
  #nav-menu.active .nav-list > li.has-mega-menu { order: 4 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(5),
  #nav-menu.active .nav-list > li:nth-child(5) { order: 5 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(6),
  #nav-menu.active .nav-list > li:nth-child(6) { order: 6 !important; }
  body.mobile-menu-open #nav-menu.active .nav-list > li:nth-child(7),
  #nav-menu.active .nav-list > li:nth-child(7) { order: 7 !important; }

  /* curatare totala de pseudo-elemente mostenite care stricau sageata */
  body.mobile-menu-open #nav-menu.active .nav-list::before,
  body.mobile-menu-open #nav-menu.active .nav-list::after,
  body.mobile-menu-open #nav-menu.active .nav-list > li::before,
  body.mobile-menu-open #nav-menu.active .nav-list > li::after,
  body.mobile-menu-open #nav-menu.active .nav-list > li > .nav-link::before,
  #nav-menu.active .nav-list::before,
  #nav-menu.active .nav-list::after,
  #nav-menu.active .nav-list > li::before,
  #nav-menu.active .nav-list > li::after,
  #nav-menu.active .nav-list > li > .nav-link::before {
    display: none !important;
    content: none !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li > .nav-link,
  #nav-menu.active .nav-list > li > .nav-link {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 52px !important;
    padding: 15px 18px !important;
    border-radius: 16px !important;
    text-decoration: none !important;
    line-height: 1.15 !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) > .nav-link,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) > .nav-link {
    border: 1px solid rgba(17, 31, 55, 0.08) !important;
    background: #ffffff !important;
    color: #1a2538 !important;
    font-size: 0.98rem !important;
    font-weight: 700 !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05) !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) > .nav-link::after,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) > .nav-link::after {
    content: '' !important;
    display: inline-block !important;
    position: static !important;
    width: 8px !important;
    height: 8px !important;
    margin-left: auto !important;
    border-right: 2px solid #97a3b3 !important;
    border-bottom: 2px solid #97a3b3 !important;
    transform: rotate(-45deg) !important;
    background: none !important;
    border-radius: 0 !important;
    flex: 0 0 8px !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) > .nav-link.active,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) > .nav-link.active,
  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu).active > .nav-link,
  #nav-menu.active .nav-list > li:not(.has-mega-menu).active > .nav-link {
    background: #fff7f7 !important;
    border-color: rgba(237, 48, 61, 0.16) !important;
    color: #17243a !important;
    box-shadow: 0 10px 20px rgba(237, 48, 61, 0.08) !important;
  }

  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu) > .nav-link.active::after,
  #nav-menu.active .nav-list > li:not(.has-mega-menu) > .nav-link.active::after,
  body.mobile-menu-open #nav-menu.active .nav-list > li:not(.has-mega-menu).active > .nav-link::after,
  #nav-menu.active .nav-list > li:not(.has-mega-menu).active > .nav-link::after {
    border-right-color: #ed303d !important;
    border-bottom-color: #ed303d !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    border: 1px solid rgba(237, 48, 61, 0.16) !important;
    background: linear-gradient(135deg, #ed303d 0%, #ff6660 100%) !important;
    color: #ffffff !important;
    font-size: 0.98rem !important;
    font-weight: 800 !important;
    box-shadow: 0 10px 22px rgba(237, 48, 61, 0.16) !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link::after,
  #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '' !important;
    display: inline-block !important;
    position: static !important;
    width: 9px !important;
    height: 9px !important;
    margin-left: auto !important;
    border-right: 2px solid rgba(255,255,255,0.95) !important;
    border-bottom: 2px solid rgba(255,255,255,0.95) !important;
    transform: rotate(45deg) !important;
    background: none !important;
    border-radius: 0 !important;
    flex: 0 0 9px !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu.is-open > .nav-link::after,
  #nav-menu.active .has-mega-menu.is-open > .nav-link::after {
    transform: rotate(225deg) !important;
    margin-top: 3px !important;
  }

  /* ascunde shortcut-ul vechi si headerele tip octopus */
  body.mobile-menu-open #nav-menu.active .mobile-menu-products-link,
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-overview,
  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-wrap,
  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub,
  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-hub-meta,
  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle::after,
  #nav-menu.active .mobile-menu-products-link,
  #nav-menu.active .dm-mobile-products-overview,
  #nav-menu.active .dm-mobile-octopus-hub-wrap,
  #nav-menu.active .dm-mobile-octopus-hub,
  #nav-menu.active .dm-mobile-octopus-hub-meta,
  #nav-menu.active .dm-mobile-category-toggle::after {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu {
    display: none !important;
    margin-top: 10px !important;
    padding: 14px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(237, 48, 61, 0.10) !important;
    background: linear-gradient(180deg, #fff9f9 0%, #ffffff 100%) !important;
    box-shadow: 0 12px 24px rgba(237, 48, 61, 0.07) !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu.is-open > .dm-mobile-products-submenu,
  #nav-menu.active .has-mega-menu.is-open > .dm-mobile-products-submenu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-shell,
  #nav-menu.active .dm-mobile-octopus-shell,
  body.mobile-menu-open #nav-menu.active .dm-mobile-octopus-branches,
  #nav-menu.active .dm-mobile-octopus-branches {
    display: block !important;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-categories-stack,
  #nav-menu.active .dm-mobile-categories-stack {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-card,
  #nav-menu.active .dm-mobile-category-card {
    display: block !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-toggle,
  #nav-menu.active .dm-mobile-category-toggle {
    width: 100% !important;
    min-height: auto !important;
    padding: 0 0 8px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    pointer-events: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-label,
  #nav-menu.active .dm-mobile-category-label {
    color: #17243a !important;
    font-size: 0.9rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-category-summary,
  #nav-menu.active .dm-mobile-category-summary {
    color: #8b96a6 !important;
    font-size: 0.72rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list,
  body.mobile-menu-open #nav-menu.active .dm-mobile-subcategory-list[hidden],
  #nav-menu.active .dm-mobile-subcategory-list,
  #nav-menu.active .dm-mobile-subcategory-list[hidden] {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 0 !important;
    background: transparent !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link,
  #nav-menu.active .dm-mobile-submenu-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-height: 36px !important;
    padding: 9px 14px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(237, 48, 61, 0.14) !important;
    background: #ffffff !important;
    color: #17243a !important;
    font-size: 0.79rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link::after,
  #nav-menu.active .dm-mobile-submenu-link::after {
    display: none !important;
    content: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link.is-current,
  #nav-menu.active .dm-mobile-submenu-link.is-current {
    background: #ed303d !important;
    border-color: #ed303d !important;
    color: #ffffff !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link .product-count,
  #nav-menu.active .dm-mobile-submenu-link .product-count {
    margin-left: 4px !important;
    padding: 2px 7px !important;
    border-radius: 999px !important;
    background: #fff1f2 !important;
    color: #d72838 !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-submenu-link.is-current .product-count,
  #nav-menu.active .dm-mobile-submenu-link.is-current .product-count {
    background: rgba(255,255,255,0.18) !important;
    color: #ffffff !important;
  }
}

/* v68 products rebuilt from scratch: reliable pills panel */
@media (max-width: 768px) {
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu,
  body.mobile-menu-open #nav-menu.active .mobile-menu-products-link,
  #nav-menu.active .mobile-menu-products-link,
  body.mobile-menu-open #nav-menu.active .header-mega-dropdown,
  #nav-menu.active .header-mega-dropdown {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link,
  #nav-menu.active .has-mega-menu > .nav-link {
    min-height: 52px !important;
    padding: 15px 18px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(237, 48, 61, 0.16) !important;
    background: linear-gradient(135deg, #ed303d 0%, #ff6660 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 22px rgba(237, 48, 61, 0.16) !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu > .nav-link::after,
  #nav-menu.active .has-mega-menu > .nav-link::after {
    content: '' !important;
    display: inline-block !important;
    width: 9px !important;
    height: 9px !important;
    margin-left: auto !important;
    border-right: 2px solid rgba(255,255,255,0.96) !important;
    border-bottom: 2px solid rgba(255,255,255,0.96) !important;
    transform: rotate(45deg) !important;
    background: none !important;
    border-radius: 0 !important;
    position: static !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu.dm-products-open > .nav-link::after,
  #nav-menu.active .has-mega-menu.dm-products-open > .nav-link::after {
    transform: rotate(225deg) !important;
    margin-top: 3px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-products-pills-panel,
  #nav-menu.active .dm-products-pills-panel {
    display: none !important;
    margin-top: 10px !important;
    padding: 14px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(237, 48, 61, 0.10) !important;
    background: linear-gradient(180deg, #fff9f9 0%, #ffffff 100%) !important;
    box-shadow: 0 12px 24px rgba(237, 48, 61, 0.07) !important;
  }

  body.mobile-menu-open #nav-menu.active .has-mega-menu.dm-products-open > .dm-products-pills-panel,
  #nav-menu.active .has-mega-menu.dm-products-open > .dm-products-pills-panel {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-products-pill-group,
  #nav-menu.active .dm-products-pill-group {
    display: block !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-products-pill-group:last-child,
  #nav-menu.active .dm-products-pill-group:last-child {
    margin-bottom: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-products-pill-title,
  #nav-menu.active .dm-products-pill-title {
    margin: 0 0 8px !important;
    color: #17243a !important;
    font-size: 0.88rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-products-pill-wrap,
  #nav-menu.active .dm-products-pill-wrap {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-products-pill-link,
  #nav-menu.active .dm-products-pill-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: auto !important;
    min-height: 36px !important;
    padding: 9px 14px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(237, 48, 61, 0.14) !important;
    background: #ffffff !important;
    color: #17243a !important;
    font-size: 0.79rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-products-pill-link .product-count,
  #nav-menu.active .dm-products-pill-link .product-count {
    margin-left: 2px !important;
    padding: 2px 7px !important;
    border-radius: 999px !important;
    background: #fff1f2 !important;
    color: #d72838 !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
  }
}

/* v70 full replacement mobile menu: isolated, clean, reliable */
@media (max-width: 768px) {
  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    background: #ffffff !important;
    padding: 14px 16px calc(26px + env(safe-area-inset-bottom, 0px)) !important;
    overflow-y: auto !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active > .nav-list,
  #nav-menu.active > .nav-list,
  body.mobile-menu-open #nav-menu.active > .mobile-menu-products-link,
  #nav-menu.active > .mobile-menu-products-link,
  body.mobile-menu-open #nav-menu.active .dm-mobile-products-submenu,
  #nav-menu.active .dm-mobile-products-submenu,
  body.mobile-menu-open #nav-menu.active .dm-products-pills-panel,
  #nav-menu.active .dm-products-pills-panel,
  body.mobile-menu-open #nav-menu.active .header-mega-dropdown,
  #nav-menu.active .header-mega-dropdown {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  body.mobile-menu-open #nav-menu.active > .dm-mobile-menu-v2,
  #nav-menu.active > .dm-mobile-menu-v2 {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 420px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  #nav-menu > .dm-mobile-menu-v2 {
    display: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-link,
  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-products-trigger,
  #nav-menu.active .dm-mobile-v2-link,
  #nav-menu.active .dm-mobile-v2-products-trigger {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 54px !important;
    padding: 15px 18px !important;
    border-radius: 16px !important;
    text-decoration: none !important;
    font-size: 0.98rem !important;
    line-height: 1.15 !important;
    box-sizing: border-box !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-link,
  #nav-menu.active .dm-mobile-v2-link {
    border: 1px solid rgba(18, 34, 57, 0.08) !important;
    background: #ffffff !important;
    color: #1a2538 !important;
    font-weight: 700 !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-link::after,
  #nav-menu.active .dm-mobile-v2-link::after {
    content: '' !important;
    display: inline-block !important;
    width: 8px !important;
    height: 8px !important;
    margin-left: auto !important;
    border-right: 2px solid #9aa5b4 !important;
    border-bottom: 2px solid #9aa5b4 !important;
    transform: rotate(-45deg) !important;
    background: none !important;
    border-radius: 0 !important;
    flex: 0 0 8px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-products-trigger,
  #nav-menu.active .dm-mobile-v2-products-trigger {
    border: 1px solid rgba(237, 48, 61, 0.14) !important;
    background: linear-gradient(135deg, #ed303d 0%, #ff6660 100%) !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    box-shadow: 0 12px 24px rgba(237, 48, 61, 0.16) !important;
    cursor: pointer !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-products-trigger::after,
  #nav-menu.active .dm-mobile-v2-products-trigger::after {
    content: '' !important;
    display: inline-block !important;
    width: 9px !important;
    height: 9px !important;
    margin-left: auto !important;
    border-right: 2px solid rgba(255,255,255,0.96) !important;
    border-bottom: 2px solid rgba(255,255,255,0.96) !important;
    transform: rotate(45deg) !important;
    flex: 0 0 9px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-menu-v2-products.is-open .dm-mobile-v2-products-trigger::after,
  #nav-menu.active .dm-mobile-menu-v2-products.is-open .dm-mobile-v2-products-trigger::after {
    transform: rotate(225deg) !important;
    margin-top: 3px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-products-panel,
  #nav-menu.active .dm-mobile-v2-products-panel {
    display: none !important;
    margin-top: 10px !important;
    padding: 14px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(237, 48, 61, 0.10) !important;
    background: linear-gradient(180deg, #fff9f9 0%, #ffffff 100%) !important;
    box-shadow: 0 12px 24px rgba(237, 48, 61, 0.07) !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-menu-v2-products.is-open .dm-mobile-v2-products-panel,
  #nav-menu.active .dm-mobile-menu-v2-products.is-open .dm-mobile-v2-products-panel {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-group,
  #nav-menu.active .dm-mobile-v2-group {
    display: block !important;
    margin: 0 0 14px !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-group:last-child,
  #nav-menu.active .dm-mobile-v2-group:last-child {
    margin-bottom: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-group-title,
  #nav-menu.active .dm-mobile-v2-group-title {
    margin: 0 0 8px !important;
    color: #17243a !important;
    font-size: 0.88rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-pills,
  #nav-menu.active .dm-mobile-v2-pills {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-pill,
  #nav-menu.active .dm-mobile-v2-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-height: 36px !important;
    padding: 9px 14px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(237, 48, 61, 0.14) !important;
    background: #ffffff !important;
    color: #17243a !important;
    font-size: 0.79rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-shadow: none !important;
  }

  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-pill .product-count,
  #nav-menu.active .dm-mobile-v2-pill .product-count {
    margin-left: 4px !important;
    padding: 2px 7px !important;
    border-radius: 999px !important;
    background: #fff1f2 !important;
    color: #d72838 !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
  }
}


/* v71 desktop safeguard: keep all mobile-only menu layers hidden on PC */
#nav-menu > .dm-mobile-menu-v2,
#nav-menu .dm-products-pills-panel,
#nav-menu .dm-mobile-products-submenu {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

@media (min-width: 769px) {
  #nav-menu,
  #nav-menu.active {
    overflow: visible !important;
  }

  #nav-menu > .dm-mobile-menu-v2,
  #nav-menu .dm-mobile-menu-v2-products,
  #nav-menu .dm-mobile-v2-products-panel,
  #nav-menu .dm-products-pills-panel,
  #nav-menu .dm-mobile-products-submenu {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }
}


/* v72 desktop header spacing fix: prevent logo/header overlap with page content */
@media (min-width: 769px) {
  main#main-content.dm-desktop-header-offset {
    padding-top: calc(var(--dm-desktop-header-offset, 86px) + 10px) !important;
  }
}

/* v74 mobile header + hamburger fix: keep white header stable without clipping the menu */
@media (max-width: 768px) {
  .header,
  #header,
  body.homepage-mobile-hero .header,
  body.mobile-menu-open .header {
    height: var(--dm-header-height, 70px) !important;
    min-height: var(--dm-header-height, 70px) !important;
    overflow: visible !important;
    background: #ffffff !important;
    background-image: none !important;
    transform: none !important;
  }

  .header .container,
  #header .container,
  body.homepage-mobile-hero .header .container,
  body.mobile-menu-open .header .container,
  .header-content,
  body.homepage-mobile-hero .header-content,
  body.mobile-menu-open .header-content {
    height: var(--dm-header-height, 70px) !important;
    min-height: var(--dm-header-height, 70px) !important;
    overflow: visible !important;
    background: #ffffff !important;
    background-image: none !important;
    transform: none !important;
  }

  .logo,
  body.homepage-mobile-hero .logo,
  body.mobile-menu-open .logo {
    min-height: var(--dm-header-height, 70px) !important;
  }

  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    top: calc(var(--dm-header-height, 70px) + env(safe-area-inset-top, 0px)) !important;
    height: calc(100svh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
    height: calc(100dvh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
  }

  body.homepage-mobile-hero .hero-video-section {
    margin-top: var(--dm-header-height, 70px) !important;
    min-height: calc(100svh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
    min-height: calc(100dvh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
  }

  body.homepage-mobile-hero .hero-content {
    min-height: calc(100svh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
    min-height: calc(100dvh - var(--dm-header-height, 70px) - env(safe-area-inset-top, 0px)) !important;
  }
}

/* v82 refreshed lower area: stronger premium composition, only bottom restyled */
@media (max-width: 768px) {
  body.mobile-menu-open #nav-menu,
  body.mobile-menu-open #nav-menu.active,
  #nav-menu.active {
    position: fixed !important;
    top: calc(var(--dm-header-height, 70px) + env(safe-area-inset-top, 0px)) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: auto !important;
    max-height: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: stretch !important;
    background: #ffffff !important;
    padding: 14px 16px 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  body.mobile-menu-open #nav-menu.active > .dm-mobile-menu-v2,
  #nav-menu.active > .dm-mobile-menu-v2 {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 420px !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 auto !important;
    padding: 0 0 calc(208px + env(safe-area-inset-bottom, 0px)) 0 !important;
    background-color: #ffffff !important;
    background-image:
      linear-gradient(180deg, #ffffff 0%, #ffffff 58%, #fffafb 78%, #f6eef2 100%),
      radial-gradient(220px 118px at 50% 100%, rgba(237, 48, 61, 0.05) 0%, rgba(237, 48, 61, 0.015) 46%, transparent 78%),
      radial-gradient(180px 104px at 50% 100%, rgba(27, 38, 79, 0.05) 0%, rgba(27, 38, 79, 0.015) 42%, transparent 76%) !important;
    background-repeat: no-repeat !important;
    background-size: 100% 100%, 100% 208px, 100% 208px !important;
    background-position: center top, center bottom, center bottom !important;
    border-radius: 0 0 26px 26px !important;
    box-shadow: 0 18px 36px rgba(15, 23, 42, 0.10) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    position: relative !important;
    z-index: 1 !important;
    box-sizing: border-box !important;
    isolation: isolate !important;
  }

  body.mobile-menu-open #nav-menu.active > .dm-mobile-menu-v2 > *,
  #nav-menu.active > .dm-mobile-menu-v2 > * {
    position: relative !important;
    z-index: 1 !important;
  }

  body.mobile-menu-open #nav-menu.active > .dm-mobile-menu-v2::before,
  #nav-menu.active > .dm-mobile-menu-v2::before {
    content: '' !important;
    position: absolute !important;
    left: 30px !important;
    right: 30px !important;
    bottom: calc(172px + env(safe-area-inset-bottom, 0px)) !important;
    height: 1px !important;
    background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(27,38,79,0.10) 22%, rgba(237,48,61,0.10) 50%, rgba(27,38,79,0.10) 78%, rgba(255,255,255,0) 100%) !important;
    z-index: 0 !important;
  }

  body.mobile-menu-open #nav-menu.active > .dm-mobile-menu-v2::after,
  #nav-menu.active > .dm-mobile-menu-v2::after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: calc(204px + env(safe-area-inset-bottom, 0px)) !important;
    z-index: 0 !important;
    pointer-events: none !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(252,247,248,0.84) 24%, rgba(246,238,242,1) 100%),
      linear-gradient(135deg, transparent 0 42.8%, rgba(237, 48, 61, 0.17) 42.8% 48.2%, transparent 48.2%) left 18px bottom 22px / 172px 116px no-repeat,
      linear-gradient(45deg, transparent 0 42.8%, rgba(27, 38, 79, 0.14) 42.8% 48.2%, transparent 48.2%) left 40px bottom 36px / 124px 84px no-repeat,
      linear-gradient(45deg, transparent 0 42.8%, rgba(27, 38, 79, 0.14) 42.8% 48.2%, transparent 48.2%) right 18px bottom 22px / 172px 116px no-repeat,
      linear-gradient(135deg, transparent 0 42.8%, rgba(237, 48, 61, 0.16) 42.8% 48.2%, transparent 48.2%) right 40px bottom 36px / 124px 84px no-repeat,
      linear-gradient(135deg, transparent 0 45.8%, rgba(237, 48, 61, 0.14) 45.8% 47.6%, transparent 47.6%) center 66px / 216px 126px no-repeat,
      linear-gradient(45deg, transparent 0 45.8%, rgba(27, 38, 79, 0.12) 45.8% 47.6%, transparent 47.6%) center 66px / 216px 126px no-repeat,
      radial-gradient(108px 40px at 50% calc(100% - 18px), rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.38) 60%, transparent 100%) !important;
  }
}

/* v83 compact mobile contact section: reduce wasted vertical space without changing desktop */
@media (max-width: 768px) {
  .contact-section {
    padding: 34px 0 38px !important;
  }

  .contact-section .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .contact-wrapper {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .contact-info {
    gap: 12px !important;
  }

  .contact-info .section-title {
    font-size: clamp(1.85rem, 7.2vw, 2.15rem) !important;
    line-height: 1.14 !important;
    margin-bottom: 6px !important;
  }

  .contact-engaging-text,
  .contact-info .section-description {
    font-size: 0.99rem !important;
    line-height: 1.55 !important;
    margin-bottom: 2px !important;
    max-width: none !important;
  }

  .contact-trust-badges {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 10px 0 2px !important;
  }

  .trust-badge {
    padding: 12px 8px !important;
    border-radius: 16px !important;
    min-height: 98px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 8px 18px rgba(237,48,61,0.16) !important;
  }

  .trust-badge i {
    font-size: 1.18rem !important;
    margin-bottom: 6px !important;
  }

  .trust-badge span {
    font-size: 0.72rem !important;
    line-height: 1.18 !important;
  }

  .contact-benefits {
    padding: 16px 16px 14px !important;
    border-left-width: 3px !important;
    border-radius: 18px !important;
    box-shadow: 0 8px 20px rgba(15,23,42,0.08) !important;
  }

  .benefits-title {
    font-size: 1rem !important;
    margin-bottom: 10px !important;
    line-height: 1.25 !important;
  }

  .benefits-list {
    gap: 8px !important;
  }

  .benefits-list li {
    gap: 8px !important;
    font-size: 0.9rem !important;
    line-height: 1.42 !important;
  }

  .benefits-list i {
    font-size: 0.94rem !important;
    margin-top: 3px !important;
  }

  .contact-details {
    gap: 12px !important;
    margin-top: 14px !important;
  }

  .contact-item-group {
    gap: 12px !important;
  }

  .contact-item {
    gap: 10px !important;
  }

  .contact-icon {
    width: 42px !important;
    height: 42px !important;
    font-size: 1rem !important;
  }

  .contact-text strong {
    margin-bottom: 4px !important;
    font-size: 0.96rem !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.9rem !important;
    line-height: 1.45 !important;
  }

  .address-helper {
    margin-top: 6px !important;
    font-size: 0.78rem !important;
  }

  .contact-mini-map {
    margin-top: 12px !important;
    border-width: 1px !important;
  }

  .contact-mini-map iframe {
    height: 156px !important;
  }

  .contact-form {
    gap: 14px !important;
    padding: 18px 16px !important;
    border-radius: 20px !important;
    box-shadow: 0 10px 26px rgba(15,23,42,0.10) !important;
  }

  .form-header {
    margin-bottom: 6px !important;
    padding-bottom: 10px !important;
  }

  .form-title {
    font-size: 1.42rem !important;
    margin-bottom: 4px !important;
  }

  .form-subtitle,
  .form-required-note {
    font-size: 0.88rem !important;
    line-height: 1.45 !important;
  }

  .form-group {
    gap: 6px !important;
  }

  .form-group label {
    font-size: 0.86rem !important;
  }

  .form-control {
    padding: 12px 14px !important;
    font-size: 0.92rem !important;
  }

  .form-privacy {
    margin: 4px 0 0 !important;
    padding: 12px !important;
  }
}

/* v84 stronger mobile compacting for contact section: denser title, tighter copy, and low-height trust badges */
@media (max-width: 768px) {
  .contact-section {
    padding: 24px 0 30px !important;
  }

  .contact-section .container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .contact-wrapper {
    gap: 14px !important;
  }

  .contact-info {
    gap: 10px !important;
  }

  .contact-info .section-title {
    font-size: clamp(1.62rem, 6.4vw, 1.94rem) !important;
    line-height: 1.1 !important;
    margin-bottom: 4px !important;
    letter-spacing: -0.02em !important;
  }

  .contact-engaging-text,
  .contact-info .section-description {
    font-size: 0.94rem !important;
    line-height: 1.45 !important;
    margin-bottom: 0 !important;
    max-width: none !important;
  }

  .contact-trust-badges {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin: 8px 0 0 !important;
  }

  .trust-badge {
    min-height: 64px !important;
    padding: 10px 10px !important;
    border-radius: 14px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    text-align: left !important;
    box-shadow: 0 8px 16px rgba(237, 48, 61, 0.14) !important;
  }

  .trust-badge i {
    font-size: 1rem !important;
    margin: 0 !important;
    flex: 0 0 18px !important;
  }

  .trust-badge span {
    font-size: 0.76rem !important;
    line-height: 1.12 !important;
    display: block !important;
  }

  .trust-badge span br {
    display: none !important;
  }

  .contact-benefits {
    padding: 14px 14px 12px !important;
    margin-top: 2px !important;
    border-radius: 16px !important;
    border-left-width: 3px !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.07) !important;
  }

  .benefits-title {
    font-size: 0.96rem !important;
    margin-bottom: 8px !important;
    line-height: 1.22 !important;
  }

  .benefits-list {
    gap: 7px !important;
  }

  .benefits-list li {
    gap: 7px !important;
    font-size: 0.86rem !important;
    line-height: 1.34 !important;
  }

  .benefits-list i {
    font-size: 0.88rem !important;
    margin-top: 2px !important;
  }

  .contact-details {
    gap: 10px !important;
    margin-top: 12px !important;
  }

  .contact-item-group {
    gap: 10px !important;
  }

  .contact-item {
    gap: 8px !important;
  }

  .contact-icon {
    width: 38px !important;
    height: 38px !important;
    font-size: 0.92rem !important;
  }

  .contact-text strong {
    margin-bottom: 3px !important;
    font-size: 0.92rem !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.86rem !important;
    line-height: 1.38 !important;
  }

  .address-helper {
    margin-top: 4px !important;
    font-size: 0.75rem !important;
  }

  .contact-mini-map {
    margin-top: 10px !important;
  }

  .contact-mini-map iframe {
    height: 132px !important;
  }

  .contact-form {
    gap: 12px !important;
    padding: 16px 14px !important;
    border-radius: 18px !important;
  }
}

@media (max-width: 480px) {
  .contact-section {
    padding: 20px 0 26px !important;
  }

  .contact-info .section-title {
    font-size: 1.56rem !important;
  }

  .contact-engaging-text,
  .contact-info .section-description {
    font-size: 0.91rem !important;
    line-height: 1.42 !important;
  }

  .contact-trust-badges {
    gap: 7px !important;
  }

  .trust-badge {
    min-height: 60px !important;
    padding: 9px 9px !important;
    gap: 8px !important;
  }

  .trust-badge span {
    font-size: 0.72rem !important;
  }

  .contact-benefits {
    padding: 13px 13px 11px !important;
  }

  .benefits-list li {
    font-size: 0.84rem !important;
  }

  .contact-mini-map iframe {
    height: 124px !important;
  }
}

/* v85 visual refresh for compact mobile contact section: premium badges, cleaner benefits card, structured contact blocks */
@media (max-width: 768px) {
  .contact-section {
    background:
      radial-gradient(circle at top right, rgba(237, 48, 61, 0.05) 0%, transparent 28%),
      linear-gradient(180deg, #fbfcfe 0%, #ffffff 18%, #f8fafc 100%) !important;
  }

  .contact-info .section-title {
    max-width: 12ch !important;
  }

  .contact-trust-badges {
    gap: 9px !important;
    margin: 10px 0 2px !important;
  }

  .trust-badge {
    position: relative !important;
    overflow: hidden !important;
    min-height: 66px !important;
    padding: 11px 12px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255, 255, 255, 0.34) !important;
    background: linear-gradient(135deg, #ff4c58 0%, #ff6e6a 52%, #ff7f72 100%) !important;
    box-shadow: 0 12px 24px rgba(237, 48, 61, 0.18) !important;
  }

  .trust-badge::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(135deg, rgba(255,255,255,0.22) 0%, rgba(255,255,255,0.02) 42%, transparent 100%) !important;
    pointer-events: none !important;
  }

  .trust-badge i {
    width: 24px !important;
    height: 24px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, 0.16) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.16) !important;
    flex: 0 0 24px !important;
  }

  .trust-badge span {
    position: relative !important;
    font-size: 0.77rem !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
  }

  .contact-benefits {
    position: relative !important;
    overflow: hidden !important;
    padding: 14px 14px 13px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    border-left: 3px solid rgba(237, 48, 61, 0.88) !important;
    background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(249,250,252,0.98) 100%) !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.07) !important;
  }

  .contact-benefits::after {
    content: '' !important;
    position: absolute !important;
    right: -26px !important;
    top: -26px !important;
    width: 76px !important;
    height: 76px !important;
    border-radius: 50% !important;
    background: radial-gradient(circle, rgba(237, 48, 61, 0.12) 0%, rgba(237, 48, 61, 0.03) 55%, transparent 72%) !important;
    pointer-events: none !important;
  }

  .benefits-title {
    position: relative !important;
    padding-right: 28px !important;
    font-size: 0.98rem !important;
    font-weight: 800 !important;
    color: #162235 !important;
  }

  .benefits-list li {
    color: #314154 !important;
  }

  .benefits-list i {
    color: #ef3b49 !important;
  }

  .contact-details {
    gap: 10px !important;
    margin-top: 12px !important;
  }

  .contact-item-group {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .contact-item {
    padding: 12px !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(248,250,252,0.98) 100%) !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.05) !important;
    align-items: flex-start !important;
  }

  .contact-icon {
    border-radius: 14px !important;
    background: linear-gradient(135deg, #ff505b 0%, #ff7267 100%) !important;
    box-shadow: 0 10px 18px rgba(237, 48, 61, 0.18) !important;
  }

  .contact-text strong {
    color: #162235 !important;
    font-size: 0.95rem !important;
  }

  .contact-text p {
    color: #465468 !important;
  }

  .contact-text p br {
    display: none !important;
  }

  .contact-text p a {
    display: block !important;
    margin: 0 0 6px !important;
  }

  .contact-text p a:last-child {
    margin-bottom: 0 !important;
  }

  .address-helper {
    color: #6b7280 !important;
  }

  .contact-mini-map {
    overflow: hidden !important;
    border-radius: 18px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06) !important;
  }

  .contact-form {
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(249,250,252,0.98) 100%) !important;
    box-shadow: 0 14px 32px rgba(15, 23, 42, 0.08) !important;
  }

  #back-to-top {
    width: 48px !important;
    height: 48px !important;
    right: 14px !important;
    bottom: 14px !important;
  }
}

@media (max-width: 480px) {
  .trust-badge {
    min-height: 62px !important;
    padding: 10px 10px !important;
  }

  .trust-badge span {
    font-size: 0.74rem !important;
  }

  .contact-item {
    padding: 11px !important;
  }
}

/* v86 clean mobile contact UI: remove grey cast, simplify cards, and optimize phone number block */
@media (max-width: 768px) {
  .contact-section {
    background: #ffffff !important;
  }

  .contact-trust-badges {
    gap: 8px !important;
  }

  .trust-badge {
    min-height: 58px !important;
    padding: 10px 11px !important;
    border-radius: 15px !important;
    border: 0 !important;
    background: linear-gradient(135deg, #ff5964 0%, #ff6e67 100%) !important;
    box-shadow: 0 8px 16px rgba(237, 48, 61, 0.14) !important;
  }

  .trust-badge::before {
    background: linear-gradient(135deg, rgba(255,255,255,0.16) 0%, rgba(255,255,255,0.00) 55%, transparent 100%) !important;
  }

  .trust-badge i {
    width: 22px !important;
    height: 22px !important;
    font-size: 0.88rem !important;
    background: rgba(255,255,255,0.14) !important;
    flex: 0 0 22px !important;
  }

  .trust-badge span {
    font-size: 0.73rem !important;
    line-height: 1.08 !important;
  }

  .trust-badge span br {
    display: block !important;
  }

  .contact-benefits,
  .contact-item,
  .contact-form,
  .contact-mini-map {
    background: #ffffff !important;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04) !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
  }

  .contact-benefits {
    padding: 13px 13px 12px !important;
    border-left: 3px solid rgba(237, 48, 61, 0.82) !important;
  }

  .contact-benefits::after {
    display: none !important;
  }

  .benefits-title {
    padding-right: 0 !important;
    margin-bottom: 7px !important;
    font-size: 0.95rem !important;
  }

  .benefits-list {
    gap: 6px !important;
  }

  .benefits-list li {
    gap: 7px !important;
    font-size: 0.84rem !important;
    line-height: 1.3 !important;
  }

  .contact-item-group {
    gap: 8px !important;
  }

  .contact-item {
    padding: 11px !important;
    border-radius: 16px !important;
    gap: 10px !important;
  }

  .contact-icon {
    width: 36px !important;
    height: 36px !important;
    border-radius: 12px !important;
    font-size: 0.88rem !important;
    box-shadow: none !important;
  }

  .contact-text strong {
    margin-bottom: 4px !important;
    font-size: 0.92rem !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.84rem !important;
    line-height: 1.34 !important;
  }

  .contact-item:first-child .contact-text p {
    display: grid !important;
    gap: 7px !important;
    margin: 0 !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:'] {
    display: flex !important;
    align-items: center !important;
    min-height: 36px !important;
    padding: 0 10px !important;
    margin: 0 !important;
    border-radius: 11px !important;
    background: #fff7f7 !important;
    border: 1px solid rgba(237, 48, 61, 0.12) !important;
    color: #253446 !important;
    font-weight: 600 !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:']:first-child {
    background: linear-gradient(135deg, rgba(255, 89, 100, 0.10) 0%, rgba(255, 110, 103, 0.16) 100%) !important;
    border-color: rgba(237, 48, 61, 0.18) !important;
    color: #122033 !important;
    font-weight: 700 !important;
  }

  .contact-item:first-child .contact-text p br {
    display: none !important;
  }

  .contact-item:not(:first-child) .contact-text p {
    margin: 0 !important;
  }

  .contact-mini-map {
    border-radius: 16px !important;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04) !important;
  }

  .contact-mini-map iframe {
    height: 118px !important;
  }

  #back-to-top {
    width: 46px !important;
    height: 46px !important;
  }
}

@media (max-width: 480px) {
  .trust-badge {
    min-height: 56px !important;
    padding: 9px 10px !important;
  }

  .trust-badge span {
    font-size: 0.7rem !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:'] {
    min-height: 34px !important;
    padding: 0 9px !important;
    font-size: 0.83rem !important;
  }
}

/* v87 unify benefits + contact details and restore desktop-style trust badge colors on mobile */
@media (max-width: 768px) {
  .trust-badge {
    background: linear-gradient(135deg, #ed303d 0%, #ff6b60 100%) !important;
    box-shadow: 0 8px 16px rgba(237, 48, 61, 0.16) !important;
  }

  .contact-benefits {
    margin-bottom: 0 !important;
    border-radius: 18px 18px 0 0 !important;
    border-bottom: 0 !important;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04) !important;
  }

  .contact-details {
    margin-top: 0 !important;
    gap: 0 !important;
    padding: 0 13px 12px !important;
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    border-top: 0 !important;
    border-radius: 0 0 18px 18px !important;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04) !important;
  }

  .contact-item-group {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  .contact-item {
    padding: 12px 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .contact-item-group .contact-item + .contact-item,
  .contact-details > .contact-item {
    border-top: 1px solid rgba(15, 23, 42, 0.06) !important;
  }

  .contact-icon {
    margin-left: 2px !important;
  }

  .contact-item:first-child .contact-text p {
    gap: 6px !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:'] {
    min-height: 34px !important;
    border-radius: 10px !important;
    background: rgba(237, 48, 61, 0.05) !important;
    border: 1px solid rgba(237, 48, 61, 0.10) !important;
    font-size: 0.84rem !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:']:first-child {
    background: rgba(237, 48, 61, 0.10) !important;
    border-color: rgba(237, 48, 61, 0.16) !important;
  }

  .contact-item:not(:first-child) .contact-text p,
  .contact-item:not(:first-child) .contact-text a,
  .address-helper {
    font-size: 0.83rem !important;
  }
}

@media (max-width: 480px) {
  .contact-details {
    padding: 0 12px 11px !important;
  }

  .contact-item {
    padding: 11px 0 !important;
  }
}

/* v88 reduce benefits title emphasis and remove mixed card treatment from phone/email/address */
@media (max-width: 768px) {
  .contact-benefits {
    padding: 13px 14px 8px !important;
    border-left-width: 2px !important;
  }

  .benefits-title {
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1.24 !important;
    margin-bottom: 8px !important;
    color: #172334 !important;
  }

  .contact-details {
    margin-top: 0 !important;
    gap: 0 !important;
    padding: 0 14px 10px !important;
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    border-top: 0 !important;
    border-radius: 0 0 18px 18px !important;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04) !important;
  }

  .contact-item-group {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  .contact-item,
  .contact-item:first-child,
  .contact-item:last-child {
    padding: 11px 0 !important;
    gap: 10px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .contact-item-group .contact-item + .contact-item,
  .contact-details > .contact-item {
    border-top: 1px solid rgba(15, 23, 42, 0.06) !important;
  }

  .contact-text strong {
    font-size: 0.91rem !important;
    font-weight: 700 !important;
    margin-bottom: 3px !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.84rem !important;
    line-height: 1.38 !important;
  }

  .contact-item:first-child .contact-text p {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    margin: 0 !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:'] {
    display: block !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #4a5668 !important;
    font-weight: 500 !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:']:first-child {
    color: #172334 !important;
    font-weight: 700 !important;
  }

  .contact-item:first-child .contact-text p br {
    display: none !important;
  }

  .address-helper {
    margin-top: 3px !important;
    font-size: 0.78rem !important;
    color: #6b7280 !important;
  }
}

@media (max-width: 480px) {
  .contact-details {
    padding: 0 12px 9px !important;
  }

  .benefits-title {
    font-size: 0.9rem !important;
  }

  .contact-item,
  .contact-item:first-child,
  .contact-item:last-child {
    padding: 10px 0 !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.82rem !important;
  }
}

/* v89 mobile contact info as one continuous info block: remove obvious separation between phone, email, address */
@media (max-width: 768px) {
  .contact-benefits {
    padding-bottom: 6px !important;
    margin-bottom: 0 !important;
    border-radius: 18px 18px 0 0 !important;
    border-bottom: 0 !important;
  }

  .contact-details {
    margin-top: 0 !important;
    padding: 2px 14px 10px !important;
    gap: 0 !important;
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    border-top: 0 !important;
    border-radius: 0 0 18px 18px !important;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04) !important;
  }

  .contact-item-group {
    display: block !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    padding: 8px 0 !important;
    margin: 0 !important;
    gap: 10px !important;
    background: transparent !important;
    border: 0 !important;
    border-top: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .contact-item-group .contact-item + .contact-item,
  .contact-details > .contact-item,
  .contact-item + .contact-item {
    border-top: 0 !important;
  }

  .contact-icon {
    width: 34px !important;
    height: 34px !important;
    border-radius: 11px !important;
    margin-top: 1px !important;
  }

  .contact-text strong {
    margin-bottom: 2px !important;
    font-size: 0.9rem !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.84rem !important;
    line-height: 1.34 !important;
  }

  .contact-item:first-child .contact-text p {
    gap: 2px !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:'] {
    padding: 0 !important;
    min-height: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #4b586a !important;
    font-weight: 500 !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:']:first-child {
    color: #172334 !important;
    font-weight: 700 !important;
  }

  .address-helper {
    margin-top: 2px !important;
    font-size: 0.77rem !important;
  }
}

@media (max-width: 480px) {
  .contact-details {
    padding: 2px 12px 9px !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    padding: 7px 0 !important;
  }
}

/* v90 merge benefits + contact info + map into one continuous mobile block and remove phone highlight */
@media (max-width: 768px) {
  .contact-benefits {
    padding: 13px 14px 6px !important;
    margin-bottom: 0 !important;
    border-radius: 18px 18px 0 0 !important;
    border-bottom: 0 !important;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04) !important;
  }

  .contact-details {
    margin-top: 0 !important;
    padding: 2px 14px 0 !important;
    gap: 0 !important;
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .contact-item-group {
    display: block !important;
    margin: 0 !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    padding: 8px 0 !important;
    margin: 0 !important;
    gap: 10px !important;
    background: transparent !important;
    border: 0 !important;
    border-top: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .contact-item-group .contact-item + .contact-item,
  .contact-details > .contact-item,
  .contact-item + .contact-item {
    border-top: 0 !important;
  }

  .contact-icon {
    width: 34px !important;
    height: 34px !important;
    border-radius: 11px !important;
    margin-top: 1px !important;
  }

  .contact-text strong {
    margin-bottom: 2px !important;
    font-size: 0.9rem !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.84rem !important;
    line-height: 1.34 !important;
  }

  .contact-item:first-child .contact-text p {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    margin: 0 !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:'] {
    display: block !important;
    padding: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #4b586a !important;
    font-weight: 500 !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:']:first-child {
    background: transparent !important;
    border: 0 !important;
    color: #172334 !important;
    font-weight: 700 !important;
  }

  .contact-item:first-child .contact-text p br {
    display: none !important;
  }

  .address-helper {
    margin-top: 2px !important;
    margin-bottom: 0 !important;
    font-size: 0.77rem !important;
  }

  .contact-mini-map {
    margin-top: 0 !important;
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    border-top: 0 !important;
    border-radius: 0 0 18px 18px !important;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04) !important;
    overflow: hidden !important;
  }

  .contact-mini-map iframe {
    display: block !important;
    height: 126px !important;
  }
}

@media (max-width: 480px) {
  .contact-details {
    padding: 2px 12px 0 !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    padding: 7px 0 !important;
  }

  .contact-mini-map iframe {
    height: 120px !important;
  }
}

/* v91 mobile: make Telefon + Email + Adresa read as one continuous info block */
@media (max-width: 768px) {
  .contact-details {
    display: block !important;
    padding: 0 14px 6px !important;
    gap: 0 !important;
  }

  .contact-item-group {
    display: block !important;
    margin: 0 !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    padding: 6px 0 !important;
    margin: 0 !important;
    gap: 8px !important;
    align-items: flex-start !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .contact-item + .contact-item,
  .contact-item-group .contact-item + .contact-item,
  .contact-details > .contact-item {
    margin-top: 0 !important;
    border-top: 0 !important;
  }

  .contact-icon {
    width: 30px !important;
    height: 30px !important;
    border-radius: 10px !important;
    font-size: 0.82rem !important;
    margin-top: 2px !important;
  }

  .contact-text strong {
    display: block !important;
    margin-bottom: 1px !important;
    font-size: 0.88rem !important;
    line-height: 1.18 !important;
  }

  .contact-text p,
  .contact-text a {
    margin: 0 !important;
    font-size: 0.83rem !important;
    line-height: 1.32 !important;
  }

  .contact-item:first-child .contact-text p {
    gap: 0 !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:'] {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.3 !important;
  }

  .address-helper {
    margin-top: 0 !important;
    font-size: 0.76rem !important;
    line-height: 1.32 !important;
  }

  .contact-mini-map {
    margin-top: 4px !important;
  }
}

@media (max-width: 480px) {
  .contact-details {
    padding: 0 12px 6px !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    padding: 5px 0 !important;
    gap: 7px !important;
  }

  .contact-icon {
    width: 28px !important;
    height: 28px !important;
    font-size: 0.78rem !important;
  }

  .contact-text strong {
    font-size: 0.86rem !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.81rem !important;
  }
}

/* v92 mobile cleanup: tighten benefits/contact/map block and remove bold from main phone */
@media (max-width: 768px) {
  .contact-benefits {
    padding: 11px 12px 4px !important;
    border-left-width: 2px !important;
  }

  .benefits-title {
    font-size: 0.88rem !important;
    font-weight: 700 !important;
    margin-bottom: 6px !important;
    line-height: 1.2 !important;
  }

  .benefits-list {
    gap: 5px !important;
  }

  .benefits-list li {
    gap: 7px !important;
    font-size: 0.82rem !important;
    line-height: 1.28 !important;
  }

  .benefits-list i {
    font-size: 0.82rem !important;
    margin-top: 3px !important;
  }

  .contact-details {
    padding: 0 12px 4px !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    padding: 4px 0 !important;
    gap: 8px !important;
  }

  .contact-icon {
    width: 28px !important;
    height: 28px !important;
    border-radius: 9px !important;
    font-size: 0.76rem !important;
    margin-top: 3px !important;
  }

  .contact-text strong {
    margin-bottom: 0 !important;
    font-size: 0.84rem !important;
    line-height: 1.15 !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.8rem !important;
    line-height: 1.26 !important;
  }

  .contact-item:first-child .contact-text p {
    gap: 0 !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:'],
  .contact-item:first-child .contact-text p a[href^='tel:']:first-child {
    font-weight: 500 !important;
    color: #445063 !important;
  }

  .address-helper {
    margin-top: 1px !important;
    font-size: 0.73rem !important;
    line-height: 1.26 !important;
  }

  .contact-mini-map {
    margin-top: 2px !important;
  }

  .contact-mini-map iframe {
    height: 98px !important;
  }
}

@media (max-width: 480px) {
  .contact-benefits {
    padding: 10px 11px 4px !important;
  }

  .benefits-title {
    font-size: 0.86rem !important;
  }

  .benefits-list li {
    font-size: 0.79rem !important;
  }

  .contact-details {
    padding: 0 11px 3px !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    padding: 4px 0 !important;
    gap: 7px !important;
  }

  .contact-text strong {
    font-size: 0.82rem !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.78rem !important;
  }

  .contact-mini-map iframe {
    height: 92px !important;
  }
}

/* v94 mobile contact stack: compact grouped layout for Telefon / Email / Adresă only */
@media (max-width: 768px) {
  .contact-details {
    display: block !important;
    padding: 0 14px !important;
    margin-top: 10px !important;
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    border-radius: 18px !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05) !important;
    overflow: hidden !important;
  }

  .contact-item-group {
    display: block !important;
    margin: 0 !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    display: grid !important;
    grid-template-columns: 32px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    align-items: start !important;
    padding: 12px 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .contact-item-group .contact-item + .contact-item,
  .contact-details > .contact-item {
    margin-top: 0 !important;
    border-top: 1px solid rgba(15, 23, 42, 0.07) !important;
  }

  .contact-icon {
    width: 32px !important;
    height: 32px !important;
    border-radius: 10px !important;
    font-size: 0.82rem !important;
    margin-top: 1px !important;
    box-shadow: none !important;
  }

  .contact-text {
    min-width: 0 !important;
    padding-top: 0 !important;
  }

  .contact-text strong {
    display: block !important;
    margin-bottom: 2px !important;
    font-size: 0.92rem !important;
    line-height: 1.2 !important;
  }

  .contact-text p {
    margin: 0 !important;
    font-size: 0.86rem !important;
    line-height: 1.38 !important;
  }

  .contact-text a {
    font-size: 0.86rem !important;
    line-height: 1.38 !important;
    word-break: break-word !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:'] {
    display: block !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:']:first-child {
    font-weight: 700 !important;
    color: var(--color-navy) !important;
  }

  .address-helper {
    display: block !important;
    margin-top: 3px !important;
    font-size: 0.76rem !important;
    line-height: 1.3 !important;
  }

  .contact-mini-map {
    margin-top: 8px !important;
    border-radius: 14px !important;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.04) !important;
  }

  .contact-mini-map iframe {
    height: 116px !important;
  }
}

@media (max-width: 480px) {
  .contact-details {
    padding: 0 12px !important;
    margin-top: 8px !important;
    border-radius: 16px !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    grid-template-columns: 30px minmax(0, 1fr) !important;
    column-gap: 9px !important;
    padding: 10px 0 !important;
  }

  .contact-icon {
    width: 30px !important;
    height: 30px !important;
    border-radius: 9px !important;
    font-size: 0.78rem !important;
  }

  .contact-text strong {
    font-size: 0.88rem !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.82rem !important;
    line-height: 1.34 !important;
  }

  .address-helper {
    font-size: 0.72rem !important;
    line-height: 1.26 !important;
  }

  .contact-mini-map {
    margin-top: 7px !important;
  }

  .contact-mini-map iframe {
    height: 108px !important;
  }
}

/* v95 mobile contact minimal: remove rectangles and keep a clean editorial stack */
@media (max-width: 768px) {
  .contact-benefits {
    background: transparent !important;
    padding: 8px 0 14px !important;
    border: 0 !important;
    border-left: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08) !important;
  }

  .benefits-title {
    margin-bottom: 10px !important;
    font-size: 0.98rem !important;
    line-height: 1.25 !important;
  }

  .benefits-list {
    gap: 8px !important;
  }

  .benefits-list li {
    gap: 9px !important;
    font-size: 0.9rem !important;
    line-height: 1.42 !important;
  }

  .benefits-list i {
    font-size: 0.84rem !important;
    margin-top: 4px !important;
  }

  .contact-details {
    display: block !important;
    padding: 0 !important;
    margin-top: 8px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .contact-item-group {
    display: block !important;
    margin: 0 !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    align-items: start !important;
    padding: 12px 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .contact-item + .contact-item,
  .contact-item-group .contact-item + .contact-item,
  .contact-details > .contact-item {
    margin-top: 0 !important;
    border-top: 1px solid rgba(15, 23, 42, 0.08) !important;
  }

  .contact-icon {
    width: 24px !important;
    height: 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border-radius: 0 !important;
    font-size: 0.95rem !important;
    color: var(--color-vibrant-red) !important;
    margin-top: 1px !important;
    box-shadow: none !important;
  }

  .contact-text {
    min-width: 0 !important;
    padding-top: 0 !important;
  }

  .contact-text strong {
    display: block !important;
    margin-bottom: 2px !important;
    font-size: 0.92rem !important;
    line-height: 1.2 !important;
  }

  .contact-text p {
    margin: 0 !important;
    font-size: 0.88rem !important;
    line-height: 1.38 !important;
  }

  .contact-text a {
    font-size: 0.88rem !important;
    line-height: 1.38 !important;
    word-break: break-word !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:'] {
    display: block !important;
  }

  .contact-item:first-child .contact-text p a[href^='tel:']:first-child {
    font-weight: 700 !important;
    color: var(--color-navy) !important;
  }

  .address-helper {
    display: block !important;
    margin-top: 4px !important;
    font-size: 0.76rem !important;
    line-height: 1.28 !important;
    color: #6b7280 !important;
    font-style: italic !important;
  }

  .contact-mini-map {
    margin-top: 10px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    box-shadow: none !important;
  }

  .contact-mini-map iframe {
    height: 114px !important;
  }
}

@media (max-width: 480px) {
  .contact-benefits {
    padding: 6px 0 12px !important;
  }

  .benefits-title {
    font-size: 0.94rem !important;
    margin-bottom: 9px !important;
  }

  .benefits-list li {
    gap: 8px !important;
    font-size: 0.86rem !important;
    line-height: 1.38 !important;
  }

  .contact-item,
  .contact-item-group .contact-item,
  .contact-details > .contact-item {
    grid-template-columns: 22px minmax(0, 1fr) !important;
    column-gap: 9px !important;
    padding: 10px 0 !important;
  }

  .contact-icon {
    width: 22px !important;
    height: 22px !important;
    font-size: 0.88rem !important;
  }

  .contact-text strong {
    font-size: 0.88rem !important;
  }

  .contact-text p,
  .contact-text a {
    font-size: 0.84rem !important;
    line-height: 1.34 !important;
  }

  .address-helper {
    font-size: 0.72rem !important;
    line-height: 1.24 !important;
  }

  .contact-mini-map iframe {
    height: 106px !important;
  }
}

/* v96 mobile contact tweak: remove bold from main phone number */
@media (max-width: 768px) {
  .contact-item:first-child .contact-text p a[href^='tel:']:first-child {
    font-weight: 400 !important;
  }
}

@media (max-width: 480px) {
  .contact-item:first-child .contact-text p a[href^='tel:']:first-child {
    font-weight: 400 !important;
  }
}

/* v97 mobile form optimization: cleaner hierarchy, lighter inputs, safer consent area */
@media (max-width: 768px) {
  .contact-form {
    gap: 14px !important;
    padding: 22px 18px 88px !important;
    border-radius: 20px !important;
    box-shadow: 0 8px 28px rgba(15, 23, 42, 0.08) !important;
  }

  .form-header {
    margin-bottom: 2px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08) !important;
  }

  .form-title {
    font-size: 1.95rem !important;
    line-height: 1.08 !important;
    letter-spacing: -0.02em !important;
    margin-bottom: 10px !important;
  }

  .form-subtitle {
    max-width: 320px !important;
    margin: 0 auto !important;
    font-size: 0.95rem !important;
    line-height: 1.45 !important;
  }

  .form-required-note {
    margin-top: 10px !important;
    font-size: 0.82rem !important;
    line-height: 1.35 !important;
  }

  .form-group {
    gap: 8px !important;
    margin: 0 !important;
  }

  .form-group label {
    font-size: 0.92rem !important;
    line-height: 1.25 !important;
    gap: 7px !important;
    margin-bottom: 0 !important;
  }

  .form-group label i {
    font-size: 0.92rem !important;
  }

  .form-control {
    min-height: 54px !important;
    padding: 15px 16px !important;
    font-size: 0.95rem !important;
    line-height: 1.35 !important;
    border-width: 1.5px !important;
    border-color: rgba(15, 23, 42, 0.12) !important;
    border-radius: 16px !important;
    background: #fbfbfc !important;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.03) !important;
  }

  textarea.form-control {
    min-height: 156px !important;
    resize: vertical !important;
  }

  .form-control::placeholder {
    color: #8a8f98 !important;
    opacity: 1 !important;
    font-style: normal !important;
  }

  .form-privacy {
    margin-top: 2px !important;
  }

  .privacy-checkbox {
    display: grid !important;
    grid-template-columns: 20px minmax(0, 1fr) !important;
    column-gap: 12px !important;
    align-items: start !important;
    padding: 14px 14px 16px !important;
    border: 1px solid rgba(237, 48, 61, 0.14) !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg, rgba(237, 48, 61, 0.03), rgba(255,255,255,0.92)) !important;
  }

  .privacy-checkbox input[type='checkbox'] {
    width: 20px !important;
    height: 20px !important;
    margin: 1px 0 0 !important;
    accent-color: #ed303d !important;
  }

  .privacy-checkbox span {
    display: block !important;
    font-size: 0.88rem !important;
    line-height: 1.42 !important;
  }

  .privacy-checkbox span i {
    margin-right: 6px !important;
    color: var(--color-vibrant-red) !important;
  }

  .btn-form-submit {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 16px 18px !important;
    border-radius: 18px !important;
    margin-top: 2px !important;
  }

  .btn-form-submit .btn-subtext {
    display: block !important;
    margin-top: 4px !important;
    font-size: 0.77rem !important;
    line-height: 1.25 !important;
    opacity: 0.95 !important;
  }

  #back-to-top {
    width: 48px !important;
    height: 48px !important;
    right: 14px !important;
    bottom: 14px !important;
    font-size: 1rem !important;
  }
}

@media (max-width: 480px) {
  .contact-form {
    gap: 12px !important;
    padding: 20px 16px 84px !important;
    border-radius: 18px !important;
  }

  .form-header {
    padding-bottom: 12px !important;
  }

  .form-title {
    font-size: 1.72rem !important;
    margin-bottom: 8px !important;
  }

  .form-subtitle {
    font-size: 0.9rem !important;
    line-height: 1.4 !important;
  }

  .form-required-note {
    font-size: 0.79rem !important;
  }

  .form-group label {
    font-size: 0.88rem !important;
  }

  .form-control {
    min-height: 50px !important;
    padding: 14px 15px !important;
    font-size: 0.9rem !important;
    border-radius: 15px !important;
  }

  textarea.form-control {
    min-height: 146px !important;
  }

  .privacy-checkbox {
    grid-template-columns: 18px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    padding: 12px 12px 14px !important;
    border-radius: 15px !important;
  }

  .privacy-checkbox input[type='checkbox'] {
    width: 18px !important;
    height: 18px !important;
  }

  .privacy-checkbox span {
    font-size: 0.84rem !important;
    line-height: 1.36 !important;
  }

  .btn-form-submit {
    padding: 15px 16px !important;
    border-radius: 16px !important;
  }

  .btn-form-submit .btn-subtext {
    font-size: 0.74rem !important;
  }

  #back-to-top {
    width: 44px !important;
    height: 44px !important;
    right: 12px !important;
    bottom: 12px !important;
  }
}

/* v98 mobile form shrink: make Solicita Oferta section smaller and tighter */
@media (max-width: 768px) {
  .contact-form {
    gap: 11px !important;
    padding: 18px 16px 74px !important;
    border-radius: 18px !important;
    box-shadow: 0 6px 22px rgba(15, 23, 42, 0.07) !important;
  }

  .form-header {
    margin-bottom: 0 !important;
    padding-bottom: 11px !important;
  }

  .form-title {
    font-size: 1.72rem !important;
    line-height: 1.06 !important;
    margin-bottom: 8px !important;
  }

  .form-subtitle {
    max-width: 300px !important;
    font-size: 0.9rem !important;
    line-height: 1.36 !important;
  }

  .form-required-note {
    margin-top: 7px !important;
    font-size: 0.78rem !important;
    line-height: 1.28 !important;
  }

  .form-group {
    gap: 6px !important;
  }

  .form-group label {
    font-size: 0.88rem !important;
    gap: 6px !important;
  }

  .form-group label i {
    font-size: 0.88rem !important;
  }

  .form-control {
    min-height: 48px !important;
    padding: 12px 14px !important;
    font-size: 0.9rem !important;
    line-height: 1.3 !important;
    border-radius: 14px !important;
  }

  textarea.form-control {
    min-height: 128px !important;
  }

  .form-privacy {
    margin-top: 0 !important;
  }

  .privacy-checkbox {
    grid-template-columns: 18px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    padding: 11px 12px 12px !important;
    border-radius: 14px !important;
  }

  .privacy-checkbox input[type='checkbox'] {
    width: 18px !important;
    height: 18px !important;
    margin-top: 0 !important;
  }

  .privacy-checkbox span {
    font-size: 0.82rem !important;
    line-height: 1.3 !important;
  }

  .btn-form-submit {
    padding: 14px 16px !important;
    border-radius: 16px !important;
  }

  .btn-form-submit .btn-subtext {
    margin-top: 3px !important;
    font-size: 0.72rem !important;
  }

  #back-to-top {
    width: 42px !important;
    height: 42px !important;
    right: 10px !important;
    bottom: 10px !important;
  }
}

@media (max-width: 480px) {
  .contact-form {
    gap: 10px !important;
    padding: 16px 14px 70px !important;
    border-radius: 16px !important;
  }

  .form-header {
    padding-bottom: 10px !important;
  }

  .form-title {
    font-size: 1.56rem !important;
    margin-bottom: 7px !important;
  }

  .form-subtitle {
    max-width: 280px !important;
    font-size: 0.86rem !important;
    line-height: 1.32 !important;
  }

  .form-required-note {
    font-size: 0.75rem !important;
  }

  .form-group label {
    font-size: 0.84rem !important;
  }

  .form-control {
    min-height: 44px !important;
    padding: 11px 13px !important;
    font-size: 0.86rem !important;
    border-radius: 13px !important;
  }

  textarea.form-control {
    min-height: 118px !important;
  }

  .privacy-checkbox {
    grid-template-columns: 16px minmax(0, 1fr) !important;
    column-gap: 9px !important;
    padding: 10px 11px 11px !important;
    border-radius: 13px !important;
  }

  .privacy-checkbox input[type='checkbox'] {
    width: 16px !important;
    height: 16px !important;
  }

  .privacy-checkbox span {
    font-size: 0.78rem !important;
    line-height: 1.26 !important;
  }

  .btn-form-submit {
    padding: 13px 14px !important;
    border-radius: 15px !important;
  }

  .btn-form-submit .btn-subtext {
    font-size: 0.69rem !important;
  }

  #back-to-top {
    width: 40px !important;
    height: 40px !important;
    right: 9px !important;
    bottom: 9px !important;
  }
}

/* v99 mobile form compact: reduce box spacing and vertical height further */
@media (max-width: 768px) {
  .contact-form {
    gap: 9px !important;
    padding: 15px 14px 66px !important;
  }

  .form-header {
    padding-bottom: 9px !important;
  }

  .form-title {
    font-size: 1.48rem !important;
    margin-bottom: 6px !important;
  }

  .form-subtitle {
    max-width: 270px !important;
    font-size: 0.82rem !important;
    line-height: 1.28 !important;
  }

  .form-required-note {
    margin-top: 5px !important;
    font-size: 0.72rem !important;
    line-height: 1.2 !important;
  }

  .form-group {
    gap: 5px !important;
  }

  .form-group label {
    font-size: 0.82rem !important;
    line-height: 1.18 !important;
    gap: 5px !important;
  }

  .form-group label i {
    font-size: 0.8rem !important;
  }

  .form-control {
    min-height: 40px !important;
    padding: 9px 12px !important;
    font-size: 0.82rem !important;
    line-height: 1.22 !important;
    border-radius: 12px !important;
  }

  textarea.form-control {
    min-height: 96px !important;
    padding-top: 11px !important;
  }

  .privacy-checkbox {
    grid-template-columns: 15px minmax(0, 1fr) !important;
    column-gap: 8px !important;
    padding: 9px 10px 10px !important;
    border-radius: 12px !important;
  }

  .privacy-checkbox input[type='checkbox'] {
    width: 15px !important;
    height: 15px !important;
  }

  .privacy-checkbox span {
    font-size: 0.76rem !important;
    line-height: 1.2 !important;
  }

  .btn-form-submit {
    padding: 12px 14px !important;
    border-radius: 14px !important;
  }

  .btn-form-submit .btn-subtext {
    font-size: 0.66rem !important;
    margin-top: 2px !important;
  }

  #back-to-top {
    width: 38px !important;
    height: 38px !important;
    right: 8px !important;
    bottom: 8px !important;
  }
}

@media (max-width: 480px) {
  .contact-form {
    gap: 8px !important;
    padding: 14px 13px 62px !important;
    border-radius: 15px !important;
  }

  .form-header {
    padding-bottom: 8px !important;
  }

  .form-title {
    font-size: 1.38rem !important;
    margin-bottom: 5px !important;
  }

  .form-subtitle {
    max-width: 255px !important;
    font-size: 0.78rem !important;
    line-height: 1.24 !important;
  }

  .form-required-note {
    font-size: 0.69rem !important;
  }

  .form-group label {
    font-size: 0.79rem !important;
    gap: 4px !important;
  }

  .form-group label i {
    font-size: 0.76rem !important;
  }

  .form-control {
    min-height: 38px !important;
    padding: 8px 11px !important;
    font-size: 0.79rem !important;
    border-radius: 11px !important;
  }

  textarea.form-control {
    min-height: 88px !important;
  }

  .privacy-checkbox {
    grid-template-columns: 14px minmax(0, 1fr) !important;
    column-gap: 7px !important;
    padding: 8px 9px 9px !important;
    border-radius: 11px !important;
  }

  .privacy-checkbox input[type='checkbox'] {
    width: 14px !important;
    height: 14px !important;
  }

  .privacy-checkbox span {
    font-size: 0.73rem !important;
    line-height: 1.16 !important;
  }

  .btn-form-submit {
    padding: 11px 12px !important;
    border-radius: 13px !important;
  }

  .btn-form-submit .btn-subtext {
    font-size: 0.63rem !important;
  }

  #back-to-top {
    width: 36px !important;
    height: 36px !important;
    right: 7px !important;
    bottom: 7px !important;
  }
}

/* v100 mobile field compacting: smaller input and consent blocks only */
@media (max-width: 768px) {
  .form-group {
    gap: 4px !important;
  }

  .form-group label {
    font-size: 0.78rem !important;
    line-height: 1.14 !important;
    gap: 4px !important;
  }

  .form-group label i {
    font-size: 0.74rem !important;
  }

  .form-control {
    min-height: 36px !important;
    padding: 7px 11px !important;
    font-size: 0.78rem !important;
    line-height: 1.18 !important;
    border-radius: 10px !important;
  }

  textarea.form-control {
    min-height: 78px !important;
    padding-top: 9px !important;
    padding-bottom: 9px !important;
  }

  .privacy-checkbox {
    grid-template-columns: 13px minmax(0, 1fr) !important;
    column-gap: 7px !important;
    padding: 7px 8px 8px !important;
    border-radius: 10px !important;
  }

  .privacy-checkbox input[type='checkbox'] {
    width: 13px !important;
    height: 13px !important;
  }

  .privacy-checkbox span {
    font-size: 0.7rem !important;
    line-height: 1.14 !important;
  }
}

@media (max-width: 480px) {
  .form-group {
    gap: 3px !important;
  }

  .form-group label {
    font-size: 0.75rem !important;
    gap: 4px !important;
  }

  .form-group label i {
    font-size: 0.72rem !important;
  }

  .form-control {
    min-height: 34px !important;
    padding: 6px 10px !important;
    font-size: 0.76rem !important;
    border-radius: 9px !important;
  }

  textarea.form-control {
    min-height: 72px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .privacy-checkbox {
    grid-template-columns: 12px minmax(0, 1fr) !important;
    column-gap: 6px !important;
    padding: 6px 7px 7px !important;
    border-radius: 9px !important;
  }

  .privacy-checkbox input[type='checkbox'] {
    width: 12px !important;
    height: 12px !important;
  }

  .privacy-checkbox span {
    font-size: 0.67rem !important;
    line-height: 1.1 !important;
  }
}

/* v101 mobile consent/message compact: shorter textarea and single-line agreement */
@media (max-width: 768px) {
  textarea.form-control {
    min-height: 68px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .privacy-checkbox {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 6px 8px !important;
    min-height: 0 !important;
  }

  .privacy-checkbox input[type='checkbox'] {
    flex: 0 0 13px !important;
    width: 13px !important;
    height: 13px !important;
    margin: 0 !important;
  }

  .privacy-checkbox span {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-size: 0.68rem !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
  }

  .privacy-checkbox span i {
    margin-right: 0 !important;
    flex: 0 0 auto !important;
  }

  .privacy-checkbox .required-asterisk {
    margin-left: 2px !important;
  }
}

@media (max-width: 480px) {
  textarea.form-control {
    min-height: 62px !important;
  }

  .privacy-checkbox {
    gap: 7px !important;
    padding: 5px 7px !important;
  }

  .privacy-checkbox input[type='checkbox'] {
    flex-basis: 12px !important;
    width: 12px !important;
    height: 12px !important;
  }

  .privacy-checkbox span {
    font-size: 0.64rem !important;
    gap: 3px !important;
  }
}

/* v103 mobile CTA -> first form field */
@media (max-width: 768px) {
  #contact-form,
  #name {
    scroll-margin-top: 96px !important;
  }
}

@media (max-width: 480px) {
  #contact-form,
  #name {
    scroll-margin-top: 88px !important;
  }
}

/* v107 smaller mobile form inputs */
@media (max-width: 768px) {
  .contact-form .form-group {
    gap: 4px !important;
    margin-bottom: 8px !important;
  }

  .contact-form .form-group label {
    font-size: 0.8rem !important;
    line-height: 1.2 !important;
    margin-bottom: 0 !important;
  }

  .contact-form .form-control,
  .contact-form input.form-control,
  .contact-form input[type='text'],
  .contact-form input[type='email'],
  .contact-form input[type='tel'] {
    min-height: 36px !important;
    height: 36px !important;
    padding: 8px 12px !important;
    font-size: 0.8rem !important;
    line-height: 1.2 !important;
    border-radius: 12px !important;
  }

  .contact-form textarea.form-control,
  .contact-form textarea {
    min-height: 118px !important;
    padding: 10px 12px !important;
    font-size: 0.8rem !important;
    line-height: 1.28 !important;
    border-radius: 12px !important;
  }

  .contact-form .form-control::placeholder,
  .contact-form input::placeholder,
  .contact-form textarea::placeholder {
    font-size: 0.8rem !important;
    line-height: 1.2 !important;
  }
}

@media (max-width: 480px) {
  .contact-form .form-group {
    gap: 3px !important;
    margin-bottom: 7px !important;
  }

  .contact-form .form-group label {
    font-size: 0.76rem !important;
  }

  .contact-form .form-control,
  .contact-form input.form-control,
  .contact-form input[type='text'],
  .contact-form input[type='email'],
  .contact-form input[type='tel'] {
    min-height: 34px !important;
    height: 34px !important;
    padding: 7px 11px !important;
    font-size: 0.78rem !important;
    border-radius: 11px !important;
  }

  .contact-form textarea.form-control,
  .contact-form textarea {
    min-height: 106px !important;
    padding: 9px 11px !important;
    font-size: 0.78rem !important;
    line-height: 1.24 !important;
    border-radius: 11px !important;
  }

  .contact-form .form-control::placeholder,
  .contact-form input::placeholder,
  .contact-form textarea::placeholder {
    font-size: 0.78rem !important;
  }
}

/* v108 mobile consent single-container cleanup */
@media (max-width: 768px) {
  .contact-form .form-privacy {
    margin-top: 8px !important;
    padding: 8px 10px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(239, 68, 68, 0.16) !important;
    background: linear-gradient(180deg, rgba(255,245,245,0.96) 0%, rgba(255,250,250,0.94) 100%) !important;
    box-shadow: none !important;
  }

  .contact-form .privacy-checkbox {
    padding: 0 !important;
    min-height: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
  }
}

@media (max-width: 480px) {
  .contact-form .form-privacy {
    padding: 7px 9px !important;
    border-radius: 14px !important;
  }

  .contact-form .privacy-checkbox {
    padding: 0 !important;
  }
}

/* v111 top header call icon = mobile phone */
@media (max-width: 768px) {
  .btn-phone i.fa-mobile-screen-button {
    font-size: 1rem !important;
    line-height: 1 !important;
  }
}

/* v112 unmistakable smartphone icon in top header call button */
.btn-phone .btn-phone-icon-svg {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  display: inline-block !important;
}

@media (max-width: 768px) {
  .btn-phone .btn-phone-icon-svg {
    width: 17px !important;
    height: 17px !important;
    flex-basis: 17px !important;
  }
}


/* v113 header phone icon true replacement */
@media (max-width: 768px) {
  .btn-phone::before,
  body.homepage-mobile-hero .btn-phone::before,
  body.mobile-menu-open .btn-phone::before {
    content: none !important;
    display: none !important;
  }

  .btn-phone {
    gap: 0 !important;
  }

  .btn-phone .btn-phone-icon-svg,
  body.homepage-mobile-hero .btn-phone .btn-phone-icon-svg,
  body.mobile-menu-open .btn-phone .btn-phone-icon-svg {
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    flex: 0 0 20px !important;
    color: #1d2450 !important;
    stroke: currentColor !important;
    fill: none !important;
  }

  .btn-phone .btn-phone-icon-svg circle {
    fill: currentColor !important;
  }

  .btn-phone i {
    display: none !important;
  }
}

@media (max-width: 480px) {
  .btn-phone .btn-phone-icon-svg,
  body.homepage-mobile-hero .btn-phone .btn-phone-icon-svg,
  body.mobile-menu-open .btn-phone .btn-phone-icon-svg {
    width: 19px !important;
    height: 19px !important;
    flex-basis: 19px !important;
  }
}


/* v114 header phone icon call affordance */
@media (max-width: 768px) {
  .btn-phone .btn-phone-icon-svg,
  body.homepage-mobile-hero .btn-phone .btn-phone-icon-svg,
  body.mobile-menu-open .btn-phone .btn-phone-icon-svg {
    width: 18px !important;
    height: 18px !important;
    flex: 0 0 18px !important;
    color: #d92d39 !important;
    transform: rotate(-12deg) !important;
    transform-origin: center !important;
  }
}

@media (max-width: 480px) {
  .btn-phone .btn-phone-icon-svg,
  body.homepage-mobile-hero .btn-phone .btn-phone-icon-svg,
  body.mobile-menu-open .btn-phone .btn-phone-icon-svg {
    width: 17px !important;
    height: 17px !important;
    flex-basis: 17px !important;
  }
}


/* v117 rollback bad global patch + minimal safe mobile safeguards */
@media (max-width: 768px) {
  .header,
  #header,
  .header .container,
  #header .container,
  .header-content,
  .logo,
  .header-actions {
    overflow: visible !important;
    transform: none !important;
  }

  .header-actions {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .btn-phone,
  .mobile-menu-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  #nav-menu.active > .dm-mobile-menu-v2,
  body.mobile-menu-open #nav-menu.active > .dm-mobile-menu-v2 {
    width: 100% !important;
    max-width: 420px !important;
    margin: 0 auto !important;
    padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px)) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  .dm-mobile-v2-products-panel,
  body.mobile-menu-open #nav-menu.active .dm-mobile-v2-products-panel,
  #nav-menu.active .dm-mobile-v2-products-panel {
    max-height: none !important;
    overflow: visible !important;
  }

  .products-section .products-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .products-section .product-card {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  .products-section .product-image {
    width: 100% !important;
    min-width: 0 !important;
    height: 220px !important;
    flex: 0 0 auto !important;
  }

  .products-section .product-content,
  .products-section .product-footer,
  .products-section .product-title,
  .products-section .product-description,
  .products-section .product-features,
  .products-section .product-features span,
  .products-section .product-price {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
}

@media (max-width: 480px) {
  .products-section .product-image {
    height: 206px !important;
  }
}

@media (max-width: 768px) {
  .header,
  .main-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: 70px !important;
    height: 70px !important;
    padding: 10px 0 !important;
    background: #ffffff !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1) !important;
    z-index: 9999 !important;
  }

  .header .container,
  .main-header .header-container,
  .header-content {
    min-height: 70px !important;
    height: 70px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .header .logo,
  .main-header .logo {
    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    z-index: 10001 !important;
  }

  .header .logo img,
  .main-header .logo img,
  .header-content .logo img {
    width: auto !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    max-width: 160px !important;
    object-fit: contain !important;
  }

  .header-actions,
  .main-header .header-cta {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
    z-index: 10001 !important;
  }

  .btn-phone,
  .mobile-menu-toggle,
  .main-header .header-cta .cta-button {
    min-width: 50px !important;
    width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 16px !important;
  }

  .btn-phone span,
  .main-header .header-cta .cta-button {
    font-size: 0 !important;
  }

  .main-header .header-cta .cta-button i,
  .btn-phone i {
    font-size: 1.15rem !important;
  }

  .mobile-menu-toggle {
    gap: 5px !important;
  }

  .mobile-menu-toggle span {
    width: 28px !important;
    height: 3px !important;
  }

  #nav-menu.active {
    top: 70px !important;
  }
}


/* v86 final mobile header normalization for product pages */
@media (max-width: 768px) {
  main#main-content.dm-mobile-header-offset {
    padding-top: calc(var(--dm-mobile-header-offset, 70px) + 12px) !important;
  }

  body.homepage-mobile-hero main#main-content.dm-mobile-header-offset {
    padding-top: 0 !important;
  }

  .header .logo img,
  .main-header .logo img,
  body.homepage-mobile-hero .logo img {
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    width: auto !important;
    max-width: 160px !important;
    object-fit: contain !important;
  }

  .header-actions,
  .main-header .header-cta,
  body.homepage-mobile-hero .header-actions {
    gap: 10px !important;
    align-items: center !important;
  }

  .btn-phone,
  body.homepage-mobile-hero .btn-phone,
  .main-header .header-cta .cta-button {
    width: 50px !important;
    min-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    color: #ed303d !important;
    border: 1px solid rgba(237, 48, 61, 0.12) !important;
    box-shadow: 0 4px 14px rgba(237, 48, 61, 0.12) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
  }

  .btn-phone span,
  .main-header .header-cta .cta-button {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  .btn-phone .btn-phone-icon-svg,
  .btn-phone i,
  .main-header .header-cta .cta-button i {
    color: #ed303d !important;
    fill: currentColor !important;
    font-size: 1.1rem !important;
    width: 20px !important;
    height: 20px !important;
  }

  .mobile-menu-toggle,
  body.homepage-mobile-hero .mobile-menu-toggle {
    width: 50px !important;
    min-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    padding: 10px !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .mobile-menu-toggle span,
  body.homepage-mobile-hero .mobile-menu-toggle span {
    width: 28px !important;
    height: 3px !important;
    border-radius: 2px !important;
    background: #1a2332 !important;
  }

  .configurator-section > .configurator-container,
  .page-title > .container,
  .products-section > .container:first-child {
    padding-top: 4px !important;
  }
}
/* v87 product pages: lock mobile header to homepage standard without mobile-complete conflicts */
@media (max-width: 768px) {
  body:not(.homepage-mobile-hero) .header,
  body:not(.homepage-mobile-hero) #header,
  body:not(.homepage-mobile-hero) .main-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: 70px !important;
    height: 70px !important;
    padding: 10px 0 !important;
    background: #ffffff !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.10) !important;
    z-index: 9999 !important;
  }

  body:not(.homepage-mobile-hero) .header .container,
  body:not(.homepage-mobile-hero) .header-content,
  body:not(.homepage-mobile-hero) .main-header .header-container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 70px !important;
    height: 70px !important;
    gap: 10px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    width: 100% !important;
  }

  body:not(.homepage-mobile-hero) .logo,
  body:not(.homepage-mobile-hero) .main-header .logo {
    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    margin-right: auto !important;
    min-width: 0 !important;
  }

  body:not(.homepage-mobile-hero) .logo img,
  body:not(.homepage-mobile-hero) .main-header .logo img {
    width: auto !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    max-width: 160px !important;
    object-fit: contain !important;
  }

  body:not(.homepage-mobile-hero) .header-actions,
  body:not(.homepage-mobile-hero) .main-header .header-cta {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
    margin-left: auto !important;
    z-index: 10001 !important;
  }

  body:not(.homepage-mobile-hero) .btn-phone,
  body:not(.homepage-mobile-hero) .main-header .header-cta .cta-button {
    width: 50px !important;
    min-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    background: var(--color-vibrant-red, #ED303D) !important;
    color: #ffffff !important;
    border: none !important;
    box-shadow: 0 8px 20px rgba(237,48,61,0.22) !important;
    text-decoration: none !important;
  }

  body:not(.homepage-mobile-hero) .btn-phone span,
  body:not(.homepage-mobile-hero) .main-header .header-cta .cta-button {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  body:not(.homepage-mobile-hero) .btn-phone .btn-phone-icon-svg,
  body:not(.homepage-mobile-hero) .btn-phone i,
  body:not(.homepage-mobile-hero) .main-header .header-cta .cta-button i {
    color: #ffffff !important;
    fill: currentColor !important;
    width: 20px !important;
    height: 20px !important;
    font-size: 1.1rem !important;
  }

  body:not(.homepage-mobile-hero) .mobile-menu-toggle {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    width: 50px !important;
    min-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    padding: 10px !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    cursor: pointer !important;
  }

  body:not(.homepage-mobile-hero) .mobile-menu-toggle span {
    width: 28px !important;
    height: 3px !important;
    display: block !important;
    border-radius: 2px !important;
    background: var(--color-navy, #1A2332) !important;
  }

  body:not(.homepage-mobile-hero) #nav-menu.active {
    top: 70px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
  }

  body:not(.homepage-mobile-hero) main#main-content.dm-mobile-header-offset {
    padding-top: calc(var(--dm-mobile-header-offset, 70px) + 16px) !important;
  }
}

/* v88 universal standard mobile header lock */
@media (max-width: 768px) {
  body:not(.homepage-mobile-hero) #header,
  body:not(.homepage-mobile-hero) .header,
  body:not(.homepage-mobile-hero) .main-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: 70px !important;
    height: 70px !important;
    background: #ffffff !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.10) !important;
    z-index: 9999 !important;
    overflow: visible !important;
  }

  body:not(.homepage-mobile-hero) #header .container,
  body:not(.homepage-mobile-hero) .header .container,
  body:not(.homepage-mobile-hero) #header .header-content,
  body:not(.homepage-mobile-hero) .header-content,
  body:not(.homepage-mobile-hero) .main-header .header-container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 70px !important;
    height: 70px !important;
    gap: 10px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    width: 100% !important;
    overflow: visible !important;
  }

  body:not(.homepage-mobile-hero) .logo,
  body:not(.homepage-mobile-hero) .main-header .logo {
    display: flex !important;
    align-items: center !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
    margin-right: auto !important;
    z-index: 10001 !important;
  }

  body:not(.homepage-mobile-hero) .logo img,
  body:not(.homepage-mobile-hero) .main-header .logo img {
    width: auto !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    max-width: 160px !important;
    object-fit: contain !important;
    display: block !important;
  }

  body:not(.homepage-mobile-hero) .header-actions,
  body:not(.homepage-mobile-hero) .main-header .header-cta {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
    margin-left: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 10002 !important;
  }

  body:not(.homepage-mobile-hero) .header-actions > *,
  body:not(.homepage-mobile-hero) .main-header .header-cta > * {
    flex: 0 0 auto !important;
  }

  body:not(.homepage-mobile-hero) .btn-phone,
  body:not(.homepage-mobile-hero) .main-header .header-cta .cta-button {
    order: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 50px !important;
    min-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    background: var(--color-vibrant-red, #ED303D) !important;
    color: #ffffff !important;
    border: none !important;
    box-shadow: 0 8px 20px rgba(237, 48, 61, 0.22) !important;
    text-decoration: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body:not(.homepage-mobile-hero) .btn-phone span,
  body:not(.homepage-mobile-hero) .main-header .header-cta .cta-button {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  body:not(.homepage-mobile-hero) .btn-phone .btn-phone-icon-svg,
  body:not(.homepage-mobile-hero) .btn-phone i,
  body:not(.homepage-mobile-hero) .main-header .header-cta .cta-button i {
    color: #ffffff !important;
    fill: currentColor !important;
    width: 20px !important;
    height: 20px !important;
    font-size: 1.1rem !important;
    display: block !important;
  }

  body:not(.homepage-mobile-hero) .mobile-menu-toggle {
    order: 2 !important;
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    width: 50px !important;
    min-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    padding: 10px !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    cursor: pointer !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body:not(.homepage-mobile-hero) .mobile-menu-toggle span {
    width: 28px !important;
    height: 3px !important;
    display: block !important;
    border-radius: 2px !important;
    background: var(--color-navy, #1A2332) !important;
  }

  body:not(.homepage-mobile-hero) #nav-menu.active {
    position: fixed !important;
    top: 70px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: calc(100dvh - 70px) !important;
    height: calc(100svh - 70px) !important;
    z-index: 9998 !important;
  }

  body:not(.homepage-mobile-hero) main#main-content,
  body:not(.homepage-mobile-hero) main#main-content.dm-mobile-header-offset {
    padding-top: calc(var(--dm-mobile-header-offset, 70px) + 16px) !important;
  }
}

/* v89 force header buttons right on mobile */
@media (max-width: 768px) {
  body:not(.homepage-mobile-hero) #header .container,
  body:not(.homepage-mobile-hero) .header .container,
  body:not(.homepage-mobile-hero) #header .header-content,
  body:not(.homepage-mobile-hero) .header-content,
  body:not(.homepage-mobile-hero) .main-header .header-container {
    position: relative !important;
  }

  body:not(.homepage-mobile-hero) .logo,
  body:not(.homepage-mobile-hero) .main-header .logo {
    flex: 0 1 auto !important;
    max-width: calc(100% - 132px) !important;
    margin-right: 0 !important;
    padding-right: 12px !important;
  }

  body:not(.homepage-mobile-hero) .header-actions,
  body:not(.homepage-mobile-hero) .main-header .header-cta {
    position: absolute !important;
    right: 20px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    left: auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    display: inline-flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
  }

  body:not(.homepage-mobile-hero) .header-actions > .btn-phone,
  body:not(.homepage-mobile-hero) .header-actions > .mobile-menu-toggle,
  body:not(.homepage-mobile-hero) .main-header .header-cta > .cta-button,
  body:not(.homepage-mobile-hero) .main-header .header-cta > .mobile-menu-toggle {
    margin: 0 !important;
    flex: 0 0 auto !important;
  }

  body:not(.homepage-mobile-hero) .btn-phone,
  body:not(.homepage-mobile-hero) .mobile-menu-toggle,
  body:not(.homepage-mobile-hero) .main-header .header-cta .cta-button {
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
  }

  body:not(.homepage-mobile-hero) .btn-phone span,
  body:not(.homepage-mobile-hero) .main-header .header-cta .cta-button span {
    display: none !important;
  }
}

/* v90 universal mobile header final lock */
@media (max-width: 768px) {
  body #header,
  body .header,
  body .main-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: 70px !important;
    height: 70px !important;
    background: #ffffff !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.10) !important;
    z-index: 9999 !important;
    overflow: visible !important;
  }

  body #header .container,
  body .header .container,
  body #header .header-content,
  body .header-content,
  body .main-header .header-container {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-height: 70px !important;
    height: 70px !important;
    padding: 0 20px !important;
    overflow: visible !important;
  }

  body .logo,
  body .main-header .logo {
    position: absolute !important;
    left: 20px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    max-width: calc(100% - 150px) !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 10001 !important;
  }

  body .logo a,
  body .main-header .logo a {
    display: flex !important;
    align-items: center !important;
  }

  body .logo img,
  body .main-header .logo img {
    width: auto !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    max-width: 160px !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 !important;
  }

  body .header-actions,
  body .main-header .header-cta {
    position: absolute !important;
    right: 20px !important;
    top: 50% !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 10002 !important;
  }

  body .header-actions > *,
  body .main-header .header-cta > * {
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  body .btn-phone,
  body .mobile-menu-toggle,
  body .main-header .header-cta .cta-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: 0 0 50px !important;
  }

  body .btn-phone {
    border-radius: 50% !important;
  }

  body .btn-phone span,
  body .main-header .header-cta .cta-button span {
    display: none !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  body #nav-menu.active {
    position: fixed !important;
    top: 70px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: calc(100svh - 70px) !important;
    height: calc(100dvh - 70px) !important;
    z-index: 9998 !important;
  }

  body main#main-content,
  body main#main-content.dm-mobile-header-offset {
    padding-top: calc(var(--dm-mobile-header-offset, 70px) + 16px) !important;
  }

  body.homepage-mobile-hero main#main-content.dm-mobile-header-offset {
    padding-top: calc(var(--dm-mobile-header-offset, 70px) + 16px) !important;
  }
}

/* v91 final universal header edge alignment and homepage gap fix */
@media (max-width: 768px) {
  body #header,
  body .header,
  body .main-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: 70px !important;
    height: 70px !important;
    padding: 0 !important;
    background: #ffffff !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.10) !important;
    z-index: 9999 !important;
    overflow: visible !important;
  }

  body #header .container,
  body .header .container,
  body #header .header-content,
  body .header-content,
  body .main-header .header-container {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-height: 70px !important;
    height: 70px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    overflow: visible !important;
  }

  body .logo,
  body .main-header .logo {
    position: absolute !important;
    left: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    max-width: calc(100% - 132px) !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 10001 !important;
  }

  body .logo a,
  body .main-header .logo a {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body .logo img,
  body .main-header .logo img {
    display: block !important;
    width: auto !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    max-width: 160px !important;
    margin: 0 !important;
    object-fit: contain !important;
  }

  body .header-actions,
  body .main-header .header-cta {
    position: absolute !important;
    top: 50% !important;
    right: 12px !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 10002 !important;
  }

  body .header-actions > *,
  body .main-header .header-cta > * {
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  body .btn-phone,
  body .mobile-menu-toggle,
  body .main-header .header-cta .cta-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: 0 0 48px !important;
  }

  body .btn-phone {
    border-radius: 50% !important;
  }

  body .btn-phone span,
  body .main-header .header-cta .cta-button span {
    display: none !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  body .mobile-menu-toggle {
    gap: 5px !important;
  }

  body .mobile-menu-toggle span {
    width: 26px !important;
    height: 3px !important;
  }

  body #nav-menu.active {
    position: fixed !important;
    top: 70px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: calc(100svh - 70px) !important;
    height: calc(100dvh - 70px) !important;
    z-index: 9998 !important;
  }

  body:not(.homepage-mobile-hero) main#main-content,
  body:not(.homepage-mobile-hero) main#main-content.dm-mobile-header-offset {
    padding-top: calc(var(--dm-mobile-header-offset, 70px) + 16px) !important;
  }

  body.homepage-mobile-hero main#main-content,
  body.homepage-mobile-hero main#main-content.dm-mobile-header-offset {
    padding-top: 0 !important;
  }

  body.homepage-mobile-hero .hero-video-section {
    margin-top: 70px !important;
    padding-top: 0 !important;
  }

  body.homepage-mobile-hero .hero-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

/* v92 identical mobile header on every page */
@media (max-width: 768px) {
  body #header,
  body .header,
  body .main-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: 70px !important;
    height: 70px !important;
    padding: 0 !important;
    background: #ffffff !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.10) !important;
    z-index: 9999 !important;
    overflow: visible !important;
  }

  body #header .container,
  body .header .container,
  body #header .header-content,
  body .header-content,
  body .main-header .header-container {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-height: 70px !important;
    height: 70px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    overflow: visible !important;
  }

  body .logo,
  body .main-header .logo {
    position: absolute !important;
    left: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    max-width: calc(100% - 152px) !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 10001 !important;
  }

  body .logo a,
  body .main-header .logo a {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body .logo img,
  body .main-header .logo img {
    display: block !important;
    width: auto !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    max-width: 160px !important;
    margin: 0 !important;
    object-fit: contain !important;
  }

  body .header-actions,
  body .main-header .header-cta {
    position: absolute !important;
    top: 50% !important;
    right: 12px !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 10002 !important;
  }

  body .header-actions > *,
  body .main-header .header-cta > * {
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  body .btn-phone,
  body .header-phone,
  body .main-header .header-cta .cta-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: 0 0 50px !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    color: #ed303d !important;
    border: 1px solid rgba(237, 48, 61, 0.12) !important;
    box-shadow: 0 4px 14px rgba(237, 48, 61, 0.12) !important;
    text-decoration: none !important;
  }

  body .btn-phone span,
  body .header-phone span,
  body .main-header .header-cta .cta-button span {
    display: none !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  body .btn-phone .btn-phone-icon-svg,
  body .btn-phone i,
  body .header-phone i,
  body .main-header .header-cta .cta-button i {
    color: #ed303d !important;
    fill: currentColor !important;
    width: 20px !important;
    height: 20px !important;
    font-size: 1.1rem !important;
    display: block !important;
  }

  body .mobile-menu-toggle {
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    padding: 10px !important;
    margin: 0 !important;
    flex: 0 0 50px !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    cursor: pointer !important;
  }

  body .mobile-menu-toggle span {
    width: 28px !important;
    height: 3px !important;
    display: block !important;
    border-radius: 2px !important;
    background: #1a2332 !important;
  }

  body #nav-menu.active {
    position: fixed !important;
    top: 70px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: calc(100svh - 70px) !important;
    height: calc(100dvh - 70px) !important;
    z-index: 9998 !important;
  }

  body:not(.homepage-mobile-hero) main#main-content,
  body:not(.homepage-mobile-hero) main#main-content.dm-mobile-header-offset {
    padding-top: calc(var(--dm-mobile-header-offset, 70px) + 16px) !important;
  }

  body.homepage-mobile-hero main#main-content,
  body.homepage-mobile-hero main#main-content.dm-mobile-header-offset {
    padding-top: 0 !important;
  }

  body.homepage-mobile-hero .hero-video-section {
    margin-top: 70px !important;
    padding-top: 0 !important;
  }

  body.homepage-mobile-hero .hero-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

