/* Top Catalog WOW 4.8.6 — services dropdown; no external assets. */
.tc-header, .tc-header-inner, .tc-nav{overflow:visible}
.tc-service-nav-item{position:relative;display:flex;align-items:center;gap:5px;min-height:42px}
.tc-service-nav-link{white-space:nowrap}
.tc-service-nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:28px;height:30px;color:#9adfff;border:1px solid rgba(96,191,244,.22);border-radius:9px;background:rgba(85,181,230,.10);cursor:pointer;transition:background .2s,color .2s}
.tc-service-nav-toggle:hover,.tc-service-nav-toggle:focus-visible{color:white;background:rgba(45,153,232,.24);outline-offset:3px}
.tc-service-nav-toggle svg{transition:transform .2s}
.tc-service-nav-item.tc-submenu-open .tc-service-nav-toggle svg,.tc-service-nav-item:hover .tc-service-nav-toggle svg,.tc-service-nav-item:focus-within .tc-service-nav-toggle svg{transform:rotate(180deg)}
.tc-service-submenu{position:absolute;z-index:10000;top:100%;left:-22px;width:274px;box-sizing:border-box;padding:12px;display:grid;gap:4px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(7px);transition:opacity .18s,transform .18s,visibility .18s;border:1px solid rgba(100,200,255,.21);border-radius:17px;background:linear-gradient(155deg,rgba(10,35,54,.985),rgba(5,24,41,.985));box-shadow:0 19px 50px rgba(0,0,0,.4)}
.tc-service-nav-item:not(.tc-submenu-force-closed):hover .tc-service-submenu,.tc-service-nav-item:not(.tc-submenu-force-closed):focus-within .tc-service-submenu,.tc-service-nav-item.tc-submenu-open .tc-service-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.tc-nav .tc-service-submenu>a{display:flex;align-items:center;gap:10px;min-height:42px;padding:7px 10px;border-radius:10px;white-space:nowrap;color:#e1f4ff;font-size:12.5px;font-weight:650;line-height:1.4;transition:background .18s,color .18s}
.tc-nav .tc-service-submenu>a:after{display:none}
.tc-nav .tc-service-submenu>a:hover,.tc-nav .tc-service-submenu>a:focus-visible{background:rgba(43,148,223,.18);color:white;outline-offset:-2px}
.tc-submenu-symbol{width:29px;height:29px;display:grid;place-items:center;flex-shrink:0;border:1px solid rgba(100,204,255,.13);border-radius:9px;color:#72d8ff;background:rgba(47,170,230,.10);font-size:16px}
.tc-mobile-service-parent{display:block;width:100%}
.tc-mobile-service-parent-row{display:flex;align-items:stretch;gap:7px}
.tc-mobile-icon-menu .tc-mobile-service-parent-row>a{min-width:0;flex:1}
.tc-mobile-service-toggle{width:47px;min-height:51px;flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid rgba(105,194,246,.18);border-radius:14px;background:rgba(57,169,233,.11);color:#91dbff}
.tc-mobile-service-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.tc-mobile-service-toggle svg{transition:transform .2s}
.tc-mobile-service-toggle:hover,.tc-mobile-service-toggle:focus-visible{border-color:rgba(103,207,255,.45);color:white;outline-offset:2px}
.tc-mobile-service-submenu[hidden]{display:none!important}
.tc-mobile-service-submenu{display:grid;gap:5px;margin:7px 0 5px 24px;padding:5px 0 5px 11px;border-left:2px solid rgba(70,183,240,.34)}
.tc-mobile-icon-menu .tc-mobile-service-submenu>a{display:block!important;min-height:39px!important;padding:11px 14px!important;border-radius:10px!important;border:1px solid rgba(104,196,237,.1)!important;background:rgba(38,118,166,.10)!important;font-size:13px!important;font-weight:680!important;letter-spacing:0!important;line-height:1.35!important;color:#d6f2ff!important}
.tc-mobile-icon-menu .tc-mobile-service-submenu>a:hover,.tc-mobile-icon-menu .tc-mobile-service-submenu>a:focus-visible{color:white!important;background:rgba(56,158,210,.22)!important}
@media (max-width:1180px){body.tcwow-theme .tc-header .tc-nav, .tc-header-inner .tc-nav{display:none!important}.tc-mobile-menu{display:block!important}.tc-header .tc-menu-toggle{display:block!important;cursor:pointer;flex:0 0 42px}.tc-header-inner{gap:12px!important;justify-content:space-between}.tc-header-inner .tc-brand{min-width:0!important;flex:0 1 auto}.tc-header-actions{min-width:0;margin-left:auto;flex:0 0 auto}.tc-header-actions .tc-desktop-cta{display:none!important}}
@media (min-width:1181px){.tc-mobile-menu{display:none!important}}
@media (prefers-reduced-motion:reduce){.tc-service-submenu,.tc-service-nav-toggle svg,.tc-mobile-service-toggle svg{transition:none!important}}

/* 4.9.1: decorative icons ONLY; original header/footer geometry is retained. */
.tc-nav .tc-classic-icon{display:inline-block;width:14px;height:14px;vertical-align:-2px;margin-right:6px;flex:none}
.tc-nav .tc-service-nav-link .tc-classic-icon{vertical-align:-2px}
.tc-classic-service-icon{display:inline-block;width:17px;height:17px;flex:none;vertical-align:-3px;margin-right:7px}
.tc-submenu-symbol .tc-classic-service-icon{width:16px;height:16px;margin-right:0;vertical-align:middle}
.tc-mobile-icon-menu .tc-mobile-service-submenu>a .tc-classic-service-icon{vertical-align:-4px;margin-right:10px}
.tc-footer-neo-links .tc-classic-footer-icon{display:inline-block;width:15px;height:15px;margin-right:8px;vertical-align:-3px}


/* 4.9.2 — two targeted mobile-menu fixes only.
   Preserve the original colors, dimensions, layout and footer. */
@media (max-width: 1180px) {
  /* The old styles mixed display:block and flex on the same toggle.
     Keep all three bars centered in both states without moving the button. */
  body.tcwow-theme .tc-header .tc-menu-toggle,
  body.tcwow-theme.tc-menu-open .tc-header .tc-menu-toggle {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
  }
  body.tcwow-theme .tc-header .tc-menu-toggle > span {
    display: block !important;
    width: 20px !important;
    height: 2px !important;
    flex: 0 0 2px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform-origin: center !important;
  }
  body.tcwow-theme .tc-header .tc-menu-toggle.is-open > span:nth-child(1) {
    transform: translateY(8px) rotate(45deg) !important;
  }
  body.tcwow-theme .tc-header .tc-menu-toggle.is-open > span:nth-child(2) {
    opacity: 0 !important;
  }
  body.tcwow-theme .tc-header .tc-menu-toggle.is-open > span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg) !important;
  }
  /* The panel was stretched to the viewport bottom, leaving a large
     empty block after the brand card. Size it to its actual contents,
     but allow scrolling whenever content is taller than the viewport. */
  body.tcwow-theme .tc-mobile-menu .tc-mobile-menu-panel {
    bottom: auto !important;
    height: max-content !important;
    min-height: 0 !important;
    max-height: calc(100dvh - 104px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }
}
@media (min-width: 901px) and (max-width: 1180px) {
  body.tcwow-theme .tc-mobile-menu .tc-mobile-menu-panel {
    max-height: calc(100dvh - 20px) !important;
  }
}
