/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* #MEGAMENU */



@media (min-width: 769px) {
    nav .main-nav .mega-menu {
        position: static;
    }

    nav .main-nav .mega-menu > ul {
        position: absolute;
        width: 100%;
        left: 0 !important;
        display: flex;
        flex-wrap: wrap;
    }

    nav .main-nav .mega-menu > ul > li > a {
        font-weight: bold;
    }

    nav .main-nav .mega-menu>ul>li {
        display: inline-block;
        width: 25%;
        vertical-align: top;
    }

    nav .main-nav .mega-menu.mega-menu-col-2>ul>li {
        width: 50%;
    }

    nav .main-nav .mega-menu.mega-menu-col-3>ul>li {
        width: 33.3333%;
    }

    nav .main-nav .mega-menu.mega-menu-col-5>ul>li {
        width: 20%;
    }

    nav .main-nav .mega-menu > ul > li:hover > a,
    nav .main-nav .mega-menu > ul > li:focus > a,
    nav .main-nav .mega-menu > ul > li[class*="current-"] > a,
    nav .main-nav .mega-menu ul ul {
        background-color: transparent !important;
        color: inherit;
    }

    nav .main-nav .mega-menu ul .sub-menu {
        position: static;
        display: block;
        opacity: 1;
        visibility: visible;
        width: 100%;
        box-shadow: 0 0 0;
        left: 0;
        height: auto;
        pointer-events: auto;
        transform: scale(1);
    }

    nav .main-nav .mega-menu ul.toggled-on .sub-menu {
        pointer-events: auto;
    }

    nav .main-nav .mega-menu .sub-menu .menu-item-has-children .dropdown-menu-toggle {
        display: none;
    }
}

/* #GENERAL */

ol,ul{
    margin-left: 1.1em;
}

html{
    scroll-padding-top: 100px;
}

body{overflow-x:hidden ;}

a{
    transition: .3s ease-in-out;
}

.playfair-display {
    font-family: 'Playfair Display', serif;
}

.woocommerce img, .woocommerce-page img{ max-width: fit-content !important; }


.single-product .related.products,
.line-title{
    position: relative;
    z-index: 3; 
}

/* .single-product .related.products h2::after{
    display: inline-block;
    z-index: 3;
    padding-right: 30px;
    background-color: #fff;
} */
/* .single-product .related.products::after, */
.line-title::after{
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    width: 100%;
    height: 2px;
    background-color: #1e1e1e;
    z-index: 0;
} 

/* #HEADER */



/* .custom-header {
    background: #fff;
    padding: 20px 0;
    position: relative;
} */

html{
    /* padding-top: 120px; */
    scroll-padding-top: 120px;
}

.custom-header {
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99;
  background: #fff;
  transition: transform 0.25s ease;
}

/* Hide header upward when scrolling down */
.custom-header.header-hidden {
  transform: translateY(-100%);
}

/* Fixed state when scrolled */
.custom-header.header-scrolled {
  position: fixed;
  top: 0;
  background-color: #fff;
}

/* IMPORTANT: when mobile menu is open, remove transform so fixed children
   (.header-center) stay fixed to the viewport and render correctly */
body.menu-open .custom-header {
  transform: none !important;
}

.header-wrapper {
    max-width: 1560px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px;
}

.header-left {
    display: flex;
    align-items: center;
    gap: 60px;
}

.header-center {
    flex: 1;
    display: flex;
    justify-content: center;
}

.header-right {
    display: flex;
    align-items: center;
    gap: 25px;
}

.header-right a {
    color: #1e1e1e;
    font-size: 16px;
    transition: color 0.3s;
}

.header-right a:hover {
    color: #FF483C;
}

.site-logo img {
    height: 63px;
    width: auto;
}

/* Navigation */
.primary-navigation {
    display: flex;
    align-items: center;
}

#primary-menu {
    display: flex;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 30px;
}

