/* ================================================================
   GST FOR YOU — MEGA MENU  v1.0.3
   White bar · Gold #e8a217 · MaxBizz-compatible
   ================================================================ */

/* ---------- BAR ---------- */
#gfy-nav-bar {
    position:   sticky;
    top:        0;
    left:       0;
    width:      100%;
    z-index:    100000;
    background: #ffffff;
    box-shadow: 0 2px 18px rgba(0,0,0,.10);
    font-family: 'Jost','Inter','Segoe UI',Arial,sans-serif;
    font-size:  14px;
    line-height: 1.4;
    transition: box-shadow .25s;
}

/* WordPress admin bar pushes sticky bar down */
.admin-bar #gfy-nav-bar {
    top: 32px;
}
@media screen and (max-width: 782px) {
    .admin-bar #gfy-nav-bar {
        top: 46px;
    }
}

#gfy-nav-bar.gfy-scrolled {
    box-shadow: 0 4px 30px rgba(0,0,0,.16);
}

/* ---------- INNER WRAPPER ---------- */
.gfy-bar-inner {

    max-width: 100%;     /* allow full width */
    margin: 0;           /* remove centering */

    padding-left: 5px;   /* your required left gap */
    padding-right: 28px;

    height: 76px;
    display: flex;
    align-items: center;
    justify-content: flex-start !important;
    gap: 20px;
    position: relative;

}

/* ---------- LOGO ---------- */
.gfy-logo-wrap {
    display:         flex;
    margin-right: 10px !important;
    align-items:     center;
    flex-shrink:     0;
    text-decoration: none;
}
.gfy-logo-wrap img {
    display:    block;
    max-height: 54px;
    width:      auto;
}
.gfy-logo-fallback {
    font-size:   22px;
    font-weight: 800;
    color:       #1a1a2e;
    white-space: nowrap;
    letter-spacing: -.5px;
}

/* ---------- DESKTOP NAV LIST ---------- */
.gfy-nav-ul {
    display: flex;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;

    margin-left: 15px;   /* ADD THIS */
    flex: 1 1 auto !important;
    margin-left: 15px !important;
    justify-content: flex-start;  /* CHANGE THIS */

    height: 76px;
}

/* ---------- NAV ITEM ---------- */
.gfy-nav-ul > li.gfy-nav-item {
    position:    relative;   /* dropdown anchored here */
    display:     flex;
    align-items: center;
    height:      76px;
    list-style:  none;
    margin:      0;
    padding:     0;
}

/* ---------- TOP-LEVEL LINK ---------- */
.gfy-nav-ul > li.gfy-nav-item > a.gfy-top-link {
    display:         inline-flex;
    align-items:     center;
    gap:             5px;
    height:          76px;
    padding:         0 8px !important;
    color:           #1a1a2e;
    font-size:       13.5px;
    font-weight:     600;
    text-decoration: none;
    white-space:     nowrap;
    border-bottom:   3px solid transparent;
    transition:      color .2s, border-color .2s;
    cursor:          pointer;
    letter-spacing:  .1px;
}

.gfy-nav-ul > li.gfy-nav-item > a.gfy-top-link:hover,
.gfy-nav-ul > li.gfy-nav-item.gfy-is-open > a.gfy-top-link,
.gfy-nav-ul > li.gfy-nav-item.gfy-is-active > a.gfy-top-link {
    color:        #e8a217;
    border-color: #e8a217;
}

/* Chevron */
.gfy-top-link .gfy-chev {
    width:       10px;
    height:      6px;
    flex-shrink: 0;
    fill:        #aaa;
    transition:  transform .22s, fill .2s;
    margin-top:  1px;
}
.gfy-nav-item.gfy-is-open > a.gfy-top-link .gfy-chev {
    transform: rotate(180deg);
    fill:      #e8a217;
}

/* ---------- DROPDOWN PANEL ---------- */
.gfy-dropdown-panel {
    position:   absolute;
    top:        76px;           /* flush below the bar */
    left:       50%;
    transform:  translateX(-50%);
    min-width:  640px;
    max-width:  900px;
    width:      max-content;
    background: #ffffff;
    border-top: 3px solid #e8a217;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 16px 50px rgba(0,0,0,.15);
    z-index:    100001;

    /* hidden */
    opacity:    0;
    visibility: hidden;
    transform:  translateX(-50%) translateY(-6px);
    transition: opacity .2s ease, transform .2s ease, visibility 0s .2s;
    pointer-events: none;
}

