:root{
  --paper:#f4f1e8;
  --ink:#10170f;
  --forest:#173f25;
  --olive:#5d9138;
  --muted:#98a08c;
  --dots:#aeb89b;
  --rule:#ddd9cf;
  --max:600px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:58px}
body{
  margin:0;
  min-width:320px;
  background:var(--paper);
  color:var(--ink);
  border-top:2px solid #575a56;
  font-family:"Inter",Arial,Helvetica,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.shell{width:min(var(--max),100%);margin:0 auto}

/* Header — matched to the supplied reference */
.top{padding:30px 0 15px}
.hero{text-align:center}
.ama-logo{
  width:139px;
  height:35px;
  object-fit:cover;
  margin:0 auto 3px;
}
.brand-line{
  margin:0;
  color:#174c29;
  font-family:"Caveat",cursive;
  font-size:25px;
  font-weight:600;
  line-height:1.02;
}
.hero h1{
  margin:7px 0 0;
  color:#778173;
  font-family:"Oswald",Arial,sans-serif;
  font-size:10px;
  line-height:1;
  font-weight:500;
  letter-spacing:4px;
  text-transform:uppercase;
}
.hero h1 span{font:inherit;color:inherit}

/* Category strip */
.menu-nav{
  position:sticky;
  top:0;
  z-index:20;
  height:43px;
  background:rgba(244,241,232,.97);
  border-bottom:1px solid var(--rule);
}
.nav-scroll{
  height:43px;
  padding:0 18px;
  display:flex;
  align-items:flex-end;
  gap:25px;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  -ms-overflow-style:none;
  white-space:nowrap;
}
.nav-scroll::-webkit-scrollbar{display:none}
.nav-scroll a{
  position:relative;
  flex:0 0 auto;
  height:43px;
  display:flex;
  align-items:center;
  padding:2px 0 0;
  color:#939a87;
  font-family:"Oswald",Arial,sans-serif;
  font-size:12px;
  line-height:1;
  font-weight:700;
  letter-spacing:.45px;
  text-transform:uppercase;
}
.nav-scroll a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:3px;
  background:transparent;
}
.nav-scroll a.active{color:#25552f}
.nav-scroll a.active::after{background:var(--olive)}

.main-content{padding:0 0 64px}
.menu-section{
  padding:28px 18px 0;
  border:0;
}
.menu-section + .menu-section{margin-top:19px}
.menu-section h2{
  position:relative;
  margin:0 0 21px;
  color:#0d4227;
  font-family:"Oswald",Arial,sans-serif;
  font-size:23px;
  line-height:1;
  font-weight:700;
  letter-spacing:.4px;
  text-transform:uppercase;
}
.menu-section h2::after{
  content:"";
  position:absolute;
  left:0;
  top:28px;
  width:27px;
  height:3px;
  background:var(--olive);
}
.section-subtitle{display:none}
.items{border:0}
.item{
  position:relative;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
  min-height:35px;
  padding:7px 0 6px;
  border:0;
}
.item::before{
  content:"";
  position:absolute;
  z-index:0;
  left:0;
  right:0;
  top:17px;
  border-top:2px dotted var(--dots);
}
.item-copy,
.price{position:relative;z-index:1;background:var(--paper)}
.item-copy{
  min-width:0;
  max-width:calc(100% - 68px);
  padding-right:8px;
}
.name-row{
  display:flex;
  align-items:baseline;
  gap:7px;
  flex-wrap:wrap;
}
.item h3{
  margin:0;
  font-size:15.5px;
  line-height:1.28;
  font-weight:500;
  letter-spacing:.05px;
}
.item p{
  margin:4px 0 0;
  padding-right:2px;
  color:#6f6d68;
  font-family:Georgia,"Times New Roman",serif;
  font-size:13px;
  line-height:1.24;
  font-style:italic;
}
.price{
  flex:0 0 auto;
  padding-left:8px;
  color:#164728;
  font-family:"Oswald",Arial,sans-serif;
  font-size:16px;
  line-height:1.18;
  font-weight:700;
  white-space:nowrap;
}
.special{
  padding:0;
  border-radius:0;
  background:var(--paper);
  color:#6d963b;
  font-family:"Oswald",Arial,sans-serif;
  font-size:9px;
  line-height:1;
  font-weight:700;
  letter-spacing:1.1px;
  text-transform:uppercase;
}

/* Specialty green band */
#specialty{
  margin-top:31px;
  padding:0;
}
#specialty > h2{
  margin:0;
  padding:16px 18px 1px;
  height:auto;
  background:var(--olive);
  color:white;
  font-size:23px;
}
#specialty > h2::after{display:none}
#specialty > .section-subtitle{
  display:block;
  margin:0;
  padding:0 18px 14px;
  background:var(--olive);
  color:white;
  font-family:"Caveat",cursive;
  font-size:16px;
  line-height:1.05;
  font-weight:600;
  text-transform:none;
  letter-spacing:0;
}
#specialty > .items{padding:14px 18px 0}

.note{
  margin:42px 18px 0;
  color:#7f8079;
  font-size:12px;
  line-height:1.45;
}
.note span{color:#5d9138;font-weight:700;text-transform:uppercase}

.footer{
  border-top:1px solid var(--rule);
  padding:34px 0 42px;
  background:var(--paper);
}
.footer-grid{
  padding:0 18px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px 36px;
}
.footer-brand{grid-column:1/-1}
.footer-logo{width:130px}
.footer-block h2{
  margin:0 0 7px;
  color:#164728;
  font-family:"Oswald",Arial,sans-serif;
  font-size:15px;
  text-transform:uppercase;
}
.footer-block p{margin:0;font-size:12px;line-height:1.5}
.footer-actions{grid-column:1/-1;display:flex;gap:24px;font-size:12px;font-weight:600}
.footer a{text-decoration:underline;text-underline-offset:3px}

@media (max-width:600px){
  .shell{width:100%}
  .top{padding-top:28px}
  .nav-scroll{padding-left:18px;padding-right:18px}
  .menu-section{padding-left:18px;padding-right:18px}
  .footer-grid{grid-template-columns:1fr}
  .footer-brand,.footer-actions{grid-column:auto}
}

@media (max-width:420px){
  .nav-scroll{gap:21px}
  .nav-scroll a{font-size:11.5px}
  .menu-section h2,#specialty > h2{font-size:22px}
  .item h3{font-size:15px}
  .price{font-size:15px}
  .item p{font-size:12.5px}
}
