:root{--ink: #111}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:#fff;color:var(--ink);font-family:Old Standard TT,Times New Roman,serif;overflow:hidden;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}.frame{position:fixed;top:10px;right:10px;bottom:10px;left:10px;border:1px solid var(--ink)}.frame:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border:1px solid var(--ink);pointer-events:none}.screen{position:absolute;top:4px;right:4px;bottom:4px;left:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px 22px;text-align:center;overflow:hidden}.fade{animation:fade .7s ease both}@keyframes fade{0%{opacity:0}to{opacity:1}}.caps{text-transform:uppercase;letter-spacing:.08em}.script{font-family:Pinyon Script,cursive;font-weight:400;text-transform:none}.logo{line-height:1;margin-bottom:10px}.logo-top{font-weight:700;font-size:2rem;letter-spacing:.04em}.logo-top sup{font-size:.45em;vertical-align:1em;letter-spacing:.02em;margin-right:.1em}.logo-script{font-family:Pinyon Script,cursive;font-size:3.1rem;margin-top:-.22em;transform:translate(-.15em)}.logo-small .logo-top{font-size:1.2rem}.logo-small .logo-script{font-size:1.85rem}.logo-finale .logo-script{font-size:3.6rem}.address{font-size:.66rem;line-height:1.8;max-width:100%}.sub{font-weight:700;font-size:.85rem;margin-top:18px}.screen-course{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr auto;justify-items:center;gap:0;padding-top:32px}.screen-course .logo{margin-bottom:0}.screen-course .course-label,.screen-course .plate{animation:fade .7s ease both}.screen-course .course-label{margin-top:clamp(48px,11dvh,110px)}.plate{align-self:stretch;justify-content:flex-start;margin-top:28px;display:flex;flex-direction:column;align-items:center;gap:14px;min-height:0}.course-label{font-size:.7rem;border-bottom:1px solid var(--ink);padding-bottom:4px}.photo{width:min(72vw,320px);max-height:26dvh;aspect-ratio:4 / 3;object-fit:cover;border:1px solid var(--ink);padding:3px;background:#fff;filter:saturate(.85) contrast(1.02)}.plate-photos{display:flex;justify-content:center;align-items:center;gap:8px;min-height:0;margin-top:2px;animation:fade 1.1s ease 1s both}.photo-tall{width:auto;aspect-ratio:auto;max-width:min(72vw,300px);max-height:28dvh;min-height:0}.plate-photos.slow{animation-duration:2s}.plate-photos.two .photo-tall{max-width:calc(50% - 4px);max-height:24dvh}.item-name{font-size:clamp(2.1rem,9vw,2.8rem)}.item-desc{font-size:.78rem;line-height:1.7;max-width:34ch}.item-price{font-weight:700;font-size:.9rem}.course-finale .course-label{animation:fade .9s ease 1s both}.course-finale .item-name{animation:fade .9s ease 2s both}.course-finale .item-desc{animation:fade .9s ease 3s both}.course-finale .nav{animation:fade-btn .9s ease 4s both}@keyframes fade-btn{0%{opacity:0;pointer-events:none}to{opacity:1;pointer-events:auto}}.btn{font-family:inherit;font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;background:#fff;color:var(--ink);border:1px solid var(--ink);padding:13px 30px;margin-top:12px;cursor:pointer}.btn:active{background:var(--ink);color:#fff}.nav{justify-self:stretch;display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;animation:fade-btn .8s ease 1s both}.nav .btn{margin-top:0;font-size:clamp(.6rem,2.9vw,.72rem);letter-spacing:.1em;padding:12px clamp(11px,4vw,22px);white-space:nowrap}.btn-yes{animation:fade-btn .9s ease 4.2s backwards}.logo-swap{position:relative;display:grid;justify-items:center}.logo-swap .logo{grid-area:1 / 1}.logo-hudson{opacity:0}.accepted .logo-swap .logo-hudson{animation:logo-return 1.5s ease .5s both}@keyframes logo-return{0%{opacity:0}37%{opacity:1}64%{opacity:1}to{opacity:0}}.logo-swap .logo-finale{opacity:0;transition:opacity 1s ease 2.1s}.accepted .logo-finale{opacity:1}.ring{position:absolute;top:100%;left:0;right:0;margin-top:14px;font-size:3.2rem;opacity:0;transition:opacity .8s ease 3.3s;pointer-events:none;cursor:pointer;-webkit-user-select:none;user-select:none}.accepted .ring{opacity:1;pointer-events:auto}.fadeable{transition:opacity .6s ease}.accepted .fadeable{opacity:0;pointer-events:none}.screen-proposal{padding-bottom:14dvh}.proposal-text{font-size:clamp(1.9rem,8vw,2.8rem);line-height:1.3;align-self:stretch;padding:0 .5em;margin:8px 0}.proposal-text span{display:block}.proposal-name{animation:fade .9s ease 1s both}.proposal-question{animation:fade .9s ease 2s both}
