/* Edgard — spoločné štýly a responzívne úpravy. Poradie pravidiel zachováva kaskádu. */
:root { --bg: #141210; --panel: #201c17; --cream: #f3ead8; --muted: #c3b8a6; --amber: #e09a2b; --tomato: #c8361e; --line: #514739; --display: "Bebas Neue",Impact,sans-serif; --body: "DM Sans",sans-serif; --radius: 3px; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body { margin: 0; background: var(--bg); color: var(--cream); font-family: var(--body); line-height: 1.65; }
body::after { content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 20; opacity: .035; 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='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E"); }
body.modal-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; }
button,
a { -webkit-tap-highlight-color: transparent; }
button:disabled,
[aria-disabled=true] { cursor: default; opacity: .7; }
img { display: block; max-width: 100%; object-fit: cover; }
figure,
p { margin: 0; }
p+p { margin-top: 1rem; }
h1,
h2 { margin: 0; font-weight: 400; }
h3 { margin: 0; }
h1,
h2 { font-family: var(--display); line-height: .99; letter-spacing: .005em; }
h1 { font-size: clamp(3.55rem,7.2vw,7.3rem); }
h2 { font-size: clamp(3.5rem,6.5vw,6rem); }
h3 { font-size: 1.35rem; font-weight: 700; line-height: 1.2; }
em { font-style: normal; color: var(--amber); }
button:focus-visible,
a:focus-visible { outline: 3px solid var(--amber); outline-offset: 6px; }
::selection { background: var(--amber); color: var(--bg); }
[hidden] { display: none !important; }
.wrap { width: min(1240px,calc(100% - 40px)); margin-inline: auto; }
.section { padding-block: 56px; }
.eyebrow { font-size: .7rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--amber); margin-bottom: 24px; }
.fine,
.demo-note { font-size: .78rem; color: var(--muted); }
.demo-note { border-left: 2px solid var(--amber); padding-left: 12px; margin: 24px 0; }
.fine { margin-top: 20px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.skip { position: fixed; top: 12px; left: 12px; z-index: 100; background: var(--cream); color: var(--bg); padding: 12px; transform: translateY(-160%); }
.skip:focus { transform: none; }
.header { position: sticky; top: 0; z-index: 30; background: var(--bg); border-bottom: 1px solid transparent; }
.js .header { position: fixed; left: 0; right: 0; }
.header.scrolled { backdrop-filter: blur(16px); border-color: var(--line); }
.nav-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.logo { font-family: var(--display); font-size: 2.6rem; line-height: .85; letter-spacing: .04em; }
.logo span { display: block; font-family: var(--body); font-size: .52rem; letter-spacing: .19em; margin-top: 9px; font-weight: 700; }
nav { display: flex; gap: 22px; flex-wrap: wrap; padding-bottom: 16px; }
nav a { font-size: .85rem; transition: color .2s; }
nav a:hover,
.text-link:hover { color: var(--amber); }
.menu-toggle { width: 48px; height: 48px; background: none; border: 1px solid var(--line); color: var(--cream); padding: 12px; }
.menu-toggle span { display: block; height: 2px; background: currentColor; margin: 6px 0; transition: transform .2s; }
.menu-toggle[aria-expanded=true] span:first-child { transform: translateY(4px) rotate(45deg); }
.menu-toggle[aria-expanded=true] span:last-child { transform: translateY(-4px) rotate(-45deg); }
.js nav { display: none; width: 100%; padding: 16px 0 24px; }
.js nav.is-open { display: flex; flex-direction: column; }
.hero { position: relative; min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column; justify-content: center; isolation: isolate; overflow: hidden; }
.hero-background { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#141210ef,#141210a3 60%,#14121055),linear-gradient(0deg,var(--bg),transparent 55%),url("images/hero-edgard-blur.webp") center/cover; background-color: #33241a; }
.hero-layout { display: grid; gap: 16px; padding-top: 52px; padding-bottom: 38px; }
.intro { max-width: 440px; color: var(--muted); margin-top: 24px; font-size: 1rem; }
.actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 24px; min-height: 50px; padding: 14px 22px; background: var(--amber); color: var(--bg); border: 1px solid var(--amber); border-radius: var(--radius); font-weight: 700; font-size: .85rem; transition: transform .2s,background .2s; }
.button[href]:hover,
button.button:hover { background: #edb354; transform: translateY(-3px); }
.button.outline { background: transparent; color: var(--cream); border-color: #c3b8a677; }
.button.outline:hover { background: #f3ead812; }
.pizza-stage { position: relative; display: grid; place-items: center; min-width: 0; padding-top: 12px; }
.flying-pizza { display: block; width: min(70vw,310px); position: relative; }
.pizza-art { display: block; position: relative; filter: drop-shadow(0 30px 24px #0009); transition: transform .5s; }
.pizza-art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.pizza-tooltip { position: absolute; bottom: 0; left: 50%; transform: translate(-50%,10px); opacity: 0; background: var(--cream); color: var(--bg); padding: 10px 16px; white-space: nowrap; font-size: .8rem; border-radius: 30px; transition: opacity .2s,transform .2s; }
.flying-pizza:hover .pizza-tooltip,
.flying-pizza:focus-visible .pizza-tooltip { opacity: 1; transform: translate(-50%,0); }
.hero-bottom { display: flex; justify-content: space-between; gap: 16px; padding-block: 22px; border-top: 1px solid var(--line); font-size: .65rem; letter-spacing: .12em; }
.hero-bottom a { letter-spacing: 0; color: var(--muted); }
.ticker { background: var(--amber); color: var(--bg); padding: 18px 20px; text-align: center; font: clamp(1.25rem,3vw,2.2rem)/1.1 var(--display); letter-spacing: .08em; }
.photo { background: radial-gradient(ellipse at 30% 20%,#664023,#29221a 65%); position: relative; overflow: hidden; }
.photo img { width: 100%; height: 100%; }
.photo figcaption,
.gallery-item span { position: absolute; left: 0; right: 0; bottom: 0; padding: 35px 22px 20px; background: linear-gradient(transparent,#141210e8); font-size: .65rem; letter-spacing: .12em; color: var(--cream); }
.menu-section { background: #1b1814; }
.section-head { display: flex; flex-direction: column; gap: 24px; margin-bottom: 36px; }
.section-head>p { color: var(--muted); font-size: .95rem; }
.filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 28px 0; }
.filters button { border: 1px solid var(--line); color: var(--cream); background: transparent; min-height: 44px; padding: 9px 16px; border-radius: 30px; font-size: .8rem; }
.filters button[aria-pressed=true] { background: var(--cream); border-color: var(--cream); color: var(--bg); }
.filters button:hover { border-color: var(--amber); }
.pizza-grid { display: grid; }
.pizza-card { display: grid; grid-template-columns: 26px minmax(0,1fr) auto; gap: 12px; padding: 28px 0; border-top: 1px solid var(--line); transition: background .2s; }
.pizza-card:hover { background: #f3ead805; }
.item-number { font: .95rem var(--display); color: var(--muted); padding-top: 6px; }
.pizza-card h3 { margin: 8px 0 10px; font-size: 1.1rem; }
.pizza-card p { font-size: .8rem; color: var(--muted); max-width: 320px; }
.pizza-card strong { font-size: .95rem; padding-top: 29px; white-space: nowrap; color: var(--amber); }
.tag { font-size: .59rem; text-transform: uppercase; letter-spacing: .1em; color: var(--amber); }
.tag.red { color: #ff9a84; }
.special { border-top-color: var(--amber); }
.beer-grid { display: grid; gap: 16px; }
.beer-card { border: 1px solid var(--line); padding: 30px; background: linear-gradient(145deg,#30271b,var(--panel)); }
.beer-card h3 { font: 2.3rem var(--display); }
.beer-meta { font-size: .7rem; color: var(--amber); margin: 10px 0 18px; }
.beer-card>p:last-child { font-size: .85rem; color: var(--muted); }
.nonalcohol { margin-top: 28px; border-block: 1px solid var(--line); padding: 30px 0; display: grid; gap: 22px; }
.zero { font: 3.1rem var(--display); color: var(--amber); }
.nonalcohol h3 { font-size: 1.1rem; margin-bottom: 10px; }
.nonalcohol p { font-size: .85rem; color: var(--muted); max-width: 560px; }
.text-link { font-size: .85rem; font-weight: 700; white-space: nowrap; }
.gallery-section { background: #1b1814; }
.gallery { columns: 1; column-gap: 18px; }
.gallery-item { display: block; break-inside: avoid; margin-bottom: 18px; }
.gallery-item img { transition: transform .6s; }
.gallery-item:hover img { transform: scale(1.035); }
.reviews { text-align: center; }
.reviews .demo-note { display: inline-block; text-align: left; }
.contact-section { background: var(--cream); color: var(--bg); }
.contact-section .eyebrow,
.contact-section em { color: #873a19; }
.contact-grid { display: grid; gap: 42px; }
.contact-grid h2 { margin-bottom: 24px; }
.contact-grid .button { margin-top: 24px; }
.contact-section .fine { color: #605548; }
.contact-details { display: grid; gap: 28px; }
.contact-details h3 { font-size: .7rem; text-transform: uppercase; letter-spacing: .13em; margin-bottom: 12px; }
address { font-style: normal; }
.socials { display: flex; gap: 24px; }
.socials a { font-size: .85rem; text-decoration: underline; }
.socials a[href]:hover { color: #873a19; }
.map-panel { min-height: 240px; padding: 32px; border: 1px solid #b9ab93; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; background: #e5dac5; }
.map-panel .outline { color: var(--bg); border-color: #685b49; }
.map-panel iframe { border: 0; width: 100%; height: 340px; }
.map-panel.loaded { padding: 0; }
.footer { padding-block: 42px; display: flex; flex-direction: column; gap: 28px; }
.footer p,
.footer small { color: var(--muted); font-size: .75rem; }
dialog { border: 1px solid var(--line); padding: 56px 18px 20px; background: var(--bg); color: var(--cream); max-width: min(1000px,94vw); max-height: 92svh; }
dialog::backdrop { background: #000d; backdrop-filter: blur(8px); }
dialog figure img { max-height: 70svh; width: auto; max-width: 100%; margin: auto; object-fit: contain; }
dialog figcaption { padding-top: 12px; font-size: .85rem; text-align: center; }
.lightbox-close { position: absolute; right: 10px; top: 6px; width: 44px; height: 44px; font-size: 2rem; background: transparent; border: 0; color: var(--cream); }
@media (min-width:600px) {
  .wrap { width: min(1240px,calc(100% - 64px)); }
  .gallery { columns: 2; }
  .beer-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .beer-card { padding: 22px; }
  .beer-card h3 { font-size: 2rem; }
  .section-head { flex-direction: row; align-items: flex-end; justify-content: space-between; }
  .pizza-card h3 { font-size: 1.25rem; }
  .contact-details { grid-template-columns: 1fr 1fr; }
}
@media (min-width:900px) {
  .section { padding-block: 78.4px; }
  .js nav,
nav { display: flex; width: auto; padding: 0; gap: 30px; }
  .js nav.is-open { flex-direction: row; }
  .menu-toggle { display: none !important; }
  .nav-row { flex-wrap: nowrap; }
  .hero-layout { grid-template-columns: 1.18fr 1fr; align-items: center; padding-block: 70px; }
  .js .hero-layout { padding-bottom: 70px; }
  .hero-copy { position: relative; z-index: 3; }
  .pizza-stage { padding: 0; }
  .flying-pizza { width: 100%; max-width: 530px; }
  .hero-bottom { margin-top: auto; }
  .pizza-grid { grid-template-columns: 1fr 1fr; }
  .beer-card { padding: 34px; }
  .beer-card h3 { font-size: 2.7rem; }
  .nonalcohol { grid-template-columns: auto 1fr auto; align-items: center; gap: 36px; }
  .gallery { columns: 3; }
  .contact-grid { grid-template-columns: 1.2fr 1fr; gap: 60px; }
  .contact-details { grid-template-columns: 1fr; }
  .map-panel { grid-column: 1/-1; }
  .footer { flex-direction: row; align-items: center; justify-content: space-between; }
}
@media (prefers-reduced-motion:no-preference) {
  .reveal.pending { opacity: 0; transform: translateY(24px); }
  .reveal { transition: opacity .7s,transform .7s; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  *,
*::before,
*::after { animation: none !important; transition: none !important; }
  .flying-pizza:hover .pizza-art,
.flying-pizza:focus-visible .pizza-art { transform: none; }
  .reveal.pending { opacity: 1; transform: none; }
}
.gallery-item,
.gallery-item:nth-child(odd) { aspect-ratio: auto; }
.gallery-item img { height: auto; }
.hero-background { background-position: center,center,58% center; }
@media (max-width: 768px) {
  .hero-background { background-position: center,center,74% center; }
}
.pizza-grid { gap: 28px; grid-template-columns: minmax(0,1fr); }
.pizza-product { display: flex; flex-direction: column; padding: 0; overflow: hidden; border: 1px solid var(--line); background: var(--bg); }
.pizza-product.special { border-color: var(--amber); }
.pizza-product .pizza-photo { display: block; aspect-ratio: 1.4; margin: 0; background: #fff; overflow: hidden; }
.pizza-product .pizza-photo img { width: 100%; height: 100%; object-fit: contain; transition: transform .5s; }
.pizza-product .pizza-photo:hover img { transform: scale(1.04); }
@media (min-width: 769px) {
  .pizza-product .pizza-photo img[src="images/pizza-05.webp"] { transform: scale(1.35); transform-origin: 50% 50%; }
  .pizza-product .pizza-photo:hover img[src="images/pizza-05.webp"] { transform: scale(1.404); }
}
.pizza-content { padding: 24px; display: flex; flex-direction: column; flex: 1; }
.pizza-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 22px; }
.pizza-content h3 { font-size: 1.45rem; margin-block: 14px; overflow-wrap: anywhere; }
.pizza-content>p { max-width: none; font-size: .88rem; line-height: 1.7; }
.pizza-bottom { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 24px; }
.pizza-bottom .pizza-details { font-size: .73rem; max-width: 70%; }
.pizza-bottom strong { font-size: 1.25rem; padding: 0; }
.pizza-art { overflow: hidden; border-radius: 50%; background: white; aspect-ratio: 1; box-shadow: 0 28px 55px #0006; }
.pizza-art .hero-pizza-photo { position: static; display: block; width: 100%; height: 100%; object-fit: contain; }
.flying-pizza { animation-duration: 14s; }
.pizza-art .hero-pizza-slide { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; opacity: 0; }
.hero-pizza-frame { display: block; position: absolute; inset: 0; overflow: hidden; border-radius: 50%; background: #fff; }
.flying-pizza { animation: none; }
.hero-pizza-frame img { animation: pizza-turn 14s ease-in-out infinite; }
@keyframes pizza-turn { 0%,100% { transform: rotate(-14deg); } 50% { transform: rotate(14deg); } }
.flying-pizza:hover .pizza-art,
.flying-pizza:focus-visible .pizza-art { transform: scale(1.06); }
@media (min-width:650px) {
  .pizza-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (min-width:1150px) {
  .pizza-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
#hours { white-space: pre-line; }
.socials { flex-wrap: wrap; }
.pizza-page { padding-top: 40px; background: #1b1814; }
.js .pizza-page { padding-top: 140px; }
.pizza-page .menu-section { padding-top: 32px; }
.pizza-page h1 { font-size: clamp(3.5rem, 6.5vw, 6rem); }
nav a[aria-current="page"] { color: var(--amber); }
.reviews-window { overflow-x: auto; margin-top: 36px; text-align: left; }
.reviews-track,
.reviews-set { display: flex; width: max-content; }
.reviews-set { gap: 24px; padding-right: 24px; align-items: stretch; }
.google-review { width: min(420px, 76vw); margin: 0; padding: 28px; border: 1px solid var(--line); background: var(--panel); display: flex; flex-direction: column; }
.review-stars { color: var(--amber); letter-spacing: .15em; }
.google-review blockquote { margin: 16px 0 28px; font-size: 1.15rem; line-height: 1.65; }
.google-review figcaption { display: grid; gap: 6px; margin-top: auto; }
.google-review figcaption span,
.google-review figcaption a { color: var(--muted); font-size: .8rem; }
.google-review figcaption a { text-decoration: underline; text-underline-offset: 3px; }
.reviews-controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 24px; margin-top: 28px; }
.reviews-window { scroll-behavior: auto; scrollbar-width: none; }
.reviews-window::-webkit-scrollbar,
.reviews-position { display: none; }
.featured-pizza { display: grid; overflow: hidden; border: 1px solid var(--line); background: #242019; }
.featured-pizza-photo { display: block; background: #fff; overflow: hidden; }
.featured-pizza-photo img { display: block; width: 100%; height: 100%; max-height: 500px; object-fit: contain; transition: transform .5s; }
.featured-pizza-photo:hover img { transform: scale(1.03); }
.featured-pizza-copy { min-width: 0; padding: clamp(24px, 4vw, 52px); align-self: center; }
.featured-pizza-copy h3 { font-size: clamp(2.4rem, 5vw, 4.5rem); line-height: 1; margin: 24px 0; }
.featured-pizza-details { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding-top: 20px; margin-top: 28px; border-top: 1px solid var(--line); }
.featured-pizza-details p { margin: 0; font-size: .85rem; }
.featured-pizza-details strong { color: var(--amber); font-size: 1.8rem; }
@media (min-width: 768px) {
  .featured-pizza { grid-template-columns: 1fr 1fr; }
}
.drinks-demo { padding: 24px; border-left: 3px solid var(--amber); background: #242019; margin-bottom: 40px; }
.drinks-demo strong { color: var(--amber); letter-spacing: .06em; }
.drinks-demo p { margin-bottom: 0; max-width: 75ch; }
.drink-categories { display: grid; gap: 56px 48px; }
.drink-category { min-width: 0; padding: 24px 0 0; border: 0; border-top: 1px solid #e09a2b55; }
.drink-category h2 { font-size: clamp(2rem, 4vw, 3rem); }
.drink-list { list-style: none; padding: 0; margin: 24px 0 0; }
.drink-list li { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(72px,.28fr); align-items: baseline; gap: 12px; padding: 18px 0; border-top: 1px solid #f3ead814; }
.drink-list li:first-child { border-top: 0; padding-top: 0; }
.drink-list small { grid-column: 2; justify-self: end; color: var(--amber); white-space: nowrap; }
.drink-price { grid-column: 3; min-width: 72px; }
.drinks-actions { margin-top: 32px; }
.drink-tap-section { margin: 0 0 42px; }
.drink-tap-section .section-head { margin-bottom: 22px; }
.drink-tap-section .section-head h2 { font-size: clamp(2.5rem, 5vw, 4rem); }
.tap-beer-info { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; border-top: 1px solid var(--line); padding-top: 14px; margin-top: 18px; }
.tap-beer-info>div { display: flex; flex-direction: column; gap: 4px; }
.tap-beer-info small { color: var(--muted); font-size: .66rem; letter-spacing: .12em; }
.tap-beer-info strong { min-height: 1.5em; color: var(--cream); font: 1.35rem var(--display); }
.tap-beer-info .beer-price { min-width: 70px; }
@media (min-width: 768px) {
  .drink-categories { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.logo { position: relative; display: block; width: 88px; height: 88px; flex-shrink: 0; overflow: hidden; border-radius: 50%; background: var(--bg); isolation: isolate; transition: background-color .2s; }
.logo img { position: absolute; width: 140%; height: 140%; max-width: none; left: -20%; top: -20%; object-fit: contain; mix-blend-mode: lighten; }
.js .header { background: transparent; border-bottom: 0; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; transition: background-color 350ms ease-in-out; }
.js .header.scrolled,
.js .header:has(nav.is-open) { background: var(--bg); border-bottom: 0; }
.header.scrolled,
.header:has(nav.is-open),
.header.scrolled .logo,
.header:has(nav.is-open) .logo { background: var(--bg); }
.nav-row { min-height: 100.8px; }
.footer .logo { width: 120px; height: 120px; background: var(--bg); }
.js .hero-layout { padding-top: 140.8px; }
@media (min-width: 900px) {
  .nav-row { min-height: 100.8px; }
  .js .hero-layout { padding-top: 155.8px; }
}
@media (max-width: 899px) {
  .hero-mobile-details .intro { margin-top: 0; }
}
@media (max-width: 899px) {
  html { scroll-padding-top: 84px; }
  .header .nav-row { min-height: 72px; gap: 0 20px; }
  .header .logo { width: 64px; height: 64px; }
  .header .menu-toggle { width: 48px; height: 48px; flex-shrink: 0; }
  .header nav.is-open { gap: 4px; max-height: calc(100svh - 72px); overflow-y: auto; overscroll-behavior: contain; padding: 8px 0 16px; }
  .header nav a { display: flex; align-items: center; min-height: 44px; }
  .hero { justify-content: flex-start; }
  .hero-layout { gap: 10px; padding-bottom: 24px; }
  .js .hero-layout { padding-top: 96px; }
  .hero-copy .eyebrow { margin-bottom: 14px; font-size: .65rem; letter-spacing: .14em; }
  .hero-copy h1 { font-size: clamp(2.65rem, 10.8vw, 3.6rem); line-height: 1.02; }
  .hero-mobile-details { padding-top: 4px; }
  .hero-mobile-details .intro { font-size: .92rem; line-height: 1.55; max-width: 38ch; }
  .hero-mobile-details .actions { margin-top: 18px; gap: 8px; }
  .hero-mobile-details .button { flex: 1 1 140px; gap: 10px; padding: 13px 12px; min-height: 48px; font-size: .8rem; }
  .hero-bottom { margin-top: auto; padding-block: 16px; }
  .js .pizza-page { padding-top: 112px; }
  .pizza-stage { justify-items: end; padding-right: 12px; padding-top: 10px; }
  .flying-pizza { width: min(45vw, 200px); }
}
@media (max-width:768px) {
  html { scroll-padding-top: calc(88px + env(safe-area-inset-top)); }
  body { font-size: 16px; line-height: 1.5; }
  .wrap { width: calc(100% - 32px - env(safe-area-inset-left) - env(safe-area-inset-right)); }
  .wrap>* { min-width: 0; }
  .header { padding-top: env(safe-area-inset-top); }
  .header .nav-row { gap: 0 16px; }
  .js .header nav.is-open { position: fixed; top: calc(72px + env(safe-area-inset-top)); right: 0; width: calc(100% - 32px); height: calc(100dvh - 72px - env(safe-area-inset-top)); background: var(--bg); padding-inline: 24px; max-height: calc(100dvh - 88px - env(safe-area-inset-top)); gap: 8px; padding: 16px 0 24px; }
  .header nav a { min-height: 48px; font-size: 16px; }
  .hero { min-height: calc(100svh + 100px); min-height: calc(100dvh + 100px); }
  .hero-layout,
.js .hero-layout { grid-template-columns: minmax(0,1fr); gap: 24px; padding-top: calc(96px + env(safe-area-inset-top)); padding-bottom: 24px; }
  .hero-copy h1 { font-size: clamp(48px,14vw,78px); line-height: 1.04; -webkit-text-stroke: .45px rgba(255,255,255,.68); paint-order: stroke fill; }
  .hero-pizza-green,
.hero-pizza-white,
.hero-pizza-red { color: var(--cream); }
  .hero-copy h1 .hero-craft { color: var(--amber); }
  .hero-copy .eyebrow { margin-bottom: 16px; }
  .intro { font-size: 19px; line-height: 1.45; margin-top: 24px; color: var(--cream); }
  .actions { flex-direction: column; gap: 8px; margin-top: 24px; }
  .actions .button,
.contact-grid #call-link { width: 100%; min-height: 48px; font-size: 16px; }
  .pizza-stage { padding: 0; justify-items: center; }
  .flying-pizza { width: min(64vw,280px); }
  .hero-bottom { flex-wrap: wrap; align-items: center; gap: 8px; padding-block: 16px; }
  .hero-bottom a { display: flex; align-items: center; min-height: 48px; }
  .section { padding-block: 48px; }
  .section-head { flex-direction: column; align-items: flex-start; gap: 24px; margin-bottom: 24px; }
  .beer-grid,
.contact-grid,
.contact-details,
.pizza-grid { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .drink-categories { grid-template-columns: minmax(0,1fr); gap: 44px; }
  .pizza-content,
.beer-card,
.google-review,
.drinks-demo { padding: 24px; }
  .featured-pizza-copy h3 { margin-block: 16px; }
  .featured-pizza-details { margin-top: 16px; padding-top: 16px; gap: 16px; }
  .nonalcohol { grid-template-columns: minmax(0,1fr); gap: 16px; margin-top: 24px; padding-block: 24px; }
  .gallery { columns: auto; display: flex; align-items: flex-start; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; }
  .gallery-item,
.gallery-item:nth-child(odd) { flex: 0 0 88%; aspect-ratio: auto; scroll-snap-align: start; margin: 0; }
  .gallery-item img { width: 100%; height: auto; }
  .reviews-window { scroll-snap-type: x mandatory; overscroll-behavior-x: contain; }
  .reviews-set { gap: 16px; padding-right: 16px; }
  .google-review { width: min(360px,calc(100vw - 64px)); scroll-snap-align: start; }
  .google-review blockquote { font-size: 18px; line-height: 1.5; }
  .socials { gap: 8px 16px; }
  .socials a,
.text-link,
.google-review figcaption a { display: inline-flex; align-items: center; min-height: 48px; white-space: normal; }
  .map-panel { padding: 24px; min-width: 0; }
  .map-panel iframe { max-width: 100%; }
  .footer { flex-direction: column; align-items: flex-start; gap: 24px; padding-block: 40px; }
  .pizza-page,
.js .pizza-page { padding-top: calc(96px + env(safe-area-inset-top)); }
  .pizza-bottom { gap: 16px; }
  .pizza-bottom .pizza-details { max-width: none; }
  .pizza-bottom strong { flex-shrink: 0; text-align: right; }
  .drink-list li { grid-template-columns: minmax(0,1fr) auto minmax(68px,.32fr); gap: 10px; }
  .drink-list small { text-align: right; }
  .drink-price { min-width: 68px; }
  .filters { position: sticky; top: calc(72px + env(safe-area-inset-top)); z-index: 25; background: var(--bg); flex-wrap: nowrap; overflow-x: auto; gap: 8px; padding-block: 8px; }
  .filters button { flex-shrink: 0; min-height: 48px; font-size: 16px; }
  .fine,
.demo-note,
.pizza-content>p,
.pizza-bottom .pizza-details,
.beer-meta,
.beer-card>p:last-child,
.nonalcohol p,
.socials a,
.footer p,
.footer small,
.google-review figcaption span,
.google-review figcaption a,
.text-link,
.drink-list small { font-size: 16px; line-height: 1.5; }
  dialog { max-width: calc(100vw - 32px); max-height: calc(100dvh - 32px); padding: 64px 16px 16px; }
  .lightbox-close { width: 48px; height: 48px; top: 8px; right: 8px; }
  dialog figure img { max-height: calc(100dvh - 176px); touch-action: pan-y; }
  dialog figcaption { font-size: 16px; }
  .mobile-hours { display: grid; grid-template-columns: minmax(0,1fr) auto; column-gap: 16px; row-gap: 8px; white-space: normal !important; }
  .mobile-hours .hours-time { text-align: right; }
}
@media (max-width:768px) {
  body:has(#pizza-menu) .header .nav-row { min-height: 56px; }
  body:has(#pizza-menu) .header .logo { width: 48px; height: 48px; }
  body:has(#pizza-menu) .pizza-page { padding-top: calc(72px + env(safe-area-inset-top)); }
  #pizza-menu { padding-top: 16px; }
  #pizza-menu .section-head { gap: 16px; margin-bottom: 16px; }
  #pizza-menu .filters { top: calc(56px + env(safe-area-inset-top)); margin: 16px 0 0; padding: 4px 20px 4px 0; gap: 8px; background: #1b1814; min-height: 52px; scrollbar-width: none; mask-image: linear-gradient(to right,#000 calc(100% - 20px),transparent); }
  #pizza-menu .filters::-webkit-scrollbar { display: none; }
  #pizza-menu .filters button { min-height: 44px; padding: 8px 12px; font-size: 14px; }
  #pizza-menu .pizza-grid { display: grid; grid-template-columns: minmax(0,1fr); gap: 0; }
  #pizza-menu .pizza-product { display: grid; grid-template-columns: 96px minmax(0,1fr); align-items: start; gap: 12px; padding: 12px 0; border: 0; border-bottom: 1px solid var(--line); background: transparent; overflow: visible; aspect-ratio: auto; }
  #pizza-menu .pizza-product .pizza-photo { width: 96px; height: 96px; aspect-ratio: auto; border-radius: 12px; margin: 0; }
  #pizza-menu .pizza-product .pizza-photo img { width: 96px; height: 96px; object-fit: cover; transform: none; }
  #pizza-menu .pizza-content { padding: 0; min-width: 0; display: flex; gap: 6px; }
  #pizza-menu .mobile-pizza-title { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; align-items: baseline; }
  #pizza-menu .pizza-content h3 { font-size: 16px; line-height: 1.2; margin: 0; overflow-wrap: normal; }
  #pizza-menu .item-number { font-size: 11px; padding: 0; margin-right: 4px; }
  #pizza-menu .mobile-pizza-title strong { white-space: nowrap; font-size: 14px; line-height: 1.2; padding: 0; text-align: right; color: var(--amber); }
  #pizza-menu .pizza-content>p { font-size: 14px; line-height: 1.3; margin: 0; max-width: none; }
  #pizza-menu .pizza-bottom { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: flex-start; gap: 4px 8px; margin: 0; padding: 0; }
  #pizza-menu .pizza-bottom .pizza-details { font-size: 11px; line-height: 1.35; margin: 0; max-width: none; }
  #pizza-menu .tag { font-size: 10px; line-height: 1.4; border: 1px solid currentColor; border-radius: 12px; padding: 1px 6px; letter-spacing: 0; text-transform: none; }
  #pizza-menu .tag:empty,
#pizza-menu .pizza-heading { display: none; }
  body:has(#pizza-menu) #lightbox { inset: 0; width: 100vw; height: 100dvh; max-width: none; max-height: none; margin: 0; border: 0; padding: calc(64px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom)); }
  body:has(#pizza-menu) #lightbox[open] { display: flex; align-items: center; justify-content: center; }
  body:has(#pizza-menu) #lightbox figure { max-width: 100%; }
  body:has(#pizza-menu) #lightbox-image { object-fit: contain; max-height: calc(100dvh - 144px - env(safe-area-inset-top) - env(safe-area-inset-bottom)); }
  body:has(#pizza-menu) .lightbox-close { top: calc(8px + env(safe-area-inset-top)); right: 16px; width: 48px; height: 48px; }
}
@media (max-width:768px) {
  .js .header:has(nav.is-open) { z-index: 100; background: var(--bg); right: var(--mobile-scrollbar,0px); }
  .header .logo,
.header .menu-toggle { position: relative; z-index: 2; }
  .header .menu-toggle,
.header .menu-toggle[aria-expanded=true] { width: 48px; height: 48px; border: 1px solid var(--line); background: none; color: var(--cream); padding: 12px; }
  .header .menu-toggle span { transition: transform 180ms ease; }
  .js .header #navigation { position: fixed; inset: 0; width: 100%; height: 100dvh; max-height: none; margin: 0; padding: calc(80px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom)); display: flex; flex-direction: column; gap: 0; background: var(--bg); z-index: 1; overflow-y: auto; overscroll-behavior: contain; opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-8px); transition: opacity 180ms ease,transform 180ms ease,visibility 180ms; }
  .js .header #navigation.is-open { position: fixed; inset: 0; width: 100%; height: 100dvh; max-height: none; margin: 0; padding: calc(80px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom)); display: flex; flex-direction: column; gap: 0; background: var(--bg); z-index: 1; overflow-y: auto; overscroll-behavior: contain; transition: opacity 180ms ease,transform 180ms ease,visibility 180ms; }
  .js .header #navigation.is-open { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
  body:has(#pizza-menu) .header #navigation { padding-top: calc(64px + env(safe-area-inset-top)); }
  .header #navigation>a:not(.mobile-menu-call) { display: flex; align-items: center; min-height: 64px; flex-shrink: 0; font-family: var(--display); font-size: 32px; line-height: 1.15; padding: 12px 0; border-bottom: 1px solid var(--line); }
  .header #navigation>a[aria-current=page] { color: var(--amber); }
  .header #navigation>.mobile-menu-call { flex-shrink: 0; width: 100%; min-height: 48px; margin-top: auto; padding: 14px 12px; font-family: var(--body); font-size: 16px; line-height: 1.5; }
  .header #navigation>a:not(.mobile-menu-call):last-of-type { margin-bottom: 24px; }
  .header #navigation>.mobile-menu-call { margin-bottom: 0; }
}
@media (max-width:768px) and (prefers-reduced-motion:reduce) {
  .js .header #navigation,
.header .menu-toggle span { transition: none; transform: none; }
}
@media (max-width:768px) {
  .hero .pizza-stage { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; padding: 0; }
  .hero .flying-pizza { display: flex; flex-direction: column; width: min(45vw,200px); max-width: 100%; animation: none; }
  .hero .pizza-art { width: 100%; height: auto; max-height: none; aspect-ratio: 1; border-radius: 50%; flex: none; transform: none; }
  .hero .hero-pizza-frame { border-radius: 50%; }
  .hero .flying-pizza:hover .pizza-art,
.hero .flying-pizza:focus-visible .pizza-art { transform: none; }
  .hero .pizza-tooltip,
.hero .flying-pizza:hover .pizza-tooltip,
.hero .flying-pizza:focus-visible .pizza-tooltip { position: static; opacity: 1; transform: none; align-self: center; max-width: 100%; white-space: normal; font-size: 14px; line-height: 1.5; padding: 4px 12px; margin-top: 8px; }
}
.hero-beer-link { display: inline-flex; background: #d8ccb7; color: var(--bg); border-color: #d8ccb7; }
.hero-beer-link:hover { background: #cbbda6; border-color: #cbbda6; }
.hero .hero-reserve-link { background: var(--amber); color: var(--bg); border-color: var(--amber); }
.hero .hero-reserve-link:hover { background: #edb354; }
@media (max-width:768px) {
  .hero-mobile-controls { display: grid; grid-template-columns: minmax(0,1fr) min(45vw,200px); gap: 16px; align-items: center; }
  .hero-mobile-controls .actions { margin: 0; gap: 16px; align-self: center; position: relative; top: 24px; transform: none; }
  .hero-mobile-controls { transform: translateY(100px); }
  .hero-mobile-controls .actions .hero-beer-link { display: flex; background: #d8ccb7; color: var(--bg); border-color: #d8ccb7; }
  .hero-mobile-controls .actions .hero-beer-link:hover { background: #cbbda6; border-color: #cbbda6; }
  .hero-mobile-controls .actions .button { padding: 12px 8px; min-height: 48px; line-height: 1.5; text-align: center; }
  .hero .pizza-tooltip,
.hero .flying-pizza:hover .pizza-tooltip,
.hero .flying-pizza:focus-visible .pizza-tooltip { order: -1; margin: 0 0 16px; animation: mobile-pizza-label 4.8s ease-in-out infinite; }
  @keyframes mobile-pizza-label{0%,100%{transform:translateY(0) rotate(-2deg);}50%{transform:translateY(-5px) rotate(2deg);}}
}
@media (max-width:768px) and (prefers-reduced-motion:reduce) {
  .hero .pizza-tooltip { animation: none !important; transform: none !important; }
}
@media (max-width:768px) {
  #special-title { white-space: nowrap; font-size: clamp(58px,18vw,128px); }
  #special-title br { display: none; }
  #special-title em { margin-left: .18em; }
}
@media (max-width:768px) {
  #pivo .beer-card { position: relative; padding: 20px 88px 20px 20px; }
  #pivo .beer-card h3 { font-size: 1.955rem; line-height: 1.15; }
  #pivo .beer-card .beer-meta { font-size: 14px; line-height: 1.5; margin: 8px 0 10px; }
  #pivo .beer-card::after { content: ""; position: absolute; right: 12px; top: 50%; transform: translateY(-50%); width: 68px; height: 72px; background-position: center; background-repeat: no-repeat; background-size: contain; pointer-events: none; }
  #pivo .beer-card:nth-child(1)::after { background-image: url("images/beer-bradac.webp"); background-size: auto 100%; }
  #pivo .beer-card:nth-child(2)::after { background-image: url("images/beer-breznak.webp"); }
  #pivo .beer-card:nth-child(3)::after { background-image: url("images/beer-mort-subite.webp"); }
}
@media (max-width:768px) {
  .featured-pizza { grid-template-columns: 96px minmax(0,1fr); gap: 12px; padding: 16px 0; height: auto; overflow: visible; border-inline: 0; }
  .featured-pizza-photo { width: 96px; height: 96px; border-radius: 12px; align-self: start; }
  .featured-pizza-photo img { width: 100%; height: 100%; max-height: none; object-fit: contain; }
  .featured-pizza-copy { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; padding: 0; align-self: start; }
  .featured-pizza-copy h3 { grid-column: 1; grid-row: 1; font-size: 18px; line-height: 1.25; margin: 0; overflow-wrap: anywhere; }
  .featured-pizza-copy>p { grid-column: 1/-1; grid-row: 2; font-size: 14px; line-height: 1.5; margin: 0; }
  .featured-pizza-details { display: contents; }
  .featured-pizza-details strong { grid-column: 2; grid-row: 1; font-size: 16px; line-height: 1.5; white-space: nowrap; }
  .featured-pizza-details p { grid-column: 1/-1; grid-row: 3; font-size: 12px; line-height: 1.5; margin: 0; }
  .featured-pizza-copy>.tag { grid-column: 1/-1; grid-row: 4; justify-self: start; font-size: 11px; line-height: 1.5; border: 1px solid currentColor; border-radius: 20px; padding: 2px 6px; }
}
@media (min-width:769px) {
  #pivo .beer-card { position: relative; padding-right: 112px; }
  #pivo .beer-card::after { content: ""; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); width: 76px; height: 88px; background-position: center; background-repeat: no-repeat; background-size: contain; pointer-events: none; }
  #pivo .beer-card:nth-child(1)::after { background-image: url("images/beer-bradac.webp"); background-size: auto 100%; }
  #pivo .beer-card:nth-child(2)::after { background-image: url("images/beer-breznak.webp"); }
  #pivo .beer-card:nth-child(3)::after { background-image: url("images/beer-mort-subite.webp"); }
}
@media (min-width:769px) and (max-width:899px) {
  #pivo .beer-card { padding-right: 78px; }
  #pivo .beer-card::after { right: 10px; width: 54px; height: 68px; }
  #pivo .beer-card h3 { font-size: 1.6rem; }
}
.socials #facebook { color: #1877f2; text-decoration-color: #1877f2; }
.socials #instagram { color: #c13584; text-decoration-color: #c13584; background-image: linear-gradient(45deg,#934800 0%,#a63c12 24%,#ac205b 52%,#793099 76%,#38449a 100%); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.socials #tiktok { color: #000; text-decoration-color: #000; }
.socials #facebook:hover { color: #1468d4; }
.socials #instagram:hover { color: #c13584; }
.socials #tiktok:hover { color: #000; }
#reviews-title { color: var(--amber); }
@media (max-width:768px) {
  #pizza-special .featured-pizza { display: grid; grid-template-columns: 92px minmax(0,1fr); gap: 0; padding: 0; border: 0; background: transparent; overflow: visible; align-items: center; }
  #pizza-special .featured-pizza-photo { grid-column: 1; grid-row: 1; width: 184px; height: 184px; margin-left: -108px; align-self: center; border-radius: 0; overflow: visible; background: transparent; z-index: 1; transform: scale(1.2); transform-origin: center center; }
  #pizza-special .featured-pizza-photo picture { display: block; width: 100%; height: 100%; }
  #pizza-special .featured-pizza-photo img { display: block; width: 100%; height: 100%; max-height: none; object-fit: contain; border-radius: 0; }
  #pizza-special .featured-pizza-copy { grid-column: 2; grid-row: 1; min-width: 0; display: block; align-self: stretch; position: relative; z-index: 0; padding: 16px 12px; border: 1px solid var(--line); background: #242019; }
  #pizza-special .featured-pizza-copy>.tag { display: inline-block; font-size: 10px; line-height: 1.35; }
  #pizza-special .featured-pizza-copy h3 { font-size: 18px; line-height: 1.15; margin: 10px 0; overflow-wrap: normal; }
  #pizza-special .featured-pizza-copy>p { font-size: 13px; line-height: 1.4; margin: 0; }
  #pizza-special .featured-pizza-details { display: flex; align-items: baseline; justify-content: space-between; gap: 6px; flex-wrap: nowrap; margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--line); }
  #pizza-special .featured-pizza-details p { font-size: 10px; line-height: 1.3; }
  #pizza-special .featured-pizza-details strong { font-size: 16px; line-height: 1.2; white-space: nowrap; flex-shrink: 0; }
}
@media (min-width:600px) and (max-width:768px) {
  #pizza-special .featured-pizza-photo { margin-left: -124px; }
}
@media (max-width:768px) and (prefers-reduced-motion:no-preference) {
  #pizza-special .featured-pizza.is-in-view .featured-pizza-photo { animation: mobile-special-pizza-slide-in .9s cubic-bezier(.2,.75,.25,1) both; }
  #pizza-special .featured-pizza.is-leaving .featured-pizza-photo { animation: mobile-special-pizza-slide-out .38s cubic-bezier(.55,.05,.8,.4) both; }
  @keyframes mobile-special-pizza-slide-in{
  from{transform:translate3d(-120vw,0,0) scale(1.2);opacity:.35;}
  to{transform:scale(1.2);opacity:1;}
 }
  @keyframes mobile-special-pizza-slide-out{
  from{transform:translate3d(0,0,0) scale(1.2);opacity:1;}
  to{transform:translate3d(-120vw,0,0) scale(1.2);opacity:.15;}
 }
}
.nav-mobile-emoji { display: none; }
@media (max-width:899px) {
  #navigation a { gap: .35em; }
  #navigation .nav-mobile-emoji { display: inline-flex; align-items: center; line-height: 1; }
  #navigation .nav-mobile-emoji img { display: block; width: 1.2em; height: 1.2em; object-fit: contain; }
  #navigation .nav-mobile-logo img { width: 1.15em; height: 1.15em; border-radius: 50%; object-fit: cover; }
}
.gallery-page .gallery { display: block; columns: 2; column-gap: 18px; overflow: visible; scroll-snap-type: none; }
.gallery-page .gallery-item,
.gallery-page .gallery-item:nth-child(odd) { display: block; width: 100%; margin: 0 0 18px; break-inside: avoid; aspect-ratio: auto; }
.gallery-page .gallery-item img { width: 100%; height: auto; }
@media (min-width:1100px) {
  .gallery-page .gallery { columns: 3; }
}
@media (max-width:768px) {
  .gallery-page .gallery { columns: 2; column-gap: 12px; overscroll-behavior: auto; }
  .gallery-page .gallery-item,
.gallery-page .gallery-item:nth-child(odd) { flex: none; margin-bottom: 12px; scroll-snap-align: none; }
}
.about-showcase { background: #1b1814; }
.about-feature { display: grid; grid-template-columns: 1.04fr .96fr; min-height: 600px; overflow: hidden; border: 1px solid var(--line); background: radial-gradient(ellipse at 18% 18%,#30271d,#201c17 62%); }
.about-feature-copy { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; justify-content: center; padding: clamp(32px,5vw,72px); }
.about-feature-copy .eyebrow { margin-bottom: 20px; }
.about-feature-copy h2 { font-size: clamp(3.4rem,5.7vw,5.5rem); line-height: .94; margin-bottom: 24px; }
.about-feature-copy>p:not(.eyebrow) { max-width: 48ch; color: var(--muted); font-size: 1rem; line-height: 1.65; }
.about-feature-copy>p.about-lead { font-size: 1.2rem; line-height: 1.45; color: var(--cream); margin-bottom: 12px; }
.about-points { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-top: 32px; padding-top: 22px; border-top: 1px solid var(--line); }
.about-points article { min-width: 0; padding-left: 12px; border-left: 1px solid #8c6a38; }
.about-points article>span { font-size: .58rem; letter-spacing: .12em; color: var(--amber); font-weight: 700; }
.about-points h3 { font-size: .9rem; line-height: 1.2; margin: 8px 0; }
.about-points p { font-size: .72rem; line-height: 1.45; color: var(--muted); }
.about-feature-button { align-self: flex-start; margin-top: 30px; }
.about-feature-photo { grid-column: 2; grid-row: 1; position: relative; min-height: 600px; margin: 0; overflow: hidden; background: #33241a; }
.about-feature-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 46%; transition: transform .7s; }
.about-feature-photo:hover img { transform: scale(1.035); }
.about-feature-photo figcaption { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 48px 30px 28px; background: linear-gradient(0deg,#141210ed,#14121000); }
.about-feature-photo figcaption span { font-size: .62rem; letter-spacing: .16em; color: var(--amber); font-weight: 700; }
.about-feature-photo figcaption strong { max-width: 13ch; font: 2.5rem/.98 var(--display); letter-spacing: .025em; color: var(--cream); }
@media (max-width:768px) {
  .about-feature { grid-template-columns: minmax(0,1fr); min-height: 0; }
  .about-feature-photo { grid-column: 1; grid-row: 1; height: 340px; min-height: 0; }
  .about-feature-photo figcaption { padding: 44px 22px 20px; }
  .about-feature-photo figcaption strong { font-size: 2rem; }
  .about-feature-copy { grid-column: 1; grid-row: 2; padding: 28px 22px 26px; }
  .about-feature-copy .eyebrow { font-size: .62rem; letter-spacing: .13em; margin-bottom: 16px; }
  .about-feature-copy h2 { font-size: clamp(42px,11vw,60px); line-height: .98; margin-bottom: 18px; }
  .about-feature-copy>p:not(.eyebrow) { font-size: 15px; line-height: 1.55; }
  .about-feature-copy>p.about-lead { font-size: 18px; line-height: 1.4; margin-bottom: 10px; }
  .about-points { grid-template-columns: minmax(0,1fr); gap: 0; margin-top: 24px; padding-top: 8px; }
  .about-points article { display: grid; grid-template-columns: 88px minmax(0,1fr); gap: 4px 10px; padding: 14px 0; border-left: 0; border-bottom: 1px solid var(--line); }
  .about-points article>span { grid-column: 1; grid-row: 1/3; align-self: center; font-size: .58rem; }
  .about-points h3 { grid-column: 2; grid-row: 1; font-size: 15px; margin: 0; }
  .about-points p { grid-column: 2; grid-row: 2; font-size: 13px; line-height: 1.4; }
  .about-feature-button { align-self: stretch; width: 100%; margin-top: 22px; }
}
.delivery-section { padding-block: 0 42px; }
.delivery-panel { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 40px; padding: clamp(24px,4vw,48px); border: 1px solid var(--line); background: linear-gradient(135deg,#2d251b,var(--panel)); }
.delivery-copy .eyebrow { margin-bottom: 14px; }
.delivery-copy h2 { font-size: clamp(2.7rem,5vw,4.4rem); margin-bottom: 16px; }
.delivery-copy>p:last-child { color: var(--muted); font-size: .95rem; max-width: 36ch; }
.delivery-links { display: grid; gap: 12px; }
.delivery-link { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 78px; padding: 14px 22px; border: 1px solid var(--line); background: var(--delivery-color); color: #141210; border: 2px solid #14121066; transition: filter .2s,transform .2s; }
.delivery-link:hover { filter: brightness(1.06); transform: translateX(3px); }
.delivery-link strong { display: block; font-size: 1.35rem; line-height: 1.3; }
.delivery-link small { display: block; font-size: .78rem; color: inherit; margin-top: 3px; }
.delivery-app-logo { width: 56px; height: 56px; flex: 0 0 56px; object-fit: contain; border-radius: 12px; }
.delivery-wolt { --delivery-color: #00c6ff; }
.delivery-bolt { --delivery-color: #2b9c64; }
.delivery-bistro { --delivery-color: #ffa100; }
@media (max-width:768px) {
  .delivery-panel { grid-template-columns: 1fr; gap: 24px; padding: 24px; }
  .delivery-copy h2 { font-size: 44px; }
  .delivery-copy>p:last-child { font-size: 15px; }
  .delivery-link { padding: 14px 18px; min-height: 76px; }
  .delivery-link small { font-size: 14px; }
}
.allergen-guide { margin: 0 0 28px; border: 1px solid var(--line); background: var(--panel); }
.allergen-guide summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 64px; padding: 18px 24px; cursor: pointer; font-weight: 700; list-style: none; }
.allergen-guide summary::-webkit-details-marker { display: none; }
.allergen-guide summary:focus-visible { outline: 3px solid var(--amber); outline-offset: 3px; }
.allergen-toggle { font-size: 1.6rem; line-height: 1; color: var(--amber); transition: transform .2s; }
.allergen-guide[open] .allergen-toggle { transform: rotate(45deg); }
.allergen-guide-content { padding: 0 24px 24px; color: var(--muted); font-size: .9rem; }
.allergen-list { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 40px; padding-left: 24px; margin: 20px 0; }
.allergen-list li { padding-left: 6px; break-inside: avoid; }
.allergen-list li::marker { color: var(--amber); font-weight: 700; }
.allergen-help { padding-top: 16px; border-top: 1px solid var(--line); }
@media (max-width:768px) {
  .allergen-list { grid-template-columns: 1fr; gap: 14px; }
  .allergen-guide-content { font-size: 15px; }
  .allergen-guide summary { padding: 16px 20px; }
  .allergen-guide-content { padding: 0 20px 20px; }
}
.drink-category-nav { position: sticky; top: 100px; z-index: 25; display: flex; gap: 8px; overflow-x: auto; max-width: 100%; padding: 12px 0; margin: 0 0 28px; background: transparent; border: 0; overscroll-behavior-x: contain; scrollbar-width: none; }
.drink-category-nav::-webkit-scrollbar { display: none; }
.drink-category-nav a { background: var(--bg); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; min-height: 46px; padding: 10px 18px; border: 1px solid var(--line); border-radius: 24px; font-size: .85rem; font-weight: 700; white-space: nowrap; transition: background .2s,color .2s,border-color .2s; }
.drink-category-nav a:hover,
.drink-category-nav a:focus-visible { background: var(--amber); color: var(--bg); border-color: var(--amber); }
.drinks-page .drink-category,
.drinks-page .drink-tap-section { scroll-margin-top: 84px; }
@media (max-width:768px) {
  .drink-category-nav { top: calc(72px + env(safe-area-inset-top)); margin-bottom: 24px; padding-block: 10px; }
  .drink-category-nav a { font-size: 14px; min-height: 46px; padding: 10px 16px; }
  .drinks-page .drink-category,
.drinks-page .drink-tap-section { scroll-margin-top: 76px; }
}
.reviews-window.is-autoscrolling { scroll-snap-type: none; }
.footer-contact { display: grid; gap: 6px; font-size: .85rem; line-height: 1.5; }
.footer-contact a { text-decoration: underline; text-underline-offset: 3px; display: inline-flex; align-items: center; min-height: 44px; }
.drink-category-nav a[aria-current="location"] { background: var(--amber); color: var(--bg); border-color: var(--amber); }
.lightbox-navigation { display: flex; align-items: center; justify-content: center; gap: 16px; margin-top: 16px; }
.lightbox-navigation button { width: 48px; height: 48px; border: 1px solid var(--line); background: var(--panel); color: var(--cream); font-size: 1.5rem; }
.lightbox-navigation button:hover { background: var(--amber); color: var(--bg); }
@media (min-width:900px) {
  .footer { flex-wrap: wrap; }
}
.flying-pizza.is-paused,
.flying-pizza.is-paused * { animation-play-state: paused !important; }

.lightbox-count { min-width: 64px; text-align: center; color: var(--cream); font-variant-numeric: tabular-nums; }

.footer-operator { flex: 0 0 100%; width: 100%; padding-top: 20px; border-top: 1px solid var(--line); color: var(--muted); font-size: .85rem; line-height: 1.6; }
.footer-operator p { font-size: inherit; }
.footer-operator address { margin-top: 6px; }

/* Schválená sekcia O nás — textový príbeh a mobilná fotografia pod nadpisom. */
@media(min-width:900px){.about-points{grid-template-columns:1fr;gap:14px;margin-top:24px}.about-points article{display:grid;grid-template-columns:110px 1fr;gap:4px 14px}.about-points article>span{grid-row:1/3;align-self:center}.about-points h3{margin:0}.about-points p{font-size:.85rem}.about-feature-copy{padding:40px}.about-feature-copy h2{font-size:clamp(3.4rem,5.7vw,5rem)}}
@media(max-width:768px){
 .about-showcase{padding-block:32px 40px;}
 .about-feature{display:grid;grid-template-columns:minmax(0,1fr);gap:0;min-height:0;overflow:visible;border:0;background:none;}
 .about-feature-copy{display:contents;}
 .about-feature-copy .eyebrow{grid-row:1;margin:0 0 14px;font-size:11px;letter-spacing:.16em;}
 .about-feature-copy h2{grid-row:2;font-size:clamp(44px,12vw,62px);line-height:.98;margin:0 0 24px;}
 .about-feature-photo{grid-column:1;grid-row:3;width:calc(100% + 32px);margin:0 -16px 26px;height:auto;min-height:0;aspect-ratio:3/2;overflow:hidden;}
 .about-feature-photo img{height:100%;object-fit:cover;object-position:center;}
 .about-feature-photo figcaption{padding:32px 20px 16px;gap:5px;}
 .about-feature-photo figcaption strong{max-width:none;font-size:26px;}
 .about-feature-photo figcaption span{font-size:10px;}
 .about-feature-copy>p.about-lead{grid-row:4;font-size:21px;line-height:1.35;margin:0 0 14px;max-width:28ch;}
 .about-feature-copy>p:not(.eyebrow):not(.about-lead){grid-row:5;font-size:16px;line-height:1.65;margin:0;max-width:none;}
 .about-points{grid-row:6;display:grid;grid-template-columns:1fr;gap:12px;margin:26px 0 0;padding:0;border:0;}
 .about-points article{display:block;padding:20px;border:1px solid var(--line);background:var(--panel);}
 .about-points article>span{display:block;font-size:10px;letter-spacing:.14em;margin-bottom:10px;}
 .about-points h3{font-size:19px;line-height:1.25;margin:0 0 8px;}
 .about-points p{font-size:15px;line-height:1.6;}
 .about-feature-button{grid-row:7;align-self:stretch;justify-self:stretch;margin:24px 0 0;width:100%;min-height:52px;}
}

#pizza-title { white-space: nowrap; font-size: clamp(2.75rem, 12vw, 6rem); }

#drinks-title { white-space: nowrap; font-size: clamp(2rem, 9.5vw, 6rem); }

#tap-menu-title { white-space: nowrap; font-size: clamp(2.25rem, 10vw, 4rem); }

.drinks-page #pivo .beer-grid { gap: 12px; }
.drinks-page #pivo .beer-card { padding: 16px 80px 16px 16px; }
.drinks-page #pivo .beer-card h3 { font-size: 1.65rem; line-height: 1.1; }
.drinks-page #pivo .beer-card .beer-meta { font-size: 12px; line-height: 1.4; margin: 6px 0 0; }
.drinks-page #pivo .beer-card::after { right: 12px; width: 54px; height: 60px; }
.drinks-page #pivo .tap-beer-info { margin-top: 10px; padding-top: 8px; gap: 8px; }
.drinks-page #pivo .tap-beer-info small { font-size: .6rem; }
.drinks-page #pivo .tap-beer-info strong { font-size: 1.15rem; min-height: 1.2em; }
