/* ==========================================================
   VEGA MODERN MEGA MENU
   Wedding Kalakar India
   ========================================================== */


/* ----------------------------------------------------------
   HEADER / NAV FOUNDATION
   ---------------------------------------------------------- */

.vega-el-header-pro,
.vega-el-header-pro__nav,
.vega-el-header-pro__nav > .vega-container,
.vega-header,
.vega-nav {
    overflow: visible !important;
}


.vega-el-header-pro__nav,
.vega-nav {
    position: relative;
    z-index: 120;
}


.vega-el-header-pro__nav > .vega-container {
    position: relative;
}


.vega-mega-menu {
    position: static !important;

    display: flex !important;
    align-items: center !important;

    width: 100% !important;

    gap: 4px !important;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}


/* ----------------------------------------------------------
   TOP LEVEL ITEMS
   ---------------------------------------------------------- */

.vega-mega-menu__item {
    position: static !important;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}


.vega-mega-menu__top-link {
    position: relative;

    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    gap: 6px;

    min-height: 46px;

    padding: 0 11px !important;

    border-radius: 9px;

    color: #29312c !important;

    font-size: 11.5px !important;
    font-weight: 800 !important;

    line-height: 1 !important;

    text-decoration: none !important;

    white-space: nowrap;

    transition:
        background .18s ease,
        color .18s ease,
        transform .18s ease;
}


.vega-mega-menu__top-link:hover,
.vega-mega-menu__item:focus-within >
.vega-mega-menu__top-link {

    background: #f2f6f2;

    color: #168a48 !important;
}


.vega-mega-menu__top-link::after {
    content: "";

    position: absolute;

    left: 12px;
    right: 12px;
    bottom: 3px;

    height: 2px;

    border-radius: 5px;

    background: currentColor;

    opacity: 0;

    transform: scaleX(.4);

    transition:
        opacity .18s ease,
        transform .18s ease;
}


.vega-mega-menu__item:hover >
.vega-mega-menu__top-link::after,
.vega-mega-menu__item:focus-within >
.vega-mega-menu__top-link::after {

    opacity: .9;

    transform: scaleX(1);
}


.vega-mega-menu__item--all >
.vega-mega-menu__top-link {

    min-height: 38px;

    margin-right: 5px;

    padding-left: 12px !important;
    padding-right: 12px !important;

    background: #172c21;

    color: #fff !important;
}


.vega-mega-menu__item--all >
.vega-mega-menu__top-link:hover {

    background: #0f2118;

    color: #fff !important;
}


.vega-mega-menu__top-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}


.vega-mega-menu__top-icon svg {
    width: 16px;
    height: 16px;

    fill: none;
    stroke: currentColor;

    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}


.vega-mega-menu__item--all
.vega-mega-menu__top-icon svg {

    fill: currentColor;
    stroke: none;
}


.vega-mega-menu__chevron {
    display: inline-flex;

    transition:
        transform .18s ease;
}


