@font-face {
  font-family: 'Righteous';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/righteous-normal-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Righteous';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/righteous-normal-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Recursive';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/fonts/recursive-normal-400-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Recursive';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/fonts/recursive-normal-400-700-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:130px;-webkit-text-size-adjust:100%;background:var(--bg)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
body{margin:0;background:var(--bg);color:var(--fg);font:400 17px/1.6 var(--fb);overflow-x:hidden;padding-bottom:calc(64px + env(safe-area-inset-bottom))}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
h1,h2,h3,h4,p,ul,ol,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
button{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--focus,var(--a));outline-offset:3px;border-radius:6px}
.tp-skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--fg);color:var(--bg);padding:12px 16px;border-radius:8px}
.tp-skip:focus{top:12px}
.tp-wrap{max-width:1180px;margin:0 auto;padding:0 20px}
svg[viewBox="0 0 24 24"]{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.tp-top{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;gap:12px;height:62px;padding:0 14px;transition:background-color .3s}
.tp-top .tp-brand{visibility:hidden}
.tp-top.is-solid{background:var(--topbg);box-shadow:0 1px 0 var(--line)}
.tp-top.is-solid .tp-brand{visibility:visible}
.tp-brand{display:flex;align-items:center;min-height:44px;font:var(--brandf);text-decoration:none;color:var(--brandc,var(--fg))}
.tp-nav,.tp-top-tel{display:none}
.tp-lang{display:flex;margin-left:auto;border:1.5px solid var(--langb,var(--fg));border-radius:var(--rb);padding:2px;background:var(--topbg)}
.tp-lang a{display:grid;place-items:center;min-width:44px;min-height:44px;border-radius:var(--rb);font:700 15px var(--fb);text-decoration:none;color:var(--topfg,var(--fg))}
.tp-lang a[aria-current]{background:var(--a);color:var(--aink)}
.tp-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr)}
.tp-hero-ph{position:relative;height:46svh;min-height:270px;overflow:hidden}
.tp-hero-ph img{width:100%;height:100%;object-fit:cover}
.tp-hero-txt{position:relative;padding:22px 20px 30px}
.tp-kicker{font:700 14px/1.3 var(--fb);letter-spacing:.12em;text-transform:uppercase;color:var(--kick,var(--a))}
.tp-h1{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:10px;font-weight:inherit}
.tp-h1-b{font:700 clamp(20px,5.6vw,25px)/1.28 var(--fb);max-width:26ch}
.tp-status{display:flex;width:max-content;max-width:100%;align-items:center;gap:9px;margin-top:14px;padding:7px 14px;border-radius:99px;background:var(--chip);border:1px solid var(--line);font:700 16px var(--fb)}
.tp-dot{width:10px;height:10px;border-radius:50%;background:var(--mut);flex:none}
[data-state=open] .tp-dot{background:var(--ok);box-shadow:0 0 0 4px color-mix(in srgb,var(--ok) 25%,transparent)}
[data-state=closed] .tp-dot{background:var(--no)}
.tp-sub{margin-top:14px;max-width:48ch;color:var(--mut)}
.tp-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.tp-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;padding:0 22px;border-radius:var(--rb);font:700 16.5px var(--fb);text-decoration:none;text-align:center;transition:background-color .2s,transform .2s}
.tp-btn:active{transform:translateY(1px)}
.tp-btn-a{background:var(--a);color:var(--aink)}
.tp-btn-line{border:2px solid var(--lineb,var(--fg));color:var(--fg)}
.tp-cta .tp-btn{flex:1 1 auto}
.tp-rating{display:flex;align-items:center;gap:8px;margin-top:16px;font:700 15.5px var(--fb);color:var(--mut)}
.tp-rating svg{fill:var(--star,var(--a));stroke:none;width:20px;height:20px}
.tp-facts{display:grid;grid-template-columns:1fr 1fr;background:var(--bg2);border-block:1px solid var(--line)}
.tp-facts li{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;padding:16px;border-bottom:1px solid var(--line)}
.tp-facts li:nth-child(odd){border-right:1px solid var(--line)}
.tp-facts svg{grid-row:span 2;color:var(--icon,var(--a));width:26px;height:26px}
.tp-facts strong{font:700 17px/1.3 var(--fb)}
.tp-facts span{font-size:15px;line-height:1.35;color:var(--mut)}
.tp-head{max-width:720px}
.tp-eyebrow{display:inline-flex;align-items:center;gap:10px;font:700 14px/1 var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--kick,var(--a));margin-bottom:12px}
.tp-h2{font:var(--h2f);color:var(--h2c,var(--fg))}
.tp-lead{margin-top:12px;font-size:17.5px;color:var(--mut)}
/* menu */
.tp-menu{padding:60px 0 40px}
.tp-chips{position:sticky;top:62px;z-index:30;margin-top:22px;background:var(--bg);border-block:1px solid var(--line)}
.tp-chips-l{position:relative;display:flex;gap:6px;max-width:1180px;margin:0 auto;padding:8px 20px;overflow-x:auto;scrollbar-width:none}
.tp-chips-l::-webkit-scrollbar{display:none}
.tp-chip{position:relative;z-index:1;display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:var(--rb);white-space:nowrap;font:700 16px var(--fb);text-decoration:none;transition:color .2s}
.tp-chip.is-on{color:var(--aink)}
.tp-chips-ind{position:absolute;z-index:0;left:0;top:0;width:var(--w,0);height:var(--h,0);transform:translate(var(--x,0),var(--y,0));border-radius:var(--rb);background:var(--a);transition:transform .35s cubic-bezier(.3,.8,.3,1),width .35s}
.tp-cats{display:grid;gap:40px;padding-top:30px}
.tp-cat{display:grid;gap:18px}
.tp-cat-ph{border-radius:var(--r);overflow:hidden}
.tp-cat-ph img{width:100%;aspect-ratio:1.6;object-fit:cover}
.tp-cat h3{font:var(--h3f);color:var(--h3c,var(--fg))}
.tp-cat-note{margin-top:4px;font-size:15.5px;color:var(--mut)}
.tp-cat ul{margin-top:10px}
.tp-mi{padding:12px 0;border-bottom:1px dashed var(--line)}
.tp-mi-h{display:flex;align-items:baseline;gap:8px}
.tp-mi h4{font:700 17.5px/1.3 var(--fb)}
.tp-mi-dots{flex:1;min-width:12px;border-bottom:2px dotted var(--line)}
.tp-mi b{font:var(--pricef);color:var(--price,var(--a));white-space:nowrap}
.tp-mi p{margin-top:3px;font-size:16px;line-height:1.45;color:var(--mut);max-width:60ch}
.tp-m-src{font-size:15.5px;color:var(--mut)}
/* spec */
.tp-spec{padding:60px 0;background:var(--bg2);border-block:1px solid var(--line)}
.tp-spec-l{display:flex;gap:14px;margin:26px -20px 22px;padding:0 20px 6px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}
.tp-spec-l li{flex:0 0 72%;scroll-snap-align:start}
.tp-spec-l figure{border-radius:var(--r);overflow:hidden}
.tp-spec-l img{width:100%;aspect-ratio:.85;object-fit:cover}
.tp-spec-l h3{margin-top:12px;font:var(--h3f);color:var(--h3c,var(--fg))}
.tp-spec-l p{margin-top:4px;font-size:16px;color:var(--mut)}
.tp-spec-cta{display:grid;gap:10px}
.tp-spec-cta p{font-size:15.5px;color:var(--mut)}
/* gallery, quotes, visit */
.tp-lokal{padding:60px 0}
.tp-gal{display:grid;gap:10px;margin-top:26px}
.tp-gal li{border-radius:var(--r);overflow:hidden}
.tp-gal img{width:100%;aspect-ratio:1.3;object-fit:cover}
.tp-q{padding:60px 0;background:var(--bg2);border-block:1px solid var(--line)}
.tp-quotes{display:grid;gap:12px;margin-top:26px}
.tp-quotes li{padding:22px 20px;border-radius:var(--r);background:var(--card);border:1px solid var(--line)}
.tp-quotes blockquote p{font-size:17.5px;line-height:1.6}
.tp-q-by{margin-top:10px;font-weight:700;color:var(--kick,var(--a))}
.tp-q-src{margin-top:18px;font-size:15.5px;color:var(--mut)}
.tp-visit{padding:60px 0}
.tp-visit-g{display:grid;gap:28px}
.tp-v-ph{margin-top:18px;border-radius:var(--r);overflow:hidden}
.tp-v-ph img{width:100%;aspect-ratio:1.4;object-fit:cover}
.tp-addr{margin:16px 0 4px;font:700 21px/1.4 var(--fb)}
.tp-hours-card{padding:22px 20px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);align-self:start}
.tp-hours-card h3{font:var(--h3f);color:var(--h3c,var(--fg))}
.tp-status-lg{margin:12px 0 10px}
.tp-hours li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:16.5px}
.tp-hours li.is-today{font-weight:700;color:var(--today,var(--a))}
.tp-h-note{margin-top:12px;font-size:15.5px;color:var(--mut)}
.tp-big-l{margin-top:16px;font-weight:700}
.tp-bigtel{display:flex;align-items:center;gap:10px;min-height:44px;font:var(--bigtelf);color:var(--bigc,var(--a));text-decoration:none}
.tp-bigtel svg{width:28px;height:28px}
.tp-foot{padding:42px 0 30px;background:var(--footbg);color:var(--footfg);border-top:1px solid var(--line)}
.tp-foot-row{display:grid;gap:18px}
.tp-foot-word{font:var(--brandf);font-size:34px;color:var(--footw,var(--a))}
.tp-foot-name{font:700 19px var(--fb)}
.tp-foot p{color:var(--footmut,var(--mut))}
.tp-adult{margin-top:6px;font-size:15px}
.tp-foot ul{display:grid;gap:2px}
.tp-foot ul a{display:inline-flex;align-items:center;gap:10px;min-height:44px;text-decoration:none;overflow-wrap:anywhere}
.tp-foot ul svg{color:var(--footw,var(--a))}
.tp-dock{position:fixed;inset:auto 0 0 0;z-index:60;display:grid;grid-template-columns:1fr 1.15fr 1fr;background:var(--dockbg);color:var(--dockfg);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}
.tp-dock a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:62px;text-decoration:none;font:700 15px var(--fb)}
.tp-dock .tp-dock-hot{background:var(--a);color:var(--aink)}
.js .tp-rv{opacity:0;transform:translateY(14px);transition:opacity .6s ease var(--d,0s),transform .6s ease var(--d,0s)}
.js .tp-rv.is-in{opacity:1;transform:none}
@media (min-width:600px){
 .tp-facts{grid-template-columns:repeat(4,1fr)}
 .tp-facts li{border-right:1px solid var(--line)}
 .tp-spec-l{display:grid;grid-template-columns:repeat(2,1fr);overflow:visible;margin:26px 0 22px;padding:0}
 .tp-gal{grid-template-columns:1fr 1fr}
 .tp-quotes{grid-template-columns:repeat(3,1fr)}
 .tp-spec-cta{grid-template-columns:auto 1fr;align-items:center;gap:18px}
}
@media (min-width:960px){
 html{scroll-padding-top:150px}
 body{padding-bottom:0}
 .tp-wrap{padding:0 32px}
 .tp-top{height:74px;padding:0 28px;gap:26px;background:var(--topbg);box-shadow:0 1px 0 var(--line)}
 .tp-top .tp-brand{visibility:visible}
 .tp-nav{display:flex;gap:4px;margin-left:12px}
 .tp-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;text-decoration:none;font-weight:700;font-size:16px;color:var(--topfg,var(--fg))}
 .tp-top-tel{display:inline-flex;align-items:center;gap:8px;margin-left:auto;min-height:46px;padding:0 18px;border-radius:var(--rb);background:var(--a);color:var(--aink);text-decoration:none;font-weight:700}
 .tp-lang{margin-left:0}
 .tp-chips{top:74px}
 .tp-chips-l{padding:8px 32px}
 .tp-hero{grid-template-columns:44% 56%;min-height:min(100vh,860px);padding-top:74px}
 .tp-hero-ph{order:2;height:auto}
 .tp-hero-txt{order:1;margin:0;display:flex;flex-direction:column;justify-content:center;padding:40px 40px 40px max(32px,calc((100vw - 1180px)/2 + 32px))}
 .tp-cta .tp-btn{flex:none}
 .tp-hero-txt .tp-cta{flex-wrap:nowrap}
 .tp-cat{grid-template-columns:340px 1fr;gap:40px;align-items:start}
 .tp-cat-ph{position:sticky;top:150px}
 .tp-cat-ph img{aspect-ratio:1}
 .tp-spec-l{grid-template-columns:repeat(4,1fr);gap:22px}
 .tp-gal{grid-template-columns:1.3fr 1fr;grid-auto-rows:1fr}
 .tp-gal li:first-child{grid-row:span 2}
 .tp-gal li:first-child img{height:100%;aspect-ratio:auto}
 .tp-visit-g{grid-template-columns:1.2fr 1fr;gap:56px}
 .tp-foot-row{grid-template-columns:auto 1fr auto;align-items:center;gap:40px}
 .tp-dock{display:none}
}

