/*=========================================================
 SITE FOOTER
 Keep the :root / .theme-light / .theme-dark blocks above
 this exactly as they are — shared site-wide tokens.
=========================================================*/

.site-footer{
    position:relative;
    overflow:hidden;
    background:#f1ece3; /* warm off-white, a touch darker than --color-bg-primary (#f8f6f2) */
    border-top:1px solid var(--color-border); /* the one thin, subtle divider above the footer */
    padding:90px 0 0;
    font-family:'Inter', sans-serif;
    isolation:isolate;
    /* display:none removed — this was hiding the entire footer */
}

.site-footer::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;
}

.site-footer .container{
    position:relative;
    z-index:2;
}

/*=========================================================
 INTRO — logo + one-line tagline, centered, generous space
=========================================================*/

.footer-intro{
    text-align:center;
    max-width:520px;
    margin:0 auto 72px;
}

.footer-logo{
    display:flex;
    justify-content:center;
    margin-bottom:18px;
}

.footer-logo img{
    max-height:45px;
    width:auto;
}

.footer-logo-text{
    font-family:'Playfair Display', serif;
    font-weight:700;
    font-size:22px;
    color:var(--color-text-primary);
    text-decoration:none;
}

.footer-tagline{
    color:var(--color-text-secondary);
    font-size:15.5px;
    line-height:1.7;
    margin:0;
}

/*=========================================================
 5 COLUMNS
=========================================================*/

.footer-columns-5{
    display:grid;
    grid-template-columns:1fr 1fr 1fr 1fr 1fr;
    gap:40px;
    padding-bottom:0px;
}

.footer-col h6{
    font-size:15.5px;
    font-weight:700;
    /* letter-spacing:.14em; */
    text-transform:uppercase;
    color:var(--color-accent);
    margin-bottom:24px;
    font-family: sans-serif !important;
}

.footer-col ul{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:14px;
}

.footer-col a{
    color:var(--color-text-secondary);
    font-size:14.5px;
    font-weight:500;
    text-decoration:none;
    border-bottom:1px solid transparent;
    padding-bottom:2px;
    transition:color .25s ease, border-color .25s ease;
}

.footer-col a:hover{
    color:var(--color-text-primary);
    border-bottom-color:var(--color-accent);
}

.footer-location{
    display:inline-block;
    color:var(--color-text-secondary);
    font-size:14.5px;
}

/* Contact column's CTA link — quietly distinct, still minimal */
.footer-book-link{
    color:var(--color-accent) !important;
    font-weight:700 !important;
}
.footer-book-link:hover{
    color:var(--color-accent-hover) !important;
    border-bottom-color:var(--color-accent-hover) !important;
}

/* Brand column — social row (icon + label, same link treatment) */
.footer-col-brand .footer-socials{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.footer-socials a{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--color-text-secondary);
    font-size:14.5px;
    font-weight:500;
    text-decoration:none;
    border-bottom:1px solid transparent;
    padding-bottom:2px;
    width:fit-content;
    transition:color .25s ease, border-color .25s ease;
}

.footer-socials a i{
    font-size:14px;
    color:var(--color-text-secondary);
    transition:color .25s ease;
    width:16px;
    text-align:center;
}

.footer-socials a:hover,
.footer-socials a:hover i{
    color:var(--color-accent);
}

.footer-socials a:hover{
    border-bottom-color:var(--color-accent);
}

/*=========================================================
 WATERMARK — big outlined brand name
 UNCHANGED — exact same CSS as before, not touched.
=========================================================*/

.footer-watermark-wrap{
    position:relative;
    border-top:1px solid rgba(255,255,255,.08);
    padding:18px 0 6px;
    overflow:hidden;
    line-height:0.78;
}

.footer-watermark-text{
    display:block;
    width:100%;
    text-align:center;
    font-family:'Manrope', sans-serif;
    font-weight:800;
    font-size:clamp(70px, 11vw, 160px);
    letter-spacing:.01em;
    white-space:nowrap;
    user-select:none;
}

.footer-watermark{
    position:relative;
    color:#00000017;
    -webkit-text-stroke:1px rgba(255,255,255,.12);
    text-stroke:1px rgba(255,255,255,.12);
    pointer-events:none;
    mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
    -webkit-mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
}

.footer-watermark-fill{
    position:absolute;
    inset:0;
    background: linear-gradient(100deg, #ff7a00, #ff7a00 55%, #fff 100%);
    background-clip:text;
    -webkit-background-clip:text;
    color:transparent;
    -webkit-text-stroke:0;
    pointer-events:none;
    clip-path:inset(0 100% 0 0);
    -webkit-clip-path:inset(0 100% 0 0);
    transition:clip-path .65s cubic-bezier(.22,1,.36,1), -webkit-clip-path .65s cubic-bezier(.22,1,.36,1);
    mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
    -webkit-mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
}

.footer-watermark-wrap:hover .footer-watermark-fill{
    clip-path:inset(0 0 0 0);
    -webkit-clip-path:inset(0 0 0 0);
}

@media(prefers-reduced-motion:reduce){
    .footer-watermark-fill{ transition:none; }
}

/*=========================================================
 BOTTOM BAR — very minimal
=========================================================*/

.footer-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:16px;
    padding:26px 0;
    border-top:1px solid var(--color-border);
}

.footer-bottom span{
    color:var(--color-text-muted-3);
    font-family:'Inter', sans-serif;
    font-size:13px;
}

.footer-bottom-links{
    display:flex;
    align-items:center;
    gap:22px;
}

.footer-bottom-links a{
    color:var(--color-text-muted-3);
    font-size:13px;
    text-decoration:none;
    border-bottom:1px solid transparent;
    padding-bottom:1px;
    transition:color .25s ease, border-color .25s ease;
}

.footer-bottom-links a:hover{
    color:var(--color-text-primary);
    border-bottom-color:var(--color-accent);
}

/*=========================================================
 RESPONSIVE
=========================================================*/

@media(max-width:991px){
    .footer-columns-5{
        grid-template-columns:1fr 1fr 1fr;
        gap:36px 24px;
    }
     .footer-watermark-wrap
 {
    display: none;
}
}

@media(max-width:576px){
    .site-footer{ padding-top:64px; }

    .footer-intro{ margin-bottom:52px; }

    .footer-columns-5{
        grid-template-columns:1fr 1fr;
        gap:36px 20px;
        padding-bottom:56px;
    }

    .footer-watermark{
        font-size:clamp(46px, 18vw, 90px);
    }

    .footer-bottom{
        flex-direction:column;
        /* align-items:flex-start; */
        gap:14px;
    }

    .footer-bottom-links{
        flex-wrap:wrap;
        gap:16px;
    }
    .footer-watermark-wrap
 {
    display: none;
}
}