.vega-mega-menu__chevron svg {
    width: 12px;
    height: 12px;

    fill: none;

    stroke: currentColor;
    stroke-width: 2;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.vega-mega-menu__item:hover
.vega-mega-menu__chevron,
.vega-mega-menu__item:focus-within
.vega-mega-menu__chevron {

    transform: rotate(180deg);
}


/* ----------------------------------------------------------
   PANEL
   ---------------------------------------------------------- */

.vega-mega-menu__panel {
    position: absolute;

    top: calc(100% - 1px);
    left: 50%;

    z-index: 99999;

    width: min(1180px, calc(100vw - 30px));

    padding-top: 10px;

    visibility: hidden;

    opacity: 0;

    pointer-events: none;

    transform:
        translateX(-50%)
        translateY(8px);

    transition:
        opacity .18s ease,
        transform .18s ease,
        visibility .18s ease;
}


.vega-mega-menu__item:hover >
.vega-mega-menu__panel,
.vega-mega-menu__item:focus-within >
.vega-mega-menu__panel {

    visibility: visible;

    opacity: 1;

    pointer-events: auto;

    transform:
        translateX(-50%)
        translateY(0);
}


.vega-mega-menu__panel-inner {
    overflow: hidden;

    border: 1px solid #e4e9e4;

    border-radius: 20px;

    background: #fff;

    box-shadow:
        0 22px 65px
        rgba(25, 40, 31, .16);
}


/* ----------------------------------------------------------
   ALL CATEGORIES MEGA PANEL
   ---------------------------------------------------------- */

.vega-mega-menu__panel--all
.vega-mega-menu__panel-inner {

    display: grid;

    grid-template-columns:
        255px minmax(0, 1fr);

    min-height: 340px;
}


.vega-mega-menu__intro {
    position: relative;

    padding: 34px 28px;

    background:
        linear-gradient(
            145deg,
            #13291e,
            #264c36
        );

    color: #fff;
}


.vega-mega-menu__intro::after {
    content: "";

    position: absolute;

    right: -55px;
    bottom: -70px;

    width: 190px;
    height: 190px;

    border-radius: 50%;

    background:
        rgba(255,255,255,.055);
}


.vega-mega-menu__intro > span,
.vega-mega-menu__category-info > span {

    display: block;

    margin-bottom: 9px;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .13em;
}


.vega-mega-menu__intro > span {
    color: #9fd3ad;
}


.vega-mega-menu__intro h3 {
    max-width: 190px;

    margin: 0;

    color: #fff;

    font-size: 27px;
    font-weight: 900;

    line-height: 1.04;

    letter-spacing: -.04em;
}


.vega-mega-menu__intro p {
    max-width: 190px;

    margin: 15px 0 23px;

    color: rgba(255,255,255,.72);

    font-size: 11px;

    line-height: 1.55;
}


.vega-mega-menu__view-all {
    display: inline-flex !important;

    align-items: center;

    gap: 8px;

    color: inherit !important;

    font-size: 11px !important;
    font-weight: 850 !important;

    text-decoration: none !important;
}


.vega-mega-menu__view-all svg {
    width: 15px;
    height: 15px;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.8;

    transition:
        transform .18s ease;
}


.vega-mega-menu__view-all:hover svg {
    transform: translateX(4px);
}


.vega-mega-menu__category-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0,1fr));

    gap: 10px;

    padding: 22px;
}


/* ----------------------------------------------------------
   CATEGORY CARD
   ---------------------------------------------------------- */

.vega-mega-cat-card {
    display: grid !important;

    grid-template-columns:
        52px minmax(0,1fr) 18px;

    align-items: center;

    gap: 10px;

    min-width: 0;

    padding: 9px;

    border: 1px solid #edf0ed;

    border-radius: 13px;

    background: #fafcfa;

    color: #242a26 !important;

    text-decoration: none !important;

    transition:
        transform .16s ease,
        border-color .16s ease,
        background .16s ease,
        box-shadow .16s ease;
}


.vega-mega-cat-card:hover {
    transform: translateY(-2px);

    border-color: #cfe1d3;

    background: #fff;

    box-shadow:
        0 9px 20px
        rgba(30,50,36,.07);
}


.vega-mega-cat-card__image {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 52px;
    height: 52px;

    overflow: hidden;

    border-radius: 11px;

    background: #fff;
}


.vega-mega-cat-card__image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: contain;

    padding: 4px;

    box-sizing: border-box;
}


.vega-mega-cat-card__fallback {
    display: grid;

    width: 100%;
    height: 100%;

    place-items: center;

    background: #eef5ef;

    color: #36734c;

    font-size: 20px;
    font-weight: 900;
}


.vega-mega-cat-card__copy {
    display: flex;

    flex-direction: column;

    min-width: 0;

    gap: 4px;
}


.vega-mega-cat-card__copy strong {
    overflow: hidden;

    color: #202720;

    font-size: 11.5px;

    line-height: 1.25;

    text-overflow: ellipsis;

    white-space: nowrap;
}


.vega-mega-cat-card__copy small {
    color: #828983;

    font-size: 8.5px;
}


