/* ==========================================================================
   pages/tawerna.css: bloki wyłącznie strony Tawerny (prefiks .tawerna-*)
   Tylko tokeny z base.css, bez wartości hex. Ruch: atrybuty motion.js
   + assets/js/pages/tawerna.js (zmierzch nad Beach Barem, ≥1024 px).
   ========================================================================== */

/* 1. Hero: przycisk z numerem (etykieta „Zarezerwuj stolik” + numer) */
.tawerna-hero .hero__title{max-width:16ch}
.tawerna-nowrap{white-space:nowrap}
.tawerna-callbtn{gap:.875rem}
.tawerna-callbtn__num{display:inline-flex;align-items:center;align-self:stretch;margin:6px 0;padding-left:.875rem;
  border-left:1px solid color-mix(in srgb, currentColor 28%, transparent);font-size:1.0625rem;letter-spacing:.02em}
@media (max-width:399px){ .tawerna-callbtn__num{display:none} }

/* 2. W skrócie + blok telefonu */
.tawerna-intro__grid{display:grid;gap:var(--s-8) var(--gap)}
@media (min-width:1024px){
  .tawerna-intro__grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end}
  .tawerna-intro__body{grid-column:1 / span 7}
  .tawerna-call{grid-column:9 / -1}
}
.tawerna-call{display:grid;gap:var(--s-4);justify-items:start;padding:clamp(1.5rem, 3vw, 2.5rem);background:var(--paper);border-top:2px solid var(--accent)}
.tawerna-call__title{color:var(--ink-2)}
.tawerna-call__num{display:inline-block;color:var(--ink);font-size:clamp(3rem, 2.2rem + 3.2vw, 5rem);white-space:nowrap;
  transition:color var(--d-micro) var(--ease-ui)}
.tawerna-call__num span{display:inline-block;width:.18em}
@media (hover:hover) and (pointer:fine){ .tawerna-call__num:hover{color:var(--sky-ink)} }
.tawerna-call__text{color:var(--ink-2)}
.tawerna-call__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-4) var(--s-6);margin-top:var(--s-2)}

/* 3. Kuchnia: kadr + obietnice */
.tawerna-kitchen .section__lead{max-width:56ch}
.tawerna-kitchen__grid{display:grid;gap:var(--s-8) var(--gap)}
@media (min-width:1024px){
  .tawerna-kitchen__grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start}
  .tawerna-kitchen__media{grid-column:1 / span 7}
  .tawerna-promises{grid-column:9 / -1;margin-top:var(--s-2)}
}
.tawerna-promises{display:grid;gap:var(--s-6);list-style:none;margin:0;padding:0}
.tawerna-promise{display:grid;gap:var(--s-2);padding-top:var(--s-4);border-top:1px solid var(--line);max-width:none}
.tawerna-promise p:not(.t-h4){color:var(--ink-2)}

/* 3b. Gdzie usiądziesz: tor */
.tawerna-places .section__head{margin-bottom:0}
.tawerna-places__rail .rail__item{flex-basis:min(78vw, 360px)}
@media (min-width:1024px){ .tawerna-places__rail .rail__item{flex-basis:calc((min(100vw, var(--wrap)) - 2 * var(--gutter) - 3 * var(--gap)) / 3.3)} }
.tawerna-places__note{margin-top:var(--s-8);max-width:44rem}

/* 4. Karta */
.tawerna-menu__pano{margin-bottom:var(--s-9)}
.tawerna-menu__grid{display:grid;gap:var(--s-8) var(--gap)}
@media (min-width:1024px){
  .tawerna-menu__grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start}
  .tawerna-menu__board{grid-column:1 / span 5;position:sticky;top:calc(var(--header-h) + 64px)}
  .tawerna-menu__plates{grid-column:7 / -1}
}
.tawerna-menu__board{display:grid;gap:var(--s-5);justify-items:start;align-content:start}
.tawerna-menu__board .horizon{width:100%;margin:0}
.tawerna-menu__lead{color:var(--ink)}
.tawerna-menu__tel{font-stretch:var(--w-cond);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;
  background:linear-gradient(currentColor,currentColor) 0 100% / 100% 1px no-repeat;padding-bottom:2px;transition:color var(--d-micro) var(--ease-ui)}