/* keep dropdown inside viewport on edge items */
.gfy-nav-item:first-child .gfy-dropdown-panel,
.gfy-nav-item:nth-child(2) .gfy-dropdown-panel {
    left: 0;
    transform: translateX(0) translateY(-6px);
}
.gfy-nav-item:first-child.gfy-is-open .gfy-dropdown-panel,
.gfy-nav-item:nth-child(2).gfy-is-open .gfy-dropdown-panel {
    transform: translateX(0) translateY(0);
}

.gfy-nav-item:last-child .gfy-dropdown-panel,
.gfy-nav-item:nth-last-child(2) .gfy-dropdown-panel,
.gfy-nav-item:nth-last-child(3) .gfy-dropdown-panel {
    left:  auto;
    right: 0;
    transform: translateX(0) translateY(-6px);
}
.gfy-nav-item:last-child.gfy-is-open .gfy-dropdown-panel,
.gfy-nav-item:nth-last-child(2).gfy-is-open .gfy-dropdown-panel,
.gfy-nav-item:nth-last-child(3).gfy-is-open .gfy-dropdown-panel {
    transform: translateX(0) translateY(0);
}

/* OPEN state */
.gfy-nav-item.gfy-is-open > .gfy-dropdown-panel {
    opacity:    1;
    visibility: visible;
    transform:  translateX(-50%) translateY(0);
    transition: opacity .2s ease, transform .2s ease, visibility 0s 0s;
    pointer-events: all;
}

.gfy-dropdown-inner {
    padding: 22px 24px 26px;
}

/* Dropdown heading */
.gfy-dd-title {
    font-size:      10px;
    font-weight:    800;
    letter-spacing: 2px;
    text-transform: uppercase;
    color:          #e8a217;
    margin-bottom:  14px;
    padding-bottom: 10px;
    border-bottom:  1px solid #f2f2f2;
    display:        flex;
    align-items:    center;
    gap:            8px;
}
.gfy-dd-title::before {
    content:    '';
    width:      14px;
    height:     2px;
    background: #e8a217;
    flex-shrink: 0;
}

/* Sub-items grid */
.gfy-sub-items {
    display:               grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap:                   2px 8px;
    list-style:            none;
    margin:                0;
    padding:               0;
}
.gfy-sub-items li {
    list-style: none;
    margin:     0;
    padding:    0;
}
.gfy-sub-items li a {
    display:         flex;
    align-items:     center;
    gap:             9px;
    padding:         9px 12px;
    color:           #3a3a4a;
    font-size:       13px;
    font-weight:     500;
    text-decoration: none;
    border-radius:   5px;
    border-left:     2px solid transparent;
    transition:      background .15s, color .15s, border-color .15s, padding-left .15s;
}
.gfy-sub-items li a:hover {
    background:   #fff8ec;
    color:        #c98c10;
    border-color: #e8a217;
    padding-left: 16px;
}
.gfy-sub-items li a svg {
    flex-shrink: 0;
    color:       #e8a217;
    opacity:     0;
    transform:   translateX(-4px);
    transition:  opacity .15s, transform .15s;
}
.gfy-sub-items li a:hover svg {
    opacity:   1;
    transform: translateX(0);
}

/* ---------- OVERLAY ---------- */
#gfy-nav-overlay {
    display:    none;
    position:   fixed;
    inset:      0;
    background: rgba(10,10,25,.35);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    z-index:    99999;
}
#gfy-nav-overlay.gfy-show { display: block; }

/* ---------- RIGHT-SIDE ACTIONS ---------- */
.gfy-nav-end {
    display:     flex;
    margin-left: 15px !important;
    align-items: left;
    gap:         5px;
    flex-shrink: 0;
}

/* CTA Button */
a.gfy-cta-btn {
    display:         inline-block;
    background:      #e8a217;
    color:           #ffffff !important;
    font-size:       13px;
    font-weight:     700;
    padding:         10px 24px;
    border-radius:   4px;
    text-decoration: none;
    white-space:     nowrap;
    letter-spacing:  .2px;
    box-shadow:      0 4px 14px rgba(232,162,23,.30);
    transition:      background .2s, box-shadow .2s, transform .15s;
    font-family:     inherit;
}
a.gfy-cta-btn:hover {
    background: #c98c10;
    box-shadow: 0 6px 22px rgba(232,162,23,.42);
    transform:  translateY(-1px);
}