/* #primary-menu > li {
    position: relative;
} */

#primary-menu > li > a {
    display: block;
    padding: 10px 0;
    color: #1e1e1e !important;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 500;
    transition: color 0.3s ease;
}

#primary-menu > li::after{
    content: '';
    position: absolute;
    bottom: 0;
    top: 50%;
    right: -15px;
    height: 65%;
    display: flex;
    border-right: 1px solid #1e1e1e;
    transform: translateY(-50%);
}

#primary-menu > li > a:hover {
    color: #FF483C !important;
}

/* Current Menu Item */
.current-menu-item > a {
    font-weight: 600 !important;
}

.current-cat > a {
    color: #FF483C !important;
    font-weight: 700;
}

/* Mobile Menu Toggle */
.mobile-menu-toggle {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 10px;
    flex-direction: column;
    gap: 5px;
    z-index: 1001;
}

.burger-line {
    width: 25px;
    height: 3px;
    background-color: #1e1e1e;
    transition: all 0.3s ease;
    display: block;
}

.mobile-menu-toggle.active .burger-line:nth-child(1) {
    transform: rotate(45deg) translate(4px, 4px);
}

.mobile-menu-toggle.active .burger-line:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle.active .burger-line:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -7px);
}

.mobile-menu-toggle{
    background: #fff !important;
}

/* Mega Menu Base */
.menu-item-has-mega-menu {
    position: static;
}

.mega-menu {
    display: none;
    position: absolute;
    padding-top: 30px;
    top: 60%;
    left: 0;
    right: 0;
    width: 100vw;
    background-color: #fff;
    box-shadow: 0 10px 10px rgba(0,0,0,0.15);
    z-index: 1000;
}

.menu-item-has-mega-menu:hover .mega-menu {
    display: block;
}

/* Mega Menu Columns Layout (for category 23) */
.mega-menu-columns .mega-menu-inner {
    max-width: 1570px;
    margin: 0 auto;
    padding: 50px 40px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

.mega-menu-column {
    padding-right: 30px;
}

.mega-menu-column:last-child {
    border-right: none;
    padding-right: 0;
}

.column-title {
    margin: 0 0 20px 0;
    padding: 0;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.column-title a {
    color: #1e1e1e;
    text-transform: uppercase;
    text-decoration: none;
    transition: color 0.3s;
}

.column-title a:hover {
    color: #FF483C;
}

.column-items {
    list-style: none;
    margin: 0;
    padding: 0;
}

.column-items li {
    margin-bottom: 12px;
}

.column-items a {
    color: #1e1e1e;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 13px;
    transition: color 0.3s;
    display: block;
}

.column-items a:hover {
    color: #FF483C;
}

/* Mega Menu Products Layout (50/50) */
.mega-menu-products .mega-menu-inner {
    max-width: 1570px;
    margin: 0 auto;
    padding: 50px 40px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
}

.mega-menu-left .category-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mega-menu-left .category-list li {
    margin-bottom: 15px;
}

#primary-menu .current-menu-item > a { 
    font-weight: 600 !important;
    color: #FF483C !important;
}

.mega-menu-left .category-list a {
    color: #333;
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
    transition: color 0.3s;
}

.mega-menu-left .category-list a:hover {
    color: #FF483C;
}

.mega-menu-right {
    display: flex;
    align-items: center;
}

.featured-products {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    width: 100%;
}

.featured-product-item {
    text-align: center;
}

.featured-product-item a {
    text-decoration: none;
    color: #333;
    display: block;
    transition: transform 0.3s;
}

.featured-product-item a:hover {
    transform: translateY(-5px);
}

.featured-product-item img {
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
    object-fit: cover;
    margin-bottom: 10px;
}

.featured-product-item h4 {
    font-size: 13px;
    margin: 0;
    font-weight: 500;
    transition: color 0.3s;
}

.featured-product-item:hover h4 {
    color: #FF483C;
}

/* Header Right Icons */
.header-search,
.language-switcher,
.my-account,
.header-cart,
.js-moon-icon {
    display: flex;
    align-items: center;
}

.cart-icon {
    position: relative;
    display: inline-block;
}

.cart-count {
    position: absolute;
    top: -8px;
    right: -10px;
    background: #FF483C;
    color: #fff;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 600;
}

.js-moon-icon {
    cursor: pointer;
    color: #1e1e1e;
    font-size: 16px;
    transition: color 0.3s;
}

.js-moon-icon:hover {
    color: #FF483C;
}

/* Dark Mode Styles */
body.dark-mood .custom-header {
    background-color: #1a1a1a;
}

body.dark-mood #primary-menu > li > a {
    color: #fff !important;
}