@media (hover:hover) and (pointer:fine){ .tawerna-menu__tel:hover{color:var(--sky-ink)} }
.tawerna-menu__always{margin-top:var(--s-3)}
.tawerna-menu__list{gap:var(--s-3)}
.tawerna-menu__list li{color:var(--ink)}
.tawerna-menu .btn{margin-top:var(--s-3)}
.tawerna-plates > a{background:var(--paper)}
.tawerna-plates > .tawerna-plates__big{grid-column:1 / -1}
@media (max-width:767px){ .tawerna-plates > a:last-child{grid-column:1 / -1;aspect-ratio:2/1} }
@media (min-width:768px){
  .tawerna-plates{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tawerna-plates > .tawerna-plates__big{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
}
.tawerna-menu__plates .frame__caption{margin-top:var(--s-4)}

/* 5. Beach Bar (ciemny blok „wieczór”) */
.tawerna-bar__grid{display:grid;gap:var(--s-8) var(--gap)}
.tawerna-bar__body{display:grid;gap:var(--s-5);justify-items:start;align-content:start;order:-1}
.tawerna-bar__body .horizon{width:100%;margin:0}
.tawerna-bar__body .t-h2{color:var(--on-night)}
@media (min-width:1024px){
  .tawerna-bar__grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:center}
  .tawerna-bar__media{grid-column:1 / span 7}
  .tawerna-bar__body{grid-column:9 / -1;order:0}
}
.tawerna-bar__stage{display:grid;gap:var(--s-6)}
.tawerna-bar__shot{margin:0}
.tawerna-bar__shot .frame{background:var(--lake-2)}
.tawerna-bar__list{gap:var(--s-3)}
.tawerna-bar__list li{color:var(--on-night-2)}
.tawerna-bar__list .i{color:var(--accent-on-night)}
.tawerna-bar .note{background:var(--lake-2);border-left-color:var(--accent-on-night);color:var(--on-night-2)}
.tawerna-bar .note .i{color:var(--accent-on-night)}
.tawerna-bar__wedding{color:var(--on-night-2)}
.tawerna-bar__gallery{margin-top:var(--s-9)}
.tawerna-bar__gallery > a{background:var(--lake-2)}
/* tryb zmierzchu (klasę dodaje tawerna.js, tylko ≥1024 px i bez reduced motion) */
.tawerna-bar.is-dusk .tawerna-bar__stage{gap:0;position:relative}
.tawerna-bar.is-dusk .tawerna-bar__shot{grid-area:1 / 1}
.tawerna-bar.is-dusk .tawerna-bar__shot--dusk .frame{background:transparent}
.tawerna-bar__edge{position:absolute;left:0;right:0;top:0;height:1px;background:var(--accent-on-night);pointer-events:none;opacity:0}

/* 6. Wydarzenia: kalendarz roku + archiwum */
.tawerna-events .section__lead{max-width:60ch}
.tawerna-agenda{display:grid;list-style:none;margin:0;padding:0}
.tawerna-agenda__item{display:grid;gap:var(--s-3) var(--gap);padding:var(--s-6) 0;border-top:1px solid var(--line);max-width:none}
.tawerna-agenda__item:first-child{border-top:0;padding-top:0}
.tawerna-agenda__item:last-child{border-bottom:1px solid var(--line)}
.tawerna-agenda__when{display:grid;gap:var(--s-1);align-content:start;max-width:none}
.tawerna-agenda__when .t-num{font-size:clamp(2.25rem, 1.7rem + 2vw, 3.5rem);color:var(--accent-ink);letter-spacing:-.01em}
.tawerna-agenda__month{font-size:var(--t-small);font-weight:500;color:var(--ink-3)}
.tawerna-agenda__what{display:grid;gap:var(--s-2)}
.tawerna-agenda__what p{color:var(--ink-2);max-width:54ch}
.tawerna-agenda__cta{justify-self:start;align-self:start}
@media (min-width:768px){
  .tawerna-agenda__item{grid-template-columns:minmax(9rem, 2fr) 6fr;align-items:start}
  .tawerna-agenda__cta{grid-column:2}
}
@media (min-width:1024px){
  .tawerna-agenda__item{grid-template-columns:3fr 6fr 3fr}
  .tawerna-agenda__cta{grid-column:3;justify-self:end;margin-top:.5rem}
}
@media (hover:hover) and (pointer:fine){
  .tawerna-agenda__item .t-num{transition:transform var(--d-ui) var(--ease-ui);display:inline-block;transform-origin:left bottom}
  .tawerna-agenda__item:hover .t-num{transform:translateX(4px)}
}
.tawerna-archive{margin-top:var(--s-8);border-bottom:1px solid var(--line);interpolate-size:allow-keywords}
.tawerna-archive__summary{display:flex;align-items:center;justify-content:space-between;gap:var(--s-5);min-height:56px;padding:var(--s-4) 0;cursor:pointer;list-style:none}
.tawerna-archive__summary::-webkit-details-marker{display:none}
.tawerna-archive__summary .i{flex:none;transition:transform var(--d-ui) var(--ease-ui)}
.tawerna-archive[open] .tawerna-archive__summary .i{transform:rotate(45deg)}
.tawerna-archive::details-content{block-size:0;overflow:hidden;transition:block-size var(--d-panel) var(--ease-ui),content-visibility var(--d-panel) allow-discrete}
.tawerna-archive[open]::details-content{block-size:auto}
.tawerna-archive__list{display:grid;gap:var(--s-3);list-style:none;margin:0;padding:0 0 var(--s-6)}
.tawerna-archive__list li{display:grid;grid-template-columns:4rem 1fr;gap:var(--s-4);align-items:baseline;max-width:none;color:var(--ink-2)}
.tawerna-archive__year{font-size:1.25rem;color:var(--ink)}
@media (min-width:1024px){ .tawerna-archive__list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--gap)} }