/* Hamburger */
button.gfy-burger-btn {
    display:          none;
    flex-direction:   column;
    align-items:      center;
    justify-content:  center;
    gap:              5px;
    width:            42px;
    height:           42px;
    background:       #ffffff;
    border:           2px solid #e8a217;
    border-radius:    6px;
    cursor:           pointer;
    padding:          0;
    flex-shrink:      0;
}
button.gfy-burger-btn span {
    display:       block;
    width:         18px;
    height:        2px;
    background:    #1a1a2e;
    border-radius: 2px;
    transition:    all .28s ease;
}
button.gfy-burger-btn.gfy-burger-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
button.gfy-burger-btn.gfy-burger-open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
button.gfy-burger-btn.gfy-burger-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ---------- MOBILE DRAWER ---------- */
#gfy-mob-drawer {
    position:    fixed;
    top:         76px;
    left:        0;
    right:       0;
    bottom:      0;
    background:  #ffffff;
    z-index:     100000;
    overflow-y:  auto;
    transform:   translateX(105%);
    transition:  transform .32s cubic-bezier(.4,0,.2,1);
    -webkit-overflow-scrolling: touch;
}
.admin-bar #gfy-mob-drawer { top: 108px; }
@media (max-width: 782px) {
    .admin-bar #gfy-mob-drawer { top: 122px; }
}

#gfy-mob-drawer.gfy-mob-open {
    transform: translateX(0);
}

.gfy-mob-list {
    padding: 8px 0 60px;
}

.gfy-mob-row {
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    border-bottom:   1px solid #f2f2f2;
}
a.gfy-mob-link {
    flex:            1;
    display:         block;
    padding:         14px 22px;
    color:           #1a1a2e;
    font-size:       14.5px;
    font-weight:     600;
    text-decoration: none;
    font-family:     inherit;
}
a.gfy-mob-link:hover { color: #e8a217; }

button.gfy-mob-acc {
    background:  none;
    border:      none;
    padding:     14px 18px;
    color:       #aaa;
    cursor:      pointer;
    transition:  transform .25s, color .2s;
    flex-shrink: 0;
}
button.gfy-mob-acc svg { display: block; }
button.gfy-mob-acc.gfy-acc-open {
    transform: rotate(180deg);
    color:     #e8a217;
}

.gfy-mob-sub {
    list-style: none;
    margin:     0;
    padding:    0;
    max-height: 0;
    overflow:   hidden;
    background: #fafafa;
    transition: max-height .3s ease;
}
.gfy-mob-sub.gfy-sub-open { max-height: 1200px; }
.gfy-mob-sub li { list-style: none; }
.gfy-mob-sub li a {
    display:         block;
    padding:         9px 22px 9px 34px;
    font-size:       13px;
    color:           #555;
    text-decoration: none;
    border-left:     2px solid transparent;
    transition:      color .15s, border-color .15s;
    font-family:     inherit;
}
.gfy-mob-sub li a:hover {
    color:        #e8a217;
    border-color: #e8a217;
}

a.gfy-mob-cta-btn {
    display:         block;
    margin:          18px 22px 0;
    padding:         13px;
    background:      #e8a217;
    color:           #fff !important;
    text-align:      center;
    font-size:       15px;
    font-weight:     700;
    border-radius:   6px;
    text-decoration: none;
    font-family:     inherit;
    transition:      background .2s;
}
a.gfy-mob-cta-btn:hover { background: #c98c10; }

/* ---------- RESPONSIVE ---------- */
@media (max-width: 1080px) {

    /* Reduce menu item spacing */
    .gfy-nav-ul > li.gfy-nav-item > a.gfy-top-link {

        padding-left: 6px !important;
        padding-right: 6px !important;

        font-size: 12.5px;

    }
@media (max-width: 900px) {
    .gfy-nav-ul            { display: none; }
    a.gfy-cta-btn          { display: none; }
    button.gfy-burger-btn  { display: flex; }
}
@media (max-width: 480px) {
    .gfy-bar-inner { height: 64px; padding: 0 16px; }
    #gfy-nav-bar   { height: 64px; }
    .gfy-logo-wrap img { max-height: 44px; }
    .gfy-dropdown-panel { top: 64px; }
    #gfy-mob-drawer { top: 64px; }
}

/* ---------- SCROLL PADDING ---------- */
html { scroll-padding-top: 86px; }