body.dark-mood .header-right a {
    color: #fff;
}

body.dark-mood .js-moon-icon {
    color: #fff;
}

body.dark-mood .burger-line {
    background-color: #fff;
}

body.dark-mood .mega-menu {
    background-color: #1a1a1a;
}

body.dark-mood .column-title a {
    color: #fff;
}

body.dark-mood .column-items a {
    color: #ccc;
}

body.dark-mood .column-items a:hover {
    color: #FF483C;
}

body.dark-mood .mega-menu-column {
    border-right-color: #333;
}

body.dark-mood .mega-menu-left .category-list a {
    color: #fff;
}

body.dark-mood .featured-product-item a {
    color: #fff;
}

body.dark-mood .current-menu-item > a,
body.dark-mood .current-cat > a {
    color: #FF483C !important;
}

body.dark-mood #primary-menu {
    background: #1a1a1a;
}

body.dark-mood #primary-menu > li {
    border-bottom-color: #333;
}

/* Prevent body scroll when mobile menu is open */
body.menu-open {
    overflow: hidden;
}

.wpml-ls-legacy-dropdown{
    width: 100% !important;
}

.wpml-ls-legacy-dropdown a{
    border: none !important;
    transition: .3s ease-in-out;
    /* padding:0  20px !important; */
    background-color: #fff !important;
}

.featured-product-item h4 {
    text-transform: uppercase;
}

/* #WOOSHOP */

.woocommerce-products-header__title,
.woocommerce-breadcrumb,
.woocommerce-result-count,
.woocommerce-ordering {
    display: none !important;
}

.woocommerce-shop #content{
    flex-direction: row-reverse;
    gap: 70px;
}

#search-filter-input-radio-0 span {
    text-transform: uppercase;
}

.custom-product-price{
    margin-bottom: 20px;
}


.search-filter-input-radio--is-active > label > span {
    font-weight: 600 !important;
}

.search-filter-input-radio .search-filter-input-radio__container{
    display: table-caption !important;
}

.search-filter-input-radio__control{ display: none;}

/* #WOOCOMMERCE PRODUCT */
.paging-navigation .nav-links {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    margin-top: 40px;
}

.paging-navigation .page-numbers {
    color: #fff !important;
    background-color: #1a1a1a;
    border: none;
    transition: .3s ease-in-out;
    padding: 10px 15px;
    text-decoration: none;
    display: inline-block;
}

.paging-navigation .page-numbers:hover,
.paging-navigation .page-numbers.current {
    background-color: var(--accent) !important;
    color: #1a1a1a !important;
    border: none !important;
}

.paging-navigation .nav-previous,
.paging-navigation .nav-next {
    display: none;
}

/* Dark Mode */
body.dark-mood .paging-navigation .page-numbers {
    background-color: #fff;
    color: #1a1a1a !important;
}

body.dark-mood .paging-navigation .page-numbers:hover,
body.dark-mood .paging-navigation .page-numbers.current {
    background-color: var(--accent) !important;
}

/* WooCommerce Pagination (existing styles) */
.woocommerce-pagination li a{
    color: #fff !important;
    background-color: #1a1a1a;
    border: none;
    transition: .3s ease-in-out;
}

