.menu-lanyard-menu{overflow:hidden;padding-inline:7%;background:#e9ede6!important;background-image:linear-gradient(rgba(239,242,236,.94),rgba(239,242,236,.94)),url('light-pine-texture.png')!important}
.menu-lanyard-menu>.eyebrow{color:#5f7158!important}
.menu-lanyard-menu>h2{max-width:760px;margin-bottom:0}
.menu-lanyard-stage{position:relative;margin-top:52px;padding:142px clamp(18px,3vw,42px) 38px;overflow:hidden;border:1px solid #cfd5cc;border-radius:32px;background:linear-gradient(145deg,#f4f6f1,#e1e7de);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 24px 60px rgba(47,51,47,.12)}
.menu-lanyard-stage::before{content:'';position:absolute;inset:0;opacity:.24;background-image:linear-gradient(rgba(74,53,40,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(74,53,40,.07) 1px,transparent 1px);background-size:54px 54px;pointer-events:none}
.menu-lanyard-stage .menu-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.2vw,34px);margin:0;overflow:visible}
.menu-lanyard{--lanyard:#5f7158;--lanyard-dark:#40503d;--badge:#5f7158;--badge-ink:#fff;position:relative;min-width:0;filter:drop-shadow(0 20px 24px rgba(47,51,47,.16));transform-origin:50% -126px;transition:transform .35s ease,filter .35s ease}
.menu-lanyard:nth-child(2){--lanyard:#b26b4d;--lanyard-dark:#7d4937;--badge:#f3eadb;--badge-ink:#3d332b;transform:rotate(.45deg)}
.menu-lanyard:nth-child(3){--lanyard:#4a3528;--lanyard-dark:#2f211a;--badge:#4a3528;--badge-ink:#fff;transform:rotate(-.55deg)}
.menu-lanyard:hover{z-index:2;transform:translateY(-7px) rotate(0);filter:drop-shadow(0 27px 30px rgba(47,51,47,.2))}
.menu-lanyard:focus-visible{z-index:3;outline:3px solid #718269;outline-offset:7px;transform:translateY(-7px) rotate(0)}
.menu-strap{position:absolute;z-index:0;left:50%;bottom:calc(100% - 18px);width:48px;height:142px;border-inline:1px solid rgba(35,31,27,.16);background:linear-gradient(90deg,var(--lanyard-dark),var(--lanyard) 18%,var(--lanyard) 82%,var(--lanyard-dark));transform:translateX(-50%);box-shadow:inset 7px 0 10px rgba(255,255,255,.08),inset -7px 0 10px rgba(0,0,0,.08)}
.menu-strap::before{content:'';position:absolute;top:14px;left:50%;width:15px;height:15px;border:2px solid rgba(49,45,39,.55);border-radius:50%;background:#eff2ec;box-shadow:0 1px 0 #fff,inset 0 2px 3px rgba(0,0,0,.16);transform:translateX(-50%)}
.menu-strap::after{content:'';position:absolute;left:50%;bottom:-21px;width:42px;height:31px;border:3px solid #8c918a;border-radius:45%;box-shadow:inset 0 0 0 2px #dfe2dc,0 3px 4px rgba(48,51,47,.23);transform:translateX(-50%)}
.menu-strap i{position:absolute;z-index:2;left:50%;bottom:-37px;width:16px;height:35px;border:3px solid #a9ada7;border-top:0;border-radius:0 0 10px 10px;background:linear-gradient(90deg,#878c86,#e5e7e3 48%,#858a84);transform:translateX(-50%)}
.menu-badge{position:relative;z-index:1;min-height:590px;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(56,49,43,.18);border-radius:18px;background:var(--badge);color:var(--badge-ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.menu-badge::before{content:'';position:absolute;top:14px;left:50%;z-index:3;width:17px;height:17px;border:3px solid rgba(56,49,43,.45);border-radius:50%;background:#eef1ec;box-shadow:inset 0 2px 3px rgba(0,0,0,.17);transform:translateX(-50%)}
.menu-badge-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:45px 24px 18px;font:700 12px/1.3 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase}
.menu-badge-head strong{font-size:13px;text-align:right}
.menu-badge-photo{height:205px;margin:0 18px;overflow:hidden;border-radius:10px;background:#d6dcd2}
.menu-badge-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .55s ease}
.menu-lanyard:hover .menu-badge-photo img{transform:scale(1.045)}
.menu-badge-copy{display:flex;flex:1;flex-direction:column;padding:24px}
.menu-badge-copy h3{margin:0 0 17px;font:600 clamp(29px,2.4vw,38px)/.98 'Playfair Display',serif;letter-spacing:-.035em}
.menu-badge-copy ul{margin:0;padding:0;list-style:none;border-top:1px solid currentColor!important}
.menu-badge-copy li{padding:12px 0!important;border-bottom:1px solid currentColor!important;font-size:14px!important;line-height:1.45;opacity:.92}
.menu-badge-copy b{display:block;margin-top:4px;color:inherit!important;font:700 11px 'DM Mono',monospace!important;letter-spacing:.06em;opacity:.72}
.menu-badge-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:22px;font:700 11px 'DM Mono',monospace;letter-spacing:.06em;text-transform:uppercase}
.menu-badge-foot span:last-child{display:grid;place-items:center;width:35px;height:35px;border:1px solid currentColor;border-radius:50%;font-size:17px}
.menu-lanyard:nth-child(2) .menu-badge-copy ul,.menu-lanyard:nth-child(2) .menu-badge-copy li{border-color:rgba(61,51,43,.24)!important}
.menu-lanyard:not(:nth-child(2)) .menu-badge-copy ul,.menu-lanyard:not(:nth-child(2)) .menu-badge-copy li{border-color:rgba(255,255,255,.28)!important}
.menu-lanyard-menu .menu-cta{position:relative;z-index:1;margin-top:36px}

@media(max-width:980px){
  .menu-lanyard-menu{padding-inline:24px!important}
  .menu-lanyard-stage{width:calc(100vw - 24px);margin-right:-24px;padding:132px 0 32px 0;border-radius:28px 0 0 28px}
  .menu-lanyard-stage .menu-grid{display:flex;gap:17px;padding:0 24px 12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:24px;overscroll-behavior-inline:contain;scrollbar-width:none}
  .menu-lanyard-stage .menu-grid::-webkit-scrollbar{display:none}
  .menu-lanyard{flex:0 0 min(78vw,380px);scroll-snap-align:center;scroll-snap-stop:always}
  .menu-badge{min-height:570px}
  .menu-badge-copy h3{font-size:34px}
  .menu-lanyard-menu .menu-cta{align-items:stretch;padding-right:24px}
}
@media(max-width:560px){
  .menu-lanyard-stage{margin-top:42px;padding-top:120px}
  .menu-lanyard{flex-basis:min(82vw,350px)}
  .menu-strap{height:126px}
  .menu-badge{min-height:550px}
  .menu-badge-photo{height:180px;margin-inline:14px}
  .menu-badge-head,.menu-badge-copy{padding-inline:20px}
  .menu-badge-copy li{font-size:13px!important}
}
@media(prefers-reduced-motion:reduce){.menu-lanyard,.menu-badge-photo img{transition:none}}

/* Full-screen hanging menu: all three badges share one continuous scene. */
.menu-lanyard-menu{position:relative;min-height:100svh;padding:0!important;background:#e9ede6!important}
.menu-lanyard-menu>.eyebrow,.menu-lanyard-menu>h2{position:absolute;z-index:5;left:7%;margin:0}
.menu-lanyard-menu>.eyebrow{top:48px}
.menu-lanyard-menu>h2{top:72px;max-width:500px;font-size:clamp(35px,3.8vw,58px);line-height:.9}
.menu-lanyard-stage{width:100%;min-height:100svh;margin:0;padding:clamp(198px,25vh,238px) 7% 34px;border:0;border-radius:0;background:linear-gradient(145deg,#f4f6f1,#e1e7de);box-shadow:none}
.menu-lanyard-stage::after{content:'THREE FAVOURITES · ONE MENU';position:absolute;right:7%;top:60px;color:#788275;font:700 11px 'DM Mono',monospace;letter-spacing:.14em}
.menu-lanyard-stage .menu-grid{height:calc(100svh - clamp(232px,29vh,272px));min-height:470px;gap:clamp(24px,4vw,68px);align-items:stretch}
.menu-lanyard{height:100%;transform-origin:50% calc(-1 * clamp(180px,22vh,220px))}
.menu-lanyard:nth-child(1){transform:rotate(-.45deg)}
.menu-lanyard:nth-child(2){transform:rotate(.55deg)}
.menu-lanyard:nth-child(3){transform:rotate(-.7deg)}
.menu-strap{bottom:calc(100% - 19px);width:42px;height:clamp(205px,26vh,245px)}
.menu-strap::before{top:18px}
.menu-badge{height:100%;min-height:470px;border-radius:16px}
.menu-badge-head{padding:42px 22px 12px;font-size:11px}
.menu-badge-head strong{font-size:12px}
.menu-badge-photo{height:clamp(78px,10vh,112px);margin:0 16px;border-radius:7px}
.menu-badge-copy{padding:16px 22px 20px}
.menu-badge-copy h3{margin-bottom:12px;font-size:clamp(25px,2vw,34px)}
.menu-badge-copy li{padding:8px 0!important;font-size:13px!important;line-height:1.35}
.menu-badge-foot{margin-top:auto;padding-top:14px;font-size:10px}
.menu-badge-foot .menu-badge-button{display:inline-flex;width:auto;height:auto;min-height:38px;padding:0 12px;border:1px solid currentColor;border-radius:999px;font-size:9px;white-space:nowrap}
.menu-lanyard-menu .menu-cta{position:absolute;z-index:7;right:7%;top:91px;margin:0;padding:0;border:0}
.menu-lanyard-menu .menu-cta p{display:none}
.menu-lanyard-menu .menu-cta .btn{min-height:42px;padding:0 15px;border-radius:999px;background:#5f7158!important;font-size:10px}

@media(min-width:981px){
  .menu-lanyard-menu>.eyebrow{left:3.5%;top:34%}
  .menu-lanyard-menu>h2{left:3.5%;top:calc(34% + 26px);max-width:14%;font-size:clamp(32px,3.2vw,49px)}
  .menu-lanyard-stage{padding-left:20%;padding-right:5%}
  .menu-lanyard-stage::after{right:auto;left:3.5%;top:auto;bottom:112px;max-width:13%;line-height:1.7}
  .menu-lanyard-menu .menu-cta{left:auto;right:3.5%;top:48px;bottom:auto}
}

@media(max-width:980px){
  .menu-lanyard-menu{min-height:100svh;padding:0!important}
  .menu-lanyard-menu>.eyebrow,.menu-lanyard-menu>h2{left:24px}
  .menu-lanyard-menu>.eyebrow{top:34px}
  .menu-lanyard-menu>h2{top:58px;max-width:55%;font-size:clamp(33px,6vw,47px)}
  .menu-lanyard-stage{width:100%;min-height:100svh;margin:0;padding:clamp(178px,23vh,214px) 0 30px;border-radius:0}
  .menu-lanyard-stage::after{display:none}
  .menu-lanyard-stage .menu-grid{height:calc(100svh - clamp(208px,27vh,244px));min-height:455px;padding:0 24px 10px;gap:18px}
  .menu-lanyard{flex:0 0 min(64vw,330px);height:100%}
  .menu-strap{height:clamp(185px,24vh,222px)}
  .menu-badge{height:100%;min-height:455px}
  .menu-badge-photo{height:90px}
  .menu-lanyard-menu .menu-cta{top:48px;right:24px;padding:0}
  .menu-lanyard-menu .menu-cta .btn{width:auto;min-height:40px}
}
@media(max-width:560px){
  .menu-lanyard-menu>.eyebrow{top:27px}
  .menu-lanyard-menu>h2{top:50px;max-width:72%;font-size:34px}
  .menu-lanyard-stage{margin:0;padding-top:168px}
  .menu-lanyard-stage .menu-grid{height:calc(100svh - 198px);min-height:448px;padding-inline:18px}
  .menu-lanyard{flex-basis:min(78vw,315px)}
  .menu-strap{height:176px}
  .menu-badge{min-height:448px}
  .menu-badge-photo{height:78px;margin-inline:14px}
  .menu-badge-head{padding:40px 18px 10px}
  .menu-badge-copy{padding:14px 18px 18px}
  .menu-badge-copy h3{font-size:28px}
  .menu-badge-copy li{font-size:12px!important}
  .menu-badge-foot>span:first-child{display:none}
  .menu-lanyard-menu .menu-cta{top:164px;right:24px;left:auto}
  .menu-lanyard-menu .menu-cta .btn{min-height:38px;padding-inline:12px;font-size:9px}
}

/* Natural cotton cords and a shorter, calmer badge. */
.menu-lanyard-stage .menu-grid{align-items:start}
.menu-lanyard{height:auto;--cord-light:#f2ede2;--cord-mid:#c8c0b2;--cord-shadow:#8e887e}
.menu-strap{width:86px;border:0;background:none;box-shadow:none}
.menu-strap::before,.menu-strap::after{content:'';position:absolute;top:0;width:6px;height:calc(100% - 8px);border:0;border-radius:999px;background:repeating-linear-gradient(90deg,var(--cord-shadow) 0 1px,var(--cord-mid) 1px 2px,var(--cord-light) 2px 4px,var(--cord-mid) 4px 5px,var(--cord-shadow) 5px 6px);box-shadow:1px 1px 2px rgba(58,52,45,.18);transform-origin:50% 0}
.menu-strap::before{left:19px;transform:rotate(5deg)}
.menu-strap::after{right:19px;bottom:auto;transform:rotate(-5deg)}
.menu-strap i{left:50%;bottom:-19px;width:43px;height:30px;border:3px solid #8f9590;border-radius:50%;background:transparent;box-shadow:inset 0 0 0 2px #dfe2dc,0 3px 5px rgba(48,51,47,.18);transform:translateX(-50%)}
.menu-strap i::before{content:'';position:absolute;left:50%;bottom:-18px;width:12px;height:23px;border:3px solid #9ea39e;border-top:0;border-radius:0 0 9px 9px;background:linear-gradient(90deg,#8a8f8a,#e4e6e2 48%,#898e89);transform:translateX(-50%)}
.menu-strap i::after{content:'';position:absolute;left:50%;top:4px;width:24px;height:2px;border-radius:99px;background:rgba(255,255,255,.72);transform:translateX(-50%)}
.menu-badge{height:auto;min-height:430px}
.menu-badge-photo{height:74px}
.menu-badge-copy{padding-top:15px}
.menu-badge-copy h3{margin-bottom:11px}
.menu-badge-copy li{padding:9px 0!important}
.menu-badge-foot{gap:10px;padding-top:17px}
.menu-badge-foot span.menu-badge-button{display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;min-height:38px;padding:0 13px;border:1px solid currentColor;border-radius:999px;font-size:9px;line-height:1;white-space:nowrap}

@media(max-width:980px){
  .menu-badge{height:auto;min-height:425px}
  .menu-badge-photo{height:72px}
}
@media(max-width:560px){
  .menu-badge{min-height:420px}
  .menu-badge-photo{height:66px}
  .menu-badge-copy li{padding:8px 0!important}
}

/* Keep the suspension inside the scroll area, with the clasp above the badge. */
.menu-lanyard-stage{--hang-length:230px;padding-top:0}
.menu-lanyard-stage .menu-grid{height:auto;min-height:100svh;padding-top:var(--hang-length);padding-bottom:48px;align-items:start}
.menu-lanyard{--swing-angle:3.4deg;transform-origin:50% calc(-1 * var(--hang-length));animation:menu-dangle 5.8s ease-in-out infinite;will-change:transform}
.menu-lanyard:nth-child(2){--swing-angle:2.8deg;animation-duration:6.5s;animation-delay:-2.2s}
.menu-lanyard:nth-child(3){--swing-angle:3.2deg;animation-duration:6.1s;animation-delay:-4.1s}
.menu-lanyard:hover,.menu-lanyard:focus-visible{animation-play-state:paused;filter:drop-shadow(0 22px 24px rgba(47,51,47,.2))}
.menu-strap{top:calc(-1 * var(--hang-length));bottom:auto;height:calc(var(--hang-length) - 56px);width:86px;z-index:4;pointer-events:none}
.menu-strap::before{left:20px;right:auto;transform:rotate(-5deg)}
.menu-strap::after{left:auto;right:20px;transform:rotate(5deg)}
.menu-strap i{bottom:-22px;width:40px;height:30px;border:3px solid #777f7c;border-radius:12px;background:transparent;box-shadow:inset 0 0 0 2px #f4f6f2,0 2px 3px #30332f40}
.menu-strap i::before{bottom:-65px;width:22px;height:68px;border:4px solid #a8b1aa;border-left-color:#6e7a72;border-right-color:#edf1ed;border-radius:8px 8px 13px 13px;background:transparent;box-shadow:inset 1px 0 0 #f9fbf8,1px 2px 2px #30332f55;transform:translateX(-50%)}
.menu-strap i::after{top:35px;left:calc(50% + 6px);width:4px;height:40px;border:1px solid #79867b;background:linear-gradient(90deg,#89978d,#fff);border-radius:3px;transform:none;box-shadow:1px 0 1px #30332f40}
.menu-badge{z-index:auto}
.menu-badge::before{top:16px;z-index:6;width:20px;height:20px;border:3px solid #b8c2b9;border-bottom-color:#eef3ec;background:#465148;box-shadow:inset 0 0 0 1px #26352b,0 1px 0 #fff8;pointer-events:none}
.menu-badge-head{padding-top:49px}
@keyframes menu-dangle{0%,100%{transform:rotate(calc(-1 * var(--swing-angle)))}50%{transform:rotate(var(--swing-angle))}}
@media(max-width:980px){
 .menu-lanyard-stage{--hang-length:250px;padding-top:0}
 .menu-lanyard-stage .menu-grid{height:auto;min-height:100svh;padding-top:var(--hang-length);padding-bottom:44px}
}
@media(max-width:560px){
 .menu-lanyard-stage{--hang-length:250px;padding-top:0}
 .menu-lanyard-stage .menu-grid{padding-top:var(--hang-length)}
}
@media(prefers-reduced-motion:reduce){.menu-lanyard{animation:none;will-change:auto}.menu-lanyard:hover,.menu-lanyard:focus-visible{transform:none}}
.menu-lanyard.is-handled{animation:none!important;transition:none!important}
.menu-lanyard.is-dragging,.menu-lanyard.is-dragging *{cursor:grabbing!important;user-select:none}
.menu-badge-head{cursor:grab;touch-action:pan-y;user-select:none}
.menu-drag-hint{position:relative;z-index:2;margin:0;padding:0 24px 22px;color:#52624c;font-size:13px;line-height:1.5;text-align:center}

/* A richer green chapter, framed by the site's cream and walnut palette. */
.menu.menu-lanyard-menu{background:#334c3d!important;color:#fff8eb;border-block:1px solid #a9b79a}
.menu-lanyard-menu .menu-lanyard-stage{background:radial-gradient(ellipse at 65% 35%,#60765a 0%,#405b46 48%,#2e4538 100%)}
.menu-lanyard-menu .menu-lanyard-stage::before{opacity:.13;background-image:linear-gradient(#e4eadc22 1px,transparent 1px),linear-gradient(90deg,#e4eadc22 1px,transparent 1px)}
.menu.menu-lanyard-menu>.eyebrow{color:#d0dfba!important}
.menu.menu-lanyard-menu>h2{color:#fff8eb}
.menu.menu-lanyard-menu>h2 em{color:#c7dda8!important}
.menu-lanyard-menu .menu-lanyard-stage::after,.menu-lanyard-menu .menu-drag-hint{color:#e0e8d7}
.menu-lanyard-menu .menu-lanyard:nth-child(1){--badge:#74845d;--badge-ink:#fffdf5}
.menu-lanyard-menu .menu-lanyard:nth-child(2){--badge:#f1dfbd;--badge-ink:#403126}
.menu-lanyard-menu .menu-lanyard:nth-child(3){--badge:#694635;--badge-ink:#fff8eb}
.menu-lanyard-menu .menu-badge{border:1px solid #fff5dc66;box-shadow:inset 0 1px 0 #fff5dc55,0 18px 36px #15291e40}
.menu-lanyard-menu .menu-cta .btn{background:#e5eccd!important;color:#2e4538;box-shadow:0 3px 0 #1e3327!important}
.menu-lanyard-menu .menu-cta .btn:hover{background:#f3f5e5!important}
.menu-lanyard-menu .menu-lanyard:focus-visible{outline-color:#e5eccd}
