/* Maple House — menu page styles */

.menu-hero{
  background:var(--espresso);color:var(--on-dark);
  padding:clamp(120px,16vw,180px) 0 clamp(48px,6vw,80px);
  position:relative;overflow:hidden;
  text-align:center;
}
.menu-hero::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(154,123,79,.1),transparent 70%);top:-200px;right:-120px;}
.menu-hero h1{font-family:var(--editorial);font-weight:600;letter-spacing:-.01em;font-size:clamp(28px,5vw,56px);line-height:1.1;color:var(--linen);max-width:600px;margin:0 auto;}
.menu-hero h1 .ital{font-style:italic;font-weight:500;color:var(--on-dark-soft);display:block;margin-top:4px;}
.menu-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px;position:relative;z-index:1;justify-content:center;}
@media(max-width:560px){
  .menu-hero{padding-top:clamp(100px,18vw,140px);}
  .menu-hero h1{font-size:clamp(24px,7vw,32px);}
  .menu-jump{gap:8px;}
  .menu-jump a{padding:8px 16px;font-size:13px;}
}
.menu-jump a{
  font-family:var(--body);font-size:14px;font-weight:600;letter-spacing:.01em;
  color:var(--on-dark);border:1px solid var(--on-dark-edge);border-radius:var(--radius-soft);
  padding:9px 20px;transition:background .2s,color .2s,border-color .2s;
}
.menu-jump a:hover{background:var(--brass);color:var(--espresso);border-color:var(--brass);}

.menu-main{padding:clamp(48px,7vw,96px) 0;}
.menu-section{padding-bottom:clamp(36px,5vw,60px);scroll-margin-top:80px;}
.menu-cat-head{margin-bottom:clamp(30px,4vw,48px);text-align:center;}
.menu-cat-head .samara{display:block;margin:0 auto 18px;}
.menu-cat-head h2{font-family:var(--editorial);font-weight:600;font-size:clamp(28px,4vw,46px);color:var(--espresso);}
.menu-cat-head .cat-note{font-size:17px;color:var(--ink-soft);margin-top:10px;max-width:520px;margin-left:auto;margin-right:auto;}

.menu-groups{
  columns:2;column-gap:clamp(40px,6vw,90px);
}
@media(max-width:680px){.menu-groups{columns:1;}}
.menu-group{break-inside:avoid;margin-bottom:38px;display:inline-block;width:100%;}
.menu-group h3{
  font-family:var(--body);font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:var(--bronze);padding-bottom:12px;margin-bottom:8px;border-bottom:1px solid var(--greige);
}
.m-item{display:flex;align-items:baseline;gap:14px;padding:11px 0;border-bottom:1px dotted var(--greige);}
.m-item:last-child{border-bottom:none;}
.m-l{flex:1;}
.m-name{font-family:var(--editorial);font-size:18px;font-weight:600;color:var(--espresso);display:block;}
.m-desc{font-size:13.5px;color:var(--ink-soft);margin-top:2px;display:block;}
.m-price{font-family:var(--editorial);font-size:18px;font-weight:600;color:var(--bronze);white-space:nowrap;}
.m-price::before{content:"$";font-size:13px;vertical-align:top;margin-right:1px;opacity:.7;}

/* feature rows */
.menu-feature{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  background:var(--espresso);color:var(--linen);border-radius:8px;
  padding:30px 36px;margin-top:24px;
}
.menu-feature .mf-tag{display:inline-block;font-family:var(--body);font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--brass);background:rgba(154,123,79,.14);padding:4px 12px;border-radius:var(--radius-soft);margin-bottom:12px;}
.menu-feature h3{font-family:var(--editorial);font-size:clamp(22px,3vw,30px);font-weight:600;color:var(--linen);}
.menu-feature p{color:rgba(243,239,232,.82);font-size:15px;margin-top:8px;max-width:520px;}
.menu-feature .mf-price{font-family:var(--editorial);font-size:34px;font-weight:600;color:var(--brass);white-space:nowrap;}
.menu-feature .mf-price::before{content:"$";font-size:18px;vertical-align:top;opacity:.8;}