.woocommerce-pagination li a{
    color: #fff !important;
    background-color: #1a1a1a;
    border: none;
    transition: .3s ease-in-out;
}
.woocommerce-pagination li{ margin-left: 5px;}

.woocommerce nav.woocommerce-pagination ul{
    border: none !important;
}

.woocommerce .woocommerce-pagination ul.page-numbers li, .woocommerce-page .woocommerce-pagination ul.page-numbers li {
    display: inline-block;
    margin-right: 2px;
}

.page-numbers.current,
.woocommerce-pagination li a:hover{
    background-color: var(--accent) !important;
    color: #1a1a1a !important;
    border: none !important;
}

.woocommerce nav.woocommerce-pagination ul li{ border:none !important; }

.product-archive-title h1 { 
    margin-bottom: 0 !important;
    background-color: transparent !important;
    text-transform: uppercase;
}

.product-archive-title  .term-name-block { padding-right: 0 !important;}

.woocommerce ul.products li.product a img {
    height: 300px !important;
    object-fit: contain !important;
}

.artist-bio-section h4.artist-bio-title, 
h3.custom-product-title,
h3.custom-product-title > a{
    text-transform: uppercase !important;
    font-weight: 600 !important;
    font-size: 20px !important;
    line-height: 25px !important;
}

.custom-product-title{ padding-bottom: 0 !important;}

h3.custom-product-title { 
    padding-top: 30px;
    margin-bottom: 0;
}

/* .woocommerce-product-gallery__wrapper, */
.custom-product-inner .inside-wc-product-image {
    position: relative;
    padding: 20px;
    margin-bottom: 30px;
    display: flex;
    justify-content: center;
    /* overflow: hidden !important; */
}


.product-attribute-item-cstm .tag-cstm{
    font-size: 16px;
}
.product-attribute-item-cstm .attribute-label{
    font-weight: 700;
    font-size: 16px;
}
.product-attribute-item-cstm.pa-paint-type {
    display: flex;
    align-items: center;
}

.single-product .summary.entry-summary{
    padding-top: 100px;
}

form.cart button{
    background-color: #1e1e1e !important;
    transition: .3s ease-in-out !important;
    text-transform: uppercase;
}

.pa-paint-type .attribute-values{ text-transform: uppercase !important;}

form.cart button:hover{
    background-color: var(--accent) !important;
    color: #1a1a1a !important;
}

.product-price-section .woocommerce-Price-amount.amount{
    font-weight: 700;
    font-size: 30px;
    color: #FF483C;
}

.single-product .product-title {
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase !important;
    font-size: 30px !important;
}

.product-attributes-section{ 
    border-top: 2px solid #1e1e1e;
    margin-bottom: 40px;
}

.single-product .related.products{
    padding-top: 100px;
}

.single-product .related.products h2{
margin-bottom: 70px !important;
}

.product-artist-name a{
    text-decoration: none;
    text-transform: uppercase;
    color: #1e1e1e;
}

.product-attribute-item-cstm{
    display: flex;
    flex-wrap: wrap;
    gap:10px;
    border-bottom: 1px solid #1e1e1e;
    padding: 12px 0;
}

.search-filter-input-group  .search-filter-input-radio__label{
    transition: .3s ease-in-out;
}

.search-filter-input-radio--is-active > .search-filter-input-radio__container .search-filter-input-radio__label,
.search-filter-input-group  .search-filter-input-radio__label:hover{
    color: #FF483C;
}

.product-artist-name{ margin-bottom: 40px;}

.woocommerce-product-gallery__wrapper{ padding: 20px !important;}

.custom-product-inner .inside-wc-product-image img{
    transition: .3s ease-in-out;
    overflow: hidden !important;
}

.custom-product-inner .inside-wc-product-image:hover img{
    transform: scale(1.02);
}

