/*
 * Huuguu system fixes
 * Final structural layer for Customizer tokens while the legacy CSS is being consolidated.
 */
:root {
    --hgg-bg: var(--hgg-site-bg, #ffffff);
    --hgg-surface: var(--hgg-content-surface-bg, #ffffff);
    --hgg-primary: var(--hgg-link-color, #007721);
    --hgg-primary-dark: var(--hgg-link-hover-color, #045F12);
}

body {
    background: var(--hgg-site-bg, #f5f7fb);
}

/*
 * Content background must not bleed into the site shell, header, footer,
 * or generic containers. Those areas have their own Customizer tokens.
 */
.huuguu-content-wrap,
.huuguu-blog-wrap,
.huuguu-woocommerce-wrap,
.woocommerce-page .huuguu-content-wrap,
.woocommerce .huuguu-content-wrap {
    background-color: var(--hgg-content-area-bg, transparent);
}

/* Layout columns are structural and should not receive the content surface color. */
.huuguu-primary,
.huuguu-primary--full {
    background-color: transparent;
}

/* Internal readable content surfaces are separate from the content area wrapper.
 * Layout columns such as .huuguu-primary must remain transparent so the
 * content area background can remain visible around the readable cards. */
.hgg-card,
.hgg-page-card,
.hgg-post-card,
.hgg-single-card,
.hgg-archive-card,
.huuguu-page-card,
.huuguu-post-card,
.huuguu-single-card,
.huuguu-archive-card {
    background-color: var(--hgg-content-surface-bg, #ffffff);
}

.huuguu-content-wrap,
.huuguu-blog-wrap,
.huuguu-page-card,
.huuguu-post-card,
.huuguu-single-card,
.huuguu-archive-card,
.huuguu-woocommerce-wrap,
.woocommerce div.product,
.woocommerce div.product .summary,
.woocommerce div.product .woocommerce-tabs,
.woocommerce .products .product {
    border-color: var(--hgg-content-border-color, #d8dfef);
    border-radius: var(--hgg-content-radius, 6px);
}

.huuguu-content-wrap,
.huuguu-blog-wrap,
.huuguu-page-card,
.huuguu-single-card,
.huuguu-woocommerce-wrap {
    border-width: var(--hgg-content-border-width, 1px);
    border-style: solid;
    box-shadow: var(--hgg-content-shadow, none);
}

a {
    color: var(--hgg-link-color, #007721);
}

a:hover,
a:focus {
    color: var(--hgg-link-hover-color, #045F12);
}

/* Header layouts: when the desktop left layout has no real action items, do not reserve an empty right column. */
.huuguu-header-desktop--left.huuguu-header-desktop--no-actions {
    grid-template-columns: auto minmax(0, 1fr);
}

.huuguu-header-desktop--left.huuguu-header-desktop--no-actions .header-nav {
    justify-content: flex-end;
}

.huuguu-header-desktop--left.huuguu-header-desktop--no-actions .header-actions {
    display: none;
}

/* Typography source of truth: theme-rendered content only. */
body:not(.elementor-page) .site-main .entry-content,
body:not(.elementor-page) .site-main .wp-block-post-content {
    font-size: var(--hgg-body-font-size, 16px);
}

body:not(.elementor-page) .site-main .entry-content h1,
body:not(.elementor-page) .site-main .wp-block-post-content h1 {
    font-size: var(--hgg-h1-font-size, 60px) !important;
}

body:not(.elementor-page) .site-main .entry-content h2,
body:not(.elementor-page) .site-main .wp-block-post-content h2 {
    font-size: var(--hgg-h2-font-size, 50px) !important;
}

body:not(.elementor-page) .site-main .entry-content h3,
body:not(.elementor-page) .site-main .wp-block-post-content h3 {
    font-size: var(--hgg-h3-font-size, 40px) !important;
}

body:not(.elementor-page) .site-main .entry-content h4,
body:not(.elementor-page) .site-main .wp-block-post-content h4 {
    font-size: var(--hgg-h4-font-size, 28px) !important;
}

body:not(.elementor-page) .site-main .entry-content h5,
body:not(.elementor-page) .site-main .wp-block-post-content h5 {
    font-size: var(--hgg-h5-font-size, 24px) !important;
}

body:not(.elementor-page) .site-main .entry-content h6,
body:not(.elementor-page) .site-main .wp-block-post-content h6 {
    font-size: var(--hgg-h6-font-size, 22px) !important;
}

body:not(.elementor-page) .site-main .entry-content h1,
body:not(.elementor-page) .site-main .entry-content h2,
body:not(.elementor-page) .site-main .entry-content h3,
body:not(.elementor-page) .site-main .entry-content h4,
body:not(.elementor-page) .site-main .entry-content h5,
body:not(.elementor-page) .site-main .entry-content h6,
body:not(.elementor-page) .site-main .wp-block-post-content h1,
body:not(.elementor-page) .site-main .wp-block-post-content h2,
body:not(.elementor-page) .site-main .wp-block-post-content h3,
body:not(.elementor-page) .site-main .wp-block-post-content h4,
body:not(.elementor-page) .site-main .wp-block-post-content h5,
body:not(.elementor-page) .site-main .wp-block-post-content h6 {
    font-weight: var(--hgg-heading-weight, 700) !important;
    line-height: var(--hgg-heading-line-height, 1.15) !important;
    margin-top: 0;
    margin-bottom: var(--hgg-heading-spacing-bottom, 24px) !important;
    color: var(--hgg-heading-color, var(--hgg-text, #172033)) !important;
}

/* Page title and content headings must share the same px-based typography system. */
body:not(.elementor-page) .site-main .page-header .page-title,
body:not(.elementor-page) .site-main > article .entry-header > .entry-title,
body:not(.elementor-page) .site-main .type-page > .entry-header > .entry-title,
body:not(.elementor-page) .site-main .type-post > .entry-header > .entry-title,
body:not(.elementor-page) .site-main .archive .page-title,
body:not(.elementor-page) .site-main .search .page-title {
    text-align: var(--hgg-page-title-align, center) !important;
    font-size: var(--hgg-page-title-size, 60px) !important;
    font-weight: var(--hgg-page-title-weight, 800) !important;
    line-height: var(--hgg-heading-line-height, 1.15) !important;
    color: var(--hgg-page-title-color, var(--hgg-heading-color, var(--hgg-text, #172033))) !important;
}

/* Content links: scoped to theme-rendered body content only. */
body:not(.elementor-page) .site-main .entry-content a:not(.button):not(.wp-block-button__link):not([class*="wp-block-button"]),
body:not(.elementor-page) .site-main .wp-block-post-content a:not(.button):not(.wp-block-button__link):not([class*="wp-block-button"]) {
    color: var(--hgg-link-color, #007721) !important;
    text-underline-offset: 0.18em;
    text-decoration-thickness: 1px;
}

body.huuguu-content-links-color:not(.elementor-page) .site-main .entry-content a:not(.button):not(.wp-block-button__link),
body.huuguu-content-links-color:not(.elementor-page) .site-main .wp-block-post-content a:not(.button):not(.wp-block-button__link) {
    text-decoration: none !important;
    font-weight: inherit;
}

body.huuguu-content-links-underline:not(.elementor-page) .site-main .entry-content a:not(.button):not(.wp-block-button__link),
body.huuguu-content-links-underline:not(.elementor-page) .site-main .wp-block-post-content a:not(.button):not(.wp-block-button__link) {
    text-decoration: underline !important;
    font-weight: inherit;
}

body.huuguu-content-links-hover-underline:not(.elementor-page) .site-main .entry-content a:not(.button):not(.wp-block-button__link),
body.huuguu-content-links-hover-underline:not(.elementor-page) .site-main .wp-block-post-content a:not(.button):not(.wp-block-button__link) {
    text-decoration: none !important;
    font-weight: inherit;
}

body.huuguu-content-links-hover-underline:not(.elementor-page) .site-main .entry-content a:not(.button):not(.wp-block-button__link):hover,
body.huuguu-content-links-hover-underline:not(.elementor-page) .site-main .entry-content a:not(.button):not(.wp-block-button__link):focus,
body.huuguu-content-links-hover-underline:not(.elementor-page) .site-main .wp-block-post-content a:not(.button):not(.wp-block-button__link):hover,
body.huuguu-content-links-hover-underline:not(.elementor-page) .site-main .wp-block-post-content a:not(.button):not(.wp-block-button__link):focus {
    text-decoration: underline !important;
}

body.huuguu-content-links-bold:not(.elementor-page) .site-main .entry-content a:not(.button):not(.wp-block-button__link),
body.huuguu-content-links-bold:not(.elementor-page) .site-main .wp-block-post-content a:not(.button):not(.wp-block-button__link) {
    text-decoration: none !important;
    font-weight: 700;
}

body.huuguu-content-links-bold-underline:not(.elementor-page) .site-main .entry-content a:not(.button):not(.wp-block-button__link),
body.huuguu-content-links-bold-underline:not(.elementor-page) .site-main .wp-block-post-content a:not(.button):not(.wp-block-button__link) {
    text-decoration: underline !important;
    font-weight: 700;
}

body:not(.elementor-page) .site-main .entry-content a:not(.button):not(.wp-block-button__link):hover,
body:not(.elementor-page) .site-main .entry-content a:not(.button):not(.wp-block-button__link):focus,
body:not(.elementor-page) .site-main .wp-block-post-content a:not(.button):not(.wp-block-button__link):hover,
body:not(.elementor-page) .site-main .wp-block-post-content a:not(.button):not(.wp-block-button__link):focus {
    color: var(--hgg-link-hover-color, #045F12) !important;
}


/* Mobile navigation density and scroll behavior. The menu should scale without consuming the full viewport. */
@media (max-width: 1100px) {
    .huuguu-mobile-panel {
        display: flex;
        flex-direction: column;
        max-height: 100vh;
        overflow: hidden;
    }

    .huuguu-mobile-panel .mobile-nav,
    .huuguu-mobile-panel nav.mobile-nav,
    .huuguu-mobile-panel .main-navigation {
        min-height: 0;
    }

    .huuguu-mobile-panel .mobile-nav,
    .huuguu-mobile-panel nav.mobile-nav {
        flex: 1 1 auto;
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }

    .huuguu-mobile-panel .main-navigation .menu > li > a,
    .mobile-nav .main-navigation .menu > li > a,
    .mobile-nav .main-navigation ul.menu > li > a,
    .mobile-nav .main-navigation ul.primary-menu > li > a {
        min-height: 42px !important;
        padding-top: 0.55rem !important;
        padding-bottom: 0.55rem !important;
        line-height: 1.25 !important;
    }

    .huuguu-mobile-panel .mobile-actions,
    .huuguu-mobile-panel .header-actions,
    .huuguu-mobile-panel .mobile-search {
        flex: 0 0 auto;
    }
}

/* Content layer authority: keep the three background layers independent.
 * body = site background
 * .huuguu-content-wrap = content area background
 * article/card = content surface background
 * entry-content/page-content/post-content = transparent inner content
 */
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) .huuguu-content-wrap {
    background-color: var(--hgg-content-area-bg, transparent) !important;
}

body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-page,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-post,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.hgg-card,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.hgg-page-card,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.hgg-single-card {
    background: var(--hgg-content-surface-bg, #ffffff) !important;
    border-color: var(--hgg-content-border-color, rgba(23,32,51,.08)) !important;
    border-radius: var(--hgg-content-radius, 6px) !important;
    box-shadow: var(--hgg-content-shadow, none) !important;
}

body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-page > .entry-header,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-page > .entry-content,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-page > .entry-footer,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-post > .entry-header,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-post > .entry-content,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-post > .entry-footer,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-page > .page-content,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-post > .post-content {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* === Huuguu content background layer authority (final) ===
 * This block intentionally comes last. The Customizer exposes three independent layers:
 * 1) Site background: body/site shell.
 * 2) Content area background: structural wrapper around readable surfaces.
 * 3) Content surface background: article/card itself.
 */
body:not(.elementor-page) .huuguu-content-wrap,
body:not(.elementor-page) .huuguu-blog-wrap,
body:not(.elementor-page) .huuguu-woocommerce-wrap {
    background: var(--hgg-content-area-bg, transparent) !important;
}

body:not(.elementor-page) .huuguu-primary,
body:not(.elementor-page) .huuguu-primary--full {
    background: transparent !important;
}

body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.hgg-card,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.hgg-page-card,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.hgg-post-card,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.hgg-single-card,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-page,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-post {
    background: var(--hgg-content-surface-bg, #ffffff) !important;
    border-color: var(--hgg-content-border-color, rgba(23,32,51,.08)) !important;
    border-radius: var(--hgg-content-radius, 6px) !important;
    box-shadow: var(--hgg-content-shadow, none) !important;
}

body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.hgg-card > .entry-header,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.hgg-card > .entry-content,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.hgg-card > .entry-footer,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-page > .entry-header,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-page > .entry-content,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-page > .entry-footer,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-post > .entry-header,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-post > .entry-content,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-post > .entry-footer,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-page > .page-content,
body:not(.woocommerce):not(.woocommerce-page):not(.elementor-page) article.type-post > .post-content {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Huuguu definitive background layer map.
 * 1) Site background: html/body/site shell.
 * 2) Content area background: structural content wrapper.
 * 3) Content surface background: readable cards/articles only.
 */
html,
body,
.site,
.huuguu-site,
.huuguu-page,
.site-main,
.site-main-inner {
    background-color: var(--hgg-site-bg, #ffffff) !important;
}

.site-main .site-main-inner > .huuguu-content-wrap,
.site-main .site-main-inner > .huuguu-container.huuguu-content-wrap,
.huuguu-content-wrap,
.huuguu-blog-wrap,
.huuguu-woocommerce-wrap,
.woocommerce-page .huuguu-content-wrap,
.woocommerce .huuguu-content-wrap {
    background-color: var(--hgg-content-area-bg, transparent) !important;
}

.huuguu-primary,
.huuguu-primary--full,
.huuguu-content-wrap > .huuguu-primary,
.huuguu-content-wrap > .huuguu-primary--full {
    background-color: transparent !important;
}

article.hgg-card,
article.hgg-page-card,
article.hgg-post-card,
article.hgg-single-card,
article.type-post,
article.type-page,
.hgg-card,
.hgg-page-card,
.hgg-post-card,
.hgg-single-card,
.hgg-archive-card,
.huuguu-page-card,
.huuguu-post-card,
.huuguu-single-card,
.huuguu-archive-card {
    background-color: var(--hgg-content-surface-bg, #ffffff) !important;
}

article.hgg-card > .entry-header,
article.hgg-card > .entry-content,
article.hgg-card > .entry-footer,
article.hgg-page-card > .entry-header,
article.hgg-page-card > .entry-content,
article.hgg-page-card > .entry-footer,
article.type-post > .entry-header,
article.type-post > .entry-content,
article.type-post > .entry-footer,
article.type-page > .entry-header,
article.type-page > .entry-content,
article.type-page > .entry-footer {
    background-color: transparent !important;
}

/* Huuguu breadcrumb layer: keep breadcrumb independent from content/site backgrounds. */
.huuguu-global-breadcrumb-bar {
    width: 100%;
    background: var(--hgg-breadcrumb-bg, var(--hgg-wc-breadcrumb-bg, #f6f7fb));
    color: var(--hgg-breadcrumb-text, var(--hgg-wc-breadcrumb-text, #475569));
    border-radius: 0;
    box-sizing: border-box;
}

.huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
.huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
    width: min(100%, var(--hgg-breadcrumb-container, 1240px));
    max-width: var(--hgg-breadcrumb-container, 1240px);
    margin-inline: auto;
    padding: var(--hgg-breadcrumb-pad-y, var(--hgg-wc-breadcrumb-pad-y, 12px)) var(--hgg-breadcrumb-pad-x, var(--hgg-wc-breadcrumb-pad-x, 12px));
    background: transparent;
    color: var(--hgg-breadcrumb-text, var(--hgg-wc-breadcrumb-text, #475569));
    border-radius: var(--hgg-breadcrumb-radius, var(--hgg-wc-breadcrumb-radius, 0px));
    font-size: 14px;
    line-height: 1.4;
    box-sizing: border-box;
}

.huuguu-global-breadcrumb-bar a {
    color: var(--hgg-breadcrumb-text, var(--hgg-wc-breadcrumb-text, #475569));
    text-decoration: none;
}

.huuguu-global-breadcrumb-bar a:hover,
.huuguu-global-breadcrumb-bar a:focus-visible {
    color: var(--hgg-link-hover, var(--hgg-breadcrumb-current, var(--hgg-wc-breadcrumb-current, #1f2937)));
    text-decoration: underline;
    text-underline-offset: .18em;
}

.huuguu-global-breadcrumb-bar .huuguu-breadcrumb-current {
    color: var(--hgg-breadcrumb-current, var(--hgg-wc-breadcrumb-current, #1f2937));
    font-weight: 600;
}

.huuguu-global-breadcrumb-bar .huuguu-breadcrumb-sep {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-inline: .45em;
    color: color-mix(in srgb, var(--hgg-breadcrumb-text, var(--hgg-wc-breadcrumb-text, #475569)) 70%, transparent);
}

.huuguu-global-breadcrumb-bar .huuguu-breadcrumb-home::before {
    content: "";
    width: 14px;
    height: 14px;
    display: inline-block;
    flex: 0 0 14px;
    margin-inline-end: 6px;
    vertical-align: -2px;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11.5 12 4l9 7.5'/%3E%3Cpath d='M5 10.5V20h5v-5h4v5h5v-9.5'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11.5 12 4l9 7.5'/%3E%3Cpath d='M5 10.5V20h5v-5h4v5h5v-9.5'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Responsive typography caps: keep desktop Customizer values, but prevent headings from becoming oversized on tablet and mobile. */
@media (max-width: 1024px) {
    body:not(.elementor-page) .site-main .page-header .page-title,
    body:not(.elementor-page) .site-main > article .entry-header > .entry-title,
    body:not(.elementor-page) .site-main .type-page > .entry-header > .entry-title,
    body:not(.elementor-page) .site-main .type-post > .entry-header > .entry-title,
    body:not(.elementor-page) .site-main .archive .page-title,
    body:not(.elementor-page) .site-main .search .page-title {
        font-size: min(var(--hgg-page-title-size, 60px), 46px) !important;
    }
    body:not(.elementor-page) .site-main .entry-content h1,
    body:not(.elementor-page) .site-main .wp-block-post-content h1 { font-size: min(var(--hgg-h1-font-size, 60px), 46px) !important; }
    body:not(.elementor-page) .site-main .entry-content h2,
    body:not(.elementor-page) .site-main .wp-block-post-content h2 { font-size: min(var(--hgg-h2-font-size, 50px), 38px) !important; }
    body:not(.elementor-page) .site-main .entry-content h3,
    body:not(.elementor-page) .site-main .wp-block-post-content h3 { font-size: min(var(--hgg-h3-font-size, 40px), 32px) !important; }
    body:not(.elementor-page) .site-main .entry-content h4,
    body:not(.elementor-page) .site-main .wp-block-post-content h4 { font-size: min(var(--hgg-h4-font-size, 28px), 24px) !important; }
    body:not(.elementor-page) .site-main .entry-content h5,
    body:not(.elementor-page) .site-main .wp-block-post-content h5 { font-size: min(var(--hgg-h5-font-size, 24px), 21px) !important; }
    body:not(.elementor-page) .site-main .entry-content h6,
    body:not(.elementor-page) .site-main .wp-block-post-content h6 { font-size: min(var(--hgg-h6-font-size, 22px), 19px) !important; }
}

@media (max-width: 767px) {
    body:not(.elementor-page) .site-main .page-header .page-title,
    body:not(.elementor-page) .site-main > article .entry-header > .entry-title,
    body:not(.elementor-page) .site-main .type-page > .entry-header > .entry-title,
    body:not(.elementor-page) .site-main .type-post > .entry-header > .entry-title,
    body:not(.elementor-page) .site-main .archive .page-title,
    body:not(.elementor-page) .site-main .search .page-title {
        font-size: min(var(--hgg-page-title-size, 60px), 34px) !important;
    }
    body:not(.elementor-page) .site-main .entry-content h1,
    body:not(.elementor-page) .site-main .wp-block-post-content h1 { font-size: min(var(--hgg-h1-font-size, 60px), 34px) !important; }
    body:not(.elementor-page) .site-main .entry-content h2,
    body:not(.elementor-page) .site-main .wp-block-post-content h2 { font-size: min(var(--hgg-h2-font-size, 50px), 30px) !important; }
    body:not(.elementor-page) .site-main .entry-content h3,
    body:not(.elementor-page) .site-main .wp-block-post-content h3 { font-size: min(var(--hgg-h3-font-size, 40px), 26px) !important; }
    body:not(.elementor-page) .site-main .entry-content h4,
    body:not(.elementor-page) .site-main .wp-block-post-content h4 { font-size: min(var(--hgg-h4-font-size, 28px), 22px) !important; }
    body:not(.elementor-page) .site-main .entry-content h5,
    body:not(.elementor-page) .site-main .wp-block-post-content h5 { font-size: min(var(--hgg-h5-font-size, 24px), 19px) !important; }
    body:not(.elementor-page) .site-main .entry-content h6,
    body:not(.elementor-page) .site-main .wp-block-post-content h6 { font-size: min(var(--hgg-h6-font-size, 22px), 17px) !important; }
}

/* Header text logo vertical alignment. Keep the site title centered within every header layout without affecting image logos. */
.header-branding,
.site-branding,
.site-title-wrap {
    display: flex;
    align-items: center;
    min-height: 0;
}

.site-title {
    display: flex;
    align-items: center;
    margin: 0;
    line-height: 1.1;
}

.site-title a {
    display: inline-flex;
    align-items: center;
    line-height: 1.1;
    text-decoration: none;
}

.header-nav,
.header-actions {
    align-items: center;
}

.huuguu-header-desktop--left .header-branding,
.huuguu-header-desktop--center .header-branding,
.huuguu-header-desktop--split .header-branding {
    align-self: center;
}

/* Header controls: text logo min height and safer desktop submenu UX. */
.site-title-wrap {
    min-height: var(--hgg-logo-text-desktop-min-height, 60px);
}

@media (max-width: 1024px) {
    .site-title-wrap {
        min-height: var(--hgg-logo-text-tablet-min-height, 50px);
    }
}

@media (max-width: 767px) {
    .site-title-wrap {
        min-height: var(--hgg-logo-text-mobile-min-height, 44px);
    }
}

@media (min-width: 1025px) {
    .main-navigation ul.menu > .menu-item-has-children,
    .main-navigation ul.primary-menu > .menu-item-has-children {
        position: relative;
    }

    .main-navigation ul.menu > .menu-item-has-children::after,
    .main-navigation ul.primary-menu > .menu-item-has-children::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: 100%;
        height: var(--hgg-submenu-hover-bridge-height, 14px);
        pointer-events: auto;
    }

    .main-navigation .sub-menu {
        margin-top: var(--hgg-submenu-gap, 8px) !important;
        padding: var(--hgg-submenu-padding-y, 10px) var(--hgg-submenu-padding-x, 0px) !important;
        border-radius: var(--hgg-submenu-radius, 12px) !important;
    }

    .main-navigation .sub-menu a {
        padding: var(--hgg-submenu-item-padding-y, 10px) var(--hgg-submenu-item-padding-x, 16px) !important;
    }

    .main-navigation .sub-menu .sub-menu {
        margin-top: 0 !important;
    }
}

/* Huuguu: mobile/tablet submenu accordion polish */
@media (max-width: 1100px) {
  .huuguu-mobile-panel {
    display: none;
    width: min(100%, var(--hgg-mobile-panel-width, 360px));
    max-height: min(86vh, 760px);
    overflow: hidden;
    flex-direction: column;
  }

  .huuguu-mobile-panel.is-open {
    display: flex;
  }

  .huuguu-mobile-panel .mobile-nav,
  .huuguu-mobile-panel .main-navigation {
    min-height: 0;
    max-height: calc(86vh - 96px);
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
  }

  .huuguu-mobile-panel .main-navigation .menu {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    width: 100%;
    margin: 0;
    padding: 6px 0;
  }

  .huuguu-mobile-panel .main-navigation .menu > li {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 32px;
    align-items: center;
    width: 100% !important;
    min-height: 40px;
    padding: 0 !important;
    border-bottom: 1px solid rgba(23, 32, 51, .08);
  }

  .huuguu-mobile-panel .main-navigation .menu > li > a {
    display: flex !important;
    align-items: center;
    width: 100% !important;
    min-width: 0;
    min-height: 40px;
    padding: 10px 0 !important;
    font-size: 14px;
    line-height: 1.25;
    white-space: normal !important;
  }

  .huuguu-mobile-panel .main-navigation .menu-item-has-children > a::after {
    display: none !important;
  }

  .huuguu-mobile-panel .submenu-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    justify-self: end;
    width: 28px;
    height: 28px;
    min-width: 28px;
    min-height: 28px;
    padding: 0 !important;
    margin: 0 0 0 6px;
    border: 1px solid rgba(23, 32, 51, .12);
    border-radius: 999px;
    background: var(--hgg-surface, #fff);
    color: var(--hgg-menu-link, var(--hgg-text, #172033));
    box-shadow: 0 4px 14px rgba(17, 34, 68, .06);
    cursor: pointer;
  }

  .huuguu-mobile-panel .submenu-toggle:focus-visible {
    outline: 2px solid var(--hgg-primary, #246de8);
    outline-offset: 2px;
  }

  .huuguu-mobile-panel .submenu-toggle__icon {
    width: 12px;
    height: 12px;
  }

  .huuguu-mobile-panel .main-navigation li:hover > .sub-menu,
  .huuguu-mobile-panel .main-navigation li:focus-within > .sub-menu {
    display: none;
  }

  .huuguu-mobile-panel .main-navigation .sub-menu {
    position: static !important;
    display: none !important;
    grid-column: 1 / -1;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 4px 0 8px 12px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: rgba(23, 32, 51, .025) !important;
    box-shadow: none !important;
  }

  .huuguu-mobile-panel .menu-item-submenu-open > .sub-menu {
    display: block !important;
  }

  .huuguu-mobile-panel .main-navigation .sub-menu li {
    display: block !important;
    width: 100% !important;
    border-bottom: 0;
  }

  .huuguu-mobile-panel .main-navigation .sub-menu a {
    display: block !important;
    min-height: 34px;
    padding: 8px 0 !important;
    font-size: 13.5px;
    line-height: 1.3;
  }

  .huuguu-mobile-panel .main-navigation .sub-menu .sub-menu {
    padding-left: 12px !important;
    background: transparent !important;
  }

  .huuguu-mobile-panel .mobile-actions {
    flex-shrink: 0;
    margin-top: 0;
    padding-top: 10px;
    border-top: 1px solid rgba(23, 32, 51, .08);
  }
}

/* Huuguu: mobile menu stable core reset */
@media (max-width: 1100px) {
  .huuguu-mobile-panel {
    width: min(100%, var(--hgg-mobile-panel-width, 360px));
    max-height: min(86vh, 760px);
    overflow-y: auto !important;
    overflow-x: hidden !important;
    flex-direction: column;
    -webkit-overflow-scrolling: touch;
  }
  .huuguu-mobile-panel.is-open { display: flex !important; }
  .huuguu-mobile-panel .mobile-nav,
  .huuguu-mobile-panel nav.mobile-nav,
  .huuguu-mobile-panel .main-navigation {
    width: 100% !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }
  .huuguu-mobile-panel .main-navigation .menu,
  .huuguu-mobile-panel .main-navigation ul.menu,
  .huuguu-mobile-panel .main-navigation ul.primary-menu {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 6px 0 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
  }
  .huuguu-mobile-panel .main-navigation .menu > li,
  .huuguu-mobile-panel .main-navigation ul.primary-menu > li {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 36px !important;
    align-items: center !important;
    column-gap: 8px !important;
    min-height: 38px !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(23, 32, 51, .08) !important;
  }
  .huuguu-mobile-panel .main-navigation .menu > li > a,
  .huuguu-mobile-panel .main-navigation ul.primary-menu > li > a {
    grid-column: 1 !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 38px !important;
    display: flex !important;
    align-items: center !important;
    padding: 9px 0 !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
  .huuguu-mobile-panel .main-navigation .menu-item-has-children > a::after {
    display: none !important;
    content: none !important;
  }
  .huuguu-mobile-panel .submenu-toggle {
    grid-column: 2 !important;
    justify-self: end !important;
    align-self: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(23, 32, 51, .12) !important;
    border-radius: 999px !important;
    background: var(--hgg-surface, #fff) !important;
    box-shadow: none !important;
    cursor: pointer;
  }
  .huuguu-mobile-panel .submenu-toggle__icon { width: 12px !important; height: 12px !important; }
  .huuguu-mobile-panel .main-navigation li:hover > .sub-menu,
  .huuguu-mobile-panel .main-navigation li:focus-within > .sub-menu { display: none; }
  .huuguu-mobile-panel .main-navigation .sub-menu {
    grid-column: 1 / -1 !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    display: none !important;
    margin: 0 !important;
    padding: 0 0 6px 12px !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
  }
  .huuguu-mobile-panel .menu-item-submenu-open > .sub-menu { display: block !important; }
  .huuguu-mobile-panel .main-navigation .sub-menu li {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    border-bottom: 0 !important;
  }
  .huuguu-mobile-panel .main-navigation .sub-menu a {
    display: block !important;
    width: 100% !important;
    min-height: 30px !important;
    padding: 7px 0 !important;
    font-size: 13.5px !important;
    line-height: 1.3 !important;
  }
  .huuguu-mobile-panel .mobile-actions,
  .huuguu-mobile-panel .header-actions,
  .huuguu-mobile-panel .mobile-search {
    flex-shrink: 0 !important;
    width: 100% !important;
    margin-top: 10px !important;
    padding-top: 10px !important;
    border-top: 1px solid rgba(23, 32, 51, .08) !important;
  }
}

/* Huuguu: mobile menu dialog core fix */
@media (max-width: 1100px) {
  body.huuguu-mobile-menu-open { overflow: hidden !important; }
  body.huuguu-mobile-menu-open .site-header {
    position: fixed !important;
    z-index: 99999 !important;
    top: max(16px, env(safe-area-inset-top)) !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: min(92vw, var(--hgg-mobile-panel-width, 360px)) !important;
    max-height: calc(100vh - 32px) !important;
    transform: translateX(-50%) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
    border: 1px solid rgba(23, 32, 51, .08) !important;
    box-shadow: 0 24px 80px rgba(0,0,0,.28) !important;
    -webkit-overflow-scrolling: touch;
  }
  body.huuguu-mobile-menu-open.admin-bar .site-header {
    top: max(48px, calc(16px + env(safe-area-inset-top))) !important;
    max-height: calc(100vh - 64px) !important;
  }
  body.huuguu-mobile-menu-open .site-header .huuguu-container,
  body.huuguu-mobile-menu-open .site-header .huuguu-header-shell {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }
  body.huuguu-mobile-menu-open .site-header .huuguu-header-shell { padding: 16px 18px 14px !important; }
  body.huuguu-mobile-menu-open .huuguu-mobile-topbar {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
    gap: var(--hgg-mobile-menu-gap, 20px) !important;
    width: 100% !important;
    padding: 0 0 12px !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel nav.mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu > li {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) 34px !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 36px !important;
    column-gap: 8px !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(23,32,51,.08) !important;
  }
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu > li > a {
    grid-column: 1 !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 36px !important;
    padding: 8px 0 !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .submenu-toggle {
    grid-column: 2 !important;
    justify-self: end !important;
    align-self: center !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
  }
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .sub-menu {
    grid-column: 1 / -1 !important;
    position: static !important;
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 2px 0 8px 12px !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    border-radius: 0 !important;
  }
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .menu-item-submenu-open > .sub-menu { display: block !important; }
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .sub-menu li {
    display: block !important;
    width: 100% !important;
    border: 0 !important;
    min-height: 0 !important;
  }
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .sub-menu a {
    display: block !important;
    width: 100% !important;
    min-height: 28px !important;
    padding: 6px 0 !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
  }
}

/* Huuguu: mobile/tablet menu dialog sizing and empty actions cleanup */
@media (max-width: 1100px) {
  body.huuguu-mobile-menu-open .site-header {
    width: min(92vw, 360px) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions:empty,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions:not(:has(.header-search, .header-cta, .mobile-utility-grid > *)) {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  body.huuguu-mobile-menu-open .site-header {
    width: min(86vw, 560px) !important;
  }
}

@media (max-width: 767px) {
  body.huuguu-mobile-menu-open .site-header {
    width: min(92vw, 360px) !important;
  }
}

/* Huuguu: header menu controls final polish */
@media (max-width: 1100px) {
  /* Keep the mobile toggle intuitive: when opened, text toggles become a close icon. */
  .menu-toggle--text[aria-expanded="true"] .menu-toggle__text {
    font-size: 0 !important;
    line-height: 1 !important;
  }
  .menu-toggle--text[aria-expanded="true"] .menu-toggle__text::before {
    content: "×" !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 22px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
  }

  /* Do not show separator artifacts between menu, search, and CTA actions. */
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions.is-open {
    border-top: 0 !important;
    margin-top: 10px !important;
    padding-top: 0 !important;
  }
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions::before,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions::after,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-utility-grid::before,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-utility-grid::after {
    content: none !important;
    display: none !important;
  }
}

/* Huuguu: mobile and tablet panel width authority.
   WordPress Customizer tablet preview can be below 768px, so tablet starts at 576px. */
@media (max-width: 575px) {
  body.huuguu-mobile-menu-open .site-header {
    width: min(92vw, 360px) !important;
  }
}

@media (min-width: 576px) and (max-width: 1100px) {
  body.huuguu-mobile-menu-open .site-header {
    width: min(86vw, 560px) !important;
  }
}

/* Huuguu: mobile menu dedicated color controls and consistent mobile form radius */
@media (max-width: 1100px) {/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-utility-grid {
    border-color: var(--hgg-mobile-menu-border, #e6ebf2) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .submenu-toggle {
    color: var(--hgg-mobile-menu-link, #172033) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .current-menu-item > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .current_page_item > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation a[aria-current="page"] {
    color: var(--hgg-mobile-menu-active-link, #246de8) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .sub-menu {
    background: var(--hgg-mobile-submenu-bg, #f8fafc) !important;
    border-radius: calc(var(--hgg-menu-toggle-radius, 12px) * .65) !important;
    color: var(--hgg-mobile-submenu-link, #172033) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .sub-menu a {
    color: var(--hgg-mobile-submenu-link, #172033) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .search-field,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .search-submit,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .header-cta {
    border-radius: var(--hgg-menu-toggle-radius, 12px) !important;
  }
}

/* Huuguu: mobile menu color layer isolation.
   Mobile panel, top-level items and accordion submenus must not share inherited backgrounds. */
@media (max-width: 1100px) {/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu > li {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    opacity: 1 !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .sub-menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.sub-menu {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 4px 0 8px 0 !important;
    padding: 6px 8px !important;
    background: var(--hgg-mobile-submenu-bg, #f8fafc) !important;
    background-color: var(--hgg-mobile-submenu-bg, #f8fafc) !important;
    background-image: none !important;
    color: var(--hgg-mobile-submenu-link, #172033) !important;
    opacity: 1 !important;
    border: 1px solid var(--hgg-mobile-menu-border, #e6ebf2) !important;
    border-radius: calc(var(--hgg-menu-toggle-radius, 12px) * .65) !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .sub-menu li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .sub-menu li.menu-item,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .sub-menu a {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: var(--hgg-mobile-submenu-link, #172033) !important;
    opacity: 1 !important;
    border-color: transparent !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .sub-menu a:hover,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .sub-menu a:focus-visible {
    background: rgba(0, 0, 0, .04) !important;
    color: var(--hgg-mobile-submenu-link, #172033) !important;
  }
}

/* Blog design cleanup: Archive and Single inherit the global design system.
 * Blog-specific Customizer controls now only decide layout/content, while visual
 * surfaces use the global content surface, border, radius and shadow tokens.
 */
body.blog .hgg-blog-card,
body.archive .hgg-blog-card,
body.search .hgg-blog-card,
body.single-post article.hgg-card,
body.single-post article.type-post,
body.single-post .hgg-blog-single-related-card,
body.single-post .hgg-blog-sidebar,
body.blog .hgg-blog-sidebar,
body.archive .hgg-blog-sidebar,
body.search .hgg-blog-sidebar {
    background-color: var(--hgg-content-surface-bg, #ffffff) !important;
    border-color: var(--hgg-content-border-color, #d8dfef) !important;
    border-radius: var(--hgg-content-radius, 6px) !important;
    box-shadow: var(--hgg-content-shadow, none) !important;
}

body.blog .hgg-blog-card,
body.archive .hgg-blog-card,
body.search .hgg-blog-card,
body.single-post article.hgg-card,
body.single-post article.type-post {
    overflow: hidden;
}

body.single-post article.hgg-card > .entry-header,
body.single-post article.hgg-card > .entry-content,
body.single-post article.hgg-card > .entry-footer,
body.blog .hgg-blog-card > .entry-header,
body.blog .hgg-blog-card > .entry-content,
body.archive .hgg-blog-card > .entry-header,
body.archive .hgg-blog-card > .entry-content,
body.search .hgg-blog-card > .entry-header,
body.search .hgg-blog-card > .entry-content {
    background-color: transparent !important;
}

/* Blog polish v1: single, archive and related posts visual rhythm.
 * Blog layout/content controls remain in the Customizer; visual treatment inherits
 * the global design system tokens.
 */
body.single-post:not(.elementor-page) .hgg-single-card {
    padding: clamp(20px, 3vw, 36px) !important;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-header {
    max-width: 860px;
    margin: 0 auto 24px;
    text-align: var(--hgg-blog-single-title-align, var(--hgg-page-title-align, left)) !important;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-header .entry-title {
    margin-bottom: 12px !important;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-header .entry-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: inherit;
    gap: 8px 14px;
    color: var(--hgg-muted, #5d6781);
    font-size: 14px;
    line-height: 1.5;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-header .entry-meta a {
    color: var(--hgg-link-color, var(--hgg-link, #007721));
    font-weight: 700;
}

body.single-post:not(.elementor-page) .hgg-single-card > .post-thumbnail {
    max-width: 980px;
    margin: 0 auto 28px;
    overflow: hidden;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
}

body.single-post:not(.elementor-page) .hgg-single-card > .post-thumbnail img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: inherit;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-content,
body.single-post:not(.elementor-page) .hgg-single-card > .entry-footer,
body.single-post:not(.elementor-page) .hgg-post-meta-footer,
body.single-post:not(.elementor-page) .hgg-post-navigation {
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-content {
    font-size: var(--hgg-body-font-size, 16px);
    line-height: 1.75;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-content p,
body.single-post:not(.elementor-page) .hgg-single-card > .entry-content ul,
body.single-post:not(.elementor-page) .hgg-single-card > .entry-content ol,
body.single-post:not(.elementor-page) .hgg-single-card > .entry-content blockquote {
    margin-top: 0;
    margin-bottom: 1.15em;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-content h2,
body.single-post:not(.elementor-page) .hgg-single-card > .entry-content h3,
body.single-post:not(.elementor-page) .hgg-single-card > .entry-content h4,
body.single-post:not(.elementor-page) .hgg-single-card > .entry-content h5,
body.single-post:not(.elementor-page) .hgg-single-card > .entry-content h6 {
    margin-top: 1.35em !important;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-footer {
    margin-top: 28px;
    color: var(--hgg-muted, #5d6781);
}

/* Archive cards. */
body.blog:not(.elementor-page) .hgg-post-card,
body.archive:not(.elementor-page) .hgg-post-card,
body.search:not(.elementor-page) .hgg-post-card,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) !important;
    background: var(--hgg-content-surface-bg, #ffffff) !important;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px)) !important;
    box-shadow: var(--hgg-content-shadow, 0 12px 28px rgba(17,34,68,.08)) !important;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

body.blog:not(.elementor-page) .hgg-post-card:hover,
body.archive:not(.elementor-page) .hgg-post-card:hover,
body.search:not(.elementor-page) .hgg-post-card:hover,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 38px rgba(17,34,68,.12) !important;
}

body.blog:not(.elementor-page) .hgg-post-card .post-thumbnail,
body.archive:not(.elementor-page) .hgg-post-card .post-thumbnail,
body.search:not(.elementor-page) .hgg-post-card .post-thumbnail,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .post-thumbnail {
    display: block;
    overflow: hidden;
    border-radius: calc(var(--hgg-content-radius, var(--hgg-radius, 12px)) - 1px) calc(var(--hgg-content-radius, var(--hgg-radius, 12px)) - 1px) 0 0;
}

body.blog:not(.elementor-page) .hgg-post-card .post-thumbnail img,
body.archive:not(.elementor-page) .hgg-post-card .post-thumbnail img,
body.search:not(.elementor-page) .hgg-post-card .post-thumbnail img,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .post-thumbnail img {
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    transform: scale(1);
    transition: transform .32s ease, opacity .32s ease;
}

body.blog:not(.elementor-page) .hgg-post-card:hover .post-thumbnail img,
body.archive:not(.elementor-page) .hgg-post-card:hover .post-thumbnail img,
body.search:not(.elementor-page) .hgg-post-card:hover .post-thumbnail img,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card:hover .post-thumbnail img {
    transform: scale(1.035);
    opacity: .96;
}

body.blog:not(.elementor-page) .hgg-post-card .hgg-card__body,
body.archive:not(.elementor-page) .hgg-post-card .hgg-card__body,
body.search:not(.elementor-page) .hgg-post-card .hgg-card__body,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .hgg-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding: clamp(18px, 2vw, 24px);
}

body.blog:not(.elementor-page) .hgg-post-card .entry-header,
body.archive:not(.elementor-page) .hgg-post-card .entry-header,
body.search:not(.elementor-page) .hgg-post-card .entry-header,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-header {
    width: 100%;
    text-align: left;
}

body.blog:not(.elementor-page) .hgg-post-card .entry-title,
body.archive:not(.elementor-page) .hgg-post-card .entry-title,
body.search:not(.elementor-page) .hgg-post-card .entry-title,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-title {
    margin: 0 0 8px !important;
    font-size: clamp(20px, 2vw, 26px) !important;
    line-height: 1.2 !important;
    text-align: left !important;
}

body.blog:not(.elementor-page) .hgg-post-card .entry-title a,
body.archive:not(.elementor-page) .hgg-post-card .entry-title a,
body.search:not(.elementor-page) .hgg-post-card .entry-title a,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-title a {
    color: var(--hgg-text, #172033);
    text-decoration: none;
}

body.blog:not(.elementor-page) .hgg-post-card .entry-title a:hover,
body.archive:not(.elementor-page) .hgg-post-card .entry-title a:hover,
body.search:not(.elementor-page) .hgg-post-card .entry-title a:hover,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-title a:hover {
    color: var(--hgg-link-hover, var(--hgg-link-color-hover, #045F12));
}

body.blog:not(.elementor-page) .hgg-post-card .entry-meta,
body.archive:not(.elementor-page) .hgg-post-card .entry-meta,
body.search:not(.elementor-page) .hgg-post-card .entry-meta,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 12px;
    color: var(--hgg-muted, #5d6781);
    font-size: 13px;
    line-height: 1.45;
}

body.blog:not(.elementor-page) .hgg-post-card .entry-summary,
body.archive:not(.elementor-page) .hgg-post-card .entry-summary,
body.search:not(.elementor-page) .hgg-post-card .entry-summary,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-summary {
    color: var(--hgg-muted, #5d6781);
    line-height: 1.65;
}

body.blog:not(.elementor-page) .hgg-post-card .hgg-read-more,
body.archive:not(.elementor-page) .hgg-post-card .hgg-read-more,
body.search:not(.elementor-page) .hgg-post-card .hgg-read-more,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .hgg-read-more {
    margin-top: auto;
}

/* Related posts block. */
body.single-post:not(.elementor-page) .huuguu-related-posts {
    max-width: 1100px;
    margin: clamp(34px, 5vw, 56px) auto 0;
    padding-top: clamp(22px, 3vw, 32px);
    border-top: 1px solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
}

body.single-post:not(.elementor-page) .huuguu-related-posts__title {
    margin: 0 0 20px !important;
    text-align: left;
    font-size: clamp(24px, 3vw, 34px) !important;
    line-height: 1.18 !important;
    color: var(--hgg-heading-color, var(--hgg-text, #172033)) !important;
}

body.single-post:not(.elementor-page) .huuguu-related-posts__grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(18px, 2.4vw, 28px);
    align-items: stretch;
}

body.single-post:not(.elementor-page) .huuguu-related-posts.count-1 .huuguu-related-posts__grid {
    grid-template-columns: minmax(0, 1fr);
    max-width: 640px;
}

body.single-post:not(.elementor-page) .huuguu-related-posts.count-2 .huuguu-related-posts__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-title {
    font-size: clamp(18px, 1.8vw, 22px) !important;
}

@media (max-width: 900px) {
    body.single-post:not(.elementor-page) .huuguu-related-posts__grid,
    body.single-post:not(.elementor-page) .huuguu-related-posts.count-2 .huuguu-related-posts__grid,
    body.single-post:not(.elementor-page) .huuguu-related-posts.count-3 .huuguu-related-posts__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    body.single-post:not(.elementor-page) .hgg-single-card {
        padding: 18px !important;
    }

    body.single-post:not(.elementor-page) .hgg-single-card > .entry-header {
        margin-bottom: 18px;
    }

    body.blog:not(.elementor-page) .hgg-post-card .hgg-card__body,
    body.archive:not(.elementor-page) .hgg-post-card .hgg-card__body,
    body.search:not(.elementor-page) .hgg-post-card .hgg-card__body,
    body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .hgg-card__body {
        padding: 16px;
    }

    body.single-post:not(.elementor-page) .huuguu-related-posts__grid,
    body.single-post:not(.elementor-page) .huuguu-related-posts.count-1 .huuguu-related-posts__grid,
    body.single-post:not(.elementor-page) .huuguu-related-posts.count-2 .huuguu-related-posts__grid,
    body.single-post:not(.elementor-page) .huuguu-related-posts.count-3 .huuguu-related-posts__grid {
        grid-template-columns: 1fr;
        max-width: none;
    }
}

/* Blog system complete v3: meta, sidebar, comments, pagination, widgets. */
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap {
    width: min(100%, var(--hgg-container, 1240px));
}

body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--no-sidebar,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar {
    display: block !important;
}

body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--no-sidebar .huuguu-blog-primary,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar .huuguu-blog-primary {
    width: 100% !important;
    max-width: 100% !important;
}

body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--has-sidebar,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap--has-sidebar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
    gap: clamp(24px, 4vw, 44px);
    align-items: start;
}

@media (max-width: 1024px) {
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--has-sidebar,
    body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap--has-sidebar {
        grid-template-columns: 1fr;
    }
}

/* Entry meta with inline SVG icons. */
body:not(.elementor-page) .entry-meta,
body:not(.elementor-page) .hgg-post-card .entry-meta {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 16px;
    color: var(--hgg-muted, #5d6781);
    font-size: 14px;
    line-height: 1.45;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-header .entry-meta {
    justify-content: var(--hgg-single-meta-align, inherit);
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-header {
    --hgg-single-meta-align: flex-start;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-header[style*="center"],
body.single-post:not(.elementor-page) .hgg-single-card > .entry-header.entry-header--center {
    --hgg-single-meta-align: center;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-header .entry-title[style*="center"] + .entry-meta,
body.single-post:not(.elementor-page) .hgg-single-card > .entry-header .entry-title[style*="center"] ~ .entry-meta {
    justify-content: center;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-header .entry-meta {
    justify-content: var(--hgg-page-title-align, center);
}

body:not(.elementor-page) .hgg-meta-item,
body:not(.elementor-page) .entry-meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

body:not(.elementor-page) .hgg-meta-icon {
    width: 15px;
    height: 15px;
    flex: 0 0 15px;
    display: inline-block;
    color: currentColor;
    opacity: .86;
}

body:not(.elementor-page) .entry-meta a {
    color: inherit;
    text-decoration: none;
    font-weight: 600;
}

body:not(.elementor-page) .entry-meta a:hover,
body:not(.elementor-page) .entry-meta a:focus {
    color: var(--hgg-link-hover-color, var(--hgg-link-hover, #045F12));
    text-decoration: underline;
    text-underline-offset: 0.18em;
}

/* Post taxonomy footer: keep taxonomy output in one styled place. */
body.single-post:not(.elementor-page) .hgg-single-card > .entry-footer:empty {
    display: none;
}

body.single-post:not(.elementor-page) .hgg-post-meta-footer {
    max-width: 780px;
    margin: clamp(28px, 4vw, 44px) auto 0;
    padding: clamp(18px, 2.4vw, 24px);
    border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-content-surface-bg, #fff);
    box-shadow: var(--hgg-content-shadow, none);
}

body.single-post:not(.elementor-page) .hgg-meta-group + .hgg-meta-group {
    margin-top: 14px;
}

body.single-post:not(.elementor-page) .hgg-meta-group__label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 10px;
    color: var(--hgg-text, #172033);
    font-weight: 800;
}

body.single-post:not(.elementor-page) .hgg-meta-group__links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.single-post:not(.elementor-page) .hgg-tag {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 5px 11px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--hgg-link-color, #007721) 10%, transparent);
    color: var(--hgg-link-color, #007721);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}

body.single-post:not(.elementor-page) .hgg-tag:hover,
body.single-post:not(.elementor-page) .hgg-tag:focus {
    background: var(--hgg-link-color, #007721);
    color: #fff;
}

/* Previous / next post navigation. */
body.single-post:not(.elementor-page) .hgg-post-navigation {
    max-width: 980px;
    margin: clamp(30px, 5vw, 54px) auto 0;
    padding-top: clamp(20px, 3vw, 30px);
    border-top: 1px solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

body.single-post:not(.elementor-page) .hgg-post-navigation a {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-height: 100%;
    padding: 16px 18px;
    border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-content-surface-bg, #fff);
    color: var(--hgg-text, #172033);
    text-decoration: none;
    box-shadow: var(--hgg-content-shadow, none);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

body.single-post:not(.elementor-page) .hgg-post-navigation a:hover,
body.single-post:not(.elementor-page) .hgg-post-navigation a:focus {
    transform: translateY(-2px);
    border-color: color-mix(in srgb, var(--hgg-link-color, #007721) 34%, var(--hgg-content-border-color, #d8dfef));
    box-shadow: 0 14px 34px rgba(17,34,68,.10);
}

body.single-post:not(.elementor-page) .hgg-nav-label {
    color: var(--hgg-muted, #5d6781);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

body.single-post:not(.elementor-page) .hgg-nav-title {
    font-size: clamp(16px, 1.6vw, 20px);
    font-weight: 800;
    line-height: 1.25;
}

body.single-post:not(.elementor-page) .hgg-nav-next {
    text-align: right;
}

@media (max-width: 640px) {
    body.single-post:not(.elementor-page) .hgg-post-navigation {
        grid-template-columns: 1fr;
    }
    body.single-post:not(.elementor-page) .hgg-nav-next {
        text-align: left;
    }
}

/* Comments list + form. */
body.single-post:not(.elementor-page) .comments-area {
    max-width: 780px;
    margin: clamp(34px, 5vw, 58px) auto 0;
    padding: clamp(20px, 3vw, 28px);
    border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-content-surface-bg, #fff);
    box-shadow: var(--hgg-content-shadow, none);
}

body.single-post:not(.elementor-page) .comments-title,
body.single-post:not(.elementor-page) .comment-reply-title {
    margin: 0 0 18px !important;
    color: var(--hgg-heading-color, var(--hgg-text, #172033));
    font-size: clamp(22px, 2.4vw, 30px) !important;
    line-height: 1.2 !important;
}

body.single-post:not(.elementor-page) .comment-list {
    list-style: none;
    margin: 0 0 28px;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

body.single-post:not(.elementor-page) .comment-list .comment-body {
    padding: 16px;
    border: 1px solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: color-mix(in srgb, var(--hgg-content-surface-bg, #fff) 94%, var(--hgg-site-bg, #f5f7fb));
}

body.single-post:not(.elementor-page) .comment-author {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 800;
}

body.single-post:not(.elementor-page) .comment-author .avatar {
    border-radius: 999px;
}

body.single-post:not(.elementor-page) .comment-metadata,
body.single-post:not(.elementor-page) .comment-meta {
    color: var(--hgg-muted, #5d6781);
    font-size: 13px;
}

body.single-post:not(.elementor-page) .comment-content {
    margin-top: 12px;
    line-height: 1.65;
}

body.single-post:not(.elementor-page) .reply {
    margin-top: 12px;
}

body.single-post:not(.elementor-page) .comment-form {
    display: grid;
    gap: 14px;
}

body.single-post:not(.elementor-page) .comment-form p {
    margin: 0;
}

body.single-post:not(.elementor-page) .comment-form label {
    display: block;
    margin-bottom: 6px;
    font-weight: 700;
    color: var(--hgg-text, #172033);
}

body.single-post:not(.elementor-page) .comment-form textarea,
body.single-post:not(.elementor-page) .comment-form input[type="text"],
body.single-post:not(.elementor-page) .comment-form input[type="email"],
body.single-post:not(.elementor-page) .comment-form input[type="url"] {
    width: 100%;
    min-height: 44px;
    padding: 11px 13px;
    border: 1px solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-content-surface-bg, #fff);
    color: var(--hgg-text, #172033);
}

body.single-post:not(.elementor-page) .comment-form textarea {
    min-height: 170px;
    resize: vertical;
}

body.single-post:not(.elementor-page) .comment-form-cookies-consent {
    display: flex;
    gap: 9px;
    align-items: flex-start;
}

body.single-post:not(.elementor-page) .comment-form-cookies-consent label {
    margin: 0;
    font-weight: 400;
}

/* Sidebar and core widgets. */
body.huuguu-blog-single:not(.elementor-page) .widget-area,
body.huuguu-blog-archive:not(.elementor-page) .widget-area {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

body.huuguu-blog-single:not(.elementor-page) .widget,
body.huuguu-blog-archive:not(.elementor-page) .widget {
    padding: 18px;
    border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-content-surface-bg, #fff);
    box-shadow: var(--hgg-content-shadow, none);
}

body.huuguu-blog-single:not(.elementor-page) .widget-title,
body.huuguu-blog-archive:not(.elementor-page) .widget-title,
body.huuguu-blog-single:not(.elementor-page) .wp-block-heading,
body.huuguu-blog-archive:not(.elementor-page) .wp-block-heading {
    margin: 0 0 12px !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
    color: var(--hgg-heading-color, var(--hgg-text, #172033)) !important;
}

body.hgg-blog-single-sidebar-sticky:not(.elementor-page) .huuguu-blog-wrap--has-sidebar .widget-area,
body.hgg-blog-sidebar-sticky:not(.elementor-page) .huuguu-blog-wrap--has-sidebar .widget-area {
    position: sticky;
    top: var(--hgg-blog-single-sidebar-sticky-top, var(--hgg-blog-archive-sidebar-sticky-top, 90px));
}

@media (max-width: 1024px) {
    body.hgg-blog-single-sidebar-sticky:not(.elementor-page) .huuguu-blog-wrap--has-sidebar .widget-area,
    body.hgg-blog-sidebar-sticky:not(.elementor-page) .huuguu-blog-wrap--has-sidebar .widget-area {
        position: static;
    }
}

body:not(.elementor-page) .widget_search form,
body:not(.elementor-page) .wp-block-search {
    display: flex;
    gap: 8px;
    align-items: stretch;
}

body:not(.elementor-page) .widget_search input[type="search"],
body:not(.elementor-page) .wp-block-search__input {
    min-width: 0;
    flex: 1 1 auto;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-content-surface-bg, #fff);
    color: var(--hgg-text, #172033);
}

body:not(.elementor-page) .widget_search button,
body:not(.elementor-page) .widget_search input[type="submit"],
body:not(.elementor-page) .wp-block-search__button {
    min-height: 42px;
    padding: 10px 14px;
    border: 0;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-button-bg, var(--hgg-primary, #007721));
    color: var(--hgg-button-text, #fff);
    font-weight: 800;
    cursor: pointer;
}

@media (max-width: 520px) {
    body:not(.elementor-page) .widget_search form,
    body:not(.elementor-page) .wp-block-search {
        flex-direction: column;
    }
    body:not(.elementor-page) .widget_search button,
    body:not(.elementor-page) .widget_search input[type="submit"],
    body:not(.elementor-page) .wp-block-search__button {
        width: 100%;
    }
}

/* Pagination restoration. */
body:not(.elementor-page) .navigation.pagination,
body:not(.elementor-page) .navigation.pagination .nav-links,
body:not(.elementor-page) .comments-pagination .nav-links {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

body:not(.elementor-page) .navigation.pagination {
    margin-top: clamp(30px, 5vw, 52px);
}

body:not(.elementor-page) .page-numbers,
body:not(.elementor-page) .comments-pagination a,
body:not(.elementor-page) .comments-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    min-height: 38px;
    padding: 8px 12px;
    border: 1px solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: 10px;
    background: var(--hgg-content-surface-bg, #fff);
    color: var(--hgg-text, #172033);
    text-decoration: none;
    font-weight: 700;
}

body:not(.elementor-page) .page-numbers.current,
body:not(.elementor-page) .page-numbers:hover,
body:not(.elementor-page) .comments-pagination a:hover,
body:not(.elementor-page) .comments-pagination .current {
    border-color: var(--hgg-link-color, #007721);
    background: var(--hgg-link-color, #007721);
    color: #fff;
}

/* Blog polish v4: taxonomy footer alignment, archive hover parity and sidebar widgets.
 * Keep this scoped to the theme blog surfaces and do not alter Elementor content.
 */
body.single-post:not(.elementor-page) .hgg-post-meta-footer {
    max-width: 860px;
}

body.single-post:not(.elementor-page) .hgg-meta-group {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 12px;
}

body.single-post:not(.elementor-page) .hgg-meta-group + .hgg-meta-group {
    margin-top: 12px;
}

body.single-post:not(.elementor-page) .hgg-meta-group__label {
    margin: 0 !important;
    flex: 0 0 auto;
    white-space: nowrap;
}

body.single-post:not(.elementor-page) .hgg-meta-group__links {
    display: inline-flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
}

body.single-post:not(.elementor-page) .hgg-tag {
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

body.single-post:not(.elementor-page) .hgg-tag:hover,
body.single-post:not(.elementor-page) .hgg-tag:focus {
    transform: translateY(-1px);
}

/* Make archive cards behave like related cards, including older archive class names. */
body.blog:not(.elementor-page) .hgg-archive-card,
body.archive:not(.elementor-page) .hgg-archive-card,
body.search:not(.elementor-page) .hgg-archive-card,
body.blog:not(.elementor-page) .huuguu-archive-card,
body.archive:not(.elementor-page) .huuguu-archive-card,
body.search:not(.elementor-page) .huuguu-archive-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) !important;
    background: var(--hgg-content-surface-bg, #ffffff) !important;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px)) !important;
    box-shadow: var(--hgg-content-shadow, 0 12px 28px rgba(17,34,68,.08)) !important;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

body.blog:not(.elementor-page) .hgg-post-card:hover,
body.archive:not(.elementor-page) .hgg-post-card:hover,
body.search:not(.elementor-page) .hgg-post-card:hover,
body.blog:not(.elementor-page) .hgg-archive-card:hover,
body.archive:not(.elementor-page) .hgg-archive-card:hover,
body.search:not(.elementor-page) .hgg-archive-card:hover,
body.blog:not(.elementor-page) .huuguu-archive-card:hover,
body.archive:not(.elementor-page) .huuguu-archive-card:hover,
body.search:not(.elementor-page) .huuguu-archive-card:hover {
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--hgg-link-color, var(--hgg-link, #007721)) 24%, var(--hgg-content-border-color, var(--hgg-border, #d8dfef)));
    box-shadow: 0 20px 44px rgba(17,34,68,.14) !important;
}

body.blog:not(.elementor-page) .hgg-post-card .post-thumbnail,
body.archive:not(.elementor-page) .hgg-post-card .post-thumbnail,
body.search:not(.elementor-page) .hgg-post-card .post-thumbnail,
body.blog:not(.elementor-page) .hgg-archive-card .post-thumbnail,
body.archive:not(.elementor-page) .hgg-archive-card .post-thumbnail,
body.search:not(.elementor-page) .hgg-archive-card .post-thumbnail,
body.blog:not(.elementor-page) .huuguu-archive-card .post-thumbnail,
body.archive:not(.elementor-page) .huuguu-archive-card .post-thumbnail,
body.search:not(.elementor-page) .huuguu-archive-card .post-thumbnail {
    position: relative;
    display: block;
    overflow: hidden;
}

body.blog:not(.elementor-page) .hgg-post-card .post-thumbnail::after,
body.archive:not(.elementor-page) .hgg-post-card .post-thumbnail::after,
body.search:not(.elementor-page) .hgg-post-card .post-thumbnail::after,
body.blog:not(.elementor-page) .hgg-archive-card .post-thumbnail::after,
body.archive:not(.elementor-page) .hgg-archive-card .post-thumbnail::after,
body.search:not(.elementor-page) .hgg-archive-card .post-thumbnail::after,
body.blog:not(.elementor-page) .huuguu-archive-card .post-thumbnail::after,
body.archive:not(.elementor-page) .huuguu-archive-card .post-thumbnail::after,
body.search:not(.elementor-page) .huuguu-archive-card .post-thumbnail::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.16) 100%);
    opacity: 0;
    transition: opacity .28s ease;
    pointer-events: none;
}

body.blog:not(.elementor-page) .hgg-post-card:hover .post-thumbnail::after,
body.archive:not(.elementor-page) .hgg-post-card:hover .post-thumbnail::after,
body.search:not(.elementor-page) .hgg-post-card:hover .post-thumbnail::after,
body.blog:not(.elementor-page) .hgg-archive-card:hover .post-thumbnail::after,
body.archive:not(.elementor-page) .hgg-archive-card:hover .post-thumbnail::after,
body.search:not(.elementor-page) .hgg-archive-card:hover .post-thumbnail::after,
body.blog:not(.elementor-page) .huuguu-archive-card:hover .post-thumbnail::after,
body.archive:not(.elementor-page) .huuguu-archive-card:hover .post-thumbnail::after,
body.search:not(.elementor-page) .huuguu-archive-card:hover .post-thumbnail::after {
    opacity: 1;
}

/* Make related cards and archive cards share the same hover affordance. */
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card {
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card:hover {
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--hgg-link-color, var(--hgg-link, #007721)) 24%, var(--hgg-content-border-color, var(--hgg-border, #d8dfef)));
    box-shadow: 0 20px 44px rgba(17,34,68,.14) !important;
}

/* Sidebar search polish for the default WordPress search widget. */
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search form,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search {
    display: flex;
    align-items: stretch;
    gap: 10px;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__label {
    width: 100%;
    margin: 0 0 8px;
    font-weight: 800;
    color: var(--hgg-heading-color, var(--hgg-text, #172033));
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="search"],
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__input {
    min-height: 44px;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    border: 1px solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    padding: 10px 14px;
    background: var(--hgg-content-surface-bg, #fff);
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-submit,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__button {
    min-height: 44px;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    white-space: nowrap;
}

@media (max-width: 640px) {
    body.single-post:not(.elementor-page) .hgg-meta-group {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }
}

/* Blog polish v5: archive hover parity, sidebar widgets, footer widget leak fix. */
body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: var(--hgg-content-surface-bg, #fff) !important;
    border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) !important;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px)) !important;
    box-shadow: var(--hgg-content-shadow, 0 12px 28px rgba(17,34,68,.08)) !important;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover {
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--hgg-link-color, var(--hgg-link, #007721)) 24%, var(--hgg-content-border-color, var(--hgg-border, #d8dfef))) !important;
    box-shadow: 0 20px 44px rgba(17,34,68,.14) !important;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail {
    position: relative;
    display: block;
    overflow: hidden;
    background: var(--hgg-site-bg, #f5f7fb);
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail img,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail img,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform .32s ease, filter .32s ease;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover .post-thumbnail img,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover .post-thumbnail img,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover .post-thumbnail img {
    transform: scale(1.035);
    filter: saturate(1.04) contrast(1.02);
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail::after,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail::after,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.16) 100%);
    opacity: 0;
    transition: opacity .28s ease;
    pointer-events: none;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover .post-thumbnail::after,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover .post-thumbnail::after,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover .post-thumbnail::after {
    opacity: 1;
}

/* Sidebar default widgets: search, recent posts, categories, archives. */
body:not(.elementor-page) .huuguu-blog-sidebar .widget,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-group,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories {
    margin-bottom: clamp(22px, 3vw, 34px);
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search form,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: end;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__label {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 8px;
    grid-column: 1 / -1;
    width: 100% !important;
    margin: 0 !important;
    font-size: .95rem;
    line-height: 1.2;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label input[type="search"] {
    margin-top: 8px;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="search"],
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__input {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    border: 1px solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    padding: 10px 14px;
    background: var(--hgg-content-surface-bg, #fff);
    color: var(--hgg-text, #172033);
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search button,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="submit"],
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__button {
    min-height: 44px;
    padding: 10px 16px;
    border: 0;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-button-bg, var(--hgg-primary, #007721));
    color: var(--hgg-button-text, #fff);
    font-weight: 800;
    white-space: nowrap;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries ul,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories ul,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive ul,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives {
    display: grid;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries li,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories li,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive li,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts li,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories li,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives li {
    margin: 0;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px solid color-mix(in srgb, var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) 78%, transparent);
    color: var(--hgg-text, #172033);
    text-decoration: none;
    transition: color .18s ease, padding-left .18s ease;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a:hover {
    color: var(--hgg-link-hover, var(--hgg-link, #007721));
    padding-left: 4px;
}

/* Keep footer widgets transparent on dark footers; avoid content-surface leaks. */
.site-footer .huu-pro-widget,
.site-footer .widget,
.site-footer .widget_block,
.site-footer .huu-pro-widget-horizontal-menu,
.site-footer .huu-pro-menu {
    background: transparent !important;
    box-shadow: none !important;
}

.site-footer .huu-pro-menu__list a {
    color: var(--hgg-footer-link, var(--hgg-footer-text, #fff)) !important;
}

.site-footer .huu-pro-menu__list a:hover,
.site-footer .huu-pro-menu__list a:focus,
.site-footer .huu-pro-menu__list .current-menu-item > a,
.site-footer .huu-pro-menu__list .current_page_item > a {
    color: var(--hgg-footer-link-hover, var(--hgg-footer-link-active, var(--hgg-footer-link, #fff))) !important;
}

/* Blog polish v6: archive layout controls, no-sidebar width, sidebar/footer widget scope fixes. */
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--no-sidebar {
    display: block !important;
    grid-template-columns: 1fr !important;
}

body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar .huuguu-blog-primary,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--no-sidebar .huuguu-blog-primary {
    width: 100% !important;
    max-width: 100% !important;
    grid-column: 1 / -1 !important;
}

body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar .huuguu-blog-sidebar,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar .widget-area,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--no-sidebar .huuguu-blog-sidebar,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--no-sidebar .widget-area {
    display: none !important;
}

body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-1:not(.elementor-page) .huuguu-post-grid { grid-template-columns: 1fr !important; }
body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-2:not(.elementor-page) .huuguu-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-3:not(.elementor-page) .huuguu-post-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-4:not(.elementor-page) .huuguu-post-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid {
    grid-template-columns: 1fr !important;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card {
    display: grid !important;
    grid-template-columns: minmax(220px, 34%) minmax(0, 1fr);
    align-items: stretch;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail {
    height: 100%;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail img {
    height: 100% !important;
    min-height: 220px;
    object-fit: cover;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-card__body,
body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-header,
body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-content,
body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-footer {
    min-width: 0;
}

@media (max-width: 920px) {
    body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-3:not(.elementor-page) .huuguu-post-grid,
    body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-4:not(.elementor-page) .huuguu-post-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 680px) {
    body.huuguu-blog-archive-style-card:not(.elementor-page) .huuguu-post-grid,
    body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid {
        grid-template-columns: 1fr !important;
    }

    body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card {
        display: flex !important;
        flex-direction: column;
    }

    body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail img {
        min-height: 0;
        height: auto !important;
    }
}

/* Blog sidebar widgets only: never let these rules leak into the footer. */
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-sidebar .widget,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-sidebar .widget,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-sidebar .widget_block,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-sidebar .widget_block {
    padding: 18px;
    border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-content-surface-bg, #fff);
    box-shadow: var(--hgg-content-shadow, none);
}

body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-sidebar .widget-title,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-sidebar .widget-title,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-sidebar .wp-block-heading,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-sidebar .wp-block-heading {
    margin: 0 0 12px !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
    color: var(--hgg-heading-color, var(--hgg-text, #172033)) !important;
}

.site-footer .widget,
.site-footer .widget_block,
.site-footer .wp-block-group,
.site-footer .huu-pro-widget,
.site-footer .huu-pro-widget-horizontal-menu,
.site-footer .huu-pro-menu {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--hgg-footer-text, #ffffff) !important;
}

.site-footer .widget-title,
.site-footer .wp-block-heading,
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer h5,
.site-footer h6 {
    color: var(--hgg-footer-heading, var(--hgg-footer-text, #ffffff)) !important;
}

.site-footer a {
    color: var(--hgg-footer-link, var(--hgg-footer-text, #ffffff)) !important;
}

.site-footer a:hover,
.site-footer a:focus,
.site-footer .current-menu-item > a,
.site-footer .current_page_item > a {
    color: var(--hgg-footer-link-hover, var(--hgg-footer-link-active, var(--hgg-footer-link, #ffffff))) !important;
}

/* Cleaner default WordPress search widget inside the blog sidebar. */
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search form {
    display: flex !important;
    align-items: stretch;
    gap: 10px;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label .search-field,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="search"] {
    width: 100% !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-submit,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="submit"] {
    flex: 0 0 auto;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a {
    border-radius: 8px;
    padding: 9px 10px;
    border: 1px solid transparent;
    background: transparent;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a:hover {
    border-color: color-mix(in srgb, var(--hgg-link-color, var(--hgg-link, #007721)) 22%, var(--hgg-content-border-color, var(--hgg-border, #d8dfef)));
    background: color-mix(in srgb, var(--hgg-link-color, var(--hgg-link, #007721)) 7%, transparent);
    padding-left: 12px;
}

/* Blog UI polish v7: author box, sidebar widgets and footer scope corrections. */
body.single-post:not(.elementor-page) .hgg-author-box {
    max-width: 780px;
    margin: clamp(32px, 5vw, 56px) auto 0;
    display: flex;
    gap: 18px;
    align-items: center;
    padding: clamp(18px, 3vw, 24px);
    border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-content-surface-bg, #fff);
    box-shadow: var(--hgg-content-shadow, 0 14px 34px rgba(17,34,68,.08));
}

body.single-post:not(.elementor-page) .hgg-author-box__avatar {
    flex: 0 0 auto;
}

body.single-post:not(.elementor-page) .hgg-author-box__avatar img {
    display: block;
    width: 76px;
    height: 76px;
    border-radius: 999px;
    object-fit: cover;
}

body.single-post:not(.elementor-page) .hgg-author-box__eyebrow {
    display: block;
    margin-bottom: 4px;
    color: var(--hgg-muted, #5d6781);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .02em;
    text-transform: uppercase;
}

body.single-post:not(.elementor-page) .hgg-author-box__name {
    margin: 0 0 6px !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
}

body.single-post:not(.elementor-page) .hgg-author-box__name a {
    color: var(--hgg-heading-color, var(--hgg-text, #172033));
    text-decoration: none;
}

body.single-post:not(.elementor-page) .hgg-author-box__bio {
    margin: 0;
    color: var(--hgg-muted, #5d6781);
    line-height: 1.6;
}

@media (max-width: 640px) {
    body.single-post:not(.elementor-page) .hgg-author-box {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Restrict blog widget cards to the real blog sidebar only. */
body.huuguu-blog-single:not(.elementor-page) .widget:not(.site-footer .widget),
body.huuguu-blog-archive:not(.elementor-page) .widget:not(.site-footer .widget) {
    background: transparent;
}

body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-sidebar.widget-area,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-sidebar.widget-area {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-sidebar .widget,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-sidebar .widget,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-sidebar .widget_block,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-sidebar .widget_block {
    padding: 20px;
    border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-content-surface-bg, #fff);
    box-shadow: var(--hgg-content-shadow, none);
}

body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-sidebar .widget-title,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-sidebar .widget-title,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-sidebar .wp-block-heading,
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-sidebar .wp-block-heading {
    margin: 0 0 16px !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
    color: var(--hgg-heading-color, var(--hgg-text, #172033)) !important;
}

/* Default WordPress search widget: label above, field + button below. */
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-form,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: end;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__label {
    display: block !important;
    grid-column: 1 / -1;
    width: 100% !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 800;
    color: var(--hgg-heading-color, var(--hgg-text, #172033));
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label .search-field,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="search"],
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__input {
    display: block;
    width: 100% !important;
    min-width: 0;
    min-height: 44px;
    margin-top: 8px;
    padding: 10px 14px;
    border: 1px solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef));
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-content-surface-bg, #fff);
    color: var(--hgg-text, #172033);
    font-size: 16px !important;
    line-height: 1.4 !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-submit,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="submit"],
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__button {
    align-self: end;
    min-height: 44px;
    padding: 10px 16px;
    border: 0;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px));
    background: var(--hgg-button-bg, var(--hgg-primary, #007721));
    color: var(--hgg-button-text, #fff);
    font-weight: 800;
    white-space: nowrap;
    cursor: pointer;
}

@media (max-width: 560px) {
    body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-form,
    body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search {
        grid-template-columns: 1fr;
    }
    body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-submit,
    body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="submit"],
    body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__button {
        width: 100%;
    }
}

/* Sidebar lists: categories, recent posts and archives. */
body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries ul,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories ul,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive ul,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives {
    list-style: none;
    margin: 0;
    padding: 0;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries li,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories li,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive li,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts li,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories li,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives li {
    margin: 0;
    border-bottom: 1px solid color-mix(in srgb, var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) 80%, transparent);
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries li:last-child,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories li:last-child,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive li:last-child,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts li:last-child,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories li:last-child,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives li:last-child {
    border-bottom: 0;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 8px 12px 2px;
    border-radius: 8px;
    color: var(--hgg-text, #172033);
    text-decoration: none;
    transition: background-color .2s ease, color .2s ease, padding-left .2s ease;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a::before {
    content: "›";
    flex: 0 0 auto;
    opacity: .65;
    font-size: 18px;
    line-height: 1;
    transition: transform .2s ease, opacity .2s ease;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a:hover {
    color: var(--hgg-link-hover, var(--hgg-link, #007721));
    background: color-mix(in srgb, var(--hgg-link, #007721) 7%, transparent);
    padding-left: 10px;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a:hover::before,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a:hover::before,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a:hover::before,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a:hover::before {
    opacity: 1;
    transform: translateX(2px);
}

/* Stronger footer protection: blog widget styles never win inside the footer. */
body.huuguu-blog-single:not(.elementor-page) .site-footer .widget,
body.huuguu-blog-archive:not(.elementor-page) .site-footer .widget,
body.huuguu-blog-single:not(.elementor-page) .site-footer .widget_block,
body.huuguu-blog-archive:not(.elementor-page) .site-footer .widget_block,
body.huuguu-blog-single:not(.elementor-page) .site-footer .wp-block-group,
body.huuguu-blog-archive:not(.elementor-page) .site-footer .wp-block-group,
body.huuguu-blog-single:not(.elementor-page) .site-footer .huu-pro-widget,
body.huuguu-blog-archive:not(.elementor-page) .site-footer .huu-pro-widget {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--hgg-footer-text, #ffffff) !important;
}

body.huuguu-blog-single:not(.elementor-page) .site-footer .widget-title,
body.huuguu-blog-archive:not(.elementor-page) .site-footer .widget-title,
body.huuguu-blog-single:not(.elementor-page) .site-footer .wp-block-heading,
body.huuguu-blog-archive:not(.elementor-page) .site-footer .wp-block-heading,
body.huuguu-blog-single:not(.elementor-page) .site-footer h1,
body.huuguu-blog-archive:not(.elementor-page) .site-footer h1,
body.huuguu-blog-single:not(.elementor-page) .site-footer h2,
body.huuguu-blog-archive:not(.elementor-page) .site-footer h2,
body.huuguu-blog-single:not(.elementor-page) .site-footer h3,
body.huuguu-blog-archive:not(.elementor-page) .site-footer h3 {
    color: var(--hgg-footer-heading, var(--hgg-footer-text, #ffffff)) !important;
}

body.huuguu-blog-single:not(.elementor-page) .site-footer a,
body.huuguu-blog-archive:not(.elementor-page) .site-footer a {
    color: var(--hgg-footer-link, var(--hgg-footer-text, #ffffff)) !important;
}

body.huuguu-blog-single:not(.elementor-page) .site-footer a:hover,
body.huuguu-blog-archive:not(.elementor-page) .site-footer a:hover,
body.huuguu-blog-single:not(.elementor-page) .site-footer a:focus,
body.huuguu-blog-archive:not(.elementor-page) .site-footer a:focus {
    color: var(--hgg-footer-link-hover, var(--hgg-footer-link-active, var(--hgg-footer-link, #ffffff))) !important;
}

/* Blog polish v8: Blog General controls, sidebar search layout and pagination breathing room. */
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-form,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px !important;
    align-items: end !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__label {
    display: block !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    font-weight: 800 !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label .search-field {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-top: 10px !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="search"],
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__input {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 46px !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-submit,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="submit"],
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__button {
    min-height: 46px !important;
    align-self: end !important;
}

@media (max-width: 640px) {
    body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-form,
    body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search {
        grid-template-columns: 1fr !important;
    }
}

body.blog:not(.elementor-page) .hgg-post-card .entry-title,
body.archive:not(.elementor-page) .hgg-post-card .entry-title,
body.search:not(.elementor-page) .hgg-post-card .entry-title,
body.single-post:not(.elementor-page) .entry-title,
body.single-post:not(.elementor-page) .huuguu-related-posts .entry-title {
    color: var(--hgg-blog-title, var(--hgg-heading-color, var(--hgg-text, #172033))) !important;
}

body.blog:not(.elementor-page) .hgg-post-card .entry-meta,
body.archive:not(.elementor-page) .hgg-post-card .entry-meta,
body.search:not(.elementor-page) .hgg-post-card .entry-meta,
body.single-post:not(.elementor-page) .entry-meta,
body.single-post:not(.elementor-page) .huuguu-related-posts .entry-meta {
    color: var(--hgg-blog-meta, var(--hgg-muted, #5d6781)) !important;
}

body.blog:not(.elementor-page) .hgg-post-card .entry-summary,
body.archive:not(.elementor-page) .hgg-post-card .entry-summary,
body.search:not(.elementor-page) .hgg-post-card .entry-summary,
body.single-post:not(.elementor-page) .huuguu-related-posts .entry-summary {
    color: var(--hgg-blog-excerpt, var(--hgg-muted, #5d6781)) !important;
}

body.huuguu-blog-single:not(.elementor-page) .entry-content a:not(.button):not(.wp-block-button__link),
body.huuguu-blog-archive:not(.elementor-page) .entry-summary a:not(.button):not(.wp-block-button__link) {
    color: var(--hgg-blog-link, var(--hgg-link, #007721));
}

body.huuguu-blog-single:not(.elementor-page) .entry-content a:not(.button):not(.wp-block-button__link):hover,
body.huuguu-blog-archive:not(.elementor-page) .entry-summary a:not(.button):not(.wp-block-button__link):hover {
    color: var(--hgg-blog-link-hover, var(--hgg-link-hover, #045F12));
}

body.blog:not(.elementor-page) .hgg-post-card .hgg-read-more,
body.archive:not(.elementor-page) .hgg-post-card .hgg-read-more,
body.search:not(.elementor-page) .hgg-post-card .hgg-read-more,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .hgg-read-more,
body.single-post:not(.elementor-page) .comment-respond .form-submit .submit {
    background: var(--hgg-blog-readmore-bg, var(--hgg-button-bg, var(--hgg-primary, #007721))) !important;
    color: var(--hgg-blog-readmore-text, var(--hgg-button-text, #fff)) !important;
}

body.blog:not(.elementor-page) .hgg-post-card .hgg-read-more:hover,
body.archive:not(.elementor-page) .hgg-post-card .hgg-read-more:hover,
body.search:not(.elementor-page) .hgg-post-card .hgg-read-more:hover,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .hgg-read-more:hover,
body.single-post:not(.elementor-page) .comment-respond .form-submit .submit:hover {
    background: var(--hgg-blog-readmore-hover-bg, var(--hgg-button-hover-bg, var(--hgg-primary-hover, #045F12))) !important;
    color: var(--hgg-blog-readmore-hover-text, var(--hgg-button-hover-text, #fff)) !important;
}

body:not(.elementor-page) .navigation.pagination {
    margin-bottom: var(--hgg-blog-pagination-spacing-bottom, 48px) !important;
}

body:not(.elementor-page) .page-numbers,
body:not(.elementor-page) .comments-pagination a,
body:not(.elementor-page) .comments-pagination span {
    background: var(--hgg-blog-pagination-bg, var(--hgg-content-surface-bg, #fff)) !important;
    color: var(--hgg-blog-pagination-text, var(--hgg-text, #172033)) !important;
}

body:not(.elementor-page) .page-numbers.current,
body:not(.elementor-page) .page-numbers:hover,
body:not(.elementor-page) .comments-pagination a:hover,
body:not(.elementor-page) .comments-pagination .current {
    background: var(--hgg-blog-pagination-current-bg, var(--hgg-blog-readmore-bg, var(--hgg-primary, #007721))) !important;
    color: var(--hgg-blog-pagination-current-text, #fff) !important;
}
/* Blog sidebar final fix: search layout + category/list widgets.
   Keep this scoped to the real blog sidebar so footer widgets are never affected. */
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search {
    display: block !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search .widget-title,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .widget-title,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search .wp-block-heading,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .wp-block-heading {
    display: block !important;
    width: 100% !important;
    margin: 0 0 12px !important;
    color: var(--hgg-heading-color, var(--hgg-text, #172033)) !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search form,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search form,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search .search-form,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px !important;
    align-items: stretch !important;
    width: 100% !important;
    margin: 0 !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search label,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label {
    grid-column: 1 / 2 !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    flex: initial !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search label .search-field,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label .search-field,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search input[type="search"],
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="search"] {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 10px 14px !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    border: 1px solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) !important;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px)) !important;
    background: var(--hgg-content-surface-bg, #fff) !important;
    color: var(--hgg-text, #172033) !important;
    box-shadow: none !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search .search-submit,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-submit,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search input[type="submit"],
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="submit"],
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search button,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search button {
    grid-column: 2 / 3 !important;
    width: auto !important;
    min-width: 90px !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 10px 18px !important;
    border: 0 !important;
    border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px)) !important;
    background: var(--hgg-button-bg, var(--hgg-primary, #007721)) !important;
    color: var(--hgg-button-text, #fff) !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

@media (max-width: 520px) {
    body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search form,
    body:not(.elementor-page) .huuguu-blog-sidebar .widget_search form,
    body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search .search-form,
    body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-form {
        grid-template-columns: 1fr !important;
    }

    body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search label,
    body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label,
    body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search .search-submit,
    body:not(.elementor-page) .huuguu-blog-sidebar .widget_search .search-submit,
    body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search input[type="submit"],
    body:not(.elementor-page) .huuguu-blog-sidebar .widget_search input[type="submit"],
    body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search button,
    body:not(.elementor-page) .huuguu-blog-sidebar .widget_search button {
        grid-column: 1 / -1 !important;
        width: 100% !important;
    }
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_categories ul,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories ul,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_archive ul,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive ul,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_recent_entries ul,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    gap: 0 !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_categories li,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories li,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories li,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories li,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_archive li,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive li,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_recent_entries li,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries li {
    margin: 0 !important;
    border-bottom: 1px solid color-mix(in srgb, var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) 82%, transparent) !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_categories a,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_archive a,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_recent_entries a,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 12px 10px 12px 22px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--hgg-blog-link, var(--hgg-link, var(--hgg-text, #172033))) !important;
    text-decoration: none !important;
    transition: color .2s ease, background-color .2s ease, padding-left .2s ease !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_categories a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a::before,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a::before,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_archive a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a::before {
    content: "›" !important;
    position: absolute !important;
    left: 6px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-size: 18px !important;
    line-height: 1 !important;
    opacity: .7 !important;
    color: currentColor !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_recent_entries a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a::before {
    content: "" !important;
    position: absolute !important;
    left: 6px !important;
    top: 50% !important;
    width: 6px !important;
    height: 6px !important;
    border-radius: 999px !important;
    background: currentColor !important;
    transform: translateY(-50%) !important;
    opacity: .35 !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_archive a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_recent_entries a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a:hover {
    padding-left: 28px !important;
    background: color-mix(in srgb, var(--hgg-content-surface-bg, #fff) 88%, var(--hgg-primary, #007721) 12%) !important;
    color: var(--hgg-blog-link-hover, var(--hgg-link-hover, var(--hgg-primary, #007721))) !important;
}

/* Blog sidebar v10: compact widget rhythm, stable search form and unified list widgets. */
@media (min-width: 1025px) {
  body:not(.elementor-page) .huuguu-blog-sidebar {
    border-left: 1px solid color-mix(in srgb, var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) 72%, transparent);
    padding-left: clamp(22px, 2.4vw, 34px);
  }
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_block {
  padding: 0 20px 0 !important;
  margin: 0 0 clamp(24px, 3vw, 34px) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget-title,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-heading {
  margin: 0 0 14px !important;
  color: var(--hgg-heading-color, var(--hgg-text, #172033)) !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search form,
body:not(.elementor-page) .huuguu-blog-sidebar form[role="search"] {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__label,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_search label,
body:not(.elementor-page) .huuguu-blog-sidebar form[role="search"] label {
  display: block !important;
  width: 100% !important;
  margin: 0 0 10px !important;
  font-weight: 800;
  line-height: 1.25;
  color: var(--hgg-heading-color, var(--hgg-text, #172033)) !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__inside-wrapper,
body:not(.elementor-page) .huuguu-blog-sidebar .search-form {
  display: flex !important;
  align-items: stretch !important;
  gap: 10px !important;
  width: 100% !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__input,
body:not(.elementor-page) .huuguu-blog-sidebar .search-field,
body:not(.elementor-page) .huuguu-blog-sidebar input[type="search"] {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 44px !important;
  margin: 0 !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__button,
body:not(.elementor-page) .huuguu-blog-sidebar .search-submit,
body:not(.elementor-page) .huuguu-blog-sidebar button[type="submit"] {
  flex: 0 0 auto !important;
  height: 44px !important;
  margin: 0 !important;
  white-space: nowrap !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-group,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-group__inner-container,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-columns,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-column {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries ul,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories ul,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive ul,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories-list,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives {
  display: block !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries li,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories li,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive li,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts li,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories li,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories-list li,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives li {
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid color-mix(in srgb, var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) 70%, transparent) !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories-list a,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 44px !important;
  padding: 10px 0 !important;
  border: 0 !important;
  color: var(--hgg-text, #172033) !important;
  text-decoration: none !important;
  line-height: 1.35 !important;
  transition: color .18s ease, padding-left .18s ease, background-color .18s ease !important;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories-list a::before,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a::before {
  content: "›";
  flex: 0 0 auto;
  opacity: .65;
  font-size: 16px;
  line-height: 1;
  color: currentColor;
}

body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories-list a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a:hover {
  color: var(--hgg-link-hover, var(--hgg-link, #007721)) !important;
  padding-left: 6px !important;
}

/* Huuguu navigation + blog final polish v12.
   Focus: mobile breadcrumb scroll, mobile account/cart actions, sidebar widgets,
   archive/single consistency and safe footer scope. */

/* Breadcrumb: compact horizontal scrolling on tablet/mobile. */
@media (max-width: 1024px) {
  .huuguu-global-breadcrumb-bar {
    overflow: hidden !important;
  }

  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb::-webkit-scrollbar,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready::-webkit-scrollbar {
    display: none !important;
  }

  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb > *,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready > * {
    flex: 0 0 auto !important;
  }

  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-current {
    max-width: 72vw !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

/* Mobile/tablet menu actions: account/cart/search/CTA should look intentional. */
@media (max-width: 1100px) {
  .huuguu-mobile-panel .mobile-actions {
    display: grid !important;
    gap: var(--hgg-mobile-menu-gap, 20px) !important;
    padding-top: 14px !important;
    margin-top: 14px !important;
    border-top: 1px solid var(--hgg-mobile-menu-border, var(--hgg-border, #d8dfef)) !important;
  }

  .huuguu-mobile-panel .mobile-utility-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .huuguu-mobile-panel .mobile-utility-grid:empty,
  .huuguu-mobile-panel .mobile-actions:empty {
    display: none !important;
  }

  .huuguu-mobile-panel .hgg-header-link--mobile-panel,
  .huuguu-mobile-panel .hgg-header-link--mobile-top {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    min-height: 40px !important;
    padding: 9px 12px !important;
    border: 1px solid var(--hgg-mobile-menu-border, var(--hgg-border, #d8dfef)) !important;
    border-radius: var(--hgg-mobile-toggle-radius, 12px) !important;
    background: color-mix(in srgb, var(--hgg-mobile-menu-bg, #fff) 88%, var(--hgg-mobile-menu-link, #172033) 12%) !important;
    color: var(--hgg-mobile-menu-link, var(--hgg-text, #172033)) !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    text-decoration: none !important;
  }

  .huuguu-mobile-panel .hgg-header-link--mobile-panel:hover,
  .huuguu-mobile-panel .hgg-header-link--mobile-top:hover {
    color: var(--hgg-mobile-menu-active, var(--hgg-link-hover, #045F12)) !important;
  }

  .huuguu-mobile-panel .hgg-header-link--cart .hgg-header-link__label {
    display: inline-flex !important;
    gap: 4px !important;
  }

  .huuguu-mobile-panel .hgg-header-link--cart .hgg-cart-count {
    margin-left: 4px !important;
  }

  .huuguu-mobile-panel .header-search .search-form,
  .huuguu-mobile-panel .header-search form[role="search"] {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px !important;
    align-items: stretch !important;
    width: 100% !important;
  }

  .huuguu-mobile-panel .header-search input[type="search"],
  .huuguu-mobile-panel .header-search .search-field {
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    border-radius: var(--hgg-mobile-toggle-radius, 12px) !important;
  }

  .huuguu-mobile-panel .header-search .search-submit,
  .huuguu-mobile-panel .header-search button[type="submit"] {
    min-height: 44px !important;
    border-radius: var(--hgg-mobile-toggle-radius, 12px) !important;
  }
}

/* Mobile panel sizing: different useful widths for mobile and tablet. */
@media (max-width: 767px) {
  .site-header.is-mobile-menu-open,
  .huuguu-mobile-menu-open .site-header {
    width: min(92vw, 360px) !important;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  .site-header.is-mobile-menu-open,
  .huuguu-mobile-menu-open .site-header {
    width: min(86vw, 560px) !important;
  }
}

/* Blog layout: no sidebar must not reserve a sidebar column. */
body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--no-sidebar,
body.blog:not(.elementor-page) .huuguu-blog-wrap--no-sidebar,
body.archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar,
body.search:not(.elementor-page) .huuguu-blog-wrap--no-sidebar,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--no-sidebar {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
}

body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-primary,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-primary,
body.blog:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-primary,
body.archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-primary,
body.search:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-primary,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-primary {
  width: 100% !important;
  max-width: 100% !important;
  grid-column: 1 / -1 !important;
}

body.huuguu-blog-archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-blog-sidebar,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-blog-sidebar,
body.blog:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-blog-sidebar,
body.archive:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-blog-sidebar,
body.search:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-blog-sidebar,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--no-sidebar > .huuguu-blog-sidebar {
  display: none !important;
}

/* Archive style: card/list should be predictable. */
body.huuguu-blog-archive-style-card:not(.elementor-page) .huuguu-post-grid {
  display: grid !important;
  gap: var(--hgg-blog-archive-gap, 24px) !important;
}
body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-1:not(.elementor-page) .huuguu-post-grid { grid-template-columns: 1fr !important; }
body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-2:not(.elementor-page) .huuguu-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-3:not(.elementor-page) .huuguu-post-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-4:not(.elementor-page) .huuguu-post-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: var(--hgg-blog-archive-gap, 24px) !important;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card {
  display: grid !important;
  grid-template-columns: minmax(220px, 36%) minmax(0, 1fr) !important;
  align-items: stretch !important;
  gap: 0 !important;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail {
  height: 100% !important;
  min-height: 220px !important;
  margin: 0 !important;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-card__body {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

@media (max-width: 900px) {
  body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-3:not(.elementor-page) .huuguu-post-grid,
  body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-4:not(.elementor-page) .huuguu-post-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  body.huuguu-blog-archive-style-card:not(.elementor-page) .huuguu-post-grid,
  body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-2:not(.elementor-page) .huuguu-post-grid,
  body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-3:not(.elementor-page) .huuguu-post-grid,
  body.huuguu-blog-archive-style-card.huuguu-blog-archive-columns-4:not(.elementor-page) .huuguu-post-grid {
    grid-template-columns: 1fr !important;
  }
}

/* Archive and related posts share the same interaction model. */
body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card {
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
  will-change: transform !important;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 18px 46px rgba(17, 34, 68, .13) !important;
  border-color: color-mix(in srgb, var(--hgg-primary, #007721) 30%, var(--hgg-border, #d8dfef)) !important;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .post-thumbnail {
  position: relative !important;
  overflow: hidden !important;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail img,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail img,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail img,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .post-thumbnail img {
  transition: transform .35s ease, opacity .35s ease !important;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover .post-thumbnail img,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover .post-thumbnail img,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card:hover .post-thumbnail img,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card:hover .post-thumbnail img {
  transform: scale(1.035) !important;
  opacity: .96 !important;
}

/* Single header: meta follows title alignment. */
body.single-post:not(.elementor-page) .hgg-single-card > .entry-header {
  text-align: var(--hgg-page-title-align, left) !important;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-header .entry-meta {
  justify-content: var(--hgg-entry-meta-align, center) !important;
}

body.single-post:not(.elementor-page) .hgg-single-card > .entry-header[style*="left"] .entry-meta,
body.single-post:not(.elementor-page) .hgg-single-card > .entry-header.alignleft .entry-meta {
  justify-content: flex-start !important;
}

/* Blog sidebar final: compact, consistent, and scoped only to blog sidebar. */
@media (min-width: 1025px) {
  body:not(.elementor-page) aside.huuguu-blog-sidebar {
    border-left: 1px solid color-mix(in srgb, var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) 70%, transparent) !important;
    padding-left: clamp(18px, 2vw, 28px) !important;
  }
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_block,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-group,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-group__inner-container {
  padding: 0 !important;
  margin: 0 0 clamp(22px, 2.6vw, 32px) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .widget-title,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-heading {
  margin: 0 0 12px !important;
  color: var(--hgg-heading-color, var(--hgg-text, #172033)) !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  text-align: left !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search form,
body:not(.elementor-page) aside.huuguu-blog-sidebar form[role="search"] {
  display: block !important;
  width: 100% !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__label,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search label,
body:not(.elementor-page) aside.huuguu-blog-sidebar form[role="search"] label {
  display: block !important;
  width: 100% !important;
  margin: 0 0 10px !important;
  font-weight: 800 !important;
  color: var(--hgg-heading-color, var(--hgg-text, #172033)) !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__inside-wrapper,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  align-items: stretch !important;
  width: 100% !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__input,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-field,
body:not(.elementor-page) aside.huuguu-blog-sidebar input[type="search"] {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 44px !important;
  margin: 0 !important;
  border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px)) !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__button,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-submit,
body:not(.elementor-page) aside.huuguu-blog-sidebar button[type="submit"] {
  min-width: auto !important;
  width: auto !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 10px 18px !important;
  border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px)) !important;
  background: var(--hgg-blog-read-more-bg, var(--hgg-primary, #007721)) !important;
  color: var(--hgg-blog-read-more-text, #fff) !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__button:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-submit:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar button[type="submit"]:hover {
  background: var(--hgg-blog-read-more-hover-bg, var(--hgg-primary-dark, #045F12)) !important;
  color: var(--hgg-blog-read-more-hover-text, #fff) !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-latest-posts,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories-list,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-archives,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_recent_entries ul,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_categories ul,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_archive ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-latest-posts li,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories li,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories-list li,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-archives li,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_recent_entries li,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_categories li,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_archive li {
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid color-mix(in srgb, var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) 70%, transparent) !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-latest-posts a,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories a,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories-list a,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-archives a,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_recent_entries a,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_categories a,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_archive a {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-height: 44px !important;
  padding: 10px 8px 10px 22px !important;
  color: var(--hgg-blog-link, var(--hgg-link, var(--hgg-text, #172033))) !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
  transition: color .18s ease, background-color .18s ease, padding-left .18s ease !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-latest-posts a::before,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories a::before,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories-list a::before,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-archives a::before,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_recent_entries a::before,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_categories a::before,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_archive a::before {
  content: "›" !important;
  position: absolute !important;
  left: 6px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  font-size: 16px !important;
  line-height: 1 !important;
  opacity: .65 !important;
  color: currentColor !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-latest-posts a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories-list a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-archives a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_recent_entries a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_categories a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_archive a:hover {
  padding-left: 28px !important;
  border-radius: calc(var(--hgg-content-radius, var(--hgg-radius, 12px)) * .75) !important;
  background: color-mix(in srgb, var(--hgg-content-surface-bg, #fff) 86%, var(--hgg-primary, #007721) 14%) !important;
  color: var(--hgg-blog-link-hover, var(--hgg-link-hover, var(--hgg-primary, #007721))) !important;
}

/* Footer should not inherit blog widget color/card styles. */
.site-footer .widget,
.site-footer .widget_block,
.site-footer .wp-block-group,
.site-footer .wp-block-group__inner-container {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.site-footer .widget-title,
.site-footer .wp-block-heading {
  color: inherit !important;
}

/* Huuguu v14: hard connection fixes for Woo single, breadcrumb scroll, header account/cart and blog controls. */

/* Breadcrumb: true horizontal scroll on tablet/mobile, no truncation. */
@media (max-width: 1024px) {
  .huuguu-global-breadcrumb-bar {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }
  .huuguu-global-breadcrumb-bar::-webkit-scrollbar { display: none !important; }
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 8px !important;
    width: max-content !important;
    min-width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
    white-space: nowrap !important;
  }
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb > *,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready > * {
    flex: 0 0 auto !important;
  }
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-current {
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
  }
}

/* Header Woo actions: desktop/topbar account and cart must not render as raw links. */
.header-actions .hgg-header-link,
.mobile-topbar-actions .hgg-header-link,
.huuguu-mobile-panel .hgg-header-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  min-height: 38px !important;
  padding: 8px 12px !important;
  border: 1px solid var(--hgg-border, #d8dfef) !important;
  border-radius: var(--hgg-mobile-toggle-radius, var(--hgg-content-radius, 12px)) !important;
  background: var(--hgg-surface, #ffffff) !important;
  color: var(--hgg-link, #007721) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
.header-actions .hgg-header-link:hover,
.header-actions .hgg-header-link:focus-visible,
.mobile-topbar-actions .hgg-header-link:hover,
.mobile-topbar-actions .hgg-header-link:focus-visible,
.huuguu-mobile-panel .hgg-header-link:hover,
.huuguu-mobile-panel .hgg-header-link:focus-visible {
  color: var(--hgg-link-hover, #045F12) !important;
  border-color: currentColor !important;
}
.header-actions .hgg-header-link--cart .hgg-header-link__label,
.mobile-topbar-actions .hgg-header-link--cart .hgg-header-link__label,
.huuguu-mobile-panel .hgg-header-link--cart .hgg-header-link__label {
  margin-right: 4px !important;
}
.header-actions .hgg-cart-count,
.mobile-topbar-actions .hgg-cart-count,
.huuguu-mobile-panel .hgg-cart-count {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 20px !important;
  height: 20px !important;
  padding: 0 6px !important;
  border-radius: 999px !important;
  background: var(--hgg-header-cart-badge-bg, var(--hgg-primary, #007721)) !important;
  color: var(--hgg-header-cart-badge-text, #ffffff) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}
.mobile-topbar-actions .hgg-header-link--mobile-top {
  padding: 8px 10px !important;
  border-color: transparent !important;
  background: transparent !important;
}

/* WooCommerce single: product top must be gallery left + summary right; tabs below. */
body.single-product.woocommerce div.product,
body.single-product.woocommerce-page div.product,
body.single-product .woocommerce div.product {
  display: grid !important;
  grid-template-columns: minmax(280px, 0.95fr) minmax(320px, 1.05fr) !important;
  gap: var(--hgg-wc-single-gap, 40px) !important;
  align-items: start !important;
  width: 100% !important;
}
body.single-product.woocommerce div.product .woocommerce-product-gallery,
body.single-product.woocommerce-page div.product .woocommerce-product-gallery,
body.single-product .woocommerce div.product .woocommerce-product-gallery {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
}
body.single-product.woocommerce div.product .summary,
body.single-product.woocommerce div.product .summary.entry-summary,
body.single-product.woocommerce-page div.product .summary,
body.single-product.woocommerce-page div.product .summary.entry-summary,
body.single-product .woocommerce div.product .summary,
body.single-product .woocommerce div.product .summary.entry-summary {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: var(--hgg-wc-single-summary-max, 600px) !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
}
body.single-product.woocommerce div.product .woocommerce-tabs,
body.single-product.woocommerce-page div.product .woocommerce-tabs,
body.single-product .woocommerce div.product .woocommerce-tabs,
body.single-product.woocommerce div.product .related,
body.single-product.woocommerce-page div.product .related,
body.single-product .woocommerce div.product .related,
body.single-product.woocommerce div.product .upsells,
body.single-product.woocommerce-page div.product .upsells,
body.single-product .woocommerce div.product .upsells {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  clear: both !important;
}
@media (max-width: 900px) {
  body.single-product.woocommerce div.product,
  body.single-product.woocommerce-page div.product,
  body.single-product .woocommerce div.product {
    grid-template-columns: 1fr !important;
  }
  body.single-product.woocommerce div.product .woocommerce-product-gallery,
  body.single-product.woocommerce-page div.product .woocommerce-product-gallery,
  body.single-product .woocommerce div.product .woocommerce-product-gallery,
  body.single-product.woocommerce div.product .summary,
  body.single-product.woocommerce div.product .summary.entry-summary,
  body.single-product.woocommerce-page div.product .summary,
  body.single-product.woocommerce-page div.product .summary.entry-summary,
  body.single-product .woocommerce div.product .summary,
  body.single-product .woocommerce div.product .summary.entry-summary {
    grid-column: 1 !important;
    max-width: none !important;
  }
}

/* Blog title color control: archive title, single title and card/related titles. */
body.blog:not(.elementor-page) .page-title,
body.archive:not(.elementor-page) .page-title,
body.search:not(.elementor-page) .page-title,
body.single-post:not(.elementor-page) .entry-title,
body.blog:not(.elementor-page) .hgg-post-card .entry-title,
body.blog:not(.elementor-page) .hgg-post-card .entry-title a,
body.archive:not(.elementor-page) .hgg-post-card .entry-title,
body.archive:not(.elementor-page) .hgg-post-card .entry-title a,
body.search:not(.elementor-page) .hgg-post-card .entry-title,
body.search:not(.elementor-page) .hgg-post-card .entry-title a,
body.single-post:not(.elementor-page) .huuguu-related-posts .entry-title,
body.single-post:not(.elementor-page) .huuguu-related-posts .entry-title a {
  color: var(--hgg-blog-title, var(--hgg-heading-color, var(--hgg-text, #172033))) !important;
}

/* Sidebar search button must use the same vars as Blog > General > Read more. */
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__button,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-submit,
body:not(.elementor-page) aside.huuguu-blog-sidebar button[type="submit"] {
  background: var(--hgg-blog-readmore-bg, var(--hgg-primary, #007721)) !important;
  color: var(--hgg-blog-readmore-text, #ffffff) !important;
}
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__button:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-submit:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar button[type="submit"]:hover {
  background: var(--hgg-blog-readmore-hover-bg, var(--hgg-primary-dark, #045F12)) !important;
  color: var(--hgg-blog-readmore-hover-text, #ffffff) !important;
}


/* Huuguu v15: blog radius control, breadcrumb mobile trim, Woo single grid, cart icon and sidebar search. */
:root {
}

/* Blog buttons, search button and pagination share the same blog button radius. */
body:not(.elementor-page) .hgg-read-more,
body:not(.elementor-page) .hgg-archive-card .hgg-read-more,
body:not(.elementor-page) .hgg-related-card .hgg-read-more,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__button,
body:not(.elementor-page) .huuguu-blog-sidebar .search-submit,
body:not(.elementor-page) .huuguu-blog-sidebar button[type="submit"],
body:not(.elementor-page) .pagination a,
body:not(.elementor-page) .pagination span,
body:not(.elementor-page) .nav-links .page-numbers {
  border-radius: var(--hgg-blog-button-radius, var(--hgg-content-radius, var(--hgg-radius, 12px))) !important;
}

/* Sidebar search: label above, input keeps available width, button follows Read more colors. */
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search form,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search {
  display: block !important;
  width: 100% !important;
}
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_search label,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__label {
  display: block !important;
  width: 100% !important;
  margin: 0 0 10px !important;
  color: var(--hgg-blog-title, var(--hgg-heading-color, var(--hgg-text, #172033))) !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__inside-wrapper,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-form > div,
body:not(.elementor-page) aside.huuguu-blog-sidebar form[role="search"] > div {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  align-items: stretch !important;
  width: 100% !important;
}
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__input,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-field,
body:not(.elementor-page) aside.huuguu-blog-sidebar input[type="search"] {
  width: 100% !important;
  min-width: 0 !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 10px 14px !important;
  border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) !important;
  border-radius: var(--hgg-content-radius, var(--hgg-radius, 12px)) !important;
  background: var(--hgg-content-surface-bg, #fff) !important;
  color: var(--hgg-text, #172033) !important;
  box-shadow: none !important;
}
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__button,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-submit,
body:not(.elementor-page) aside.huuguu-blog-sidebar button[type="submit"] {
  width: auto !important;
  min-width: 88px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 10px 18px !important;
  border: 0 !important;
  background: var(--hgg-blog-readmore-bg, var(--hgg-primary, #007721)) !important;
  color: var(--hgg-blog-readmore-text, #ffffff) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__button:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-submit:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar button[type="submit"]:hover {
  background: var(--hgg-blog-readmore-hover-bg, var(--hgg-primary-hover, #045F12)) !important;
  color: var(--hgg-blog-readmore-hover-text, #ffffff) !important;
}

/* Breadcrumb: compact item padding and real horizontal scroll on tablet/mobile. */
.huuguu-global-breadcrumb-bar .woocommerce-breadcrumb > span,
.huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready > span,
.huuguu-global-breadcrumb-bar .woocommerce-breadcrumb > a,
.huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready > a {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
@media (max-width: 1100px) {
  .huuguu-global-breadcrumb-bar {
    overflow: hidden !important;
  }
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding-left: var(--hgg-breadcrumb-pad-x, var(--hgg-wc-breadcrumb-pad-x, 12px)) !important;
    padding-right: var(--hgg-breadcrumb-pad-x, var(--hgg-wc-breadcrumb-pad-x, 12px)) !important;
  }
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb::-webkit-scrollbar,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready::-webkit-scrollbar {
    display: none !important;
  }
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-current {
    flex: 0 0 auto !important;
    max-width: none !important;
  }
}

/* WooCommerce single: grid belongs to the top wrapper, not the product root. */
body.single-product .huuguu-wc-single-main,
body.single-product.woocommerce .huuguu-wc-single-main,
body.single-product.woocommerce-page .huuguu-wc-single-main {
  display: grid !important;
  grid-template-columns: minmax(280px, 0.95fr) minmax(320px, 1.05fr) !important;
  gap: var(--hgg-wc-single-gap, 40px) !important;
  align-items: start !important;
  width: 100% !important;
}
body.single-product .huuguu-wc-single-main .woocommerce-product-gallery,
body.single-product.woocommerce .huuguu-wc-single-main .woocommerce-product-gallery,
body.single-product.woocommerce-page .huuguu-wc-single-main .woocommerce-product-gallery {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
}
body.single-product .huuguu-wc-single-main .summary,
body.single-product .huuguu-wc-single-main .summary.entry-summary,
body.single-product.woocommerce .huuguu-wc-single-main .summary,
body.single-product.woocommerce-page .huuguu-wc-single-main .summary {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: var(--hgg-wc-single-summary-max, 600px) !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
}
body.single-product .huuguu-wc-single-bottom,
body.single-product.woocommerce .huuguu-wc-single-bottom,
body.single-product.woocommerce-page .huuguu-wc-single-bottom {
  display: block !important;
  width: 100% !important;
  clear: both !important;
}
@media (max-width: 900px) {
  body.single-product .huuguu-wc-single-main,
  body.single-product.woocommerce .huuguu-wc-single-main,
  body.single-product.woocommerce-page .huuguu-wc-single-main {
    grid-template-columns: 1fr !important;
  }
  body.single-product .huuguu-wc-single-main .woocommerce-product-gallery,
  body.single-product .huuguu-wc-single-main .summary,
  body.single-product .huuguu-wc-single-main .summary.entry-summary {
    grid-column: 1 !important;
    max-width: none !important;
  }
}

/* Header account/cart actions: styled on desktop, compact icon cart on mobile topbar. */
.header-actions .hgg-header-link,
.mobile-topbar-actions .hgg-header-link,
.huuguu-mobile-panel .hgg-header-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  min-height: 38px !important;
  padding: 8px 12px !important;
  border-radius: var(--hgg-mobile-button-radius, 999px) !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: var(--hgg-link, #007721) !important;
  border: 1px solid transparent !important;
}
.header-actions .hgg-header-link__icon,
.mobile-topbar-actions .hgg-header-link__icon,
.huuguu-mobile-panel .hgg-header-link__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 0 !important;
}
.mobile-topbar-actions .hgg-header-link--cart .hgg-header-link__label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.mobile-topbar-actions .hgg-header-link--cart {
  position: relative !important;
  min-width: 38px !important;
  width: 38px !important;
  height: 38px !important;
  padding: 0 !important;
}
.mobile-topbar-actions .hgg-header-link--cart .hgg-cart-count {
  position: absolute !important;
  top: -5px !important;
  right: -5px !important;
  min-width: 18px !important;
  height: 18px !important;
  padding: 0 5px !important;
  font-size: 11px !important;
}



/* Huuguu v16: canonical blog button system.
 * One source of truth for read more, header/sidebar search and pagination.
 */
:root {
  --hgg-blog-read-more-bg: var(--hgg-blog-readmore-bg, var(--hgg-button-bg, var(--hgg-primary, #007721)));
  --hgg-blog-read-more-text: var(--hgg-blog-readmore-text, var(--hgg-button-text, #ffffff));
}

body:not(.elementor-page) .hgg-read-more,
body:not(.elementor-page) .hgg-post-card .hgg-read-more,
body:not(.elementor-page) .hgg-archive-card .hgg-read-more,
body:not(.elementor-page) .hgg-related-card .hgg-read-more,
body:not(.elementor-page) .huuguu-related-posts .hgg-read-more,
body:not(.elementor-page) .header-search .search-submit,
body:not(.elementor-page) .header-search button[type="submit"],
body:not(.elementor-page) .header-search input[type="submit"],
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__button,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-submit,
body:not(.elementor-page) aside.huuguu-blog-sidebar button[type="submit"],
body:not(.elementor-page) aside.huuguu-blog-sidebar input[type="submit"],
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__button,
body:not(.elementor-page) .huuguu-blog-sidebar .search-submit,
body:not(.elementor-page) .huuguu-blog-sidebar button[type="submit"],
body:not(.elementor-page) .huuguu-blog-sidebar input[type="submit"],
body:not(.elementor-page) .navigation.pagination .page-numbers,
body:not(.elementor-page) .nav-links .page-numbers,
body:not(.elementor-page) .comments-pagination a,
body:not(.elementor-page) .comments-pagination span {
  border-radius: var(--hgg-blog-button-radius, var(--hgg-content-radius, var(--hgg-radius, 12px))) !important;
}

body:not(.elementor-page) .hgg-read-more,
body:not(.elementor-page) .hgg-post-card .hgg-read-more,
body:not(.elementor-page) .hgg-archive-card .hgg-read-more,
body:not(.elementor-page) .hgg-related-card .hgg-read-more,
body:not(.elementor-page) .huuguu-related-posts .hgg-read-more,
body:not(.elementor-page) .header-search .search-submit,
body:not(.elementor-page) .header-search button[type="submit"],
body:not(.elementor-page) .header-search input[type="submit"],
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__button,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-submit,
body:not(.elementor-page) aside.huuguu-blog-sidebar button[type="submit"],
body:not(.elementor-page) aside.huuguu-blog-sidebar input[type="submit"],
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__button,
body:not(.elementor-page) .huuguu-blog-sidebar .search-submit,
body:not(.elementor-page) .huuguu-blog-sidebar button[type="submit"],
body:not(.elementor-page) .huuguu-blog-sidebar input[type="submit"] {
  background: var(--hgg-blog-read-more-bg, var(--hgg-button-bg, var(--hgg-primary, #007721))) !important;
  color: var(--hgg-blog-read-more-text, var(--hgg-button-text, #ffffff)) !important;
}

body:not(.elementor-page) .hgg-read-more:hover,
body:not(.elementor-page) .hgg-read-more:focus,
body:not(.elementor-page) .hgg-post-card .hgg-read-more:hover,
body:not(.elementor-page) .hgg-post-card .hgg-read-more:focus,
body:not(.elementor-page) .hgg-archive-card .hgg-read-more:hover,
body:not(.elementor-page) .hgg-archive-card .hgg-read-more:focus,
body:not(.elementor-page) .hgg-related-card .hgg-read-more:hover,
body:not(.elementor-page) .hgg-related-card .hgg-read-more:focus,
body:not(.elementor-page) .huuguu-related-posts .hgg-read-more:hover,
body:not(.elementor-page) .huuguu-related-posts .hgg-read-more:focus,
body:not(.elementor-page) .header-search .search-submit:hover,
body:not(.elementor-page) .header-search .search-submit:focus,
body:not(.elementor-page) .header-search button[type="submit"]:hover,
body:not(.elementor-page) .header-search button[type="submit"]:focus,
body:not(.elementor-page) .header-search input[type="submit"]:hover,
body:not(.elementor-page) .header-search input[type="submit"]:focus,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__button:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-search__button:focus,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-submit:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .search-submit:focus,
body:not(.elementor-page) aside.huuguu-blog-sidebar button[type="submit"]:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar button[type="submit"]:focus,
body:not(.elementor-page) aside.huuguu-blog-sidebar input[type="submit"]:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar input[type="submit"]:focus,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__button:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-search__button:focus,
body:not(.elementor-page) .huuguu-blog-sidebar .search-submit:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .search-submit:focus,
body:not(.elementor-page) .huuguu-blog-sidebar button[type="submit"]:hover,
body:not(.elementor-page) .huuguu-blog-sidebar button[type="submit"]:focus,
body:not(.elementor-page) .huuguu-blog-sidebar input[type="submit"]:hover,
body:not(.elementor-page) .huuguu-blog-sidebar input[type="submit"]:focus {
  background: var(--hgg-blog-read-more-hover-bg, var(--hgg-blog-read-more-bg, var(--hgg-button-hover-bg, var(--hgg-primary-dark, #045F12)))) !important;
  color: var(--hgg-blog-read-more-hover-text, var(--hgg-blog-read-more-text, var(--hgg-button-hover-text, #ffffff))) !important;
}

body:not(.elementor-page) .navigation.pagination .page-numbers.current,
body:not(.elementor-page) .navigation.pagination .page-numbers:hover,
body:not(.elementor-page) .navigation.pagination .page-numbers:focus,
body:not(.elementor-page) .nav-links .page-numbers.current,
body:not(.elementor-page) .nav-links .page-numbers:hover,
body:not(.elementor-page) .nav-links .page-numbers:focus,
body:not(.elementor-page) .comments-pagination a:hover,
body:not(.elementor-page) .comments-pagination a:focus,
body:not(.elementor-page) .comments-pagination .current {
  border-color: var(--hgg-blog-read-more-bg, var(--hgg-primary, #007721)) !important;
  background: var(--hgg-blog-read-more-bg, var(--hgg-primary, #007721)) !important;
  color: var(--hgg-blog-read-more-text, #ffffff) !important;
}

/* === V17 WooCommerce archive/taxonomy/single cleanup layer ===
 * Final layer while the legacy WooCommerce CSS is being reduced.
 * Customizer source of truth:
 * - General: loop alignment, button colors/radius, sale badge, header cart/account.
 * - Archive and taxonomy: layout mode, container width, columns, full-width button.
 * - Single product: gallery/summary ratio, gap, card, tabs, sticky and typography tokens.
 */
body.post-type-archive-product .huuguu-content-wrap,
body.woocommerce-shop .huuguu-content-wrap {
    width: min(100% - 2rem, var(--hgg-wc-archive-container, var(--hgg-container, 1240px))) !important;
    max-width: var(--hgg-wc-archive-container, var(--hgg-container, 1240px)) !important;
    margin-inline: auto !important;
}

body.tax-product_cat .huuguu-content-wrap,
body.tax-product_tag .huuguu-content-wrap,
body.tax-product_brand .huuguu-content-wrap,
body.woocommerce-wc-product_cat .huuguu-content-wrap {
    width: min(100% - 2rem, var(--hgg-wc-taxonomy-container, var(--hgg-container, 1240px))) !important;
    max-width: var(--hgg-wc-taxonomy-container, var(--hgg-container, 1240px)) !important;
    margin-inline: auto !important;
}









body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-content-wrap,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-content-wrap {
    width: min(100% - 2rem, var(--hgg-wc-single-container, var(--hgg-container, 1240px))) !important;
    max-width: var(--hgg-wc-single-container, var(--hgg-container, 1240px)) !important;
    margin-inline: auto !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product {
    display: block !important;
    max-width: var(--hgg-wc-single-content-max, 1360px) !important;
    margin-inline: auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
    display: grid !important;
    grid-template-columns: minmax(0, var(--hgg-wc-single-gallery-ratio, 50%)) minmax(0, var(--hgg-wc-single-summary-ratio, 50%)) !important;
    gap: var(--hgg-wc-single-gap, 40px) !important;
    align-items: start !important;
    width: 100% !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .images,
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .summary,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .images,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .summary {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .summary,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .summary {
    max-width: var(--hgg-wc-single-summary-max, 600px) !important;
    justify-self: start !important;
    padding: var(--hgg-wc-single-summary-spacing, 24px) !important;
    background: var(--hgg-wc-single-product-bg, var(--hgg-surface, #fff)) !important;
    border: var(--hgg-wc-single-card-border, 1px) solid rgba(23, 32, 51, .08) !important;
    border-radius: var(--hgg-wc-single-card-radius, 24px) !important;
    box-shadow: var(--hgg-wc-single-card-shadow, none) !important;
}

body.single-product.huuguu-wc-single-style-clean div.product .summary,
body.woocommerce-page.single-product.huuguu-wc-single-style-clean div.product .summary {
    padding: 0 !important;
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .summary,
body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .summary {
    position: sticky !important;
    top: var(--hgg-wc-single-sticky-top, 110px) !important;
    z-index: 1 !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-bottom,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-bottom {
    display: block !important;
    width: 100% !important;
    margin-top: clamp(32px, 4vw, 56px) !important;
    clear: both !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-bottom > .woocommerce-tabs,
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-bottom > .wc-tabs-wrapper,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-bottom > .woocommerce-tabs,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-bottom > .wc-tabs-wrapper {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    background: transparent !important;
}

body.single-product .woocommerce-tabs .panel,
body.woocommerce-page.single-product .woocommerce-tabs .panel {
    background: var(--hgg-wc-single-tabs-bg, #fff) !important;
    border: 1px solid var(--hgg-wc-single-tabs-border, rgba(23, 32, 51, .12)) !important;
    border-radius: var(--hgg-wc-single-tabs-radius, 14px) !important;
    padding: max(22px, calc(var(--hgg-wc-single-tabs-spacing, 18px) + 12px)) !important;
    color: var(--hgg-wc-single-tabs-text, var(--hgg-text, #172033)) !important;
}

body.single-product div.product .product_title,
body.woocommerce-page.single-product div.product .product_title {
    font-size: clamp(2rem, 4vw, var(--hgg-wc-single-title-size, 52px)) !important;
    line-height: 1.08 !important;
    margin: 0 0 1rem !important;
}

body.single-product div.product .summary p.price,
body.single-product div.product .summary span.price,
body.woocommerce-page.single-product div.product .summary p.price,
body.woocommerce-page.single-product div.product .summary span.price {
    color: var(--hgg-wc-single-price, var(--hgg-text, #172033)) !important;
    font-size: clamp(1.5rem, 3vw, var(--hgg-wc-single-price-size, 36px)) !important;
    font-weight: 800 !important;
}

@media (max-width: 1024px) {

    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
        grid-template-columns: 1fr !important;
        gap: max(24px, calc(var(--hgg-wc-single-gap, 40px) * .7)) !important;
    }

    body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .summary,
    body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .summary {
        position: relative !important;
        top: auto !important;
    }
}

@media (max-width: 640px) {

    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-content-wrap,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-content-wrap,
    body.post-type-archive-product .huuguu-content-wrap,
    body.woocommerce-shop .huuguu-content-wrap,
    body.tax-product_cat .huuguu-content-wrap,
    body.tax-product_tag .huuguu-content-wrap,
    body.tax-product_brand .huuguu-content-wrap {
        width: min(100% - 1.5rem, var(--hgg-container, 1240px)) !important;
    }
}

/* Huuguu v19: Woo cleanup after v18 feedback.
   Header account/cart inherit Woo General colors, single title uses Woo Single color,
   mobile gallery stays visible, and add-to-cart layout respects inline/block per breakpoint. */
.header-actions .hgg-header-link,
.mobile-topbar-actions .hgg-header-link,
.huuguu-mobile-panel .hgg-header-link {
    color: var(--hgg-wc-header-action-color, var(--hgg-wc-button-bg, var(--hgg-primary, #246de8))) !important;
}
.header-actions .hgg-header-link:hover,
.header-actions .hgg-header-link:focus,
.mobile-topbar-actions .hgg-header-link:hover,
.mobile-topbar-actions .hgg-header-link:focus,
.huuguu-mobile-panel .hgg-header-link:hover,
.huuguu-mobile-panel .hgg-header-link:focus {
    color: var(--hgg-wc-header-action-hover-color, var(--hgg-wc-button-hover-bg, var(--hgg-primary-dark, #154fad))) !important;
}
.header-actions .hgg-header-link svg,
.mobile-topbar-actions .hgg-header-link svg,
.huuguu-mobile-panel .hgg-header-link svg {
    color: currentColor !important;
    fill: none !important;
    stroke: currentColor !important;
}

body.single-product div.product .summary .product_title,
body.woocommerce-page.single-product div.product .summary .product_title,
body.single-product div.product .product_title,
body.woocommerce-page.single-product div.product .product_title {
    color: var(--hgg-wc-single-title-color, var(--hgg-heading-color, var(--hgg-text, #172033))) !important;
}

@media (max-width: 900px) {
    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .woocommerce-product-gallery,
    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .woocommerce-product-gallery,
    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .images,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .woocommerce-product-gallery,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .woocommerce-product-gallery,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .images {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        min-height: 1px !important;
        overflow: visible !important;
        position: relative !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 100% !important;
        max-width: none !important;
    }
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product form.cart,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product form.cart {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: .85rem !important;
}
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product form.cart .single_add_to_cart_button,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product form.cart .single_add_to_cart_button {
    display: var(--hgg-wc-button-display-desktop, inline-flex) !important;
    width: var(--hgg-wc-button-width-desktop, auto) !important;
    flex: 0 0 var(--hgg-wc-button-width-desktop, auto) !important;
    border-radius: var(--hgg-wc-button-radius, var(--hgg-wc-single-button-radius, 16px)) !important;
}
@media (max-width: 1024px) {
    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product form.cart .single_add_to_cart_button,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product form.cart .single_add_to_cart_button {
        display: var(--hgg-wc-button-display-tablet, var(--hgg-wc-button-display-desktop, inline-flex)) !important;
        width: var(--hgg-wc-button-width-tablet, var(--hgg-wc-button-width-desktop, auto)) !important;
        flex-basis: var(--hgg-wc-button-width-tablet, var(--hgg-wc-button-width-desktop, auto)) !important;
    }
}
@media (max-width: 767px) {
    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product form.cart .single_add_to_cart_button,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product form.cart .single_add_to_cart_button {
        display: var(--hgg-wc-button-display-mobile, var(--hgg-wc-button-display-tablet, flex)) !important;
        width: var(--hgg-wc-button-width-mobile, var(--hgg-wc-button-width-tablet, 100%)) !important;
        flex-basis: var(--hgg-wc-button-width-mobile, var(--hgg-wc-button-width-tablet, 100%)) !important;
    }
}

/* === Huuguu v21: WooCommerce single wrapper follows setup spacing === */
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
    padding-top: var(--hgg-spacing-content_woocommerce-desktop-top, 24px) !important;
    padding-right: var(--hgg-spacing-content_woocommerce-desktop-right, 28px) !important;
    padding-bottom: var(--hgg-spacing-content_woocommerce-desktop-bottom, 28px) !important;
    padding-left: var(--hgg-spacing-content_woocommerce-desktop-left, 28px) !important;
    box-sizing: border-box !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product {
    display: block !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
    display: grid !important;
    grid-template-columns: minmax(0, var(--hgg-wc-single-gallery-ratio, 50%)) minmax(0, var(--hgg-wc-single-summary-ratio, 50%)) !important;
    gap: var(--hgg-wc-single-gap, 40px) !important;
    align-items: start !important;
    width: 100% !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .woocommerce-product-gallery,
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .images,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .woocommerce-product-gallery,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .images {
    grid-column: 1 !important;
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary,
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary.entry-summary,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary.entry-summary {
    grid-column: 2 !important;
    width: 100% !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
}

body.single-product .woocommerce-tabs ul.tabs,
body.woocommerce-page.single-product .woocommerce-tabs ul.tabs {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: thin !important;
}

body.single-product .woocommerce-tabs ul.tabs li,
body.woocommerce-page.single-product .woocommerce-tabs ul.tabs li {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

body.single-product div.product .product_meta,
body.woocommerce-page.single-product div.product .product_meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px 12px !important;
    align-items: center !important;
    margin-top: 22px !important;
    padding-top: 18px !important;
    border-top: 1px solid rgba(23,32,51,.10) !important;
    color: var(--hgg-muted, #5f6b7a) !important;
    font-size: .95rem !important;
}

body.single-product div.product .product_meta > span,
body.woocommerce-page.single-product div.product .product_meta > span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

body.single-product div.product .summary .product_title,
body.woocommerce-page.single-product div.product .summary .product_title {
    color: var(--hgg-wc-single-title-color, var(--hgg-heading-color, var(--hgg-text, #172033))) !important;
}

@media (max-width: 1024px) and (min-width: 701px) {
    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
        padding-top: var(--hgg-spacing-content_woocommerce-tablet-top, 20px) !important;
        padding-right: var(--hgg-spacing-content_woocommerce-tablet-right, 24px) !important;
        padding-bottom: var(--hgg-spacing-content_woocommerce-tablet-bottom, 24px) !important;
        padding-left: var(--hgg-spacing-content_woocommerce-tablet-left, 24px) !important;
    }
}

@media (max-width: 900px) {
    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
        grid-template-columns: 1fr !important;
    }

    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .woocommerce-product-gallery,
    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .images,
    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary,
    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary.entry-summary,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .woocommerce-product-gallery,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .images,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary.entry-summary {
        grid-column: 1 !important;
        max-width: none !important;
    }
}

@media (max-width: 700px) {
    body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
    body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
        padding-top: var(--hgg-spacing-content_woocommerce-mobile-top, 16px) !important;
        padding-right: var(--hgg-spacing-content_woocommerce-mobile-right, 16px) !important;
        padding-bottom: var(--hgg-spacing-content_woocommerce-mobile-bottom, 20px) !important;
        padding-left: var(--hgg-spacing-content_woocommerce-mobile-left, 16px) !important;
    }
}

/* === V22 WooCommerce layout width + sticky media cleanup ===
 * Full/contained modes must not be constrained by the generic 1240px container.
 * Single top grid uses the WooCommerce content width controls, while the wrapper
 * only controls page/container mode and sidebar behavior.
 */
body.huuguu-wc-single-layout-full_no_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-single-layout-full_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-archive-layout-full_no_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-archive-layout-full_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-full_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body .site-main .site-main-inner > .huuguu-woocommerce-wrap--full {
  width: 100% !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.huuguu-wc-single-layout-contained_no_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-single-layout-contained_sidebar .site-main .site-main-inner > .huuguu-content-wrap {
  width: min(100% - 2rem, var(--hgg-wc-single-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-wc-single-container, var(--hgg-container, 1240px)) !important;
}

body.huuguu-wc-archive-layout-contained_no_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-archive-layout-contained_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-content-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_sidebar .huuguu-content-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-content-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-contained_sidebar .huuguu-content-wrap {
  width: min(100% - 2rem, var(--hgg-wc-archive-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-wc-archive-container, var(--hgg-container, 1240px)) !important;
}

body.huuguu-wc-taxonomy-layout-contained_no_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-contained_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-content-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_sidebar .huuguu-content-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-content-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_sidebar .huuguu-content-wrap {
  width: min(100% - 2rem, var(--hgg-wc-taxonomy-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-wc-taxonomy-container, var(--hgg-container, 1240px)) !important;
}

body.huuguu-wc-archive-layout-full_no_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-archive-layout-full_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .huuguu-content-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-full_sidebar .huuguu-content-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .huuguu-content-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-full_sidebar .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-full_sidebar .site-main .site-main-inner > .huuguu-content-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-content-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-content-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-content-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-content-wrap {
  width: 100% !important;
  max-width: none !important;
}

body.huuguu-wc-archive-layout-contained_no_sidebar #secondary,
body.huuguu-wc-archive-layout-full_no_sidebar #secondary,
body.huuguu-wc-archive-layout-contained_no_sidebar .widget-area,
body.huuguu-wc-archive-layout-full_no_sidebar .widget-area,
body.huuguu-wc-taxonomy-layout-contained_no_sidebar #secondary,
body.huuguu-wc-taxonomy-layout-full_no_sidebar #secondary,
body.huuguu-wc-taxonomy-layout-contained_no_sidebar .widget-area,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .widget-area {
  display: none !important;
}

body.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-primary,
body.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-primary,
body.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-primary,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-primary {
  width: 100% !important;
  max-width: none !important;
  flex: 1 1 100% !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
  max-width: var(--hgg-wc-single-content-max, none) !important;
  margin-inline: auto !important;
  box-sizing: border-box !important;
}

body.huuguu-wc-single-layout-full_no_sidebar.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.huuguu-wc-single-layout-full_sidebar.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
  width: 100% !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-bottom,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-bottom {
  margin-top: 0 !important;
}

@media (min-width: 901px) {
  body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .woocommerce-product-gallery,
  body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .images,
  body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .woocommerce-product-gallery,
  body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .images {
    position: sticky !important;
    top: var(--hgg-wc-single-sticky-top, 110px) !important;
    align-self: start !important;
    z-index: 1 !important;
  }

  body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary,
  body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary.entry-summary,
  body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary,
  body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .summary.entry-summary {
    position: relative !important;
    top: auto !important;
  }
}

@media (max-width: 900px) {
  body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .woocommerce-product-gallery,
  body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .images,
  body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .woocommerce-product-gallery,
  body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main .images {
    position: static !important;
    top: auto !important;
  }
}


/* === V23 WooCommerce single: sticky media, quantity control and product meta cleanup === */
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .site,
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .site-main,
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .content-area,
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-wrap,
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product,
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .site,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .site-main,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .content-area,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-wrap,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    contain: none !important;
    transform: none !important;
}

@media (min-width: 1025px) {
    body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .woocommerce-product-gallery,
    body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .images,
    body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .woocommerce-product-gallery,
    body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .images {
        position: sticky !important;
        top: var(--hgg-wc-single-sticky-top, 110px) !important;
        align-self: flex-start !important;
        z-index: 3 !important;
    }

    body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .summary,
    body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .summary {
        position: static !important;
        top: auto !important;
    }
}

body.single-product div.product form.cart .quantity .qty,
body.woocommerce-page div.product form.cart .quantity .qty {
    min-width: 84px !important;
    height: 44px !important;
    border: 1px solid rgba(23,32,51,.18) !important;
    border-radius: var(--hgg-wc-button-radius, 6px) !important;
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    background: #fff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.85) !important;
}

body.single-product div.product .product_meta,
body.woocommerce-page.single-product div.product .product_meta {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    row-gap: 10px !important;
    column-gap: 0 !important;
    align-items: start !important;
    margin-top: 22px !important;
    padding-top: 18px !important;
    border-top: 1px solid rgba(23,32,51,.10) !important;
    color: var(--hgg-muted, #5f6b7a) !important;
    font-size: .95rem !important;
}

body.single-product div.product .product_meta > span,
body.woocommerce-page.single-product div.product .product_meta > span,
body.single-product div.product .product_meta > span.huuguu-meta-row-ready,
body.woocommerce-page.single-product div.product .product_meta > span.huuguu-meta-row-ready {
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: baseline !important;
    width: 100% !important;
    margin: 0 !important;
}

body.single-product div.product .product_meta .huuguu-meta-label,
body.woocommerce-page.single-product div.product .product_meta .huuguu-meta-label {
    display: block !important;
    min-width: 96px !important;
    color: var(--hgg-text, #172033) !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
}

body.single-product div.product .product_meta .huuguu-meta-label::after,
body.woocommerce-page.single-product div.product .product_meta .huuguu-meta-label::after {
    content: ":";
}

body.single-product div.product .product_meta .huuguu-meta-value,
body.woocommerce-page.single-product div.product .product_meta .huuguu-meta-value {
    display: block !important;
    min-width: 0 !important;
    color: var(--hgg-muted, #5f6b7a) !important;
    line-height: 1.45 !important;
}

body.single-product div.product .product_meta a,
body.woocommerce-page.single-product div.product .product_meta a {
    color: var(--hgg-link-color, var(--hgg-primary, #246de8)) !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}

body.single-product div.product .product_meta a:hover,
body.woocommerce-page.single-product div.product .product_meta a:hover {
    color: var(--hgg-link-hover-color, var(--hgg-primary-dark, #154fad)) !important;
    text-decoration: underline !important;
}

@media (max-width: 520px) {
    body.single-product div.product .product_meta > span,
    body.woocommerce-page.single-product div.product .product_meta > span,
    body.single-product div.product .product_meta > span.huuguu-meta-row-ready,
    body.woocommerce-page.single-product div.product .product_meta > span.huuguu-meta-row-ready {
        grid-template-columns: 82px minmax(0, 1fr) !important;
        gap: 6px !important;
    }

    body.single-product div.product .product_meta .huuguu-meta-label,
    body.woocommerce-page.single-product div.product .product_meta .huuguu-meta-label {
        min-width: 82px !important;
    }
}

/* === V24 WooCommerce content setup + archive/taxonomy card cleanup ===
 * Applies the global WooCommerce content spacing setup to the real Woo wrapper,
 * fixes full/contained modes independent of the generic 1240px container,
 * and polishes loop badges, prices, tax suffixes, and product cards.
 */
body.woocommerce .huuguu-woocommerce-wrap,
body.woocommerce-page .huuguu-woocommerce-wrap,
body.single-product .huuguu-woocommerce-wrap {
  box-sizing: border-box !important;
}

body.woocommerce .huuguu-woocommerce-primary,
body.woocommerce-page .huuguu-woocommerce-primary,
body.single-product .huuguu-woocommerce-primary {
  box-sizing: border-box !important;
  padding-top: var(--hgg-spacing-content_woocommerce-desktop-top, 24px) !important;
  padding-right: var(--hgg-spacing-content_woocommerce-desktop-right, 28px) !important;
  padding-bottom: var(--hgg-spacing-content_woocommerce-desktop-bottom, 28px) !important;
  padding-left: var(--hgg-spacing-content_woocommerce-desktop-left, 28px) !important;
}

body.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-archive-layout-full_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-single-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-single-layout-full_sidebar .huuguu-woocommerce-wrap,
body .huuguu-woocommerce-wrap.huuguu-woocommerce-wrap--full {
  width: 100% !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-archive-layout-contained_sidebar .huuguu-woocommerce-wrap {
  width: min(100%, var(--hgg-wc-archive-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-wc-archive-container, var(--hgg-container, 1240px)) !important;
  margin-inline: auto !important;
}

body.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-contained_sidebar .huuguu-woocommerce-wrap {
  width: min(100%, var(--hgg-wc-taxonomy-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-wc-taxonomy-container, var(--hgg-container, 1240px)) !important;
  margin-inline: auto !important;
}

body.huuguu-wc-single-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-single-layout-contained_sidebar .huuguu-woocommerce-wrap {
  width: min(100%, var(--hgg-wc-single-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-wc-single-container, var(--hgg-container, 1240px)) !important;
  margin-inline: auto !important;
}







body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-bottom,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-bottom {
  box-sizing: border-box !important;
}

@media (max-width: 1024px) {
  body.woocommerce .huuguu-woocommerce-primary,
  body.woocommerce-page .huuguu-woocommerce-primary,
  body.single-product .huuguu-woocommerce-primary {
    padding-top: var(--hgg-spacing-content_woocommerce-tablet-top, 20px) !important;
    padding-right: var(--hgg-spacing-content_woocommerce-tablet-right, 20px) !important;
    padding-bottom: var(--hgg-spacing-content_woocommerce-tablet-bottom, 28px) !important;
    padding-left: var(--hgg-spacing-content_woocommerce-tablet-left, 20px) !important;
  }
}


/* === V25 WooCommerce single gallery visibility on tablet/mobile ===
 * The responsive single layout must stack gallery first and summary second.
 * Earlier rules left both elements in grid row 1 on narrow screens, which could
 * make the gallery look missing/overlapped in tablet and mobile views.
 */
@media (max-width: 1024px) {
  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
    grid-template-columns: 1fr !important;
    align-items: start !important;
    overflow: visible !important;
  }

  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .woocommerce-product-gallery,
  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .images,
  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .woocommerce-product-gallery,
  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .images,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .woocommerce-product-gallery,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .images,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .woocommerce-product-gallery,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product .images {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    order: 1 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 1px !important;
    height: auto !important;
    margin: 0 !important;
    float: none !important;
    clear: both !important;
    overflow: visible !important;
    transform: none !important;
    contain: none !important;
  }

  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .summary,
  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .summary.entry-summary,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .summary,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .summary.entry-summary {
    grid-column: 1 !important;
    grid-row: 2 !important;
    order: 2 !important;
    width: 100% !important;
    max-width: none !important;
    position: relative !important;
    top: auto !important;
    margin: 0 !important;
  }

  body.single-product .woocommerce-product-gallery__wrapper,
  body.single-product .woocommerce-product-gallery__image,
  body.single-product .woocommerce-product-gallery__image > a,
  body.single-product .woocommerce-product-gallery__image img,
  body.woocommerce-page.single-product .woocommerce-product-gallery__wrapper,
  body.woocommerce-page.single-product .woocommerce-product-gallery__image,
  body.woocommerce-page.single-product .woocommerce-product-gallery__image > a,
  body.woocommerce-page.single-product .woocommerce-product-gallery__image img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }

  body.single-product .woocommerce-product-gallery__trigger,
  body.woocommerce-page.single-product .woocommerce-product-gallery__trigger {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

@media (max-width: 700px) {
  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
    gap: max(20px, calc(var(--hgg-wc-single-gap, 40px) * .55)) !important;
  }
}

/* === V28 Phase 2 stabilization: Woo archive/taxonomy/single, search and 404 === */
body.search .site-main-inner,
body.error404 .site-main-inner{background:var(--hgg-bg,#f5f7fb)}
body.search .huuguu-content-wrap,
body.error404 .huuguu-content-wrap{width:min(100% - 24px,var(--hgg-container,1240px))!important;margin-inline:auto!important;gap:clamp(20px,3vw,36px)!important}
body.search .page-header,
body.error404 .page-header{margin:0 0 clamp(18px,2vw,28px)!important}
body.search .page-title,
body.error404 .page-title{margin:0!important;color:var(--hgg-page-title-color,var(--hgg-text,#172033))!important;font-size:clamp(2rem,2.6vw,var(--hgg-page-title-size,44px))!important;line-height:1.08!important;text-align:var(--hgg-page-title-align,left)!important}
body.search .huuguu-post-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))!important;gap:var(--hgg-blog-archive-gap,28px)!important;align-items:stretch!important}
body.search .hgg-post-card,
body.search .hgg-empty-state,
body.error404 .hgg-404-shell{border:1px solid rgba(23,32,51,.08)!important;border-radius:var(--hgg-blog-archive-card-radius,var(--hgg-radius,18px))!important;background:var(--hgg-surface,#fff)!important;box-shadow:var(--hgg-blog-archive-card-shadow,0 18px 34px rgba(23,32,51,.08))!important}
body.error404 .hgg-404-shell{max-width:760px!important;margin-inline:auto!important;padding:clamp(28px,5vw,56px)!important;text-align:center!important}
body.error404 .hgg-404-lead,
body.search .hgg-empty-state p{color:var(--hgg-muted,#5d6781)!important;font-size:clamp(1rem,1vw,1.15rem)!important}
body.error404 .search-form,
body.search .hgg-empty-state .search-form{max-width:520px!important;margin:22px auto 0!important}

body.woocommerce .huuguu-woocommerce-wrap,
body.woocommerce-page .huuguu-woocommerce-wrap,
body.single-product .huuguu-woocommerce-wrap{box-sizing:border-box!important;gap:clamp(22px,3vw,38px)!important}
body.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-archive-layout-full_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-single-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-single-layout-full_sidebar .huuguu-woocommerce-wrap,
body .huuguu-woocommerce-wrap.huuguu-woocommerce-wrap--full{width:100%!important;max-width:none!important;padding-inline:0!important}
body.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-archive-layout-contained_sidebar .huuguu-woocommerce-wrap{width:min(100% - 24px,var(--hgg-wc-archive-container,var(--hgg-container,1240px)))!important;max-width:var(--hgg-wc-archive-container,var(--hgg-container,1240px))!important}
body.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-contained_sidebar .huuguu-woocommerce-wrap{width:min(100% - 24px,var(--hgg-wc-taxonomy-container,var(--hgg-container,1240px)))!important;max-width:var(--hgg-wc-taxonomy-container,var(--hgg-container,1240px))!important}
body.huuguu-wc-single-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-single-layout-contained_sidebar .huuguu-woocommerce-wrap{width:min(100% - 24px,var(--hgg-wc-single-container,var(--hgg-container,1240px)))!important;max-width:var(--hgg-wc-single-container,var(--hgg-container,1240px))!important}
body.woocommerce .huuguu-woocommerce-primary,
body.woocommerce-page .huuguu-woocommerce-primary,
body.single-product .huuguu-woocommerce-primary{width:100%!important;min-width:0!important;padding-top:var(--hgg-spacing-content_woocommerce-desktop-top,40px)!important;padding-right:var(--hgg-spacing-content_woocommerce-desktop-right,0px)!important;padding-bottom:var(--hgg-spacing-content_woocommerce-desktop-bottom,40px)!important;padding-left:var(--hgg-spacing-content_woocommerce-desktop-left,0px)!important}
body.huuguu-wc-archive-layout-contained_no_sidebar #secondary,
body.huuguu-wc-archive-layout-full_no_sidebar #secondary,
body.huuguu-wc-taxonomy-layout-contained_no_sidebar #secondary,
body.huuguu-wc-taxonomy-layout-full_no_sidebar #secondary,
body.huuguu-wc-single-layout-contained_no_sidebar #secondary,
body.huuguu-wc-single-layout-full_no_sidebar #secondary,
body.huuguu-wc-archive-layout-contained_no_sidebar .widget-area,
body.huuguu-wc-archive-layout-full_no_sidebar .widget-area,
body.huuguu-wc-taxonomy-layout-contained_no_sidebar .widget-area,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .widget-area,
body.huuguu-wc-single-layout-contained_no_sidebar .widget-area,
body.huuguu-wc-single-layout-full_no_sidebar .widget-area{display:none!important}
body.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-primary,
body.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-primary,
body.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-primary,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-primary,
body.huuguu-wc-single-layout-contained_no_sidebar .huuguu-woocommerce-primary,
body.huuguu-wc-single-layout-full_no_sidebar .huuguu-woocommerce-primary{flex:1 1 100%!important;max-width:none!important}

body.woocommerce .woocommerce-products-header,
body.woocommerce-page .woocommerce-products-header{margin:0 0 clamp(18px,2.4vw,32px)!important}
body.woocommerce .woocommerce-products-header__title,
body.woocommerce-page .woocommerce-products-header__title,
body.woocommerce .page-title,
body.woocommerce-page .page-title{margin:0 0 .55rem!important;color:var(--hgg-page-title-color,var(--hgg-text,#172033))!important;font-size:clamp(2rem,2.6vw,var(--hgg-page-title-size,44px))!important;line-height:1.08!important;text-align:var(--hgg-page-title-align,left)!important}
body.woocommerce .term-description,
body.woocommerce-page .term-description{max-width:760px!important;color:var(--hgg-muted,#5d6781)!important}
body.woocommerce .woocommerce-result-count,
body.woocommerce-page .woocommerce-result-count{color:var(--hgg-muted,#5d6781)!important;margin:0 0 18px!important}
body.woocommerce .woocommerce-ordering select,
body.woocommerce-page .woocommerce-ordering select{min-height:42px!important;padding:0 38px 0 14px!important;border:1px solid rgba(23,32,51,.18)!important;border-radius:var(--hgg-input-radius,8px)!important;background-color:#fff!important;color:var(--hgg-text,#172033)!important}







body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product{background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important;contain:none!important}
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main{display:grid!important;grid-template-columns:minmax(0,var(--hgg-wc-single-gallery-ratio,50%)) minmax(0,var(--hgg-wc-single-summary-ratio,50%))!important;gap:var(--hgg-wc-single-gap,40px)!important;align-items:start!important;width:100%!important;max-width:var(--hgg-wc-single-content-max,none)!important;margin-inline:auto!important;overflow:visible!important;contain:none!important;transform:none!important}
body.single-product .huuguu-wc-single-main>.woocommerce-product-gallery,
body.single-product .huuguu-wc-single-main>.images,
body.woocommerce-page.single-product .huuguu-wc-single-main>.woocommerce-product-gallery,
body.woocommerce-page.single-product .huuguu-wc-single-main>.images{width:100%!important;max-width:none!important;min-width:0!important;float:none!important;margin:0!important}
body.single-product .huuguu-wc-single-main>.summary,
body.single-product .huuguu-wc-single-main>.summary.entry-summary,
body.woocommerce-page.single-product .huuguu-wc-single-main>.summary,
body.woocommerce-page.single-product .huuguu-wc-single-main>.summary.entry-summary{width:100%!important;max-width:var(--hgg-wc-single-summary-max,520px)!important;min-width:0!important;float:none!important;margin:0!important;padding:clamp(24px,3vw,36px)!important;border:var(--hgg-wc-single-card-border,1px) solid rgba(23,32,51,.08)!important;border-radius:var(--hgg-wc-single-card-radius,18px)!important;background:var(--hgg-wc-single-product-bg,var(--hgg-surface,#fff))!important;box-shadow:var(--hgg-wc-single-card-shadow,0 16px 44px rgba(17,34,68,.10))!important}
body.single-product div.product .product_title,
body.woocommerce-page.single-product div.product .product_title{color:var(--hgg-wc-single-title-color,var(--hgg-text,#172033))!important;font-size:clamp(2rem,2vw + 1rem,var(--hgg-wc-single-title-size,52px))!important;line-height:1.08!important;letter-spacing:-.035em!important;margin:0 0 .45em!important}
body.single-product div.product .summary p.price,
body.single-product div.product .summary span.price,
body.woocommerce-page.single-product div.product .summary p.price,
body.woocommerce-page.single-product div.product .summary span.price{display:flex!important;flex-wrap:wrap!important;align-items:baseline!important;gap:.2rem .55rem!important;color:var(--hgg-wc-single-price,var(--hgg-text,#172033))!important;font-size:clamp(1.55rem,1.1vw + 1rem,var(--hgg-wc-single-price-size,36px))!important;font-weight:900!important;line-height:1.1!important}
body.single-product div.product .summary .price .woocommerce-price-suffix,
body.woocommerce-page.single-product div.product .summary .price .woocommerce-price-suffix{color:var(--hgg-wc-price-suffix-color,var(--hgg-muted,#5d6781))!important;font-size:var(--hgg-wc-price-suffix-size,13px)!important;font-weight:var(--hgg-wc-price-suffix-weight,500)!important;margin-left:var(--hgg-wc-price-suffix-spacing,6px)!important;line-height:1.25!important}
body.single-product div.product form.cart,
body.woocommerce-page.single-product div.product form.cart{display:flex!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:12px!important;margin:clamp(18px,2vw,26px) 0!important}
body.single-product div.product form.cart .huuguu-qty-stepper,
body.woocommerce-page.single-product div.product form.cart .huuguu-qty-stepper,
body.single-product div.product form.cart .quantity,
body.woocommerce-page.single-product div.product form.cart .quantity{flex:0 0 auto!important}
body.single-product div.product form.cart .single_add_to_cart_button,
body.woocommerce-page.single-product div.product form.cart .single_add_to_cart_button{flex:1 1 auto!important;min-height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important;width:auto!important;border-radius:var(--hgg-wc-button-radius,6px)!important}
@media (min-width:1025px){body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main>.woocommerce-product-gallery,body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main>.images,body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main>.woocommerce-product-gallery,body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main>.images{position:sticky!important;top:var(--hgg-wc-single-sticky-top,110px)!important;align-self:start!important;z-index:3!important}}
body.single-product .huuguu-wc-single-bottom,
body.woocommerce-page.single-product .huuguu-wc-single-bottom{width:100%!important;max-width:var(--hgg-wc-single-content-max,none)!important;margin:var(--hgg-wc-single-gap,40px) auto 0!important;clear:both!important}
body.single-product .woocommerce-tabs,
body.woocommerce-page.single-product .woocommerce-tabs{max-width:none!important;margin:0!important;overflow:visible!important}
body.single-product.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs,
body.woocommerce-page.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs{display:flex!important;flex-wrap:nowrap!important;gap:10px!important;margin:0 0 14px!important;padding:0 0 4px!important;border:0!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:thin!important}
body.single-product.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs li,
body.woocommerce-page.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs li{flex:0 0 auto!important;margin:0!important;border:1px solid var(--hgg-wc-single-tabs-border,rgba(23,32,51,.12))!important;border-radius:var(--hgg-wc-single-tabs-radius,14px)!important;background:var(--hgg-wc-single-tabs-inactive-bg,#fff)!important}
body.single-product.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs li a,
body.woocommerce-page.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs li a{display:block!important;padding:.75rem 1rem!important;color:var(--hgg-wc-single-tabs-text,var(--hgg-text,#172033))!important;font-weight:800!important;text-decoration:none!important;white-space:nowrap!important}
body.single-product.huuguu-wc-single-tabs-modern .woocommerce-tabs li.active,
body.woocommerce-page.huuguu-wc-single-tabs-modern .woocommerce-tabs li.active{background:var(--hgg-wc-single-tabs-bg,#fff)!important}
body.single-product.huuguu-wc-single-tabs-modern .woocommerce-tabs li.active a,
body.woocommerce-page.huuguu-wc-single-tabs-modern .woocommerce-tabs li.active a{color:var(--hgg-wc-single-tabs-active-text,var(--hgg-text,#172033))!important}
body.single-product.huuguu-wc-single-tabs-modern .woocommerce-tabs .panel,
body.woocommerce-page.huuguu-wc-single-tabs-modern .woocommerce-tabs .panel{margin:0!important;padding:calc(var(--hgg-wc-single-tabs-spacing,18px) + 8px)!important;border:1px solid var(--hgg-wc-single-tabs-border,rgba(23,32,51,.10))!important;border-radius:calc(var(--hgg-wc-single-tabs-radius,14px) + 4px)!important;background:var(--hgg-wc-single-tabs-bg,var(--hgg-surface,#fff))!important}
body.single-product div.product .product_meta,
body.woocommerce-page.single-product div.product .product_meta{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:24px!important;padding-top:18px!important;border-top:1px solid rgba(23,32,51,.10)!important}
body.single-product div.product .product_meta>span,
body.woocommerce-page.single-product div.product .product_meta>span{display:grid!important;grid-template-columns:minmax(88px,112px) minmax(0,1fr)!important;gap:10px!important;align-items:baseline!important}



/* === V29 Phase 2 final hardening: Woo widths, single, archive/taxonomy, search and 404 === */
/* Button base tokens are now printed by the Customizer runtime. Do not redeclare them here. */
body.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner,body.huuguu-wc-archive-layout-full_sidebar .site-main-inner,body.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner,body.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner,body.huuguu-wc-single-layout-full_no_sidebar .site-main-inner,body.huuguu-wc-single-layout-full_sidebar .site-main-inner{width:100%!important;max-width:none!important}
body.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-archive-layout-full_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-single-layout-full_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-single-layout-full_sidebar .huuguu-woocommerce-wrap,body .huuguu-woocommerce-wrap.huuguu-woocommerce-wrap--full{width:100%!important;max-width:none!important;margin-inline:0!important;padding-inline:0!important}
body.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-archive-layout-contained_sidebar .huuguu-woocommerce-wrap{width:min(100% - 24px,var(--hgg-wc-archive-container,var(--hgg-container,1240px)))!important;max-width:var(--hgg-wc-archive-container,var(--hgg-container,1240px))!important;margin-inline:auto!important}
body.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-taxonomy-layout-contained_sidebar .huuguu-woocommerce-wrap{width:min(100% - 24px,var(--hgg-wc-taxonomy-container,var(--hgg-container,1240px)))!important;max-width:var(--hgg-wc-taxonomy-container,var(--hgg-container,1240px))!important;margin-inline:auto!important}
body.huuguu-wc-single-layout-contained_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-single-layout-contained_sidebar .huuguu-woocommerce-wrap{width:min(100% - 24px,var(--hgg-wc-single-container,var(--hgg-container,1240px)))!important;max-width:var(--hgg-wc-single-container,var(--hgg-container,1240px))!important;margin-inline:auto!important}
body.woocommerce .huuguu-woocommerce-primary,body.woocommerce-page .huuguu-woocommerce-primary,body.single-product .huuguu-woocommerce-primary{padding-top:var(--hgg-spacing-content_woocommerce-desktop-top,40px)!important;padding-right:var(--hgg-spacing-content_woocommerce-desktop-right,0px)!important;padding-bottom:var(--hgg-spacing-content_woocommerce-desktop-bottom,40px)!important;padding-left:var(--hgg-spacing-content_woocommerce-desktop-left,0px)!important}
body.woocommerce .woocommerce-ordering,body.woocommerce-page .woocommerce-ordering{float:none!important;margin:0 0 18px auto!important;max-width:min(100%,320px)!important;position:relative!important;z-index:2!important}
body.woocommerce .woocommerce-ordering select,body.woocommerce-page .woocommerce-ordering select{width:100%!important;min-height:42px!important;padding:0 38px 0 14px!important;border:1px solid rgba(23,32,51,.18)!important;border-radius:var(--hgg-input-radius,8px)!important;background-color:#fff!important;color:var(--hgg-text,#172033)!important}







body.single-product .site-main,body.single-product .site-main-inner,body.single-product .huuguu-woocommerce-wrap,body.single-product .huuguu-woocommerce-primary,body.single-product .huuguu-wc-single-main,body.single-product div.product{overflow:visible!important;contain:none!important;transform:none!important}
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main{width:100%!important;max-width:var(--hgg-wc-single-content-max,none)!important;margin-inline:auto!important;padding:0!important;gap:var(--hgg-wc-single-gap,40px)!important}
body.single-product .huuguu-wc-single-main>.summary,body.single-product .huuguu-wc-single-main>.summary.entry-summary,body.woocommerce-page.single-product .huuguu-wc-single-main>.summary,body.woocommerce-page.single-product .huuguu-wc-single-main>.summary.entry-summary{padding:clamp(24px,3vw,36px)!important;border-radius:var(--hgg-wc-single-card-radius,var(--hgg-radius,18px))!important}
@media (min-width:1025px){body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main>.woocommerce-product-gallery,body.huuguu-wc-single-sticky-summary.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main>.images,body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main>.woocommerce-product-gallery,body.huuguu-wc-single-sticky-summary.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main>.images{position:sticky!important;top:var(--hgg-wc-single-sticky-top,110px)!important;align-self:start!important;z-index:3!important}}
@media (max-width:1024px){body.single-product .huuguu-wc-single-main>.woocommerce-product-gallery,body.single-product .huuguu-wc-single-main>.images,body.woocommerce-page.single-product .huuguu-wc-single-main>.woocommerce-product-gallery,body.woocommerce-page.single-product .huuguu-wc-single-main>.images{position:relative!important;top:auto!important;display:block!important;width:100%!important;opacity:1!important;visibility:visible!important}}
body.single-product div.product .product_meta,body.woocommerce-page.single-product div.product .product_meta{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:24px!important;padding-top:18px!important;border-top:1px solid rgba(23,32,51,.10)!important;color:var(--hgg-muted,#5d6781)!important}
body.single-product div.product .product_meta>span,body.woocommerce-page.single-product div.product .product_meta>span,body.single-product div.product .product_meta>span.huuguu-meta-row-ready,body.woocommerce-page.single-product div.product .product_meta>span.huuguu-meta-row-ready{display:grid!important;grid-template-columns:minmax(92px,120px) minmax(0,1fr)!important;gap:12px!important;align-items:baseline!important}
body.single-product div.product .product_meta .huuguu-meta-label,body.woocommerce-page.single-product div.product .product_meta .huuguu-meta-label{color:var(--hgg-text,#172033)!important;font-weight:800!important}
body.single-product div.product .product_meta a,body.woocommerce-page.single-product div.product .product_meta a{color:var(--hgg-link,var(--hgg-primary,#246de8))!important;text-decoration:none!important}
body.single-product.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs,body.woocommerce-page.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs{display:flex!important;gap:10px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0 0 6px!important;margin:0 0 14px!important;border:0!important;-webkit-overflow-scrolling:touch!important}
body.single-product.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs::before,body.single-product.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs::after,body.woocommerce-page.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs::before,body.woocommerce-page.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs::after{display:none!important;content:none!important}
body.single-product.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs li,body.woocommerce-page.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs li{position:relative!important;flex:0 0 auto!important;border:1px solid var(--hgg-wc-single-tabs-border,rgba(23,32,51,.12))!important;border-radius:var(--hgg-wc-single-tabs-radius,14px)!important;background:var(--hgg-wc-single-tabs-inactive-bg,#fff)!important;overflow:hidden!important}
body.single-product.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs li.active::after,body.woocommerce-page.huuguu-wc-single-tabs-modern .woocommerce-tabs ul.tabs li.active::after{content:""!important;position:absolute!important;left:14px!important;right:14px!important;bottom:0!important;height:3px!important;border-radius:999px 999px 0 0!important;background:var(--hgg-wc-button-bg,var(--hgg-primary,#246de8))!important}
body.single-product .huuguu-wc-single-bottom,body.woocommerce-page.single-product .huuguu-wc-single-bottom{margin-top:var(--hgg-wc-single-gap,40px)!important}
body.single-product div.product form.cart .quantity.huuguu-qty-enhanced,body.woocommerce-page.single-product div.product form.cart .quantity.huuguu-qty-enhanced{display:inline-grid!important;grid-template-columns:44px minmax(46px,1fr) 44px!important;width:min(100%,168px)!important;min-height:44px!important;border-radius:var(--hgg-wc-button-radius,6px)!important}
body.single-product div.product form.cart .quantity.huuguu-qty-enhanced .qty,body.woocommerce-page.single-product div.product form.cart .quantity.huuguu-qty-enhanced .qty,body.single-product div.product form.cart .quantity .qty,body.woocommerce-page.single-product div.product form.cart .quantity .qty{height:44px!important}
body.search .huuguu-content-wrap,body.error404 .huuguu-content-wrap{width:min(100% - 24px,var(--hgg-container,1240px))!important;max-width:var(--hgg-container,1240px)!important;margin-inline:auto!important}
body.search .page-header,body.error404 .page-header{margin-bottom:clamp(18px,2vw,28px)!important}
body.search .page-title,body.error404 .page-title{color:var(--hgg-page-title-color,var(--hgg-text,#172033))!important;font-size:clamp(2rem,2.6vw,3rem)!important;line-height:1.08!important;letter-spacing:-.035em!important}
body.search .huuguu-post-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))!important;gap:var(--hgg-blog-card-gap,28px)!important}
body.error404 .hgg-404-shell,body.search .hgg-empty-state{max-width:780px!important;margin:0 auto!important;padding:clamp(28px,5vw,72px)!important;border:1px solid rgba(23,32,51,.08)!important;border-radius:var(--hgg-content-radius,var(--hgg-radius,18px))!important;background:var(--hgg-surface,#fff)!important;box-shadow:0 18px 54px rgba(17,34,68,.08)!important;text-align:center!important}
body.error404 .search-form,body.search .hgg-empty-state .search-form{display:flex!important;gap:10px!important;max-width:560px!important;margin:22px auto 0!important}body.error404 .search-form label,body.search .hgg-empty-state .search-form label{flex:1 1 auto!important}body.error404 .search-form .search-field,body.search .hgg-empty-state .search-form .search-field{width:100%!important;min-height:44px!important;border-radius:var(--hgg-input-radius,8px)!important}body.error404 .search-form .search-submit,body.search .hgg-empty-state .search-form .search-submit{min-height:44px!important;border-radius:var(--hgg-blog-button-radius,var(--hgg-wc-button-radius,var(--hgg-button-radius,12px)))!important}
@media (max-width:1024px){body.woocommerce .huuguu-woocommerce-primary,body.woocommerce-page .huuguu-woocommerce-primary,body.single-product .huuguu-woocommerce-primary{padding-top:var(--hgg-spacing-content_woocommerce-tablet-top,40px)!important;padding-right:var(--hgg-spacing-content_woocommerce-tablet-right,0px)!important;padding-bottom:var(--hgg-spacing-content_woocommerce-tablet-bottom,40px)!important;padding-left:var(--hgg-spacing-content_woocommerce-tablet-left,0px)!important}body.woocommerce .woocommerce-ordering,body.woocommerce-page .woocommerce-ordering{margin-left:0!important;max-width:100%!important}}
@media (max-width:700px){body.woocommerce .huuguu-woocommerce-primary,body.woocommerce-page .huuguu-woocommerce-primary,body.single-product .huuguu-woocommerce-primary{padding-top:var(--hgg-spacing-content_woocommerce-mobile-top,40px)!important;padding-right:var(--hgg-spacing-content_woocommerce-mobile-right,0px)!important;padding-bottom:var(--hgg-spacing-content_woocommerce-mobile-bottom,40px)!important;padding-left:var(--hgg-spacing-content_woocommerce-mobile-left,0px)!important}body.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-archive-layout-full_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-single-layout-full_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-single-layout-full_sidebar .huuguu-woocommerce-wrap,body .huuguu-woocommerce-wrap.huuguu-woocommerce-wrap--full{width:100%!important;max-width:none!important;margin-inline:0!important}body.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-archive-layout-contained_sidebar .huuguu-woocommerce-wrap{width:min(100% - 24px,var(--hgg-wc-archive-container,var(--hgg-container,1240px)))!important}body.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-taxonomy-layout-contained_sidebar .huuguu-woocommerce-wrap{width:min(100% - 24px,var(--hgg-wc-taxonomy-container,var(--hgg-container,1240px)))!important}body.huuguu-wc-single-layout-contained_no_sidebar .huuguu-woocommerce-wrap,body.huuguu-wc-single-layout-contained_sidebar .huuguu-woocommerce-wrap{width:min(100% - 24px,var(--hgg-wc-single-container,var(--hgg-container,1240px)))!important}body.single-product div.product form.cart,body.woocommerce-page.single-product div.product form.cart{display:flex!important;flex-wrap:nowrap!important;gap:10px!important}body.single-product div.product form.cart .quantity.huuguu-qty-enhanced,body.woocommerce-page.single-product div.product form.cart .quantity.huuguu-qty-enhanced{flex:0 0 min(42%,156px)!important;width:min(42%,156px)!important}body.single-product div.product form.cart .single_add_to_cart_button,body.woocommerce-page.single-product div.product form.cart .single_add_to_cart_button{flex:1 1 auto!important;width:auto!important;min-width:0!important;height:44px!important;min-height:44px!important;white-space:nowrap!important}body.single-product div.product .product_meta>span,body.woocommerce-page.single-product div.product .product_meta>span,body.single-product div.product .product_meta>span.huuguu-meta-row-ready,body.woocommerce-page.single-product div.product .product_meta>span.huuguu-meta-row-ready{grid-template-columns:88px minmax(0,1fr)!important;gap:10px!important}body.error404 .search-form,body.search .hgg-empty-state .search-form{flex-direction:column!important}}

/* === V30 Phase 2 close: Woo responsive width, breadcrumb, single CTA and meta hardening ===
 * Final override layer for the defects seen after v29:
 * - Full Woo modes must not inherit the generic 1240px content wrapper.
 * - Single product content-max controls must affect the real product grid, not the outer page shell only.
 * - Breadcrumb must not create horizontal page overflow on tablet/mobile.
 * - Quantity stepper + add-to-cart must stay on one row on mobile without clipping.
 * - Product meta labels keep a stable width but can wrap safely on narrow screens.
 */
body.woocommerce,
body.woocommerce-page,
body.single-product {
  overflow-x: clip;
}

body.huuguu-wc-archive-layout-full_no_sidebar .site-main,
body.huuguu-wc-archive-layout-full_sidebar .site-main,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main,
body.huuguu-wc-taxonomy-layout-full_sidebar .site-main,
body.huuguu-wc-single-layout-full_no_sidebar .site-main,
body.huuguu-wc-single-layout-full_sidebar .site-main,
body.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner,
body.huuguu-wc-archive-layout-full_sidebar .site-main-inner,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner,
body.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner,
body.huuguu-wc-single-layout-full_no_sidebar .site-main-inner,
body.huuguu-wc-single-layout-full_sidebar .site-main-inner,
body.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-archive-layout-full_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-single-layout-full_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-single-layout-full_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-archive-layout-full_no_sidebar .huuguu-content-wrap,
body.huuguu-wc-archive-layout-full_sidebar .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-content-wrap,
body.huuguu-wc-single-layout-full_no_sidebar .huuguu-content-wrap,
body.huuguu-wc-single-layout-full_sidebar .huuguu-content-wrap,
body.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-archive-layout-full_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-single-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-single-layout-full_sidebar .huuguu-woocommerce-wrap {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

body.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-archive-layout-contained_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-archive-layout-contained_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-archive-layout-contained_sidebar .site-main-inner > .huuguu-content-wrap {
  width: min(100% - 24px, var(--hgg-wc-archive-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-wc-archive-container, var(--hgg-container, 1240px)) !important;
  margin-inline: auto !important;
}

body.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-contained_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-contained_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-contained_sidebar .site-main-inner > .huuguu-content-wrap {
  width: min(100% - 24px, var(--hgg-wc-taxonomy-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-wc-taxonomy-container, var(--hgg-container, 1240px)) !important;
  margin-inline: auto !important;
}

body.huuguu-wc-single-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-single-layout-contained_sidebar .huuguu-woocommerce-wrap,
body.huuguu-wc-single-layout-contained_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-single-layout-contained_sidebar .site-main-inner > .huuguu-content-wrap {
  width: min(100% - 24px, var(--hgg-wc-single-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-wc-single-container, var(--hgg-container, 1240px)) !important;
  margin-inline: auto !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-woocommerce-primary,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-woocommerce-primary {
  padding-top: var(--hgg-spacing-content_woocommerce-desktop-top, 40px) !important;
  padding-right: var(--hgg-spacing-content_woocommerce-desktop-right, 0px) !important;
  padding-bottom: var(--hgg-spacing-content_woocommerce-desktop-bottom, 40px) !important;
  padding-left: var(--hgg-spacing-content_woocommerce-desktop-left, 0px) !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
  width: min(100%, var(--hgg-wc-single-content-max, none)) !important;
  max-width: var(--hgg-wc-single-content-max, none) !important;
  margin-inline: auto !important;
  padding: 0 !important;
  overflow: visible !important;
}

body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) div.product,
body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
  contain: none !important;
  transform: none !important;
}

body.huuguu-wc-single-layout-full_no_sidebar.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
body.huuguu-wc-single-layout-full_sidebar.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
  width: min(100%, var(--hgg-wc-single-content-max, none)) !important;
}

body.single-product .hgg-breadcrumb,
body.single-product .huuguu-breadcrumb,
body.single-product .woocommerce-breadcrumb,
body.woocommerce-page .hgg-breadcrumb,
body.woocommerce-page .huuguu-breadcrumb,
body.woocommerce-page .woocommerce-breadcrumb {
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  white-space: nowrap !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
}
body.single-product .hgg-breadcrumb::-webkit-scrollbar,
body.single-product .huuguu-breadcrumb::-webkit-scrollbar,
body.single-product .woocommerce-breadcrumb::-webkit-scrollbar,
body.woocommerce-page .hgg-breadcrumb::-webkit-scrollbar,
body.woocommerce-page .huuguu-breadcrumb::-webkit-scrollbar,
body.woocommerce-page .woocommerce-breadcrumb::-webkit-scrollbar {
  display: none !important;
}

body.single-product div.product form.cart,
body.woocommerce-page.single-product div.product form.cart {
  display: grid !important;
  grid-template-columns: minmax(118px, 168px) minmax(0, auto) !important;
  align-items: stretch !important;
  justify-content: start !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
}

body.single-product div.product form.cart .quantity.huuguu-qty-enhanced,
body.woocommerce-page.single-product div.product form.cart .quantity.huuguu-qty-enhanced {
  grid-column: 1 !important;
  width: 100% !important;
  max-width: 168px !important;
  min-width: 118px !important;
  min-height: 44px !important;
  display: grid !important;
  grid-template-columns: 38px minmax(34px, 1fr) 38px !important;
  overflow: hidden !important;
}

body.single-product div.product form.cart .single_add_to_cart_button,
body.woocommerce-page.single-product div.product form.cart .single_add_to_cart_button {
  grid-column: 2 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
}

body.single-product div.product .product_meta,
body.woocommerce-page.single-product div.product .product_meta {
  overflow: visible !important;
}
body.single-product div.product .product_meta > span,
body.woocommerce-page.single-product div.product .product_meta > span,
body.single-product div.product .product_meta > span.huuguu-meta-row-ready,
body.woocommerce-page.single-product div.product .product_meta > span.huuguu-meta-row-ready {
  grid-template-columns: minmax(96px, 120px) minmax(0, 1fr) !important;
  width: 100% !important;
}
body.single-product div.product .product_meta .huuguu-meta-value,
body.woocommerce-page.single-product div.product .product_meta .huuguu-meta-value,
body.single-product div.product .product_meta a,
body.woocommerce-page.single-product div.product .product_meta a {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 1024px) {
  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-woocommerce-primary,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-woocommerce-primary {
    padding-top: var(--hgg-spacing-content_woocommerce-tablet-top, 40px) !important;
    padding-right: var(--hgg-spacing-content_woocommerce-tablet-right, 0px) !important;
    padding-bottom: var(--hgg-spacing-content_woocommerce-tablet-bottom, 40px) !important;
    padding-left: var(--hgg-spacing-content_woocommerce-tablet-left, 0px) !important;
  }

  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: 1fr !important;
  }

  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .woocommerce-product-gallery,
  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .images,
  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .summary,
  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .summary.entry-summary,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .woocommerce-product-gallery,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .images,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .summary,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-wc-single-main > .summary.entry-summary {
    grid-column: 1 !important;
    max-width: 100% !important;
  }
}

@media (max-width: 700px) {
  body.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-woocommerce-primary,
  body.woocommerce-page.single-product:not(.huu-service-product-page):not(.huuguu-wc-single-service) .huuguu-woocommerce-primary {
    padding-top: var(--hgg-spacing-content_woocommerce-mobile-top, 40px) !important;
    padding-right: var(--hgg-spacing-content_woocommerce-mobile-right, 0px) !important;
    padding-bottom: var(--hgg-spacing-content_woocommerce-mobile-bottom, 40px) !important;
    padding-left: var(--hgg-spacing-content_woocommerce-mobile-left, 0px) !important;
  }

  body.single-product .huuguu-wc-single-main > .summary,
  body.single-product .huuguu-wc-single-main > .summary.entry-summary,
  body.woocommerce-page.single-product .huuguu-wc-single-main > .summary,
  body.woocommerce-page.single-product .huuguu-wc-single-main > .summary.entry-summary {
    padding: clamp(18px, 6vw, 24px) !important;
  }

  body.single-product div.product form.cart,
  body.woocommerce-page.single-product div.product form.cart {
    grid-template-columns: minmax(112px, 38%) minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  body.single-product div.product form.cart .quantity.huuguu-qty-enhanced,
  body.woocommerce-page.single-product div.product form.cart .quantity.huuguu-qty-enhanced {
    max-width: none !important;
    min-width: 0 !important;
    grid-template-columns: 34px minmax(30px, 1fr) 34px !important;
  }

  body.single-product div.product form.cart .huuguu-qty-step,
  body.woocommerce-page.single-product div.product form.cart .huuguu-qty-step {
    width: 34px !important;
  }

  body.single-product div.product form.cart .single_add_to_cart_button,
  body.woocommerce-page.single-product div.product form.cart .single_add_to_cart_button {
    width: 100% !important;
    padding-inline: .75rem !important;
    font-size: .95rem !important;
  }
}

@media (max-width: 340px) {
  body.single-product div.product form.cart,
  body.woocommerce-page.single-product div.product form.cart {
    grid-template-columns: minmax(102px, 36%) minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body.single-product div.product form.cart .quantity.huuguu-qty-enhanced,
  body.woocommerce-page.single-product div.product form.cart .quantity.huuguu-qty-enhanced {
    grid-template-columns: 30px minmax(28px, 1fr) 30px !important;
  }

  body.single-product div.product form.cart .huuguu-qty-step,
  body.woocommerce-page.single-product div.product form.cart .huuguu-qty-step {
    width: 30px !important;
    font-size: 1.25rem !important;
  }

  body.single-product div.product form.cart .single_add_to_cart_button,
  body.woocommerce-page.single-product div.product form.cart .single_add_to_cart_button {
    font-size: .88rem !important;
    padding-inline: .55rem !important;
  }
}

/* Huuguu v31: mobile/tablet Woo cart shortcut polish.
   Keep the cart visible and usable beside the hamburger without collapsing the icon/badge. */
@media (max-width: 1100px) {
  .huuguu-mobile-topbar .mobile-topbar-actions {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
    min-width: max-content !important;
    overflow: visible !important;
  }

  .huuguu-mobile-topbar .mobile-topbar-actions .hgg-header-link--cart,
  .huuguu-mobile-topbar .mobile-topbar-actions .hgg-header-link--mobile-top.hgg-header-link--cart {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: var(--hgg-mobile-toggle-radius, 10px) !important;
    background: transparent !important;
    color: var(--hgg-wc-header-action-color, var(--hgg-wc-button-bg, var(--hgg-primary, #246de8))) !important;
    line-height: 1 !important;
    overflow: visible !important;
  }

  .huuguu-mobile-topbar .mobile-topbar-actions .hgg-header-link--cart .hgg-header-link__icon,
  .huuguu-mobile-topbar .mobile-topbar-actions .hgg-header-link--cart svg {
    display: block !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    color: currentColor !important;
    stroke: currentColor !important;
  }

  .huuguu-mobile-topbar .mobile-topbar-actions .hgg-header-link--cart .hgg-header-link__label {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }

  .huuguu-mobile-topbar .mobile-topbar-actions .hgg-header-link--cart .hgg-cart-count {
    position: absolute !important;
    top: 2px !important;
    right: 2px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 5px !important;
    border-radius: 999px !important;
    background: var(--hgg-header-cart-badge-bg, var(--hgg-primary, #246de8)) !important;
    color: var(--hgg-header-cart-badge-text, #ffffff) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 18px !important;
    box-shadow: 0 0 0 2px var(--hgg-header-bg, var(--hgg-surface, #ffffff)) !important;
    transform: none !important;
  }

  .huuguu-mobile-topbar .menu-toggle {
    flex: 0 0 auto !important;
  }
}

/* v32: Breadcrumb containment on tablet/mobile.
 * The breadcrumb must scroll inside its own bar without increasing page width
 * or pushing the WooCommerce single content horizontally.
 */
.huuguu-global-breadcrumb-bar {
  width: auto;
  max-width: 100vw !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
.huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
.huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready {
  width: auto;
  max-width: min(100%, var(--hgg-breadcrumb-container, 100%)) !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
.huuguu-global-breadcrumb-bar .woocommerce-breadcrumb > *,
.huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready > * {
  min-width: 0 !important;
}
@media (max-width: 1100px) {
  html,
  body {
    max-width: 100% !important;
    overflow-x: clip !important;
  }
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    touch-action: pan-x !important;
  }
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb > a,
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb > span,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready > a,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready > span {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-current {
    flex: 0 0 auto !important;
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }
}

/* v67: Breadcrumb spacing correction.
 * Keep the breadcrumb row from creating internal vertical padding on the nav itself.
 * The visible separation from the next block is handled as margin, so the breadcrumb
 * does not visually inflate the content area or push the first WooCommerce block with
 * an artificial padded strip.
 */
.huuguu-global-breadcrumb-bar {
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}
.huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
.huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: var(--hgg-breadcrumb-pad-x, var(--hgg-wc-breadcrumb-pad-x, 12px)) !important;
  padding-right: var(--hgg-breadcrumb-pad-x, var(--hgg-wc-breadcrumb-pad-x, 12px)) !important;
  min-height: calc(24px + var(--hgg-breadcrumb-pad-y, var(--hgg-wc-breadcrumb-pad-y, 12px))) !important;
}
@media (max-width: 1100px) {
  .huuguu-global-breadcrumb-bar {
    margin-bottom: var(--hgg-breadcrumb-margin-bottom, 0px) !important;
  }
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}

/* v34: WooCommerce notices and cart/checkout buttons.
 * Covers classic WooCommerce templates and Cart/Checkout Blocks using the same
 * Woo button variables, so alerts, cart actions and checkout CTAs stay aligned.
 */
.woocommerce-notices-wrapper,
.woocommerce .woocommerce-notices-wrapper,
.woocommerce-page .woocommerce-notices-wrapper {
  width: min(100%, var(--hgg-wc-container-max, var(--hgg-container-max, 1240px))) !important;
  margin: 0 auto clamp(20px, 3vw, 32px) !important;
  padding-left: var(--hgg-wc-content-pad-left, 0) !important;
  padding-right: var(--hgg-wc-content-pad-right, 0) !important;
  box-sizing: border-box !important;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error,
.woocommerce-page .woocommerce-message,
.woocommerce-page .woocommerce-info,
.woocommerce-page .woocommerce-error {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  margin: 0 0 18px !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(23, 32, 51, .10) !important;
  border-left: 4px solid var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  border-radius: var(--hgg-content-radius, var(--hgg-radius, 16px)) !important;
  background: var(--hgg-surface, #ffffff) !important;
  color: var(--hgg-text, #172033) !important;
  box-shadow: 0 16px 40px rgba(17, 34, 68, .08) !important;
  line-height: 1.45 !important;
  list-style: none !important;
  box-sizing: border-box !important;
}

.woocommerce-error {
  border-left-color: #d63638 !important;
}

.woocommerce-info {
  border-left-color: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
  position: static !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 22px !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  inset: auto !important;
  color: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
}

.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button,
.woocommerce-message a.button,
.woocommerce-info a.button,
.woocommerce-error a.button,
.woocommerce-message .wc-forward,
.woocommerce-info .wc-forward,
.woocommerce-error .wc-forward {
  order: 10 !important;
  flex: 0 0 auto !important;
  margin-left: auto !important;
  min-height: 44px !important;
  padding: 0 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: var(--hgg-wc-button-radius, var(--hgg-button-radius, 6px)) !important;
  background: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  color: var(--hgg-wc-button-text, #ffffff) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  line-height: 1 !important;
}

.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover,
.woocommerce-message .wc-forward:hover,
.woocommerce-info .wc-forward:hover,
.woocommerce-error .wc-forward:hover {
  background: var(--hgg-wc-button-hover-bg, var(--hgg-primary-dark, #154fad)) !important;
  color: var(--hgg-wc-button-hover-text, #ffffff) !important;
}

/* Classic cart and checkout CTAs. */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart table.cart td.actions .button,
.woocommerce-cart table.cart button.button,
.woocommerce-cart table.cart input.button,
.woocommerce-cart .coupon .button,
.woocommerce-checkout #place_order,
.woocommerce-checkout form.checkout_coupon .button,
.woocommerce-checkout form.login .button,
.woocommerce-page .cart-collaterals .wc-proceed-to-checkout a.checkout-button {
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: var(--hgg-wc-button-radius, var(--hgg-button-radius, 6px)) !important;
  background: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  color: var(--hgg-wc-button-text, #ffffff) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart table.cart td.actions .button:hover,
.woocommerce-cart table.cart button.button:hover,
.woocommerce-cart table.cart input.button:hover,
.woocommerce-cart .coupon .button:hover,
.woocommerce-checkout #place_order:hover,
.woocommerce-checkout form.checkout_coupon .button:hover,
.woocommerce-checkout form.login .button:hover,
.woocommerce-page .cart-collaterals .wc-proceed-to-checkout a.checkout-button:hover {
  background: var(--hgg-wc-button-hover-bg, var(--hgg-primary-dark, #154fad)) !important;
  color: var(--hgg-wc-button-hover-text, #ffffff) !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-page .cart-collaterals .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout #place_order {
  width: 100% !important;
  min-height: 52px !important;
  font-size: 1rem !important;
}

.woocommerce-cart table.cart td.actions,
.woocommerce-cart table.cart .actions {
  padding-top: 18px !important;
}

.woocommerce-cart .coupon {
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

.woocommerce-cart .coupon .input-text,
.woocommerce-checkout form.checkout_coupon input.input-text {
  min-height: 44px !important;
  border-radius: var(--hgg-wc-button-radius, var(--hgg-button-radius, 6px)) !important;
  border: 1px solid rgba(23, 32, 51, .16) !important;
  padding: 0 14px !important;
}

/* WooCommerce Cart/Checkout Blocks. */
.wp-block-woocommerce-cart .wc-block-components-button,
.wp-block-woocommerce-checkout .wc-block-components-button,
.wc-block-components-button,
.wc-block-cart__submit-button,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button,
.wc-block-components-checkout-place-order-button {
  min-height: 48px !important;
  border: 0 !important;
  border-radius: var(--hgg-wc-button-radius, var(--hgg-button-radius, 6px)) !important;
  background: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  color: var(--hgg-wc-button-text, #ffffff) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.wp-block-woocommerce-cart .wc-block-components-button:hover,
.wp-block-woocommerce-checkout .wc-block-components-button:hover,
.wc-block-components-button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:hover,
.wc-block-components-checkout-place-order-button:hover {
  background: var(--hgg-wc-button-hover-bg, var(--hgg-primary-dark, #154fad)) !important;
  color: var(--hgg-wc-button-hover-text, #ffffff) !important;
}

.wc-block-components-notice-banner,
.wp-block-woocommerce-cart .wc-block-components-notice-banner,
.wp-block-woocommerce-checkout .wc-block-components-notice-banner {
  border: 1px solid rgba(23, 32, 51, .10) !important;
  border-left: 4px solid var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  border-radius: var(--hgg-content-radius, var(--hgg-radius, 16px)) !important;
  background: var(--hgg-surface, #ffffff) !important;
  color: var(--hgg-text, #172033) !important;
  box-shadow: 0 16px 40px rgba(17, 34, 68, .08) !important;
}

.wc-block-components-notice-banner > .wc-block-components-notice-banner__content .wc-forward,
.wc-block-components-notice-banner > .wc-block-components-notice-banner__content .button {
  border-radius: var(--hgg-wc-button-radius, var(--hgg-button-radius, 6px)) !important;
  background: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  color: var(--hgg-wc-button-text, #ffffff) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

@media (max-width: 767px) {
  .woocommerce-notices-wrapper,
  .woocommerce .woocommerce-notices-wrapper,
  .woocommerce-page .woocommerce-notices-wrapper {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .woocommerce-message,
  .woocommerce-info,
  .woocommerce-error {
    align-items: flex-start !important;
    padding: 14px !important;
  }

  .woocommerce-message .button,
  .woocommerce-info .button,
  .woocommerce-error .button,
  .woocommerce-message .wc-forward,
  .woocommerce-info .wc-forward,
  .woocommerce-error .wc-forward {
    flex: 1 0 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
  }

  .woocommerce-cart .coupon,
  .woocommerce-cart .coupon .input-text,
  .woocommerce-cart .coupon .button,
  .woocommerce-cart table.cart td.actions .button,
  .woocommerce-cart table.cart button.button,
  .woocommerce-cart table.cart input.button {
    width: 100% !important;
  }
}

/* v35: Breadcrumb final containment and spacing reset.
 * Avoid WooCommerce/default breadcrumb margins creating the yellow internal spacer seen
 * in DevTools. The bar owns only the external separation; the nav owns only its row
 * content and horizontal breathing room.
 */
body.single-product .huuguu-global-breadcrumb-bar,
body.woocommerce-page .huuguu-global-breadcrumb-bar,
body.woocommerce .huuguu-global-breadcrumb-bar {
  padding: 0 !important;
  margin-top: 0 !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
  margin-bottom: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
body.single-product .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
body.single-product .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready,
body.woocommerce-page .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
body.woocommerce-page .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready,
body.woocommerce .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
body.woocommerce .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-top: var(--hgg-wc-breadcrumb-row-pad-y, 8px) !important;
  padding-bottom: var(--hgg-wc-breadcrumb-row-pad-y, 8px) !important;
  padding-left: var(--hgg-breadcrumb-pad-x, var(--hgg-wc-breadcrumb-pad-x, 12px)) !important;
  padding-right: var(--hgg-breadcrumb-pad-x, var(--hgg-wc-breadcrumb-pad-x, 12px)) !important;
  min-height: 0 !important;
  line-height: 1.35 !important;
  box-sizing: border-box !important;
}
@media (max-width: 1100px) {
  body.single-product .huuguu-global-breadcrumb-bar,
  body.woocommerce-page .huuguu-global-breadcrumb-bar,
  body.woocommerce .huuguu-global-breadcrumb-bar {
    margin-bottom: var(--hgg-breadcrumb-margin-bottom, 0px) !important;
  }
  body.single-product .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
  body.single-product .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready,
  body.woocommerce-page .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
  body.woocommerce-page .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready,
  body.woocommerce .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
  body.woocommerce .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready {
    margin: 0 auto !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    max-width: 100% !important;
  }
}

/* v36: Breadcrumb color isolation.
 * Keep the breadcrumb independent from generic content link rules and from Woo/content hover colors.
 * Uses the primary menu hover color by default when there is no dedicated breadcrumb hover control.
 */
.huuguu-global-breadcrumb-bar,
body .huuguu-global-breadcrumb-bar {
  background: var(--hgg-breadcrumb-bg, var(--hgg-wc-breadcrumb-bg, #f6f7fb)) !important;
  color: var(--hgg-breadcrumb-text, var(--hgg-wc-breadcrumb-text, #475569)) !important;
}

body:not(.elementor-page) .site-main .huuguu-global-breadcrumb-bar a,
body:not(.elementor-page) .site-main .entry-content .huuguu-global-breadcrumb-bar a,
body:not(.elementor-page) .site-main .wp-block-post-content .huuguu-global-breadcrumb-bar a,
body .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb a,
body .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready a,
body .huuguu-global-breadcrumb-bar a {
  color: var(--hgg-breadcrumb-text, var(--hgg-wc-breadcrumb-text, #475569)) !important;
  text-decoration: none !important;
}

body:not(.elementor-page) .site-main .huuguu-global-breadcrumb-bar a:hover,
body:not(.elementor-page) .site-main .huuguu-global-breadcrumb-bar a:focus-visible,
body:not(.elementor-page) .site-main .entry-content .huuguu-global-breadcrumb-bar a:hover,
body:not(.elementor-page) .site-main .entry-content .huuguu-global-breadcrumb-bar a:focus-visible,
body:not(.elementor-page) .site-main .wp-block-post-content .huuguu-global-breadcrumb-bar a:hover,
body:not(.elementor-page) .site-main .wp-block-post-content .huuguu-global-breadcrumb-bar a:focus-visible,
body .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb a:hover,
body .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb a:focus-visible,
body .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready a:hover,
body .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready a:focus-visible,
body .huuguu-global-breadcrumb-bar a:hover,
body .huuguu-global-breadcrumb-bar a:focus-visible {
  color: var(--hgg-menu-link-hover, var(--hgg-breadcrumb-current, var(--hgg-wc-breadcrumb-current, #1f2937))) !important;
  text-decoration: underline !important;
  text-underline-offset: .18em !important;
}

body .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-current,
body .huuguu-global-breadcrumb-bar .breadcrumb-current,
body .huuguu-global-breadcrumb-bar [aria-current="page"] {
  color: var(--hgg-breadcrumb-current, var(--hgg-wc-breadcrumb-current, #1f2937)) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

body .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-sep {
  color: color-mix(in srgb, var(--hgg-breadcrumb-text, var(--hgg-wc-breadcrumb-text, #475569)) 70%, transparent) !important;
}

/* v38: Woo archive/taxonomy full-width hardening, toolbar polish and cart/checkout button isolation.
 * This layer intentionally comes last because legacy Woo rules still contain older 1240px constraints.
 */
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar,
body.woocommerce-shop.huuguu-wc-archive-layout-full_sidebar,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar,
body.post-type-archive-product.huuguu-wc-archive-layout-full_sidebar,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_sidebar,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_sidebar,
body.woocommerce-page.huuguu-wc-archive-layout-full_no_sidebar,
body.woocommerce-page.huuguu-wc-archive-layout-full_sidebar,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_no_sidebar,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_sidebar {
  --hgg-wc-loop-content-width: 100%;
}

body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .site-main,
body.woocommerce-shop.huuguu-wc-archive-layout-full_sidebar .site-main,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .site-main,
body.post-type-archive-product.huuguu-wc-archive-layout-full_sidebar .site-main,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_sidebar .site-main,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_sidebar .site-main,
body.woocommerce-page.huuguu-wc-archive-layout-full_no_sidebar .site-main,
body.woocommerce-page.huuguu-wc-archive-layout-full_sidebar .site-main,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_sidebar .site-main,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner,
body.woocommerce-shop.huuguu-wc-archive-layout-full_sidebar .site-main-inner,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner,
body.post-type-archive-product.huuguu-wc-archive-layout-full_sidebar .site-main-inner,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner,
body.woocommerce-page.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner,
body.woocommerce-page.huuguu-wc-archive-layout-full_sidebar .site-main-inner,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-full_sidebar .site-main-inner > .huuguu-content-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-full_sidebar .site-main-inner > .huuguu-content-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner > .huuguu-content-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner > .huuguu-content-wrap,
body.woocommerce-page.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.woocommerce-page.huuguu-wc-archive-layout-full_sidebar .site-main-inner > .huuguu-content-wrap,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner > .huuguu-content-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .huuguu-content-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-full_sidebar .huuguu-content-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .huuguu-content-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-full_sidebar .huuguu-content-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-content-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-content-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-content-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-content-wrap,
body.woocommerce-page.huuguu-wc-archive-layout-full_no_sidebar .huuguu-content-wrap,
body.woocommerce-page.huuguu-wc-archive-layout-full_sidebar .huuguu-content-wrap,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-content-wrap,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-content-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-full_sidebar .huuguu-woocommerce-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-full_sidebar .huuguu-woocommerce-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-woocommerce-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-woocommerce-wrap,
body.woocommerce-page.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.woocommerce-page.huuguu-wc-archive-layout-full_sidebar .huuguu-woocommerce-wrap,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.woocommerce-page.huuguu-wc-taxonomy-layout-full_sidebar .huuguu-woocommerce-wrap {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-contained_sidebar .huuguu-woocommerce-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_sidebar .huuguu-woocommerce-wrap {
  width: min(100% - 24px, var(--hgg-wc-archive-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-wc-archive-container, var(--hgg-container, 1240px)) !important;
  margin-inline: auto !important;
}

body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_sidebar .huuguu-woocommerce-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_sidebar .huuguu-woocommerce-wrap {
  width: min(100% - 24px, var(--hgg-wc-taxonomy-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-wc-taxonomy-container, var(--hgg-container, 1240px)) !important;
  margin-inline: auto !important;
}

body.woocommerce-shop .huuguu-woocommerce-wrap,
body.post-type-archive-product .huuguu-woocommerce-wrap,
body.tax-product_cat .huuguu-woocommerce-wrap,
body.tax-product_tag .huuguu-woocommerce-wrap {
  box-sizing: border-box !important;
}

body.woocommerce-shop .hgg-loop-toolbar,
body.post-type-archive-product .hgg-loop-toolbar,
body.tax-product_cat .hgg-loop-toolbar,
body.tax-product_tag .hgg-loop-toolbar {
  width: 100% !important;
  max-width: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: clamp(14px, 2vw, 28px) !important;
  margin: 0 0 clamp(24px, 3vw, 40px) !important;
  padding: clamp(12px, 1.5vw, 18px) 0 !important;
  border-bottom: 1px solid rgba(23,32,51,.08) !important;
}

body.woocommerce-shop .hgg-loop-toolbar .woocommerce-result-count,
body.post-type-archive-product .hgg-loop-toolbar .woocommerce-result-count,
body.tax-product_cat .hgg-loop-toolbar .woocommerce-result-count,
body.tax-product_tag .hgg-loop-toolbar .woocommerce-result-count {
  margin: 0 !important;
  color: var(--hgg-muted, #5d6781) !important;
  font-size: .98rem !important;
  line-height: 1.35 !important;
}

body.woocommerce-shop .hgg-loop-toolbar .woocommerce-ordering,
body.post-type-archive-product .hgg-loop-toolbar .woocommerce-ordering,
body.tax-product_cat .hgg-loop-toolbar .woocommerce-ordering,
body.tax-product_tag .hgg-loop-toolbar .woocommerce-ordering {
  margin: 0 !important;
  float: none !important;
  flex: 0 1 320px !important;
  max-width: 100% !important;
}

body.woocommerce-shop .hgg-loop-toolbar .orderby,
body.post-type-archive-product .hgg-loop-toolbar .orderby,
body.tax-product_cat .hgg-loop-toolbar .orderby,
body.tax-product_tag .hgg-loop-toolbar .orderby {
  width: 100% !important;
  min-height: 44px !important;
  padding: 0 42px 0 14px !important;
  border: 1px solid rgba(23,32,51,.16) !important;
  border-radius: var(--hgg-wc-button-radius, 6px) !important;
  background-color: #fff !important;
  color: var(--hgg-text, #172033) !important;
  font: inherit !important;
  box-shadow: 0 10px 24px rgba(17,34,68,.06) !important;
}

.woocommerce a.checkout-button,
.woocommerce-page a.checkout-button,
.woocommerce .cart_totals .checkout-button,
.woocommerce-page .cart_totals .checkout-button,
.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order,
.woocommerce button.button,
.woocommerce a.button,
.wc-block-cart__submit-button,
.wp-block-woocommerce-cart .wc-block-components-button,
.wp-block-woocommerce-checkout .wc-block-components-button,
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button {
  background: var(--hgg-wc-button-bg, #246de8) !important;
  color: var(--hgg-wc-button-text, #fff) !important;
  border: 0 !important;
  border-radius: var(--hgg-wc-button-radius, 6px) !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .5rem !important;
  padding: 0 1.25rem !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.woocommerce a.checkout-button:hover,
.woocommerce-page a.checkout-button:hover,
.woocommerce .cart_totals .checkout-button:hover,
.woocommerce-page .cart_totals .checkout-button:hover,
.woocommerce #payment #place_order:hover,
.woocommerce-page #payment #place_order:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.wc-block-cart__submit-button:hover,
.wp-block-woocommerce-cart .wc-block-components-button:hover,
.wp-block-woocommerce-checkout .wc-block-components-button:hover,
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:hover {
  background: var(--hgg-wc-button-hover-bg, var(--hgg-wc-button-bg, #154fad)) !important;
  color: var(--hgg-wc-button-hover-text, var(--hgg-wc-button-text, #fff)) !important;
  text-decoration: none !important;
}

body:not(.elementor-page) .site-main a.checkout-button,
body:not(.elementor-page) .site-main a.button,
body:not(.elementor-page) .site-main .wc-block-components-button,
body:not(.elementor-page) .site-main .wp-block-button__link {
  text-decoration: none !important;
}

@media (max-width: 782px) {
  body.woocommerce-shop .hgg-loop-toolbar,
  body.post-type-archive-product .hgg-loop-toolbar,
  body.tax-product_cat .hgg-loop-toolbar,
  body.tax-product_tag .hgg-loop-toolbar {
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  body.woocommerce-shop .hgg-loop-toolbar .woocommerce-ordering,
  body.post-type-archive-product .hgg-loop-toolbar .woocommerce-ordering,
  body.tax-product_cat .hgg-loop-toolbar .woocommerce-ordering,
  body.tax-product_tag .hgg-loop-toolbar .woocommerce-ordering {
    flex: 1 1 auto !important;
    width: 100% !important;
  }
}

/* Huuguu v39 — Woo loop badge split + responsive containment hardening */
body.woocommerce-shop,
body.post-type-archive-product,
body.tax-product_cat,
body.tax-product_tag,
body.woocommerce-page {
  overflow-x: clip;
}

body.woocommerce-shop .site-main,
body.post-type-archive-product .site-main,
body.tax-product_cat .site-main,
body.tax-product_tag .site-main,
body.woocommerce-shop .site-main-inner,
body.post-type-archive-product .site-main-inner,
body.tax-product_cat .site-main-inner,
body.tax-product_tag .site-main-inner,
body.woocommerce-shop .huuguu-woocommerce-wrap,
body.post-type-archive-product .huuguu-woocommerce-wrap,
body.tax-product_cat .huuguu-woocommerce-wrap,
body.tax-product_tag .huuguu-woocommerce-wrap,
body.woocommerce-shop .huuguu-woocommerce-primary,
body.post-type-archive-product .huuguu-woocommerce-primary,
body.tax-product_cat .huuguu-woocommerce-primary,
body.tax-product_tag .huuguu-woocommerce-primary {
  box-sizing: border-box !important;
  min-width: 0 !important;
}

body.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner,
body.huuguu-wc-archive-layout-full_sidebar .site-main-inner,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner,
body.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner {
  width: 100% !important;
  max-width: none !important;
}

body.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner > .huuguu-woocommerce-wrap,
body.huuguu-wc-archive-layout-full_sidebar .site-main-inner > .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner > .huuguu-woocommerce-wrap,
body.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner > .huuguu-woocommerce-wrap,
body.huuguu-wc-archive-layout-full_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-archive-layout-full_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-full_no_sidebar .site-main-inner > .huuguu-content-wrap,
body.huuguu-wc-taxonomy-layout-full_sidebar .site-main-inner > .huuguu-content-wrap {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.woocommerce-shop .huuguu-woocommerce-primary,
body.post-type-archive-product .huuguu-woocommerce-primary,
body.tax-product_cat .huuguu-woocommerce-primary,
body.tax-product_tag .huuguu-woocommerce-primary {
  width: 100% !important;
  max-width: none !important;
}

body.woocommerce-shop .hgg-loop-toolbar,
body.post-type-archive-product .hgg-loop-toolbar,
body.tax-product_cat .hgg-loop-toolbar,
body.tax-product_tag .hgg-loop-toolbar {
  width: 100% !important;
  min-width: 0 !important;
  padding: clamp(14px, 1.4vw, 18px) 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(23, 32, 51, .08) !important;
}

body.woocommerce-shop .hgg-loop-toolbar .woocommerce-result-count,
body.post-type-archive-product .hgg-loop-toolbar .woocommerce-result-count,
body.tax-product_cat .hgg-loop-toolbar .woocommerce-result-count,
body.tax-product_tag .hgg-loop-toolbar .woocommerce-result-count {
  color: var(--hgg-muted, #5d6781) !important;
  font-weight: 500 !important;
}

body.woocommerce-shop .hgg-loop-toolbar .orderby,
body.post-type-archive-product .hgg-loop-toolbar .orderby,
body.tax-product_cat .hgg-loop-toolbar .orderby,
body.tax-product_tag .hgg-loop-toolbar .orderby {
  border-radius: var(--hgg-input-radius, var(--hgg-wc-button-radius, 10px)) !important;
  box-shadow: 0 10px 26px rgba(17, 34, 68, .05) !important;
}





@media (max-width: 1024px) {
  body.woocommerce-shop .huuguu-woocommerce-primary,
  body.post-type-archive-product .huuguu-woocommerce-primary,
  body.tax-product_cat .huuguu-woocommerce-primary,
  body.tax-product_tag .huuguu-woocommerce-primary {
    padding-left: var(--hgg-spacing-content_woocommerce-tablet-left, 0px) !important;
    padding-right: var(--hgg-spacing-content_woocommerce-tablet-right, 0px) !important;
  }
}

@media (max-width: 700px) {
  body.woocommerce-shop .huuguu-woocommerce-primary,
  body.post-type-archive-product .huuguu-woocommerce-primary,
  body.tax-product_cat .huuguu-woocommerce-primary,
  body.tax-product_tag .huuguu-woocommerce-primary {
    padding-left: var(--hgg-spacing-content_woocommerce-mobile-left, 0px) !important;
    padding-right: var(--hgg-spacing-content_woocommerce-mobile-right, 0px) !important;
  }

  body.woocommerce-shop .hgg-loop-toolbar,
  body.post-type-archive-product .hgg-loop-toolbar,
  body.tax-product_cat .hgg-loop-toolbar,
  body.tax-product_tag .hgg-loop-toolbar {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: var(--hgg-wc-toolbar-mobile-gap, 20px) !important;
  }

  body.woocommerce-shop .hgg-loop-toolbar .woocommerce-ordering,
  body.post-type-archive-product .hgg-loop-toolbar .woocommerce-ordering,
  body.tax-product_cat .hgg-loop-toolbar .woocommerce-ordering,
  body.tax-product_tag .hgg-loop-toolbar .woocommerce-ordering,
  body.woocommerce-shop .hgg-loop-toolbar .orderby,
  body.post-type-archive-product .hgg-loop-toolbar .orderby,
  body.tax-product_cat .hgg-loop-toolbar .orderby,
  body.tax-product_tag .hgg-loop-toolbar .orderby {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}

/* v40 — WooCommerce phase 2 final fixes. */
body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar #primary,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar #primary,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar #primary,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar #primary,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar #primary,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar #primary,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar #primary,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar #primary,
body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar .content-area,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .content-area,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar .content-area,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .content-area,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar .content-area,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .content-area,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar .content-area,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .content-area {
  width: 100% !important;
  max-width: 100% !important;
  flex: 1 1 100% !important;
  min-width: 0 !important;
}

body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar #secondary,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar #secondary,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar #secondary,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar #secondary,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar #secondary,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar #secondary,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar #secondary,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar #secondary {
  display: none !important;
}

body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .site-content,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .site-content,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .site-content,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .site-content {
  max-width: none !important;
  width: 100% !important;
}

body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar .site-content,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar .site-content {
  max-width: var(--hgg-wc-archive-container, 1240px) !important;
  width: min(100%, var(--hgg-wc-archive-container, 1240px)) !important;
}

body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar .site-content,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar .site-content {
  max-width: var(--hgg-wc-taxonomy-container, 1240px) !important;
  width: min(100%, var(--hgg-wc-taxonomy-container, 1240px)) !important;
}

.woocommerce .wc-block-cart__submit-button,
.woocommerce-page .wc-block-cart__submit-button,
.wc-block-cart__submit-button,
.wc-block-cart__submit-button.contained,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-cart__submit-button,
.wc-block-components-button,
.wc-block-components-button.wp-element-button,
.wc-block-checkout__actions_row .wc-block-components-button,
.woocommerce a.checkout-button,
.woocommerce-page a.checkout-button,
.woocommerce button.button,
.woocommerce-page button.button,
.woocommerce a.button,
.woocommerce-page a.button {
  background: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  color: var(--hgg-wc-button-text, #fff) !important;
  border: 0 !important;
  border-radius: var(--hgg-wc-button-radius, 6px) !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .45em !important;
  padding: 0 1.25rem !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  box-shadow: none !important;
}

.wc-block-cart__submit-button .wc-block-components-button__text,
.wc-block-components-button .wc-block-components-button__text,
.woocommerce a.checkout-button,
.woocommerce-page a.checkout-button {
  color: inherit !important;
  text-decoration: none !important;
}

.woocommerce .wc-block-cart__submit-button:hover,
.woocommerce-page .wc-block-cart__submit-button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-button:hover,
.wc-block-checkout__actions_row .wc-block-components-button:hover,
.woocommerce a.checkout-button:hover,
.woocommerce-page a.checkout-button:hover,
.woocommerce button.button:hover,
.woocommerce-page button.button:hover,
.woocommerce a.button:hover,
.woocommerce-page a.button:hover {
  background: var(--hgg-wc-button-hover-bg, var(--hgg-primary-dark, #154fad)) !important;
  color: var(--hgg-wc-button-hover-text, #fff) !important;
  text-decoration: none !important;
}

body:not(.elementor-page) .site-main .entry-content .wc-block-components-button:not(.is-link),
body:not(.elementor-page) .site-main .entry-content .wc-block-cart__submit-button,
body:not(.elementor-page) .site-main .entry-content a.checkout-button,
body:not(.elementor-page) .site-main .entry-content a.button {
  text-decoration: none !important;
}

/* Single product gallery thumbnails: one row, 4 visible items, arrows, hover preview. */
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel {
  --hgg-wc-thumb-gap: 12px;
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 36px;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin-top: 14px;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-viewport {
  overflow: hidden;
  width: 100%;
}

body.single-product .woocommerce-product-gallery .flex-control-thumbs {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: var(--hgg-wc-thumb-gap) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  list-style: none !important;
}

body.single-product .woocommerce-product-gallery .flex-control-thumbs li {
  flex: 0 0 calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  width: calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .woocommerce-product-gallery .flex-control-thumbs img {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: clamp(8px, 1vw, 14px) !important;
  opacity: .58 !important;
  cursor: pointer !important;
  transition: opacity .18s ease, transform .18s ease, box-shadow .18s ease !important;
}

body.single-product .woocommerce-product-gallery .flex-control-thumbs img:hover,
body.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
body.single-product .woocommerce-product-gallery .flex-control-thumbs img.is-hover-active {
  opacity: 1 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 24px rgba(17,34,68,.16) !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow {
  width: 36px;
  height: 36px;
  border: 1px solid rgba(23,32,51,.14);
  border-radius: 999px;
  background: #fff;
  color: var(--hgg-text, #172033);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
  box-shadow: 0 8px 20px rgba(17,34,68,.10);
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:hover {
  background: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8));
  color: var(--hgg-wc-button-text, #fff);
}

@media (max-width: 767px) {
  body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel {
    grid-template-columns: 32px minmax(0, 1fr) 32px;
    gap: 6px;
  }

  body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow {
    width: 32px;
    height: 32px;
    font-size: 21px;
  }
}

/* Back to top. */
.hgg-back-to-top {
  position: fixed;
  bottom: var(--hgg-btt-bottom, 24px);
  right: var(--hgg-btt-right, 24px);
  left: var(--hgg-btt-left, auto);
  z-index: 999;
  width: var(--hgg-btt-size, 44px);
  height: var(--hgg-btt-size, 44px);
  border: 0;
  border-radius: var(--hgg-btt-radius, 999px);
  background: var(--hgg-btt-bg, var(--hgg-primary, #246de8));
  color: var(--hgg-btt-color, #fff);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transform: translateY(10px);
  transition: opacity .2s ease, transform .2s ease, background .2s ease, color .2s ease;
  box-shadow: 0 14px 34px rgba(17,34,68,.22);
}

.hgg-back-to-top:hover,
.hgg-back-to-top:focus-visible {
  background: var(--hgg-btt-hover-bg, var(--hgg-primary-dark, #154fad));
  color: var(--hgg-btt-hover-color, #fff);
}

.hgg-back-to-top.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.hgg-back-to-top svg {
  width: 20px;
  height: 20px;
  display: block;
}

/* v41: keep WooCommerce block checkout/cart buttons isolated from regular content-link styles. */
body:not(.elementor-page) .site-main .entry-content a.wc-block-components-button,
body:not(.elementor-page) .site-main .entry-content a.wc-block-cart__submit-button,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-components-button,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-cart__submit-button,
body:not(.elementor-page) .site-main .entry-content .wc-block-components-button,
body:not(.elementor-page) .site-main .wp-block-post-content .wc-block-components-button,
.wc-block-components-button,
.wc-block-components-button:visited,
.wc-block-cart__submit-button,
.wc-block-cart__submit-button:visited {
  background: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  color: var(--hgg-wc-button-text, #fff) !important;
  text-decoration: none !important;
  border-color: transparent !important;
}

body:not(.elementor-page) .site-main .entry-content a.wc-block-components-button:hover,
body:not(.elementor-page) .site-main .entry-content a.wc-block-cart__submit-button:hover,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-components-button:hover,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-cart__submit-button:hover,
body:not(.elementor-page) .site-main .entry-content .wc-block-components-button:hover,
body:not(.elementor-page) .site-main .wp-block-post-content .wc-block-components-button:hover,
.wc-block-components-button:hover,
.wc-block-cart__submit-button:hover {
  background: var(--hgg-wc-button-hover-bg, var(--hgg-primary-dark, #154fad)) !important;
  color: var(--hgg-wc-button-hover-text, #fff) !important;
  text-decoration: none !important;
}

.wc-block-components-button .wc-block-components-button__text,
.wc-block-cart__submit-button .wc-block-components-button__text,
a.wc-block-components-button .wc-block-components-button__text,
a.wc-block-cart__submit-button .wc-block-components-button__text {
  color: inherit !important;
  text-decoration: none !important;
}

/* v42: product gallery thumbnails must behave as an overlay carousel, not as a second grid of rows. */
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel {
  --hgg-wc-thumb-gap: 12px;
  position: relative !important;
  display: block !important;
  width: 100% !important;
  margin-top: 14px !important;
  padding: 0 44px !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-viewport,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-viewport {
  width: 100% !important;
  overflow: hidden !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: var(--hgg-wc-thumb-gap) !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  list-style: none !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs li,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs li {
  flex: 0 0 calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  width: calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  max-width: calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: max(calc(var(--hgg-wc-single-card-radius, 24px) - 8px), 8px) !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow {
  position: absolute !important;
  top: 50% !important;
  z-index: 5 !important;
  width: 36px !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
  border: 1px solid rgba(23,32,51,.14) !important;
  border-radius: 999px !important;
  background: var(--hgg-surface, #fff) !important;
  color: var(--hgg-text, #172033) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  box-shadow: 0 10px 26px rgba(17,34,68,.14) !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span {
  display: block !important;
  font-size: 24px !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--prev,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--prev {
  left: 0 !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--next,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--next {
  right: 0 !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:hover,
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:focus-visible,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:hover,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:focus-visible {
  background: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  color: var(--hgg-wc-button-text, #fff) !important;
}

@media (max-width: 767px) {
  body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel,
  body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel {
    --hgg-wc-thumb-gap: 8px;
    padding: 0 34px !important;
  }

  body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow,
  body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow {
    width: 30px !important;
    height: 30px !important;
  }

  body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span,
  body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span {
    font-size: 20px !important;
  }
}

/* v42: back to top must be visible on the public front when enabled, not only inside Customizer preview. */
.hgg-back-to-top {
  z-index: 99999 !important;
}

.hgg-back-to-top.is-visible {
  display: inline-flex !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* v43: robust single gallery carousel. Prevent loose rows before JS finishes, overlay arrows on edge thumbnails, and use full-size image on hover. */
body.single-product .woocommerce-product-gallery:not(.hgg-wc-thumbs-carousel-ready) > .flex-control-thumbs,
body.woocommerce-page.single-product .woocommerce-product-gallery:not(.hgg-wc-thumbs-carousel-ready) > .flex-control-thumbs{display:flex!important;flex-wrap:nowrap!important;gap:12px!important;width:100%!important;max-width:100%!important;margin:14px 0 0!important;padding:0!important;overflow:hidden!important;list-style:none!important}
body.single-product .woocommerce-product-gallery:not(.hgg-wc-thumbs-carousel-ready) > .flex-control-thumbs li,
body.woocommerce-page.single-product .woocommerce-product-gallery:not(.hgg-wc-thumbs-carousel-ready) > .flex-control-thumbs li{flex:0 0 calc((100% - 36px)/4)!important;width:calc((100% - 36px)/4)!important;margin:0!important;padding:0!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel{--hgg-wc-thumb-gap:12px;position:relative!important;display:block!important;width:100%!important;max-width:100%!important;margin-top:14px!important;padding:0!important;overflow:visible!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-viewport,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-viewport{width:100%!important;max-width:100%!important;overflow:hidden!important;border-radius:max(calc(var(--hgg-wc-single-card-radius,24px) - 8px),8px)!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs{display:flex!important;flex-wrap:nowrap!important;gap:var(--hgg-wc-thumb-gap)!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;overflow:visible!important;transform:translateZ(0);list-style:none!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs li,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs li{flex:0 0 calc((100% - (var(--hgg-wc-thumb-gap)*3))/4)!important;width:calc((100% - (var(--hgg-wc-thumb-gap)*3))/4)!important;min-width:calc((100% - (var(--hgg-wc-thumb-gap)*3))/4)!important;max-width:calc((100% - (var(--hgg-wc-thumb-gap)*3))/4)!important;margin:0!important;padding:0!important;display:block!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs li.hgg-wc-thumb-duplicate,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs li.hgg-wc-thumb-duplicate{display:none!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img,
body.single-product .woocommerce-product-gallery:not(.hgg-wc-thumbs-carousel-ready) > .flex-control-thumbs img,
body.woocommerce-page.single-product .woocommerce-product-gallery:not(.hgg-wc-thumbs-carousel-ready) > .flex-control-thumbs img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:1/1!important;object-fit:cover!important;border-radius:max(calc(var(--hgg-wc-single-card-radius,24px) - 8px),8px)!important;opacity:.62!important;cursor:pointer!important;transition:opacity .18s ease,transform .18s ease,box-shadow .18s ease!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img:hover,
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img.flex-active,
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img.is-hover-active,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img:hover,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img.flex-active,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img.is-hover-active{opacity:1!important;transform:translateY(-1px)!important;box-shadow:0 10px 24px rgba(17,34,68,.16)!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow{position:absolute!important;top:50%!important;z-index:9!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;margin:0!important;padding:0!important;transform:translateY(-50%)!important;border:1px solid rgba(23,32,51,.16)!important;border-radius:999px!important;background:rgba(255,255,255,.94)!important;color:var(--hgg-text,#172033)!important;display:inline-grid!important;place-items:center!important;line-height:1!important;box-shadow:0 10px 26px rgba(17,34,68,.16)!important;backdrop-filter:blur(8px)}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span{display:block!important;width:1em!important;height:1em!important;font-size:25px!important;line-height:.82!important;text-align:center!important;transform:none!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--prev,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--prev{left:10px!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--next,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--next{right:10px!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:disabled,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:disabled{opacity:.45!important;cursor:default!important}
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:hover:not(:disabled),
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:focus-visible:not(:disabled),
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:hover:not(:disabled),
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:focus-visible:not(:disabled){background:var(--hgg-wc-button-bg,var(--hgg-primary,#246de8))!important;color:var(--hgg-wc-button-text,#fff)!important}
@media(max-width:767px){body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel,body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel{--hgg-wc-thumb-gap:8px}body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow,body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important}body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--prev,body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--prev{left:6px!important}body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--next,body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--next{right:6px!important}body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span,body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span{font-size:21px!important}}

/* Huuguu v44 WooCommerce finishing layer: scoped buttons, full primary, compact cards, image radii. */
body.hgg-wc-force-primary-full .huuguu-content-wrap,
body.hgg-wc-no-sidebar .huuguu-content-wrap,
body.woocommerce-shop.no-sidebar .huuguu-content-wrap,
body.post-type-archive-product.no-sidebar .huuguu-content-wrap,
body.tax-product_cat.no-sidebar .huuguu-content-wrap,
body.tax-product_tag.no-sidebar .huuguu-content-wrap,
body.hgg-wc-force-primary-full .huuguu-woocommerce-wrap,
body.hgg-wc-no-sidebar .huuguu-woocommerce-wrap {
  grid-template-columns: minmax(0, 1fr) !important;
}
body.hgg-wc-force-primary-full .huuguu-primary,
body.hgg-wc-force-primary-full .huuguu-woocommerce-primary,
body.hgg-wc-no-sidebar .huuguu-primary,
body.hgg-wc-no-sidebar .huuguu-woocommerce-primary,
body.woocommerce-shop.no-sidebar .huuguu-primary,
body.post-type-archive-product.no-sidebar .huuguu-primary,
body.tax-product_cat.no-sidebar .huuguu-primary,
body.tax-product_tag.no-sidebar .huuguu-primary {
  width: 100% !important;
  max-width: 100% !important;
  flex: 1 1 100% !important;
  grid-column: 1 / -1 !important;
}
body.hgg-wc-force-primary-full #secondary,
body.hgg-wc-no-sidebar #secondary,
body.woocommerce-shop.no-sidebar #secondary,
body.post-type-archive-product.no-sidebar #secondary,
body.tax-product_cat.no-sidebar #secondary,
body.tax-product_tag.no-sidebar #secondary,
body.hgg-wc-force-primary-full .huuguu-sidebar,
body.hgg-wc-no-sidebar .huuguu-sidebar {
  display: none !important;
}
body.woocommerce-shop .huuguu-woocommerce-wrap--full,
body.post-type-archive-product .huuguu-woocommerce-wrap--full,
body.tax-product_cat .huuguu-woocommerce-wrap--full,
body.tax-product_tag .huuguu-woocommerce-wrap--full {
  width: 100% !important;
  max-width: none !important;
}

/* Single meta links must use the site-level link tokens, not Woo button colors. */
.single-product .product_meta a,
.woocommerce div.product .product_meta a {
  color: var(--hgg-link-color, var(--hgg-link, #007721)) !important;
  text-decoration-thickness: 1px;
  text-underline-offset: .18em;
}
.single-product .product_meta a:hover,
.single-product .product_meta a:focus-visible,
.woocommerce div.product .product_meta a:hover,
.woocommerce div.product .product_meta a:focus-visible {
  color: var(--hgg-link-hover-color, var(--hgg-link-hover, #045F12)) !important;
}



.single-product div.product form.cart .button,
.woocommerce-page.single-product div.product form.cart .button {
  --_hgg-wc-btn-bg: var(--hgg-wc-single-button-bg, var(--hgg-wc-button-bg, #246de8));
  --_hgg-wc-btn-text: var(--hgg-wc-single-button-text, var(--hgg-wc-button-text, #fff));
  --_hgg-wc-btn-hover-bg: var(--hgg-wc-single-button-hover-bg, var(--hgg-wc-button-hover-bg, #154fad));
  --_hgg-wc-btn-hover-text: var(--hgg-wc-single-button-hover-text, var(--hgg-wc-button-hover-text, #fff));
  display: var(--hgg-wc-single-button-display, var(--hgg-wc-button-display-desktop, inline-flex)) !important;
  width: var(--hgg-wc-single-button-width, var(--hgg-wc-button-width-desktop, auto)) !important;
  background: var(--_hgg-wc-btn-bg) !important;
  color: var(--_hgg-wc-btn-text) !important;
  border-radius: var(--hgg-wc-button-radius, 10px) !important;
  text-decoration: none !important;
  align-items: center !important;
  justify-content: center !important;
}
.single-product div.product form.cart .button:hover,
.woocommerce-page.single-product div.product form.cart .button:hover,
.single-product div.product form.cart .button:focus-visible,
.woocommerce-page.single-product div.product form.cart .button:focus-visible {
  background: var(--_hgg-wc-btn-hover-bg) !important;
  color: var(--_hgg-wc-btn-hover-text) !important;
}

.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
  --_hgg-wc-btn-bg: var(--hgg-wc-notice-button-bg, var(--hgg-wc-button-bg, #246de8));
  --_hgg-wc-btn-text: var(--hgg-wc-notice-button-text, var(--hgg-wc-button-text, #fff));
  --_hgg-wc-btn-hover-bg: var(--hgg-wc-notice-button-hover-bg, var(--hgg-wc-button-hover-bg, #154fad));
  --_hgg-wc-btn-hover-text: var(--hgg-wc-notice-button-hover-text, var(--hgg-wc-button-hover-text, #fff));
  display: var(--hgg-wc-notice-button-display, inline-flex) !important;
  width: var(--hgg-wc-notice-button-width, auto) !important;
  background: var(--_hgg-wc-btn-bg) !important;
  color: var(--_hgg-wc-btn-text) !important;
  text-decoration: none !important;
  border-radius: var(--hgg-wc-button-radius, 10px) !important;
  min-height: 40px !important;
  align-items: center !important;
  justify-content: center !important;
}
.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover {
  background: var(--_hgg-wc-btn-hover-bg) !important;
  color: var(--_hgg-wc-btn-hover-text) !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .cart_totals a.checkout-button,
.wc-block-cart__submit-button,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button {
  --_hgg-wc-btn-bg: var(--hgg-wc-cart-button-bg, var(--hgg-wc-button-bg, #246de8));
  --_hgg-wc-btn-text: var(--hgg-wc-cart-button-text, var(--hgg-wc-button-text, #fff));
  --_hgg-wc-btn-hover-bg: var(--hgg-wc-cart-button-hover-bg, var(--hgg-wc-button-hover-bg, #154fad));
  --_hgg-wc-btn-hover-text: var(--hgg-wc-cart-button-hover-text, var(--hgg-wc-button-hover-text, #fff));
  display: var(--hgg-wc-cart-button-display, flex) !important;
  width: var(--hgg-wc-cart-button-width, 100%) !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--_hgg-wc-btn-bg) !important;
  color: var(--_hgg-wc-btn-text) !important;
  border-radius: var(--hgg-wc-button-radius, 10px) !important;
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none !important;
  font-weight: 700 !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .cart_totals a.checkout-button:hover,
.wc-block-cart__submit-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button:hover {
  background: var(--_hgg-wc-btn-hover-bg) !important;
  color: var(--_hgg-wc-btn-hover-text) !important;
}
.wc-block-cart__submit-button .wc-block-components-button__text,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button__text {
  color: inherit !important;
  text-decoration: none !important;
}

.woocommerce-checkout button.button,
.woocommerce-checkout input.button,
.woocommerce-checkout #place_order,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button,
.wc-block-components-checkout-place-order-button {
  --_hgg-wc-btn-bg: var(--hgg-wc-checkout-button-bg, var(--hgg-wc-button-bg, #246de8));
  --_hgg-wc-btn-text: var(--hgg-wc-checkout-button-text, var(--hgg-wc-button-text, #fff));
  --_hgg-wc-btn-hover-bg: var(--hgg-wc-checkout-button-hover-bg, var(--hgg-wc-button-hover-bg, #154fad));
  --_hgg-wc-btn-hover-text: var(--hgg-wc-checkout-button-hover-text, var(--hgg-wc-button-hover-text, #fff));
  display: var(--hgg-wc-checkout-button-display, inline-flex) !important;
  width: var(--hgg-wc-checkout-button-width, auto) !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--_hgg-wc-btn-bg) !important;
  color: var(--_hgg-wc-btn-text) !important;
  border-radius: var(--hgg-wc-button-radius, 10px) !important;
  text-decoration: none !important;
  border: 0 !important;
}
.woocommerce-checkout button.button:hover,
.woocommerce-checkout input.button:hover,
.woocommerce-checkout #place_order:hover,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:hover,
.wc-block-components-checkout-place-order-button:hover {
  background: var(--_hgg-wc-btn-hover-bg) !important;
  color: var(--_hgg-wc-btn-hover-text) !important;
}

.woocommerce-account form.login .button,
.woocommerce-account form.woocommerce-form-login .button {
  --_hgg-wc-btn-bg: var(--hgg-wc-account-login-button-bg, var(--hgg-wc-button-bg, #246de8));
  --_hgg-wc-btn-text: var(--hgg-wc-account-login-button-text, var(--hgg-wc-button-text, #fff));
  --_hgg-wc-btn-hover-bg: var(--hgg-wc-account-login-button-hover-bg, var(--hgg-wc-button-hover-bg, #154fad));
  --_hgg-wc-btn-hover-text: var(--hgg-wc-account-login-button-hover-text, var(--hgg-wc-button-hover-text, #fff));
}
.woocommerce-account form.register .button,
.woocommerce-account form.woocommerce-form-register .button {
  --_hgg-wc-btn-bg: var(--hgg-wc-account-register-button-bg, var(--hgg-wc-button-bg, #246de8));
  --_hgg-wc-btn-text: var(--hgg-wc-account-register-button-text, var(--hgg-wc-button-text, #fff));
  --_hgg-wc-btn-hover-bg: var(--hgg-wc-account-register-button-hover-bg, var(--hgg-wc-button-hover-bg, #154fad));
  --_hgg-wc-btn-hover-text: var(--hgg-wc-account-register-button-hover-text, var(--hgg-wc-button-hover-text, #fff));
}
.woocommerce-lost-password form.lost_reset_password .button {
  --_hgg-wc-btn-bg: var(--hgg-wc-lost-password-button-bg, var(--hgg-wc-button-bg, #246de8));
  --_hgg-wc-btn-text: var(--hgg-wc-lost-password-button-text, var(--hgg-wc-button-text, #fff));
  --_hgg-wc-btn-hover-bg: var(--hgg-wc-lost-password-button-hover-bg, var(--hgg-wc-button-hover-bg, #154fad));
  --_hgg-wc-btn-hover-text: var(--hgg-wc-lost-password-button-hover-text, var(--hgg-wc-button-hover-text, #fff));
}
.woocommerce-account form.login .button,
.woocommerce-account form.woocommerce-form-login .button,
.woocommerce-account form.register .button,
.woocommerce-account form.woocommerce-form-register .button,
.woocommerce-lost-password form.lost_reset_password .button,
.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-address-fields .button,
.woocommerce-account form.edit-account .button {
  display: var(--hgg-wc-account-button-display, inline-flex) !important;
  width: var(--hgg-wc-account-button-width, auto) !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--_hgg-wc-btn-bg, var(--hgg-wc-button-bg, #246de8)) !important;
  color: var(--_hgg-wc-btn-text, var(--hgg-wc-button-text, #fff)) !important;
  border-radius: var(--hgg-wc-button-radius, 10px) !important;
  text-decoration: none !important;
  border: 0 !important;
}
.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-account .woocommerce-address-fields .button:hover,
.woocommerce-account form.edit-account .button:hover,
.woocommerce-account form.login .button:hover,
.woocommerce-account form.register .button:hover,
.woocommerce-lost-password form.lost_reset_password .button:hover {
  background: var(--_hgg-wc-btn-hover-bg, var(--hgg-wc-button-hover-bg, #154fad)) !important;
  color: var(--_hgg-wc-btn-hover-text, var(--hgg-wc-button-hover-text, #fff)) !important;
}
.woocommerce-account .woocommerce-address-fields .button {
  --_hgg-wc-btn-bg: var(--hgg-wc-address-button-bg, var(--hgg-wc-button-bg, #246de8));
  --_hgg-wc-btn-text: var(--hgg-wc-address-button-text, var(--hgg-wc-button-text, #fff));
  --_hgg-wc-btn-hover-bg: var(--hgg-wc-address-button-hover-bg, var(--hgg-wc-button-hover-bg, #154fad));
  --_hgg-wc-btn-hover-text: var(--hgg-wc-address-button-hover-text, var(--hgg-wc-button-hover-text, #fff));
}
.woocommerce-account form.edit-account .button {
  --_hgg-wc-btn-bg: var(--hgg-wc-edit-account-button-bg, var(--hgg-wc-button-bg, #246de8));
  --_hgg-wc-btn-text: var(--hgg-wc-edit-account-button-text, var(--hgg-wc-button-text, #fff));
  --_hgg-wc-btn-hover-bg: var(--hgg-wc-edit-account-button-hover-bg, var(--hgg-wc-button-hover-bg, #154fad));
  --_hgg-wc-btn-hover-text: var(--hgg-wc-edit-account-button-hover-text, var(--hgg-wc-button-hover-text, #fff));
}
.woocommerce-account.woocommerce-orders .woocommerce-info .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button {
  --_hgg-wc-btn-bg: var(--hgg-wc-orders-empty-button-bg, var(--hgg-wc-notice-button-bg, var(--hgg-wc-button-bg, #246de8)));
  --_hgg-wc-btn-text: var(--hgg-wc-orders-empty-button-text, var(--hgg-wc-notice-button-text, var(--hgg-wc-button-text, #fff)));
  --_hgg-wc-btn-hover-bg: var(--hgg-wc-orders-empty-button-hover-bg, var(--hgg-wc-notice-button-hover-bg, var(--hgg-wc-button-hover-bg, #154fad)));
  --_hgg-wc-btn-hover-text: var(--hgg-wc-orders-empty-button-hover-text, var(--hgg-wc-notice-button-hover-text, var(--hgg-wc-button-hover-text, #fff)));
}
.woocommerce-account.woocommerce-downloads .woocommerce-info .button {
  --_hgg-wc-btn-bg: var(--hgg-wc-downloads-empty-button-bg, var(--hgg-wc-notice-button-bg, var(--hgg-wc-button-bg, #246de8)));
  --_hgg-wc-btn-text: var(--hgg-wc-downloads-empty-button-text, var(--hgg-wc-notice-button-text, var(--hgg-wc-button-text, #fff)));
}

/* Prevent the global content-link rule from turning Woo block buttons into underlined text. */
body:not(.elementor-page) .site-main .entry-content a.wc-block-components-button,
body:not(.elementor-page) .site-main .entry-content a.wc-block-cart__submit-button,
body:not(.elementor-page) .site-main .entry-content a.checkout-button,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-components-button,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-cart__submit-button,
body:not(.elementor-page) .site-main .wp-block-post-content a.checkout-button {
  color: var(--hgg-wc-button-text, #fff) !important;
  text-decoration: none !important;
}

/* Lost password is a low-content screen: keep it readable and boxed. */
.woocommerce-lost-password .site-main .entry-content,
.woocommerce-lost-password .woocommerce {
  max-width: min(100%, 760px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}








/* Single gallery radii and carousel arrows. */
.single-product div.product div.images img,
.single-product .woocommerce-product-gallery__image img,
.single-product .huuguu-wc-single-gallery img {
  border-radius: var(--hgg-wc-single-featured-image-radius, var(--hgg-wc-single-card-radius, 18px)) !important;
}
.single-product .flex-control-thumbs img,
.single-product .hgg-wc-gallery-thumbs-carousel img,
.single-product .huuguu-wc-gallery-thumbs img,
.single-product .huuguu-wc-thumb img {
  border-radius: var(--hgg-wc-single-thumb-image-radius, var(--hgg-wc-single-featured-image-radius, 18px)) !important;
}
.single-product .hgg-wc-gallery-thumbs-carousel,
.single-product .huuguu-wc-gallery-thumbs-carousel {
  position: relative !important;
  overflow: hidden !important;
}
.single-product .hgg-wc-gallery-arrow,
.single-product .huuguu-wc-gallery-arrow {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 5 !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  line-height: 1 !important;
}
.single-product .hgg-wc-gallery-arrow--prev,
.single-product .huuguu-wc-gallery-arrow--prev { left: 10px !important; }
.single-product .hgg-wc-gallery-arrow--next,
.single-product .huuguu-wc-gallery-arrow--next { right: 10px !important; }
.single-product .hgg-wc-gallery-arrow svg,
.single-product .huuguu-wc-gallery-arrow svg {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
}

/* Huuguu v45 WooCommerce hardening: block buttons, no-sidebar layout, account nav and compact loop. */
body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-content-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .huuguu-content-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-content-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .huuguu-content-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-content-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-content-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-content-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-content-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-wrap,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-wrap {
  display: block !important;
  grid-template-columns: minmax(0, 1fr) !important;
}
body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-primary,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .huuguu-primary,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-primary,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .huuguu-primary,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-primary,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-primary,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-primary,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-primary,
body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-primary,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-primary,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-woocommerce-primary,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .huuguu-woocommerce-primary,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-primary,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-primary,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-woocommerce-primary,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-woocommerce-primary {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  flex: 1 1 100% !important;
}
body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar #secondary,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar #secondary,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar #secondary,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar #secondary,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar #secondary,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar #secondary,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar #secondary,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar #secondary,
body.woocommerce-shop.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-sidebar,
body.woocommerce-shop.huuguu-wc-archive-layout-full_no_sidebar .huuguu-sidebar,
body.post-type-archive-product.huuguu-wc-archive-layout-contained_no_sidebar .huuguu-sidebar,
body.post-type-archive-product.huuguu-wc-archive-layout-full_no_sidebar .huuguu-sidebar,
body.tax-product_cat.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-sidebar,
body.tax-product_cat.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-sidebar,
body.tax-product_tag.huuguu-wc-taxonomy-layout-contained_no_sidebar .huuguu-sidebar,
body.tax-product_tag.huuguu-wc-taxonomy-layout-full_no_sidebar .huuguu-sidebar {
  display: none !important;
}

/* WooCommerce block buttons: exact Gutenberg markup, protected from global content-link rules. */
body:not(.elementor-page) .site-main .entry-content a.wc-block-components-button.wp-element-button,
body:not(.elementor-page) .site-main .entry-content a.wc-block-components-button.wp-element-button.contained,
body:not(.elementor-page) .site-main .entry-content a.wc-block-cart__submit-button,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-components-button.wp-element-button,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-components-button.wp-element-button.contained,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-cart__submit-button,
.wp-block-woocommerce-cart a.wc-block-components-button.wp-element-button,
.wp-block-woocommerce-cart a.wc-block-cart__submit-button,
.wp-block-woocommerce-proceed-to-checkout-block a.wc-block-components-button.wp-element-button,
a.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained,
a.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button,
.wc-block-checkout__actions_row a.wc-block-components-button,
.wc-block-checkout__actions_row button.wc-block-components-button {
  --_hgg-wc-btn-bg: var(--hgg-wc-cart-button-bg, var(--hgg-wc-checkout-button-bg, var(--hgg-wc-button-bg, #246de8)));
  --_hgg-wc-btn-text: var(--hgg-wc-cart-button-text, var(--hgg-wc-checkout-button-text, var(--hgg-wc-button-text, #fff)));
  --_hgg-wc-btn-hover-bg: var(--hgg-wc-cart-button-hover-bg, var(--hgg-wc-checkout-button-hover-bg, var(--hgg-wc-button-hover-bg, #154fad)));
  --_hgg-wc-btn-hover-text: var(--hgg-wc-cart-button-hover-text, var(--hgg-wc-checkout-button-hover-text, var(--hgg-wc-button-hover-text, #fff)));
  display: var(--hgg-wc-cart-button-display, flex) !important;
  width: var(--hgg-wc-cart-button-width, 100%) !important;
  min-height: 44px !important;
  padding: 0 22px !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: var(--hgg-wc-button-radius, 10px) !important;
  background: var(--_hgg-wc-btn-bg) !important;
  color: var(--_hgg-wc-btn-text) !important;
  box-shadow: none !important;
  text-decoration: none !important;
  text-underline-offset: 0 !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}
body:not(.elementor-page) .site-main .entry-content a.wc-block-components-button.wp-element-button:hover,
body:not(.elementor-page) .site-main .entry-content a.wc-block-components-button.wp-element-button:focus-visible,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-components-button.wp-element-button:hover,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-components-button.wp-element-button:focus-visible,
.wp-block-woocommerce-cart a.wc-block-components-button.wp-element-button:hover,
.wp-block-woocommerce-cart a.wc-block-components-button.wp-element-button:focus-visible,
.wp-block-woocommerce-proceed-to-checkout-block a.wc-block-components-button.wp-element-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block a.wc-block-components-button.wp-element-button:focus-visible,
a.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained:hover,
a.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained:focus-visible,
a.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button:hover,
a.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button:focus-visible,
.wc-block-checkout__actions_row a.wc-block-components-button:hover,
.wc-block-checkout__actions_row button.wc-block-components-button:hover {
  background: var(--_hgg-wc-btn-hover-bg) !important;
  color: var(--_hgg-wc-btn-hover-text) !important;
  text-decoration: none !important;
}
body:not(.elementor-page) .site-main .entry-content a.wc-block-components-button.wp-element-button .wc-block-components-button__text,
body:not(.elementor-page) .site-main .wp-block-post-content a.wc-block-components-button.wp-element-button .wc-block-components-button__text,
a.wc-block-components-button.wp-element-button .wc-block-components-button__text,
.wp-block-woocommerce-cart .wc-block-components-button__text,
.wp-block-woocommerce-checkout .wc-block-components-button__text {
  color: inherit !important;
  text-decoration: none !important;
}

/* My Account navigation: restore card-style menu instead of plain global links. */
body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation {
  margin: 0 0 28px !important;
}
body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation ul {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)) !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation a {
  display: flex !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 14px !important;
  border: 1px solid var(--hgg-border, rgba(23,32,51,.12)) !important;
  border-radius: var(--hgg-wc-button-radius, 10px) !important;
  background: var(--hgg-surface, #fff) !important;
  color: var(--hgg-text, #172033) !important;
  box-shadow: 0 10px 24px rgba(17,34,68,.06) !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}
body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation .is-active a,
body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation a:hover,
body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation a:focus-visible {
  background: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  color: var(--hgg-wc-button-text, #fff) !important;
  border-color: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  text-decoration: none !important;
}
@media (min-width: 900px) {
  body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce {
    display: grid !important;
    grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) !important;
    gap: 28px !important;
    align-items: start !important;
  }
  body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation ul {
    grid-template-columns: 1fr !important;
  }
  body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-content {
    min-width: 0 !important;
  }
}

/* Huuguu v46 — WooCommerce layout hardening. */
.huuguu-woocommerce-wrap.huuguu-woocommerce-wrap--no-sidebar,.huuguu-woocommerce-wrap.huuguu-woocommerce-wrap--full.huuguu-woocommerce-wrap--no-sidebar{display:block!important;grid-template-columns:1fr!important}.huuguu-woocommerce-wrap.huuguu-woocommerce-wrap--no-sidebar>.huuguu-woocommerce-primary,.huuguu-woocommerce-wrap.huuguu-woocommerce-wrap--no-sidebar>.huuguu-primary{width:100%!important;max-width:100%!important;min-width:0!important;flex:0 0 100%!important}.huuguu-woocommerce-wrap.huuguu-woocommerce-wrap--no-sidebar>#secondary,.huuguu-woocommerce-wrap.huuguu-woocommerce-wrap--no-sidebar>.widget-area,.huuguu-woocommerce-wrap.huuguu-woocommerce-wrap--no-sidebar>.huuguu-sidebar{display:none!important}body.post-type-archive-product .huuguu-woocommerce-wrap--full,body.tax-product_cat .huuguu-woocommerce-wrap--full,body.tax-product_tag .huuguu-woocommerce-wrap--full,body.woocommerce-shop .huuguu-woocommerce-wrap--full{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}

/* Removed v81.27: obsolete mobile two-column product-card override. */

body.woocommerce-account .huuguu-woocommerce-wrap,body.woocommerce-account .huuguu-content-wrap{max-width:var(--hgg-wc-account-container,var(--hgg-container,1240px))!important;width:min(100% - 32px,var(--hgg-wc-account-container,var(--hgg-container,1240px)))!important;margin-left:auto!important;margin-right:auto!important}body.woocommerce-account .woocommerce{display:grid!important;grid-template-columns:minmax(220px,300px) minmax(0,1fr)!important;gap:clamp(20px,3vw,40px)!important;align-items:start!important}body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation{float:none!important;width:auto!important;max-width:none!important;margin:0!important}body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-content{float:none!important;width:auto!important;max-width:none!important;margin:0!important;min-width:0!important}body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation ul{display:flex!important;flex-direction:column!important;gap:10px!important;padding:0!important;margin:0!important;list-style:none!important}body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation a,body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation a:hover,body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation a:focus-visible,body.woocommerce-account.huuguu-wc-account-nav-styled .woocommerce-MyAccount-navigation .is-active a{text-decoration:none!important}@media(max-width:900px){body.woocommerce-account .woocommerce{grid-template-columns:1fr!important}}


.woocommerce-account .entry-content > .woocommerce{
  width:min(100%,var(--hgg-content-max,var(--hgg-container,1240px)))!important;
  max-width:min(100%,var(--hgg-content-max,var(--hgg-container,1240px)))!important;
  margin-inline:auto!important;
  display:grid!important;
  grid-template-columns:minmax(220px,280px) minmax(0,1fr)!important;
  gap:clamp(20px,3vw,40px)!important;
  align-items:start!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation{
  float:none!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation li{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:100%!important;
  min-height:44px!important;
  padding:.78rem 1rem!important;
  border:1px solid rgba(23,32,51,.12)!important;
  border-radius:var(--hgg-wc-button-radius,var(--hgg-button-radius,10px))!important;
  background:var(--hgg-surface,#fff)!important;
  color:var(--hgg-text,#172033)!important;
  text-decoration:none!important;
  font-weight:700!important;
  box-shadow:0 10px 28px rgba(17,34,68,.05)!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible{
  background:var(--hgg-wc-button-bg,var(--hgg-primary,#246de8))!important;
  color:var(--hgg-wc-button-text,#fff)!important;
  text-decoration:none!important;
}
.woocommerce-account .woocommerce-MyAccount-content{
  float:none!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  min-width:0!important;
  padding:clamp(18px,2vw,28px)!important;
  border:1px solid rgba(23,32,51,.08)!important;
  border-radius:var(--hgg-radius,18px)!important;
  background:var(--hgg-surface,#fff)!important;
  box-shadow:0 16px 44px rgba(17,34,68,.06)!important;
}
.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.wc-block-components-button){
  color:var(--hgg-link-color,var(--hgg-primary,#246de8))!important;
  text-decoration:underline!important;
  text-underline-offset:.18em!important;
}
.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.wc-block-components-button):hover{
  color:var(--hgg-link-hover,var(--hgg-primary-dark,#154fad))!important;
}
@media(max-width:900px){
  .woocommerce-account .entry-content > .woocommerce{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
}
@media(max-width:540px){
  .woocommerce-account .woocommerce-MyAccount-navigation ul{
    grid-template-columns:1fr!important;
  }
  .woocommerce-account .woocommerce-MyAccount-content{
    padding:16px!important;
  }
}


/* My Account: target the actual WooCommerce HTML inside the page card. */
.site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) !important;
  gap: clamp(20px, 3vw, 36px) !important;
  align-items: start !important;
}
.site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) > nav.woocommerce-MyAccount-navigation,
.site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: clamp(18px, 2vw, 28px) !important;
  border: 1px solid rgba(23, 32, 51, .10) !important;
  border-radius: var(--hgg-radius, 18px) !important;
  background: var(--hgg-surface, #fff) !important;
  box-shadow: 0 16px 44px rgba(17, 34, 68, .06) !important;
}
.site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body:not(.elementor-page) .site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation a,
.site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation a {
  display: flex !important;
  width: 100% !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: .78rem 1rem !important;
  border: 1px solid rgba(23, 32, 51, .12) !important;
  border-radius: var(--hgg-wc-button-radius, var(--hgg-button-radius, 10px)) !important;
  background: var(--hgg-surface, #fff) !important;
  color: var(--hgg-text, #172033) !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  box-shadow: 0 10px 28px rgba(17, 34, 68, .05) !important;
}
body:not(.elementor-page) .site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation .is-active a,
body:not(.elementor-page) .site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation a:hover,
.site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation .is-active a,
.site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation a:hover,
.site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation a:focus-visible {
  background: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  color: var(--hgg-wc-button-text, #fff) !important;
  border-color: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  text-decoration: none !important;
}
@media (max-width: 900px) {
  .site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) {
    grid-template-columns: 1fr !important;
  }
  .site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 540px) {
  .site-main .entry-content > div.woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul {
    grid-template-columns: 1fr !important;
  }
}

/* v49 definitive WooCommerce account layout and loop radii. */
body.huuguu-wc-account-page .site-main .entry-content > .woocommerce,
body.woocommerce-account .site-main .entry-content > .woocommerce,
.site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) {
  display: grid !important;
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr) !important;
  gap: clamp(22px, 3vw, 40px) !important;
  align-items: start !important;
  width: min(100%, var(--hgg-content-max, var(--hgg-container, 1240px))) !important;
  max-width: min(100%, var(--hgg-content-max, var(--hgg-container, 1240px))) !important;
  margin-inline: auto !important;
}
body.huuguu-wc-account-page .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-navigation,
.site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation {
  float: none !important;
  width: 100% !important;
  max-width: 300px !important;
  margin: 0 !important;
  padding: 0 !important;
  grid-column: 1 !important;
}
body.huuguu-wc-account-page .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-content,
.site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-content {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  grid-column: 2 !important;
  min-width: 0 !important;
  padding: clamp(22px, 2.5vw, 34px) !important;
  border: 1px solid rgba(23,32,51,.08) !important;
  border-radius: var(--hgg-content-radius, var(--hgg-radius, 18px)) !important;
  background: var(--hgg-surface, #fff) !important;
  box-shadow: 0 18px 48px rgba(17,34,68,.07) !important;
}
body.huuguu-wc-account-page .woocommerce-MyAccount-navigation ul,
body.woocommerce-account .woocommerce-MyAccount-navigation ul,
.site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.huuguu-wc-account-page .woocommerce-MyAccount-navigation li,
body.woocommerce-account .woocommerce-MyAccount-navigation li,
.site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.huuguu-wc-account-page .woocommerce-MyAccount-navigation a,
body.woocommerce-account .woocommerce-MyAccount-navigation a,
.site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation a {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  min-height: 46px !important;
  padding: .82rem 1rem !important;
  border: 1px solid rgba(23,32,51,.12) !important;
  border-radius: var(--hgg-wc-button-radius, var(--hgg-button-radius, 10px)) !important;
  background: var(--hgg-surface, #fff) !important;
  color: var(--hgg-text, #172033) !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  box-shadow: 0 10px 28px rgba(17,34,68,.05) !important;
}
body.huuguu-wc-account-page .woocommerce-MyAccount-navigation .is-active a,
body.huuguu-wc-account-page .woocommerce-MyAccount-navigation a:hover,
body.huuguu-wc-account-page .woocommerce-MyAccount-navigation a:focus-visible,
body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible,
.site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation .is-active a,
.site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation a:hover,
.site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation a:focus-visible {
  background: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  color: var(--hgg-wc-button-text, #fff) !important;
  border-color: var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) !important;
  text-decoration: none !important;
}
body.huuguu-wc-account-page .woocommerce-MyAccount-content a:not(.button):not(.wc-block-components-button),
body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.wc-block-components-button),
.site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-content a:not(.button):not(.wc-block-components-button) {
  color: var(--hgg-link-color, var(--hgg-primary, #246de8)) !important;
  text-decoration: underline !important;
  text-underline-offset: .18em !important;
}
@media (max-width: 900px) {
  body.huuguu-wc-account-page .site-main .entry-content > .woocommerce,
  body.woocommerce-account .site-main .entry-content > .woocommerce,
  .site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) {
    grid-template-columns: 1fr !important;
  }
  body.huuguu-wc-account-page .woocommerce-MyAccount-navigation,
  body.woocommerce-account .woocommerce-MyAccount-navigation,
  .site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation,
  body.huuguu-wc-account-page .woocommerce-MyAccount-content,
  body.woocommerce-account .woocommerce-MyAccount-content,
  .site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-content {
    grid-column: 1 !important;
    max-width: none !important;
  }
  body.huuguu-wc-account-page .woocommerce-MyAccount-navigation ul,
  body.woocommerce-account .woocommerce-MyAccount-navigation ul,
  .site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
}
@media (max-width: 540px) {
  body.huuguu-wc-account-page .woocommerce-MyAccount-navigation ul,
  body.woocommerce-account .woocommerce-MyAccount-navigation ul,
  .site-main .entry-content > .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul {
    grid-template-columns: 1fr !important;
  }
}











/* Single product gallery: thumbnails keep the same visual language as product cards. */
.single-product div.product .woocommerce-product-gallery__wrapper,
.woocommerce-page.single-product div.product .woocommerce-product-gallery__wrapper {
  border-radius: var(--hgg-wc-single-featured-image-radius, 18px) !important;
  overflow: hidden !important;
}
.single-product div.product .woocommerce-product-gallery__wrapper img,
.woocommerce-page.single-product div.product .woocommerce-product-gallery__wrapper img {
  border-radius: var(--hgg-wc-single-featured-image-radius, 18px) !important;
}
.single-product div.product .flex-control-thumbs li,
.woocommerce-page.single-product div.product .flex-control-thumbs li {
  overflow: hidden !important;
  border-radius: var(--hgg-wc-single-thumb-image-radius, var(--hgg-wc-single-featured-image-radius, 18px)) !important;
}
.single-product div.product .flex-control-thumbs li img,
.woocommerce-page.single-product div.product .flex-control-thumbs li img {
  border-radius: var(--hgg-wc-single-thumb-image-radius, var(--hgg-wc-single-featured-image-radius, 18px)) !important;
}
.single-product .hgg-wc-thumbs-carousel,
.woocommerce-page.single-product .hgg-wc-thumbs-carousel {
  position: relative !important;
  margin-top: 14px !important;
}
.single-product .hgg-wc-thumbs-viewport,
.woocommerce-page.single-product .hgg-wc-thumbs-viewport {
  overflow: hidden !important;
  border-radius: var(--hgg-wc-single-thumb-image-radius, var(--hgg-wc-single-featured-image-radius, 18px)) !important;
}
.single-product .hgg-wc-thumbs-arrow,
.woocommerce-page.single-product .hgg-wc-thumbs-arrow {
  position: absolute !important;
  top: 50% !important;
  z-index: 8 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 999px !important;
  transform: translateY(-50%) !important;
  line-height: 1 !important;
}
.single-product .hgg-wc-thumbs-arrow span,
.woocommerce-page.single-product .hgg-wc-thumbs-arrow span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1em !important;
  height: 1em !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
}
.single-product .hgg-wc-thumbs-arrow--prev,
.woocommerce-page.single-product .hgg-wc-thumbs-arrow--prev {
  left: 10px !important;
}
.single-product .hgg-wc-thumbs-arrow--next,
.woocommerce-page.single-product .hgg-wc-thumbs-arrow--next {
  right: 10px !important;
}

/* Huuguu v51 — WooCommerce gallery, shared loop cards, and tax suffix normalization */
body.single-product .woocommerce-product-gallery{
  position:relative!important;
}
body.single-product .woocommerce-product-gallery:not(.hgg-wc-thumbs-carousel-ready)::after,
body.single-product .woocommerce-product-gallery.hgg-wc-gallery-loading::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:34px!important;
  height:34px!important;
  margin:-17px 0 0 -17px!important;
  border:3px solid rgba(23,32,51,.14)!important;
  border-top-color:var(--hgg-primary,#246de8)!important;
  border-radius:999px!important;
  z-index:12!important;
  animation:hgg-wc-gallery-spin .75s linear infinite!important;
  pointer-events:none!important;
}
@keyframes hgg-wc-gallery-spin{to{transform:rotate(360deg)}}
body.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image,
body.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image a,
body.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image img{
  border-radius:var(--hgg-wc-single-featured-image-radius,var(--hgg-wc-single-thumb-image-radius,18px))!important;
}
body.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image img{
  width:100%!important;
  object-fit:cover!important;
}
body.single-product .hgg-wc-thumbs-carousel{
  position:relative!important;
  margin-top:14px!important;
  width:100%!important;
  isolation:isolate!important;
}
body.single-product .hgg-wc-thumbs-viewport{
  overflow:hidden!important;
  width:100%!important;
}
body.single-product .hgg-wc-thumbs-carousel .flex-control-thumbs{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc((100% - 36px) / 4)!important;
  gap:12px!important;
  margin:0!important;
  padding:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  -webkit-overflow-scrolling:touch!important;
}
body.single-product .hgg-wc-thumbs-carousel .flex-control-thumbs::-webkit-scrollbar{display:none!important}
body.single-product .hgg-wc-thumbs-carousel .flex-control-thumbs li{
  width:auto!important;
  float:none!important;
  display:block!important;
  margin:0!important;
  scroll-snap-align:start!important;
  list-style:none!important;
}
body.single-product .hgg-wc-thumbs-carousel .flex-control-thumbs li.hgg-wc-thumb-duplicate{display:none!important}
body.single-product .hgg-wc-thumbs-carousel .flex-control-thumbs img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  object-fit:cover!important;
  border-radius:var(--hgg-wc-single-thumb-image-radius,var(--hgg-wc-single-featured-image-radius,18px))!important;
  opacity:.58!important;
  cursor:pointer!important;
  transition:opacity .18s ease,transform .18s ease,box-shadow .18s ease!important;
}
body.single-product .hgg-wc-thumbs-carousel .flex-control-thumbs img.flex-active,
body.single-product .hgg-wc-thumbs-carousel .flex-control-thumbs img.is-hover-active,
body.single-product .hgg-wc-thumbs-carousel .flex-control-thumbs img.is-click-active{
  opacity:1!important;
  box-shadow:0 0 0 2px rgba(36,109,232,.24)!important;
}
body.single-product .hgg-wc-thumbs-arrow{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:5!important;
  width:38px!important;
  height:38px!important;
  padding:0!important;
  border:1px solid rgba(23,32,51,.12)!important;
  border-radius:999px!important;
  background:var(--hgg-surface,#fff)!important;
  color:var(--hgg-text,#172033)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  box-shadow:0 12px 28px rgba(17,34,68,.14)!important;
  cursor:pointer!important;
}
body.single-product .hgg-wc-thumbs-arrow span{
  display:block!important;
  line-height:1!important;
  font-size:1.35rem!important;
  transform:translateY(-1px)!important;
}
body.single-product .hgg-wc-thumbs-arrow--prev{left:8px!important}
body.single-product .hgg-wc-thumbs-arrow--next{right:8px!important}
body.single-product .hgg-wc-thumbs-arrow:disabled{opacity:.38!important;cursor:default!important}







/* Huuguu v52 — WooCommerce gallery preload and shared mobile product loop hardening. */
body.single-product .woocommerce-product-gallery:not(.hgg-wc-thumbs-carousel-ready) {
  position: relative !important;
  min-height: 220px !important;
}
body.single-product .woocommerce-product-gallery:not(.hgg-wc-thumbs-carousel-ready)::after,
body.single-product .woocommerce-product-gallery.hgg-wc-gallery-loading::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  z-index: 20 !important;
  width: 34px !important;
  height: 34px !important;
  margin: -17px 0 0 -17px !important;
  border-radius: 999px !important;
  border: 3px solid rgba(23,32,51,.16) !important;
  border-top-color: var(--hgg-wc-button-bg,var(--hgg-primary,#246de8)) !important;
  animation: hgg-wc-gallery-spin .75s linear infinite !important;
  pointer-events: none !important;
}
@keyframes hgg-wc-gallery-spin { to { transform: rotate(360deg); } }
body.single-product .woocommerce-product-gallery.hgg-wc-gallery-loading .woocommerce-product-gallery__wrapper {
  opacity: .48 !important;
  transition: opacity .18s ease !important;
}
body.single-product .hgg-wc-thumbs-carousel {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  align-items: center !important;
  width: 100% !important;
  margin-top: 14px !important;
}
body.single-product .hgg-wc-thumbs-viewport {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  width: 100% !important;
  scroll-behavior: smooth !important;
  scrollbar-width: none !important;
}
body.single-product .hgg-wc-thumbs-viewport::-webkit-scrollbar { display: none !important; }
body.single-product .hgg-wc-thumbs-carousel .flex-control-thumbs {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: calc((100% - 36px) / 4) !important;
  gap: var(--hgg-wc-thumb-gap, 12px) !important;
  width: max-content !important;
  min-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.single-product .hgg-wc-thumbs-carousel .flex-control-thumbs li {
  width: 100% !important;
  min-width: 0 !important;
  float: none !important;
  display: block !important;
  margin: 0 !important;
}
body.single-product .hgg-wc-thumbs-carousel .flex-control-thumbs img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1/1 !important;
  object-fit: cover !important;
  border-radius: var(--hgg-wc-single-thumb-image-radius,var(--hgg-wc-single-featured-image-radius,18px)) !important;
}
body.single-product .hgg-wc-thumbs-arrow {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 25 !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  text-align: center !important;
}
body.single-product .hgg-wc-thumbs-arrow--prev { left: 10px !important; }
body.single-product .hgg-wc-thumbs-arrow--next { right: 10px !important; }
body.single-product .hgg-wc-thumbs-arrow span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1em !important;
  height: 1em !important;
  line-height: 1 !important;
  font-size: 1.35rem !important;
  transform: none !important;
}

/* Huuguu v53 — Gallery loader scoped only to active WooCommerce gallery loading state.
   Do not show a permanent spinner when the product has no thumbnail gallery. */
body.single-product .woocommerce-product-gallery,
body.woocommerce-page.single-product .woocommerce-product-gallery {
  position: relative !important;
}
body.single-product .woocommerce-product-gallery:not(.hgg-wc-gallery-loading)::after,
body.woocommerce-page.single-product .woocommerce-product-gallery:not(.hgg-wc-gallery-loading)::after {
  content: none !important;
  display: none !important;
}
body.single-product .woocommerce-product-gallery.hgg-wc-gallery-loading::after,
body.woocommerce-page.single-product .woocommerce-product-gallery.hgg-wc-gallery-loading::after {
  content: "" !important;
  position: absolute !important;
  inset: auto !important;
  left: 50% !important;
  top: 50% !important;
  z-index: 20 !important;
  width: 34px !important;
  height: 34px !important;
  margin: -17px 0 0 -17px !important;
  border-radius: 999px !important;
  border: 3px solid rgba(23,32,51,.16) !important;
  border-top-color: var(--hgg-wc-button-bg,var(--hgg-primary,#246de8)) !important;
  animation: hgg-wc-gallery-spin .75s linear infinite !important;
  pointer-events: none !important;
}
body.single-product .woocommerce-product-gallery.hgg-wc-gallery-loading .woocommerce-product-gallery__wrapper,
body.woocommerce-page.single-product .woocommerce-product-gallery.hgg-wc-gallery-loading .woocommerce-product-gallery__wrapper {
  opacity: .48 !important;
  transition: opacity .18s ease !important;
}
body.single-product .woocommerce-product-gallery:not(.hgg-wc-gallery-loading) .woocommerce-product-gallery__wrapper,
body.woocommerce-page.single-product .woocommerce-product-gallery:not(.hgg-wc-gallery-loading) .woocommerce-product-gallery__wrapper {
  opacity: 1 !important;
}





@media (max-width: 700px) {
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready,
  body.single-product .woocommerce-breadcrumb,
  body.woocommerce-page .woocommerce-breadcrumb {
    gap: 4px !important;
    column-gap: 4px !important;
    font-size: .86rem !important;
  }
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-sep,
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb .huuguu-breadcrumb-sep,
  body.single-product .woocommerce-breadcrumb .huuguu-breadcrumb-sep,
  body.woocommerce-page .woocommerce-breadcrumb .huuguu-breadcrumb-sep {
    margin-inline: 3px !important;
    padding-inline: 0 !important;
  }
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb > a,
  .huuguu-global-breadcrumb-bar .woocommerce-breadcrumb > span,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready > a,
  .huuguu-global-breadcrumb-bar .huuguu-breadcrumb-ready > span {
    margin-inline: 0 !important;
  }
}

/* Gallery carousel: arrows sit over the first/last visible thumbs and stay visually centered. */
body.single-product .hgg-wc-thumbs-carousel,
body.woocommerce-page.single-product .hgg-wc-thumbs-carousel {
  overflow: visible !important;
}
body.single-product .hgg-wc-thumbs-arrow,
body.woocommerce-page.single-product .hgg-wc-thumbs-arrow {
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: inline-grid !important;
  place-items: center !important;
  box-sizing: border-box !important;
  background: rgba(255,255,255,.92) !important;
  color: var(--hgg-text, #172033) !important;
  border: 1px solid rgba(23,32,51,.10) !important;
  box-shadow: 0 10px 22px rgba(17,34,68,.13) !important;
}
body.single-product .hgg-wc-thumbs-arrow--prev,
body.woocommerce-page.single-product .hgg-wc-thumbs-arrow--prev { left: 8px !important; }
body.single-product .hgg-wc-thumbs-arrow--next,
body.woocommerce-page.single-product .hgg-wc-thumbs-arrow--next { right: 8px !important; }
body.single-product .hgg-wc-thumbs-arrow span,
body.woocommerce-page.single-product .hgg-wc-thumbs-arrow span {
  display: block !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: .8 !important;
  transform: translateY(-1px) !important;
}

/* === V55 WooCommerce gallery: stable thumbnail carousel and native FlexSlider sync === */
body.single-product .woocommerce-product-gallery,
body.woocommerce-page.single-product .woocommerce-product-gallery {
  position: relative !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel {
  --hgg-wc-thumb-gap: 12px;
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-top: 14px !important;
  padding: 0 !important;
  overflow: visible !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-viewport,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-viewport {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  border-radius: var(--hgg-wc-single-thumb-image-radius, var(--hgg-wc-single-featured-image-radius, 18px)) !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: var(--hgg-wc-thumb-gap) !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  overflow: visible !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs li,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs li {
  flex: 0 0 calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  width: calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  min-width: calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  max-width: calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs li.hgg-wc-thumb-duplicate,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs li.hgg-wc-thumb-duplicate {
  display: none !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: var(--hgg-wc-single-thumb-image-radius, var(--hgg-wc-single-featured-image-radius, 18px)) !important;
  opacity: .62 !important;
  cursor: pointer !important;
  transition: opacity .18s ease, transform .18s ease, box-shadow .18s ease !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img:hover,
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img.flex-active,
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img.is-hover-active,
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img.is-click-active,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img:hover,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img.flex-active,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img.is-hover-active,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs img.is-click-active {
  opacity: 1 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 24px rgba(17,34,68,.16) !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow {
  position: absolute !important;
  top: 50% !important;
  z-index: 20 !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
  border: 1px solid rgba(23,32,51,.16) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.94) !important;
  color: var(--hgg-text,#172033) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  box-shadow: 0 10px 26px rgba(17,34,68,.16) !important;
  backdrop-filter: blur(8px);
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span {
  display: block !important;
  width: 1em !important;
  height: 1em !important;
  font-size: 25px !important;
  line-height: .78 !important;
  text-align: center !important;
  transform: translateY(-1px) !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--prev,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--prev { left: 8px !important; }
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--next,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--next { right: 8px !important; }

body.single-product .woocommerce-product-gallery:not(.hgg-wc-gallery-loading)::after,
body.woocommerce-page.single-product .woocommerce-product-gallery:not(.hgg-wc-gallery-loading)::after {
  content: none !important;
  display: none !important;
}

body.single-product .woocommerce-product-gallery.hgg-wc-gallery-loading::after,
body.woocommerce-page.single-product .woocommerce-product-gallery.hgg-wc-gallery-loading::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 34px !important;
  height: 34px !important;
  margin: -17px 0 0 -17px !important;
  border: 3px solid rgba(23,32,51,.16) !important;
  border-top-color: var(--hgg-wc-button-bg, var(--hgg-primary, #2563eb)) !important;
  border-radius: 999px !important;
  animation: hgg-wc-gallery-spin .75s linear infinite !important;
  z-index: 25 !important;
  pointer-events: none !important;
}

@media (max-width: 767px) {
  body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel,
  body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel { --hgg-wc-thumb-gap: 8px; }
  body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow,
  body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
  }
  body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span,
  body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span { font-size: 21px !important; }
}

/* v57: stable Woo single gallery thumbnails.
   Keep the native Woo/FlexSlider thumbnail list intact and hidden; render a separate visual carousel. */
body.single-product .woocommerce-product-gallery .flex-control-thumbs.hgg-wc-native-thumbs,
body.woocommerce-page.single-product .woocommerce-product-gallery .flex-control-thumbs.hgg-wc-native-thumbs {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-width: 1px !important;
  min-height: 1px !important;
  max-width: 1px !important;
  max-height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: var(--hgg-wc-thumb-gap, 12px) !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  list-style: none !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs li,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs li {
  flex: 0 0 calc((100% - (var(--hgg-wc-thumb-gap, 12px) * 3)) / 4) !important;
  width: calc((100% - (var(--hgg-wc-thumb-gap, 12px) * 3)) / 4) !important;
  min-width: calc((100% - (var(--hgg-wc-thumb-gap, 12px) * 3)) / 4) !important;
  max-width: calc((100% - (var(--hgg-wc-thumb-gap, 12px) * 3)) / 4) !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs img,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: var(--hgg-wc-single-thumb-image-radius, var(--hgg-wc-single-image-radius, 18px)) !important;
  opacity: .62 !important;
  cursor: pointer !important;
  transition: opacity .18s ease, transform .18s ease, box-shadow .18s ease !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs img.flex-active,
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs li.is-active img,
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs img:hover,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs img.flex-active,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs li.is-active img,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .flex-control-thumbs.hgg-wc-visual-thumbs img:hover {
  opacity: 1 !important;
  box-shadow: 0 0 0 2px var(--hgg-wc-button-bg, var(--hgg-primary, #2563eb)) !important;
}

/* Huuguu v58 — stable WooCommerce single gallery thumbnails.
   The native FlexSlider thumbnails remain in the DOM; the visual carousel only dispatches native thumbnail clicks. */
body.single-product div.product .woocommerce-product-gallery {
  position: relative !important;
}
body.single-product div.product .woocommerce-product-gallery.hgg-wc-gallery-loading::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 30px !important;
  height: 30px !important;
  margin: -15px 0 0 -15px !important;
  border: 3px solid rgba(23,32,51,.14) !important;
  border-top-color: var(--hgg-primary, #246de8) !important;
  border-radius: 999px !important;
  z-index: 12 !important;
  animation: hgg-wc-gallery-spin .75s linear infinite !important;
  pointer-events: none !important;
}
body.single-product div.product .woocommerce-product-gallery.hgg-wc-thumbs-carousel-ready:not(.hgg-wc-gallery-loading)::after {
  content: none !important;
  display: none !important;
}
body.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper,
body.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image,
body.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image > a,
body.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image img {
  visibility: visible !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-width: 1px !important;
  min-height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-carousel {
  position: relative !important;
  width: 100% !important;
  margin-top: 14px !important;
  isolation: isolate !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-viewport {
  width: 100% !important;
  overflow: hidden !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-visual-thumbs {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: calc((100% - 36px) / 4) !important;
  gap: var(--hgg-wc-thumb-gap, 12px) !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-visual-thumbs::-webkit-scrollbar { display: none !important; }
body.single-product div.product .woocommerce-product-gallery .hgg-wc-visual-thumbs li {
  width: auto !important;
  float: none !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  scroll-snap-align: start !important;
  overflow: hidden !important;
  border-radius: var(--hgg-wc-single-thumb-image-radius, var(--hgg-wc-single-featured-image-radius, 18px)) !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-visual-thumbs img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: var(--hgg-wc-single-thumb-image-radius, var(--hgg-wc-single-featured-image-radius, 18px)) !important;
  opacity: .62 !important;
  cursor: pointer !important;
  transition: opacity .18s ease, box-shadow .18s ease, transform .18s ease !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-visual-thumbs li.is-active img,
body.single-product div.product .woocommerce-product-gallery .hgg-wc-visual-thumbs img.flex-active {
  opacity: 1 !important;
  box-shadow: 0 0 0 2px rgba(36,109,232,.24) !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-arrow {
  position: absolute !important;
  top: 50% !important;
  z-index: 9 !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  padding: 0 !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
  border: 1px solid rgba(23,32,51,.14) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.94) !important;
  color: var(--hgg-text, #172033) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  box-shadow: 0 10px 26px rgba(17,34,68,.16) !important;
  cursor: pointer !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--prev { left: 8px !important; }
body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--next { right: 8px !important; }
body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-arrow span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1em !important;
  height: 1em !important;
  font-size: 24px !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-arrow:disabled {
  opacity: .38 !important;
  cursor: default !important;
}
@media (max-width: 767px) {
  body.single-product div.product .woocommerce-product-gallery .hgg-wc-visual-thumbs {
    grid-auto-columns: calc((100% - 24px) / 4) !important;
    gap: 8px !important;
  }
  body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-arrow {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
  }
  body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--prev { left: 5px !important; }
  body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-arrow--next { right: 5px !important; }
}

/* v59 - Woo single gallery stable visual thumbnails */
body.single-product .woocommerce-product-gallery .hgg-wc-native-thumbs,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-native-thumbs {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: var(--hgg-wc-thumb-gap, 12px) !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  list-style: none !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs li,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs li {
  flex: 0 0 calc((100% - (var(--hgg-wc-thumb-gap, 12px) * 3)) / 4) !important;
  width: calc((100% - (var(--hgg-wc-thumb-gap, 12px) * 3)) / 4) !important;
  min-width: calc((100% - (var(--hgg-wc-thumb-gap, 12px) * 3)) / 4) !important;
  max-width: calc((100% - (var(--hgg-wc-thumb-gap, 12px) * 3)) / 4) !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs img,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: var(--hgg-wc-single-thumbnail-radius, var(--hgg-wc-single-image-radius, 12px)) !important;
  opacity: .62 !important;
  cursor: pointer !important;
  transition: opacity .18s ease, transform .18s ease, box-shadow .18s ease !important;
}

body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs li.is-active img,
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs img.flex-active,
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs img:hover,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs li.is-active img,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs img.flex-active,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel .hgg-wc-visual-thumbs img:hover {
  opacity: 1 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 24px rgba(17,34,68,.16) !important;
}

body.single-product .woocommerce-product-gallery .flex-viewport,
body.woocommerce-page.single-product .woocommerce-product-gallery .flex-viewport {
  background: transparent !important;
}

body.single-product .woocommerce-product-gallery__wrapper,
body.woocommerce-page.single-product .woocommerce-product-gallery__wrapper {
  opacity: 1 !important;
  visibility: visible !important;
}

/* v60: stable WooCommerce product gallery thumbnails.
   Keep Woo/FlexSlider native thumbnails untouched; only style the native list.
   This prevents blank main images on mobile/tablet. */
body.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel,
body.woocommerce-page.single-product .woocommerce-product-gallery .hgg-wc-thumbs-carousel {
  display: none !important;
}
body.single-product div.product .woocommerce-product-gallery,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery {
  position: relative !important;
}
body.single-product div.product .woocommerce-product-gallery ol.flex-control-thumbs.hgg-wc-native-thumbs,
body.single-product div.product .woocommerce-product-gallery ul.flex-control-thumbs.hgg-wc-native-thumbs,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery ol.flex-control-thumbs.hgg-wc-native-thumbs,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery ul.flex-control-thumbs.hgg-wc-native-thumbs {
  --hgg-wc-thumb-gap: 12px;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: var(--hgg-wc-thumb-gap) !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
}
body.single-product div.product .woocommerce-product-gallery ol.flex-control-thumbs.hgg-wc-native-thumbs::-webkit-scrollbar,
body.single-product div.product .woocommerce-product-gallery ul.flex-control-thumbs.hgg-wc-native-thumbs::-webkit-scrollbar,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery ol.flex-control-thumbs.hgg-wc-native-thumbs::-webkit-scrollbar,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery ul.flex-control-thumbs.hgg-wc-native-thumbs::-webkit-scrollbar {
  display: none !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs li,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs li {
  flex: 0 0 calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  width: calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  min-width: calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  max-width: calc((100% - (var(--hgg-wc-thumb-gap) * 3)) / 4) !important;
  margin: 0 !important;
  padding: 0 !important;
  scroll-snap-align: start !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs img,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: var(--hgg-wc-single-thumb-radius, var(--hgg-wc-single-image-radius, 6px)) !important;
  opacity: .62 !important;
  cursor: pointer !important;
  transition: opacity .18s ease, box-shadow .18s ease, transform .18s ease !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs img.flex-active,
body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs img:hover,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs img.flex-active,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs img:hover {
  opacity: 1 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 24px rgba(17,34,68,.16) !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow {
  position: absolute !important;
  z-index: 20 !important;
  bottom: 30px !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1px solid rgba(23,32,51,.16) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.94) !important;
  color: var(--hgg-text,#172033) !important;
  display: inline-grid !important;
  place-items: center !important;
  line-height: 1 !important;
  box-shadow: 0 10px 26px rgba(17,34,68,.16) !important;
  backdrop-filter: blur(8px) !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow--prev,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow--prev { left: 8px !important; }
body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow--next,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow--next { right: 8px !important; }
body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow span,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow span {
  display: block !important;
  width: 1em !important;
  height: 1em !important;
  font-size: 25px !important;
  line-height: .82 !important;
  text-align: center !important;
}
body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow:disabled,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow:disabled {
  opacity: .45 !important;
  cursor: default !important;
}
@media (max-width: 767px) {
  body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs,
  body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs {
    --hgg-wc-thumb-gap: 10px;
  }
  body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow,
  body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    bottom: 24px !important;
  }
  body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow span,
  body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow span {
    font-size: 21px !important;
  }
}

/* Huuguu v61 — WooCommerce gallery rollback/stability layer
   Keep product gallery behavior native. Only visual radius/spacing remains. */
body.single-product div.product .woocommerce-product-gallery,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery {
  opacity: 1 !important;
  visibility: visible !important;
}

body.single-product div.product .woocommerce-product-gallery::after,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery::after {
  content: none !important;
  display: none !important;
}

body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-carousel,
body.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-arrow,
body.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow,
body.single-product div.product .woocommerce-product-gallery .hgg-wc-gallery-arrow,
body.single-product div.product .woocommerce-product-gallery .hgg-wc-gallery-thumbs-carousel,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-carousel,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-thumbs-arrow,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-native-thumbs-arrow,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-gallery-arrow,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .hgg-wc-gallery-thumbs-carousel {
  display: none !important;
}

body.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper,
body.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image,
body.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image > a,
body.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image img,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image > a,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image img {
  opacity: 1 !important;
  visibility: visible !important;
}

body.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image img,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image img {
  border-radius: var(--hgg-wc-single-image-radius, 6px) !important;
}

body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: var(--hgg-wc-thumb-gap, 12px) !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
  overflow: visible !important;
}

body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
  width: calc((100% - 36px) / 4) !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: var(--hgg-wc-single-thumb-radius, 6px) !important;
  opacity: .72 !important;
  cursor: pointer !important;
}

body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img:hover,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img:hover {
  opacity: 1 !important;
}

/* Huuguu v63 — Woo native gallery visual rail + correct single meta link token.
   Stable strategy: Woo/FlexSlider keeps click/touch behavior. CSS only makes thumbnails a horizontal rail. */
body.single-product div.product .product_meta a,
body.woocommerce-page.single-product div.product .product_meta a {
  color: var(--hgg-link-color, var(--hgg-primary, #246de8)) !important;
  text-decoration: none !important;
}
body.single-product div.product .product_meta a:hover,
body.single-product div.product .product_meta a:focus-visible,
body.woocommerce-page.single-product div.product .product_meta a:hover,
body.woocommerce-page.single-product div.product .product_meta a:focus-visible {
  color: var(--hgg-link-hover, var(--hgg-primary-dark, #154fad)) !important;
  text-decoration: underline !important;
  text-underline-offset: .18em !important;
}

body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
  --hgg-wc-native-thumb-gap: 12px;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: var(--hgg-wc-native-thumb-gap) !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 14px 0 0 !important;
  padding: 0 2px 6px !important;
  list-style: none !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x proximity !important;
  -webkit-overflow-scrolling: touch !important;
}
body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar {
  height: 0 !important;
}
body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
  flex: 0 0 calc((100% - (var(--hgg-wc-native-thumb-gap) * 3)) / 4) !important;
  width: calc((100% - (var(--hgg-wc-native-thumb-gap) * 3)) / 4) !important;
  max-width: calc((100% - (var(--hgg-wc-native-thumb-gap) * 3)) / 4) !important;
  min-width: 0 !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  scroll-snap-align: start !important;
}
body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: var(--hgg-wc-single-thumb-radius, 6px) !important;
  opacity: .72 !important;
  cursor: pointer !important;
  transition: opacity .18s ease, box-shadow .18s ease, transform .18s ease !important;
}
body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img:hover,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img:hover {
  opacity: 1 !important;
  box-shadow: 0 0 0 2px var(--hgg-wc-button-bg, var(--hgg-primary, #246de8)) inset !important;
}

@media (max-width: 640px) {
  body.single-product div.product .woocommerce-product-gallery .flex-control-thumbs,
  body.woocommerce-page.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
    --hgg-wc-native-thumb-gap: 10px;
  }
}

/* v65: Header and breadcrumb width/min-height customizer binding. */
.site-header {
  min-height: var(--hgg-header-min-height-desktop, var(--hgg-header-min-height, 80px));
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.huuguu-breadcrumb--compact .container,
.huuguu-breadcrumb--compact .huuguu-breadcrumb-container {
  width: min(100%, var(--hgg-breadcrumb-container, var(--hgg-container, 1240px)));
  max-width: var(--hgg-breadcrumb-container, var(--hgg-container, 1240px));
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  min-width: 0;
}

.huuguu-breadcrumb--full .container,
.huuguu-breadcrumb--full .huuguu-breadcrumb-container {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
  min-width: 0;
}

.huuguu-global-breadcrumb-bar .huuguu-breadcrumb-container .woocommerce-breadcrumb,
.huuguu-global-breadcrumb-bar .huuguu-breadcrumb-container .huuguu-breadcrumb-ready {
  width: 100%;
  max-width: 100%;
}

@media (max-width: 1024px) {/* huuguu v1.52.4: selector migrated to header/mobile engine. */
}

@media (max-width: 767px) {/* huuguu v1.52.4: selector migrated to header/mobile engine. *//* huuguu v1.52.4: selector migrated to header/mobile engine. */
}

/* v66: Breadcrumb compact must use the same visual site/header container, not a content-sized row. */
.huuguu-global-breadcrumb-bar {
  width: 100% !important;
  max-width: 100vw !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

.huuguu-global-breadcrumb-bar.huuguu-breadcrumb--compact > .huuguu-breadcrumb-container,
.huuguu-global-breadcrumb-bar.huuguu-breadcrumb--compact > .container.huuguu-breadcrumb-container {
  width: min(100%, var(--hgg-header-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-header-container, var(--hgg-container, 1240px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

.huuguu-global-breadcrumb-bar.huuguu-breadcrumb--full > .huuguu-breadcrumb-container,
.huuguu-global-breadcrumb-bar.huuguu-breadcrumb--full > .container.huuguu-breadcrumb-container {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

.huuguu-global-breadcrumb-bar > .huuguu-breadcrumb-container > .woocommerce-breadcrumb,
.huuguu-global-breadcrumb-bar > .huuguu-breadcrumb-container > .huuguu-breadcrumb-ready,
.huuguu-global-breadcrumb-bar > .container.huuguu-breadcrumb-container > .woocommerce-breadcrumb,
.huuguu-global-breadcrumb-bar > .container.huuguu-breadcrumb-container > .huuguu-breadcrumb-ready {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

@media (max-width: 767px) {
  .huuguu-global-breadcrumb-bar.huuguu-breadcrumb--compact > .huuguu-breadcrumb-container,
  .huuguu-global-breadcrumb-bar.huuguu-breadcrumb--compact > .container.huuguu-breadcrumb-container {
    width: min(100%, var(--hgg-header-container, var(--hgg-container, 100%))) !important;
    max-width: var(--hgg-header-container, var(--hgg-container, 100%)) !important;
  }
}

/* v73: Breadcrumb owns its own spacing token. Do not derive bottom gap from WooCommerce padding. */
.huuguu-global-breadcrumb-bar,
body .huuguu-global-breadcrumb-bar,
body.single-product .huuguu-global-breadcrumb-bar,
body.woocommerce-page .huuguu-global-breadcrumb-bar,
body.woocommerce .huuguu-global-breadcrumb-bar {
  margin-top: 0 !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
  margin-bottom: var(--hgg-breadcrumb-margin-bottom, 0px) !important;
}

/* v75: Header base normalization, vertical alignment and mobile toggle polish. */
.site-header {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
}

.site-header .huuguu-header-shell.site-header-inner {
  display: flex !important;
  align-items: center !important;
  width: min(100%, var(--hgg-header-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-header-container, var(--hgg-container, 1240px)) !important;
  min-height: var(--hgg-header-min-height-desktop, 80px) !important;
  box-sizing: border-box !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.site-header .huuguu-header-desktop {
  min-height: 0 !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.site-header .site-title-wrap {
  justify-content: center !important;
  min-height: var(--hgg-logo-text-desktop-min-height, 60px) !important;
  flex-direction: column !important;
  line-height: 1.1 !important;
}

.site-header .site-title,
.site-header .site-description {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.site-header--classic {
  border-bottom: var(--hgg-header-border, 1px solid rgba(23,32,51,.08)) !important;
  box-shadow: var(--hgg-header-shadow, none) !important;
}

.site-header--minimal {
  border-bottom: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.site-header--minimal .huuguu-header-shell.site-header-inner {
  min-height: max(52px, calc(var(--hgg-header-min-height-desktop, 80px) - 12px)) !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.site-header--premium .huuguu-header-desktop {
  column-gap: calc(var(--hgg-header-gap, 28px) + 12px) !important;
}

.menu-toggle,
.mobile-topbar-actions .menu-toggle {
  width: var(--hgg-menu-toggle-size, 44px) !important;
  min-width: var(--hgg-menu-toggle-size, 44px) !important;
  height: var(--hgg-menu-toggle-size, 44px) !important;
  min-height: var(--hgg-menu-toggle-size, 44px) !important;
  padding: 0 !important;
  border-radius: var(--hgg-menu-toggle-radius, 16px) !important;
  display: inline-flex;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
}

.menu-toggle--text {
  width: auto !important;
  padding-inline: 14px !important;
}

.menu-toggle__icon {
  width: var(--hgg-menu-toggle-icon-size, 18px) !important;
  height: calc(var(--hgg-menu-toggle-icon-size, 18px) * .78) !important;
  flex-basis: var(--hgg-menu-toggle-icon-size, 18px) !important;
}

.menu-toggle__icon span,
.menu-toggle__icon::before,
.menu-toggle__icon::after {
  width: var(--hgg-menu-toggle-icon-size, 18px) !important;
  height: 2px !important;
  left: 0 !important;
}

.menu-toggle__icon::before { top: 0 !important; }
.menu-toggle__icon span { top: calc((var(--hgg-menu-toggle-icon-size, 18px) * .78 - 2px) / 2) !important; }
.menu-toggle__icon::after { top: calc(var(--hgg-menu-toggle-icon-size, 18px) * .78 - 2px) !important; }

.menu-toggle[aria-expanded="true"] .menu-toggle__icon::before {
  transform: translateY(calc((var(--hgg-menu-toggle-icon-size, 18px) * .78 - 2px) / 2)) rotate(45deg) !important;
}

.menu-toggle[aria-expanded="true"] .menu-toggle__icon::after {
  transform: translateY(calc(((var(--hgg-menu-toggle-icon-size, 18px) * .78 - 2px) / 2) * -1)) rotate(-45deg) !important;
}

@media (max-width: 1024px) {
  .site-header .huuguu-header-shell.site-header-inner {
    min-height: var(--hgg-header-min-height-tablet, 72px) !important;
  }

  .site-header--minimal .huuguu-header-shell.site-header-inner {
    min-height: max(50px, calc(var(--hgg-header-min-height-tablet, 72px) - 10px)) !important;
  }

  .site-header .site-title-wrap {
    min-height: var(--hgg-logo-text-tablet-min-height, 50px) !important;
  }
}

@media (max-width: 767px) {
  .site-header .huuguu-header-shell.site-header-inner {
    min-height: var(--hgg-header-min-height-mobile, 64px) !important;
  }

  .site-header--minimal .huuguu-header-shell.site-header-inner {
    min-height: max(48px, calc(var(--hgg-header-min-height-mobile, 64px) - 8px)) !important;
  }

  .site-header .site-title-wrap {
    min-height: var(--hgg-logo-text-mobile-min-height, 44px) !important;
  }
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.site-header .huuguu-header-shell.site-header-inner {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.site-header .huuguu-header-desktop {
  min-height: var(--hgg-header-min-height-desktop, 80px) !important;
  height: var(--hgg-header-min-height-desktop, 80px) !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.site-header .header-branding,
.site-header .header-nav,
.site-header .header-actions {
  height: 100% !important;
  display: flex !important;
}

.site-header .header-nav {
  align-items: center !important;
}

.site-header .main-navigation,
.site-header .main-navigation .menu,
.site-header .main-navigation ul.menu,
.site-header .main-navigation ul.primary-menu {
  display: flex !important;
  align-items: center !important;
}

.site-header .main-navigation .menu > li,
.site-header .main-navigation ul.menu > li,
.site-header .main-navigation ul.primary-menu > li {
  display: flex !important;
  align-items: center !important;
}

.site-header .main-navigation .menu > li > a,
.site-header .main-navigation ul.menu > li > a,
.site-header .main-navigation ul.primary-menu > li > a {
  display: inline-flex !important;
  align-items: center !important;
}

.site-header .site-title-wrap {
  justify-content: center !important;
  min-height: min(var(--hgg-logo-text-desktop-min-height, 80px), var(--hgg-header-min-height-desktop, 80px)) !important;
  height: min(var(--hgg-logo-text-desktop-min-height, 80px), var(--hgg-header-min-height-desktop, 80px)) !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.site-header .huuguu-logo {
  height: min(var(--hgg-logo-desktop-height, 80px), var(--hgg-header-min-height-desktop, 80px)) !important;
  max-height: min(var(--hgg-logo-desktop-height, 80px), var(--hgg-header-min-height-desktop, 80px)) !important;
}

.site-header .huuguu-logo img.logo-desktop {
  max-height: min(var(--hgg-logo-desktop-height, 80px), var(--hgg-header-min-height-desktop, 80px)) !important;
}

.site-header--classic {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
  border-bottom: 1px solid var(--hgg-header-border-color, rgba(23,32,51,.10)) !important;
  box-shadow: none !important;
}

.site-header--minimal {
  background: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

.site-header--minimal .huuguu-header-desktop {
  min-height: max(52px, calc(var(--hgg-header-min-height-desktop, 80px) - 18px)) !important;
  height: max(52px, calc(var(--hgg-header-min-height-desktop, 80px) - 18px)) !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.site-header--premium .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
  border: var(--hgg-header-shell-border, 1px solid var(--hgg-header-border-color, rgba(23,32,51,.10))) !important;
  border-radius: var(--hgg-header-shell-radius, 18px) !important;
  box-shadow: var(--hgg-header-shell-shadow, 0 14px 36px rgba(17,34,68,.12)) !important;
  margin-top: 10px !important;
  margin-bottom: 10px !important;
  padding-left: var(--hgg-structure-pad-x, 12px) !important;
  padding-right: var(--hgg-structure-pad-x, 12px) !important;
}

@media (max-width: 1024px) {
  .site-header .huuguu-header-desktop { height: auto !important; min-height: 0 !important; }/* huuguu v1.52.4: selector migrated to header/mobile engine. */
  .site-header .site-title-wrap {
    min-height: min(var(--hgg-logo-text-tablet-min-height, 70px), var(--hgg-header-min-height-tablet, 72px)) !important;
    height: min(var(--hgg-logo-text-tablet-min-height, 70px), var(--hgg-header-min-height-tablet, 72px)) !important;
  }
  .site-header .huuguu-logo,
  .site-header .huuguu-logo img.logo-tablet {
    max-height: min(var(--hgg-logo-tablet-height, 70px), var(--hgg-header-min-height-tablet, 72px)) !important;
  }
}

@media (max-width: 767px) {/* huuguu v1.52.4: selector migrated to header/mobile engine. */
  .site-header .site-title-wrap {
    min-height: min(var(--hgg-logo-text-mobile-min-height, 60px), var(--hgg-header-min-height-mobile, 64px)) !important;
    height: min(var(--hgg-logo-text-mobile-min-height, 60px), var(--hgg-header-min-height-mobile, 64px)) !important;
  }
  .site-header .huuguu-logo,
  .site-header .huuguu-logo img.logo-mobile {
    max-height: min(var(--hgg-logo-mobile-height, 60px), var(--hgg-header-min-height-mobile, 64px)) !important;
  }
}

/* v77: Header actions, alignment and mobile stability. */
.site-header .huuguu-header-desktop--left.huuguu-header-desktop--no-actions {
  grid-template-columns: auto minmax(0, 1fr) !important;
}

.site-header .huuguu-header-desktop--left.huuguu-header-desktop--no-actions .header-nav {
  justify-content: var(--hgg-menu-justify, center) !important;
}

.site-header .huuguu-header-desktop--left.huuguu-header-desktop--no-actions .main-navigation,
.site-header .huuguu-header-desktop--left.huuguu-header-desktop--no-actions .main-navigation .menu,
.site-header .huuguu-header-desktop--left.huuguu-header-desktop--no-actions .main-navigation ul.menu,
.site-header .huuguu-header-desktop--left.huuguu-header-desktop--no-actions .main-navigation ul.primary-menu,
.site-header .huuguu-header-desktop--left .header-nav .main-navigation,
.site-header .huuguu-header-desktop--left .header-nav .main-navigation .menu,
.site-header .huuguu-header-desktop--left .header-nav .main-navigation ul.menu,
.site-header .huuguu-header-desktop--left .header-nav .main-navigation ul.primary-menu {
  justify-content: var(--hgg-menu-justify, center) !important;
}

.site-header .huuguu-header-desktop--center.huuguu-header-desktop--no-actions {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
}

.site-header .header-actions:empty,
.site-header .header-actions-extras:empty,
.site-header .mobile-actions:empty,
.site-header .mobile-utility-grid:empty {
  display: none !important;
}

@media (max-width: 1100px) {
  .site-header .huuguu-header-shell.site-header-inner {
    display: block !important;
    width: min(100%, var(--hgg-header-container, var(--hgg-container, 1240px))) !important;
    max-width: var(--hgg-header-container, var(--hgg-container, 1240px)) !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  .site-header .mobile-branding,
  .site-header .mobile-branding .site-branding,
  .site-header .mobile-branding .site-title-wrap {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .site-header .mobile-branding .site-title,
  .site-header .mobile-branding .site-title a {
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  .site-header .huuguu-mobile-panel {
    display: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 12px !important;
    clear: both !important;
  }

  .site-header .huuguu-mobile-panel.is-open {
    display: block !important;
  }

  .site-header .huuguu-mobile-panel .main-navigation,
  .site-header .huuguu-mobile-panel .main-navigation .menu,
  .site-header .huuguu-mobile-panel .main-navigation ul.menu,
  .site-header .huuguu-mobile-panel .main-navigation ul.primary-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 0 !important;
  }

  .site-header .huuguu-mobile-panel .main-navigation .menu > li,
  .site-header .huuguu-mobile-panel .main-navigation ul.menu > li,
  .site-header .huuguu-mobile-panel .main-navigation ul.primary-menu > li {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .site-header .huuguu-mobile-panel .main-navigation .menu > li > a,
  .site-header .huuguu-mobile-panel .main-navigation ul.menu > li > a,
  .site-header .huuguu-mobile-panel .main-navigation ul.primary-menu > li > a {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
  }

  .site-header .huuguu-mobile-panel .main-navigation .sub-menu {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* v79: centered logo layout and basic home overlay header. */
.site-header .huuguu-header-desktop--center {
  align-items: center !important;
}

.site-header .huuguu-header-desktop--center.huuguu-header-desktop--no-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-areas:
    "brand"
    "nav" !important;
  justify-items: center !important;
  align-items: center !important;
  row-gap: 8px !important;
}

.site-header .huuguu-header-desktop--center.huuguu-header-desktop--no-actions .header-branding--center {
  grid-area: brand !important;
  justify-content: center !important;
  width: 100% !important;
}

.site-header .huuguu-header-desktop--center.huuguu-header-desktop--no-actions .header-nav--left {
  grid-area: nav !important;
  justify-content: center !important;
  padding-right: 0 !important;
  width: 100% !important;
}

.site-header .huuguu-header-desktop--center.huuguu-header-desktop--no-actions .main-navigation,
.site-header .huuguu-header-desktop--center.huuguu-header-desktop--no-actions .main-navigation .menu,
.site-header .huuguu-header-desktop--center.huuguu-header-desktop--no-actions .main-navigation ul.menu,
.site-header .huuguu-header-desktop--center.huuguu-header-desktop--no-actions .main-navigation ul.primary-menu {
  justify-content: center !important;
  text-align: center !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.admin-bar .site-header--overlay {
  top: 32px !important;
}

.site-header--overlay .huuguu-header-shell.site-header-inner {
  background: transparent !important;
  border-color: rgba(255,255,255,.22) !important;
  box-shadow: none !important;
}

.site-header--overlay.site-header--premium .huuguu-header-shell.site-header-inner {
  background: rgba(255,255,255,.08) !important;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

@media (max-width: 782px) {
  .admin-bar .site-header--overlay {
    top: 46px !important;
  }
}

/* v79.1: centered logo visual balance and split header optical rhythm. */
.site-header .huuguu-header-desktop--split {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: max(24px, var(--hgg-header-gap, 28px)) !important;
  width: 100% !important;
}

.site-header .huuguu-header-desktop--split .header-branding--center {
  grid-column: 2 !important;
  justify-self: center !important;
  justify-content: center !important;
  text-align: center !important;
  min-width: max-content !important;
}

.site-header .huuguu-header-desktop--split .header-nav--left {
  grid-column: 1 !important;
  justify-self: end !important;
  justify-content: flex-end !important;
  width: 100% !important;
  min-width: 0 !important;
}

.site-header .huuguu-header-desktop--split .header-actions--split {
  grid-column: 3 !important;
  justify-self: start !important;
  justify-content: flex-start !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  gap: max(16px, calc(var(--hgg-header-gap, 28px) * .65)) !important;
}

.site-header .huuguu-header-desktop--split .header-nav--right {
  justify-content: flex-start !important;
  min-width: 0 !important;
}

.site-header .huuguu-header-desktop--split .main-navigation,
.site-header .huuguu-header-desktop--split .main-navigation .menu,
.site-header .huuguu-header-desktop--split .main-navigation ul.menu,
.site-header .huuguu-header-desktop--split .main-navigation ul.primary-menu {
  gap: max(18px, calc(var(--hgg-header-gap, 28px) * .72)) !important;
  flex-wrap: nowrap !important;
}

.site-header .huuguu-header-desktop--split .header-nav--left .main-navigation,
.site-header .huuguu-header-desktop--split .header-nav--left .main-navigation .menu,
.site-header .huuguu-header-desktop--split .header-nav--left .main-navigation ul.menu,
.site-header .huuguu-header-desktop--split .header-nav--left .main-navigation ul.primary-menu {
  justify-content: flex-end !important;
}

.site-header .huuguu-header-desktop--split .header-nav--right .main-navigation,
.site-header .huuguu-header-desktop--split .header-nav--right .main-navigation .menu,
.site-header .huuguu-header-desktop--split .header-nav--right .main-navigation ul.menu,
.site-header .huuguu-header-desktop--split .header-nav--right .main-navigation ul.primary-menu {
  justify-content: flex-start !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.site-header .huuguu-header-shell.site-header-inner {
  line-height: 1 !important;
}

.site-header--premium .huuguu-header-shell.site-header-inner {
  padding-left: max(20px, var(--hgg-structure-pad-x, 12px)) !important;
  padding-right: max(20px, var(--hgg-structure-pad-x, 12px)) !important;
}

@media (max-width: 1100px) {
  .site-header .huuguu-header-desktop--split {
    display: none !important;
  }
}

/* v80: centered logo with side actions header layout. */
.site-header .huuguu-header-desktop--center-actions {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  column-gap: max(18px, calc(var(--hgg-header-gap, 28px) * .72)) !important;
  width: 100% !important;
}

.site-header .huuguu-header-desktop--center-actions .header-side,
.site-header .huuguu-header-desktop--center-actions .header-nav,
.site-header .huuguu-header-desktop--center-actions .header-branding,
.site-header .huuguu-header-desktop--center-actions .header-actions {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
}

.site-header .huuguu-header-desktop--center-actions .header-side--left {
  grid-column: 1 !important;
  justify-content: flex-start !important;
  justify-self: start !important;
  white-space: nowrap !important;
}

.site-header .huuguu-header-desktop--center-actions .header-nav--left {
  grid-column: 2 !important;
  justify-content: flex-end !important;
  justify-self: stretch !important;
}

.site-header .huuguu-header-desktop--center-actions .header-branding--center {
  grid-column: 3 !important;
  justify-content: center !important;
  justify-self: center !important;
  text-align: center !important;
  min-width: max-content !important;
}

.site-header .huuguu-header-desktop--center-actions .header-nav--right {
  grid-column: 4 !important;
  justify-content: flex-start !important;
  justify-self: stretch !important;
}

.site-header .huuguu-header-desktop--center-actions .header-actions--right,
.site-header .huuguu-header-desktop--center-actions .header-side--right {
  grid-column: 5 !important;
  justify-content: flex-end !important;
  justify-self: end !important;
  gap: .75rem !important;
  white-space: nowrap !important;
}

.site-header .huuguu-header-desktop--center-actions .header-side-link {
  color: var(--hgg-menu-color, var(--hgg-text, #172033)) !important;
  font-size: .95rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.site-header .huuguu-header-desktop--center-actions .header-side-link:hover,
.site-header .huuguu-header-desktop--center-actions .header-side-link:focus {
  color: var(--hgg-menu-hover-color, var(--hgg-primary, #246de8)) !important;
}

.site-header .huuguu-header-desktop--center-actions .main-navigation,
.site-header .huuguu-header-desktop--center-actions .main-navigation .menu,
.site-header .huuguu-header-desktop--center-actions .main-navigation ul.menu,
.site-header .huuguu-header-desktop--center-actions .main-navigation ul.primary-menu {
  gap: max(18px, calc(var(--hgg-header-gap, 28px) * .72)) !important;
  flex-wrap: nowrap !important;
}

.site-header .huuguu-header-desktop--center-actions .header-nav--left .main-navigation,
.site-header .huuguu-header-desktop--center-actions .header-nav--left .main-navigation .menu,
.site-header .huuguu-header-desktop--center-actions .header-nav--left .main-navigation ul.menu,
.site-header .huuguu-header-desktop--center-actions .header-nav--left .main-navigation ul.primary-menu {
  justify-content: flex-end !important;
}

.site-header .huuguu-header-desktop--center-actions .header-nav--right .main-navigation,
.site-header .huuguu-header-desktop--center-actions .header-nav--right .main-navigation .menu,
.site-header .huuguu-header-desktop--center-actions .header-nav--right .main-navigation ul.menu,
.site-header .huuguu-header-desktop--center-actions .header-nav--right .main-navigation ul.primary-menu {
  justify-content: flex-start !important;
}

.site-header--overlay .huuguu-header-desktop--center-actions .header-side-link {
  color: var(--hgg-overlay-menu-color, #ffffff) !important;
}

@media (max-width: 1180px) {
  .site-header .huuguu-header-desktop--center-actions {
    display: none !important;
  }
}


/* v80.2: transparent header compensation. */
.site-main--header-overlay-offset {
  padding-top: var(--hgg-header-overlay-offset, var(--hgg-header-min-height, 80px)) !important;
}

@media (max-width: 1024px) {
  .site-main--header-overlay-offset {
    padding-top: var(--hgg-header-overlay-offset-tablet, var(--hgg-header-overlay-offset, 60px)) !important;
  }
}

@media (max-width: 767px) {
  .site-main--header-overlay-offset {
    padding-top: var(--hgg-header-overlay-offset-mobile, var(--hgg-header-overlay-offset, 60px)) !important;
  }
}

/* v80.4: Keep header presets visual-only and make Minimal respect the header background token.
 * Presets must not own layout width; width remains controlled by --hgg-header-container / header width mode.
 */
.site-header--minimal,
body .site-header--minimal {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
}

.site-header--minimal .huuguu-header-shell.site-header-inner,
body .site-header--minimal .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
}

.site-header--premium .huuguu-header-shell.site-header-inner,
body .site-header--premium .huuguu-header-shell.site-header-inner {
  width: min(100%, var(--hgg-header-container, var(--hgg-container, 1240px))) !important;
  max-width: var(--hgg-header-container, var(--hgg-container, 1240px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

/* v80.5: Header transparent background opacity and optional glass blur. */
.site-header .huuguu-header-shell.site-header-inner,
body .site-header .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-backdrop-blur, 0px));
  backdrop-filter: blur(var(--hgg-header-backdrop-blur, 0px));
}

.site-header--minimal .huuguu-header-shell.site-header-inner,
body .site-header--minimal .huuguu-header-shell.site-header-inner,
.site-header--premium .huuguu-header-shell.site-header-inner,
body .site-header--premium .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-backdrop-blur, 0px));
  backdrop-filter: blur(var(--hgg-header-backdrop-blur, 0px));
}

/* v80.6: apply the effective rgba header background to the actual rendered shell.
 * The opacity control is converted into --hgg-header-bg-final in PHP; do not use
 * CSS opacity on the header, because that would fade the logo, menu and actions.
 */
.site-header .huuguu-header-shell.site-header-inner,
body .site-header .huuguu-header-shell.site-header-inner,
.site-header--classic .huuguu-header-shell.site-header-inner,
body .site-header--classic .huuguu-header-shell.site-header-inner,
.site-header--minimal .huuguu-header-shell.site-header-inner,
body .site-header--minimal .huuguu-header-shell.site-header-inner,
.site-header--premium .huuguu-header-shell.site-header-inner,
body .site-header--premium .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-backdrop-blur, 0px)) !important;
  backdrop-filter: blur(var(--hgg-header-backdrop-blur, 0px)) !important;
}

/* v80.7: transparent header contrast helpers.
 * These classes affect only the overlay header state, so normal headers keep
 * their regular Customizer colors.
 */
.site-header--overlay-contrast-light {
  --hgg-header-overlay-effective-link: #ffffff;
  --hgg-header-overlay-effective-hover: #ffffff;
  --hgg-header-overlay-effective-brand: #ffffff;
}

.site-header--overlay-contrast-dark {
  --hgg-header-overlay-effective-link: #111827;
  --hgg-header-overlay-effective-hover: #007721;
  --hgg-header-overlay-effective-brand: #111827;
}

.site-header--overlay-contrast-custom {
  --hgg-header-overlay-effective-link: var(--hgg-header-overlay-link, #ffffff);
  --hgg-header-overlay-effective-hover: var(--hgg-header-overlay-hover, #ffffff);
  --hgg-header-overlay-effective-brand: var(--hgg-header-overlay-brand, #ffffff);
}

.site-header--overlay-contrast-light .site-title a,
.site-header--overlay-contrast-dark .site-title a,
.site-header--overlay-contrast-custom .site-title a,
.site-header--overlay-contrast-light .header-side-link,
.site-header--overlay-contrast-dark .header-side-link,
.site-header--overlay-contrast-custom .header-side-link {
  color: var(--hgg-header-overlay-effective-brand) !important;
}

.site-header--overlay-contrast-light .main-navigation > ul > li > a,
.site-header--overlay-contrast-dark .main-navigation > ul > li > a,
.site-header--overlay-contrast-custom .main-navigation > ul > li > a,
.site-header--overlay-contrast-light .main-navigation > .menu > li > a,
.site-header--overlay-contrast-dark .main-navigation > .menu > li > a,
.site-header--overlay-contrast-custom .main-navigation > .menu > li > a,
.site-header--overlay-contrast-light .menu-toggle,
.site-header--overlay-contrast-dark .menu-toggle,
.site-header--overlay-contrast-custom .menu-toggle,
.site-header--overlay-contrast-light .header-icon-link,
.site-header--overlay-contrast-dark .header-icon-link,
.site-header--overlay-contrast-custom .header-icon-link {
  color: var(--hgg-header-overlay-effective-link) !important;
}

.site-header--overlay-contrast-light .main-navigation > ul > li > a:hover,
.site-header--overlay-contrast-dark .main-navigation > ul > li > a:hover,
.site-header--overlay-contrast-custom .main-navigation > ul > li > a:hover,
.site-header--overlay-contrast-light .main-navigation > .menu > li > a:hover,
.site-header--overlay-contrast-dark .main-navigation > .menu > li > a:hover,
.site-header--overlay-contrast-custom .main-navigation > .menu > li > a:hover,
.site-header--overlay-contrast-light .main-navigation > ul > li.current-menu-item > a,
.site-header--overlay-contrast-dark .main-navigation > ul > li.current-menu-item > a,
.site-header--overlay-contrast-custom .main-navigation > ul > li.current-menu-item > a {
  color: var(--hgg-header-overlay-effective-hover) !important;
}

.site-header--overlay-contrast-light .submenu-toggle,
.site-header--overlay-contrast-dark .submenu-toggle,
.site-header--overlay-contrast-custom .submenu-toggle {
  color: var(--hgg-header-overlay-effective-link) !important;
}

.site-header--overlay-contrast-light .submenu-toggle__icon,
.site-header--overlay-contrast-dark .submenu-toggle__icon,
.site-header--overlay-contrast-custom .submenu-toggle__icon {
  border-color: currentColor !important;
}


/* v80.8: Glass header mode.
 * A frosted header must sit over the content and apply translucency only to
 * the header surface, never to the logo, menu or actions.
 */
.site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, rgba(255,255,255,.65))) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-glass-blur, 24px)) !important;
  backdrop-filter: blur(var(--hgg-header-glass-blur, 24px)) !important;
}

.site-main--header-glass {
  padding-top: 0 !important;
}

/* v80.9: Smart glass behavior.
 * Glass mode should be visible immediately even when the regular opacity
 * control is still at 100%. PHP now caps the glass surface alpha to 65% by
 * default and guarantees at least 24px blur. Content must be allowed to pass
 * behind the header, so compensation is forced to zero while glass is active.
 */
.site-header--overlay.site-header--glass {
  background: transparent !important;
}

.site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, rgba(255,255,255,.65))) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-glass-blur, 24px)) saturate(1.15) !important;
  backdrop-filter: blur(var(--hgg-header-glass-blur, 24px)) saturate(1.15) !important;
}

.site-main--header-glass.site-main--header-overlay-offset,
body .site-main--header-glass.site-main--header-overlay-offset {
  padding-top: 0 !important;
}

/* v80.10: Glass header uses a white frosted surface, not the regular header
 * background color. This must outrank the generic v80.6 background rule and the
 * preset selectors, especially when the preset background is a strong color.
 */
.site-header.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--classic.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--minimal.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--premium.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--classic.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--minimal.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--premium.site-header--glass .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, rgba(255,255,255,.65))) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-glass-blur, 24px)) saturate(1.15) !important;
  backdrop-filter: blur(var(--hgg-header-glass-blur, 24px)) saturate(1.15) !important;
}
/* v80.11: Glass Auto Mode final behavior.
 * When Glass is active, the header becomes a real frosted overlay and the page
 * compensation is forcibly removed. The Customizer controls are hidden by
 * customizer-header-overlay.js; this CSS is the frontend safety net.
 */
.site-header--overlay.site-header--glass {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 999 !important;
  background: transparent !important;
}

.admin-bar .site-header--overlay.site-header--glass {
  top: 32px !important;
}

@media (max-width: 782px) {
  .admin-bar .site-header--overlay.site-header--glass {
    top: 46px !important;
  }
}

.site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header.site-header--glass .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, rgba(255,255,255,.65))) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-glass-blur, 24px)) saturate(1.15) !important;
  backdrop-filter: blur(var(--hgg-header-glass-blur, 24px)) saturate(1.15) !important;
}

.site-main.site-main--header-glass,
.site-main.site-main--header-glass.site-main--header-overlay-offset,
body .site-main.site-main--header-glass,
body .site-main.site-main--header-glass.site-main--header-overlay-offset {
  padding-top: 0 !important;
}

/* v80.12: Glass RGBA continuity fix.
 * Glass mode uses the same background color selected in Preset visual,
 * converted to RGBA by PHP. Opacity changes are continuous: 100% is solid,
 * 99% is almost solid, and lower values become progressively translucent.
 * Glass only adds backdrop blur/saturate.
 */
.site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--classic.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--minimal.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--premium.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--classic.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--minimal.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--premium.site-header--glass .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, rgba(255,255,255,.65))) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-glass-blur, 24px)) saturate(1.15) !important;
  backdrop-filter: blur(var(--hgg-header-glass-blur, 24px)) saturate(1.15) !important;
}

/* v80.13: Glass color continuity hard fix. */
.site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--classic.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--minimal.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--premium.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--classic.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--minimal.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--premium.site-header--glass .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, rgba(255,255,255,.65))) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-glass-blur, var(--hgg-header-backdrop-blur, 24px))) saturate(1.15) !important;
  backdrop-filter: blur(var(--hgg-header-glass-blur, var(--hgg-header-backdrop-blur, 24px))) saturate(1.15) !important;
}

/* v80.14: Header background dedupe authority.
 * The header surface background has one source of truth: --hgg-header-bg-final.
 * Presets may control radius, border and shadow, but must never bypass the RGBA/opacity token.
 */
.site-header .huuguu-header-shell.site-header-inner,
body .site-header .huuguu-header-shell.site-header-inner,
.site-header--classic .huuguu-header-shell.site-header-inner,
body .site-header--classic .huuguu-header-shell.site-header-inner,
.site-header--minimal .huuguu-header-shell.site-header-inner,
body .site-header--minimal .huuguu-header-shell.site-header-inner,
.site-header--premium .huuguu-header-shell.site-header-inner,
body .site-header--premium .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-backdrop-blur, 0px)) !important;
  backdrop-filter: blur(var(--hgg-header-backdrop-blur, 0px)) !important;
}

.site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--overlay.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--classic.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--minimal.site-header--glass .huuguu-header-shell.site-header-inner,
.site-header--premium.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--classic.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--minimal.site-header--glass .huuguu-header-shell.site-header-inner,
body .site-header--premium.site-header--glass .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, rgba(255,255,255,.65))) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-glass-blur, var(--hgg-header-backdrop-blur, 24px))) saturate(1.15) !important;
  backdrop-filter: blur(var(--hgg-header-glass-blur, var(--hgg-header-backdrop-blur, 24px))) saturate(1.15) !important;
}

/* v80.17.1: Smart scroll header (Glass -> solid).
 * Applies only when Glass mode and Smart Scroll are active. The normal top state
 * keeps the selected RGBA color/blur; the scrolled state uses dedicated tokens.
 */
.site-header--glass.site-header--smart-scroll .huuguu-header-shell.site-header-inner,
body .site-header--glass.site-header--smart-scroll .huuguu-header-shell.site-header-inner {
  transition: background-color .24s ease, background .24s ease, -webkit-backdrop-filter .24s ease, backdrop-filter .24s ease, box-shadow .24s ease, border-color .24s ease !important;
  will-change: background, backdrop-filter;
}

.site-header--glass.site-header--smart-scroll.is-scrolled .huuguu-header-shell.site-header-inner,
body .site-header--glass.site-header--smart-scroll.is-scrolled .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-scroll-bg-final, var(--hgg-header-bg-final, rgba(255,255,255,.92))) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-scroll-backdrop-blur, 10px)) saturate(1.08) !important;
  backdrop-filter: blur(var(--hgg-header-scroll-backdrop-blur, 10px)) saturate(1.08) !important;
}


/* v80.18: Smart scroll visual morph.
 * Top state stays simplified; scrolled state receives the premium/card surface.
 * This only runs when the dedicated header class is present, so normal presets remain untouched.
 */
.site-header--glass.site-header--smart-scroll.site-header--scroll-morph-premium .huuguu-header-shell.site-header-inner,
body .site-header--glass.site-header--smart-scroll.site-header--scroll-morph-premium .huuguu-header-shell.site-header-inner {
  border-radius: 0 !important;
  box-shadow: none !important;
  border-color: transparent !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.site-header--glass.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner,
body .site-header--glass.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner {
  border-radius: var(--hgg-header-shell-radius, 18px) !important;
  box-shadow: var(--hgg-header-shell-shadow, 0 14px 36px rgba(17,34,68,.12)) !important;
  border: var(--hgg-header-shell-border, 1px solid var(--hgg-header-border-color, rgba(23,32,51,.10))) !important;
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

@media (max-width: 767px) {
  .site-header--glass.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner,
  body .site-header--glass.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border-radius: 0 !important;
  }
}

/* v80.19: Smart scroll shrink. */
.site-header--glass.site-header--smart-scroll.site-header--scroll-shrink .huuguu-header-shell.site-header-inner,
body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink .huuguu-header-shell.site-header-inner,
.site-header--glass.site-header--smart-scroll.site-header--scroll-shrink .huuguu-header-desktop,
body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink .huuguu-header-desktop,
.site-header--glass.site-header--smart-scroll.site-header--scroll-shrink .huuguu-mobile-topbar,
body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink .huuguu-mobile-topbar,
.site-header--glass.site-header--smart-scroll.site-header--scroll-shrink .site-branding img,
body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink .site-branding img,
.site-header--glass.site-header--smart-scroll.site-header--scroll-shrink .site-title a,
body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink .site-title a {
  transition: min-height .24s ease, height .24s ease, max-height .24s ease, transform .24s ease, font-size .24s ease, line-height .24s ease !important;
}

.site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-header-shell.site-header-inner,
body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-header-shell.site-header-inner,
.site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-header-desktop,
body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-header-desktop {
  min-height: var(--hgg-header-scroll-height-desktop, 64px) !important;
  height: var(--hgg-header-scroll-height-desktop, 64px) !important;
}

.site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .site-branding img,
body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .site-branding img,
.site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .site-title a,
body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .site-title a {
  transform: scale(var(--hgg-header-scroll-logo-scale, .88)) !important;
  transform-origin: center center !important;
  display: inline-block !important;
}

@media (max-width: 1024px) {
  .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-header-shell.site-header-inner,
  body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-header-shell.site-header-inner,
  .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-header-desktop,
  body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-header-desktop,
  .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-mobile-topbar,
  body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-mobile-topbar {
    min-height: var(--hgg-header-scroll-height-tablet, 56px) !important;
    height: var(--hgg-header-scroll-height-tablet, 56px) !important;
  }
}

@media (max-width: 767px) {
  .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-header-shell.site-header-inner,
  body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-header-shell.site-header-inner,
  .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-mobile-topbar,
  body .site-header--glass.site-header--smart-scroll.site-header--scroll-shrink.is-scrolled .huuguu-mobile-topbar {
    min-height: var(--hgg-header-scroll-height-mobile, 56px) !important;
    height: var(--hgg-header-scroll-height-mobile, 56px) !important;
  }
}

/* === v81.2 STRUCTURAL CONTENT SURFACE AUTHORITY ===
 * Visual surface belongs to structural wrappers such as .huuguu-content-wrap.
 * Semantic article elements must not receive border, radius, shadow or surface background.
 * This neutralizes older .hgg-card/.hgg-page-card/.hgg-single-card rules without breaking archive card classes on non-article elements.
 */
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-card,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-page-card,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-post-card,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-single-card,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.type-page,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.type-post {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  border-color: transparent !important;
  border-width: 0 !important;
  border-style: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  overflow: visible !important;
}

body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-card > .entry-header,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-card > .entry-content,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-card > .entry-footer,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-page-card > .entry-header,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-page-card > .entry-content,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-page-card > .entry-footer,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-single-card > .entry-header,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-single-card > .entry-content,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.hgg-single-card > .entry-footer,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.type-page > .entry-header,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.type-page > .entry-content,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.type-page > .entry-footer,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.type-post > .entry-header,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.type-post > .entry-content,
body:not(.elementor-page):not(.woocommerce):not(.woocommerce-page) article.type-post > .entry-footer {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:not(.elementor-page) .site-main .site-main-inner > .huuguu-content-wrap,
body:not(.elementor-page) .site-main .site-main-inner > .huuguu-container.huuguu-content-wrap {
  background-color: var(--hgg-content-surface-bg, var(--hgg-content-bg, #ffffff)) !important;
  border: var(--hgg-content-border-width, 1px) solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) !important;
  border-radius: var(--hgg-content-radius, 6px) !important;
  box-shadow: var(--hgg-content-shadow, none) !important;
}

body.elementor-page .site-main .site-main-inner > .huuguu-content-wrap,
body.elementor-page .site-main .site-main-inner > .huuguu-container.huuguu-content-wrap {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}


/* v81.12: Header desktop menu alignment fix.
   The Customizer setting writes --hgg-menu-justify. For the left-logo layout,
   the nav area and the actual menu must both consume the token. */
.site-header .huuguu-header-desktop--left .header-nav {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: var(--hgg-menu-justify, flex-end) !important;
}

.site-header .huuguu-header-desktop--left .header-nav .main-navigation {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: var(--hgg-menu-justify, flex-end) !important;
}

.site-header .huuguu-header-desktop--left .header-nav .main-navigation .menu,
.site-header .huuguu-header-desktop--left .header-nav .main-navigation ul.menu,
.site-header .huuguu-header-desktop--left .header-nav .main-navigation ul.primary-menu {
  width: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: var(--hgg-menu-justify, flex-end) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}


/* v81.13 - Header actions controls and cart badge normalization */
.site-header .header-actions .hgg-header-link,
.site-header .mobile-topbar-actions .hgg-header-link,
.site-header .huuguu-mobile-panel .hgg-header-link {
  color: var(--hgg-header-action-color, var(--hgg-primary, #007721)) !important;
}

.site-header .header-actions .hgg-header-link:hover,
.site-header .header-actions .hgg-header-link:focus-visible,
.site-header .mobile-topbar-actions .hgg-header-link:hover,
.site-header .mobile-topbar-actions .hgg-header-link:focus-visible,
.site-header .huuguu-mobile-panel .hgg-header-link:hover,
.site-header .huuguu-mobile-panel .hgg-header-link:focus-visible {
  color: var(--hgg-header-action-hover-color, var(--hgg-primary-dark, #045f12)) !important;
}

.site-header .hgg-header-link svg {
  stroke: currentColor !important;
}

.site-header .header-actions .hgg-header-link--display-icon_only .hgg-header-link__label,
.site-header .mobile-topbar-actions .hgg-header-link--display-icon_only .hgg-header-link__label,
.site-header .huuguu-mobile-panel .hgg-header-link--display-icon_only .hgg-header-link__label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.site-header .header-actions .hgg-header-link--display-text_only .hgg-header-link__icon,
.site-header .mobile-topbar-actions .hgg-header-link--display-text_only .hgg-header-link__icon,
.site-header .huuguu-mobile-panel .hgg-header-link--display-text_only .hgg-header-link__icon {
  display: none !important;
}

.site-header .header-actions .hgg-header-link--cart,
.site-header .mobile-topbar-actions .hgg-header-link--cart,
.site-header .huuguu-mobile-panel .hgg-header-link--cart {
  position: relative !important;
  min-width: 34px;
  min-height: 34px;
}

.site-header .header-actions .hgg-header-link--cart .hgg-cart-count,
.site-header .mobile-topbar-actions .hgg-header-link--cart .hgg-cart-count,
.site-header .huuguu-mobile-panel .hgg-header-link--cart .hgg-cart-count {
  position: absolute !important;
  top: -8px !important;
  right: -10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 18px !important;
  height: 18px !important;
  padding: 0 5px !important;
  border-radius: 999px !important;
  line-height: 1 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  background: var(--hgg-header-cart-badge-bg, var(--hgg-primary, #007721)) !important;
  color: var(--hgg-header-cart-badge-text, #ffffff) !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .16) !important;
}

.site-header .header-actions .hgg-header-link--cart.hgg-header-link--display-text_only .hgg-cart-count,
.site-header .huuguu-mobile-panel .hgg-header-link--cart.hgg-header-link--display-text_only .hgg-cart-count {
  position: static !important;
  margin-left: 6px !important;
}

/* v81.14 - Header actions hard connection cleanup.
   Account/cart actions must consume their own tokens and must not inherit old link/Woo button colors. */
.site-header .header-actions .hgg-header-link,
.site-header .mobile-topbar-actions .hgg-header-link,
.site-header .huuguu-mobile-panel .hgg-header-link,
.site-header .header-actions .hgg-header-link:visited,
.site-header .mobile-topbar-actions .hgg-header-link:visited,
.site-header .huuguu-mobile-panel .hgg-header-link:visited {
  color: var(--hgg-header-action-color, #007721) !important;
  background: transparent !important;
  border-color: transparent !important;
  text-decoration: none !important;
}

.site-header .header-actions .hgg-header-link:hover,
.site-header .header-actions .hgg-header-link:focus,
.site-header .header-actions .hgg-header-link:focus-visible,
.site-header .mobile-topbar-actions .hgg-header-link:hover,
.site-header .mobile-topbar-actions .hgg-header-link:focus,
.site-header .mobile-topbar-actions .hgg-header-link:focus-visible,
.site-header .huuguu-mobile-panel .hgg-header-link:hover,
.site-header .huuguu-mobile-panel .hgg-header-link:focus,
.site-header .huuguu-mobile-panel .hgg-header-link:focus-visible {
  color: var(--hgg-header-action-hover-color, #045f12) !important;
  background: transparent !important;
  border-color: transparent !important;
}

.site-header .header-actions .hgg-header-link__icon,
.site-header .mobile-topbar-actions .hgg-header-link__icon,
.site-header .huuguu-mobile-panel .hgg-header-link__icon,
.site-header .header-actions .hgg-header-link__label,
.site-header .mobile-topbar-actions .hgg-header-link__label,
.site-header .huuguu-mobile-panel .hgg-header-link__label {
  color: inherit !important;
}

.site-header .header-actions .hgg-header-link svg,
.site-header .mobile-topbar-actions .hgg-header-link svg,
.site-header .huuguu-mobile-panel .hgg-header-link svg {
  color: currentColor !important;
  stroke: currentColor !important;
  fill: none !important;
}

.site-header .header-actions .hgg-header-link--display-icon_only .hgg-header-link__label,
.site-header .mobile-topbar-actions .hgg-header-link--display-icon_only .hgg-header-link__label,
.site-header .huuguu-mobile-panel .hgg-header-link--display-icon_only .hgg-header-link__label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.site-header .header-actions .hgg-header-link--display-text_only .hgg-header-link__icon,
.site-header .mobile-topbar-actions .hgg-header-link--display-text_only .hgg-header-link__icon,
.site-header .huuguu-mobile-panel .hgg-header-link--display-text_only .hgg-header-link__icon {
  display: none !important;
}

.site-header .header-actions .hgg-header-link--cart,
.site-header .mobile-topbar-actions .hgg-header-link--cart,
.site-header .huuguu-mobile-panel .hgg-header-link--cart {
  position: relative !important;
}

.site-header .header-actions .hgg-header-link--cart .hgg-cart-count,
.site-header .mobile-topbar-actions .hgg-header-link--cart .hgg-cart-count,
.site-header .huuguu-mobile-panel .hgg-header-link--cart .hgg-cart-count {
  position: absolute !important;
  top: -8px !important;
  right: -10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 18px !important;
  height: 18px !important;
  padding: 0 5px !important;
  border-radius: 999px !important;
  background: var(--hgg-header-cart-badge-bg, #246de8) !important;
  color: var(--hgg-header-cart-badge-text, #ffffff) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .16) !important;
}

.site-header .header-actions .hgg-header-link--cart.hgg-header-link--display-text_only .hgg-cart-count,
.site-header .huuguu-mobile-panel .hgg-header-link--cart.hgg-header-link--display-text_only .hgg-cart-count {
  position: static !important;
  margin-left: 6px !important;
}

/* v81.15 - Header actions stable hard fix.
   Keep account/cart controls connected and normalize cart badge position on desktop/mobile. */
.site-header .header-actions .hgg-header-link,
.site-header .mobile-topbar-actions .hgg-header-link,
.site-header .huuguu-mobile-panel .hgg-header-link,
.site-header .header-actions .hgg-header-link:visited,
.site-header .mobile-topbar-actions .hgg-header-link:visited,
.site-header .huuguu-mobile-panel .hgg-header-link:visited {
  color: var(--hgg-header-action-color, #007721) !important;
  background: transparent !important;
  border-color: transparent !important;
  text-decoration: none !important;
}

.site-header .header-actions .hgg-header-link:hover,
.site-header .header-actions .hgg-header-link:focus,
.site-header .mobile-topbar-actions .hgg-header-link:hover,
.site-header .mobile-topbar-actions .hgg-header-link:focus,
.site-header .huuguu-mobile-panel .hgg-header-link:hover,
.site-header .huuguu-mobile-panel .hgg-header-link:focus {
  color: var(--hgg-header-action-hover-color, #045f12) !important;
  background: transparent !important;
  border-color: transparent !important;
}

.site-header .header-actions .hgg-header-link__icon,
.site-header .mobile-topbar-actions .hgg-header-link__icon,
.site-header .huuguu-mobile-panel .hgg-header-link__icon,
.site-header .header-actions .hgg-header-link__label,
.site-header .mobile-topbar-actions .hgg-header-link__label,
.site-header .huuguu-mobile-panel .hgg-header-link__label {
  color: inherit !important;
}

.site-header .header-actions .hgg-header-link svg,
.site-header .mobile-topbar-actions .hgg-header-link svg,
.site-header .huuguu-mobile-panel .hgg-header-link svg {
  color: currentColor !important;
  stroke: currentColor !important;
  fill: none !important;
}

.site-header .header-actions .hgg-header-link--cart,
.site-header .mobile-topbar-actions .hgg-header-link--cart,
.site-header .huuguu-mobile-panel .hgg-header-link--cart {
  position: relative !important;
  overflow: visible !important;
}

.site-header .header-actions .hgg-header-link--cart .hgg-cart-count,
.site-header .mobile-topbar-actions .hgg-header-link--cart .hgg-cart-count,
.site-header .huuguu-mobile-panel .hgg-header-link--cart .hgg-cart-count {
  position: absolute !important;
  top: -5px !important;
  right: -2px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 16px !important;
  height: 16px !important;
  padding: 0 4px !important;
  border-radius: 999px !important;
  background: var(--hgg-header-cart-badge-bg, #246de8) !important;
  color: var(--hgg-header-cart-badge-text, #ffffff) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .14) !important;
}

.site-header .header-actions .hgg-header-link--cart.hgg-header-link--display-text_only .hgg-cart-count,
.site-header .mobile-topbar-actions .hgg-header-link--cart.hgg-header-link--display-text_only .hgg-cart-count,
.site-header .huuguu-mobile-panel .hgg-header-link--cart.hgg-header-link--display-text_only .hgg-cart-count {
  position: static !important;
  margin-left: 6px !important;
}

/* v81.16 - Mobile menu premium UX.
   The mobile panel is navigation, so account/cart always keep text visible there.
   Desktop/topbar still obey the Header Actions display mode. */
@media (max-width: 782px) {
  .site-header .huuguu-mobile-panel {
    width: min(92vw, 420px) !important;
    max-width: min(92vw, 420px) !important;
    padding: 16px !important;
    border-radius: 16px !important;
    background: var(--hgg-mobile-panel-bg, #ffffff) !important;
    box-shadow: 0 22px 70px rgba(0, 0, 0, .26) !important;
    overflow: visible !important;
  }

  .site-header .huuguu-mobile-panel .mobile-nav,
  .site-header .huuguu-mobile-panel .main-navigation {
    width: 100% !important;
  }

  .site-header .huuguu-mobile-panel .main-navigation .menu,
  .site-header .huuguu-mobile-panel .main-navigation ul.menu,
  .site-header .huuguu-mobile-panel .main-navigation ul.primary-menu {
    width: 100% !important;
    gap: 0 !important;
    padding: 4px 0 0 !important;
    margin: 0 !important;
  }

  .site-header .huuguu-mobile-panel .main-navigation .menu > li,
  .site-header .huuguu-mobile-panel .main-navigation ul.primary-menu > li {
    width: 100% !important;
    border-bottom: 1px solid rgba(15, 23, 42, .08) !important;
  }

  .site-header .huuguu-mobile-panel .main-navigation .menu > li > a,
  .site-header .huuguu-mobile-panel .main-navigation ul.primary-menu > li > a {
    display: flex !important;
    align-items: center !important;
    min-height: 42px !important;
    padding: 12px 10px !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 650 !important;
  }

  .site-header .huuguu-mobile-panel .mobile-actions {
    margin-top: 16px !important;
    padding-top: 14px !important;
    border-top: 1px solid rgba(15, 23, 42, .10) !important;
  }

  .site-header .huuguu-mobile-panel .mobile-utility-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    align-items: stretch !important;
  }

  .site-header .huuguu-mobile-panel .hgg-header-link,
  .site-header .huuguu-mobile-panel .hgg-header-link:visited {
    position: relative !important;
    min-height: 42px !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: rgba(15, 23, 42, .035) !important;
    color: var(--hgg-header-action-color, #007721) !important;
    text-decoration: none !important;
  }

  .site-header .huuguu-mobile-panel .hgg-header-link:hover,
  .site-header .huuguu-mobile-panel .hgg-header-link:focus {
    background: rgba(15, 23, 42, .06) !important;
    color: var(--hgg-header-action-hover-color, #045f12) !important;
  }

  .site-header .huuguu-mobile-panel .hgg-header-link__label,
  .site-header .huuguu-mobile-panel .hgg-header-link--display-icon_only .hgg-header-link__label,
  .site-header .huuguu-mobile-panel .hgg-header-link--display-text_only .hgg-header-link__label {
    position: static !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    white-space: normal !important;
    border: 0 !important;
    display: inline !important;
    font-weight: 700 !important;
  }

  .site-header .huuguu-mobile-panel .hgg-header-link__icon,
  .site-header .huuguu-mobile-panel .hgg-header-link--display-text_only .hgg-header-link__icon {
    display: inline-flex !important;
    width: 18px !important;
    height: 18px !important;
    flex: 0 0 18px !important;
  }

  .site-header .huuguu-mobile-panel .hgg-header-link--cart .hgg-cart-count {
    position: absolute !important;
    top: -5px !important;
    right: -2px !important;
  }
}

/* v81.17 — Blog single no-sidebar layout hardening. */
body.single-post.huuguu-blog-layout-contained_no_sidebar:not(.elementor-page) .huuguu-blog-wrap,
body.single-post.huuguu-blog-layout-full_no_sidebar:not(.elementor-page) .huuguu-blog-wrap,
body.huuguu-blog-single.huuguu-blog-layout-contained_no_sidebar:not(.elementor-page) .huuguu-blog-wrap,
body.huuguu-blog-single.huuguu-blog-layout-full_no_sidebar:not(.elementor-page) .huuguu-blog-wrap {
    display: block !important;
}

body.single-post.huuguu-blog-layout-contained_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-primary,
body.single-post.huuguu-blog-layout-full_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-primary,
body.huuguu-blog-single.huuguu-blog-layout-contained_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-primary,
body.huuguu-blog-single.huuguu-blog-layout-full_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-primary {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

body.single-post.huuguu-blog-layout-contained_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-blog-sidebar,
body.single-post.huuguu-blog-layout-full_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-blog-sidebar,
body.single-post.huuguu-blog-layout-contained_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > #secondary,
body.single-post.huuguu-blog-layout-full_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > #secondary,
body.huuguu-blog-single.huuguu-blog-layout-contained_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-blog-sidebar,
body.huuguu-blog-single.huuguu-blog-layout-full_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-blog-sidebar,
body.huuguu-blog-single.huuguu-blog-layout-contained_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > #secondary,
body.huuguu-blog-single.huuguu-blog-layout-full_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > #secondary {
    display: none !important;
}


/* v81.18 — Blog single editorial mode.
 * The editorial mode is a true no-sidebar reading layout. It keeps the title/meta,
 * featured image, content, post footer, author box, navigation, related posts and
 * comments in one centered primary column, without reserving sidebar space.
 */
body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial {
    display: block !important;
    width: min(100%, var(--hgg-blog-single-container, var(--hgg-container, 1240px))) !important;
    max-width: var(--hgg-blog-single-container, var(--hgg-container, 1240px)) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-primary,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-primary,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial > .huuguu-primary,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial > .huuguu-primary {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-blog-sidebar,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-blog-sidebar,
body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > #secondary,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > #secondary,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial > .huuguu-blog-sidebar,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial > .huuguu-blog-sidebar,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial > #secondary,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial > #secondary {
    display: none !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header {
    max-width: var(--hgg-blog-single-content-width, 860px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: var(--hgg-blog-single-title-align, center) !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-title,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-title,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-title,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-title {
    text-align: inherit !important;
    margin-bottom: var(--hgg-blog-single-title-margin-bottom, 12px) !important;
    line-height: 1.2 !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-meta,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-meta,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-meta,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-meta {
    justify-content: center !important;
    margin-bottom: var(--hgg-blog-single-meta-margin-bottom, 28px) !important;
    font-size: 14px !important;
    opacity: .75 !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .post-thumbnail,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .post-thumbnail,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .post-thumbnail,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .post-thumbnail {
    width: min(100%, var(--hgg-blog-single-media-width, 920px)) !important;
    max-width: var(--hgg-blog-single-media-width, 920px) !important;
    margin: var(--hgg-blog-single-media-margin-top, var(--hgg-blog-single-image-space-top, 32px)) auto var(--hgg-blog-single-media-margin-bottom, var(--hgg-blog-single-image-space-bottom, 32px)) !important;
    border-radius: var(--hgg-content-radius, 12px) !important;
    overflow: hidden !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .post-thumbnail img,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .post-thumbnail img,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .post-thumbnail img,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .post-thumbnail img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-content,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-content,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-content,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-content {
    max-width: var(--hgg-blog-single-content-width, 860px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-meta-footer,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-meta-footer,
body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-author-box,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-author-box,
body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-navigation,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-navigation,
body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .comments-area,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .comments-area,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-meta-footer,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-meta-footer,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-author-box,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-author-box,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-navigation,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-navigation,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .comments-area,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .comments-area {
    max-width: var(--hgg-blog-single-content-width, 860px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-related-posts,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-related-posts,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-related-posts,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-related-posts {
    max-width: var(--hgg-blog-single-container, var(--hgg-container, 1240px)) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

@media (max-width: 768px) {
    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header {
        text-align: center !important;
    }
}


/* v81.20 — Blog single editable tokens. */
body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-eyebrow,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-eyebrow,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-eyebrow,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-eyebrow {
    display: block !important;
    margin-bottom: 10px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    opacity: .62 !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-content,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-content,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-content,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-content {
    margin-top: 32px !important;
    font-size: var(--hgg-blog-single-content-font-size, 17px) !important;
    line-height: var(--hgg-blog-single-content-line-height, 1.7) !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-content p,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-content p,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-content p,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-content p {
    margin-bottom: 20px !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-author-box,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-author-box,
body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-navigation,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-navigation,
body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-related-posts,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-related-posts,
body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .comments-area,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .comments-area,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-author-box,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-author-box,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-navigation,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-navigation,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-related-posts,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-related-posts,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .comments-area,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .comments-area {
    margin-top: var(--hgg-blog-single-section-gap, 64px) !important;
}

/* v81.21 — Blog single responsive polish + container isolation.
 * Keeps the editorial single layout independent from global body/page spacing,
 * prevents mobile squeeze, and makes the hero/title/media scale cleanly.
 */
body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial {
    box-sizing: border-box !important;
    width: min(100%, var(--hgg-blog-single-container, var(--hgg-container, 1240px))) !important;
    max-width: var(--hgg-blog-single-container, var(--hgg-container, 1240px)) !important;
    padding-right: clamp(16px, 4vw, 32px) !important;
    padding-left: clamp(16px, 4vw, 32px) !important;
    overflow-x: hidden !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-primary,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap > .huuguu-primary,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial > .huuguu-primary,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial > .huuguu-primary {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header {
    box-sizing: border-box !important;
    width: min(100%, var(--hgg-blog-single-content-width, 860px)) !important;
    max-width: var(--hgg-blog-single-content-width, 860px) !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-title,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-title,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-title,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-title {
    max-width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    overflow-wrap: anywhere !important;
    hyphens: auto !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .post-thumbnail,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .post-thumbnail,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .post-thumbnail,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .post-thumbnail {
    box-sizing: border-box !important;
    width: min(100%, var(--hgg-blog-single-media-width, 920px)) !important;
    max-width: var(--hgg-blog-single-media-width, 920px) !important;
}

body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .post-thumbnail img,
body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .post-thumbnail img,
body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .post-thumbnail img,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .post-thumbnail img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
}

@media (max-width: 768px) {
    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial {
        width: 100% !important;
        max-width: 100% !important;
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-eyebrow,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-eyebrow,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-eyebrow,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-eyebrow {
        margin-bottom: 6px !important;
        font-size: 11px !important;
        letter-spacing: .075em !important;
    }

    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-title,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-title,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-title,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-title {
        font-size: clamp(28px, 8.25vw, 42px) !important;
        line-height: 1.16 !important;
    }

    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-meta,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-meta,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-meta,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-meta {
        gap: 10px !important;
        justify-content: center !important;
        margin-bottom: 22px !important;
        font-size: 13px !important;
        flex-wrap: wrap !important;
    }

    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .post-thumbnail,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .post-thumbnail,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .post-thumbnail,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .post-thumbnail {
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 24px !important;
        margin-bottom: 24px !important;
        border-radius: max(6px, calc(var(--hgg-content-radius, 12px) - 4px)) !important;
    }

    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-content,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-content,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-content,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-content {
        max-width: 100% !important;
        margin-top: 24px !important;
        font-size: min(var(--hgg-blog-single-content-font-size, 17px), 16px) !important;
        line-height: 1.68 !important;
    }

    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-author-box,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-author-box,
    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-navigation,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .hgg-post-navigation,
    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-related-posts,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-related-posts,
    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .comments-area,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .comments-area,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-author-box,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-author-box,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-navigation,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .hgg-post-navigation,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-related-posts,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-related-posts,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .comments-area,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .comments-area {
        width: 100% !important;
        max-width: 100% !important;
        margin-top: min(var(--hgg-blog-single-section-gap, 64px), 40px) !important;
    }
}

@media (max-width: 480px) {
    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-blog-wrap,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial {
        padding-right: 12px !important;
        padding-left: 12px !important;
    }

    body.huuguu-blog-single.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-title,
    body.single-post.huuguu-blog-layout-editorial_no_sidebar:not(.elementor-page) .huuguu-single-article > .entry-header .entry-title,
    body.huuguu-blog-single:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-title,
    body.single-post:not(.elementor-page) .huuguu-blog-wrap--editorial .huuguu-single-article > .entry-header .entry-title {
        font-size: clamp(26px, 8.75vw, 34px) !important;
    }
}

/* v81.22 — Blog Design System: single, archive and related posts consistency. */
body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .huuguu-primary {
  max-width: var(--hgg-blog-single-content-width, 860px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .huuguu-single-article {
  display: flex;
  flex-direction: column;
  gap: var(--hgg-blog-design-gap-y, 32px);
}

body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .entry-header {
  text-align: var(--hgg-blog-single-title-align, center) !important;
  margin-bottom: var(--hgg-blog-single-title-margin-bottom, 12px) !important;
}

body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .entry-meta {
  justify-content: center;
  margin-bottom: var(--hgg-blog-single-meta-margin-bottom, 28px) !important;
}

body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .post-thumbnail {
  max-width: var(--hgg-blog-single-media-width, 920px) !important;
  margin: var(--hgg-blog-single-media-margin-top, 32px) auto var(--hgg-blog-single-media-margin-bottom, 32px) !important;
  border-radius: var(--hgg-blog-card-image-radius, 8px);
  overflow: hidden;
}

body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .post-thumbnail img,
body.single-post:not(.elementor-page) .huuguu-related-posts .post-thumbnail img,
body.blog:not(.elementor-page) .hgg-post-card .post-thumbnail img,
body.archive:not(.elementor-page) .hgg-post-card .post-thumbnail img,
body.search:not(.elementor-page) .hgg-post-card .post-thumbnail img {
  border-radius: var(--hgg-blog-card-image-radius, 8px);
}

body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .entry-content {
  font-size: var(--hgg-blog-single-content-font-size, 17px);
  line-height: var(--hgg-blog-single-content-line-height, 1.7);
}

body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .entry-content p {
  margin-bottom: calc(var(--hgg-blog-design-gap-y, 32px) * .625);
}

body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .hgg-author-box,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .hgg-post-navigation,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .huuguu-related-posts,
body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .comments-area {
  margin-top: var(--hgg-blog-single-section-gap, 64px) !important;
}

body.single-post:not(.elementor-page) .huuguu-related-posts__grid {
  gap: var(--hgg-blog-related-grid-gap, 28px) !important;
}

body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100%;
}

body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .hgg-card__body {
  display: flex !important;
  flex-direction: column !important;
  gap: var(--hgg-blog-related-card-gap, 14px) !important;
  flex: 1 1 auto;
}

body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-read-more {
  margin-top: auto !important;
  align-self: flex-start;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card,
body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card {
  gap: var(--hgg-blog-archive-list-gap, 24px) !important;
  margin-bottom: var(--hgg-blog-archive-list-item-gap, 42px) !important;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail,
body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail {
  width: var(--hgg-blog-archive-list-image-width, 280px) !important;
  max-width: var(--hgg-blog-archive-list-image-width, 280px) !important;
  border-radius: var(--hgg-blog-card-image-radius, 8px);
  overflow: hidden;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-card__body,
body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-card__body,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-card__body,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-card__body {
  display: flex;
  flex-direction: column;
  gap: var(--hgg-blog-related-card-gap, 14px);
}

@media (max-width: 768px) {
  body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .huuguu-primary {
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .entry-title {
    font-size: clamp(28px, 9vw, 42px) !important;
    line-height: 1.15 !important;
  }

  body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .hgg-post-eyebrow {
    font-size: 11px;
    margin-bottom: 6px;
  }

  body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .entry-meta {
    font-size: 13px;
    gap: 10px;
    margin-bottom: 24px !important;
  }

  body.single-post:not(.elementor-page) .huuguu-blog-wrap--premium .post-thumbnail {
    margin-top: 24px !important;
    margin-bottom: 24px !important;
  }

  body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card,
  body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card,
  body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card,
  body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card {
    display: block !important;
    margin-bottom: calc(var(--hgg-blog-archive-list-item-gap, 42px) * .75) !important;
  }

  body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail,
  body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail,
  body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail,
  body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .post-thumbnail {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 18px !important;
  }
}


/* v81.23 — Blog cards spacing final.
 * Scope: Blog archives/search and related posts only. WooCommerce untouched.
 * Rhythm: title→meta 6px, meta→excerpt 14px.
 */
body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-card__body,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-card__body,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-card__body,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .hgg-card__body {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0 !important;
  flex: 1 1 auto !important;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-header,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-header,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-header,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-header {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-title,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-title,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-title,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-title {
  margin: 0 0 6px !important;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-meta,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-meta,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-meta,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-meta {
  margin: 0 0 14px !important;
  padding: 0 !important;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-summary,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-summary,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-summary,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-summary {
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-summary p,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-summary p,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-summary p,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-summary p {
  margin: 0 !important;
}

body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-read-more,
body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-read-more,
body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-read-more,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .hgg-read-more {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: 100% !important;
  min-height: var(--hgg-blog-readmore-min-height, 42px) !important;
  margin-top: auto !important;
  align-self: flex-start !important;
  text-align: center !important;
  white-space: normal !important;
}

body.huuguu-blog-archive-style-list:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .hgg-read-more {
  margin-top: 4px !important;
}

@media (max-width: 640px) {
  body.blog:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-meta,
  body.archive:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-meta,
  body.search:not(.elementor-page) .huuguu-post-grid > article.hgg-post-card .entry-meta,
  body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-meta {
    margin-bottom: 14px !important;
  }
}


/* v81.24 — Blog Tokens (Customizer completo)
   Explicit Customizer tokens for blog tags and sidebar hover states. */
body.single-post:not(.elementor-page) .hgg-tag {
  border-radius: var(--hgg-blog-tag-radius, 999px) !important;
  background: var(--hgg-blog-tag-bg, color-mix(in srgb, var(--hgg-blog-link, var(--hgg-link-color, var(--hgg-primary, #007721))) 10%, transparent)) !important;
  color: var(--hgg-blog-tag-color, var(--hgg-blog-link, var(--hgg-link-color, var(--hgg-primary, #007721)))) !important;
}

body.single-post:not(.elementor-page) .hgg-tag:hover,
body.single-post:not(.elementor-page) .hgg-tag:focus {
  background: var(--hgg-blog-tag-hover-bg, var(--hgg-blog-tag-bg, color-mix(in srgb, var(--hgg-blog-link-hover, var(--hgg-link-hover, var(--hgg-primary-hover, #045F12))) 14%, transparent))) !important;
  color: var(--hgg-blog-tag-hover-color, var(--hgg-blog-link-hover, var(--hgg-link-hover, var(--hgg-primary-hover, #045F12)))) !important;
}

body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-latest-posts a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-categories-list a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .wp-block-archives a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_recent_entries a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_categories a:hover,
body:not(.elementor-page) aside.huuguu-blog-sidebar .widget_archive a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-latest-posts a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-categories-list a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .wp-block-archives a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_recent_entries a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_categories a:hover,
body:not(.elementor-page) .huuguu-blog-sidebar .widget_archive a:hover {
  padding-left: var(--hgg-blog-sidebar-hover-padding-left, 28px) !important;
  background: var(--hgg-blog-sidebar-hover-bg, color-mix(in srgb, var(--hgg-content-surface-bg, #fff) 86%, var(--hgg-primary, #007721) 14%)) !important;
  color: var(--hgg-blog-sidebar-hover-color, var(--hgg-blog-link-hover, var(--hgg-link-hover, var(--hgg-primary, #007721)))) !important;
}










.single-product .related.products > h2,
.single-product .upsells.products > h2 {
  font-size: clamp(1.55rem, 4.8vw, var(--hgg-h2-size, 2.5rem));
  line-height: 1.12;
}






















body.single-product .related.products > h2,
body.single-product .upsells.products > h2 {
  font-size: clamp(1.45rem, 7vw, 2.5rem) !important;
  line-height: 1.12 !important;
}

/* Huuguu v81.29.6 — responsive body wrapper spacing binding
   Single source: Customizer Spacing — Body controls. */
@media (min-width: 768px) and (max-width: 1024px) {
  body.blog .site-main .site-main-inner > .huuguu-content-wrap,
  body.archive:not(.tax):not(.post-type-archive-product) .site-main .site-main-inner > .huuguu-content-wrap,
  body.blog .site-main .site-main-inner > .huuguu-container,
  body.archive:not(.tax):not(.post-type-archive-product) .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_archives-tablet-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_archives-tablet-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_archives-tablet-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_archives-tablet-left, 12px) !important;
  }

  body.single:not(.single-product) .site-main .site-main-inner > .huuguu-content-wrap,
  body.page:not(.woocommerce-page) .site-main .site-main-inner > .huuguu-content-wrap,
  body.single:not(.single-product) .site-main .site-main-inner > .huuguu-container,
  body.page:not(.woocommerce-page) .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_single-tablet-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_single-tablet-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_single-tablet-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_single-tablet-left, 12px) !important;
  }

  body.search .site-main .site-main-inner > .huuguu-content-wrap,
  body.search .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_search-tablet-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_search-tablet-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_search-tablet-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_search-tablet-left, 12px) !important;
  }

  body.error404 .site-main .site-main-inner > .huuguu-content-wrap,
  body.error404 .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_404-tablet-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_404-tablet-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_404-tablet-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_404-tablet-left, 12px) !important;
  }

  body.category .site-main .site-main-inner > .huuguu-content-wrap,
  body.tag .site-main .site-main-inner > .huuguu-content-wrap,
  body.author .site-main .site-main-inner > .huuguu-content-wrap,
  body.date .site-main .site-main-inner > .huuguu-content-wrap,
  body.tax .site-main .site-main-inner > .huuguu-content-wrap,
  body.category .site-main .site-main-inner > .huuguu-container,
  body.tag .site-main .site-main-inner > .huuguu-container,
  body.author .site-main .site-main-inner > .huuguu-container,
  body.date .site-main .site-main-inner > .huuguu-container,
  body.tax .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_taxonomy-tablet-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_taxonomy-tablet-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_taxonomy-tablet-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_taxonomy-tablet-left, 12px) !important;
  }

  body.woocommerce-shop .site-main .site-main-inner > .huuguu-content-wrap,
  body.post-type-archive-product .site-main .site-main-inner > .huuguu-content-wrap,
  body.woocommerce-page:not(.single-product):not(.tax-product_cat):not(.tax-product_tag) .site-main .site-main-inner > .huuguu-content-wrap,
  body.woocommerce-shop .site-main .site-main-inner > .huuguu-container,
  body.post-type-archive-product .site-main .site-main-inner > .huuguu-container,
  body.woocommerce-page:not(.single-product):not(.tax-product_cat):not(.tax-product_tag) .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_woocommerce_page-tablet-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_woocommerce_page-tablet-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_woocommerce_page-tablet-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_woocommerce_page-tablet-left, 12px) !important;
  }

  body.tax-product_cat .site-main .site-main-inner > .huuguu-content-wrap,
  body.tax-product_tag .site-main .site-main-inner > .huuguu-content-wrap,
  body.tax-product_cat .site-main .site-main-inner > .huuguu-container,
  body.tax-product_tag .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_woocommerce_taxonomy-tablet-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_woocommerce_taxonomy-tablet-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_woocommerce_taxonomy-tablet-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_woocommerce_taxonomy-tablet-left, 12px) !important;
  }
}

@media (max-width: 767px) {
  body.blog .site-main .site-main-inner > .huuguu-content-wrap,
  body.archive:not(.tax):not(.post-type-archive-product) .site-main .site-main-inner > .huuguu-content-wrap,
  body.blog .site-main .site-main-inner > .huuguu-container,
  body.archive:not(.tax):not(.post-type-archive-product) .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_archives-mobile-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_archives-mobile-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_archives-mobile-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_archives-mobile-left, 12px) !important;
  }

  body.single:not(.single-product) .site-main .site-main-inner > .huuguu-content-wrap,
  body.page:not(.woocommerce-page) .site-main .site-main-inner > .huuguu-content-wrap,
  body.single:not(.single-product) .site-main .site-main-inner > .huuguu-container,
  body.page:not(.woocommerce-page) .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_single-mobile-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_single-mobile-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_single-mobile-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_single-mobile-left, 12px) !important;
  }

  body.search .site-main .site-main-inner > .huuguu-content-wrap,
  body.search .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_search-mobile-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_search-mobile-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_search-mobile-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_search-mobile-left, 12px) !important;
  }

  body.error404 .site-main .site-main-inner > .huuguu-content-wrap,
  body.error404 .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_404-mobile-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_404-mobile-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_404-mobile-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_404-mobile-left, 12px) !important;
  }

  body.category .site-main .site-main-inner > .huuguu-content-wrap,
  body.tag .site-main .site-main-inner > .huuguu-content-wrap,
  body.author .site-main .site-main-inner > .huuguu-content-wrap,
  body.date .site-main .site-main-inner > .huuguu-content-wrap,
  body.tax .site-main .site-main-inner > .huuguu-content-wrap,
  body.category .site-main .site-main-inner > .huuguu-container,
  body.tag .site-main .site-main-inner > .huuguu-container,
  body.author .site-main .site-main-inner > .huuguu-container,
  body.date .site-main .site-main-inner > .huuguu-container,
  body.tax .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_taxonomy-mobile-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_taxonomy-mobile-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_taxonomy-mobile-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_taxonomy-mobile-left, 12px) !important;
  }

  body.woocommerce-shop .site-main .site-main-inner > .huuguu-content-wrap,
  body.post-type-archive-product .site-main .site-main-inner > .huuguu-content-wrap,
  body.woocommerce-page:not(.single-product):not(.tax-product_cat):not(.tax-product_tag) .site-main .site-main-inner > .huuguu-content-wrap,
  body.woocommerce-shop .site-main .site-main-inner > .huuguu-container,
  body.post-type-archive-product .site-main .site-main-inner > .huuguu-container,
  body.woocommerce-page:not(.single-product):not(.tax-product_cat):not(.tax-product_tag) .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_woocommerce_page-mobile-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_woocommerce_page-mobile-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_woocommerce_page-mobile-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_woocommerce_page-mobile-left, 12px) !important;
  }

  body.tax-product_cat .site-main .site-main-inner > .huuguu-content-wrap,
  body.tax-product_tag .site-main .site-main-inner > .huuguu-content-wrap,
  body.tax-product_cat .site-main .site-main-inner > .huuguu-container,
  body.tax-product_tag .site-main .site-main-inner > .huuguu-container {
    padding-top: var(--hgg-spacing-body_woocommerce_taxonomy-mobile-top, 20px) !important;
    padding-right: var(--hgg-spacing-body_woocommerce_taxonomy-mobile-right, 12px) !important;
    padding-bottom: var(--hgg-spacing-body_woocommerce_taxonomy-mobile-bottom, 20px) !important;
    padding-left: var(--hgg-spacing-body_woocommerce_taxonomy-mobile-left, 12px) !important;
  }
}

/* v81.31.6 — Single related posts spacing hardening.
 * Keeps related posts visually separated from the article/footer blocks and
 * prevents global article/card spacing rules from collapsing the mobile layout.
 */
body.single-post:not(.elementor-page) .huuguu-related-posts {
    box-sizing: border-box !important;
    display: block !important;
    clear: both !important;
    width: 100% !important;
    max-width: var(--hgg-blog-single-container, var(--hgg-container, 1240px)) !important;
    margin-top: var(--hgg-blog-single-section-gap, 64px) !important;
    margin-right: auto !important;
    margin-bottom: 0 !important;
    margin-left: auto !important;
    padding-top: clamp(28px, 4vw, 40px) !important;
    border-top: 1px solid var(--hgg-content-border-color, var(--hgg-border, #d8dfef)) !important;
}

body.single-post:not(.elementor-page) .huuguu-related-posts__title {
    display: block !important;
    margin: 0 0 clamp(20px, 3vw, 32px) !important;
    padding: 0 !important;
}

body.single-post:not(.elementor-page) .huuguu-related-posts__grid,
body.single-post:not(.elementor-page) .huuguu-related-posts.count-1 .huuguu-related-posts__grid,
body.single-post:not(.elementor-page) .huuguu-related-posts.count-2 .huuguu-related-posts__grid,
body.single-post:not(.elementor-page) .huuguu-related-posts.count-3 .huuguu-related-posts__grid {
    display: grid !important;
    gap: clamp(22px, 3vw, 32px) !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card {
    box-sizing: border-box !important;
    height: 100% !important;
    margin: 0 !important;
}

body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .post-thumbnail {
    margin: 0 !important;
}

body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .hgg-card__body {
    gap: 12px !important;
    padding: clamp(18px, 2.4vw, 26px) !important;
}

body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-header,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-summary,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-summary p,
body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-meta {
    margin-top: 0 !important;
}

body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-title {
    margin: 0 0 10px !important;
}

body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .entry-summary p {
    margin-bottom: 0 !important;
}

@media (max-width: 640px) {
    body.single-post:not(.elementor-page) .huuguu-related-posts {
        margin-top: 48px !important;
        padding-top: 32px !important;
    }

    body.single-post:not(.elementor-page) .huuguu-related-posts__title {
        margin-bottom: 22px !important;
    }

    body.single-post:not(.elementor-page) .huuguu-related-posts__grid,
    body.single-post:not(.elementor-page) .huuguu-related-posts.count-1 .huuguu-related-posts__grid,
    body.single-post:not(.elementor-page) .huuguu-related-posts.count-2 .huuguu-related-posts__grid,
    body.single-post:not(.elementor-page) .huuguu-related-posts.count-3 .huuguu-related-posts__grid {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }

    body.single-post:not(.elementor-page) .huuguu-related-posts .hgg-post-card .hgg-card__body {
        padding: 18px !important;
    }
}


/* v81.31.7 — Mobile single post navigation alignment + related title centering.
 * Keeps previous/next navigation semantically unchanged, but makes the next post
 * read visually from the right on mobile and centers the related posts heading.
 */
@media (max-width: 640px) {
    body.single-post:not(.elementor-page) .huuguu-related-posts__title {
        text-align: center !important;
    }

    body.single-post:not(.elementor-page) .hgg-post-navigation {
        gap: 28px !important;
    }

    body.single-post:not(.elementor-page) .hgg-post-navigation .hgg-nav-prev,
    body.single-post:not(.elementor-page) .hgg-post-navigation .hgg-nav-prev a {
        text-align: left !important;
        align-items: flex-start !important;
    }

    body.single-post:not(.elementor-page) .hgg-post-navigation .hgg-nav-next,
    body.single-post:not(.elementor-page) .hgg-post-navigation .hgg-nav-next a {
        text-align: right !important;
        align-items: flex-end !important;
    }

    body.single-post:not(.elementor-page) .hgg-post-navigation .hgg-nav-next .hgg-nav-label,
    body.single-post:not(.elementor-page) .hgg-post-navigation .hgg-nav-next .hgg-nav-title {
        text-align: right !important;
    }
}


/* === v1.50.2 / v81.31.9 HEADER ENGINE STICKY AUTHORITY ===
 * Overlay/transparent header used to be absolute, so smart scroll, morph and
 * shrink could change visuals but the header did not remain attached to the
 * viewport. Sticky is now an explicit frontend state.
 */
.site-header.site-header--sticky,
body .site-header.site-header--sticky,
.site-header.site-header--overlay.site-header--sticky,
body .site-header.site-header--overlay.site-header--sticky,
.site-header.site-header--overlay.site-header--glass.site-header--sticky,
body .site-header.site-header--overlay.site-header--glass.site-header--sticky {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 9999 !important;
  background: transparent !important;
  transform: translateZ(0);
  will-change: transform, background, box-shadow;
}

.admin-bar .site-header.site-header--sticky,
body.admin-bar .site-header.site-header--sticky {
  top: 32px !important;
}

@media (max-width: 782px) {
  .admin-bar .site-header.site-header--sticky,
  body.admin-bar .site-header.site-header--sticky {
    top: 46px !important;
  }
}

.site-header.site-header--smart-scroll .huuguu-header-shell.site-header-inner,
body .site-header.site-header--smart-scroll .huuguu-header-shell.site-header-inner {
  transition: background-color .24s ease, background .24s ease, -webkit-backdrop-filter .24s ease, backdrop-filter .24s ease, box-shadow .24s ease, border-color .24s ease, min-height .24s ease, height .24s ease, margin .24s ease, border-radius .24s ease !important;
}

.site-header.site-header--smart-scroll.is-scrolled .huuguu-header-shell.site-header-inner,
body .site-header.site-header--smart-scroll.is-scrolled .huuguu-header-shell.site-header-inner {
  background: var(--hgg-header-scroll-bg-final, var(--hgg-header-bg-final, rgba(255,255,255,.94))) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-scroll-backdrop-blur, 10px)) saturate(1.08) !important;
  backdrop-filter: blur(var(--hgg-header-scroll-backdrop-blur, 10px)) saturate(1.08) !important;
}

.site-header.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner,
body .site-header.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner {
  border-radius: var(--hgg-header-shell-radius, 18px) !important;
  box-shadow: var(--hgg-header-shell-shadow, 0 14px 36px rgba(17,34,68,.12)) !important;
  border: var(--hgg-header-shell-border, 1px solid var(--hgg-header-border-color, rgba(23,32,51,.10))) !important;
}

@media (max-width: 767px) {
  .site-header.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner,
  body .site-header.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner {
    border-radius: 0 !important;
  }
}

/* v81.32.0 / v1.50.3 — Header scrolled contrast authority
   When transparent/overlay headers become solid or glass after scroll,
   force the visual contrast back to the normal header palette. This prevents
   white overlay text/logo/menu from disappearing over the scrolled white/glass shell. */
.site-header.site-header--smart-scroll.is-scrolled,
body .site-header.site-header--smart-scroll.is-scrolled {
  --hgg-header-overlay-effective-link: var(--hgg-menu-link, #172033) !important;
  --hgg-header-overlay-effective-hover: var(--hgg-menu-hover, #007721) !important;
  --hgg-header-overlay-effective-brand: var(--hgg-menu-link, #172033) !important;
  color: var(--hgg-menu-link, #172033) !important;
}

.site-header.site-header--smart-scroll.is-scrolled .site-title,
.site-header.site-header--smart-scroll.is-scrolled .site-title a,
.site-header.site-header--smart-scroll.is-scrolled .site-description,
.site-header.site-header--smart-scroll.is-scrolled .site-branding,
.site-header.site-header--smart-scroll.is-scrolled .header-side-link,
body .site-header.site-header--smart-scroll.is-scrolled .site-title,
body .site-header.site-header--smart-scroll.is-scrolled .site-title a,
body .site-header.site-header--smart-scroll.is-scrolled .site-description,
body .site-header.site-header--smart-scroll.is-scrolled .site-branding,
body .site-header.site-header--smart-scroll.is-scrolled .header-side-link {
  color: var(--hgg-menu-link, #172033) !important;
}

.site-header.site-header--smart-scroll.is-scrolled .main-navigation > ul > li > a,
.site-header.site-header--smart-scroll.is-scrolled .main-navigation > .menu > li > a,
.site-header.site-header--smart-scroll.is-scrolled .main-navigation a,
.site-header.site-header--smart-scroll.is-scrolled .menu-toggle,
.site-header.site-header--smart-scroll.is-scrolled .submenu-toggle,
.site-header.site-header--smart-scroll.is-scrolled .header-icon-link,
.site-header.site-header--smart-scroll.is-scrolled .huuguu-cart-link,
.site-header.site-header--smart-scroll.is-scrolled .huuguu-account-link,
body .site-header.site-header--smart-scroll.is-scrolled .main-navigation > ul > li > a,
body .site-header.site-header--smart-scroll.is-scrolled .main-navigation > .menu > li > a,
body .site-header.site-header--smart-scroll.is-scrolled .main-navigation a,
body .site-header.site-header--smart-scroll.is-scrolled .menu-toggle,
body .site-header.site-header--smart-scroll.is-scrolled .submenu-toggle,
body .site-header.site-header--smart-scroll.is-scrolled .header-icon-link,
body .site-header.site-header--smart-scroll.is-scrolled .huuguu-cart-link,
body .site-header.site-header--smart-scroll.is-scrolled .huuguu-account-link {
  color: var(--hgg-menu-link, #172033) !important;
}

.site-header.site-header--smart-scroll.is-scrolled .main-navigation > ul > li > a:hover,
.site-header.site-header--smart-scroll.is-scrolled .main-navigation > .menu > li > a:hover,
.site-header.site-header--smart-scroll.is-scrolled .main-navigation a:hover,
.site-header.site-header--smart-scroll.is-scrolled .main-navigation > ul > li.current-menu-item > a,
.site-header.site-header--smart-scroll.is-scrolled .main-navigation > .menu > li.current-menu-item > a,
.site-header.site-header--smart-scroll.is-scrolled .header-icon-link:hover,
.site-header.site-header--smart-scroll.is-scrolled .huuguu-cart-link:hover,
.site-header.site-header--smart-scroll.is-scrolled .huuguu-account-link:hover,
body .site-header.site-header--smart-scroll.is-scrolled .main-navigation > ul > li > a:hover,
body .site-header.site-header--smart-scroll.is-scrolled .main-navigation > .menu > li > a:hover,
body .site-header.site-header--smart-scroll.is-scrolled .main-navigation a:hover,
body .site-header.site-header--smart-scroll.is-scrolled .main-navigation > ul > li.current-menu-item > a,
body .site-header.site-header--smart-scroll.is-scrolled .main-navigation > .menu > li.current-menu-item > a,
body .site-header.site-header--smart-scroll.is-scrolled .header-icon-link:hover,
body .site-header.site-header--smart-scroll.is-scrolled .huuguu-cart-link:hover,
body .site-header.site-header--smart-scroll.is-scrolled .huuguu-account-link:hover {
  color: var(--hgg-menu-hover, #007721) !important;
}

.site-header.site-header--smart-scroll.is-scrolled svg,
.site-header.site-header--smart-scroll.is-scrolled svg path,
body .site-header.site-header--smart-scroll.is-scrolled svg,
body .site-header.site-header--smart-scroll.is-scrolled svg path {
  stroke: currentColor;
}


/* v81.32.1 / v1.50.4 — Header full-width scrolled background layer
   The outer header owns the sticky/scrolled surface. The inner shell remains the width/alignment container. */
.site-header.site-header--smart-scroll.is-scrolled,
body .site-header.site-header--smart-scroll.is-scrolled,
.site-header.site-header--sticky.is-scrolled,
body .site-header.site-header--sticky.is-scrolled {
  background: var(--hgg-header-scroll-bg-final, var(--hgg-header-bg-final, rgba(255,255,255,.94))) !important;
  -webkit-backdrop-filter: blur(var(--hgg-header-scroll-backdrop-blur, 10px)) saturate(1.08) !important;
  backdrop-filter: blur(var(--hgg-header-scroll-backdrop-blur, 10px)) saturate(1.08) !important;
}

.site-header.site-header--smart-scroll.is-scrolled .huuguu-header-shell.site-header-inner,
body .site-header.site-header--smart-scroll.is-scrolled .huuguu-header-shell.site-header-inner,
.site-header.site-header--sticky.is-scrolled .huuguu-header-shell.site-header-inner,
body .site-header.site-header--sticky.is-scrolled .huuguu-header-shell.site-header-inner {
  background: transparent !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.site-header.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner,
body .site-header.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner {
  background: transparent !important;
}

/* v81.32.2 / v1.50.5 — Customizer preview parity helper
   When controls are changed with postMessage, the preview receives the same runtime classes and CSS variables without requiring publish/reload. */
body.customize-preview .site-header.site-header--smart-scroll,
body.customize-preview .site-header.site-header--sticky {
  transition: background-color .24s ease, background .24s ease, -webkit-backdrop-filter .24s ease, backdrop-filter .24s ease, box-shadow .24s ease, color .18s ease !important;
}


/* v81.32.3: Premium header shell border control + cleaner scroll blur layering. */
.site-header--premium .huuguu-header-shell.site-header-inner,
.site-header.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner,
body .site-header.site-header--smart-scroll.site-header--scroll-morph-premium.is-scrolled .huuguu-header-shell.site-header-inner {
  border: var(--hgg-header-shell-border, 1px solid var(--hgg-header-border-color, rgba(23,32,51,.10))) !important;
}

.site-header.site-header--smart-scroll.is-scrolled,
body .site-header.site-header--smart-scroll.is-scrolled {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.site-header.site-header--smart-scroll.is-scrolled .huuguu-header-shell.site-header-inner,
body .site-header.site-header--smart-scroll.is-scrolled .huuguu-header-shell.site-header-inner {
  -webkit-backdrop-filter: blur(var(--hgg-header-scroll-backdrop-blur, 10px)) saturate(1.08) !important;
  backdrop-filter: blur(var(--hgg-header-scroll-backdrop-blur, 10px)) saturate(1.08) !important;
}


/* v81.32.5 / v1.50.8 — Header over-hero contrast state
   Scrolled overlay headers must keep the overlay contrast while still visually
   passing over a dark hero. The normal scrolled contrast only applies after the
   header leaves the hero area. */
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero {
  --hgg-header-overlay-effective-link: var(--hgg-header-overlay-link-color, #ffffff) !important;
  --hgg-header-overlay-effective-hover: var(--hgg-header-overlay-hover-color, var(--hgg-primary, #007721)) !important;
  --hgg-header-overlay-effective-brand: var(--hgg-header-overlay-brand-color, #ffffff) !important;
  color: var(--hgg-header-overlay-effective-link, #ffffff) !important;
}

.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .site-title,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .site-title a,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .site-description,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .site-branding,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .header-side-link,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .site-title,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .site-title a,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .site-description,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .site-branding,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .header-side-link {
  color: var(--hgg-header-overlay-effective-brand, #ffffff) !important;
}

.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > ul > li > a,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > .menu > li > a,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation a,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .menu-toggle,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .submenu-toggle,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .header-icon-link,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .huuguu-cart-link,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .huuguu-account-link,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > ul > li > a,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > .menu > li > a,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation a,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .menu-toggle,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .submenu-toggle,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .header-icon-link,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .huuguu-cart-link,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .huuguu-account-link {
  color: var(--hgg-header-overlay-effective-link, #ffffff) !important;
}

.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > ul > li > a:hover,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > .menu > li > a:hover,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation a:hover,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > ul > li.current-menu-item > a,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > .menu > li.current-menu-item > a,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > ul > li > a:hover,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > .menu > li > a:hover,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation a:hover,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > ul > li.current-menu-item > a,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero .main-navigation > .menu > li.current-menu-item > a {
  color: var(--hgg-header-overlay-effective-hover, var(--hgg-primary, #007721)) !important;
}

.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero svg,
.site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero svg path,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero svg,
body .site-header.site-header--overlay.site-header--smart-scroll.is-scrolled.is-over-hero svg path {
  stroke: currentColor;
}

/* v81.32.6 / v1.50.9 — Header top-state blur guard
   The scroll backdrop blur belongs only to the scrolled state. When an overlay/glass
   header is still at the top of the hero, keep the shell using the regular
   header blur control only, so a zero top blur stays visually clean. */
.site-header.site-header--overlay.site-header--glass:not(.is-scrolled) .huuguu-header-shell.site-header-inner,
body .site-header.site-header--overlay.site-header--glass:not(.is-scrolled) .huuguu-header-shell.site-header-inner,
.site-header.site-header--overlay.site-header--smart-scroll:not(.is-scrolled) .huuguu-header-shell.site-header-inner,
body .site-header.site-header--overlay.site-header--smart-scroll:not(.is-scrolled) .huuguu-header-shell.site-header-inner {
  -webkit-backdrop-filter: blur(var(--hgg-header-backdrop-blur, 0px)) saturate(1) !important;
  backdrop-filter: blur(var(--hgg-header-backdrop-blur, 0px)) saturate(1) !important;
}

.site-header.site-header--overlay.site-header--smart-scroll:not(.is-scrolled),
body .site-header.site-header--overlay.site-header--smart-scroll:not(.is-scrolled) {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

/* v81.32.7 / v1.50.10 — Mobile menu overlay guard
 * The previous dialog compatibility rule transformed the whole site header into
 * the mobile menu panel. In overlay/premium headers this caused the close
 * button and white menu surface to float over the hero without a stable shell.
 * Keep the header as the header; render only the mobile panel as the drawer.
 */
@media (max-width: 1100px) {
  body.huuguu-mobile-menu-open {
    overflow: hidden !important;
  }

  body.huuguu-mobile-menu-open .site-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    width: 100% !important;
    max-width: none !important;
    max-height: none !important;
    transform: none !important;
    overflow: visible !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    z-index: 99999 !important;
  }

  body.huuguu-mobile-menu-open.admin-bar .site-header {
    top: 0 !important;
    max-height: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-header-shell,
  body.huuguu-mobile-menu-open .site-header .site-header-inner {
    width: calc(100% - 24px) !important;
    max-width: var(--hgg-header-container, 1240px) !important;
    margin: max(12px, env(safe-area-inset-top)) auto 0 !important;
    padding: 10px 12px !important;
    min-height: var(--hgg-header-scroll-height-mobile, 60px) !important;
    overflow: visible !important;
    background: rgba(255,255,255,.96) !important;
    color: var(--hgg-header-scrolled-text-color, #111827) !important;
    border: 1px solid rgba(17, 24, 39, .08) !important;
    border-radius: var(--hgg-header-shell-radius, 14px) !important;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .16) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    backdrop-filter: blur(12px) !important;
  }

  body.huuguu-mobile-menu-open .site-header a,
  body.huuguu-mobile-menu-open .site-header .site-title,
  body.huuguu-mobile-menu-open .site-header .site-title a,
  body.huuguu-mobile-menu-open .site-header .mobile-branding,
  body.huuguu-mobile-menu-open .site-header .mobile-branding a {
    color: var(--hgg-header-scrolled-text-color, #111827) !important;
  }

  body.huuguu-mobile-menu-open .site-header .menu-toggle {
    color: var(--hgg-menu-toggle-text, #111827) !important;
    background: var(--hgg-menu-toggle-bg, #ffffff) !important;
    border-color: var(--hgg-menu-toggle-border, rgba(17, 24, 39, .14)) !important;
    box-shadow: 0 8px 26px rgba(15, 23, 42, .12) !important;
  }

  body.huuguu-mobile-menu-open .site-header .menu-toggle__icon span,
  body.huuguu-mobile-menu-open .site-header .menu-toggle__icon::before,
  body.huuguu-mobile-menu-open .site-header .menu-toggle__icon::after {
    background: var(--hgg-menu-toggle-icon, currentColor) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-topbar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    padding: 0 !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open.admin-bar .huuguu-mobile-panel {
    top: calc(46px + max(12px, env(safe-area-inset-top)) + var(--hgg-header-scroll-height-mobile, 60px) + 12px) !important;
    max-height: calc(100dvh - var(--hgg-header-scroll-height-mobile, 60px) - 82px) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel nav.mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu > li > a {
    color: #111827 !important;
  }

  @supports not (height: 100dvh) {/* huuguu v1.52.4: selector migrated to header/mobile engine. */
  }
}

/* v81.32.8 / v1.50.11 — Mobile menu modal layer polish
 * Mobile menu must behave as an isolated modal layer over hero/overlay headers.
 * The page content is dimmed, the header shell stops becoming a white card,
 * and the menu surface is the only white visual card.
 */
@media (max-width: 1100px) {
  body.huuguu-mobile-menu-open {
    overflow: hidden !important;
  }

  body.huuguu-mobile-menu-open::before {
    content: "" !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 99990 !important;
    background: rgba(0, 0, 0, .38) !important;
    -webkit-backdrop-filter: blur(1.5px) !important;
    backdrop-filter: blur(1.5px) !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header,
  body.huuguu-mobile-menu-open .site-header.site-header--overlay,
  body.huuguu-mobile-menu-open .site-header.site-header--glass,
  body.huuguu-mobile-menu-open .site-header.is-scrolled {
    position: fixed !important;
    inset: 0 0 auto 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    transform: none !important;
    overflow: visible !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    z-index: 100000 !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-header-shell,
  body.huuguu-mobile-menu-open .site-header .site-header-inner,
  body.huuguu-mobile-menu-open .site-header .huuguu-container.huuguu-header-shell {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: max(18px, env(safe-area-inset-top)) 24px 0 !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    color: #ffffff !important;
    overflow: visible !important;
  }

  body.huuguu-mobile-menu-open .site-header .site-branding,
  body.huuguu-mobile-menu-open .site-header .site-title,
  body.huuguu-mobile-menu-open .site-header .site-title a,
  body.huuguu-mobile-menu-open .site-header .mobile-branding,
  body.huuguu-mobile-menu-open .site-header .mobile-branding a {
    color: #ffffff !important;
    text-shadow: 0 1px 14px rgba(0, 0, 0, .38) !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open .site-header .menu-toggle[aria-expanded="true"] .menu-toggle__icon span,
  body.huuguu-mobile-menu-open .site-header .menu-toggle[aria-expanded="true"] .menu-toggle__icon::before,
  body.huuguu-mobile-menu-open .site-header .menu-toggle[aria-expanded="true"] .menu-toggle__icon::after {
    background: currentColor !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open.admin-bar .site-header .menu-toggle,
  body.huuguu-mobile-menu-open.admin-bar .site-header .menu-toggle[aria-expanded="true"] {
    top: calc(46px + max(18px, env(safe-area-inset-top))) !important;
  }

  body.huuguu-mobile-menu-open.admin-bar .huuguu-mobile-panel,
  body.huuguu-mobile-menu-open.admin-bar .huuguu-mobile-panel.is-open {
    top: calc(46px + clamp(132px, 22dvh, 188px)) !important;
    max-height: calc(100dvh - 46px - clamp(132px, 22dvh, 188px) - 24px) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu > li {
    min-height: 0 !important;
    border-bottom: 1px solid rgba(17, 24, 39, .08) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu > li > a {
    min-height: 0 !important;
    padding: 16px 0 !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    color: #111827 !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .current-menu-item > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .current_page_item > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation a[aria-current="page"] {
    color: var(--hgg-mobile-menu-active-link, var(--hgg-link-color, #007721)) !important;
  }
}


/* v81.32.9 / v1.50.12 — Mobile menu overlay balance
 * Keep the mobile modal readable without darkening the hero too aggressively.
 */
@media (max-width: 1100px) {
  body.huuguu-mobile-menu-open::before {
    background: rgba(0, 0, 0, .38) !important;
    -webkit-backdrop-filter: blur(1.5px) !important;
    backdrop-filter: blur(1.5px) !important;
  }
}


/* v81.33.0 / v1.50.13 — Header scope guard for non-home pages
 * Transparent/overlay behavior belongs only to the front-page hero. Archives,
 * singles, WooCommerce pages and search pages keep a normal in-flow header,
 * even when the Premium preset is selected. This prevents the premium shell,
 * glass blur and smart-scroll states from behaving like a hero overlay outside
 * the home context.
 */
body:not(.home) .site-header.site-header--premium:not(.site-header--overlay),
body:not(.front-page) .site-header.site-header--premium:not(.site-header--overlay),
body.archive .site-header.site-header--premium:not(.site-header--overlay),
body.search .site-header.site-header--premium:not(.site-header--overlay),
body.single .site-header.site-header--premium:not(.site-header--overlay),
body.page:not(.home):not(.front-page) .site-header.site-header--premium:not(.site-header--overlay),
body.woocommerce .site-header.site-header--premium:not(.site-header--overlay) {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
  z-index: 1000 !important;
}

body.archive .site-header.site-header--premium:not(.site-header--overlay) .huuguu-header-shell.site-header-inner,
body.search .site-header.site-header--premium:not(.site-header--overlay) .huuguu-header-shell.site-header-inner,
body.single .site-header.site-header--premium:not(.site-header--overlay) .huuguu-header-shell.site-header-inner,
body.page:not(.home):not(.front-page) .site-header.site-header--premium:not(.site-header--overlay) .huuguu-header-shell.site-header-inner,
body.woocommerce .site-header.site-header--premium:not(.site-header--overlay) .huuguu-header-shell.site-header-inner {
  background: transparent !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.archive .site-header.site-header--premium:not(.site-header--overlay) .site-title,
body.archive .site-header.site-header--premium:not(.site-header--overlay) .site-title a,
body.archive .site-header.site-header--premium:not(.site-header--overlay) .main-navigation a,
body.search .site-header.site-header--premium:not(.site-header--overlay) .site-title,
body.search .site-header.site-header--premium:not(.site-header--overlay) .site-title a,
body.search .site-header.site-header--premium:not(.site-header--overlay) .main-navigation a,
body.single .site-header.site-header--premium:not(.site-header--overlay) .site-title,
body.single .site-header.site-header--premium:not(.site-header--overlay) .site-title a,
body.single .site-header.site-header--premium:not(.site-header--overlay) .main-navigation a,
body.page:not(.home):not(.front-page) .site-header.site-header--premium:not(.site-header--overlay) .site-title,
body.page:not(.home):not(.front-page) .site-header.site-header--premium:not(.site-header--overlay) .site-title a,
body.page:not(.home):not(.front-page) .site-header.site-header--premium:not(.site-header--overlay) .main-navigation a,
body.woocommerce .site-header.site-header--premium:not(.site-header--overlay) .site-title,
body.woocommerce .site-header.site-header--premium:not(.site-header--overlay) .site-title a,
body.woocommerce .site-header.site-header--premium:not(.site-header--overlay) .main-navigation a {
  color: var(--hgg-menu-link, #172033) !important;
  text-shadow: none !important;
}

body.archive .site-header.site-header--premium:not(.site-header--overlay).is-scrolled,
body.search .site-header.site-header--premium:not(.site-header--overlay).is-scrolled,
body.single .site-header.site-header--premium:not(.site-header--overlay).is-scrolled,
body.page:not(.home):not(.front-page) .site-header.site-header--premium:not(.site-header--overlay).is-scrolled,
body.woocommerce .site-header.site-header--premium:not(.site-header--overlay).is-scrolled {
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
}


/* v81.33.1 / v1.50.14 — Header effective preset scope guard.
 * If the home overlay engine is enabled, non-home templates must not keep the
 * premium floating shell. PHP now downgrades the effective preset to classic;
 * these rules are a safety net for cached CSS/Customizer preview edge cases.
 */
body.blog .site-header.site-header--premium:not(.site-header--overlay),
body.archive .site-header.site-header--premium:not(.site-header--overlay),
body.search .site-header.site-header--premium:not(.site-header--overlay),
body.single .site-header.site-header--premium:not(.site-header--overlay),
body.page:not(.home) .site-header.site-header--premium:not(.site-header--overlay),
body.woocommerce .site-header.site-header--premium:not(.site-header--overlay) {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: 100% !important;
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
  border-bottom: var(--hgg-header-border, 1px solid rgba(23,32,51,.08)) !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

body.blog .site-header.site-header--premium:not(.site-header--overlay) .huuguu-header-shell.site-header-inner,
body.archive .site-header.site-header--premium:not(.site-header--overlay) .huuguu-header-shell.site-header-inner,
body.search .site-header.site-header--premium:not(.site-header--overlay) .huuguu-header-shell.site-header-inner,
body.single .site-header.site-header--premium:not(.site-header--overlay) .huuguu-header-shell.site-header-inner,
body.page:not(.home) .site-header.site-header--premium:not(.site-header--overlay) .huuguu-header-shell.site-header-inner,
body.woocommerce .site-header.site-header--premium:not(.site-header--overlay) .huuguu-header-shell.site-header-inner {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

.site-header .sub-menu,
.site-header .children,
.site-header .huuguu-submenu {
    z-index: 10050 !important;
}

.site-header.is-header-overlay,
.site-header.site-header--overlay,
.site-header.is-scrolled {
    z-index: 10000 !important;
}

.site-header .menu-item-has-children {
    position: relative;
}

.site-header .menu-item-has-children > .sub-menu,
.site-header .page_item_has_children > .children {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */


/* v81.35.0 / v1.50.33 — Header effective overlay scope + mobile nav isolation.
 * Overlay/glass/smart-scroll controls are effective only on front-page/home.
 * Mobile menu becomes an isolated navigation layer, not an invisible header over the hero/content. */
.site-header:not(.site-header--overlay).site-header--glass,
.site-header:not(.site-header--overlay).site-header--sticky,
.site-header:not(.site-header--overlay).site-header--smart-scroll,
body.huuguu-header-overlay-disabled-context .site-header {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: 100% !important;
  background: var(--hgg-header-bg-final, var(--hgg-header-bg, #ffffff)) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.site-header:not(.site-header--overlay).site-header--glass .huuguu-header-shell.site-header-inner,
.site-header:not(.site-header--overlay).site-header--sticky .huuguu-header-shell.site-header-inner,
.site-header:not(.site-header--overlay).site-header--smart-scroll .huuguu-header-shell.site-header-inner,
body.huuguu-header-overlay-disabled-context .site-header .huuguu-header-shell.site-header-inner {
  background: transparent !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
}

@media (max-width: 1100px) {
  body.huuguu-mobile-menu-open {
    overflow: hidden !important;
    touch-action: none;
  }

  body.huuguu-mobile-menu-open::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 99980;
    background: rgba(12, 18, 24, .46);
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
  }

  body.huuguu-mobile-menu-open .site-header,
  body.huuguu-mobile-menu-open .site-header.site-header--overlay,
  body.huuguu-mobile-menu-open .site-header.site-header--glass,
  body.huuguu-mobile-menu-open .site-header.is-scrolled {
    position: fixed !important;
    inset: 0 !important;
    z-index: 99990 !important;
    width: 100% !important;
    max-width: none !important;
    height: 100dvh !important;
    max-height: none !important;
    margin: 0 !important;
    padding: max(18px, env(safe-area-inset-top)) 0 max(18px, env(safe-area-inset-bottom)) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    transform: none !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    -webkit-overflow-scrolling: touch;
  }

  body.huuguu-mobile-menu-open.admin-bar .site-header {
    padding-top: max(52px, calc(18px + env(safe-area-inset-top))) !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-header-shell.site-header-inner,
  body.huuguu-mobile-menu-open .site-header .huuguu-container.huuguu-header-shell {
    width: min(88vw, 390px) !important;
    max-width: min(88vw, 390px) !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: block !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    overflow: visible !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-topbar {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    gap: 16px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.huuguu-mobile-menu-open .mobile-branding,
  body.huuguu-mobile-menu-open .mobile-branding a,
  body.huuguu-mobile-menu-open .mobile-branding .site-title,
  body.huuguu-mobile-menu-open .mobile-branding .site-title a {
    color: #ffffff !important;
    text-shadow: none !important;
  }

  body.huuguu-mobile-menu-open .mobile-topbar-actions {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 10px !important;
  }

  body.huuguu-mobile-menu-open .mobile-topbar-actions .hgg-header-link,
  body.huuguu-mobile-menu-open .mobile-topbar-actions .hgg-header-link--cart {
    display: none !important;
  }

  body.huuguu-mobile-menu-open .menu-toggle {
    position: relative !important;
    z-index: 2 !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255,255,255,.96) !important;
    color: #111827 !important;
    border: 1px solid rgba(15,23,42,.10) !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 34px rgba(0,0,0,.18) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  body.huuguu-mobile-menu-open .menu-toggle[aria-expanded="true"] .menu-toggle__icon span {
    opacity: 0 !important;
  }

  body.huuguu-mobile-menu-open .menu-toggle[aria-expanded="true"] .menu-toggle__icon::before,
  body.huuguu-mobile-menu-open .menu-toggle[aria-expanded="true"] .menu-toggle__icon::after,
  body.huuguu-mobile-menu-open .menu-toggle .menu-toggle__icon::before,
  body.huuguu-mobile-menu-open .menu-toggle .menu-toggle__icon::after,
  body.huuguu-mobile-menu-open .menu-toggle .menu-toggle__icon span {
    background: currentColor !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu > li {
    min-height: 52px !important;
    border-bottom: 1px solid var(--hgg-mobile-menu-border, #e6ebf2) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li:last-child,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu > li:last-child {
    border-bottom: 0 !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu > li > a {
    min-height: 52px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: var(--hgg-mobile-menu-link, #172033) !important;
  }
}


/* v81.35.1 / v1.50.34 — Mobile navigation polish, blog single mobile fix and viewport card reveal. */
@media (max-width: 1100px) {
  body.huuguu-mobile-menu-open::before {
    background: rgba(10, 15, 20, .56) !important;
    -webkit-backdrop-filter: blur(3px) !important;
    backdrop-filter: blur(3px) !important;
  }

  body.huuguu-mobile-menu-open .site-header,
  body.huuguu-mobile-menu-open .site-header.site-header--overlay,
  body.huuguu-mobile-menu-open .site-header.site-header--glass,
  body.huuguu-mobile-menu-open .site-header.is-scrolled {
    display: block !important;
    pointer-events: none !important;
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-header-shell.site-header-inner,
  body.huuguu-mobile-menu-open .site-header .huuguu-container.huuguu-header-shell,
  body.huuguu-mobile-menu-open .huuguu-mobile-topbar {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .header-left,
  body.huuguu-mobile-menu-open .site-header .site-branding,
  body.huuguu-mobile-menu-open .site-header .mobile-branding,
  body.huuguu-mobile-menu-open .site-header .huuguu-logo,
  body.huuguu-mobile-menu-open .site-header .custom-logo-link,
  body.huuguu-mobile-menu-open .site-header .mobile-topbar-actions .hgg-header-link,
  body.huuguu-mobile-menu-open .site-header .mobile-topbar-actions .hgg-header-link--cart,
  body.huuguu-mobile-menu-open .site-header .customize-partial-edit-shortcut {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .menu-toggle {
    position: fixed !important;
    top: max(18px, env(safe-area-inset-top)) !important;
    right: max(18px, env(safe-area-inset-right)) !important;
    z-index: 100020 !important;
    pointer-events: auto !important;
  }

  body.huuguu-mobile-menu-open.admin-bar .menu-toggle {
    top: max(52px, calc(18px + env(safe-area-inset-top))) !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .customize-partial-edit-shortcut {
    display: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel nav.mobile-nav {
    display: block !important;
    width: 100% !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .header-right.is-open {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    margin-top: 18px !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .header-right.is-open a {
    min-height: 46px !important;
    border-radius: 12px !important;
  }

  body.huuguu-mobile-menu-open .menu-toggle[title] {
    outline: none !important;
  }
}

@media (max-width: 767px) {
  body.single-post:not(.elementor-page) .site-main-inner,
  body.single-post:not(.elementor-page) .huuguu-blog-wrap,
  body.single-post:not(.elementor-page) .huuguu-primary,
  body.single-post:not(.elementor-page) .huuguu-blog-primary {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }

  body.single-post:not(.elementor-page) .huuguu-single-article .entry-title {
    font-size: clamp(2.15rem, 12vw, 3rem) !important;
    line-height: 1.04 !important;
    text-align: center !important;
    letter-spacing: -.045em !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.single-post:not(.elementor-page) .huuguu-single-article .entry-meta {
    justify-content: center !important;
    flex-wrap: wrap !important;
    row-gap: 8px !important;
  }

  body.single-post:not(.elementor-page) .entry-footer,
  body.single-post:not(.elementor-page) .hgg-post-taxonomy,
  body.single-post:not(.elementor-page) .cat-links,
  body.single-post:not(.elementor-page) .tags-links {
    width: 100% !important;
    max-width: 100% !important;
    margin: 28px 0 0 !important;
    padding: 18px !important;
    border-radius: 18px !important;
    background: rgba(23,32,51,.035) !important;
    border: 1px solid rgba(23,32,51,.07) !important;
    box-sizing: border-box !important;
  }

  body.single-post:not(.elementor-page) .entry-footer a,
  body.single-post:not(.elementor-page) .cat-links a,
  body.single-post:not(.elementor-page) .tags-links a {
    display: inline-flex !important;
    align-items: center !important;
    margin: 6px 6px 0 0 !important;
    white-space: normal !important;
  }

  body.single-post:not(.elementor-page) .hgg-author-box {
    width: 100% !important;
    max-width: 100% !important;
    margin: 36px 0 !important;
    padding: 24px 20px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    text-align: center !important;
    gap: 16px !important;
    border-radius: 22px !important;
    background: #fff !important;
    border: 1px solid rgba(23,32,51,.08) !important;
    box-shadow: 0 16px 42px rgba(23,32,51,.08) !important;
    box-sizing: border-box !important;
  }

  body.single-post:not(.elementor-page) .hgg-author-box__avatar img {
    width: 76px !important;
    height: 76px !important;
    border-radius: 999px !important;
  }

  body.single-post:not(.elementor-page) .hgg-author-box__content,
  body.single-post:not(.elementor-page) .hgg-author-box__bio {
    max-width: 100% !important;
  }

  body.single-post:not(.elementor-page) .hgg-author-box__bio {
    font-size: .98rem !important;
    line-height: 1.72 !important;
    margin-bottom: 0 !important;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .hgg-reveal-ready {
    opacity: 0;
    transform: translateY(22px) scale(.985);
    transition: opacity .52s ease, transform .52s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, border-color .28s ease;
    will-change: opacity, transform;
  }

  .hgg-reveal-ready.hgg-reveal-visible {
    opacity: 1;
    transform: translateY(0) scale(1);
  }

  .hgg-reveal-ready.hgg-reveal-exit {
    opacity: .42;
    transform: translateY(12px) scale(.992);
  }
}

/* v81.35.2 — Mobile menu final isolation + single taxonomy/author mobile polish. */
@media (max-width: 767px) {
  body.huuguu-mobile-menu-open {
    overflow: hidden !important;
    touch-action: none !important;
  }

  body.huuguu-mobile-menu-open .site-header,
  body.huuguu-mobile-menu-open .site-header.site-header--overlay,
  body.huuguu-mobile-menu-open .site-header.site-header--glass,
  body.huuguu-mobile-menu-open .site-header.site-header--scrolled {
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .site-branding,
  body.huuguu-mobile-menu-open .site-header .header-actions,
  body.huuguu-mobile-menu-open .site-header .huuguu-cart-link,
  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-topbar > .header-left {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .menu-toggle {
    position: fixed !important;
    top: max(18px, env(safe-area-inset-top, 0px) + 14px) !important;
    right: max(18px, env(safe-area-inset-right, 0px) + 18px) !important;
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.96) !important;
    color: #111827 !important;
    border: 1px solid rgba(17,24,39,.08) !important;
    box-shadow: 0 16px 42px rgba(0,0,0,.18) !important;
    z-index: 100100 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  body.huuguu-mobile-menu-open .site-header .menu-toggle .menu-toggle__icon,
  body.huuguu-mobile-menu-open .site-header .menu-toggle svg {
    color: #111827 !important;
    stroke: currentColor !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open .huuguu-mobile-panel::before,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel::after {
    display: none !important;
    content: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation {
    width: min(86vw, 360px) !important;
    max-width: 360px !important;
    margin: auto !important;
    padding: 26px 24px 20px !important;
    border-radius: 22px !important;
    background: rgba(255,255,255,.97) !important;
    border: 1px solid rgba(17,24,39,.08) !important;
    box-shadow: 0 24px 70px rgba(0,0,0,.22) !important;
    color: #111827 !important;
    display: block !important;
    box-sizing: border-box !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav .menu {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav .menu > li {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(17,24,39,.10) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li:last-child,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav .menu > li:last-child {
    border-bottom: 0 !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav .menu > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 52px !important;
    padding: 0 !important;
    color: #111827 !important;
    font-size: 1.02rem !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    text-decoration: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .header-right.is-open {
    width: min(86vw, 360px) !important;
    max-width: 360px !important;
    margin: -8px auto auto !important;
    padding: 0 24px 22px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    background: rgba(255,255,255,.97) !important;
    border-radius: 0 0 22px 22px !important;
    box-sizing: border-box !important;
  }

  body.single-post:not(.elementor-page) .hgg-meta-group--categories,
  body.single-post:not(.elementor-page) .hgg-post-meta-footer,
  body.single-post:not(.elementor-page) .post-meta-footer,
  body.single-post:not(.elementor-page) .entry-footer {
    width: 100% !important;
    max-width: 100% !important;
    margin: 30px auto 0 !important;
    padding: 18px 16px !important;
    border-radius: 18px !important;
    background: rgba(17,24,39,.035) !important;
    border: 1px solid rgba(17,24,39,.07) !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  body.single-post:not(.elementor-page) .hgg-meta-group--categories .hgg-meta-group__label,
  body.single-post:not(.elementor-page) .hgg-meta-group--categories .hgg-meta-group__links {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    width: auto !important;
    max-width: 100% !important;
  }

  body.single-post:not(.elementor-page) .hgg-author-box {
    width: 100% !important;
    max-width: 100% !important;
    margin: 36px auto !important;
    padding: 26px 20px !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    align-items: center !important;
    text-align: center !important;
    overflow: hidden !important;
  }

  body.single-post:not(.elementor-page) .hgg-author-box__content,
  body.single-post:not(.elementor-page) .hgg-author-box__bio,
  body.single-post:not(.elementor-page) .hgg-author-box__name {
    width: 100% !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
}

/* v81.35.3 / v1.50.36 — Mobile menu simplified modal + single taxonomy clean mobile. */
@media (max-width: 767px) {
  body.huuguu-mobile-menu-open {
    overflow: hidden !important;
    touch-action: none !important;
  }

  body.huuguu-mobile-menu-open::before {
    content: "" !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 99980 !important;
    background: rgba(10, 15, 20, .46) !important;
    -webkit-backdrop-filter: blur(2px) !important;
    backdrop-filter: blur(2px) !important;
    pointer-events: auto !important;
  }

  body.huuguu-mobile-menu-open .site-header,
  body.huuguu-mobile-menu-open .site-header.site-header--overlay,
  body.huuguu-mobile-menu-open .site-header.site-header--glass,
  body.huuguu-mobile-menu-open .site-header.is-scrolled,
  body.huuguu-mobile-menu-open .site-header.site-header--scrolled {
    position: fixed !important;
    inset: 0 !important;
    z-index: 99990 !important;
    width: 100vw !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    overflow: visible !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-header-shell.site-header-inner,
  body.huuguu-mobile-menu-open .site-header .huuguu-container.huuguu-header-shell,
  body.huuguu-mobile-menu-open .huuguu-mobile-topbar {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    overflow: visible !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .site-branding,
  body.huuguu-mobile-menu-open .site-header .mobile-branding,
  body.huuguu-mobile-menu-open .site-header .header-left,
  body.huuguu-mobile-menu-open .site-header .header-actions,
  body.huuguu-mobile-menu-open .site-header .huuguu-cart-link,
  body.huuguu-mobile-menu-open .site-header .hgg-header-link,
  body.huuguu-mobile-menu-open .site-header .custom-logo-link,
  body.huuguu-mobile-menu-open .site-header .huuguu-logo,
  body.huuguu-mobile-menu-open .site-header .customize-partial-edit-shortcut {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .menu-toggle,
  body.huuguu-mobile-menu-open .menu-toggle {
    position: fixed !important;
    top: max(18px, calc(env(safe-area-inset-top, 0px) + 18px)) !important;
    right: max(18px, calc(env(safe-area-inset-right, 0px) + 18px)) !important;
    z-index: 100020 !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255,255,255,.96) !important;
    color: #111827 !important;
    border: 1px solid rgba(17,24,39,.08) !important;
    border-radius: 14px !important;
    box-shadow: 0 16px 42px rgba(0,0,0,.18) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  body.huuguu-mobile-menu-open.admin-bar .site-header .menu-toggle,
  body.huuguu-mobile-menu-open.admin-bar .menu-toggle {
    top: max(50px, calc(env(safe-area-inset-top, 0px) + 50px)) !important;
  }

  body.huuguu-mobile-menu-open .site-header .menu-toggle[title],
  body.huuguu-mobile-menu-open .menu-toggle[title] {
    outline: none !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open .huuguu-mobile-panel::before,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel::after {
    display: none !important;
    content: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel nav.mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #111827 !important;
    box-sizing: border-box !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav .menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel ul.menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel ul.primary-menu {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav .menu > li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel ul.primary-menu > li {
    min-height: 50px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(17,24,39,.10) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li:last-child,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav .menu > li:last-child,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel ul.primary-menu > li:last-child {
    border-bottom: 0 !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel ul.primary-menu > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 50px !important;
    padding: 0 !important;
    color: #111827 !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
    background: transparent !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .header-right.is-open {
    width: 100% !important;
    max-width: 100% !important;
    margin: 16px 0 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .header-right.is-open a {
    min-height: 44px !important;
    border-radius: 12px !important;
  }

  body.single-post:not(.elementor-page) .entry-footer,
  body.single-post:not(.elementor-page) .hgg-meta-group--categories,
  body.single-post:not(.elementor-page) .hgg-post-meta-footer,
  body.single-post:not(.elementor-page) .post-meta-footer,
  body.single-post:not(.elementor-page) .cat-links,
  body.single-post:not(.elementor-page) .tags-links {
    width: 100% !important;
    max-width: 100% !important;
    margin: 24px auto 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  body.single-post:not(.elementor-page) .cat-links a,
  body.single-post:not(.elementor-page) .tags-links a,
  body.single-post:not(.elementor-page) .hgg-meta-group--categories a,
  body.single-post:not(.elementor-page) .entry-footer a[rel="category tag"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 30px !important;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    background: rgba(17,24,39,.055) !important;
    color: #172033 !important;
    font-size: .82rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
  }

  body.single-post:not(.elementor-page) .cat-links > svg,
  body.single-post:not(.elementor-page) .tags-links > svg,
  body.single-post:not(.elementor-page) .entry-footer > svg,
  body.single-post:not(.elementor-page) .hgg-meta-icon {
    flex: 0 0 auto !important;
  }
}

/* Huuguu v1.50.37 / v81.35.4 — Mobile Menu Actions Restore + Close Gap Polish
   Restore account/cart actions without nested cards and correct the visual distance
   between the floating close icon and the mobile menu panel. */
@media (max-width: 1100px) {/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open.admin-bar .site-header .menu-toggle[aria-expanded="true"],
  body.huuguu-mobile-menu-open.admin-bar .site-header .huuguu-mobile-menu-toggle[aria-expanded="true"] {
    top: max(50px, calc(18px + env(safe-area-inset-top))) !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions.is-open {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 18px 0 0 !important;
    padding: 16px 0 0 !important;
    border-top: 1px solid rgba(23, 32, 51, .10) !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions .mobile-utility-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions .header-search,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions .header-cta {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-utility-grid a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions .header-cta {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    width: 100% !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    color: #5b5200 !important;
    background: rgba(17,24,39,.035) !important;
    border: 1px solid rgba(17,24,39,.055) !important;
    text-decoration: none !important;
    font-weight: 800 !important;
    line-height: 1.05 !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions svg,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-utility-grid svg {
    width: 17px !important;
    height: 17px !important;
    margin-right: 7px !important;
    flex: 0 0 auto !important;
  }
}

@media (max-width: 420px) {/* huuguu v1.52.4: selector migrated to header/mobile engine. */
}


/* Huuguu v1.50.38 / v81.35.5 — Mobile Actions Rendering + Woo Card Reveal Parity */
@media (max-width: 1100px) {
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions.is-open {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 10px !important;
    min-height: 0 !important;
    margin-top: 18px !important;
    padding-top: 16px !important;
    border-top: 1px solid rgba(17,24,39,.10) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-utility-grid {
    display: contents !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions:empty,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-utility-grid:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions .hgg-header-link,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions .header-cta {
    min-width: 0 !important;
    min-height: 44px !important;
    white-space: normal !important;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .woocommerce ul.products li.product.hgg-reveal-ready,
  .woocommerce-page ul.products li.product.hgg-reveal-ready,
  ul.products li.product.hgg-reveal-ready,
  .products .product.hgg-reveal-ready,
  .wc-block-grid__product.hgg-reveal-ready,
  .wc-block-product.hgg-reveal-ready,
  .wp-block-woocommerce-product-template li.hgg-reveal-ready {
    opacity: 0;
    transform: translateY(22px) scale(.985);
    transition: opacity .52s ease, transform .52s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, border-color .28s ease;
    will-change: opacity, transform;
  }

  .woocommerce ul.products li.product.hgg-reveal-ready.hgg-reveal-visible,
  .woocommerce-page ul.products li.product.hgg-reveal-ready.hgg-reveal-visible,
  ul.products li.product.hgg-reveal-ready.hgg-reveal-visible,
  .products .product.hgg-reveal-ready.hgg-reveal-visible,
  .wc-block-grid__product.hgg-reveal-ready.hgg-reveal-visible,
  .wc-block-product.hgg-reveal-ready.hgg-reveal-visible,
  .wp-block-woocommerce-product-template li.hgg-reveal-ready.hgg-reveal-visible {
    opacity: 1;
    transform: translateY(0) scale(1);
  }

  .woocommerce ul.products li.product.hgg-reveal-ready.hgg-reveal-exit,
  .woocommerce-page ul.products li.product.hgg-reveal-ready.hgg-reveal-exit,
  ul.products li.product.hgg-reveal-ready.hgg-reveal-exit,
  .products .product.hgg-reveal-ready.hgg-reveal-exit,
  .wc-block-grid__product.hgg-reveal-ready.hgg-reveal-exit,
  .wc-block-product.hgg-reveal-ready.hgg-reveal-exit,
  .wp-block-woocommerce-product-template li.hgg-reveal-ready.hgg-reveal-exit {
    opacity: .42;
    transform: translateY(12px) scale(.992);
  }
}

/* Huuguu v1.50.39 / v81.35.6 — Mobile Menu Actions Final Visibility
   The mobile account/cart actions exist in the markup, but previous panel cleanups
   could hide or flatten .mobile-utility-grid with display: contents. Keep the row
   explicit, visible and inside the same modal card. */
@media (max-width: 1100px) {
  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel,
  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel.is-open {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    overflow: visible !important;
    height: auto !important;
    max-height: calc(100dvh - 116px) !important;
    box-sizing: border-box !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .mobile-nav,
  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .mobile-nav.is-open,
  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .main-navigation {
    display: block !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .mobile-actions.is-open {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    position: relative !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    margin: 16px 0 0 !important;
    padding: 16px 0 0 !important;
    border-top: 1px solid rgba(17, 24, 39, .10) !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    clip: auto !important;
    clip-path: none !important;
    overflow: visible !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .mobile-actions .mobile-utility-grid {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .mobile-actions .hgg-header-link,
  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .mobile-actions .hgg-header-link:visited {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding: 10px 11px !important;
    border: 1px solid rgba(17, 24, 39, .08) !important;
    border-radius: 12px !important;
    background: rgba(17, 24, 39, .045) !important;
    color: var(--hgg-header-action-color, #5b5200) !important;
    font-size: .92rem !important;
    font-weight: 800 !important;
    line-height: 1.05 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: normal !important;
    transform: none !important;
    clip: auto !important;
    clip-path: none !important;
    overflow: visible !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .mobile-actions .hgg-header-link__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    color: currentColor !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .mobile-actions .hgg-header-link__icon svg {
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    stroke: currentColor !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .mobile-actions .hgg-header-link__label {
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    clip: auto !important;
    clip-path: none !important;
    overflow: visible !important;
    white-space: normal !important;
    border: 0 !important;
    display: inline !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-panel .mobile-actions .hgg-cart-count {
    position: absolute !important;
    top: -8px !important;
    right: -6px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 5px !important;
    border-radius: 999px !important;
    background: var(--hgg-header-cart-badge-bg, #7a7200) !important;
    color: var(--hgg-header-cart-badge-text, #ffffff) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    box-shadow: 0 4px 10px rgba(0,0,0,.14) !important;
  }
}

/* Huuguu v81.35.7: mobile menu vertical position + transparent/classic context */
@media (max-width: 1100px) {
  body.huuguu-mobile-menu-open {
    overflow: hidden !important;
  }

  body.huuguu-mobile-menu-open .site-header {
    --hgg-mobile-menu-panel-top: calc(env(safe-area-inset-top, 0px) + 104px);
    --hgg-mobile-menu-panel-width: min(84vw, 330px);
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    max-width: none !important;
    height: 100dvh !important;
    max-height: none !important;
    transform: none !important;
    z-index: 99999 !important;
    overflow: hidden !important;
    border: 0 !important;
    box-shadow: none !important;
    background: rgba(8, 13, 22, .38) !important;
    -webkit-backdrop-filter: blur(3px) !important;
    backdrop-filter: blur(3px) !important;
  }

  /* Transparent/overlay headers need a little more clearance because they usually sit on top of a hero. */
  body.huuguu-mobile-menu-open .site-header[class*="overlay"],
  body.huuguu-mobile-menu-open .site-header[class*="transparent"],
  body.huuguu-mobile-menu-open .site-header.site-header--glass,
  body.huuguu-mobile-menu-open .site-header.site-header--premium {
    --hgg-mobile-menu-panel-top: calc(env(safe-area-inset-top, 0px) + 118px);
  }

  body.huuguu-mobile-menu-open.admin-bar .site-header {
    --hgg-mobile-menu-panel-top: calc(env(safe-area-inset-top, 0px) + 136px);
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-container,
  body.huuguu-mobile-menu-open .site-header .huuguu-header-shell {
    position: static !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-topbar {
    position: fixed !important;
    top: calc(env(safe-area-inset-top, 0px) + 22px) !important;
    right: max(18px, calc((100vw - var(--hgg-mobile-menu-panel-width)) / 2)) !important;
    left: auto !important;
    z-index: 100002 !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-topbar .mobile-branding,
  body.huuguu-mobile-menu-open .huuguu-mobile-topbar .hgg-header-link,
  body.huuguu-mobile-menu-open .huuguu-mobile-topbar .hgg-cart-count {
    display: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-topbar .mobile-topbar-actions {
    display: block !important;
    width: auto !important;
  }

  body.huuguu-mobile-menu-open .menu-toggle,
  body.huuguu-mobile-menu-open .menu-toggle.menu-toggle--icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.96) !important;
    color: #101827 !important;
    border: 1px solid rgba(15,23,42,.08) !important;
    box-shadow: 0 12px 32px rgba(0,0,0,.14) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  body.huuguu-mobile-menu-open .menu-toggle .menu-toggle__icon span,
  body.huuguu-mobile-menu-open .menu-toggle .menu-toggle__icon::before,
  body.huuguu-mobile-menu-open .menu-toggle .menu-toggle__icon::after {
    background: currentColor !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation {
    flex: 0 0 auto !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions.is-open {
    flex: 0 0 auto !important;
    display: block !important;
    width: 100% !important;
    margin-top: 18px !important;
    padding-top: 18px !important;
    border-top: 1px solid rgba(15,23,42,.10) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-utility-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
  }
}

@media (max-width: 380px) {
  body.huuguu-mobile-menu-open .site-header {
    --hgg-mobile-menu-panel-width: min(86vw, 306px);
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */
}

/* Huuguu v1.50.41 — Mobile Navigation Overlay Authority
   Final layer: the mobile menu must be a viewport navigation layer, not a resized header card.
   Works with classic headers and transparent/overlay home headers. */
@media (max-width: 1100px) {
  body.huuguu-mobile-menu-open {
    overflow: hidden !important;
    touch-action: none;
  }

  body.huuguu-mobile-menu-open .site-header {
    position: fixed !important;
    inset: 0 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    max-width: none !important;
    height: 100dvh !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    overflow: hidden !important;
    z-index: 99999 !important;
    background: rgba(12, 16, 20, .44) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: blur(5px) !important;
    -webkit-backdrop-filter: blur(5px) !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-container,
  body.huuguu-mobile-menu-open .site-header .huuguu-header-shell,
  body.huuguu-mobile-menu-open .site-header .site-header-inner {
    position: static !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  /* Hide the normal header controls while the navigation layer is open. */
  body.huuguu-mobile-menu-open .huuguu-mobile-topbar {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-topbar .mobile-branding,
  body.huuguu-mobile-menu-open .huuguu-mobile-topbar .hgg-header-link--cart,
  body.huuguu-mobile-menu-open .huuguu-mobile-topbar .hgg-cart-count,
  body.huuguu-mobile-menu-open .huuguu-header-desktop,
  body.huuguu-mobile-menu-open .header-branding,
  body.huuguu-mobile-menu-open .header-nav,
  body.huuguu-mobile-menu-open .header-actions {
    display: none !important;
  }

  /* The original hamburger becomes the only close button and is detached from the header layout. */
  body.huuguu-mobile-menu-open .mobile-topbar-actions {
    position: static !important;
    display: block !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.huuguu-mobile-menu-open .menu-toggle,
  body.huuguu-mobile-menu-open .menu-toggle.menu-toggle--icon {
    position: fixed !important;
    top: calc(env(safe-area-inset-top, 0px) + 18px) !important;
    right: max(18px, calc((100vw - min(92vw, 380px)) / 2)) !important;
    z-index: 100002 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    padding: 0 !important;
    margin: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    color: #172033 !important;
    background: rgba(255,255,255,.96) !important;
    border: 1px solid rgba(23,32,51,.08) !important;
    border-radius: 12px !important;
    box-shadow: 0 16px 40px rgba(0,0,0,.22) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
  }

  body.huuguu-mobile-menu-open .menu-toggle .menu-toggle__icon,
  body.huuguu-mobile-menu-open .menu-toggle .menu-toggle__icon span,
  body.huuguu-mobile-menu-open .menu-toggle .menu-toggle__icon::before,
  body.huuguu-mobile-menu-open .menu-toggle .menu-toggle__icon::after {
    display: none !important;
  }

  body.huuguu-mobile-menu-open .menu-toggle::before {
    content: "×" !important;
    display: block !important;
    font-size: 28px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    color: currentColor !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open.admin-bar .menu-toggle,
  body.admin-bar.huuguu-mobile-menu-open .menu-toggle {
    top: calc(46px + env(safe-area-inset-top, 0px) + 12px) !important;
  }

  body.huuguu-mobile-menu-open.admin-bar .huuguu-mobile-panel,
  body.admin-bar.huuguu-mobile-menu-open .huuguu-mobile-panel {
    top: calc(46px + env(safe-area-inset-top, 0px) + 104px) !important;
    max-height: calc(100dvh - 184px - env(safe-area-inset-top, 0px)) !important;
  }

  /* Slightly lower card for transparent/overlay headers over a hero. */
  body.huuguu-mobile-menu-open .site-header--overlay .huuguu-mobile-panel,
  body.huuguu-mobile-menu-open .site-header--transparent .huuguu-mobile-panel,
  body.huuguu-mobile-menu-open .site-header--glass .huuguu-mobile-panel,
  body.huuguu-mobile-menu-open .site-header--premium .huuguu-mobile-panel {
    top: calc(env(safe-area-inset-top, 0px) + 132px) !important;
    max-height: calc(100dvh - 168px - env(safe-area-inset-top, 0px)) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel nav.mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    background: transparent !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu > li {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    width: 100% !important;
    min-height: 44px !important;
    padding: 0 !important;
    border-bottom: 1px solid #e5e9f0 !important;
    background: transparent !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation ul.primary-menu > li > a {
    display: flex !important;
    align-items: center !important;
    min-height: 44px !important;
    padding: 9px 0 !important;
    color: #172033 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions.is-open {
    display: block !important;
    width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-utility-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .hgg-header-link--mobile-panel {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    min-height: 44px !important;
    padding: 8px 10px !important;
    color: #6f6417 !important;
    background: #f8f8f5 !important;
    border: 1px solid #e5e2d7 !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    text-align: center !important;
    text-decoration: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .hgg-header-link--mobile-panel .hgg-cart-count {
    position: absolute !important;
    top: -9px !important;
    right: -5px !important;
  }

  @media (max-width: 374px) {
    body.huuguu-mobile-menu-open .menu-toggle,
    body.huuguu-mobile-menu-open .menu-toggle.menu-toggle--icon {
      width: 48px !important;
      height: 48px !important;
      min-width: 48px !important;
      min-height: 48px !important;
    }/* huuguu v1.52.4: selector migrated to header/mobile engine. */
  }
}

/* v81.35.9 / v1.50.42 — Overlay Header Mobile Click Fix
 * Final authority layer for mobile navigation when the transparent/overlay header is active.
 * The dark backdrop is visual only and never intercepts taps. The header shell is neutralized
 * while the menu is open, and the real mobile panel/toggle receive the highest stack order.
 */
@media (max-width: 767px) {
  body.huuguu-mobile-menu-open {
    overflow: hidden !important;
    touch-action: none !important;
  }

  body.huuguu-mobile-menu-open::before {
    content: "" !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    background: rgba(8, 13, 24, .44) !important;
    -webkit-backdrop-filter: blur(2px) !important;
    backdrop-filter: blur(2px) !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open #main-content,
  body.huuguu-mobile-menu-open .site-footer {
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header,
  body.huuguu-mobile-menu-open .site-header.site-header--overlay,
  body.huuguu-mobile-menu-open .site-header.site-header--glass,
  body.huuguu-mobile-menu-open .site-header.site-header--premium,
  body.huuguu-mobile-menu-open .site-header.is-over-hero,
  body.huuguu-mobile-menu-open .site-header.is-scrolled {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    opacity: 1 !important;
    transform: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    z-index: 2147483100 !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-header-shell,
  body.huuguu-mobile-menu-open .site-header .site-header-inner,
  body.huuguu-mobile-menu-open .site-header .huuguu-container.huuguu-header-shell,
  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-topbar,
  body.huuguu-mobile-menu-open .site-header .mobile-topbar-actions {
    position: static !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    opacity: 1 !important;
    transform: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .site-branding,
  body.huuguu-mobile-menu-open .site-header .mobile-branding,
  body.huuguu-mobile-menu-open .site-header .header-branding,
  body.huuguu-mobile-menu-open .site-header .header-nav,
  body.huuguu-mobile-menu-open .site-header .header-actions,
  body.huuguu-mobile-menu-open .site-header .hgg-header-link,
  body.huuguu-mobile-menu-open .site-header .huuguu-logo,
  body.huuguu-mobile-menu-open .site-header .custom-logo-link,
  body.huuguu-mobile-menu-open .site-header .customize-partial-edit-shortcut {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .menu-toggle,
  body.huuguu-mobile-menu-open .menu-toggle[aria-expanded="true"] {
    position: fixed !important;
    top: max(18px, calc(env(safe-area-inset-top, 0px) + 18px)) !important;
    right: max(18px, calc(env(safe-area-inset-right, 0px) + 18px)) !important;
    z-index: 2147483300 !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255,255,255,.98) !important;
    color: #111827 !important;
    border: 1px solid rgba(17,24,39,.10) !important;
    border-radius: 14px !important;
    box-shadow: 0 18px 48px rgba(0,0,0,.22) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    pointer-events: auto !important;
    cursor: pointer !important;
  }

  body.huuguu-mobile-menu-open.admin-bar .site-header .menu-toggle,
  body.huuguu-mobile-menu-open.admin-bar .menu-toggle[aria-expanded="true"] {
    top: max(50px, calc(env(safe-area-inset-top, 0px) + 50px)) !important;
  }

  body.huuguu-mobile-menu-open .site-header .menu-toggle[aria-expanded="true"] .menu-toggle__icon span {
    opacity: 0 !important;
  }

  body.huuguu-mobile-menu-open .site-header .menu-toggle[aria-expanded="true"] .menu-toggle__icon::before,
  body.huuguu-mobile-menu-open .site-header .menu-toggle[aria-expanded="true"] .menu-toggle__icon::after {
    background: currentColor !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open.admin-bar .huuguu-mobile-panel,
  body.huuguu-mobile-menu-open.admin-bar .huuguu-mobile-panel.is-open {
    top: clamp(150px, 26dvh, 202px) !important;
    max-height: calc(100dvh - clamp(150px, 26dvh, 202px) - 28px) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel *,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel button {
    pointer-events: auto !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel nav.mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #111827 !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel ul.primary-menu > li > a {
    color: #111827 !important;
    background: transparent !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions.is-open,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-utility-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 16px 0 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
}


/* v81.36.0 / v1.50.43 — Overlay Stack Cleanup
 * Authority layer: cleans duplicated overlay stack side effects.
 * Goals:
 * - content/hero overlays never capture taps/clicks;
 * - mobile menu backdrop is visual only;
 * - mobile panel and close button always sit above header/hero/widget overlays;
 * - transparent/glass/premium header does not create a competing interaction layer while menu is open.
 */

/* Decorative overlays must never be interactive. */
.huu-uib-section__overlay,
.huu-uib-simple-inner-hero__section-overlay,
.huu-uib-inner-hero__section-overlay,
.huu-uib-hero__overlay,
.huu-uib-section--has-overlay::before,
.huu-uib-section--has-overlay::after,
.huuguu-hero-overlay,
.huuguu-section-overlay,
.site-header::before,
.site-header::after,
.huuguu-header-shell::before,
.huuguu-header-shell::after {
  pointer-events: none !important;
}/* huuguu v1.52.4: selector migrated to header/mobile engine. */

@media (max-width: 767px) {
  html:has(body.huuguu-mobile-menu-open),
  body.huuguu-mobile-menu-open {
    overflow: hidden !important;
  }

  body.huuguu-mobile-menu-open {
    position: relative !important;
    touch-action: none !important;
    overscroll-behavior: none !important;
  }

  /* One visual backdrop only. It never receives pointer events. */
  body.huuguu-mobile-menu-open::before {
    content: "" !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147482000 !important;
    background: rgba(7, 10, 18, .42) !important;
    -webkit-backdrop-filter: blur(2px) !important;
    backdrop-filter: blur(2px) !important;
    pointer-events: none !important;
  }

  /* Neutralize every lower visual overlay while menu is open. */
  body.huuguu-mobile-menu-open .huu-uib-section__overlay,
  body.huuguu-mobile-menu-open .huu-uib-simple-inner-hero__section-overlay,
  body.huuguu-mobile-menu-open .huu-uib-inner-hero__section-overlay,
  body.huuguu-mobile-menu-open .huu-uib-section--has-overlay::before,
  body.huuguu-mobile-menu-open .huu-uib-section--has-overlay::after,
  body.huuguu-mobile-menu-open .elementor-background-overlay,
  body.huuguu-mobile-menu-open .elementor-shape,
  body.huuguu-mobile-menu-open .elementor-motion-effects-layer,
  body.huuguu-mobile-menu-open .site-main::before,
  body.huuguu-mobile-menu-open .site-main::after {
    pointer-events: none !important;
    z-index: 0 !important;
  }

  body.huuguu-mobile-menu-open #main-content,
  body.huuguu-mobile-menu-open .site-footer {
    pointer-events: none !important;
  }

  /* Header becomes a non-visual fixed host only. */
  body.huuguu-mobile-menu-open .site-header,
  body.huuguu-mobile-menu-open .site-header.site-header--overlay,
  body.huuguu-mobile-menu-open .site-header.site-header--glass,
  body.huuguu-mobile-menu-open .site-header.site-header--premium,
  body.huuguu-mobile-menu-open .site-header.is-over-hero,
  body.huuguu-mobile-menu-open .site-header.is-scrolled {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    min-height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    z-index: 2147482500 !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .huuguu-header-shell,
  body.huuguu-mobile-menu-open .site-header .site-header-inner,
  body.huuguu-mobile-menu-open .site-header .huuguu-container.huuguu-header-shell,
  body.huuguu-mobile-menu-open .site-header .huuguu-mobile-topbar,
  body.huuguu-mobile-menu-open .site-header .mobile-topbar-actions {
    position: static !important;
    inset: auto !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    filter: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    pointer-events: none !important;
  }

  body.huuguu-mobile-menu-open .site-header .site-branding,
  body.huuguu-mobile-menu-open .site-header .mobile-branding,
  body.huuguu-mobile-menu-open .site-header .header-branding,
  body.huuguu-mobile-menu-open .site-header .header-nav,
  body.huuguu-mobile-menu-open .site-header .header-actions,
  body.huuguu-mobile-menu-open .site-header .hgg-header-link:not(.hgg-header-link--mobile-panel),
  body.huuguu-mobile-menu-open .site-header .huuguu-logo,
  body.huuguu-mobile-menu-open .site-header .custom-logo-link,
  body.huuguu-mobile-menu-open .site-header .customize-partial-edit-shortcut {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  /* Close button. */
  body.huuguu-mobile-menu-open .site-header .menu-toggle,
  body.huuguu-mobile-menu-open .menu-toggle[aria-expanded="true"] {
    position: fixed !important;
    top: max(18px, calc(env(safe-area-inset-top, 0px) + 18px)) !important;
    right: max(18px, calc(env(safe-area-inset-right, 0px) + 18px)) !important;
    z-index: 2147483600 !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255,255,255,.98) !important;
    color: #111827 !important;
    border: 1px solid rgba(17,24,39,.10) !important;
    border-radius: 14px !important;
    box-shadow: 0 18px 48px rgba(0,0,0,.22) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    filter: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    pointer-events: auto !important;
    cursor: pointer !important;
  }

  body.huuguu-mobile-menu-open.admin-bar .site-header .menu-toggle,
  body.huuguu-mobile-menu-open.admin-bar .menu-toggle[aria-expanded="true"] {
    top: max(50px, calc(env(safe-area-inset-top, 0px) + 50px)) !important;
  }

  body.huuguu-mobile-menu-open .site-header .menu-toggle[aria-expanded="true"] .menu-toggle__icon span {
    opacity: 0 !important;
  }

  body.huuguu-mobile-menu-open .site-header .menu-toggle[aria-expanded="true"] .menu-toggle__icon::before,
  body.huuguu-mobile-menu-open .site-header .menu-toggle[aria-expanded="true"] .menu-toggle__icon::after {
    background: currentColor !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open.admin-bar .huuguu-mobile-panel,
  body.huuguu-mobile-menu-open.admin-bar .huuguu-mobile-panel.is-open {
    top: max(126px, calc(env(safe-area-inset-top, 0px) + 126px)) !important;
    max-height: calc(100dvh - max(126px, calc(env(safe-area-inset-top, 0px) + 126px)) - 28px) !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. */

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel nav.mobile-nav,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #111827 !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel ul.primary-menu {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    background: transparent !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel ul.primary-menu > li {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(17,24,39,.10) !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li:last-child,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel ul.primary-menu > li:last-child {
    border-bottom: 0 !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .main-navigation .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-nav .menu > li > a,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel ul.primary-menu > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-height: 50px !important;
    padding: 0 !important;
    color: #111827 !important;
    background: transparent !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
  }

  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-actions.is-open,
  body.huuguu-mobile-menu-open .huuguu-mobile-panel .mobile-utility-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 16px 0 0 !important;
    padding: 16px 0 0 !important;
    background: transparent !important;
    border-top: 1px solid rgba(17,24,39,.10) !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
}


/* v81.36.1 / v1.50.44 — Mobile Menu Portal Authority
 * The mobile menu is portaled to <body> while open. These selectors intentionally do
 * not depend on .site-header ancestry, so transparent headers, hero overlays,
 * Elementor overlays and backdrop-filter stacking contexts cannot block the drawer.
 */
@media (max-width: 767px) {
  body.huuguu-mobile-menu-portal-open,
  body.huuguu-mobile-menu-open.huuguu-mobile-menu-portal-open {
    overflow: hidden !important;
    touch-action: none !important;
    overscroll-behavior: none !important;
  }

  body.huuguu-mobile-menu-portal-open::before {
    content: none !important;
    display: none !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. *//* huuguu v1.52.4: selector migrated to header/mobile engine. */

  .huuguu-mobile-menu-portal.is-open {
    display: block !important;
    pointer-events: auto !important;
  }/* huuguu v1.52.4: selector migrated to header/mobile engine. *//* huuguu v1.52.4: selector migrated to header/mobile engine. *//* huuguu v1.52.4: selector migrated to header/mobile engine. */

  .admin-bar .huuguu-mobile-menu-portal__close {
    top: max(50px, calc(env(safe-area-inset-top, 0px) + 50px)) !important;
  }

  .admin-bar .huuguu-mobile-menu-portal > .huuguu-mobile-panel,
  .admin-bar .huuguu-mobile-menu-portal > .huuguu-mobile-panel.is-open {
    top: max(144px, calc(env(safe-area-inset-top, 0px) + 144px)) !important;
    max-height: calc(100dvh - max(144px, calc(env(safe-area-inset-top, 0px) + 144px)) - 28px) !important;
  }

  .huuguu-mobile-menu-portal .huuguu-mobile-panel,
  .huuguu-mobile-menu-portal .huuguu-mobile-panel *,
  .huuguu-mobile-menu-portal .huuguu-mobile-panel a,
  .huuguu-mobile-menu-portal .huuguu-mobile-panel button {
    pointer-events: auto !important;
  }

  .huuguu-mobile-menu-portal .huuguu-mobile-panel .mobile-nav,
  .huuguu-mobile-menu-portal .huuguu-mobile-panel .main-navigation {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #111827 !important;
  }

  .huuguu-mobile-menu-portal .huuguu-mobile-panel .main-navigation .menu,
  .huuguu-mobile-menu-portal .huuguu-mobile-panel ul.primary-menu {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    background: transparent !important;
  }

  .huuguu-mobile-menu-portal .huuguu-mobile-panel .main-navigation .menu > li,
  .huuguu-mobile-menu-portal .huuguu-mobile-panel ul.primary-menu > li {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(17,24,39,.10) !important;
  }

  .huuguu-mobile-menu-portal .huuguu-mobile-panel .main-navigation .menu > li:last-child,
  .huuguu-mobile-menu-portal .huuguu-mobile-panel ul.primary-menu > li:last-child {
    border-bottom: 0 !important;
  }

  .huuguu-mobile-menu-portal .huuguu-mobile-panel .main-navigation .menu > li > a,
  .huuguu-mobile-menu-portal .huuguu-mobile-panel ul.primary-menu > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-height: 50px !important;
    padding: 0 !important;
    color: #111827 !important;
    background: transparent !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
  }

  .huuguu-mobile-menu-portal .huuguu-mobile-panel .mobile-actions,
  .huuguu-mobile-menu-portal .huuguu-mobile-panel .mobile-actions.is-open,
  .huuguu-mobile-menu-portal .huuguu-mobile-panel .mobile-utility-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 16px 0 0 !important;
    padding: 16px 0 0 !important;
    background: transparent !important;
    border-top: 1px solid rgba(17,24,39,.10) !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  .huuguu-mobile-menu-portal .huuguu-mobile-panel .hgg-header-link--mobile-panel {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    min-height: 44px !important;
    padding: 8px 10px !important;
    color: #6f6417 !important;
    background: #f8f8f5 !important;
    border: 1px solid #e5e2d7 !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    text-align: center !important;
    text-decoration: none !important;
  }
}
