/*
 * CaliGo Movers layout refinements v1.5.6
 * Larger readable glass header, explicit submenu arrows and configurable footer menus.
 */

:root {
    --caligo-layout-width: 1280px;
    --caligo-header-edge: 12px;
    --caligo-header-height: 76px;
}

/* =========================================================
   DESKTOP HEADER — SAME SIZE ON EVERY TEMPLATE
   ========================================================= */
@media (min-width: 901px) {
    body .caligo-header,
    body.home .caligo-header,
    body.page-template-front-page .caligo-header,
    body:not(.home):not(.page-template-front-page) .caligo-header {
        position: absolute !important;
        top: 8px !important;
        right: var(--caligo-header-edge) !important;
        left: var(--caligo-header-edge) !important;
        z-index: 10000 !important;
        width: auto !important;
        max-width: none !important;
        min-height: var(--caligo-header-height) !important;
        height: var(--caligo-header-height) !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        transform: none !important;
        background: linear-gradient(110deg, rgba(192, 204, 211, 0.34), rgba(139, 154, 166, 0.25)) !important;
        border: 1px solid rgba(255, 255, 255, 0.20) !important;
        border-radius: 11px !important;
        box-shadow:
            0 16px 35px rgba(0, 0, 0, 0.22),
            inset 0 1px 0 rgba(255, 255, 255, 0.16) !important;
        backdrop-filter: blur(22px) saturate(132%) !important;
        -webkit-backdrop-filter: blur(22px) saturate(132%) !important;
    }

    body.admin-bar .caligo-header,
    body.admin-bar.home .caligo-header,
    body.admin-bar.page-template-front-page .caligo-header,
    body.admin-bar:not(.home):not(.page-template-front-page) .caligo-header {
        top: 40px !important;
    }

    body .caligo-header.is-sticky-fixed,
    body.home .caligo-header.is-sticky-fixed,
    body.page-template-front-page .caligo-header.is-sticky-fixed,
    body:not(.home):not(.page-template-front-page) .caligo-header.is-sticky-fixed {
        position: fixed !important;
        top: 8px !important;
        right: var(--caligo-header-edge) !important;
        left: var(--caligo-header-edge) !important;
        width: auto !important;
        margin: 0 !important;
    }

    body.admin-bar .caligo-header.is-sticky-fixed {
        top: 40px !important;
    }

    body .caligo-header__container,
    body.home .caligo-header__container,
    body.page-template-front-page .caligo-header__container {
        position: relative !important;
        display: grid !important;
        grid-template-columns: 170px minmax(0, 1fr) 392px !important;
        align-items: center !important;
        width: 100% !important;
        max-width: none !important;
        min-height: calc(var(--caligo-header-height) - 2px) !important;
        height: calc(var(--caligo-header-height) - 2px) !important;
        margin: 0 !important;
        padding: 0 18px !important;
        gap: 18px !important;
    }

    body .caligo-header__brand {
        position: relative !important;
        z-index: 5 !important;
        width: 170px !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    body .caligo-header__logo {
        display: inline-flex !important;
        align-items: center !important;
        width: auto !important;
        height: 60px !important;
        margin: 0 !important;
    }

    body .caligo-header__logo .site-logo-image,
    body.home .caligo-header__logo .site-logo-image {
        display: block !important;
        width: auto !important;
        max-width: 150px !important;
        max-height: 54px !important;
        margin: 0 !important;
        object-fit: contain !important;
        filter: drop-shadow(0 4px 9px rgba(0, 0, 0, 0.24));
    }

    /* Viewport-centered menu, independent of logo and CTA widths. */
    body .caligo-header__nav {
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        z-index: 7 !important;
        display: block !important;
        width: max-content !important;
        max-width: calc(100% - 660px) !important;
        min-width: 0 !important;
        margin: 0 !important;
        transform: translate(-50%, -50%) !important;
    }

    body .caligo-header__menu,
    body .caligo-header__menu.collapse,
    body .caligo-header__menu.navbar-collapse {
        position: static !important;
        display: flex !important;
        visibility: visible !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        opacity: 1 !important;
    }

    body .caligo-header__menu-list {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        width: max-content !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: clamp(20px, 1.55vw, 31px) !important;
        white-space: nowrap !important;
    }

    body .caligo-header__menu-list > li {
        position: relative !important;
        display: flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body .caligo-header__nav .nav-link {
        position: relative !important;
        display: inline-flex !important;
        align-items: center !important;
        min-height: 46px !important;
        margin: 0 !important;
        padding: 13px 2px !important;
        color: rgba(255, 255, 255, 0.96) !important;
        font-size: 13.5px !important;
        font-weight: 750 !important;
        line-height: 1 !important;
        text-shadow: 0 2px 9px rgba(0, 0, 0, 0.38) !important;
        white-space: nowrap !important;
    }

    body .caligo-header__nav li.menu-item-has-children > .nav-link {
        padding-right: 19px !important;
    }

    body .caligo-header__nav .nav-link::after {
        right: 2px !important;
        bottom: 5px !important;
        left: 2px !important;
    }

    body .caligo-header__nav .nav-link:hover,
    body .caligo-header__nav .nav-link:focus-visible,
    body .caligo-header__nav .nav-link.active,
    body .caligo-header__nav .current-menu-item > .nav-link,
    body .caligo-header__nav .current-menu-ancestor > .nav-link {
        color: #ff5b0b !important;
    }

    /* Remove legacy pseudo-caret and use one real button per submenu. */
    body .caligo-header__nav li.dropdown::after,
    body .caligo-header__nav .dropdown-toggle::after {
        display: none !important;
        content: none !important;
    }

    body .caligo-header__nav .caligo-submenu-toggle {
        position: absolute !important;
        top: 50% !important;
        right: -2px !important;
        z-index: 3 !important;
        display: inline-grid !important;
        place-items: center !important;
        width: 20px !important;
        height: 32px !important;
        margin: 0 !important;
        padding: 0 !important;
        color: rgba(255, 255, 255, 0.92) !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 6px !important;
        box-shadow: none !important;
        cursor: pointer !important;
        transform: translateY(-50%) !important;
    }

    body .caligo-header__nav .caligo-submenu-toggle:hover,
    body .caligo-header__nav .caligo-submenu-toggle:focus-visible,
    body .caligo-header__nav li.is-submenu-open > .caligo-submenu-toggle,
    body .caligo-header__nav li:hover > .caligo-submenu-toggle,
    body .caligo-header__nav li:focus-within > .caligo-submenu-toggle {
        color: #ff5b0b !important;
        outline: none !important;
    }

    body .caligo-header__nav .caligo-submenu-toggle svg {
        display: block !important;
        width: 11px !important;
        height: 8px !important;
        overflow: visible !important;
        fill: none !important;
        stroke: currentColor !important;
        stroke-width: 1.8 !important;
        stroke-linecap: round !important;
        stroke-linejoin: round !important;
        transform: rotate(0deg) !important;
        transform-origin: center !important;
        transition: transform 0.2s ease, color 0.2s ease !important;
    }

    body .caligo-header__nav li.is-submenu-open > .caligo-submenu-toggle svg,
    body .caligo-header__nav li:hover > .caligo-submenu-toggle svg,
    body .caligo-header__nav li:focus-within > .caligo-submenu-toggle svg {
        transform: rotate(180deg) !important;
    }

    body .caligo-header__nav .dropdown-menu {
        position: absolute !important;
        top: calc(100% + 8px) !important;
        left: 0 !important;
        z-index: 10020 !important;
        display: block !important;
        visibility: hidden !important;
        min-width: 220px !important;
        margin: 0 !important;
        padding: 9px !important;
        overflow: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateY(7px) !important;
        background: rgba(7, 20, 42, 0.94) !important;
        border: 1px solid rgba(117, 163, 220, 0.28) !important;
        border-radius: 12px !important;
        box-shadow: 0 20px 42px rgba(0, 0, 0, 0.38) !important;
        backdrop-filter: blur(18px) saturate(120%) !important;
        -webkit-backdrop-filter: blur(18px) saturate(120%) !important;
        transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease !important;
    }

    body .caligo-header__nav li:hover > .dropdown-menu,
    body .caligo-header__nav li:focus-within > .dropdown-menu,
    body .caligo-header__nav li.is-submenu-open > .dropdown-menu {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateY(0) !important;
    }

    body .caligo-header__nav .dropdown-menu .dropdown-item {
        display: block !important;
        width: 100% !important;
        padding: 10px 12px !important;
        color: rgba(255, 255, 255, 0.9) !important;
        font-size: 13px !important;
        font-weight: 650 !important;
        line-height: 1.25 !important;
        white-space: normal !important;
        background: transparent !important;
        border-radius: 8px !important;
    }

    body .caligo-header__nav .dropdown-menu .dropdown-item:hover,
    body .caligo-header__nav .dropdown-menu .dropdown-item:focus-visible,
    body .caligo-header__nav .dropdown-menu .dropdown-item.active {
        color: #fff !important;
        background: rgba(255, 91, 11, 0.16) !important;
        outline: none !important;
    }

    body .caligo-header__actions {
        position: relative !important;
        z-index: 6 !important;
        display: flex !important;
        grid-column: 3 !important;
        align-items: center !important;
        justify-content: flex-end !important;
        justify-self: end !important;
        width: 392px !important;
        margin: 0 !important;
        gap: 14px !important;
        white-space: nowrap !important;
    }

    body .caligo-header__action,
    body .caligo-header__action--call {
        display: inline-flex !important;
        flex: 0 0 184px !important;
        width: 184px !important;
        min-width: 184px !important;
        max-width: 184px !important;
        min-height: 44px !important;
        height: 44px !important;
        margin: 0 !important;
        padding: 7px 15px !important;
        gap: 9px !important;
        color: #fff !important;
        background: rgba(255, 255, 255, 0.20) !important;
        border-radius: 22px !important;
        font-size: 12px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
        text-shadow: 0 2px 8px rgba(0, 0, 0, 0.32) !important;
        box-shadow:
            0 10px 22px rgba(0, 0, 0, 0.24),
            inset 0 1px 0 rgba(255, 255, 255, 0.15) !important;
        backdrop-filter: blur(10px) !important;
        -webkit-backdrop-filter: blur(10px) !important;
    }

    body .caligo-header__action--estimate {
        border: 1px solid rgba(255, 91, 11, 0.62) !important;
    }

    body .caligo-header__action--call {
        border: 1px solid rgba(49, 170, 255, 0.65) !important;
    }

    body .caligo-header__action:hover,
    body .caligo-header__action:focus-visible {
        color: #fff !important;
        background: rgba(255, 255, 255, 0.29) !important;
        transform: translateY(-1px) !important;
        outline: none !important;
    }

    body .caligo-header__action svg {
        flex: 0 0 18px !important;
        width: 18px !important;
        height: 18px !important;
    }

    body .caligo-header__action--call span {
        display: grid !important;
        gap: 1px !important;
        min-width: 0 !important;
        text-align: center !important;
    }

    body .caligo-header__action--call strong {
        font-size: 12px !important;
        line-height: 1 !important;
    }

    body .caligo-header__action--call small {
        display: block !important;
        font-size: 8.5px !important;
        font-weight: 750 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body .caligo-header__mobile-toggle {
        display: none !important;
    }

    body.home .caligo-hero,
    body.page-template-front-page .caligo-hero,
    .caligo-live-homepage .caligo-hero {
        padding-top: 102px !important;
    }

    .caligo-internal-hero.page-hero {
        padding-top: 92px !important;
    }
}

/* Compact desktop: readable, centered and collision-safe. */
@media (min-width: 901px) and (max-width: 1280px) {
    body .caligo-header__container,
    body.home .caligo-header__container,
    body.page-template-front-page .caligo-header__container {
        grid-template-columns: 142px minmax(0, 1fr) 330px !important;
        padding-inline: 13px !important;
        gap: 10px !important;
    }

    body .caligo-header__brand {
        width: 142px !important;
    }

    body .caligo-header__logo .site-logo-image,
    body.home .caligo-header__logo .site-logo-image {
        max-width: 132px !important;
        max-height: 48px !important;
    }

    body .caligo-header__nav {
        max-width: calc(100% - 535px) !important;
    }

    body .caligo-header__menu-list {
        gap: 14px !important;
    }

    body .caligo-header__nav .nav-link {
        font-size: 11.5px !important;
    }

    body .caligo-header__actions {
        width: 330px !important;
        gap: 10px !important;
    }

    body .caligo-header__action,
    body .caligo-header__action--call {
        flex-basis: 160px !important;
        width: 160px !important;
        min-width: 160px !important;
        max-width: 160px !important;
        padding-inline: 11px !important;
        font-size: 11px !important;
    }
}

/* =========================================================
   MOBILE NAVIGATION
   ========================================================= */
@media (max-width: 900px) {
    body .caligo-header__nav li.menu-item-has-children {
        position: relative;
    }

    body .caligo-header__nav li.menu-item-has-children > a {
        padding-right: 48px !important;
    }

    body .caligo-header__nav .caligo-submenu-toggle {
        position: absolute;
        top: 4px;
        right: 4px;
        z-index: 3;
        display: grid;
        place-items: center;
        width: 40px;
        height: 40px;
        padding: 0;
        color: #fff;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 8px;
    }

    body .caligo-header__nav .caligo-submenu-toggle svg {
        width: 12px;
        height: 8px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.8;
        transition: transform 0.2s ease;
    }

    body .caligo-header__nav li.is-submenu-open > .caligo-submenu-toggle svg {
        transform: rotate(180deg);
    }

    body .caligo-header__nav .dropdown-menu {
        display: none !important;
    }

    body .caligo-header__nav li.is-submenu-open > .dropdown-menu {
        position: static !important;
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 5px 0 7px 14px !important;
        background: rgba(0, 0, 0, 0.14) !important;
        border: 0 !important;
        box-shadow: none !important;
    }
}

/* =========================================================
   FOOTER MENU LAYOUT
   ========================================================= */
body .site-footer.caligo-footer {
    position: relative !important;
    z-index: 10 !important;
    min-height: 470px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    color: rgba(255, 255, 255, 0.91) !important;
    background-color: #08132f !important;
    background-image:
        linear-gradient(rgba(7, 17, 42, 0.12), rgba(7, 17, 42, 0.12)),
        url('../../images/svg/footer-bg.svg') !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    border-top: 1px solid rgba(255, 91, 11, 0.68) !important;
}

body .site-footer.caligo-footer::before,
body .site-footer.caligo-footer::after {
    display: none !important;
    content: none !important;
}

.caligo-footer__container {
    width: min(calc(100% - 48px), var(--caligo-layout-width));
    max-width: var(--caligo-layout-width);
    margin-inline: auto;
}

.caligo-footer__primary {
    min-height: 410px;
    padding: 52px 0 38px;
}

.caligo-footer__columns {
    display: grid;
    grid-template-columns: minmax(250px, 1.28fr) repeat(3, minmax(170px, 1fr));
    align-items: start;
    gap: clamp(38px, 5vw, 76px);
}

.caligo-footer__column,
.caligo-footer__column .widget {
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.caligo-footer__logo-link {
    display: inline-flex;
    align-items: center;
    margin: 0 0 24px;
}

.caligo-footer__logo {
    display: block;
    width: auto;
    max-width: 180px;
    max-height: 72px;
    object-fit: contain;
    filter: drop-shadow(0 5px 12px rgba(0, 0, 0, 0.25));
}

.caligo-footer__company-content,
.caligo-footer__company-content p,
.caligo-footer__company-content li {
    color: rgba(255, 255, 255, 0.89) !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

.caligo-footer__company-content p:last-child,
.caligo-footer__company-content .widget:last-child {
    margin-bottom: 0 !important;
}

.caligo-footer__title,
.caligo-footer .footer-title,
.caligo-footer .widget-title {
    margin: 0 0 16px !important;
    color: #13bce7 !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

.caligo-footer__menu,
.caligo-footer__legal-menu,
.caligo-footer .menu,
.caligo-footer .widget_nav_menu ul {
    display: block;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.caligo-footer__menu li,
.caligo-footer .widget_nav_menu li,
.caligo-footer .menu li {
    display: block !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
}

.caligo-footer__menu a,
.caligo-footer .widget_nav_menu a,
.caligo-footer .menu a {
    display: inline-block !important;
    padding: 0 !important;
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
    transition: color 0.18s ease, transform 0.18s ease !important;
}

.caligo-footer__menu a:hover,
.caligo-footer__menu a:focus-visible,
.caligo-footer .widget_nav_menu a:hover,
.caligo-footer .widget_nav_menu a:focus-visible {
    color: #13bce7 !important;
    transform: translateX(2px) !important;
    outline: none !important;
}

.caligo-footer__contact a[href^='tel:'],
.caligo-footer__contact a[href^='mailto:'] {
    color: #ff5b0b !important;
    font-weight: 750 !important;
}

.caligo-footer__empty-note {
    margin: 0;
    color: rgba(255, 255, 255, 0.45);
    font-size: 12px;
    line-height: 1.5;
}

.caligo-footer__bottom {
    border-top: 1px solid rgba(55, 83, 133, 0.42);
    background: rgba(4, 12, 31, 0.14);
}

.caligo-footer__bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 60px;
    gap: 32px;
    padding-block: 16px;
}

.caligo-footer__copyright {
    margin: 0;
    color: rgba(255, 255, 255, 0.64);
    font-size: 12px;
    line-height: 1.4;
}

.caligo-footer__legal-menu {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0;
}

.caligo-footer__legal-menu li {
    position: relative;
    display: inline-flex !important;
    align-items: center;
    margin: 0 !important;
}

.caligo-footer__legal-menu li:not(:last-child)::after {
    margin: 0 13px;
    color: rgba(91, 119, 167, 0.78);
    content: '|';
}

.caligo-footer__legal-menu a {
    color: rgba(255, 255, 255, 0.82) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}

.caligo-footer__legal-menu a:hover,
.caligo-footer__legal-menu a:focus-visible {
    color: #13bce7 !important;
    outline: none !important;
}

@media (max-width: 1024px) {
    .caligo-footer__columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 42px 56px;
    }
}

@media (max-width: 700px) {
    .caligo-footer__container {
        width: min(calc(100% - 32px), var(--caligo-layout-width));
    }

    .caligo-footer__primary {
        padding: 42px 0 30px;
    }

    .caligo-footer__columns {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .caligo-footer__bottom-inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }

    .caligo-footer__legal-menu {
        justify-content: flex-start;
    }
}

/* =========================================================
   v1.5.6 — RESTORED GLASS CTA, SAFE DROPDOWNS, FULL-HD SCALE
   ========================================================= */

@media (min-width: 901px) {
    /* Restore the approved dark frosted-glass CTA proportions. */
    body .caligo-header__container,
    body.home .caligo-header__container,
    body.page-template-front-page .caligo-header__container {
        grid-template-columns: 170px minmax(0, 1fr) 428px !important;
    }

    body .caligo-header__nav {
        max-width: calc(100% - 720px) !important;
    }

    body .caligo-header__actions {
        width: 428px !important;
        gap: 18px !important;
    }

    body .caligo-header__action,
    body .caligo-header__action--call {
        position: relative !important;
        display: inline-flex !important;
        flex: 0 0 205px !important;
        width: 205px !important;
        min-width: 205px !important;
        max-width: 205px !important;
        min-height: 58px !important;
        height: 58px !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 12px !important;
        padding: 9px 18px !important;
        overflow: visible !important;
        color: #fff !important;
        font-size: 14px !important;
        font-weight: 850 !important;
        line-height: 1.05 !important;
        text-transform: uppercase !important;
        border-radius: 19px !important;
        background: rgba(7, 12, 22, 0.72) !important;
        box-shadow:
            0 13px 28px rgba(0, 0, 0, 0.34),
            inset 0 1px 0 rgba(255, 255, 255, 0.075) !important;
        backdrop-filter: blur(16px) saturate(118%) !important;
        -webkit-backdrop-filter: blur(16px) saturate(118%) !important;
    }

    body .caligo-header__action--estimate {
        border: 1px solid rgba(255, 91, 11, 0.84) !important;
        background: linear-gradient(145deg, rgba(25, 13, 16, 0.78), rgba(6, 12, 23, 0.76)) !important;
        box-shadow:
            0 13px 28px rgba(0, 0, 0, 0.34),
            0 0 20px rgba(255, 91, 11, 0.13),
            inset 0 1px 0 rgba(255, 255, 255, 0.075) !important;
    }

    body .caligo-header__action--call {
        border: 1px solid rgba(48, 154, 255, 0.86) !important;
        background: linear-gradient(145deg, rgba(7, 22, 37, 0.82), rgba(5, 12, 24, 0.78)) !important;
        box-shadow:
            0 13px 28px rgba(0, 0, 0, 0.34),
            0 0 20px rgba(53, 157, 255, 0.14),
            inset 0 1px 0 rgba(255, 255, 255, 0.075) !important;
    }

    body .caligo-header__action:hover,
    body .caligo-header__action:focus-visible {
        color: #fff !important;
        background-color: rgba(18, 27, 41, 0.86) !important;
        transform: translateY(-1px) !important;
    }

    body .caligo-header__action svg {
        flex: 0 0 24px !important;
        width: 24px !important;
        height: 24px !important;
    }

    body .caligo-header__action--call span {
        display: grid !important;
        gap: 3px !important;
        min-width: 0 !important;
        text-align: left !important;
    }

    body .caligo-header__action--call strong {
        font-size: 14px !important;
        line-height: 1 !important;
    }

    body .caligo-header__action--call small {
        display: block !important;
        font-size: 10.5px !important;
        font-weight: 750 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    /* Restore the previous dropdown visual format. */
    body .caligo-header__nav li.menu-item-has-children {
        position: relative !important;
    }

    /* Invisible hover corridor between the menu item and its dropdown. */
    body .caligo-header__nav li.menu-item-has-children::after {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        z-index: 10018 !important;
        display: block !important;
        width: max(100%, 220px) !important;
        height: 18px !important;
        content: "" !important;
        background: transparent !important;
        pointer-events: auto !important;
    }

    body .caligo-header__nav .dropdown-menu {
        position: absolute !important;
        top: calc(100% + 15px) !important;
        left: 0 !important;
        z-index: 10020 !important;
        display: block !important;
        visibility: hidden !important;
        min-width: 200px !important;
        margin: 0 !important;
        padding: 8px !important;
        overflow: visible !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateY(6px) !important;
        color: #fff !important;
        background: rgba(27, 41, 85, 0.96) !important;
        border: 1px solid rgba(255, 255, 255, 0.11) !important;
        border-radius: 12px !important;
        box-shadow: 0 18px 36px rgba(0, 0, 0, 0.32) !important;
        backdrop-filter: blur(16px) saturate(118%) !important;
        -webkit-backdrop-filter: blur(16px) saturate(118%) !important;
        transition:
            opacity 0.16s ease,
            transform 0.16s ease,
            visibility 0s linear 0.34s !important;
    }

    body .caligo-header__nav .dropdown-menu::before {
        position: absolute !important;
        right: 0 !important;
        bottom: 100% !important;
        left: 0 !important;
        height: 18px !important;
        content: "" !important;
        background: transparent !important;
        pointer-events: auto !important;
    }

    body .caligo-header__nav li:hover > .dropdown-menu,
    body .caligo-header__nav li:focus-within > .dropdown-menu,
    body .caligo-header__nav li.is-submenu-open > .dropdown-menu,
    body .caligo-header__nav .dropdown-menu:hover {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateY(0) !important;
        transition-delay: 0s !important;
    }

    body .caligo-header__nav .dropdown-menu .dropdown-item {
        display: block !important;
        width: 100% !important;
        padding: 10px 12px !important;
        color: rgba(255, 255, 255, 0.94) !important;
        font-size: 13px !important;
        font-weight: 650 !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
        background: transparent !important;
        border-radius: 8px !important;
        transition: color 0.12s ease, background-color 0.12s ease !important;
    }

    body .caligo-header__nav .dropdown-menu .dropdown-item:hover,
    body .caligo-header__nav .dropdown-menu .dropdown-item:focus-visible,
    body .caligo-header__nav .dropdown-menu .dropdown-item.active {
        color: #ff5b0b !important;
        background: rgba(255, 255, 255, 0.10) !important;
        outline: none !important;
    }

    /* Preserve the older two-column format for the large Services/Areas menus. */
    body .caligo-header__nav #menu-item-1273 > .dropdown-menu,
    body .caligo-header__nav #menu-item-1247 > .dropdown-menu,
    body .caligo-header__nav li.caligo-mega-menu > .dropdown-menu {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(190px, 1fr)) !important;
        gap: 2px 4px !important;
        min-width: 430px !important;
    }
}

/* Keep the restored buttons collision-safe on narrower desktop windows. */
@media (min-width: 901px) and (max-width: 1450px) {
    body .caligo-header__container,
    body.home .caligo-header__container,
    body.page-template-front-page .caligo-header__container {
        grid-template-columns: 145px minmax(0, 1fr) 354px !important;
        gap: 10px !important;
        padding-inline: 13px !important;
    }

    body .caligo-header__brand {
        width: 145px !important;
    }

    body .caligo-header__logo .site-logo-image,
    body.home .caligo-header__logo .site-logo-image {
        max-width: 134px !important;
        max-height: 49px !important;
    }

    body .caligo-header__nav {
        max-width: calc(100% - 550px) !important;
    }

    body .caligo-header__menu-list {
        gap: 14px !important;
    }

    body .caligo-header__nav .nav-link {
        font-size: 11.5px !important;
    }

    body .caligo-header__actions {
        width: 354px !important;
        gap: 10px !important;
    }

    body .caligo-header__action,
    body .caligo-header__action--call {
        flex-basis: 172px !important;
        width: 172px !important;
        min-width: 172px !important;
        max-width: 172px !important;
        min-height: 50px !important;
        height: 50px !important;
        padding-inline: 12px !important;
        font-size: 11.5px !important;
        border-radius: 17px !important;
    }

    body .caligo-header__action svg {
        flex-basis: 20px !important;
        width: 20px !important;
        height: 20px !important;
    }

    body .caligo-header__action--call strong {
        font-size: 11.5px !important;
    }

    body .caligo-header__action--call small {
        font-size: 8.5px !important;
    }
}

/*
 * At a 1920x1080-class viewport render the page content at 80% scale.
 * Width compensation keeps full-width section backgrounds flush with the viewport,
 * while 1280px inner grids become a visually balanced 1024px.
 * The global header remains at its approved size.
 */
@media (min-width: 1700px) and (max-width: 2100px) and (min-height: 820px) and (max-height: 1200px) {
    html,
    body {
        overflow-x: hidden !important;
    }

    body > main#site-content {
        width: 125% !important;
        max-width: none !important;
        zoom: 0.8;
    }

    body > main#site-content .caligo-internal-hero.page-hero {
        padding-top: 110px !important;
    }

    .caligo-footer__container {
        max-width: 1024px !important;
    }
}