.woocommerce-product-gallery__wrapper,
.custom-product-inner .inside-wc-product-image{
    border: 1px solid #1e1e1e;
}

.cstm-product-stock-status {
    position: absolute;
    bottom: -17px;
    right: 20px;
    left: 20px;
    display: inline-table;
    margin: 0 auto;
    background-color: var(--accent);
    color: #1a1a1a;
    font-weight: 500;
    font-size: 13px;
    padding: 5px 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    z-index: 3;
}

.cstm-product-stock-status.out-of-stock{
    background-color: var(--orange);
    color: #fff;
    font-weight: 500 !important;
}

.custom-product-title{
    font-size: 25px !important;
    line-height: 30px;
}

.custom-product-content{
    text-align: left;
}

.custom-product-price .amount{ 
    font-weight: 600;}

.custom-product-price{
    margin-top: 10px;
}

.custom-product-content * { color: #1e1e1e;}

.tag-cstm{
    background-color: #D8D8D8;
    padding: 5px 10px;
    margin-bottom: 5px;
    font-size: 13px;
    text-transform: uppercase;
    display: inline-block;
}

.single-product .product-attributes-section .attribute-values.tag-cstm{
    padding: 0;
    background-color: transparent;
}

/* #search */

.close-menu{
    cursor: pointer;
}

input[type="search"] {
    border: none;
    border-bottom: 1px solid #1e1e1e;
}

.input[type="search"]::placeholder{
    color: #fff;
}

.search-bar{
    position: fixed;
    top: 0;                 /* anchor to viewport top */
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1003;
    transform: translateY(-100%);     /* use transform for animation */
    transition: transform .25s ease;   /* smoother than top changes */
}

.search-bar.active{
    top: 0;                           /* keep anchor */
    transform: translateY(0);          /* slide in */
}

.search-posts-wrapper{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px;
    margin-top: 40px;
}

.search-post-image {
    max-height: 300px;
    overflow: hidden;
    display: flex;
    align-items: center;
}

.search-post-image img{
    object-fit: cover;
    width: 100%;
    height: 100%;
    aspect-ratio: 6/4;
}
.search-post-date{
    background-color: var(--contrast);
    color: var(--base-3);
    display: inline-flex;
    font-size: 14px;
    padding: 5px 10px;
}

.search-date-and-terms{
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: 20px;
    margin-bottom: 20px;
}

.search-post-item-title h3 a{
 text-decoration: none;
    font-family: inherit;
    text-transform: uppercase;
    color: var(--contrast);
}   

.search-post-terms.search-category{
    display: flex;
    gap: 10px;
}

.search-category a{
    background-color: var(--orange);
    color: var(--base-3);
    text-decoration: none;
    text-transform: uppercase;
    display: flex;
        font-size: 14px;
    padding: 5px 10px;
}

/* #HOME */

.square-down-pink,
.square-up-blue{
    position: relative;
}

.square-up-blue::after{
    content: '';
    background-color: #8FCBEE;
    position: absolute;
    top: -50px;
    max-width: 400px;
    width: 100%;
    height: 400px;
    right: -50px;
    background-repeat: no-repeat;
    background-size: contain;
}

.square-down-pink::before{
    content: '';
    background-color: #FFB3AB;
    position: absolute;
    bottom: -50px;
    max-width: 400px;
    width: 100%;
    height: 400px;
    left: -50px;
    background-repeat: no-repeat;
    background-size: contain;
}

.link-text a{
    position: relative;
}

.link-text a::after{
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    right: 0;
    border-bottom: 1px solid var(--contrast);
    background: none;
    width: 0;
    transition: .3s ease-in-out;
}

.link-text a:hover::after {
    width:100%;
}

.services img{ transition:.3s ease-in-out;}

.magazine-photo img{ 
    transition:.3s ease-in-out;
}


.feat-img-post-single { position: relative; }

.feat-img-post-single ::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.2);
    z-index: -1;
}

