/* NEXT CHAPTER FINAL V3 — DAILY MENU REBUILD
   Loaded last on purpose. This only refines the daily-menu experience. */

:root{
  --nc-daily-gold:#d2b15b;
  --nc-daily-ink:#10261d;
  --nc-daily-line:rgba(16,38,29,.36);
  --nc-daily-muted:#6e642f;
  --nc-daily-paper:#f1eadb;
}

/* Actual live classes: .daily-section / .daily-inner */
html body #home.view section.daily-section{
  background:var(--nc-daily-gold) !important;
  color:var(--nc-daily-ink) !important;
  padding:clamp(70px,8vw,110px) 0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:hidden !important;
}

html body #home.view section.daily-section > .daily-inner{
  width:min(1180px,calc(100% - 48px)) !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:var(--nc-daily-ink) !important;
}

html body #home.view section.daily-section .daily-top{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:end !important;
  gap:24px !important;
  margin:0 !important;
  padding:0 0 30px !important;
  border:0 !important;
  border-bottom:1.5px solid var(--nc-daily-line) !important;
}

html body #home.view section.daily-section .daily-label{
  color:var(--nc-daily-muted) !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
}

html body #home.view section.daily-section .daily-top h2{
  margin:8px 0 0 !important;
  color:var(--nc-daily-ink) !important;
  font-family:"Cormorant Garamond",Georgia,serif !important;
  font-size:clamp(54px,6vw,88px) !important;
  line-height:.9 !important;
  font-weight:400 !important;
  letter-spacing:-.04em !important;
}

html body #home.view section.daily-section .daily-price{
  color:var(--nc-daily-ink) !important;
  font-family:"Cormorant Garamond",Georgia,serif !important;
  font-size:clamp(48px,5vw,72px) !important;
  line-height:.85 !important;
  font-weight:400 !important;
  white-space:nowrap !important;
}

html body #home.view section.daily-section .daily-price small{
  color:var(--nc-daily-muted) !important;
  font-family:system-ui,sans-serif !important;
  font-size:12px !important;
  font-weight:800 !important;
}

html body #home.view section.daily-section .daily-menu-builder,
html body #home.view section.daily-section .daily-choice-list{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

html body #home.view section.daily-section .daily-choice{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:20px !important;
  margin:0 !important;
  padding:24px 0 !important;
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid var(--nc-daily-line) !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

html body #home.view section.daily-section .daily-choice-label{
  display:block !important;
  margin-bottom:5px !important;
  color:var(--nc-daily-muted) !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

html body #home.view section.daily-section .daily-choice strong{
  display:block !important;
  max-width:640px !important;
  color:var(--nc-daily-ink) !important;
  font-family:system-ui,sans-serif !important;
  font-size:16px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
}

html body #home.view section.daily-section .daily-choice-action{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  flex:0 0 auto !important;
}

html body #home.view section.daily-section .daily-choice-action b{
  color:var(--nc-daily-ink) !important;
  font-family:"Cormorant Garamond",Georgia,serif !important;
  font-size:24px !important;
  line-height:1 !important;
  font-weight:600 !important;
  white-space:nowrap !important;
}

html body #home.view section.daily-section .daily-choice-action button{
  width:46px !important;
  height:46px !important;
  min-width:46px !important;
  padding:0 !important;
  border:1px solid var(--nc-daily-ink) !important;
  border-radius:50% !important;
  background:var(--nc-daily-ink) !important;
  color:#fff !important;
  box-shadow:none !important;
  font-size:23px !important;
  line-height:1 !important;
}

/* Complete menu = integrated footer, not a card */
html body #home.view section.daily-section .daily-full-menu{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:36px !important;
  margin:0 !important;
  padding:34px 0 0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:var(--nc-daily-ink) !important;
}

html body #home.view section.daily-section .daily-full-menu > div:first-child > span{
  display:block !important;
  margin-bottom:8px !important;
  color:var(--nc-daily-muted) !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
}

html body #home.view section.daily-section .daily-full-menu strong{
  display:block !important;
  max-width:22ch !important;
  margin:0 !important;
  color:var(--nc-daily-ink) !important;
  font-family:"Cormorant Garamond",Georgia,serif !important;
  font-size:clamp(34px,3.7vw,54px) !important;
  line-height:.95 !important;
  font-weight:500 !important;
  letter-spacing:-.035em !important;
}

html body #home.view section.daily-section .daily-full-menu small{
  display:block !important;
  margin-top:10px !important;
  color:#645d49 !important;
  font-size:13px !important;
  line-height:1.45 !important;
}

html body #home.view section.daily-section .daily-full-action{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  justify-content:center !important;
  gap:12px !important;
  min-width:220px !important;
}

