:root{--ink:#233d49;--green:#4aaf56;--paper:#f5f6f2;--line:#dbe1d9}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:transducer,Arial,sans-serif;font-size:15px}a{color:inherit;text-underline-offset:5px}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--ink);outline-offset:5px}header{max-width:1320px;margin:auto;padding:30px 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}header img{display:block;object-fit:contain;width:150px;height:50px}.header-note{display:flex;gap:10px;align-items:center;font-size:12px}.header-note i{height:7px;width:7px;border-radius:50%;background:var(--green)}.location{font-size:12px;text-decoration:none}main{max-width:1224px;margin:auto;padding:64px 0 0}.intro{position:relative;padding-bottom:42px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;margin-bottom:22px}h1{font-family:transducer-extended,transducer,Arial,sans-serif;font-size:clamp(42px,5.8vw,78px);line-height:1.08;letter-spacing:-3px;margin:0;font-weight:600}h1 span{color:var(--green)}.intro>p{font-size:16px;line-height:1.7;position:absolute;right:40px;bottom:48px;margin:0}.week-label{font-size:11px;margin-top:24px;display:flex;align-items:center;gap:9px}.week-label:before{content:"";height:6px;width:6px;background:var(--green);border-radius:100%}.lunch-card{display:grid;grid-template-columns:44% 56%;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;min-height:515px}.card-art{background:var(--green);position:relative;padding:28px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.art-top,.art-bottom{display:flex;justify-content:space-between;position:relative;z-index:1;font-size:9px;font-weight:600;letter-spacing:1.5px}.art-bottom{padding-top:10px;border-top:1px solid #233d4933;font-size:11px}.art-bottom span{font-size:8px}.plate{margin:8px auto 18px;width:100%;max-width:425px;transform:rotate(-8deg)}.plate svg{width:100%;display:block;filter:drop-shadow(0 14px 14px #233d4920)}.round-stamp{position:absolute;bottom:64px;right:23px;height:92px;width:92px;display:grid;place-content:center;border-radius:50%;background:var(--ink);color:white;font-family:transducer-extended,sans-serif;font-size:9px;text-align:center;line-height:1.5;transform:rotate(14deg)}.card-content{padding:35px 40px;display:flex;flex-direction:column}.card-meta{display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:1px;font-weight:600;margin-bottom:27px}.card-meta span:first-child{color:#357b3e}.card-meta span:last-child{color:#677680}h2{font-family:transducer-extended,transducer,Arial,sans-serif;font-weight:600;font-size:clamp(25px,3vw,38px);line-height:1.15;letter-spacing:-1px;margin:0 0 16px;overflow-wrap:anywhere}.description{line-height:1.7;font-size:14px;max-width:480px;margin:0 0 20px}.details{border-top:1px solid var(--line);padding-top:10px;font-size:11px}.details p{margin:8px 0;line-height:1.6}.details p:first-child:before{content:'↗ ';color:#357b3e}.place-note{font-size:11px;color:#62717a;line-height:1.6;margin:12px 0 18px}.links{display:flex;flex-wrap:wrap;gap:13px;font-size:11px;margin-bottom:22px}.links[hidden]{display:none}.shuffle-row{margin-top:auto}.shuffle-row button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:7px;padding:17px 21px;font:500 13px transducer,Arial,sans-serif;display:flex;align-items:center;gap:16px;width:100%;justify-content:space-between;transition:background .15s,transform .15s}.shuffle-row button:hover{background:#355a6a;transform:translateY(-1px)}.shuffle-row button:disabled{opacity:.5;cursor:wait}.shuffle-row button span:first-child{font-size:24px;line-height:16px}.shuffle-row p{font-size:10px;text-align:center;color:#62717a;margin:11px 0 0}.reset{border:0;background:none;padding:10px 0 0;text-decoration:underline;text-underline-offset:3px;color:var(--ink);font:inherit;font-size:10px;cursor:pointer}.below{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:43px 0}.ritual{display:flex;gap:20px}.number{font-size:11px;color:#357b3e;padding-top:3px}h3{font-size:14px;margin:0 0 10px;font-weight:600}.ritual p{font-size:12px;line-height:1.8;margin:0;color:#62717a}.places{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin-bottom:55px}.places summary{cursor:pointer;font-size:12px;display:flex;gap:8px;align-items:center;list-style:none}.places summary::-webkit-details-marker{display:none}.places summary>span:last-child{margin-left:auto;font-size:20px}.places[open] summary>span:last-child{transform:rotate(45deg)}#all-places{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:24px}#all-places a{font-size:12px;line-height:1.7}#all-places small{display:block;font-size:10px;color:#62717a}.source-note{font-size:10px;line-height:1.7;color:#62717a;margin-top:24px;max-width:750px}footer{background:var(--ink);color:#fff;padding:30px max(48px,calc((100vw - 1224px)/2));display:flex;gap:20px;align-items:center;justify-content:space-between;font-size:10px}footer strong{font-size:20px;white-space:nowrap}footer strong span{color:#8bda92;font-size:12px;margin-left:10px}footer>a{white-space:nowrap}.error{font-size:12px;color:#a32b2b} [hidden]{display:none!important}@media(min-width:1500px){main{padding-top:70px}}@media(max-width:1320px){main{margin:0 48px}.intro>p{right:0}}@media(max-width:850px){header{padding:20px 24px}.header-note{display:none}main{margin:0 24px;padding-top:40px}.intro>p{position:static;font-size:14px;margin-top:22px}.intro{padding-bottom:30px}h1{letter-spacing:-2px}.lunch-card{grid-template-columns:1fr}.card-art{min-height:290px;padding:22px}.plate{max-width:280px;margin:-8px auto}.round-stamp{height:73px;width:73px;font-size:8px;bottom:43px;right:22px}.card-content{padding:28px}.card-meta{margin-bottom:22px}.below{gap:28px;padding:32px 0;grid-template-columns:1fr}.places{margin-bottom:35px}#all-places{grid-template-columns:1fr 1fr}footer{padding:26px 24px;flex-wrap:wrap}footer>span{order:3;width:100%}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