/* #SINGLE PRODUCT */

/* .woocommerce-product-gallery__image {
    aspect-ratio: 1 / 1;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
.woocommerce-product-gallery__image img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
} */

.single-product h1.product-title{
    margin-bottom: 0;
    font-size:30px;
}

 .woocommerce div.product div.images img {
    max-width: 600px !important;
    max-height: 400px !important;
    object-fit: contain;
    margin: 0 auto;
}



/* #FOOTER  */

.site-footer{ margin-top: 100px;}

.footer-links .mailpoet_form.mailpoet_form_form.mailpoet_form_html{
    padding: 0 !important;
}

.mailpoet_form.mailpoet_form_form.mailpoet_form_html input[type="email"]{
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    outline: none !important;
    background-color: #fff !important;
    /* text-indent: 15px !important; */
    padding: 15px !important;
}

.mailpoet_form.mailpoet_form_form.mailpoet_form_html *{
    font-family: 'Montserrat', sans-serif !important;
}

.mailpoet_form.mailpoet_form_form.mailpoet_form_html input[type="submit"]{
    padding-left: 15px !important;
    padding-right: 15px !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    transition: .3s ease-in-out !important;
 
}

.mailpoet_form.mailpoet_form_form.mailpoet_form_html input[type="submit"]:hover{
    background: var(--accent);
}

.footer-links a{
    position: relative;
}

.footer-links a{
    transition: color .25s ease, text-shadow .25s ease;
    text-shadow: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.footer-links a:hover{
    /* multiple subtle shadows to thicken glyphs and simulate font-weight:600 */
    text-shadow:
        0.6px 0 currentColor,
        -0.6px 0 currentColor,
        0 0.6px currentColor,
        0 -0.6px currentColor;
}

/* #CART */

.wc-proceed-to-checkout *,
.woocommerce-cart-form tbody tr *{
    font-family: 'Montserrat', sans-serif !important;
    color: #1e1e1e !important;
    text-decoration: none;
    text-transform: uppercase;
}
.wc-proceed-to-checkout *,
.woocommerce-cart-form tbody tr button{ color: #fff !important;}

.wc-proceed-to-checkout a{ 
    transition: .3s ease-in-out !important;
    background-color: #1e1e1e !important;
}

.wc-proceed-to-checkout a:hover{
    background-color: var(--accent) !important;
    color: #1a1a1a !important;
}

.checkout.woocommerce-checkout .select2-container .select2-selection,
.checkout.woocommerce-checkout input{
    border: none !important;
    border-bottom: 1px solid #1a1a1a !important;
    border-radius: 0 !important;
}

 li.product img {
    /* aspect-ratio: 1/1; */
    /* object-fit: cover; */
}

/* #ARCHIVE */

/* .pa-title-section, */
.pa-title-section.product-cat { margin-bottom: 60px;}

.archive.tax-pa_artist ul.products { margin-top: 60px;}

.archive.tax-pa_artist .term-description{
    max-width: 770px;
}


/* My Account navigation container */
.woocommerce-account .woocommerce-MyAccount-navigation {
  background: #000;       /* black background */
  padding: 12px;
  /* border-radius: 6px; */
}

/* Navigation list layout */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Each tab link */
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 10px 14px;
  color: #fff;            /* white text */
  background: transparent;
  /* border-radius: 4px; */
  font-size: 20px;
  text-decoration: none;
  transition: background .2s ease, color .2s ease;
}

/* Hover state */
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
  background: var(--accent);    /* blue on hover */
  color: #000;
}

/* Active tab: WooCommerce adds .is-active on the LI */
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
  background: var(--accent);    /* blue active */
  color: #000;
}

/* Optional: focus state for accessibility */
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:focus {
  outline: 2px solid #0d6efd;
  outline-offset: 2px;
}