html body #home.view section.daily-section .daily-full-action b{
  display:none !important; /* price already belongs to the section heading */
}

html body #home.view section.daily-section .daily-full-action button{
  width:auto !important;
  min-height:52px !important;
  padding:0 22px !important;
  border:1px solid var(--nc-daily-ink) !important;
  border-radius:999px !important;
  background:var(--nc-daily-ink) !important;
  color:#fff !important;
  box-shadow:none !important;
  font-size:12px !important;
  font-weight:900 !important;
}

@media(max-width:900px){
  html body #home.view section.daily-section{
    padding:58px 0 74px !important;
  }

  html body #home.view section.daily-section > .daily-inner{
    width:auto !important;
    max-width:none !important;
    margin:0 18px !important;
  }

  html body #home.view section.daily-section .daily-top{
    gap:14px !important;
    padding-bottom:22px !important;
  }

  html body #home.view section.daily-section .daily-top h2{
    font-size:44px !important;
    line-height:.92 !important;
  }

  html body #home.view section.daily-section .daily-price{
    font-size:44px !important;
  }

  html body #home.view section.daily-section .daily-choice{
    padding:20px 0 !important;
    gap:12px !important;
  }

  html body #home.view section.daily-section .daily-choice strong{
    max-width:none !important;
    font-size:14px !important;
    line-height:1.3 !important;
  }

  html body #home.view section.daily-section .daily-choice-action{
    gap:10px !important;
  }

  html body #home.view section.daily-section .daily-choice-action b{
    font-size:20px !important;
  }

  html body #home.view section.daily-section .daily-choice-action button{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    font-size:20px !important;
  }

  html body #home.view section.daily-section .daily-full-menu{
    display:block !important;
    margin:0 !important;
    padding:28px 0 0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
  }

  html body #home.view section.daily-section .daily-full-menu strong{
    max-width:15ch !important;
    font-size:32px !important;
    line-height:.98 !important;
  }

  html body #home.view section.daily-section .daily-full-menu small{
    max-width:32ch !important;
    margin-top:8px !important;
    font-size:12px !important;
  }

  html body #home.view section.daily-section .daily-full-action{
    display:block !important;
    min-width:0 !important;
    width:100% !important;
    margin-top:20px !important;
  }

  html body #home.view section.daily-section .daily-full-action button{
    width:100% !important;
    min-height:52px !important;
  }
}

@media(max-width:420px){
  html body #home.view section.daily-section > .daily-inner{margin:0 16px !important}
  html body #home.view section.daily-section .daily-top h2{font-size:40px !important}
  html body #home.view section.daily-section .daily-price{font-size:40px !important}
  html body #home.view section.daily-section .daily-choice strong{font-size:13px !important}
  html body #home.view section.daily-section .daily-full-menu strong{font-size:29px !important;max-width:14ch !important}
}

/* =========================================================
   FINAL MENU DETAILS — READABILITY FIX
   ========================================================= */

#menu .food-details{
    color:#3f4942 !important;
}

#menu .food-details-block{
    padding-top:12px !important;
}

#menu .food-details-block > span{
    display:block !important;
    color:#6d746e !important;
    font-size:.68rem !important;
    font-weight:800 !important;
    letter-spacing:.10em !important;
    text-transform:uppercase !important;
    margin-bottom:7px !important;
}

#menu .food-details-block p{
    color:#4d554f !important;
    opacity:1 !important;
    font-size:.88rem !important;
    line-height:1.55 !important;
    margin:0 !important;
}

#menu .food-details-block.allergens > span{
    color:#6d746e !important;
}

#menu .food-details-block.allergens p{
    color:#c28f1e !important;
    font-weight:700 !important;
}

#menu .food-details-toggle{
    color:#6a6550 !important;
    font-weight:800 !important;
}

#menu .food-details-toggle span{
    color:#10261d !important;
}


/* =========================================================
   MENU PRODUCT DETAILS — HARD READABILITY FIX
   ========================================================= */

#menu .food-details,
#menu .food-details *,
#menu .food-details-block,
#menu .food-details-block *{
    opacity:1 !important;
    filter:none !important;
    text-shadow:none !important;
}

#menu .food-details-block > span,
#menu .food-details-block span{
    color:#667068 !important;
    -webkit-text-fill-color:#667068 !important;
    opacity:1 !important;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.09em !important;
    text-transform:uppercase !important;
}

#menu .food-details-block p,
#menu .food-details-block p *,
#menu .food-details-block:not(.allergens) p{
    color:#465049 !important;
    -webkit-text-fill-color:#465049 !important;
    opacity:1 !important;
    font-size:14px !important;
    line-height:1.5 !important;
    font-weight:500 !important;
}

