/* ==========================================================================
   Anmol Digital — Compact Header & Footer V2
   Loaded after responsive.css to guarantee final visual priority.
   ========================================================================== */

:root {
    --header-height: 66px;
}

/* --------------------------------------------------------------------------
   Header — visibly smaller, cleaner and more premium
   -------------------------------------------------------------------------- */

.site-header {
    height: var(--header-height) !important;
    border-bottom: 1px solid rgba(0, 0, 0, .07) !important;
    background: rgba(255, 255, 255, .975) !important;
    box-shadow: none !important;
    backdrop-filter: blur(16px) saturate(150%);
    -webkit-backdrop-filter: blur(16px) saturate(150%);
}

.site-header.is-scrolled {
    height: var(--header-height) !important;
    border-bottom-color: rgba(0, 0, 0, .09) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .055) !important;
}

.site-header .site-header__inner {
    gap: 20px !important;
}

.site-header .site-brand {
    min-width: 132px !important;
    max-width: 158px !important;
}

.site-header .site-brand__logo {
    max-width: 150px !important;
    max-height: 43px !important;
}

.site-header .site-brand__text {
    font-size: 20px !important;
}

.site-header .desktop-navigation__list {
    gap: 2px !important;
    padding: 4px !important;
    border: 1px solid rgba(0, 0, 0, .055);
    border-radius: 999px;
    background: #f5f5f4;
}

.site-header .desktop-navigation__link {
    min-height: 36px !important;
    padding: 8px 13px !important;
    border-radius: 999px !important;
    background: transparent;
    color: #303030;
    font-size: 13px !important;
    font-weight: 760 !important;
}

.site-header .desktop-navigation__link:hover {
    background: rgba(255, 255, 255, .82) !important;
    color: #000000;
}

.site-header .desktop-navigation__link.is-active:not(.desktop-navigation__link--button) {
    background: #ffffff !important;
    color: #000000 !important;
    box-shadow: 0 3px 12px rgba(0, 0, 0, .075);
}

.site-header .desktop-navigation__link--button {
    min-height: 38px !important;
    margin-left: 7px !important;
    padding-inline: 18px !important;
    border: 0 !important;
    background: #111111 !important;
    color: #ffffff !important;
    box-shadow: 0 7px 16px rgba(0, 0, 0, .11);
}

.site-header .desktop-navigation__link--button:hover,
.site-header .desktop-navigation__link--button.is-active {
    background: #292929 !important;
    color: #ffffff !important;
    transform: none !important;
}

.site-header .mobile-menu-toggle {
    width: 40px !important;
    height: 40px !important;
    border-color: #ddddda !important;
    background: #f7f7f5 !important;
}

/* --------------------------------------------------------------------------
   Footer — substantially shorter and tighter
   -------------------------------------------------------------------------- */

.site-footer {
    background: #0b0b0b !important;
}

.site-footer::before {
    top: -185px !important;
    right: -135px !important;
    width: 340px !important;
    height: 340px !important;
    border-color: rgba(255, 255, 255, .045) !important;
    box-shadow:
        0 0 0 42px rgba(255, 255, 255, .012),
        0 0 0 88px rgba(255, 255, 255, .008) !important;
}

.site-footer .site-footer__top {
    padding-top: 38px !important;
}

.site-footer .site-footer__grid {
    grid-template-columns:
        minmax(230px, 1.35fr)
        repeat(2, minmax(125px, .62fr))
        minmax(210px, .9fr) !important;
    gap: 24px !important;
    padding-bottom: 28px !important;
}

.site-footer h2 {
    margin-bottom: 11px !important;
    font-size: 10.5px !important;
    letter-spacing: .13em !important;
}

.site-footer .site-footer__brand {
    max-width: 158px !important;
}

.site-footer .site-footer__brand img {
    max-width: 150px !important;
    max-height: 40px !important;
}

.site-footer .site-footer__about {
    max-width: 350px !important;
    margin-top: 13px !important;
    font-size: 12.5px !important;
    line-height: 1.62 !important;
}

.site-footer .site-footer__socials {
    gap: 6px !important;
    margin-top: 14px !important;
}

.site-footer .site-footer__socials a {
    width: 33px !important;
    height: 33px !important;
    font-size: 12px !important;
}

.site-footer .site-footer__link-column li + li {
    margin-top: 7px !important;
}

.site-footer .site-footer__link-column a {
    font-size: 12.5px !important;
    line-height: 1.4 !important;
}

.site-footer .site-footer__contact-list {
    gap: 9px !important;
}

.site-footer .site-footer__contact-list li {
    grid-template-columns: 16px minmax(0, 1fr) !important;
    gap: 8px !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
}

.site-footer .site-footer__contact-list i {
    margin-top: .16em !important;
    font-size: 11px !important;
}