/* Signature feature with image placeholder */
.menu-feature-img{align-items:stretch;padding:0;overflow:hidden;}
.menu-feature-img .mf-body{padding:30px 36px;flex:1;}
.menu-feature-img .mf-price{
  font-size:26px;margin-top:16px;
}
.menu-feature-img .mf-price::before{font-size:14px;}
.menu-feature-img .mf-img{
  width:200px;flex-shrink:0;
  background:var(--cocoa);
  display:flex;align-items:center;justify-content:center;
}
.menu-feature-img .mf-img img{width:100%;height:100%;object-fit:cover;}
@media(max-width:600px){
  .menu-feature-img{flex-direction:column;}
  .menu-feature-img .mf-img{width:100%;height:140px;}
}

/* Drinks section (Coffee & Matcha combined) */
.drinks-menu{
  background:var(--espresso);color:var(--on-dark);
  border-radius:10px;
  padding:clamp(40px,6vw,72px) clamp(28px,5vw,64px);
  margin-top:0;margin-bottom:clamp(20px,3vw,40px);
}
.drinks-head{
  text-align:center;
  max-width:560px;
  margin:0 auto clamp(36px,5vw,56px);
}
.drinks-head .samara{display:block;margin:0 auto 18px;}
.drinks-head h2{
  font-family:var(--editorial);font-size:clamp(28px,4vw,46px);
  font-weight:600;color:var(--linen);margin-bottom:12px;
}
.drinks-head p{
  font-size:17px;color:var(--on-dark-soft);line-height:1.6;
}

.drinks-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(32px,5vw,64px);
}
@media(max-width:700px){
  .drinks-grid{grid-template-columns:1fr;gap:48px;}
}

.drinks-col-title{
  font-family:var(--editorial);font-size:20px;font-weight:600;
  color:var(--brass);margin-bottom:24px;
  padding-bottom:12px;border-bottom:1px solid var(--on-dark-edge);
}

.drinks-menu .menu-group{margin-bottom:28px;}
.drinks-menu .menu-group:last-child{margin-bottom:0;}
.drinks-menu .menu-group h4{
  font-family:var(--body);font-size:11px;font-weight:700;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--sage-grey);margin-bottom:12px;
}

.menu-group.on-dark .m-name{color:var(--linen);}
.menu-group.on-dark .m-desc{color:var(--on-dark-soft);}
.menu-group.on-dark .m-price{color:var(--brass);}
.menu-group.on-dark .m-item{border-bottom-color:var(--on-dark-edge);}

/* Group notes (e.g., "Served with...") */
.group-note{
  font-family:var(--body);
  font-size:13px;
  font-style:italic;
  color:var(--ink-soft);
  margin:-4px 0 12px;
}
.menu-group.on-dark .group-note{color:var(--on-dark-soft);}

/* Soft drinks / juice section */
.drinks-other{
  margin-top:clamp(36px,5vw,56px);
  padding-top:clamp(28px,4vw,40px);
  border-top:1px solid var(--on-dark-edge);
  text-align:center;
}
.drinks-other h4{
  font-family:var(--body);font-size:12px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;
  color:var(--brass);margin-bottom:14px;
}
.drinks-other p{
  font-family:var(--editorial);font-size:15px;font-style:italic;
  color:var(--on-dark-soft);line-height:1.8;
  max-width:560px;margin:0 auto;
}
.drinks-other p + p{margin-top:6px;}
.m-price-inline{
  font-style:normal;font-weight:600;color:var(--brass);
}
.m-price-inline::before{content:"$";font-size:11px;opacity:.8;}

/* order CTA */
.menu-order{text-align:center;background:var(--chalk);border:1px solid var(--greige);border-radius:10px;padding:clamp(40px,6vw,72px);}
.menu-order .order-badge{display:inline-block;font-family:var(--body);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);background:rgba(154,123,79,.14);padding:6px 16px;border-radius:var(--radius-soft);margin-bottom:18px;}
.menu-order h2{font-family:var(--editorial);font-size:clamp(26px,3.6vw,42px);font-weight:600;color:var(--espresso);}
.menu-order p{font-size:17px;color:var(--ink-soft);margin:14px auto 26px;max-width:460px;}
.menu-order .order-note{font-size:13px;color:var(--ink-soft);opacity:.8;margin-top:18px;max-width:420px;}
