:root{--lime:#efff54;--green:#174d3a;--ink:#152c25;--cream:#fff8df;--pink:#ffadbd;--orange:#ff7438;--line:2px solid var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,sans-serif;overflow-x:hidden}button,a{font:inherit;color:inherit}button{cursor:pointer}.topbar{height:82px;position:absolute;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid rgba(21,44,37,.25)}.logo{font-family:Unbounded;text-decoration:none;display:flex;align-items:center;gap:8px;font-weight:800}.logo-mark{display:grid;place-items:center;border:2px solid;border-radius:50%;height:34px;width:34px}.topbar nav{display:flex;gap:32px}.topbar nav a{text-decoration:none;font-weight:800;font-size:13px}.pill{border:var(--line);border-radius:50px;background:transparent;padding:11px 20px;font-weight:800}.pill:hover{background:var(--ink);color:var(--lime)}.hero{background:var(--lime);min-height:760px;height:100vh;position:relative;display:grid;grid-template-columns:54% 46%;overflow:hidden;padding-top:82px}.noise{position:absolute;inset:0;opacity:.12;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}.hero-copy{z-index:2;padding:9vh 0 100px 6vw}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;display:flex;align-items:center;gap:8px}.eyebrow span{width:24px;height:9px;background:var(--orange);border-radius:50%;display:inline-block;transform:rotate(-15deg)}h1,h2{font-family:Unbounded;margin:0;line-height:.86;letter-spacing:-.06em}h1{font-size:clamp(72px,10vw,155px);margin:32px 0}h1 span{display:block}h1 em,h2 em{display:block;color:var(--orange);font-family:Georgia,serif;font-weight:400;letter-spacing:-.07em;font-size:.65em;line-height:1;font-style:italic}.hero-text{font-weight:600;font-size:17px;line-height:1.6;max-width:450px}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:36px}.big-button{background:var(--orange);border:var(--line);border-radius:50px;padding:18px 24px;font-weight:800;box-shadow:5px 5px 0 var(--ink);transition:.2s}.big-button:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--ink)}.big-button b{margin-left:24px}.round-link{height:75px;width:75px;border:var(--line);border-radius:50%;display:grid;place-items:center;text-align:center;text-decoration:none;font-size:10px;font-weight:800;line-height:1.2;animation:bob 2.5s ease-in-out infinite}.hero-art{position:relative;background:var(--green);border-bottom-left-radius:45% 18%;overflow:hidden}.sun{position:absolute;width:76%;aspect-ratio:1;background:var(--orange);border-radius:50%;right:-8%;top:12%;animation:pulse 5s ease-in-out infinite}.bird{position:absolute;width:260px;height:330px;background:var(--cream);border:3px solid var(--ink);border-radius:48% 52% 45% 44%;bottom:13%;left:24%;transform:rotate(5deg);animation:bob 3.2s ease-in-out infinite}.eye{position:absolute;width:13px;height:18px;background:var(--ink);border-radius:50%;top:82px}.eye-left{left:82px}.eye-right{right:82px}.beak{width:58px;height:30px;background:var(--orange);border:3px solid var(--ink);position:absolute;top:107px;left:102px;border-radius:50% 50% 50% 0;transform:rotate(-10deg)}.wing{position:absolute;width:100px;height:140px;background:var(--pink);border:3px solid var(--ink);border-radius:50%;right:-38px;top:145px;transform:rotate(-22deg)}.tuft{position:absolute;top:-29px;left:95px;width:45px;height:55px;border-left:5px solid var(--ink);border-radius:50%;transform:rotate(35deg)}.leg{position:absolute;height:65px;width:4px;background:var(--ink);bottom:-60px}.leg:after{content:"";position:absolute;width:30px;height:4px;background:var(--ink);bottom:0;left:-13px}.leg-one{left:90px;transform:rotate(6deg)}.leg-two{right:86px;transform:rotate(-8deg)}.cucumber{position:absolute;width:80px;height:210px;background:#5da964;border:3px solid var(--ink);border-radius:50px;display:flex;flex-direction:column;align-items:center;justify-content:space-around}.cucumber i{width:5px;height:5px;border-radius:50%;background:var(--ink);opacity:.35}.c1{right:4%;top:18%;transform:rotate(23deg);animation:float 4s ease-in-out infinite}.c2{left:2%;bottom:5%;transform:rotate(-40deg) scale(.65);animation:float 5s ease-in-out infinite reverse}.stamp{position:absolute;right:6%;bottom:8%;border:2px solid var(--lime);color:var(--lime);border-radius:50%;height:100px;width:100px;display:grid;place-items:center;text-align:center;font:800 14px Unbounded;transform:rotate(12deg)}.scribble{position:absolute;color:var(--cream);font:italic 24px Georgia;left:7%;top:17%;transform:rotate(-12deg)}.ticker{position:absolute;bottom:0;height:48px;background:var(--pink);border-top:var(--line);border-bottom:var(--line);display:flex;align-items:center;width:100%;overflow:hidden;font:800 13px Unbounded;white-space:nowrap;z-index:5}.ticker div{animation:marquee 18s linear infinite}
.menu-section{padding:120px 5vw;background:var(--cream)}.section-head{display:grid;grid-template-columns:1fr 2fr 1.5fr;gap:30px;align-items:end;margin-bottom:55px}.dark span{background:var(--green)}h2{font-size:clamp(54px,7.3vw,112px)}.menu-tabs{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.menu-tabs button{border:var(--line);border-radius:40px;background:transparent;padding:9px 15px;font-size:12px;font-weight:800}.menu-tabs button.active,.menu-tabs button:hover{background:var(--ink);color:var(--cream)}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.menu-card{position:relative;border:var(--line);border-radius:28px;min-height:340px;padding:25px;display:flex;flex-direction:column;transition:.35s;box-shadow:0 0 0 var(--ink)}.menu-card:hover{transform:translate(-5px,-7px) rotate(-1deg);box-shadow:8px 9px 0 var(--ink)}.menu-card:nth-child(even):hover{transform:translate(5px,-7px) rotate(1deg)}.menu-card.hide{display:none}.menu-card p{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.menu-card h3{font:800 clamp(24px,3vw,42px)/1 Unbounded;letter-spacing:-.06em;margin:auto 0 14px}.menu-card span{font-size:13px}.menu-card b{position:absolute;right:22px;top:22px;border:var(--line);border-radius:40px;padding:7px 10px;background:var(--cream)}.dish-icon{font-size:72px;filter:saturate(.8);transform:rotate(-8deg);transition:.3s}.menu-card:hover .dish-icon{transform:rotate(8deg) scale(1.12)}.lime{background:var(--lime)}.cream{background:#fffdf4}.pink{background:var(--pink)}.orange{background:var(--orange)}.menu-note{text-align:center;font-size:11px;margin-top:30px;opacity:.55}.about{background:var(--green);color:var(--cream);padding:120px 7vw;display:grid;grid-template-columns:1fr 1.15fr;gap:8vw;align-items:center;min-height:800px}.about-orbit{aspect-ratio:1;border:2px solid var(--lime);border-radius:50%;position:relative;display:grid;place-items:center}.orbit-text{position:absolute;inset:-35px;color:var(--lime);font:800 14px Unbounded;animation:spin 14s linear infinite}.mini-bird{width:55%;height:65%;border-radius:50%;background:var(--lime);border:3px solid var(--ink);position:relative;animation:bob 3s ease-in-out infinite}.mini-bird:before,.mini-bird:after{content:"";position:absolute;width:12px;height:18px;background:var(--ink);border-radius:50%;top:35%;}.mini-bird:before{left:35%}.mini-bird:after{right:35%}.mini-bird i{position:absolute;width:60px;height:30px;background:var(--orange);border:3px solid var(--ink);border-radius:50%;left:calc(50% - 30px);top:46%}.about h2 em{color:var(--lime)}.about-copy>p:not(.eyebrow){font-size:17px;line-height:1.7;max-width:580px;margin:35px 0}.text-link{font-weight:800;color:var(--lime);text-decoration:none;border-bottom:1px solid;padding-bottom:5px}.text-link b{margin-left:20px}.visit{display:grid;grid-template-columns:1.1fr .9fr;min-height:720px;background:var(--pink)}.visit-copy{padding:110px 6vw}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin:45px 0}.info-grid div{border-top:var(--line);padding-top:10px}.info-grid small{display:block;font-size:10px;text-transform:uppercase;font-weight:800;margin-bottom:8px}.dark-button{background:var(--ink);color:var(--cream)}.map-art{position:relative;overflow:hidden;border-left:var(--line);background:var(--lime)}.river{position:absolute;background:#a7dcff;width:220px;height:130%;left:26%;top:-15%;transform:rotate(18deg);display:grid;place-items:center;color:#3b7592;font:800 13px Unbounded;letter-spacing:.4em;writing-mode:vertical-rl}.road{position:absolute;height:3px;background:var(--ink);width:130%;left:-10%}.r1{top:30%;transform:rotate(-20deg)}.r2{top:64%;transform:rotate(12deg)}.r3{top:82%;transform:rotate(-35deg)}.pin{position:absolute;top:45%;left:55%;animation:bob 2s ease-in-out infinite}.pin span{display:grid;place-items:center;width:90px;height:90px;background:var(--orange);border:3px solid var(--ink);border-radius:50% 50% 50% 0;transform:rotate(-45deg);font:800 45px Unbounded}.pin span::first-letter{transform:rotate(45deg)}.pin b{display:block;margin:20px 0 0 12px;transform:rotate(-7deg)}footer{background:var(--ink);color:var(--cream);padding:28px 5vw;display:flex;align-items:center;justify-content:space-between;font-size:11px}dialog{border:var(--line);border-radius:28px;background:var(--lime);color:var(--ink);padding:40px;max-width:600px;width:calc(100% - 30px);box-shadow:12px 12px 0 var(--ink)}dialog::backdrop{background:rgba(15,38,30,.82);backdrop-filter:blur(8px)}dialog h2{font-size:62px;margin:18px 0 30px}.close{position:absolute;right:18px;top:15px;background:transparent;border:0;font-size:34px}.booking label{font-size:11px;font-weight:800;text-transform:uppercase;display:block;margin-bottom:13px}.booking input,.booking select{display:block;width:100%;border:var(--line);border-radius:12px;background:var(--cream);padding:13px;margin-top:5px;font:600 15px Manrope}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-note{font-size:10px;opacity:.6}.success{display:none;text-align:center}.success.active{display:block}.success-face{margin:auto;background:var(--pink);border:var(--line);border-radius:50%;width:110px;height:110px;display:grid;place-items:center;font:800 30px Unbounded}.booking.done form{display:none}.reveal{opacity:0;transform:translateY(35px);transition:.8s ease}.reveal.visible{opacity:1;transform:none}.cursor-dot{pointer-events:none;position:fixed;z-index:100;width:12px;height:12px;background:var(--orange);border:2px solid var(--ink);border-radius:50%;transform:translate(-50%,-50%);transition:width .2s,height .2s}
@keyframes marquee{to{transform:translateX(-50%)}}@keyframes bob{50%{transform:translateY(-12px) rotate(2deg)}}@keyframes float{50%{translate:0 25px;rotate:12deg}}@keyframes pulse{50%{transform:scale(1.06)}}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.topbar nav{display:none}.hero{height:auto;min-height:900px;grid-template-columns:1fr;grid-template-rows:1fr 420px}.hero-copy{padding:100px 6vw 40px}.hero-art{border-radius:40% 40% 0 0}.bird{transform:scale(.75);transform-origin:bottom;left:calc(50% - 130px);bottom:6%}.section-head{grid-template-columns:1fr}.menu-tabs{justify-content:flex-start}.menu-grid{grid-template-columns:1fr 1fr}.about,.visit{grid-template-columns:1fr}.about-orbit{max-width:500px}.map-art{min-height:500px;border-left:0;border-top:var(--line)}}@media(max-width:600px){.topbar{height:70px;padding:0 16px}.topbar .pill{font-size:10px;padding:10px}.hero{padding-top:70px}.hero-copy{padding-top:55px}.hero h1{font-size:60px}.hero-text{font-size:14px}.hero-actions{align-items:flex-start}.big-button{padding:15px 17px;font-size:12px}.round-link{width:62px;height:62px}h2{font-size:49px}.menu-section,.about{padding:80px 16px}.menu-grid{grid-template-columns:1fr}.menu-card{min-height:280px}.about{gap:70px}.visit-copy{padding:80px 16px}.info-grid{grid-template-columns:1fr}.map-art{min-height:420px}footer{gap:20px;align-items:flex-start;flex-direction:column}.cursor-dot{display:none}dialog{padding:28px 18px}dialog h2{font-size:45px}.form-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

/* Brand character and illustrated Fontanka map */
.logo-chick{position:relative;width:31px;height:38px;background:var(--orange);border:2px solid var(--ink);border-radius:48% 52% 43% 45%;display:inline-block;transform:rotate(-5deg)}
.logo-chick:before{content:"";position:absolute;width:6px;height:7px;background:var(--cream);border:2px solid var(--ink);border-radius:50%;right:4px;top:7px}
.logo-chick:after{content:"";position:absolute;width:10px;height:7px;background:var(--lime);border:2px solid var(--ink);border-left:0;border-radius:0 70% 70% 0;right:-9px;top:15px}
.logo-chick i,.logo-chick b{position:absolute;width:2px;height:8px;background:var(--ink);bottom:-7px}.logo-chick i{left:9px}.logo-chick b{right:8px}
.bird{background:var(--lime);border-radius:46% 54% 42% 48%}.bird:after{content:"";position:absolute;inset:15px;border:2px dashed rgba(21,44,37,.18);border-radius:48%}
.eye{z-index:3}.beak{z-index:4;width:52px;height:26px;left:107px}.cheek{position:absolute;width:30px;height:16px;background:var(--pink);border-radius:50%;right:55px;top:126px;transform:rotate(-8deg)}.wing{z-index:4}.apron{position:absolute;z-index:3;width:155px;height:125px;left:52px;bottom:18px;background:var(--green);border:3px solid var(--ink);border-radius:55% 45% 42% 48%}.apron:before,.apron:after{content:"";position:absolute;width:55px;height:3px;background:var(--ink);top:-24px}.apron:before{left:5px;transform:rotate(58deg)}.apron:after{right:5px;transform:rotate(-58deg)}.apron span{position:absolute;right:23px;bottom:18px;font-size:32px;transform:rotate(12deg)}
.tuft:after{content:"";position:absolute;width:35px;height:45px;border-left:5px solid var(--ink);border-radius:50%;left:15px;top:3px;transform:rotate(35deg)}
.map-art{background:#ffd36c;background-image:radial-gradient(rgba(21,44,37,.18) 1px,transparent 1px);background-size:15px 15px}.map-title{position:absolute;z-index:8;top:30px;left:30px;background:var(--cream);border:var(--line);box-shadow:4px 4px 0 var(--ink);padding:10px 13px;font:800 12px Unbounded;transform:rotate(-2deg)}.map-title span{color:var(--orange);font-size:18px}.block{position:absolute;background:#f9a98e;border:2px solid var(--ink);border-radius:12px;opacity:.82}.b1{width:38%;height:20%;left:-6%;top:19%;transform:rotate(-7deg)}.b2{width:31%;height:25%;right:-3%;top:13%;transform:rotate(8deg)}.b3{width:29%;height:22%;left:-4%;bottom:15%;transform:rotate(5deg)}.b4{width:34%;height:24%;right:-3%;bottom:7%;transform:rotate(-8deg)}.b5{width:25%;height:16%;right:5%;top:42%;transform:rotate(5deg)}.river{z-index:2;left:32%;width:145px;background:#83d4d5;border-left:3px solid var(--ink);border-right:3px solid var(--ink);transform:rotate(12deg)}.river span{transform:rotate(180deg);font-size:10px}.bridge{position:absolute;z-index:4;width:170px;height:30px;border:2px solid var(--ink);background:var(--cream);display:grid;place-items:center;font-size:8px;font-weight:800;transform:rotate(12deg)}.br1{left:25%;top:29%}.br2{left:32%;bottom:21%}.landmark{position:absolute;z-index:5;display:flex;align-items:center;gap:7px;font-size:9px;line-height:1.1}.landmark i{display:grid;place-items:center;width:38px;height:38px;background:var(--cream);border:var(--line);border-radius:50%;font-style:normal;font-weight:800}.station{right:8%;top:24%}.station i{background:var(--pink)}.cathedral{left:5%;bottom:28%}.route{position:absolute;z-index:5;width:190px;height:175px;right:18%;top:31%;border-right:4px dashed var(--green);border-bottom:4px dashed var(--green);border-radius:0 0 80px 0;transform:rotate(-8deg)}.route:before{content:"";position:absolute;width:12px;height:12px;background:var(--green);border-radius:50%;top:-4px;right:-8px}.pin{z-index:7;top:50%;left:50%;display:grid;justify-items:center}.pin span{position:relative;width:86px;height:103px;background:var(--lime);border-radius:48% 52% 43% 45%;transform:rotate(-7deg);font:inherit}.pin span:before{content:"";position:absolute;width:13px;height:16px;background:var(--cream);border:3px solid var(--ink);border-radius:50%;right:18px;top:20px}.pin span:after{content:"";position:absolute;width:26px;height:15px;background:var(--orange);border:3px solid var(--ink);border-left:0;border-radius:0 70% 70% 0;right:-21px;top:42px}.pin span i,.pin span b{position:absolute;width:3px;height:25px;background:var(--ink);bottom:-21px}.pin span i{left:25px}.pin span b{right:25px}.pin strong{margin-top:23px;background:var(--ink);color:var(--lime);padding:5px 9px;border-radius:15px;font:800 12px Unbounded;transform:rotate(-4deg)}.pin small{margin-top:4px;font-size:9px;font-weight:800}.pin>b{display:none}
@media(max-width:600px){.map-title{top:18px;left:16px}.river{left:29%;width:110px}.bridge{width:130px}.br1{left:22%}.br2{left:29%}.pin{left:48%;top:46%}.station{right:3%}.cathedral{left:2%}.route{right:9%}}
.full-menu{margin-top:80px;border:var(--line);border-radius:32px;background:var(--ink);color:var(--cream);padding:42px;box-shadow:10px 10px 0 var(--orange)}.full-menu-title{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid rgba(255,248,223,.35);padding-bottom:25px;margin-bottom:34px}.full-menu-title span{font:800 clamp(35px,5vw,72px)/.9 Unbounded;letter-spacing:-.07em;color:var(--lime)}.full-menu-title p{font:italic 22px Georgia;max-width:260px;margin:0;color:var(--pink)}.menu-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:50px 55px}.menu-columns section h3{font:800 16px Unbounded;margin:0 0 20px;color:var(--pink);text-transform:uppercase}.menu-columns section h3 i{font:800 10px Manrope;font-style:normal;display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid var(--pink);border-radius:50%;margin-right:8px}.menu-line{position:relative;display:grid;grid-template-columns:1fr auto;gap:2px 20px;padding:11px 0;border-bottom:1px dashed rgba(255,248,223,.25)}.menu-line b{font-size:14px}.menu-line span{font:800 13px Unbounded;color:var(--lime)}.menu-line small{font-size:10px;opacity:.55;grid-column:1/3}.full-menu-note{margin:38px 0 0;padding-top:18px;border-top:1px solid rgba(255,248,223,.35);font-size:10px;opacity:.55;text-align:center}.menu-note{display:none}@media(max-width:700px){.full-menu{margin-top:55px;padding:28px 18px;border-radius:24px;box-shadow:6px 6px 0 var(--orange)}.full-menu-title{align-items:start;gap:20px;flex-direction:column}.full-menu-title p{font-size:17px}.menu-columns{grid-template-columns:1fr;gap:38px}}