.vega-mega-cat-card__arrow svg {
    width: 14px;
    height: 14px;

    fill: none;

    stroke: #8d968f;

    stroke-width: 1.8;
}


/* ----------------------------------------------------------
   CATEGORY-SPECIFIC PANEL
   ---------------------------------------------------------- */

.vega-mega-menu__panel-inner--category {
    display: grid;

    grid-template-columns:
        220px minmax(220px,.8fr)
        minmax(380px,1.55fr);

    min-height: 310px;
}


.vega-mega-menu__category-info {
    padding: 30px 25px;

    background:
        linear-gradient(
            145deg,
            #f5f8f5,
            #edf4ee
        );
}


.vega-mega-menu__category-info > span {
    color: #578062;
}


.vega-mega-menu__category-info h3 {
    margin: 0;

    color: #18251d;

    font-size: 24px;
    font-weight: 900;

    line-height: 1.05;

    letter-spacing: -.035em;
}


.vega-mega-menu__category-info p {
    margin: 11px 0 22px;

    color: #737c75;

    font-size: 10px;

    line-height: 1.55;
}


.vega-mega-menu__category-info
.vega-mega-menu__view-all {

    color: #176d3c !important;
}


/* ----------------------------------------------------------
   SUBCATEGORY LINKS
   ---------------------------------------------------------- */

.vega-mega-menu__links {
    display: flex;

    flex-direction: column;

    gap: 2px;

    padding: 26px 22px;

    border-right:
        1px solid #edf0ed;
}


.vega-mega-menu__column-title {
    margin-bottom: 8px;

    color: #818982;

    font-size: 9px;

    font-weight: 900;

    letter-spacing: .1em;

    text-transform: uppercase;
}


.vega-mega-menu__links > a {
    display: flex !important;

    align-items: center;
    justify-content: space-between;

    gap: 10px;

    padding: 7px 8px !important;

    border-radius: 8px;

    color: #29312b !important;

    font-size: 10.5px !important;
    font-weight: 700 !important;

    line-height: 1.25 !important;

    text-decoration: none !important;

    transition:
        background .15s ease,
        color .15s ease;
}


.vega-mega-menu__links > a:hover {
    background: #f4f7f4;

    color: #168a48 !important;
}


.vega-mega-menu__links > a small {
    color: #9aa09b;

    font-size: 8px;
    font-weight: 700;
}


/* ----------------------------------------------------------
   PRODUCT RECOMMENDATIONS
   ---------------------------------------------------------- */

.vega-mega-menu__products {
    display: grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    align-content: start;

    gap: 10px;

    padding: 24px;
}


.vega-mega-menu__products-head {
    grid-column: 1 / -1;

    display: flex;

    align-items: center;
    justify-content: space-between;

    margin-bottom: 2px;
}


.vega-mega-menu__products-head strong {
    color: #252c27;

    font-size: 12px;
    font-weight: 900;
}


.vega-mega-menu__products-head small {
    color: #8f9791;

    font-size: 8.5px;
}


.vega-mega-product {
    display: flex !important;

    flex-direction: column;

    min-width: 0;

    overflow: hidden;

    border: 1px solid #ecefec;

    border-radius: 13px;

    background: #fff;

    color: #252b27 !important;

    text-decoration: none !important;

    transition:
        transform .16s ease,
        box-shadow .16s ease,
        border-color .16s ease;
}


.vega-mega-product:hover {
    transform: translateY(-2px);

    border-color: #d6e3d8;

    box-shadow:
        0 10px 22px
        rgba(30,45,34,.08);
}


.vega-mega-product__image {
    display: flex;

    align-items: center;
    justify-content: center;

    aspect-ratio: 1 / .82;

    overflow: hidden;

    background: #f7f8f7;
}


.vega-mega-product__image img {
    display: block;

    width: 100%;
    height: 100%;

    margin: 0 !important;
    padding: 8px;

    object-fit: contain;

    box-sizing: border-box;
}


