/* Albert's Components V2 - Menu Showcase v2 */

.menu-showcase {
  --ms-green:#26362f;
  --ms-green-deep:#1b2822;
  --ms-cream:#f4efe6;
  --ms-paper:#fffaf3;
  --ms-copper:#bd6d3f;
  --ms-ink:#282723;
  position:relative;
  overflow:hidden;
  isolation:isolate;
  padding:clamp(88px,8vw,132px) 0 clamp(105px,9vw,150px);
  background:linear-gradient(180deg,#f7f2e9 0%,var(--ms-cream) 100%);
  color:var(--ms-green);
}

.menu-showcase--green {
  background:linear-gradient(142deg,#30463b 0%,var(--ms-green) 60%,var(--ms-green-deep) 100%);
  color:var(--ms-cream);
}

.menu-showcase--charcoal {
  background:linear-gradient(142deg,#302f2c,#21211f 65%,#171715);
  color:var(--ms-cream);
}

.menu-showcase__inner {
  width:min(calc(100% - clamp(36px,7vw,120px)),1420px);
  margin:0 auto;
}

.menu-showcase__masthead {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:clamp(245px,21vw,330px);
  margin-bottom:clamp(42px,5vw,68px);
  text-align:center;
}

.menu-showcase__decorative {
  position:absolute;
  z-index:0;
  top:47%;
  left:50%;
  width:max-content;
  pointer-events:none;
  white-space:nowrap;
  color:transparent !important;
  -webkit-text-stroke:1px rgba(189,109,63,.32);
  font-family:'BigMooreItalic','BigMoore',Georgia,serif;
  font-size:clamp(7rem,14vw,14rem);
  font-weight:400;
  line-height:.8;
  letter-spacing:-.045em;
  text-transform:none !important;
  transform:translate(-50%,-50%);
}

.menu-showcase__masthead-inner {
  position:relative;
  z-index:1;
  width:min(790px,94%);
}

.menu-showcase__eyebrow {
  margin:0 0 18px !important;
  color:var(--ms-copper) !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:.9rem !important;
  font-weight:600 !important;
  letter-spacing:.035em !important;
  line-height:1.5 !important;
  text-transform:none !important;
}

.menu-showcase__title {
  max-width:13ch;
  margin:0 auto !important;
  color:var(--ms-green) !important;
  font-family:'BigMoore',Georgia,serif !important;
  font-size:clamp(3.9rem,5.5vw,6.7rem) !important;
  font-weight:300 !important;
  letter-spacing:-.035em !important;
  line-height:1.02 !important;
  text-align:center !important;
  text-transform:none !important;
}

.menu-showcase--green .menu-showcase__title,
.menu-showcase--charcoal .menu-showcase__title {
  color:var(--ms-cream) !important;
}

.menu-showcase__title::after {
  content:"";
  display:block;
  width:clamp(110px,10vw,170px);
  height:1px;
  margin:28px auto 0;
  background:var(--ms-copper);
}

.menu-showcase__intro,
.menu-showcase__intro p {
  color:var(--ms-green) !important;
  text-transform:none !important;
}

.menu-showcase--green .menu-showcase__intro,
.menu-showcase--green .menu-showcase__intro p,
.menu-showcase--charcoal .menu-showcase__intro,
.menu-showcase--charcoal .menu-showcase__intro p {
  color:var(--ms-cream) !important;
}

.menu-showcase__intro {
  max-width:700px;
  margin:24px auto 0;
  font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(1rem,1.08vw,1.14rem);
  line-height:1.7;
}

.menu-showcase__intro > :first-child { margin-top:0; }
.menu-showcase__intro > :last-child { margin-bottom:0; }

.menu-showcase__selector {
  margin:0 auto clamp(24px,3vw,38px);
}

.menu-showcase__tabs {
  display:flex;
  align-items:stretch;
  justify-content:center;
  gap:0;
  width:min(100%,1000px);
  margin:0 auto;
  padding:0;
  border-top:1px solid rgba(189,109,63,.48);
  border-bottom:1px solid rgba(189,109,63,.48);
  background:transparent;
}

.menu-showcase__tab {
  all:unset;
  box-sizing:border-box;
  position:relative;
  flex:1 1 0;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:76px;
  padding:17px 24px 19px;
  cursor:pointer;
  text-align:center;
  color:var(--ms-green) !important;
}

.menu-showcase__tab + .menu-showcase__tab {
  border-left:1px solid rgba(189,109,63,.30);
}

.menu-showcase__tab::after {
  content:"";
  position:absolute;
  left:50%;
  bottom:-1px;
  width:0;
  height:3px;
  background:var(--ms-copper);
  transform:translateX(-50%);
  transition:width 180ms ease;
}

.menu-showcase__tab:hover,
.menu-showcase__tab:focus-visible {
  color:var(--ms-copper) !important;
}

.menu-showcase__tab:focus-visible {
  outline:2px solid var(--ms-copper);
  outline-offset:-4px;
}

.menu-showcase__tab.is-active {
  color:var(--ms-green) !important;
  background:rgba(189,109,63,.08);
}

.menu-showcase__tab.is-active::after {
  width:calc(100% - 44px);
}

.menu-showcase__tab-title {
  display:block;
  color:inherit !important;
  font-family:'BigMoore',Georgia,serif !important;
  font-size:clamp(1.35rem,1.5vw,1.78rem) !important;
  font-weight:300 !important;
  line-height:1.12 !important;
  letter-spacing:-.015em !important;
  text-transform:none !important;
}

.menu-showcase__select-wrap {
  display:none;
  width:min(100%,680px);
  margin:0 auto;
}

.menu-showcase__select-label {
  display:block;
  margin:0 0 10px;
  color:var(--ms-green) !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:.88rem !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  line-height:1.4 !important;
  text-transform:none !important;
}

.menu-showcase__select {
  box-sizing:border-box;
  display:block;
  width:100%;
  min-height:58px;
  padding:0 52px 0 18px;
  border:1px solid rgba(189,109,63,.68);
  border-radius:0;
  background:var(--ms-paper);
  color:var(--ms-green);
  font-family:'BigMoore',Georgia,serif;
  font-size:1.35rem;
  line-height:1.2;
  text-transform:none;
}

.menu-showcase--green .menu-showcase__select-label,
.menu-showcase--charcoal .menu-showcase__select-label {
  color:var(--ms-cream) !important;
}

/* Five or more menus: a dropdown is calmer and scales cleanly. */
.menu-showcase--many .menu-showcase__tabs {
  display:none;
}

.menu-showcase--many .menu-showcase__select-wrap {
  display:block;
}

.menu-showcase__panels {
  background:var(--ms-paper);
  color:var(--ms-ink);
  border:1px solid rgba(189,109,63,.42);
  border-top:0;
}

.menu-showcase--enhanced .menu-showcase__panel { display:none; }
.menu-showcase--enhanced .menu-showcase__panel.is-active { display:block; }

.menu-showcase__panel {
  padding:clamp(42px,5vw,76px) clamp(28px,6vw,90px) clamp(54px,6vw,88px);
}

.menu-showcase__panel + .menu-showcase__panel {
  border-top:4px solid var(--ms-green);
}

.menu-showcase__panel-head {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:30px;
  padding-bottom:30px;
  border-bottom:1px solid rgba(189,109,63,.45);
}

.menu-showcase__panel-head h3 {
  max-width:18ch;
  margin:0 !important;
  color:var(--ms-green) !important;
  font-family:'BigMoore',Georgia,serif !important;
  font-size:clamp(2.8rem,4.2vw,5.1rem) !important;
  font-weight:300 !important;
  letter-spacing:-.03em !important;
  line-height:1 !important;
  text-transform:none !important;
}

.menu-showcase__pdf {
  position:static !important;
  inset:auto !important;
  top:auto !important;
  right:auto !important;
  bottom:auto !important;
  left:auto !important;
  float:none !important;
  transform:none !important;
  z-index:auto !important;
  flex:0 0 auto;
  display:inline-flex;
  min-height:48px;
  align-items:center;
  justify-content:center;
  padding:12px 20px;
  border:1px solid var(--ms-copper);
  border-radius:0;
  color:var(--ms-copper) !important;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.88rem;
  font-weight:600;
  letter-spacing:0;
  text-decoration:none;
  text-transform:none !important;
}

.menu-showcase__pdf:hover,
.menu-showcase__pdf:focus-visible {
  background:var(--ms-copper);
  color:#fff !important;
}

.menu-showcase__menu-intro,
.menu-showcase__menu-intro p {
  color:#4e4b45 !important;
  text-transform:none !important;
}

.menu-showcase__menu-intro {
  max-width:850px;
  margin:31px auto 40px;
  text-align:center;
  font-size:1rem;
  line-height:1.65;
}

.menu-showcase__menu-intro p { margin:.45em 0; }

.menu-showcase__sections {
  border-top:1px solid rgba(189,109,63,.35);
}

.menu-showcase__section {
  border-bottom:1px solid rgba(189,109,63,.35);
}

.menu-showcase__section summary {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  min-height:82px;
  padding:20px 2px;
  cursor:pointer;
  list-style:none;
  color:var(--ms-green) !important;
  font-family:'BigMoore',Georgia,serif !important;
  font-size:clamp(1.75rem,2.25vw,2.55rem) !important;
  line-height:1.08 !important;
  text-transform:none !important;
}

.menu-showcase__section summary::-webkit-details-marker { display:none; }

.menu-showcase__section-toggle {
  position:relative;
  flex:0 0 24px;
  width:24px;
  height:24px;
}

.menu-showcase__section-toggle::before,
.menu-showcase__section-toggle::after {
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:18px;
  height:1px;
  background:var(--ms-copper);
  transform:translate(-50%,-50%);
}

.menu-showcase__section-toggle::after {
  transform:translate(-50%,-50%) rotate(90deg);
  transition:opacity 160ms ease;
}

.menu-showcase__section[open] .menu-showcase__section-toggle::after { opacity:0; }

.menu-showcase__items {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 48px;
  margin:0;
  padding:0 0 34px;
  list-style:none;
}

.menu-showcase__item {
  padding:22px 0;
  border-top:1px solid rgba(38,54,47,.14);
}

.menu-showcase__dish-line {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:18px;
}

.menu-showcase__dish-line h4 {
  margin:0 !important;
  color:var(--ms-green) !important;
  font-family:'BigMoore',Georgia,serif !important;
  font-size:clamp(1.22rem,1.32vw,1.5rem) !important;
  font-weight:300 !important;
  line-height:1.16 !important;
  text-transform:none !important;
}

.menu-showcase__price {
  flex:0 0 auto;
  color:var(--ms-copper) !important;
  font-size:.94rem;
  font-weight:700;
}

.menu-showcase__description,
.menu-showcase__description p {
  color:#55534e !important;
  text-transform:none !important;
}

.menu-showcase__description {
  margin-top:7px;
  font-size:.9rem;
  line-height:1.5;
}

.menu-showcase__description p { margin:0; }

.menu-showcase__empty {
  margin:20px auto 0;
  color:var(--ms-copper) !important;
  text-align:center;
  text-transform:none !important;
}

@media(max-width:767px) {
  .menu-showcase {
    padding:74px 0 92px;
  }

  .menu-showcase__inner {
    width:calc(100% - 28px);
  }

  .menu-showcase__masthead {
    min-height:275px;
    margin-bottom:34px;
  }

  .menu-showcase__decorative {
    font-size:clamp(5.5rem,24vw,8rem);
  }

  .menu-showcase__title {
    max-width:10ch;
    font-size:clamp(3.25rem,14vw,4.8rem) !important;
  }

  .menu-showcase__tabs {
    display:none !important;
  }

  .menu-showcase__select-wrap {
    display:block !important;
  }

  .menu-showcase__selector {
    margin-bottom:22px;
  }

.menu-showcase__panel {
    padding:36px 20px 50px;
  }

  .menu-showcase__panel-head {
    display:block;
  }

  .menu-showcase__panel-head h3 {
    font-size:clamp(2.55rem,11vw,3.8rem) !important;
  }

  .menu-showcase__pdf {
    display:inline-flex !important;
    width:auto !important;
    margin:22px 0 0 !important;
    position:static !important;
    transform:none !important;
  }

  .menu-showcase__menu-intro {
    margin:26px 0 32px;
    text-align:left;
  }

  .menu-showcase__section summary {
    min-height:70px;
    font-size:clamp(1.6rem,7vw,2.1rem) !important;
  }

  .menu-showcase__items {
    grid-template-columns:1fr;
  }

  .menu-showcase__item {
    padding:17px 0;
  }
}

@media(prefers-reduced-motion:reduce) {
  .menu-showcase__tab,
  .menu-showcase__section-toggle::after {
    transition:none;
  }
}


/* v4 art-direction refinements */
.menu-showcase__panel-head {
  position:relative !important;
  inset:auto !important;
  float:none !important;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:28px;
  width:100%;
  margin:0;
  padding:0 0 30px;
  border-bottom:1px solid rgba(189,109,63,.45);
  background:transparent !important;
  transform:none !important;
  z-index:auto !important;
}

.menu-showcase__panel-head h3 {
  max-width:15ch !important;
  margin:0 !important;
  color:var(--ms-green) !important;
  font-family:'BigMoore',Georgia,serif !important;
  font-size:clamp(3.25rem,4.65vw,5.6rem) !important;
  font-weight:300 !important;
  letter-spacing:-.035em !important;
  line-height:.98 !important;
  text-transform:none !important;
}

.menu-showcase__pdf-wrap {
  position:static !important;
  inset:auto !important;
  float:none !important;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:7px;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  transform:none !important;
  z-index:auto !important;
}

.menu-showcase__pdf-label {
  color:#777168 !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:.78rem !important;
  font-weight:400 !important;
  line-height:1.3 !important;
  text-transform:none !important;
}

.menu-showcase a.menu-showcase__pdf {
  all:unset;
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  padding:10px 0 7px;
  border-bottom:1px solid var(--ms-copper);
  color:var(--ms-copper) !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:.92rem !important;
  font-weight:600 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  text-transform:none !important;
}

.menu-showcase a.menu-showcase__pdf:hover,
.menu-showcase a.menu-showcase__pdf:focus-visible {
  color:var(--ms-green) !important;
  border-color:var(--ms-green);
}

.menu-showcase__section summary {
  font-size:clamp(2rem,2.5vw,2.85rem) !important;
  letter-spacing:-.018em !important;
}

.menu-showcase__dish-line h4 {
  font-size:clamp(1.5rem,1.55vw,1.82rem) !important;
  line-height:1.13 !important;
  letter-spacing:-.012em !important;
}

.menu-showcase__description {
  margin-top:9px;
  font-size:.98rem;
  line-height:1.55;
}

.menu-showcase__item {
  padding:25px 0 27px;
}

@media(max-width:767px) {
  .menu-showcase__tabs {
    display:none !important;
  }

  .menu-showcase__select-wrap {
    display:block !important;
  }

  .menu-showcase__selector {
    margin-bottom:24px;
  }

  .menu-showcase__panel {
    padding:38px 20px 52px;
  }

  .menu-showcase__panel-head {
    display:block;
    padding-bottom:28px;
  }

  .menu-showcase__panel-head h3 {
    max-width:10ch !important;
    font-size:clamp(3.35rem,14vw,4.85rem) !important;
    line-height:.98 !important;
  }

  .menu-showcase__pdf-wrap {
    align-items:flex-start;
    margin-top:22px !important;
  }

  .menu-showcase__pdf-label {
    font-size:.76rem !important;
  }

  .menu-showcase a.menu-showcase__pdf {
    font-size:.96rem !important;
  }

  .menu-showcase__menu-intro {
    margin:28px 0 34px;
    font-size:.98rem;
    line-height:1.6;
  }

  .menu-showcase__section summary {
    min-height:76px;
    font-size:clamp(2rem,8vw,2.55rem) !important;
  }

  .menu-showcase__dish-line {
    align-items:flex-start;
  }

  .menu-showcase__dish-line h4 {
    font-size:clamp(1.72rem,7vw,2.1rem) !important;
    line-height:1.12 !important;
  }

  .menu-showcase__price {
    padding-top:4px;
    font-size:1rem;
  }

  .menu-showcase__description {
    margin-top:8px;
    font-size:1rem;
    line-height:1.52;
  }

  .menu-showcase__item {
    padding:21px 0 23px;
  }
}
