/*
Theme Name: GTON Utenzo Child
Theme URI: https://gtonco.com/
Author: GTON / Gtech Industries Ltd.
Version: 1.2.0
Template: utenzo
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Description: GTON presentation layer for the Utenzo WooCommerce parent theme.
Text Domain: utenzo
*/

:root {
    --gton-navy: #0B2C45;
    --gton-red: #A52022;
    --gton-ink: #041218;
    --gton-muted: #5A6167;
    --gton-border: #E4E8EB;
    --gton-soft: #F5F7F8;
    --gton-white: #FFFFFF;
}

body a:hover,
body a:focus {
    text-decoration: none;
}

body.gton-site {
    color: var(--gton-ink);
}

/* ---------- Header ---------- */
.gton-site-header {
    background: var(--gton-white);
    border-bottom: 1px solid var(--gton-border);
    box-shadow: 0 4px 18px rgba(4, 18, 24, .06);
}

.gton-site-header .bt-header-row {
    min-height: 82px;
    gap: 24px;
}

.gton-site-header .bt-logo-col {
    width: 18%;
    min-width: 150px;
}

.gton-site-header .bt-primary-menu-col {
    width: 82%;
    gap: 18px;
}

.gton-site-header .bt-site-logo {
    height: 82px;
}

.gton-site-header .bt-site-logo a {
    padding: 8px 0;
}

.gton-site-header .bt-site-logo a img {
    display: block;
    width: auto;
    max-width: 170px;
    max-height: 64px;
    object-fit: contain;
}

.gton-site-header .bt-primary-menu .bt-primary-menu-container > ul {
    gap: 8px 22px;
}

.gton-site-header .bt-primary-menu .bt-primary-menu-container > ul > li > a {
    min-height: 82px;
    color: var(--gton-navy);
    font-size: 15px;
    font-weight: 650;
    letter-spacing: .01em;
}

.gton-site-header .bt-primary-menu .bt-primary-menu-container > ul > li > a:hover,
.gton-site-header .bt-primary-menu .bt-primary-menu-container > ul > li.current-menu-item > a,
.gton-site-header .bt-primary-menu .bt-primary-menu-container > ul > li.current-menu-ancestor > a {
    color: var(--gton-red);
}

.gton-header-quote-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 11px 18px;
    border: 1px solid var(--gton-red);
    border-radius: 6px;
    background: var(--gton-red);
    color: var(--gton-white) !important;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.2;
    white-space: nowrap;
    transition: transform .2s ease, background .2s ease, border-color .2s ease;
}

.gton-header-quote-link:hover,
.gton-header-quote-link:focus {
    background: #8F191B;
    border-color: #8F191B;
    color: var(--gton-white) !important;
    transform: translateY(-1px);
}

.gton-mobile-menu-cta {
    display: none;
}

/* Traditional dropdowns and Utenzo mega menu surfaces. */
.gton-site-header .bt-primary-menu .bt-primary-menu-container ul .menu-item-has-children ul {
    border: 1px solid var(--gton-border);
    border-radius: 8px;
    box-shadow: 0 18px 45px rgba(4, 18, 24, .12);
    overflow: hidden;
}

.gton-site-header .bt-primary-menu .bt-primary-menu-container ul .menu-item-has-children ul li:not(:first-child) {
    border-top-color: var(--gton-border);
}

.gton-site-header .bt-primary-menu .bt-primary-menu-container ul .menu-item-has-children ul a {
    color: var(--gton-muted);
}

.gton-site-header .bt-primary-menu .bt-primary-menu-container ul .menu-item-has-children ul a:hover {
    color: var(--gton-red);
    background: var(--gton-soft);
}

/* Elementor/Utenzo mega menu content */
.gton-site .utenzo-megamenu-content,
.gton-site .bt-mega-menu-sub,
.gton-site .e-n-menu-content {
    --e-global-color-primary: var(--gton-navy);
    --e-global-color-accent: var(--gton-red);
}

/* ---------- GTON Core product buttons ---------- */
.gton-site .gton-action-primary,
.gton-site .woocommerce a.button.gton-action-primary,
.gton-site .woocommerce button.button.gton-action-primary {
    background: var(--gton-red) !important;
    border-color: var(--gton-red) !important;
    color: var(--gton-white) !important;
}

.gton-site .gton-action-primary:hover {
    background: #8F191B !important;
    border-color: #8F191B !important;
}

.gton-site .gton-action-button:not(.gton-action-primary):not(.is-disabled) {
    border-color: var(--gton-navy);
    color: var(--gton-navy);
    background: var(--gton-white);
}