#menu .food-details-block.allergens p,
#menu .food-details-block.allergens p *{
    color:#a86f00 !important;
    -webkit-text-fill-color:#a86f00 !important;
    opacity:1 !important;
    font-weight:800 !important;
}

#menu .food-details-toggle,
#menu .food-details-toggle *{
    color:#655c39 !important;
    -webkit-text-fill-color:#655c39 !important;
    opacity:1 !important;
}



/* =========================================================
   NEXT CHAPTER — FINAL FOOTER
   ========================================================= */

.nc-footer{
    position:relative;
    z-index:2;
    background:#10261d;
    color:#f5f0e4;
    padding:76px 48px 28px;
    border-top:1px solid rgba(255,255,255,.08);
}

.nc-footer-main{
    width:min(1180px,100%);
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(280px,1.1fr) minmax(420px,1fr);
    gap:80px;
    align-items:start;
}

.nc-footer-brand{
    max-width:500px;
}

.nc-footer-kicker{
    display:block;
    color:#d3aa43;
    font-size:.69rem;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
    margin-bottom:22px;
}

.nc-footer-logo{
    color:#f5f0e4;
    font-family:"Fraunces", Georgia, serif;
    font-size:clamp(3.4rem,7vw,6.7rem);
    line-height:.76;
    letter-spacing:-.065em;
    font-weight:400;
}

.nc-footer-brand p{
    color:#aeb9b1;
    max-width:370px;
    margin:28px 0 0;
    font-size:1rem;
    line-height:1.55;
}

.nc-footer-nav{
    display:grid;
    grid-template-columns:.7fr 1.3fr;
    gap:46px;
    padding-top:6px;
}

.nc-footer-column{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:13px;
}

.nc-footer-title{
    color:#d3aa43;
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    margin-bottom:10px;
}

.nc-footer-column button,
.nc-footer-column a{
    appearance:none;
    border:0;
    padding:0;
    margin:0;
    background:none;
    font:inherit;
    text-align:left;
    text-decoration:none;
    color:#f0ece2;
    cursor:pointer;
    line-height:1.4;
    transition:
        color .2s ease,
        transform .2s ease;
}

.nc-footer-column a{
    display:flex;
    gap:8px;
    align-items:flex-start;
}

.nc-footer-column a span{
    color:#d3aa43;
    font-size:.8em;
}

.nc-footer-column button:hover,
.nc-footer-column a:hover{
    color:#d3aa43;
    transform:translateX(3px);
}

.nc-footer-bottom{
    width:min(1180px,100%);
    margin:64px auto 0;
    padding-top:22px;
    border-top:1px solid rgba(255,255,255,.12);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    color:#7f9186;
    font-size:.76rem;
}

.nc-footer-location{
    color:#b6c0ba;
}


/* FOOTER MOBILE */

@media (max-width: 760px){

    .nc-footer{
        padding:
            58px
            20px
            calc(112px + env(safe-area-inset-bottom));
    }

    .nc-footer-main{
        display:block;
    }

    .nc-footer-logo{
        font-size:clamp(3.7rem,18vw,5.3rem);
    }

    .nc-footer-brand p{
        margin-top:22px;
    }

    .nc-footer-nav{
        grid-template-columns:1fr;
        gap:38px;
        margin-top:54px;
        padding-top:0;
    }

    .nc-footer-column{
        gap:15px;
    }

    .nc-footer-column button,
    .nc-footer-column a{
        font-size:.94rem;
    }

    .nc-footer-bottom{
        margin-top:50px;
        padding-top:20px;
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:6px;
    }

}


/* =========================================================
   NEXT CHAPTER — LOGO SIZE BOOST
   ========================================================= */

/* Desktop */
.site-header .brand,
.site-header .brand-mark,
.site-header .brand-logo,
.site-header .logo,
.site-header .logo-wrap{
    transform:scale(1.12);
    transform-origin:left center;
}

.site-header .brand{
    gap:10px !important;
}

.site-header .brand img,
.site-header .brand svg,
.site-header .logo img,
.site-header .logo svg{
    width:auto !important;
    max-height:58px !important;
}

/* Mobile */
@media (max-width: 900px){

    .site-header .brand,
    .site-header .brand-mark,
    .site-header .brand-logo,
    .site-header .logo,
    .site-header .logo-wrap{
        transform:scale(1.16);
        transform-origin:left center;
    }

    .site-header .brand img,
    .site-header .brand svg,
    .site-header .logo img,
    .site-header .logo svg{
        max-height:52px !important;
    }

}

/* Very small screens */
@media (max-width: 420px){

    .site-header .brand,
    .site-header .brand-mark,
    .site-header .brand-logo,
    .site-header .logo,
    .site-header .logo-wrap{
        transform:scale(1.10);
    }

}