/* Responsive adjustments */
@media (max-width: 1200px) {
    .mega-menu-columns .mega-menu-inner {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .mega-menu-products .mega-menu-inner {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    .featured-products {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 1180px) {

  /* Parent item needs positioning context for the toggle */
  .menu-item-has-mega-menu {
    position: relative;
  }

  /* Toggle outside the <a> - positioned at the right, vertically centered */
  .mega-menu-toggle {
    display: inline-block !important;
    cursor: pointer;
    padding: 10px;
    transition: transform 0.3s ease;
    position: absolute;
    right: 0px;
    top: 25px;
    transform: translateY(-50%);
    z-index: 10;
  }

  .mega-menu-toggle.active {
    transform: translateY(-50%) rotate(180deg);
  }

  .mega-menu-toggle i {
    font-size: 14px;
    color: #1a1a1a;
  }

  body.dark-mood .mega-menu-toggle i {
    color: #fff;
  }

  /* Mega menu hidden by default on mobile; show via .active on the parent li */
  .mega-menu {
    display: none !important;
    position: static;
    width: 100%;
    /* padding: 15px; */
    padding-top: 0;
    background: #fff;
    box-shadow: none;
    margin-top: 0;
  }

  .menu-item-has-mega-menu.active > .mega-menu {
    display: block !important;
  }

  /* Disable hover-open on mobile */
  /* .menu-item-has-mega-menu:hover .mega-menu {
    display: none !important;
  } */

  /* Column submenus: hidden by default */
  .column-items {
    display: none !important;
    padding-left: 15px;
    margin-top: 10px;
    list-style: none;
  }

  /* Show with class (no :has usage) */
  .column-items.is-open {
    display: block !important;
  }

  .mega-menu-column:last-child{
    padding-right: 15px !important;
  }

  /* Submenu toggle */
  .submenu-toggle {
    float: right;
    cursor: pointer;
    transition: transform 0.3s ease;
    padding: 5px;
    margin-left: 10px;
  }

  .submenu-toggle.active {
    transform: rotate(180deg);
  }

  .submenu-toggle i {
    font-size: 12px;
    color: #1a1a1a;
  }

  body.dark-mood .submenu-toggle i {
    color: #fff;
  }

  /* Column titles area */
  .column-title {
    cursor: pointer;
    padding: 12px 0;
    position: relative;
    border-bottom: 1px solid #e5e5e5;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  body.dark-mood .column-title {
    border-bottom-color: #333;
  }

  .column-title a {
    display: block;
    flex: 1;
    padding-right: 10px;
  }

  /* Hide featured products on mobile; left side fills width */
  .mega-menu-right {
    display: none !important;
  }

  .mega-menu-left {
    width: 100%;
  }

  /* Stack grid content vertically for both layouts */
  .mega-menu-inner {
    display: block !important;
    padding: 0;
  }

  .mega-menu-column {
    /* margin-bottom: 15px; */
    padding: 0 15px;
    background: #fff;
    border-radius: 4px;
    border: none;
  }

  body.dark-mood .mega-menu-column {
    background: #1a1a1a;
  }

  /* Primary menu layout in mobile overlay */
  .header-wrapper {
    flex-wrap: wrap;
  }

  .header-center {
    order: 3;
    width: 100%;
    display: none;
    background: #fff;
    padding: 20px;
    position: fixed;
    left: 0; right: 0; top: 0; bottom: 0;
    z-index: 999;
    overflow-y: auto;
    align-items: flex-start;
  }

  body.dark-mood .header-center {
    background: #1a1a1a;
  }

  .header-center.active {
    display: flex;
  }

  .mobile-menu-toggle {
    display: flex;
    order: 2;
    padding-right: 0;
  }

  .header-right {
    gap: 15px;
    flex: 1;
    justify-content: flex-end;
    order: 1;
  }

  .primary-navigation {
    width: 100%;
    padding-top: 60px;
  }

  #primary-menu {
    flex-direction: column;
    width: 100%;
    gap: 0;
    padding: 0;
    margin: 0;
  }

  #primary-menu > li {
    width: 100%;
    border-bottom: 1px solid #e5e5e5;
    position: relative;
  }

  #primary-menu > li::after {
    display: none;
  }

  body.dark-mood #primary-menu > li {
    border-bottom-color: #333;
  }

  #primary-menu > li:last-child {
    border-bottom: none;
  }

  #primary-menu > li > a {
    padding: 15px 0px;
    padding-right: 50px; /* space for the toggle */
    display: block;
    font-size: 16px;
  }

  /* Current menu item highlighting */
  .current-menu-item > a {
    color: #FF483C !important;
    font-weight: 600;
  }

  .current-cat > a {
    color: #FF483C !important;
    font-weight: 700;
  }

  /* Products variant stacks as single column */
  .mega-menu-columns .mega-menu-inner,
  .mega-menu-products .mega-menu-inner {
    grid-template-columns: 1fr;
    padding: 0;
  }

      .mega-menu-columns .mega-menu-inner, .mega-menu-products .mega-menu-inner {
        padding: 0 15px;
    }

}