.vega-mega-product__copy {
    display: flex;

    flex-direction: column;

    gap: 5px;

    padding: 9px;
}


.vega-mega-product__copy strong {
    display: -webkit-box;

    overflow: hidden;

    color: #262c28;

    font-size: 9.5px;
    font-weight: 800;

    line-height: 1.35;

    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}


.vega-mega-product__price {
    color: #176d3c;

    font-size: 10px;

    font-weight: 900;
}


.vega-mega-product__price del {
    opacity: .5;
}


/* ----------------------------------------------------------
   RESPONSIVE
   ---------------------------------------------------------- */

@media (max-width: 1180px) {

    .vega-mega-menu__top-link {
        padding-left: 7px !important;
        padding-right: 7px !important;

        font-size: 10.5px !important;
    }


    .vega-mega-menu__item:nth-last-child(2) {
        display: none;
    }


    .vega-mega-menu__panel {
        width:
            calc(100vw - 22px);
    }
}


@media (max-width: 1020px) {

    .vega-mega-menu__item:nth-of-type(5) {
        display: none;
    }


    .vega-mega-menu__panel-inner--category {
        grid-template-columns:
            200px 220px minmax(330px,1fr);
    }
}


/*
 * Your mobile experience already uses the dedicated
 * mobile bottom navigation / category sheet.
 */
@media (max-width: 900px) {

    .vega-mega-menu {
        display: none !important;
    }
}


/* Reduced motion */

@media (prefers-reduced-motion: reduce) {

    .vega-mega-menu *,
    .vega-mega-menu *::before,
    .vega-mega-menu *::after {

        transition: none !important;
    }
}


/* ==========================================================
   VEGA MEGA MENU — TYPOGRAPHY REFINEMENT
   ========================================================== */

.vega-mega-menu,
.vega-mega-menu * {
    font-family:
        Inter,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;
}


/* MAIN NAV */

.vega-mega-menu__top-link {
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: -.01em;
}


.vega-mega-menu__item--all >
.vega-mega-menu__top-link {
    font-weight: 700 !important;
}


/* SMALL EYEBROWS */

.vega-mega-menu__intro > span,
.vega-mega-menu__category-info > span,
.vega-mega-menu__column-title {

    font-weight: 600 !important;
    letter-spacing: .10em !important;
}


/* LARGE MEGA MENU HEADING */

.vega-mega-menu__intro h3 {

    font-size: 26px !important;
    font-weight: 700 !important;

    line-height: 1.08 !important;
    letter-spacing: -.035em !important;
}


.vega-mega-menu__category-info h3 {

    font-size: 23px !important;
    font-weight: 700 !important;

    letter-spacing: -.025em !important;
}


/* DESCRIPTION */

.vega-mega-menu__intro p,
.vega-mega-menu__category-info p {

    font-weight: 400 !important;
}


/* CTA */

.vega-mega-menu__view-all {

    font-weight: 600 !important;
}


/* CATEGORY CARDS */

.vega-mega-cat-card__copy strong {

    font-size: 11.5px !important;
    font-weight: 600 !important;

    letter-spacing: -.01em;
}


.vega-mega-cat-card__copy small {

    font-weight: 400 !important;
}


/* SUBCATEGORY LIST */

.vega-mega-menu__links > a {

    font-size: 11px !important;
    font-weight: 500 !important;
}


.vega-mega-menu__links > a small {

    font-weight: 400 !important;
}


/* POPULAR PRODUCTS */

.vega-mega-menu__products-head strong {

    font-size: 12px !important;
    font-weight: 650 !important;
}


.vega-mega-menu__products-head small {

    font-weight: 400 !important;
}


.vega-mega-product__copy strong {

    font-size: 10px !important;
    font-weight: 600 !important;

    line-height: 1.35 !important;
}


.vega-mega-product__price {

    font-weight: 700 !important;
}


/* Slightly softer on smaller desktop */

@media (max-width: 1180px) {

    .vega-mega-menu__top-link {

        font-size: 10.8px !important;
        font-weight: 600 !important;
    }
}