:root{--bg:#FFF6E8;--bg2:#FBE9D2;--card:#FFFFFF;--fg:#1B1030;--mut:#4A3D5C;--a:#D6246E;--aink:#FFFFFF;--line:rgba(27,16,48,.16);--chip:#FFFFFF;--ok:#0F8C7A;--no:#C8202F;
 --topbg:rgba(27,16,48,.94);--topfg:#FFF6E8;--langb:#FFE14D;--rb:12px;--r:18px;--kick:#B8135A;--focus:#19B5B0;
 --fh:'Righteous','Arial Rounded MT Bold',system-ui,sans-serif;--fb:'Recursive',system-ui,-apple-system,'Segoe UI',sans-serif;
 --brandf:400 24px/1 var(--fh);--brandc:#FFE14D;--h2f:400 clamp(30px,8vw,50px)/1.08 var(--fh);--h3f:400 26px/1.15 var(--fh);--pricef:400 19px var(--fh);--price:#B8135A;--bigtelf:400 32px/1.2 var(--fh);--bigc:#B8135A;
 --footbg:#1B1030;--footfg:#FFF6E8;--footmut:#D9CDE8;--footw:#FFE14D;--dockbg:#1B1030;--dockfg:#FFF6E8;--today:#B8135A;--star:#FF8A3D}
.tp-tartan,.tp-shelf::before{background:
 repeating-linear-gradient(90deg,rgba(255,255,255,.0) 0 14px,rgba(20,10,30,.28) 14px 22px,rgba(255,255,255,0) 22px 40px,rgba(255,225,77,.35) 40px 42px,rgba(255,255,255,0) 42px 56px),
 repeating-linear-gradient(0deg,rgba(255,255,255,0) 0 14px,rgba(20,10,30,.28) 14px 22px,rgba(255,255,255,0) 22px 40px,rgba(255,225,77,.35) 40px 42px,rgba(255,255,255,0) 42px 56px),#C8202F}
.tp-hero{background:#1B1030;color:#FFF6E8}
.tp-hero-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(27,16,48,.5) 0,transparent 30%,transparent 62%,#1B1030 100%)}
.tp-tartan{position:absolute;left:0;right:0;bottom:0;height:14px;z-index:2}
.tp-hero-txt{z-index:3}
.tp-hero .tp-kicker{color:#FFE14D}
.tp-word{font:400 clamp(58px,17vw,78px)/.9 var(--fh);color:#FFF6E8;text-shadow:3px 3px 0 #D6246E,6px 6px 0 #19B5B0}
.tp-hero .tp-h1-b{color:#FFF6E8}
.tp-hero .tp-sub{color:#E3D8F0}
.tp-hero .tp-status{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2)}
.tp-hero [data-state=open] .tp-dot{background:#3DDC97}
.tp-hero [data-state=closed] .tp-dot{background:#FF8A3D}
.tp-hero .tp-btn-a{background:#FFE14D;color:#1B1030}
.tp-hero .tp-btn-line{border-color:#FFF6E8;color:#FFF6E8}
.tp-hero .tp-rating{color:#E3D8F0}
.tp-facts svg{color:#D6246E}
.tp-eyebrow::before{content:"";width:26px;height:8px;border-radius:2px;background:linear-gradient(90deg,#D6246E 0 33%,#FF8A3D 33% 66%,#19B5B0 66%)}
/* shelf */
.tp-shelf{position:relative;padding:68px 0 56px;background:#1B1030;color:#FFF6E8}
.tp-shelf::before{content:"";position:absolute;left:0;right:0;top:0;height:14px}
.tp-shelf .tp-h2{color:#FFE14D}
.tp-shelf .tp-lead{color:#E3D8F0}
.tp-shelf .tp-eyebrow{color:#FF8A3D}
.tp-tapes{display:grid;gap:12px;margin-top:28px}
.tp-tape{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;min-height:78px;padding:12px 18px 12px 22px;border-radius:8px;background:#0E0818;border:2px solid #3A2C52;text-decoration:none;overflow:hidden;transition:transform .25s,border-color .25s}
.tp-tape::before{content:"";position:absolute;left:0;top:0;bottom:0;width:10px;background:var(--tc)}
.tp-tape-l{display:block;padding:6px 14px;border-radius:4px;background:#FFF6E8;color:#1B1030;font:400 24px/1.1 var(--fh);box-shadow:inset 0 -6px 0 var(--tc)}
.tp-tape-p{font:700 16px var(--fb);color:#FFE14D;white-space:nowrap}
.tp-tape-reel{position:absolute;right:-20px;top:50%;width:64px;height:64px;margin-top:-32px;border-radius:50%;border:8px dotted rgba(255,255,255,.12);pointer-events:none}
.tp-tape:hover{transform:translateX(6px);border-color:var(--tc)}
.tp-tape:hover .tp-tape-reel{animation:tp-spin 1.2s linear infinite}
@keyframes tp-spin{to{transform:rotate(360deg)}}
/* menu chips as cassette labels */
.tp-chips{background:#FFF6E8}
.tp-chip{font-family:var(--fh);font-weight:400;font-size:17px;border:2px solid #1B1030}
.tp-chips-ind{background:#1B1030}
.tp-chip.is-on{color:#FFE14D}
.tp-cat-ph{border:3px solid #1B1030;box-shadow:6px 6px 0 #D6246E}
.tp-cat:nth-child(2n) .tp-cat-ph{box-shadow:6px 6px 0 #19B5B0}
.tp-cat h3{font-size:32px}
.tp-spec{background:#FBE9D2}
.tp-spec-l figure{border:3px solid #1B1030}
.tp-gal li{border:3px solid #1B1030}
.tp-quotes li{border-left:6px solid #D6246E}
.tp-quotes li:nth-child(2){border-left-color:#19B5B0}
.tp-quotes li:nth-child(3){border-left-color:#FF8A3D}
.tp-hours-card{border:3px solid #1B1030;box-shadow:8px 8px 0 #FFE14D}
.tp-v-ph{border:3px solid #1B1030}
.tp-dock a svg{color:#FFE14D}
.tp-dock .tp-dock-hot{background:#D6246E;color:#fff}
.tp-dock .tp-dock-hot svg{color:#fff}
@media (min-width:600px){.tp-tapes{grid-template-columns:1fr 1fr}}
@media (min-width:960px){
 .tp-hero-ph::after{background:linear-gradient(90deg,#1B1030 0,transparent 24%)}
 .tp-hero-txt{margin:0}
 .tp-word{font-size:108px}
 .tp-h1-b{font-size:27px}
 .tp-tapes{grid-template-columns:repeat(4,1fr)}
 .tp-tape{grid-template-columns:1fr;min-height:180px;align-content:space-between;padding:18px 18px 18px 26px}
}