.gton-site .gton-action-button:not(.gton-action-primary):not(.is-disabled):hover {
    background: var(--gton-navy);
    color: var(--gton-white);
}

.gton-site .gton-spec-table th {
    color: var(--gton-navy);
}

.gton-site .gton-spec-table th,
.gton-site .gton-spec-table td {
    border-bottom-color: var(--gton-border);
}

@media (max-width: 1199px) and (min-width: 992px) {
    .gton-site-header .bt-primary-menu .bt-primary-menu-container > ul {
        gap: 8px 14px;
    }

    .gton-site-header .bt-primary-menu .bt-primary-menu-container > ul > li > a {
        font-size: 14px;
    }

    .gton-header-quote-link {
        padding-inline: 13px;
    }
}

@media (max-width: 991.98px) {
    .gton-site-header .bt-header-row {
        min-height: 72px;
    }

    .gton-site-header .bt-logo-col {
        width: 65%;
    }

    .gton-site-header .bt-primary-menu-col {
        width: 35%;
        gap: 10px;
    }

    .gton-site-header .bt-site-logo {
        height: 72px;
    }

    .gton-site-header .bt-site-logo a img {
        max-height: 56px;
        max-width: 150px;
    }

    .gton-desktop-quote-link {
        display: none;
    }

    .gton-mobile-menu-cta {
        display: block;
        padding: 0 30px 24px;
    }

    .gton-mobile-menu-cta .gton-header-quote-link {
        width: 100%;
    }

    .gton-site-header .bt-primary-menu {
        background: rgba(255, 255, 255, .98);
    }

    .gton-site-header .bt-primary-menu .bt-page-menu-wrap,
    .gton-site-header .bt-primary-menu .bt-primary-menu-container {
        padding: 100px 30px 24px;
    }

    .gton-site-header .bt-primary-menu .bt-primary-menu-container > ul > li > a {
        min-height: unset;
        color: var(--gton-navy);
        padding: 14px 0;
        font-size: 16px;
    }

    .gton-site-header .bt-menu-toggle {
        border-color: var(--gton-border);
        color: var(--gton-navy);
        border-radius: 6px;
    }
}


/* ---------- GTON mega menu bridge for Utenzo standard header ---------- */
@media (min-width: 992px) {
    .gton-site-header,
    .gton-site-header .bt-container,
    .gton-site-header .bt-header-row,
    .gton-site-header .bt-primary-menu-col,
    .gton-site-header .bt-primary-menu,
    .gton-site-header .bt-primary-menu-container,
    .gton-site-header .bt-primary-menu-wrapper,
    .gton-site-header .gton-has-megamenu {
        overflow: visible !important;
    }

    .gton-site-header .bt-header-row {
        position: relative;
    }

    .gton-site-header .gton-has-megamenu {
        position: static !important;
    }

    .gton-site-header .gton-megamenu-dropdown {
        position: absolute;
        z-index: 99999;
        top: 100%;
        left: 50%;
        width: min(100vw, 1600px);
        max-height: calc(100vh - 120px);
        overflow-y: auto;
        padding: 0;
        background: var(--gton-white);
        border-top: 3px solid var(--gton-red);
        border-bottom: 1px solid var(--gton-border);
        box-shadow: 0 24px 48px rgba(4, 18, 24, .16);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translate(-50%, 10px);
        transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
    }

    .gton-site-header .gton-megamenu-fit-to-content {
        width: min(1100px, calc(100vw - 40px));
    }

    .gton-site-header .gton-has-megamenu:hover > .gton-megamenu-dropdown,
    .gton-site-header .gton-has-megamenu:focus-within > .gton-megamenu-dropdown {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translate(-50%, 0);
    }

    .gton-site-header .gton-megamenu-inner {
        width: min(1440px, calc(100% - 64px));
        margin: 0 auto;
        padding: 28px 0 32px;
    }

    .gton-site-header .gton-megamenu-dropdown .bt-main-page-header,
    .gton-site-header .gton-megamenu-dropdown .bt-breadcrumb,
    .gton-site-header .gton-megamenu-dropdown .bt-post-meta,
    .gton-site-header .gton-megamenu-dropdown .widget-area,
    .gton-site-header .gton-megamenu-dropdown aside {
        display: none !important;
    }

    .gton-site-header .gton-megamenu-dropdown .gton-category-grid {
        margin: 0;
    }
}

@media (max-width: 991.98px) {
    .gton-site-header .gton-megamenu-dropdown {
        display: none !important;
    }
}
