/* Tralles Marble: restored FactoryPlus assets need a lower desktop breakpoint on this server. */
@media (min-width: 768px) {
  .site-header, .site-header .header-main, .site-header .container, .site-header .row,
  .site-header .site-menu, .site-header .main-nav, .site-header .main-nav > ul { height: auto !important; }
  .site-header .header-main { padding: 22px 0 !important; min-height: 122px !important; }
  .site-header .site-logo { min-height: 78px !important; display: flex !important; align-items: center !important; }
  .site-header .site-logo img.logo-dark { display: block !important; width: 180px !important; height: auto !important; max-height: 90px !important; }
  .site-header .main-nav > ul.menu { display: flex !important; justify-content: flex-end !important; align-items: center !important; flex-wrap: nowrap !important; padding: 16px 0 0 !important; margin: 0 !important; }
  .site-header .main-nav > ul.menu > li { display: block !important; float: none !important; width: auto !important; position: relative !important; }
  .site-header .main-nav > ul.menu > li > a { display: block !important; padding: 15px 10px !important; white-space: nowrap !important; }
  .site-header .main-nav > ul.menu > li > ul.sub-menu { top: 100% !important; left: 0 !important; }
  .rev_slider_wrapper, .rev_slider { min-height: 620px !important; }
}
@media (min-width: 768px) {
  /* The theme's generated sticky-header placeholder was rendered as an empty block. */
  #fh-header-minimized { display: none !important; }
  .site-header .header-main, .site-header { height: 126px !important; min-height: 126px !important; }
  .site-header .container, .site-header .row { height: 82px !important; min-height: 82px !important; }
  .site-header .site-logo { height: 82px !important; min-height: 82px !important; }
  .site-header .site-logo img.logo-dark { width: auto !important; height: 76px !important; max-height: 76px !important; }
  .site-header .main-nav > ul.menu > li > ul.sub-menu { display: none !important; }
  .site-header .main-nav > ul.menu > li:hover > ul.sub-menu { display: block !important; }
}
/* Resolve the remaining desktop/mobile theme collisions. */
@media (min-width: 768px) {
  .site-header .site-logo img.logo-light { display: none !important; }
  .site-header .site-logo img.logo-dark { display: block !important; }
  #primary-mobile-nav, .primary-mobile-nav, #off-canvas-layer { display: none !important; }
  #colophon.site-footer, .site-footer { height: auto !important; min-height: 0 !important; padding: 28px 0 !important; }
  #colophon .container { min-height: 0 !important; }
}
/* Footer contact information: keep it readable and prevent clipping. */
#footer-widgets { height: auto !important; min-height: 170px !important; padding: 30px 0 !important; background: #f7f7f7 !important; }
#footer-widgets #text-4, #footer-widgets #text-4 *, #footer-widgets .textwidget, #footer-widgets .textwidget * { color: #343434 !important; opacity: 1 !important; visibility: visible !important; }
#footer-widgets #text-4 h4 { color: #612b63 !important; font-weight: 700 !important; }
#footer-widgets #text-4 li { margin: 7px 0 !important; line-height: 1.45 !important; }
/* Compact, balanced desktop header for Tralles Marble. */
@media (min-width: 768px) {
  #topbar.topbar { height: 38px !important; min-height: 38px !important; background: #5f2d63 !important; color: #fff !important; }
  #topbar .container, #topbar .row, #topbar .topbar-widgets { height: 38px !important; min-height: 38px !important; }
  #topbar .topbar-left { display: flex !important; align-items: center !important; gap: 22px !important; }
  #topbar .topbar-right { display: flex !important; align-items: center !important; justify-content: flex-end !important; }
  #topbar .widget { margin: 0 !important; }
  #topbar .topbar-contact, #topbar .topbar-contact *, #topbar .topbar-socials a { color: #fff !important; font-size: 13px !important; line-height: 38px !important; }
  #topbar .topbar-socials { margin: 0 !important; display: flex !important; gap: 12px !important; align-items: center !important; }
  #topbar .topbar-socials li { margin: 0 !important; }
  .site-header .header-main, .site-header { height: 108px !important; min-height: 108px !important; padding: 0 !important; }
  .site-header .container, .site-header .row, .site-header .site-logo, .site-header .site-menu { height: 108px !important; min-height: 108px !important; }
  .site-header .site-logo { display: flex !important; align-items: center !important; }
  .site-header .site-logo img.logo-dark { height: 74px !important; width: auto !important; max-height: 74px !important; }
  .site-header .site-menu { display: flex !important; align-items: center !important; justify-content: flex-end !important; }
  .site-header .main-nav > ul.menu { padding: 0 !important; align-items: center !important; }
  .site-header .main-nav > ul.menu > li > a { padding: 18px 13px !important; font-size: 14px !important; letter-spacing: .1px !important; }
}