/* 7. Na wynos */
.tawerna-takeaway__grid{display:grid;gap:var(--s-8) var(--gap)}
@media (min-width:768px){
  .tawerna-takeaway__grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end}
  .tawerna-offer--main{grid-column:1 / span 5}
  .tawerna-takeaway__grid > :nth-child(2){grid-column:7 / -1}
}
/* zdjęcie dania ma 960 px (klasa C): pionowy kadr, max 440 px szerokości */
.tawerna-offer--main .frame{aspect-ratio:4/5;max-width:440px}
.tawerna-offer{display:grid;gap:var(--s-3);justify-items:start;align-content:start}
.tawerna-offer .frame{width:100%;margin-bottom:var(--s-3)}
.tawerna-offer p{color:var(--ink-2)}
.tawerna-offer__tel{font-size:clamp(2rem, 1.6rem + 1.6vw, 3rem);color:var(--ink);margin-top:var(--s-2);transition:color var(--d-micro) var(--ease-ui)}
@media (hover:hover) and (pointer:fine){ .tawerna-offer__tel:hover{color:var(--sky-ink)} }

/* 8. Opinie */
.tawerna-reviews .quote blockquote{max-width:30ch}
.tawerna-reviews .t-quote{font-size:clamp(1.625rem, 1.2rem + 1.8vw, 2.75rem);line-height:1.2}

/* Zobacz też: ciaśniej nad formularzem */
.tawerna-more .t-h3{max-width:none}

/* Wydarzenia: rok ostatniej edycji (do czasu potwierdzenia planu na sezon) */
.tawerna-agenda__what .tawerna-agenda__last{order:-1;justify-self:start;display:inline-flex;align-items:center;gap:.4em;padding:.2em .6em;font-size:var(--t-small);font-weight:500;line-height:1.3;color:var(--ink-3);border:1px solid var(--line);font-variant-numeric:tabular-nums}
.tawerna-agenda__last span{color:var(--ink-2);font-weight:600}

/* Godziny otwarcia: widoczny placeholder do uzupełnienia przez klienta */
.tawerna-call__hours{display:flex;align-items:center;gap:var(--s-2);margin:0;color:var(--ink-2);font-weight:500}
.tawerna-call__hours .i{flex:none;color:var(--accent-ink)}
.tawerna-todo{display:inline-block;padding:0 .35em;border:1px dashed var(--ink-3);color:var(--ink-3);font-weight:400}
