/* Recreated menu columns, scoped to the new Leo header menu. */
.leo-megamenu .sandrakis-menu-block { margin:0 0 16px; }
.leo-megamenu .sandrakis-menu-heading { font-size:14px; font-weight:700; line-height:1.35; margin:0 0 10px; }
.leo-megamenu .sandrakis-menu-content, .leo-megamenu .sandrakis-menu-content a { font-size:13px; line-height:1.5; }
.leo-megamenu .sandrakis-menu-content p { margin:0 0 8px; }
.leo-megamenu .sandrakis-menu-list { display:block; list-style:none; padding:0; margin:0; }
.leo-megamenu .sandrakis-menu-list li { display:block; float:none; width:auto; margin:0; padding:3px 0; }
.leo-megamenu .sandrakis-menu-list ul { padding-left:12px; margin-top:3px; border-left:1px solid #eee; }
.leo-megamenu .sandrakis-menu-column img { display:inline-block; margin-right:6px; vertical-align:middle; }
@media (min-width:1101px) {
  .leo-megamenu .dropdown-menu:has(.sandrakis-menu-column) { max-height:calc(100vh - 130px); overflow-y:auto; }
}

/* Keep the complete navigation compact when it wraps onto two rows. */
@media (min-width:1101px) {
 .leo-megamenu .navbar-nav > li > a { line-height:40px !important; padding-top:0 !important; padding-bottom:0 !important; }
}

/* Fit the existing desktop navigation into one flexible header row. */
@media (min-width:1101px) {
 #header .elementor-element-d1c4391 > .elementor-container > .elementor-row { display:flex; flex-wrap:nowrap !important; align-items:center; }
 #header .elementor-element-2f30b9f { flex:0 0 clamp(135px,14vw,230px); width:auto !important; min-width:0; }
 #header .elementor-element-dcbeaa7 { flex:1 1 auto; width:auto !important; min-width:0; }
 #header .elementor-element-33c7aff { flex:0 0 112px; width:112px !important; min-width:0; }
 #header .elementor-element-dcbeaa7 > .elementor-column-wrap,
 #header .elementor-element-dcbeaa7 .elementor-widget-container,
 #header .elementor-element-dcbeaa7 .leo-megamenu { padding-left:0 !important; padding-right:0 !important; }
 #header .leo-megamenu .navbar-nav { display:flex !important; flex-flow:row nowrap !important; justify-content:center; gap:clamp(0px,.25vw,5px); width:100%; }
 #header .leo-megamenu .navbar-nav > li { flex:0 0 auto; float:none !important; margin-left:0 !important; margin-right:0 !important; }
 #header .leo-megamenu .navbar-nav > li > a { white-space:nowrap; padding-left:clamp(2px,.45vw,9px) !important; padding-right:clamp(2px,.45vw,9px) !important; font-size:clamp(10px,.9vw,13px) !important; line-height:60px !important; }
}

@media (min-width:1101px) {
 #header .elementor-element-33c7aff > .elementor-column-wrap { padding:0 !important; width:100%; }
 #header .elementor-element-33c7aff .elementor-widget-wrap { flex-flow:row nowrap !important; align-items:center; justify-content:flex-end; width:100%; }
 #header .elementor-element-33c7aff .elementor-widget { flex:0 0 34px; width:34px !important; margin:0 !important; }
 #header .elementor-element-33c7aff .elementor-widget-container { padding:0 !important; }
 #header .elementor-element-33c7aff #leo_search_block_top,
 #header .elementor-element-33c7aff #leo_block_top,
 #header .elementor-element-33c7aff #_desktop_cart { margin:0 !important; }
 #header .elementor-element-33c7aff .title_block,
 #header .elementor-element-33c7aff .popup-title,
 #header .elementor-element-33c7aff .blockcart > .header { margin:0 !important; padding:0 !important; height:60px; line-height:60px !important; }
}

/* Let large desktop screens use the available menu width. */
@media (min-width:1440px) {
 #header .leo-megamenu .navbar-nav { justify-content:space-evenly; gap:clamp(5px,.6vw,18px); }
 #header .leo-megamenu .navbar-nav > li > a { font-size:clamp(13px,.64vw,15px) !important; padding-left:clamp(6px,.55vw,16px) !important; padding-right:clamp(6px,.55vw,16px) !important; }
}

/* Regular menu text and progressively larger outer breathing room. */
@media (min-width:1101px) {
 #header .leo-megamenu .navbar-nav > li > a,
 #header .leo-megamenu .navbar-nav > li > a > span { font-weight:400 !important; }
}
@media (min-width:1440px) {
 #header .leo-megamenu .navbar-nav { box-sizing:border-box; padding-left:clamp(18px,calc(10vw - 126px),180px) !important; padding-right:clamp(18px,calc(10vw - 126px),180px) !important; }
}

/* Larger readable desktop labels with compact, centered link spacing. */
@media (min-width:1440px) {
 #header .leo-megamenu .navbar-nav { justify-content:center; gap:clamp(4px,calc(.7vw - 5px),14px); padding-left:clamp(18px,calc(3vw - 25px),100px) !important; padding-right:clamp(18px,calc(3vw - 25px),100px) !important; }
 #header .leo-megamenu .navbar-nav > li > a { font-size:clamp(13px,calc(1vw - 1.4px),16px) !important; padding-left:clamp(4px,.35vw,8px) !important; padding-right:clamp(4px,.35vw,8px) !important; font-weight:400 !important; }
}
