/* ==========================================================
   Homepage Navigation
   ========================================================== */

:root{
    --cream:#f4ede7;
    --forest:#253b35;
    --forest-soft:#3a544c;
    --green:#40645c;
    --green-deep:#1b2a26;
    --sand:#cdab73;
    --sand-soft:  #e7d6b4;
    --sage:       #cfd6c6;
    --sage-soft: #e6eadd;
    --cream-deep: #faf6f0;
    --paper:      #ffffff;
    --ink:        #28332e;
    --ink-soft:   #5d6b62;
    
    --rule:rgba(37,59,53,.12);

    --font-display:'Frank Ruhl Libre', Georgia, serif;
    --font-body:'Heebo', sans-serif;

    --gutter:clamp(1.25rem,4vw,4rem);
}

/* =========================
   NAVIGATION
   ========================= */

body.home .site-header {
    background: transparent !important;
    position: absolute;
    width: 100%;
    z-index: 999;
}

.jes-nav{
    position:fixed;
    inset-inline:0;
    top:0;
    z-index:9999;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;

    padding:1rem var(--gutter);

    background:transparent !important;
    direction: ltr;

    transition:
        background .4s ease,
        box-shadow .4s ease,
        padding .4s ease;
}

/* Logo */

.jes-nav-logo {
    flex-shrink: 0;
}

.jes-nav-logo img {
    width:200px !important;
    height:auto !important;
    width: auto;
    display: block;
}

/* SCROLL STATE */
.jes-nav.is-scrolled{
    background:rgba(244,237,231,.95) !important;
    backdrop-filter:blur(12px);
    box-shadow:0 1px 0 var(--rule);

    padding:0.75rem var(--gutter);
}

/* BRAND */
.jes-nav-brand{
    display:flex;
    align-items:center;
    gap:.75rem;

    color:#fff;
    text-decoration:none;

    transition:color .4s ease;
}

.jes-nav.is-scrolled .jes-nav-brand{
    color:var(--forest);
}

/* MENU WRAPPER (Kadence-safe rename kept but scoped) */
.jes-nav-links{
    display:flex;
    align-items:center;
    gap:2rem;
}

.jes-nav-links ul{
    display:flex;
    gap:2rem;
    list-style:none;
    margin:0;
    padding:0;
    align-items:center;
    direction: rtl;
}

.jes-nav-links li{
    margin:0;
}

/* LINKS */
.jes-nav-links a{
    position:relative;
    color:#fff !important;
    text-decoration:none;

    font-family:var(--font-body);
    font-size:.95rem;
    font-weight:500;

    transition:color .3s ease;
}

.jes-nav.is-scrolled .jes-nav-links a{
    color:var(--green-deep) !important;
}

/* underline */
.jes-nav-links a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-6px;

    width:100%;
    height:2px;

    background:currentColor;

    transform:scaleX(0);
    transform-origin:right;

    transition:transform .35s ease;
}

.jes-nav-links a:hover::after{
    transform:scaleX(1);
}

/* BUTTON */
.jes-nav-links .menu-button > a{
    background:var(--green);
    color:var(--cream) !important;

    border-radius:999px;
    padding:.6rem 1.25rem;
}

.jes-nav-links .menu-button > a::after{
    display:none;
}

.jes-nav-links .menu-button > a:hover{
    background:var(--forest);
}

/* Keep button text white/cream even when nav is scrolled */
.jes-nav.is-scrolled .jes-nav-links .menu-button > a{
    color:var(--cream) !important;
}

.jes-nav.is-scrolled .jes-nav-links .menu-button > a:hover{
    color:var(--cream) !important;
}

/* MOBILE TOGGLE */
.jes-nav-toggle{
    display:none;
    background:none;
    border:none;
    padding:.4rem;
    cursor:pointer;
    z-index:10001;
}

.jes-nav-toggle span{
    display:block;
    width:26px;
    height:2px;
    background:#fff;
    margin:6px 0;
    transition:.3s;
}

.jes-nav.is-scrolled .jes-nav-toggle span{
    background:var(--green-deep);
}

/* MOBILE MENU */
@media (max-width:880px){

    .jes-nav-toggle{
        display:block;
    }

    .jes-nav-links{
        position:fixed;
        inset:0;

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

        background:var(--forest);

        transform:translateY(-100%);
        transition:transform .5s ease;

        z-index:10000;
    }

    .jes-nav-links.open{
        transform:translateY(0);
    }

    .jes-nav-links ul{
        flex-direction:column;
        gap:2rem;
    }

    .jes-nav-links a{
        color:#fff !important;
        font-size:1.5rem;
        font-family:var(--font-display);
    }

    .jes-nav-links .menu-button > a{
        background:var(--sand);
        color:var(--green-deep) !important;
    }

    .jes-nav-toggle.open span:nth-child(1){
        transform:translateY(8px) rotate(45deg);
    }

    .jes-nav-toggle.open span:nth-child(2){
        opacity:0;
    }

    .jes-nav-toggle.open span:nth-child(3){
        transform:translateY(-8px) rotate(-45deg);
    }
    
    .jes-nav-links:not(.open){
        transform: translateY(-100%) !important;
        visibility: hidden;
        pointer-events: none;
    }

    .jes-nav-links.open{
        transform: translateY(0) !important;
        visibility: visible;
        pointer-events: auto;
    }
}