.site-footer .site-footer__newsletter {
    grid-template-columns: minmax(190px, .7fr) minmax(300px, 1.3fr) !important;
    gap: 20px !important;
    padding: 15px 18px !important;
    border-radius: 15px 15px 0 0 !important;
    background: rgba(255, 255, 255, .04) !important;
}

.site-footer .site-footer__newsletter-copy h2 {
    margin-bottom: 3px !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
}

.site-footer .site-footer__newsletter-copy p {
    font-size: 12px !important;
    line-height: 1.45 !important;
}

.site-footer .newsletter-form__controls {
    min-height: 43px !important;
    padding: 3px !important;
    border-color: rgba(255, 255, 255, .14) !important;
    background: rgba(255, 255, 255, .055) !important;
}

.site-footer .newsletter-form__controls input {
    min-height: 35px !important;
    padding-inline: 13px !important;
    font-size: 12.5px !important;
}

.site-footer .newsletter-form__controls button {
    min-height: 35px !important;
    padding: 7px 15px !important;
    gap: 7px !important;
    font-size: 11.5px !important;
}

.site-footer .newsletter-form__message {
    min-height: 15px !important;
    margin-top: 4px !important;
    font-size: 10.5px !important;
}

.site-footer .site-footer__bottom-inner {
    min-height: 50px !important;
    gap: 16px !important;
    font-size: 11px !important;
}

.site-footer .site-footer__legal-navigation ul {
    gap: 8px 14px !important;
}

.site-footer .site-footer__back-to-top {
    gap: 6px !important;
}

/* --------------------------------------------------------------------------
   Tablet
   -------------------------------------------------------------------------- */

@media (max-width: 1240px) {
    :root {
        --header-height: 64px;
    }

    .site-footer .site-footer__grid {
        grid-template-columns:
            minmax(210px, 1.25fr)
            repeat(2, minmax(120px, .65fr))
            minmax(190px, .85fr) !important;
        gap: 20px !important;
    }

    .site-footer .site-footer__contact-column {
        grid-column: auto !important;
    }
}

@media (max-width: 1060px) {
    .site-header .desktop-navigation__list {
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .site-footer .site-footer__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 24px 28px !important;
    }

    .site-footer .site-footer__brand-column,
    .site-footer .site-footer__contact-column {
        grid-column: auto !important;
    }

    .site-footer .site-footer__newsletter {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 11px !important;
        padding: 15px !important;
    }

    .site-footer .site-footer__bottom-inner {
        min-height: 0 !important;
        padding-block: 14px !important;
    }
}

/* --------------------------------------------------------------------------
   Mobile
   -------------------------------------------------------------------------- */

@media (max-width: 820px) {
    :root {
        --header-height: 62px;
    }

    .site-header .site-brand {
        max-width: 142px !important;
    }

    .site-header .site-brand__logo {
        max-width: 136px !important;
        max-height: 38px !important;
    }

    .site-footer .site-footer__top {
        padding-top: 32px !important;
    }

    .site-footer .site-footer__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 22px !important;
        padding-bottom: 24px !important;
    }

    .site-footer .site-footer__brand-column {
        grid-column: 1 / -1 !important;
    }

    .site-footer .site-footer__about {
        max-width: 470px !important;
    }
}

@media (max-width: 576px) {
    :root {
        --header-height: 60px;
    }

    .site-header .site-header__inner {
        gap: 12px !important;
    }

    .site-header .site-brand {
        min-width: 0 !important;
        max-width: 132px !important;
    }

    .site-header .site-brand__logo {
        max-width: 126px !important;
        max-height: 35px !important;
    }

    .site-header .mobile-menu-toggle {
        width: 38px !important;
        height: 38px !important;
    }

    .site-footer::before {
        display: none !important;
    }

    .site-footer .site-footer__top {
        padding-top: 28px !important;
    }

    .site-footer .site-footer__grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 20px !important;
        padding-bottom: 22px !important;
    }

    .site-footer .site-footer__brand-column,
    .site-footer .site-footer__contact-column {
        grid-column: auto !important;
    }

    .site-footer .site-footer__about {
        margin-top: 11px !important;
        font-size: 12px !important;
    }

    .site-footer .site-footer__newsletter {
        gap: 10px !important;
        padding: 13px !important;
        border-radius: 13px 13px 0 0 !important;
    }

    .site-footer .site-footer__newsletter-copy h2 {
        font-size: 16px !important;
    }

    .site-footer .newsletter-form__controls {
        min-height: 0 !important;
        padding: 4px !important;
        border-radius: 12px !important;
    }

    .site-footer .newsletter-form__controls input {
        min-height: 40px !important;
    }

    .site-footer .newsletter-form__controls button {
        min-height: 39px !important;
    }

    .site-footer .site-footer__bottom-inner {
        gap: 9px !important;
        padding-block: 12px !important;
    }
}