/* Desktop styles - ensure mega menu works on hover */
@media (min-width: 1181px) {
    .mega-menu-toggle {
        display: none !important;
    }
    
    .submenu-toggle {
        display: none !important;
    }
    
    .column-items {
        display: block !important;
    }
    
    .menu-item-has-mega-menu:hover .mega-menu {
        display: block;
    }
}

@media(max-width: 1100px) {
    .gb-element-d9c617da {
        grid-template-columns: 1fr !important;
    }

    .woocommerce-shop #content {
        flex-direction: column-reverse;
        gap: 30px;
    }

    .gb-element-467721a0 {
        width: 100% !important;
    }

    .search-posts-wrapper{
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 40px;
        margin-top: 40px;
    }
    .search-post-image {
        max-height: 250px;
        overflow: hidden;
        display: flex;
        align-items: center;
    }
}


@media(max-width:1024px){
    .woocommerce .wc-columns-container.wc-tablet-columns-2 .products{
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
        gap: 20px !important;
    }
}

@media (max-width: 768px) {

    

    .cstm-product-stock-status{
        display: grid;
    }

    .square-down-pink::before{
        left: -30px;
    }

    .square-down-pink::after{ right: -30px;}

    .header-left {
        gap: 20px;
    }

    .header-wrapper{
        padding-left: 30px;
        padding-right: 30px;
    }
    
    .site-logo img {
        height: 30px;
    }

    .search-posts-wrapper{
        display: grid;
        grid-template-columns: 1fr;
        gap: 40px;
        margin-top: 40px;
    }
    .search-post-image {
        max-height: 250px;
        overflow: hidden;
        display: flex;
        align-items: center;
    }
    
    .header-right {
        gap: 10px;
    }
    
    .header-right a,
    .js-moon-icon {
        font-size: 14px;
    }
    
    /* .header-search,
    .language-switcher {
        display: none;
    } */
    
    .featured-products {
        grid-template-columns: 1fr;
    }
    
    .mega-menu-columns .mega-menu-inner,
    .mega-menu-products .mega-menu-inner {
        padding: 15px;
    }
    
    .mega-menu {
        top: auto;
    }

    .single-product .summary.entry-summary {
        padding-top: 30px;
    }

}

@media (max-width: 480px) {
    /* .header-wrapper {
        padding: 0 15px;
    } */
    
    .site-logo img {
        height: 25px;
    }
    
    #primary-menu > li > a {
        padding: 12px 15px;
        font-size: 13px;
    }
    
    .column-title {
        font-size: 13px;
    }
    
    .column-items a {
        font-size: 12px;
    }
    
    .mega-menu-left .category-list a {
        font-size: 14px;
    }
}