/* KD Studio 4.12.3.6 — consolidated stylesheet. Historical version notes live in CHANGELOG.md. */
:root{--yellow:#deb305;--yellow-dark:#c79f00;--green:#597615;--orange:#ea5335;--blue:#00a3d2;--paper:#fffdf7;--ink:#2e2e2e;--muted:#666;--line:#e6ddc3;--shadow:0 14px 38px rgba(0,0,0,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Lato,Arial,sans-serif;line-height:1.6}a{color:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;z-index:99;background:#fff;padding:10px}.topbar{position:sticky;top:0;z-index:30;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.18)}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:flex-end;position:relative}.brand{position:absolute;left:0;top:0;width:236px;height:178px;background:var(--yellow);display:flex;align-items:center;justify-content:center;box-shadow:2px 3px 10px rgba(0,0,0,.25);z-index:3}.brand img{display:block;width:190px;max-height:145px}.topbar nav{display:flex;align-items:center;gap:28px}.topbar nav a{text-decoration:none;font-weight:800;font-size:.96rem}.topbar nav a:hover{color:var(--yellow-dark)}.nav-call{padding:11px 18px;background:var(--green);color:#fff!important;border-radius:4px}.nav-toggle{display:none}.hero{position:relative;display:grid;align-items:center;background:url('../images/banner.jpg') center top/cover no-repeat;color:#fff}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.75),rgba(0,0,0,.38) 58%,rgba(0,0,0,.12))}.hero-content{position:relative;z-index:2;padding:125px 0 78px 285px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-weight:900;font-size:.8rem;color:var(--yellow);margin:0 0 9px}.hero h1,.section-head h2,.story h2,.delivery h2,.contact h2{font-weight:900;line-height:1.05}.hero h1{margin:.1em 0 .25em;text-shadow:3px 3px 5px rgba(0,0,0,.45)}.lead{font-size:1.2rem;max-width:650px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:4px;text-decoration:none;font-weight:900;border:2px solid transparent}.primary{background:var(--yellow);color:#171717}.primary:hover{background:var(--yellow-dark)}.secondary{background:#fff;color:#111}.outline{border-color:var(--yellow);color:var(--yellow)}.hours{flex-wrap:wrap}.quick{background:var(--yellow);color:#111}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr)}.quick-grid a{padding:24px 28px;text-decoration:none;border-right:1px solid rgba(0,0,0,.18)}.quick-grid a:nth-child(2){background:var(--green);color:#fff}.quick-grid a:nth-child(3){background:var(--orange);color:#fff}.quick-grid span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;opacity:.78}.quick-grid strong{font-size:1.08rem}.menu-section{padding:82px 0;background:#f8f5eb}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px}.section-head h2,.story h2,.delivery h2,.contact h2{font-size:clamp(2.35rem,5vw,4rem);margin:0}.section-head>p{max-width:420px;color:var(--muted)}code{background:#eee7cf;padding:2px 6px;border-radius:4px}.menu-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.menu-tools label{font-weight:900}.menu-tools input{flex:1;min-width:220px;padding:13px 15px;border:2px solid var(--yellow);border-radius:4px;font:inherit;background:#fff}.menu-tools button{padding:13px 16px;border:0;border-radius:4px;background:var(--green);color:#fff;font-weight:800;cursor:pointer}.status{padding:20px;background:#fff;border:1px solid var(--line);border-radius:5px}.menu-list{display:grid;gap:12px}.menu-category{background:#fff;border:1px solid var(--line);border-radius:5px;overflow:hidden;box-shadow:0 3px 12px rgba(0,0,0,.05)}.menu-category:nth-child(4n+2){border-left-color:var(--green)}.menu-category:nth-child(4n+3){border-left-color:var(--orange)}.menu-category:nth-child(4n+4){border-left-color:var(--blue)}.menu-category summary{cursor:pointer;list-style:none;display:flex;align-items:center;padding:19px 22px;font-size:1.3rem;font-weight:900}.menu-category summary::-webkit-details-marker{display:none}.menu-category summary:after{content:'+';font-size:1.5rem}.menu-category[open] summary:after{content:'–'}.cat-note{font-size:.82rem;font-weight:500;color:var(--muted);margin-left:auto;margin-right:18px}.items{border-top:1px solid var(--line);padding:10px 22px 18px}.menu-item{display:grid;grid-template-columns:1fr auto;gap:18px;padding:12px 0;border-bottom:1px dotted #d7ceb5}.menu-item:last-child{border:0}.item-name{font-weight:700}.price{font-weight:900;color:var(--green);white-space:nowrap}.badges{display:inline-flex;gap:4px;margin-left:8px;vertical-align:middle}.badge{font-size:.68rem;padding:2px 5px;border:1px solid #d5c475;border-radius:4px;color:var(--muted)}.allergens{margin-top:22px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:5px;color:var(--muted)}.story{padding:86px 0;background:#fff}.story-grid{display:grid;grid-template-columns:1.1fr .9fr}.story img{width:100%;height:420px;object-fit:cover;border-radius:4px;box-shadow:var(--shadow);border-bottom:12px solid var(--yellow)}.story li{margin:8px 0}.delivery{background:#fff}.delivery-card{background:var(--green);color:#fff;padding:48px;border-radius:5px;display:flex;align-items:center;justify-content:space-between;gap:35px;box-shadow:var(--shadow)}.delivery-card .eyebrow{color:#fff}.delivery-card p{max-width:650px;color:#eef2df}.delivery-actions{display:flex;gap:12px;flex-wrap:wrap}.delivery .outline{border-color:#fff;color:#fff}.contact{padding:86px 0}.contact-grid{display:grid}.contact .eyebrow{color:#111}.contact address{font-style:normal;font-size:1.12rem}.contact iframe{border:0;border-radius:4px;box-shadow:var(--shadow)}footer .wrap{display:flex;justify-content:space-between;gap:20px}.mobile-call{display:none}.hidden{display:none!important}
@media(max-width:900px){.brand{width:190px;height:128px}.brand img{width:150px;max-height:105px}.hero-content{padding-left:210px}}
@media(max-width:800px){.wrap{width:min(100% - 28px,1180px)}.nav-wrap{height:74px}.brand{width:148px;height:96px}.brand img{width:116px;max-height:78px}.nav-toggle{display:block;border:0;background:var(--green);color:#fff;padding:9px 13px;border-radius:4px;font-weight:900}.topbar nav{position:absolute;left:0;right:0;top:74px;background:#fff;display:none;flex-direction:column;align-items:stretch;padding:20px 24px;border-bottom:1px solid var(--line)}.topbar nav.open{display:flex}.topbar nav a{padding:6px}.hero{min-height:610px}.hero-overlay{background:rgba(0,0,0,.62)}.hero-content{padding:125px 0 70px}.quick-grid{grid-template-columns:1fr}.quick-grid a{border-right:0;border-bottom:1px solid rgba(0,0,0,.15)}.section-head,.delivery-card{align-items:flex-start;flex-direction:column}.story-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.story img{height:300px}.menu-category summary{align-items:flex-start;flex-wrap:wrap}.cat-note{order:3;width:100%;margin:3px 0 0}.mobile-call{display:block;position:fixed;left:14px;right:14px;bottom:12px;z-index:25}.mobile-call a{display:block;background:var(--green);color:#fff;text-align:center;text-decoration:none;padding:14px;border-radius:999px;box-shadow:0 10px 30px rgba(0,0,0,.3);font-weight:900}body{padding-bottom:68px}footer .wrap{flex-direction:column}}

/* Wersja 3 — identyfikacja wizualna i zachowanie logo */
.brand{transition:width .32s ease,height .32s ease,box-shadow .32s ease;transform-origin:top left}
.brand img{transition:width .32s ease,max-height .32s ease}
.topbar.logo-small .brand{width:140px;height:122px}
.topbar.logo-small .brand img{width:112px;max-height:94px}
.topbar.logo-small .brand:hover,.topbar.logo-small .brand:focus-visible{width:254px;height:234px;box-shadow:4px 7px 22px rgba(0,0,0,.3)}
.topbar.logo-small .brand:hover img,.topbar.logo-small .brand:focus-visible img{width:202px;max-height:185px}
.hero-content{padding-left:0}
.hero .lead{background:rgba(0,0,0,.34);border-left:6px solid var(--yellow);padding:10px 16px;text-shadow:1px 1px 2px rgba(0,0,0,.5)}
.hours{display:inline-grid;gap:0;margin-top:28px;min-width:360px;background:rgba(255,255,255,.96);color:#222;border:3px solid var(--yellow);box-shadow:0 8px 24px rgba(0,0,0,.24)}
.hours-title{background:var(--yellow);padding:7px 14px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;font-size:.78rem}
.hours-row{display:flex;justify-content:space-between;gap:30px;padding:8px 14px;border-top:1px solid #e8dfbf}
.hours-row b{color:var(--green)}
.menu-category{--cat-color:var(--yellow);--cat-soft:#fff7d0;border-left:8px solid var(--cat-color);border-right:8px solid var(--cat-color)}
.menu-category summary{color:var(--cat-color);background:linear-gradient(90deg,var(--cat-soft),#fff 28%,#fff 72%,var(--cat-soft));text-shadow:none}
.menu-category summary:after{color:var(--cat-color);border:2px solid currentColor;border-radius:50%;width:30px;height:30px;line-height:25px;text-align:center;flex:0 0 30px}
.menu-category .price{color:var(--cat-color)}
.menu-category .items{border-top:2px solid var(--cat-color)}
.menu-category.cat-yellow{--cat-color:#c99f00;--cat-soft:#fff6c7}
.menu-category.cat-orange{--cat-color:#d94b30;--cat-soft:#ffe3db}
.menu-category.cat-blue{--cat-color:#008db7;--cat-soft:#daf5fc}
.menu-category.cat-green{--cat-color:#597615;--cat-soft:#eaf1d8}
.contact-label{margin:0 0 10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.contact-link{display:inline-block;text-decoration:none;font-weight:900;border-radius:3px}
@media(max-width:900px){.hero-content{padding-left:0}.topbar.logo-small .brand:hover,.topbar.logo-small .brand:focus-visible{width:190px;height:145px}.topbar.logo-small .brand:hover img,.topbar.logo-small .brand:focus-visible img{width:150px;max-height:118px}}
@media(max-width:800px){.brand,.topbar.logo-small .brand{width:148px;height:96px}.brand img,.topbar.logo-small .brand img{width:116px;max-height:78px}.topbar.logo-small .brand:hover,.topbar.logo-small .brand:focus-visible{width:148px;height:96px}.topbar.logo-small .brand:hover img,.topbar.logo-small .brand:focus-visible img{width:116px;max-height:78px}.hero-content{padding-top:145px}.hero h1{font-size:clamp(2.65rem,12vw,4.2rem)}.hours{min-width:0;width:100%;max-width:430px}.hours-row{gap:12px}.contact{background:var(--yellow)}}

/* Wersja 4 — korekty czytelności, kategorii, godzin i stopki */
.hero{
  min-height:520px;
  background-size:cover;
  background-position:center 42%;
}
.hero-content{
  padding-top:150px;
  padding-bottom:48px;
}
.hero h1{
  width:min(100%,880px);
  max-width:none;
  font-size:clamp(2.75rem,5vw,4.65rem);
  line-height:1.02;
  letter-spacing:-.035em;
  overflow-wrap:normal;
}
.hero .lead{margin:14px 0 0;max-width:700px}
.hero-actions{margin-top:22px}
.hero .btn{transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.hero .btn:hover,.hero .btn:focus-visible{transform:translateY(-2px);box-shadow:0 7px 18px rgba(0,0,0,.25)}
.hero .secondary:hover,.hero .secondary:focus-visible{background:var(--green);color:#fff;border-color:var(--green)}
.opening-strip{
  display:flex;
  width:max-content;
  max-width:100%;
  align-items:center;
  gap:14px;
  margin-top:25px;
  padding:9px 14px 9px 0;
  border-top:2px solid rgba(222,179,5,.85);
  border-bottom:2px solid rgba(222,179,5,.85);
  color:#fff;
  text-shadow:1px 1px 3px rgba(0,0,0,.8);
  font-size:.98rem;
}
.opening-label{background:var(--yellow);color:#171717;text-shadow:none;padding:5px 11px;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.opening-strip i{display:block;width:1px;height:22px;background:rgba(255,255,255,.55)}

/* Usuwa stare kolory nth-child, które nadpisywały lewy pasek. */
.menu-category,
.menu-category:nth-child(4n+2),
.menu-category:nth-child(4n+3),
.menu-category:nth-child(4n+4){
  border-left-color:var(--cat-color);
  border-right-color:var(--cat-color);
}
.menu-category{position:relative}
.menu-category summary{
  position:relative;
  border-left:0;
  border-right:0;
}
.menu-category summary::before{
  content:"";
  width:8px;
  align-self:stretch;
  background:var(--cat-color);
  margin:-19px 14px -19px -22px;
  flex:0 0 8px;
}
.menu-category .items{border-left:0;border-right:0}

#expand-all{
  width:174px;
  min-width:174px;
  white-space:nowrap;
  transition:background-color .2s ease,transform .2s ease;
}
#expand-all:hover,#expand-all:focus-visible{background:#425c0d;transform:translateY(-1px)}

/* Stopka bez zmiany barw napisu — ciemna, spokojna, z oryginalnym logo. */
footer{background:#292929;color:#f5f5f5;border-top:5px solid var(--yellow);padding:18px 0}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.footer-brand{display:flex;align-items:center;justify-content:center;width:72px;height:54px;background:var(--yellow);padding:5px}
.footer-brand img{display:block;max-width:100%;max-height:100%}
footer a{color:#fff;text-decoration-color:var(--yellow);text-underline-offset:4px}

@media(max-width:900px){
 .hero{min-height:500px}
 .hero-content{padding-top:132px;padding-bottom:42px}
 .hero h1{font-size:clamp(2.65rem,6vw,4.1rem)}
}
@media(max-width:800px){
 .hero{min-height:560px;background-position:58% center}
 .hero-content{padding-top:122px;padding-bottom:34px}
 .hero h1{font-size:clamp(2.35rem,10.5vw,3.7rem);letter-spacing:-.045em}
 .hero .lead{font-size:1.03rem}
 .opening-strip{width:100%;flex-wrap:wrap;gap:8px 12px;padding-right:8px}
 .opening-strip i{display:none}
 .opening-label{width:100%}
 #expand-all{width:174px;min-width:174px}
 .footer-inner{align-items:flex-start}
}

/* v5 — korekty nagłówków kategorii i sekcji kontaktowej */
.menu-category,
.menu-category:nth-child(4n+2),
.menu-category:nth-child(4n+3),
.menu-category:nth-child(4n+4){
  border-left-width:7px;
  border-right-width:8px;
}
.menu-category summary{
  justify-content:flex-start;
  text-align:left;
  padding-left:22px;
}
.menu-category summary::before{display:none}
.menu-category summary > span:first-child{
  flex:1 1 auto;
  min-width:0;
  text-align:left;
}
.menu-category .cat-note{
  flex:0 1 auto;
  margin-left:18px;
  margin-right:18px;
  text-align:left;
}
.menu-category summary::after{
  margin-left:auto;
  flex:0 0 30px;
}
.menu-category[open] summary{
  padding-left:22px;
  text-align:left;
}

.contact{
  background:linear-gradient(125deg,#d9a900 0 37%,#f0c62a 37% 100%);
}
.contact-info .eyebrow{
  color:#7a271c;
  font-weight:900;
  letter-spacing:.16em;
}
.contact-info h2{
  color:#fff;
  text-shadow:0 2px 2px rgba(80,47,0,.28);
  margin-bottom:24px;
}
.contact-info h2 span{
  color:#7a271c;
  text-shadow:none;
}
.facebook-link{
  display:inline-block;
  margin-top:18px;
  color:#fff;
  font-weight:900;
  text-decoration-thickness:2px;
  text-underline-offset:5px;
  text-shadow:0 1px 2px rgba(0,0,0,.25);
}
.facebook-link:hover,.facebook-link:focus-visible{color:#7a271c;text-shadow:none}

@media(max-width:800px){
 .menu-category summary{padding-left:18px}
 .menu-category[open] summary{padding-left:18px}
 .menu-category .cat-note{margin-left:0;margin-right:0;text-align:left}
 .contact{background:#e0b20c}
}

/* v6 — kontakt, przyciski, Facebook i konfiguracja */
.contact-info .eyebrow,
.contact-info h2,
.contact-info h2 span{
  color:#fff;
  text-shadow:0 2px 3px rgba(70,45,0,.28);
}
.contact-info h2 span{white-space:nowrap}
.contact-card{
  border-top:0;
  border-left:10px solid var(--green);
  padding:24px 26px;
  box-shadow:0 8px 24px rgba(0,0,0,.16);
}
.contact-label{color:var(--orange);font-size:.82rem}
.contact-card address{color:#333;margin-bottom:17px;font-size:1.12rem}
.contact-card address strong{color:#333;font-size:1.12rem;white-space:nowrap}
.contact-actions{display:flex;gap:10px;flex-wrap:wrap}
.contact-link{margin:0;padding:10px 14px;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}
.contact-link:hover,.contact-link:focus-visible{transform:translateY(-2px);box-shadow:0 6px 14px rgba(0,0,0,.2)}
.contact-link.phone{background:var(--green);color:#fff}
.contact-link.phone:hover,.contact-link.phone:focus-visible{background:#425c0d}
.contact-link.route{background:var(--blue);color:#fff}
.contact-link.route:hover,.contact-link.route:focus-visible{background:#0083a9}
.facebook-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;text-decoration:none;transition:transform .2s ease,background-color .2s ease,color .2s ease}
.facebook-icon svg{width:25px;height:25px;fill:currentColor}
.top-facebook{background:#1877f2;color:#fff}
.top-facebook:hover,.top-facebook:focus-visible{background:#0d5fc7;color:#fff;transform:translateY(-2px)}
.footer-links{display:flex;align-items:center;gap:18px}
.footer-facebook{background:#1877f2;color:#fff}
.footer-facebook:hover,.footer-facebook:focus-visible{background:#fff;color:#1877f2;transform:translateY(-2px)}
@media(max-width:800px){
 .top-facebook{width:34px;height:34px;margin:4px 0}
 .footer-links{width:100%;justify-content:space-between}
 .contact-info h2 span{font-size:.88em}
}


/* v7 — finalne poprawki interakcji i sekcji kontaktowej */
.nav-call{
  transition:background-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.topbar nav .nav-call:hover,
.topbar nav .nav-call:focus-visible{
  background:#425c0d;
  color:#fff!important;
  transform:translateY(-2px);
  box-shadow:0 6px 14px rgba(0,0,0,.2);
}
.delivery-actions .btn{
  min-width:154px;
  transition:background-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.delivery-actions .btn.primary{
  background:var(--yellow);
  color:#171717;
  border-color:transparent;
}
.delivery-actions .btn.primary:hover,
.delivery-actions .btn.primary:focus-visible{
  background:var(--yellow-dark);
  color:#171717;
  transform:translateY(-2px);
  box-shadow:0 7px 18px rgba(0,0,0,.22);
}
.contact-info .eyebrow{font-size:.75rem}
.contact-info h2{
  font-size:clamp(2.15rem,4.5vw,3.65rem);
}
.contact-card{
  background:rgba(255,255,255,.92);
  -webkit-backdrop-filter:blur(3px);
  backdrop-filter:blur(3px);
}
@media(max-width:800px){
  .contact-info h2{font-size:clamp(2rem,10vw,3rem)}
  .contact-card{background:rgba(255,255,255,.95)}
}

/* v8 — nazwa lokalu w hero, animacja wejścia i numer konta */
.hero-title{max-width:850px;text-align:left;position:relative}
.hero-welcome{display:block;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:clamp(1.3rem,2.3vw,2rem);letter-spacing:.03em;color:#fff;margin-bottom:-.2rem;text-shadow:0 2px 4px rgba(0,0,0,.7);opacity:0;transform:translateY(10px);animation:heroReveal .7s .1s ease forwards}
.hero-title h1{margin:.08em 0 .2em;line-height:.88;max-width:850px}
.hero-line{display:block;opacity:0;filter:blur(7px);transform:translateY(16px);text-shadow:0 2px 4px rgba(0,0,0,.7),0 0 12px rgba(255,219,83,.46)}
.hero-line-one{color:#fff8df;animation:heroGlow 1s .42s cubic-bezier(.2,.7,.2,1) forwards}
.hero-line-two{color:#fff;animation:heroGlow 1s .78s cubic-bezier(.2,.7,.2,1) forwards}
.hero-tagline{opacity:0;transform:translateY(10px);animation:heroReveal .7s 1.25s ease forwards;font-family:Georgia,'Times New Roman',serif;font-style:italic}
.hero-actions{opacity:0;transform:translateY(10px);animation:heroReveal .7s 1.48s ease forwards}
.opening-strip{opacity:0;transform:translateY(8px);animation:heroReveal .7s 1.68s ease forwards}
@keyframes heroGlow{0%{opacity:0;filter:blur(7px);transform:translateY(16px);text-shadow:0 0 0 rgba(255,219,83,0)}55%{opacity:1;filter:blur(1px);text-shadow:0 2px 4px rgba(0,0,0,.65),0 0 24px rgba(255,210,55,.72)}100%{opacity:1;filter:blur(0);transform:translateY(0);text-shadow:0 2px 4px rgba(0,0,0,.72),0 0 9px rgba(255,215,70,.3)}}
@keyframes heroReveal{to{opacity:1;transform:translateY(0)}}
.bank-account{margin:3px 0 18px;padding:13px 0 14px;border-top:1px solid rgba(46,46,46,.17);border-bottom:1px solid rgba(46,46,46,.17)}
.bank-label{display:block;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em;color:#555;margin-bottom:4px}
.bank-row{display:flex;align-items:center;gap:9px;min-width:0}
#bank-account-number{font-size:.91rem;font-weight:800;line-height:1.35;font-variant-numeric:tabular-nums;color:#2f2f2f}
#copy-bank-account{flex:0 0 35px;width:35px;height:35px;border:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--yellow);color:#171717;cursor:pointer;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}
#copy-bank-account svg{width:18px;height:18px;fill:currentColor}
#copy-bank-account:hover,#copy-bank-account:focus-visible{background:var(--yellow-dark);transform:translateY(-2px);box-shadow:0 5px 12px rgba(0,0,0,.18)}
.copy-status{display:block;min-height:1.2em;margin-top:3px;font-size:.76rem;font-weight:800;color:var(--green)}
@media(prefers-reduced-motion:reduce){.hero-welcome,.hero-line,.hero-tagline,.hero-actions,.opening-strip{animation:none;opacity:1;filter:none;transform:none}}
@media(max-width:800px){.hero-title{text-align:center}.hero-welcome{font-size:1.35rem}.hero-title h1{font-size:clamp(2.55rem,12.5vw,4rem);line-height:.92}.hero-line-two{font-size:.78em}.hero-tagline{text-align:left}.bank-row{align-items:flex-start}#bank-account-number{font-size:.84rem;overflow-wrap:anywhere}}

/* v9 — krój napisu zbliżony do ręcznie rysowanej typografii logo. */
.hero-title h1{
  font-family:'Lobster Two','Brush Script MT','Segoe Script',cursive;
  font-style:normal;
  font-weight:700;
  letter-spacing:-.025em;
}
.hero-line-one{font-size:1.02em}
.hero-line-two{font-size:.9em;margin-top:.04em}

/* v10 — dokładne liternictwo z oryginalnego logo w hero */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.hero-title-logo{display:flex;flex-direction:column;align-items:flex-start;width:min(100%,620px)}
.hero-logo-wordmark{
  display:block;
  width:clamp(235px,32vw,390px);
  height:auto;
  margin-top:2px;
  filter:drop-shadow(0 4px 5px rgba(0,0,0,.72)) drop-shadow(0 0 9px rgba(255,210,58,.34));
  opacity:0;
  transform:translateY(14px) scale(.975);
  animation:heroLogoReveal 1.15s cubic-bezier(.2,.8,.2,1) .28s forwards;
}
@keyframes heroLogoReveal{
  0%{opacity:0;transform:translateY(14px) scale(.975);filter:drop-shadow(0 4px 5px rgba(0,0,0,.72)) drop-shadow(0 0 26px rgba(255,202,30,.95))}
  70%{opacity:1;transform:translateY(0) scale(1);filter:drop-shadow(0 4px 5px rgba(0,0,0,.72)) drop-shadow(0 0 17px rgba(255,215,65,.68))}
  100%{opacity:1;transform:translateY(0) scale(1);filter:drop-shadow(0 4px 5px rgba(0,0,0,.72)) drop-shadow(0 0 8px rgba(255,210,58,.28))}
}
@media(max-width:800px){.hero-title-logo{align-items:center}.hero-logo-wordmark{width:clamp(220px,69vw,330px)}}
@media(prefers-reduced-motion:reduce){.hero-logo-wordmark{opacity:1;transform:none;animation:none}}

/* v11 — tekstowy logotyp w hero, bez wstawiania grafiki logo */
@import url('https://fonts.googleapis.com/css2?family=Lobster&display=swap');
.hero-title-script h1{
  width:max-content;
  max-width:100%;
  font-style:normal;
}
.hero-title-script h1 span{
  color:#fff8df;
  text-shadow:0 3px 5px rgba(0,0,0,.78),0 0 12px rgba(255,213,72,.38);
}
.hero-title-script h1 span:first-child{animation:heroGlow 1s .38s cubic-bezier(.2,.7,.2,1) forwards}
.hero-title-script h1 span:last-child{animation:heroGlow 1s .72s cubic-bezier(.2,.7,.2,1) forwards}
.special-offer-note{margin:0 0 22px;padding:18px 20px;background:#fff;border-left:7px solid var(--yellow);box-shadow:0 4px 16px rgba(0,0,0,.06)}
.special-offer-note strong{display:block;color:var(--green);text-transform:uppercase;letter-spacing:.09em;font-size:.78rem}
.special-offer-note p{margin:.35rem 0 0}
.special-offer-note .special-deadline{font-weight:800;color:#7e221b}
.special-wishes{margin-top:22px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:5px;color:var(--ink)}
.special-wishes strong{display:block;font-family:'Lobster','Brush Script MT','Segoe Script',cursive;font-size:1.55rem;color:#7e221b}
.special-wishes p{margin:.35rem 0 0}
@media(max-width:800px){.hero-title-script h1{align-items:center;width:100%;font-size:clamp(3rem,15vw,4.7rem)}.hero-title-script h1 span:last-child{margin-left:0}}
@media(prefers-reduced-motion:reduce){.hero-title-script h1 span{animation:none;opacity:1;filter:none;transform:none}}


/* v12: tekstowy logotyp w hero — bez grafiki logo */
.hero-title-logo,.hero-logo-wordmark{display:none!important}
.hero-title-script{display:block;max-width:850px;text-align:left}
.hero-title-script h1{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  margin:.04em 0 .18em;
  font-family:'Lobster','Lobster Two','Brush Script MT','Segoe Script',cursive;
  font-size:clamp(3.7rem,7.6vw,7rem);
  font-weight:400;
  line-height:.82;
  letter-spacing:-.035em;
  color:#fff9e8;
  text-shadow:0 3px 4px rgba(0,0,0,.72),0 0 14px rgba(222,179,5,.35);
}
.hero-title-script h1 span{
  display:block;
  opacity:0;
  filter:blur(7px);
  transform:translateY(16px) scale(.985);
  animation:heroGlow 1s cubic-bezier(.2,.7,.2,1) forwards;
}
.hero-title-script h1 span:first-child{animation-delay:.35s}
.hero-title-script h1 span:last-child{
  margin:.12em 0 0 .11em;
  font-size:.76em;
  animation-delay:.72s;
}
@keyframes heroGlow{
  0%{opacity:0;filter:blur(8px);transform:translateY(16px) scale(.985);text-shadow:0 0 26px rgba(255,208,42,.95)}
  60%{opacity:1;filter:blur(0);transform:translateY(0) scale(1);text-shadow:0 0 22px rgba(255,208,42,.72),0 3px 4px rgba(0,0,0,.7)}
  100%{opacity:1;filter:none;transform:none;text-shadow:0 3px 4px rgba(0,0,0,.72),0 0 10px rgba(222,179,5,.25)}
}
@media(max-width:800px){
 .hero-title-script{text-align:center;max-width:100%}
 .hero-title-script h1{align-items:center;width:100%;font-size:clamp(3rem,14vw,4.8rem);line-height:.88}
 .hero-title-script h1 span:last-child{margin:.12em 0 0}
}
@media(prefers-reduced-motion:reduce){.hero-title-script h1 span{animation:none;opacity:1;filter:none;transform:none}}


/* v13 — powrót do typografii v8, rysowanie napisu i pieróg */
.hero-title-v13{position:relative;display:block;max-width:900px;padding-left:86px;text-align:left}
.hero-title-v13 .hero-welcome{font-family:Georgia,'Times New Roman',serif!important;font-style:italic;font-weight:400}
.hero-title-v13 h1{display:flex!important;flex-direction:column;align-items:flex-start!important;width:auto!important;margin:.08em 0 .2em!important;font-family:Georgia,'Times New Roman',serif!important;font-style:italic!important;font-weight:700!important;font-size:clamp(3.15rem,6.2vw,5.8rem)!important;line-height:.88!important;letter-spacing:-.045em!important;color:#fff!important}
.hero-title-v13 h1 span{display:block!important;width:max-content;max-width:100%;margin:0!important;color:#fff!important;opacity:0;filter:none;transform:none;clip-path:inset(0 100% 0 0);text-shadow:0 2px 5px rgba(0,0,0,.75),0 0 28px rgba(255,199,36,.82)!important;animation:heroWriteV13 1.05s cubic-bezier(.2,.75,.2,1) forwards!important}
.hero-title-v13 h1 span:first-child{font-size:1em!important;animation-delay:.48s!important;color:#fff7dc!important}
.hero-title-v13 h1 span:last-child{font-size:.84em!important;margin-top:.08em!important;animation-delay:.86s!important}
.hero-dumpling{position:absolute;left:0;top:52%;width:67px;height:auto;object-fit:contain;opacity:0;transform:translate(-45px,-50%) rotate(-7deg);filter:drop-shadow(0 0 13px rgba(255,198,33,.8));animation:dumplingEnterV13 .82s .12s cubic-bezier(.18,.78,.28,1) forwards}
@keyframes heroWriteV13{0%{opacity:0;clip-path:inset(0 100% 0 0);text-shadow:0 0 30px rgba(255,199,36,.95)}55%{opacity:1;text-shadow:0 2px 5px rgba(0,0,0,.7),0 0 30px rgba(255,199,36,.9)}100%{opacity:1;clip-path:inset(0 0 0 0);text-shadow:0 2px 5px rgba(0,0,0,.72),0 0 8px rgba(255,210,65,.28)}}
@keyframes dumplingEnterV13{0%{opacity:0;transform:translate(-45px,-50%) rotate(-7deg)}72%{opacity:1;transform:translate(6px,-50%) rotate(2deg)}100%{opacity:.94;transform:translate(0,-50%) rotate(0)}}
.back-to-top{position:fixed;right:22px;bottom:22px;z-index:40;width:52px;height:52px;border:0;border-radius:50%;background:var(--yellow);color:#2b1805;font-size:1.65rem;font-weight:900;line-height:1;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.3);opacity:0;visibility:hidden;transform:translateY(14px) scale(.9);transition:opacity .22s ease,visibility .22s ease,transform .22s ease,background-color .2s ease,color .2s ease}
.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.back-to-top:hover,.back-to-top:focus-visible{background:#7c1714;color:#fff;transform:translateY(-3px) scale(1.04)}
@media(max-width:800px){.hero-title-v13{padding-left:0;text-align:center}.hero-title-v13 h1{align-items:center!important;font-size:clamp(2.55rem,12.5vw,4rem)!important}.hero-dumpling{position:relative;display:block;left:auto;top:auto;width:54px;margin:0 auto 3px;transform:translateX(-35px);animation:dumplingMobileV13 .75s .1s ease forwards}.back-to-top{right:16px;bottom:84px;width:48px;height:48px}@keyframes dumplingMobileV13{to{opacity:.94;transform:translateX(0)}}}
@media(prefers-reduced-motion:reduce){.hero-title-v13 h1 span,.hero-dumpling{animation:none!important;opacity:1!important;clip-path:none!important;transform:none!important}.back-to-top{transition:none}}

/* v14 — poprawiona sekwencja hero: pieróg -> Witaj w -> nazwa */
.hero-title-v13 .hero-welcome{display:block;opacity:0;transform:translateY(7px);animation:welcomeV14 .48s .34s ease forwards}
@keyframes welcomeV14{to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.hero-title-v13 .hero-welcome{animation:none!important;opacity:1!important;transform:none!important}}

/* v15: hero strony głównej — proporcje i animacja v8, nazwa w jednym wierszu */
.hero-title-v15{max-width:1050px;text-align:left;position:relative}
.hero-title-v15 h1{margin:.08em 0 .2em;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:700;line-height:.96;letter-spacing:-.045em;max-width:1050px;font-size:clamp(2.75rem,5.7vw,5.65rem)}
.hero-title-v15 .hero-line-horizontal{display:block;white-space:nowrap;color:#fff8df;font-size:1em;opacity:0;filter:blur(7px);transform:translateY(16px);text-shadow:0 2px 4px rgba(0,0,0,.7),0 0 12px rgba(255,219,83,.46);animation:heroGlow 1s .42s cubic-bezier(.2,.7,.2,1) forwards}
@media(max-width:980px){.hero-title-v15 h1{font-size:clamp(2.35rem,6.5vw,4.5rem)}}
@media(max-width:800px){.hero-title-v15{text-align:center;max-width:100%}.hero-title-v15 h1{font-size:clamp(2.1rem,9.1vw,3.6rem);line-height:1}.hero-title-v15 .hero-line-horizontal{white-space:normal}}
@media(prefers-reduced-motion:reduce){.hero-title-v15 .hero-line-horizontal{animation:none;opacity:1;filter:none;transform:none}}


/* v16 RC — hero: typografia i animacja v8, nazwa zawsze w jednym wierszu */
.hero-title-v16{max-width:1100px;text-align:left;position:relative}
.hero-title-v16 h1{margin:.08em 0 .2em;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:700;line-height:.92;letter-spacing:-.045em;max-width:1100px;font-size:clamp(2.45rem,5.15vw,5.05rem)}
.hero-title-v16 .hero-line-single{display:block;white-space:nowrap;color:#fff8df;font-size:.98em;opacity:0;filter:blur(7px);transform:translateY(16px);animation:heroGlow 1s .42s cubic-bezier(.2,.7,.2,1) forwards}
.special-offer-nav{border:2px solid #f2c51f;border-radius:4px;padding:.48rem .7rem!important;font-weight:900;transition:box-shadow .2s ease,transform .2s ease,background-color .2s ease}
.special-offer-nav.offer-ready{animation:offerPulseOnce 1.15s ease-out 1}
.special-offer-nav:hover,.special-offer-nav:focus-visible{box-shadow:0 0 0 3px rgba(255,214,55,.42),0 0 20px 6px rgba(255,205,36,.76);transform:translateY(-1px)}
@keyframes offerPulseOnce{0%{box-shadow:0 0 0 0 rgba(255,205,36,.9),0 0 12px 2px rgba(255,205,36,.58)}55%{box-shadow:0 0 0 9px rgba(255,205,36,.18),0 0 24px 7px rgba(255,205,36,.82)}100%{box-shadow:0 0 0 2px rgba(124,23,20,.18),0 0 14px 3px rgba(255,205,36,.62)}}
@media(max-width:800px){.hero-title-v16{text-align:center;max-width:100%}.hero-title-v16 h1{font-size:clamp(1.72rem,7.45vw,3.05rem);line-height:1;letter-spacing:-.05em}.hero-title-v16 .hero-line-single{white-space:nowrap}.special-offer-nav{display:block}}
@media(max-width:390px){.hero-title-v16 h1{font-size:clamp(1.55rem,7.1vw,2.2rem)}}
@media(prefers-reduced-motion:reduce){.hero-title-v16 .hero-line-single{animation:none;opacity:1;filter:none;transform:none}.special-offer-nav{animation:none!important}}

/* Etap II — moduły JSON */
[hidden]{display:none!important}.module-section{padding:72px 0}.recommendations{background:#fff8dc}.recommendations-grid{display:grid}.recommendation-card{align-items:flex-start;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;box-shadow:0 12px 35px rgba(0,0,0,.06)}.recommendation-card img{object-fit:cover}.recommendation-card p{margin:0 0 10px}.recommendation-card strong{font-size:1.1rem}.recommendation-badge{display:inline-block;background:#171717;color:#fff;border-radius:999px;padding:3px 9px;font-size:.72rem;font-weight:800;letter-spacing:.06em}.gallery{background:#f6f3ea}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.gallery-grid figure{margin:0;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.08)}.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.gallery-grid figcaption{padding:12px 15px;font-weight:700}.site-message{position:relative;z-index:1001;background:#202020;color:#fff}.site-message .wrap{display:flex;align-items:center;justify-content:center;gap:18px;min-height:42px}.site-message button{border:0;background:transparent;color:inherit;font-size:24px;cursor:pointer}.type-warning{background:#8d2c20}.type-success{background:#28683e}.cms-modal{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:20px}.cms-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68)}.cms-modal-card{position:relative;width:min(520px,100%);background:#fff;border-radius:20px;padding:34px;box-shadow:0 25px 80px rgba(0,0,0,.35)}.cms-modal-close{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:30px;cursor:pointer}.modal-open{overflow:hidden}.special-offer-nav[data-animation="pulse"]{animation:offerPulse 1.8s infinite}.special-offer-nav[data-animation="glow"]{box-shadow:0 0 0 0 var(--offer-color,#deb305);animation:offerGlow 2s infinite}@keyframes offerPulse{50%{transform:scale(1.045)}}@keyframes offerGlow{50%{box-shadow:0 0 18px 4px var(--offer-color,#deb305)}}@media(max-width:640px){.module-section{padding:48px 0}.recommendation-card{padding:17px}.site-message .wrap{padding:8px 14px;text-align:center}}
:root{--theme-primary:var(--yellow);--theme-primary-dark:var(--yellow-dark);--theme-secondary:var(--green);--theme-background:var(--paper);--theme-surface:#fff8dc;--theme-text:var(--ink);--theme-button-text:#171717}
.special-offer-nav{background:var(--offer-color,var(--theme-primary));color:var(--offer-text,var(--theme-button-text))!important;border-color:color-mix(in srgb,var(--offer-color,var(--theme-primary)) 68%,#fff);box-shadow:0 0 0 2px color-mix(in srgb,var(--offer-color,var(--theme-primary)) 22%,transparent),0 0 14px 3px color-mix(in srgb,var(--offer-color,var(--theme-primary)) 62%,transparent)}
.special-offer-nav:hover,.special-offer-nav:focus-visible{background:var(--theme-primary-dark);color:var(--theme-button-text)!important}
body[data-offer-theme] .recommendations{background:var(--theme-surface)}
body[data-offer-theme] .recommendation-badge{background:var(--theme-secondary)}
body[data-offer-theme] .recommendation-card strong{color:var(--theme-primary-dark)}
body[data-offer-theme] .cms-modal-card{border-top:7px solid var(--theme-primary)}
.special-offer-nav[data-animation="bounce"]{animation:offerBounce 1.7s ease-in-out infinite}.special-offer-nav[data-animation="shake"]{animation:offerShake 2.8s ease-in-out infinite}.special-offer-nav[data-animation="none"]{animation:none}
@keyframes offerBounce{0%,70%,100%{transform:translateY(0)}78%{transform:translateY(-6px)}86%{transform:translateY(0)}92%{transform:translateY(-3px)}}
@keyframes offerShake{0%,78%,100%{transform:rotate(0)}82%{transform:rotate(-2deg)}86%{transform:rotate(2deg)}90%{transform:rotate(-1deg)}}
@media(prefers-reduced-motion:reduce){.special-offer-nav[data-animation]{animation:none!important}}

.gallery-open{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.gallery-open:focus-visible{outline:4px solid #deb305;outline-offset:-4px}.gallery-lightbox{position:fixed;inset:0;z-index:2500;display:grid;place-items:center;padding:24px}.gallery-lightbox-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.82)}.gallery-lightbox figure{position:relative;z-index:1;margin:0;max-width:min(1000px,94vw);max-height:90vh}.gallery-lightbox img{display:block;max-width:100%;max-height:82vh;border-radius:14px}.gallery-lightbox figcaption{color:#fff;text-align:center;padding:10px;font-weight:700}.gallery-lightbox button{position:absolute;right:-12px;top:-18px;width:42px;height:42px;border:0;border-radius:50%;font-size:30px;line-height:1;cursor:pointer}


.offer-countdown[data-countdown-state="before"]{border-color:rgba(255,209,102,.62)}
.offer-countdown[data-countdown-state="before"] span{color:#ffe19a}
.upcoming-offer-teaser{border-top:1px solid color-mix(in srgb,var(--teaser-color,#deb305) 26%,transparent);border-bottom:1px solid color-mix(in srgb,var(--teaser-color,#deb305) 30%,transparent)}
.upcoming-offer-inner{display:grid;align-items:center}.upcoming-offer-copy{min-width:0}.upcoming-offer-inner h2{line-height:1.08}.upcoming-offer-intro{max-width:760px;margin:0}.upcoming-offer-start{gap:8px;flex-wrap:wrap;align-items:baseline}.upcoming-offer-start span{font-weight:800}.upcoming-offer-start strong{font-weight:900}.upcoming-offer-note{max-width:760px!important;color:var(--muted)}.upcoming-offer-action{display:grid;gap:6px;text-align:center;border:1px solid color-mix(in srgb,var(--teaser-color,#deb305) 35%,transparent);background:rgba(255,255,255,.72)}.upcoming-offer-action span{font-weight:900;letter-spacing:.07em;text-transform:uppercase}.upcoming-offer-action strong{font-variant-numeric:tabular-nums}
@media(max-width:760px){.upcoming-offer-teaser{padding:26px 0}.upcoming-offer-inner{grid-template-columns:1fr;gap:22px}.upcoming-offer-action{min-width:0;text-align:left}.upcoming-offer-action .btn{justify-self:start}}

.section-head > p:empty { display: none; }
.site-message.type-info{background:var(--message-info-bg,#315b7d);color:var(--message-info-text,#fff)}
.site-message.type-warning{background:var(--message-warning-bg,#8d2c20);color:var(--message-warning-text,#fff)}
.site-message.type-success{background:var(--message-success-bg,#28683e);color:var(--message-success-text,#fff)}
.site-message.type-urgent{background:var(--message-urgent-bg,#b51e29);color:var(--message-urgent-text,#fff)}
.site-message a{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:999px;background:var(--theme-primary);color:var(--theme-button-text)!important;text-decoration:none;font-weight:800}
.site-message a:hover,.site-message a:focus-visible{background:var(--theme-primary-dark);color:var(--theme-button-text)!important;outline:2px solid color-mix(in srgb,var(--theme-primary) 35%,#fff);outline-offset:2px}
.cms-modal-type{margin:0 0 6px;font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#6b6258}.cms-modal-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:24px}.cms-modal-actions .btn{border:0;cursor:pointer;text-decoration:none}.cms-modal-secondary{border:2px solid var(--theme-primary,#deb305)!important;background:transparent!important;color:#25211b!important}.cms-modal-card.popup-type-info{border-top-color:#2d6cdf}.cms-modal-card.popup-type-warning{border-top-color:#c47b00}.cms-modal-card.popup-type-success{border-top-color:#2f8a4c}.cms-modal-card.popup-type-urgent{border-top-color:#b4232f}@media(max-width:640px){.cms-modal-actions{align-items:stretch;flex-direction:column}.cms-modal-actions .btn{width:100%;text-align:center}}
.site-message.placement-top{width:100%;border-radius:0}
.site-message.placement-content{width:100%;margin:0;border-radius:0;box-shadow:none;overflow:hidden}
.site-message.placement-content .wrap{min-height:54px;padding:12px 30px;justify-content:flex-start}
.site-message.placement-content button{margin-left:auto}
@media(max-width:640px){.site-message.placement-content{width:100%;margin:0;border-radius:0}.site-message.placement-content .wrap{align-items:flex-start;text-align:left;gap:10px;padding:12px 18px}}
.menu-item .item-description{display:block;margin-top:2px;font-size:.86em;line-height:1.35;opacity:.72;font-weight:400}
@media(min-width:801px) and (max-width:1120px){
  .hero-title-v16 h1{font-size:clamp(2.1rem,4.35vw,3.45rem)}
}
@media(max-width:800px){
  .hero-title-v16 h1{font-size:clamp(1.9rem,8.35vw,3rem);line-height:1.02;letter-spacing:-.045em}
  .hero-title-v16 .hero-line-single{white-space:normal;text-wrap:balance}
  .hero-tagline{max-width:34rem;margin-inline:auto;text-align:center;font-size:1.05rem}
  .hero-actions{justify-content:center}
  .opening-strip{max-width:100%}
  .contact-grid>*{min-width:0}
  .contact iframe{display:block;width:100%;height:330px;min-height:330px}
}
@media(max-width:430px){
  .hero-title-v16 h1{font-size:clamp(1.72rem,8vw,2.3rem)}
  .hero-content{padding-top:112px;padding-bottom:58px}
  .hero-actions .btn{width:100%}
  .contact{padding:64px 0}
  .contact iframe{height:300px;min-height:300px}
}
.upcoming-offer-teaser{padding:24px 0;background:linear-gradient(135deg,color-mix(in srgb,var(--teaser-color,#deb305) 10%,#fff),#fffaf0)}
.upcoming-offer-inner{grid-template-columns:minmax(0,1fr) minmax(250px,300px);gap:28px}
.upcoming-offer-inner h2{margin:.12rem 0 .42rem;font-size:clamp(1.7rem,2.6vw,2.45rem)}
.upcoming-offer-intro{font-size:.98rem;line-height:1.55}
.upcoming-offer-start{display:inline-flex;margin:10px 0 0!important;padding:5px 9px;border-radius:7px;background:color-mix(in srgb,var(--teaser-color,#deb305) 12%,#fff);font-size:.88rem}
.upcoming-offer-note{margin:6px 0 0!important;font-size:.86rem}
.upcoming-offer-action{align-content:center;min-width:250px;padding:14px 16px;border-radius:11px;box-shadow:0 8px 22px rgba(56,38,28,.06)}
.upcoming-offer-action span{font-size:.72rem}
.upcoming-offer-action strong{font-size:1.25rem}
.upcoming-offer-action .btn{margin-top:5px;padding:11px 16px}
@media(max-width:760px){
  .upcoming-offer-teaser{padding:20px 0}
  .upcoming-offer-inner{gap:16px}
  .upcoming-offer-copy{padding-left:12px}
  .upcoming-offer-action{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;text-align:left}
  .upcoming-offer-action span,.upcoming-offer-action strong{grid-column:1}
  .upcoming-offer-action .btn{grid-column:2;grid-row:1/3;justify-self:end;margin-top:0}
}
@media(max-width:500px){
  .upcoming-offer-action{grid-template-columns:1fr}
  .upcoming-offer-action span,.upcoming-offer-action strong,.upcoming-offer-action .btn{grid-column:1;grid-row:auto}
  .upcoming-offer-action .btn{justify-self:stretch;margin-top:6px}
}
.section-title-block{
  --section-accent:var(--yellow);
  width:100%;max-width:100%;min-width:0;
  padding-left:15px;border-left:5px solid var(--section-accent);
}
.section-title-block .eyebrow{margin-bottom:5px}
.section-title-block h2{margin:0}
.section-title-block-on-dark{--section-accent:var(--yellow)}
.contact-title-block{--section-accent:var(--green)}
.section-head{margin-bottom:20px}
.story-grid{gap:46px}
.story-grid>*,.delivery-card>*{min-width:0}
.delivery-card>div:first-child{flex:1 1 auto}
.delivery-actions{flex:0 0 auto}

/* Zapowiedź: akcent obejmuje wyłącznie mały nagłówek i tytuł. */
.upcoming-offer-copy{padding-left:0;border-left:0}
.upcoming-offer-heading{margin-bottom:12px;--section-accent:var(--teaser-color,#deb305)}

/* Polecamy: ikona i nazwa w nagłówku, opis + cena na pełną szerokość karty. */
.recommendations-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.recommendations-grid[data-count="1"]{grid-template-columns:minmax(0,560px)}
.recommendations-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.recommendations-grid[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.recommendation-card{display:grid;grid-template-columns:1fr;align-content:start;gap:14px;padding:19px;min-width:0}
.recommendation-card-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;min-width:0}
.recommendation-card-title{min-width:0}
.recommendation-card img{width:64px;height:64px;border-radius:12px}
.recommendation-icon{display:grid;place-items:center;width:58px;height:58px;font-size:38px;line-height:1}
.recommendation-card h3{margin:5px 0 0;line-height:1.15;overflow-wrap:anywhere}
.recommendation-card-body{display:grid;gap:9px;min-width:0}
.recommendation-card-body p{margin:0;line-height:1.45;overflow-wrap:anywhere}
.recommendation-card-body strong{justify-self:start}

/* Kontakt i mapa: jeden równy blok na szerokich ekranach. */
.contact-grid{grid-template-columns:1fr 1fr;gap:32px;align-items:stretch}
.contact-info{display:flex;min-width:0;flex-direction:column}
.contact-card{width:100%;max-width:none;flex:1;display:flex;flex-direction:column;justify-content:center}
.contact iframe{display:block;width:100%;height:100%;min-height:430px;align-self:stretch}

@media(max-width:1050px){
  .recommendations-grid,
  .recommendations-grid[data-count="3"]{grid-template-columns:repeat(2,minmax(0,1fr))}
  .recommendations-grid[data-count="1"]{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:800px){
  .module-section,.menu-section,.story,.contact{padding:44px 0}
  .delivery{padding:0 0 44px}
  .section-head{margin-bottom:17px}
  .story-grid{gap:30px}
  .contact-grid{grid-template-columns:1fr;gap:22px}
  .contact-card{flex:none}
  .contact iframe{height:320px;min-height:320px}
}
@media(max-width:620px){
  .recommendations-grid,
  .recommendations-grid[data-count="2"],
  .recommendations-grid[data-count="3"]{grid-template-columns:1fr}
  .recommendation-card{padding:17px}
  .section-title-block{padding-left:12px;border-left-width:4px}
}
@media(max-width:430px){
  .module-section,.menu-section,.story,.contact{padding:38px 0}
  .delivery{padding:0 0 38px}
  .contact iframe{height:290px;min-height:290px}
}
.contact-title-block{margin-bottom:20px}
.section-head .section-title-block{flex:1 1 auto;min-width:0}
.upcoming-offer-heading.section-title-block{width:100%;min-width:0}
.module-section,.menu-section,.story,.contact{padding:46px 0 50px}
.delivery{padding:0 0 50px}
.story-grid{align-items:start}
.story-grid>div:first-child,.story-grid>img{align-self:start}
@media(max-width:800px){
  .module-section,.menu-section,.story,.contact{padding:38px 0 42px}
  .delivery{padding:0 0 42px}
}
@media(max-width:430px){
  .module-section,.menu-section,.story,.contact{padding:32px 0 36px}
  .delivery{padding:0 0 36px}
}
.menu-item .item-title-line{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;min-width:0}
.menu-item .item-title-line .item-name{min-width:0}
.menu-item .item-title-line .badges{margin-left:0;vertical-align:baseline;flex:0 0 auto}
.menu-item .item-title-line .badge{line-height:1.25}
@media(max-width:760px){
  .upcoming-offer-inner{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:16px}
  .upcoming-offer-copy,.upcoming-offer-action{width:100%;max-width:100%;min-width:0}
  .upcoming-offer-heading{width:100%;max-width:100%;min-width:0}
  .upcoming-offer-inner h2{font-size:clamp(1.75rem,9vw,2.35rem);overflow-wrap:anywhere}
  .upcoming-offer-intro,.upcoming-offer-note{max-width:none}
  .upcoming-offer-start{display:flex;width:fit-content;max-width:100%}
  .upcoming-offer-action{min-width:0}
}
@media(max-width:500px){
  .upcoming-offer-teaser{padding:18px 0}
  .upcoming-offer-inner{gap:14px}
  .upcoming-offer-action{padding:13px 14px}
  .upcoming-offer-action .btn{width:100%;justify-content:center}
}
@media(max-width:800px){
  .topbar nav{gap:4px;padding:14px 18px 16px}
  .topbar nav>a:not(.facebook-icon){padding:8px 8px;line-height:1.25}
  .topbar nav .special-offer-nav{margin-bottom:3px}
  .topbar nav .top-facebook{width:34px;height:34px;margin:5px 8px;padding:0}
  .topbar nav .nav-call{margin-top:3px;padding:10px 12px}
}

/* 4.12.2.2 — wspólne dane kontaktowe i treści zarządzane z KD Studio. */
.quick-grid a{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.quick-grid strong{max-width:100%;overflow-wrap:anywhere}
.quick-grid a:first-child{background:var(--blue);color:#fff}
.contact-owner{
  margin:-4px 0 13px;
  color:#333;
  font-weight:800;
  font-size:1rem;
}
.contact-link.phone-secondary{background:#6b7f22}
.contact-link.phone-secondary:hover,.contact-link.phone-secondary:focus-visible{background:#516317}
@media(max-width:800px){
  .opening-strip{width:100%}
  .contact-actions{display:grid;grid-template-columns:1fr 1fr}
  .contact-link.route{grid-column:1/-1;text-align:center}
}
@media(max-width:460px){.contact-actions{grid-template-columns:1fr}.contact-link.route{grid-column:auto}}

/* 4.12.2.6 — wspólne, bardziej kompaktowe Hero na obu stronach. */
.hero{
  min-height:440px;
}
.hero-content{
  padding-top:112px;
  padding-bottom:34px;
}
@media(max-width:900px){
  .hero{min-height:450px}
  .hero-content{padding-top:108px;padding-bottom:32px}
}
@media(max-width:800px){
  .hero{min-height:500px}
  .hero-content{padding-top:108px;padding-bottom:32px}
}
@media(max-width:430px){
  .hero{min-height:470px}
  .hero-content{padding-top:104px;padding-bottom:30px}
}

/* 4.12.3.6 — Automatic Recommended Rotation */
.recommendation-unit-note{display:block;margin-top:-3px;color:#6e665d;font-size:.78rem;font-weight:700;line-height:1.3}
