/* RELA 3.21 – szerkezeti „bőrök” az oldaltípusokhoz.
   A body osztályai (Layouts::bodyClass): sh-* szakaszcímek, fl-* ritmus, dv-* elválasztók, ds-* kiemelt ételek, sp-* előrendelés,
   ab-* rólunk, gl-* galéria, ft-* lábléc, wm-* vízjel; valamint hero-collage és hero-circle nyitókép.
   Minden változat mobilon egy hasábra egyszerűsödik. */

.sec{position:relative;isolation:isolate}

/* ---------------------------------------------------------------- szakaszcímek */
.sh-center .section-head{flex-direction:column;align-items:center;text-align:center;gap:14px}
.sh-center .section-head>div{display:flex;flex-direction:column;align-items:center}
.sh-center .section-head h2{display:flex;align-items:center;gap:18px}
.sh-center .section-head h2::before,.sh-center .section-head h2::after{content:"";width:clamp(24px,5vw,64px);height:2px;background:var(--gold);flex:none}
.sh-center .section-head p{margin-inline:auto;text-align:center}
.sh-center .sec-about h2,.sh-center .sec-contact h2,.sh-center .sec-loyalty h2{text-align:left}

main{counter-reset:secno}
.sh-rule .sec .section-head h2{display:inline-block;padding-bottom:10px;background:linear-gradient(var(--accent),var(--accent)) 0 100%/64px 5px no-repeat}
.sh-rule .sec .section-head h2::before{counter-increment:secno;content:counter(secno,decimal-leading-zero);display:block;font-family:var(--font-body);font-size:.8rem;font-weight:800;letter-spacing:.24em;color:var(--accent);margin-bottom:8px}
.sh-rule .band .section-head h2{background-image:linear-gradient(var(--gold),var(--gold))}
.sh-rule .band .section-head h2::before{color:var(--gold)}

@media(min-width:900px){
  .sh-side .sec:is(.sec-specials,.sec-offers,.sec-featured,.sec-gallery,.sec-services,.sec-categories,.sec-weekly)>.wrap{display:grid;grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start}
  .sh-side .sec .wrap>.section-head{flex-direction:column;align-items:flex-start;position:sticky;top:120px;margin:0;padding-top:6px;border-top:3px solid var(--ink)}
  .sh-side .band .wrap>.section-head{border-top-color:var(--gold)}
  .sh-side .sec .section-head h2{font-size:clamp(1.7rem,1.2rem + 1.6vw,2.4rem)}
  .sh-side .sec-featured .dish-list{grid-template-columns:1fr}
}

.sh-stamp .sec .section-head h2{display:inline-block;background:var(--accent);color:#fff;padding:.18em .62em .24em;border-radius:6px;transform:rotate(-2deg);box-shadow:5px 5px 0 var(--ink);line-height:1.1}
.sh-stamp .band .section-head h2{background:var(--gold);color:var(--ink);box-shadow:5px 5px 0 rgba(0,0,0,.35)}
.sh-stamp .sec .section-head p{margin-top:16px}

.sh-big .sec .section-head h2{font-size:clamp(2.4rem,1.2rem + 5vw,5.2rem);line-height:.92;text-transform:uppercase;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:2px var(--heading,var(--ink));paint-order:stroke}
.sh-big .band .section-head h2{-webkit-text-stroke-color:#fff}
@supports not (-webkit-text-stroke:1px #000){.sh-big .sec .section-head h2{color:var(--heading,var(--ink))}}

/* ---------------------------------------------------------------- ritmus */
.fl-alternate main>.sec:not(.band):nth-of-type(even){background:var(--primary-soft)}
.fl-alternate main>.sec:not(.band):nth-of-type(even) .dish,.fl-alternate main>.sec:not(.band):nth-of-type(even) .surface{background:var(--surface)}

.fl-cards{background:var(--bg-2)}
.fl-cards main>.sec:not(.band):not(.sec-categories)>.wrap{background:var(--surface);border-radius:28px;box-shadow:0 18px 50px -24px rgba(0,0,0,.28);padding:clamp(22px,4vw,48px);border:1px solid var(--line)}
.fl-cards main>.sec:not(.band){padding-block:clamp(18px,3vw,34px)}
.fl-cards main>.sec:not(.band):first-of-type{padding-top:clamp(36px,5vw,64px)}
.fl-cards .sec-about{border:0;background:transparent}

@media(min-width:1100px){
  .fl-boxed{background:var(--primary-deep)}
  .fl-boxed::before{opacity:.12!important}
  .fl-boxed main{max-width:1280px;margin:28px auto 0;background:var(--bg);border-radius:14px 14px 0 0;overflow:hidden;box-shadow:0 30px 80px -30px rgba(0,0,0,.6);border:6px solid color-mix(in srgb,#fff 12%,transparent)}
  .fl-boxed .footer{max-width:1280px;margin:0 auto 28px!important;border-radius:0 0 14px 14px}
}

@media(min-width:1000px){
  .fl-magazine main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:0;grid-auto-flow:row dense}
  .fl-magazine main>*{grid-column:1/-1;min-width:0}
  .fl-magazine main>.sec:is(.sec-about,.sec-loyalty,.sec-contact,.sec-services){grid-column:auto;border-inline:0}
  .fl-magazine main>.sec:is(.sec-about,.sec-loyalty,.sec-contact,.sec-services)>.wrap{width:auto;margin-inline:clamp(20px,4vw,56px);grid-template-columns:1fr;gap:28px}
  .fl-magazine main>.sec:is(.sec-about,.sec-loyalty,.sec-contact,.sec-services):nth-of-type(odd){border-right:1px solid var(--line)}
  .fl-magazine .sec-loyalty .points-card{max-width:420px}
}

/* ---------------------------------------------------------------- elválasztók (a sávok teteje / alja) */
.dv-wave{--dvt:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24' preserveAspectRatio='none'%3E%3Cpath d='M0 24V12Q30 0 60 12T120 12V24Z'/%3E%3C/svg%3E");--dvb:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24' preserveAspectRatio='none'%3E%3Cpath d='M0 0V12Q30 24 60 12T120 12V0Z'/%3E%3C/svg%3E");--dvw:160px}
.dv-zigzag{--dvt:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 24' preserveAspectRatio='none'%3E%3Cpath d='M0 24V22L20 2 40 22V24Z'/%3E%3C/svg%3E");--dvb:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 24' preserveAspectRatio='none'%3E%3Cpath d='M0 0V2L20 22 40 2V0Z'/%3E%3C/svg%3E");--dvw:40px}
.dv-scallop{--dvt:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 24'%3E%3Cpath d='M0 24A24 24 0 0 1 48 24Z'/%3E%3C/svg%3E");--dvb:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 24'%3E%3Cpath d='M0 0A24 24 0 0 0 48 0Z'/%3E%3C/svg%3E");--dvw:48px}
.dv-torn{--dvt:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 24' preserveAspectRatio='none'%3E%3Cpath d='M0 24V10l14 6 18-9 16 7 20-8 12 9 22-6 16 8 24-10 18 7 14-5 20 9 22-8 24 7V24Z'/%3E%3C/svg%3E");--dvb:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 24' preserveAspectRatio='none'%3E%3Cpath d='M0 0V14l16-7 18 9 20-8 14 6 22-9 16 8 20-5 18 9 22-8 16 6 22-8 18 7 18-6V0Z'/%3E%3C/svg%3E");--dvw:240px}
.dv-dots{--dvt:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24'%3E%3Ccircle cx='16' cy='15' r='7'/%3E%3Crect y='17' width='32' height='7'/%3E%3C/svg%3E");--dvb:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24'%3E%3Ccircle cx='16' cy='9' r='7'/%3E%3Crect width='32' height='7'/%3E%3C/svg%3E");--dvw:32px}
:is(.dv-wave,.dv-zigzag,.dv-scallop,.dv-torn,.dv-dots) main>:is(.band,.sec.band),
.fl-alternate:is(.dv-wave,.dv-zigzag,.dv-scallop,.dv-torn,.dv-dots) main>.sec:not(.band):nth-of-type(even){
  -webkit-mask:var(--dvt) 0 0/var(--dvw) 24px repeat-x,linear-gradient(#000,#000) 0 23px/100% calc(100% - 46px) no-repeat,var(--dvb) 0 100%/var(--dvw) 24px repeat-x;
  mask:var(--dvt) 0 0/var(--dvw) 24px repeat-x,linear-gradient(#000,#000) 0 23px/100% calc(100% - 46px) no-repeat,var(--dvb) 0 100%/var(--dvw) 24px repeat-x;
  margin-block:-2px}
:is(.dv-wave,.dv-zigzag,.dv-scallop,.dv-torn,.dv-dots) main>.hero:not(.hero-v-elegant){
  -webkit-mask:linear-gradient(#000,#000) 0 0/100% calc(100% - 23px) no-repeat,var(--dvb) 0 100%/var(--dvw) 24px repeat-x;
  mask:linear-gradient(#000,#000) 0 0/100% calc(100% - 23px) no-repeat,var(--dvb) 0 100%/var(--dvw) 24px repeat-x}
.dv-slant main>:is(.band,.hero:not(.hero-v-elegant)),.fl-alternate.dv-slant main>.sec:not(.band):nth-of-type(even){clip-path:polygon(0 0,100% 0,100% calc(100% - 3.2vw),0 100%);padding-bottom:calc(3.2vw + 8px)}
.dv-slant main>.band{clip-path:polygon(0 3.2vw,100% 0,100% calc(100% - 3.2vw),0 100%);padding-block:calc(3.2vw + 6px)}

/* ---------------------------------------------------------------- kiemelt ételek (kezdőlap) */
:is(.ds-scroll,.ds-polaroid,.ds-magazine) .sec-featured .dish{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"thumb thumb" "head head" "desc desc" "meta add";background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:0 0 14px;overflow:hidden;align-content:start}
:is(.ds-scroll,.ds-polaroid,.ds-magazine) .sec-featured .dish>*:not(.thumb){margin-inline:14px}
:is(.ds-scroll,.ds-polaroid,.ds-magazine) .sec-featured .dish .thumb{width:100%;height:auto;aspect-ratio:4/3;border-radius:0;border:0}
:is(.ds-scroll,.ds-magazine) .sec-featured .dish h3{color:var(--heading,var(--ink))}
.mnu-board:is(.ds-scroll,.ds-magazine) .sec-featured .dish{background:#1d2120;color:#ece7da;border-color:#1d2120}
.mnu-board:is(.ds-scroll,.ds-magazine) .sec-featured .dish h3{color:#fff}
.mnu-board:is(.ds-scroll,.ds-magazine) .sec-featured .dish .desc{color:rgba(236,231,218,.72)}
.ds-polaroid .sec-featured .dish h3,.ds-polaroid .sec-featured .dish .chip{color:#2a2622}
.ds-pricelist.mnu-board .sec-featured .dish h3{color:var(--heading,var(--ink))}
/* a has-bands sávozás (átlátszó kártya) ne írja felül a saját hátterű kártyákat */
body.ds-polaroid main>.section.sec-featured .dish-list>.dish{background:#fffdf8}
body.mnu-board:is(.ds-scroll,.ds-magazine) main>.section.sec-featured .dish-list>.dish{background:#1d2120}
:is(.ds-scroll,.ds-polaroid,.ds-magazine) .sec-featured .dish.no-thumb::before{content:"";grid-area:thumb;aspect-ratio:4/3;background:var(--primary) var(--pattern) center/72px;opacity:.85}
:is(.ds-scroll,.ds-polaroid,.ds-magazine) .sec-featured .dish .leader{display:none}
:is(.ds-scroll,.ds-polaroid,.ds-magazine) .sec-featured .dish .head{flex-wrap:wrap;justify-content:space-between;margin-top:10px;gap:4px 10px}
:is(.ds-scroll,.ds-polaroid,.ds-magazine) .sec-featured .dish .price{font-weight:800;color:var(--accent)}
:is(.ds-scroll,.ds-polaroid,.ds-magazine) .sec-featured .dish .desc{font-size:.88rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.ds-scroll .sec-featured .dish-list{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,290px);grid-template-columns:none;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 4px 18px;scrollbar-width:thin}
.ds-scroll .sec-featured .dish{scroll-snap-align:start}

.ds-polaroid .sec-featured .dish-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:34px 26px;padding:10px}
.ds-polaroid .sec-featured .dish{background:#fffdf8;color:#2a2622;border:0;border-radius:3px;padding:12px 0 18px;box-shadow:0 14px 30px -12px rgba(0,0,0,.35),0 2px 4px rgba(0,0,0,.08);transform:rotate(-1.8deg);transition:transform .25s}
.ds-polaroid .sec-featured .dish:nth-child(even){transform:rotate(1.6deg)}
.ds-polaroid .sec-featured .dish:nth-child(3n){transform:rotate(-.6deg)}
.ds-polaroid .sec-featured .dish:hover{transform:rotate(0) scale(1.03);z-index:2}
.ds-polaroid .sec-featured .dish .thumb{width:calc(100% - 24px);margin:0 12px;aspect-ratio:1}
.ds-polaroid .sec-featured .dish h3{font-family:var(--font-display);font-style:italic;font-size:1.2rem}
.ds-polaroid .sec-featured .dish .desc{color:#5a534b}
.ds-polaroid .sec-featured .dish :is(.chip,.tag,.badge){background:#f1ebe0;border-color:#e2d9c9;color:#2a2622}
.ds-polaroid .sec-featured .dish .add-btn{background:var(--accent);border-color:var(--accent);color:#fff}

@media(min-width:760px){
  .ds-magazine .sec-featured .dish-list{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:auto;gap:18px}
  .ds-magazine .sec-featured .dish:first-child{grid-row:span 2;grid-column:1}
  .ds-magazine .sec-featured .dish:first-child .thumb{aspect-ratio:auto;height:100%;min-height:340px;grid-row:1}
  .ds-magazine .sec-featured .dish:first-child{grid-template-rows:1fr auto auto auto}
  .ds-magazine .sec-featured .dish:first-child h3{font-size:1.6rem;font-family:var(--font-display)}
}
@media(max-width:759px){.ds-magazine .sec-featured .dish-list{display:grid;grid-template-columns:1fr;gap:16px}}

.ds-pricelist .sec-featured .dish-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(28px,5vw,72px);max-width:none}
.ds-pricelist .sec-featured .dish{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head head" "desc add" "meta add";border-bottom:0;padding:14px 0;background:transparent;border-radius:0;box-shadow:none}
.ds-pricelist .sec-featured .dish .thumb,.ds-pricelist .sec-featured .dish.no-thumb::before{display:none}
.ds-pricelist .sec-featured .dish>*{margin-inline:0!important}
.ds-pricelist .sec-featured .dish .leader{display:block;flex:1;border-bottom:2px dotted var(--ink-3);opacity:.55;transform:translateY(-5px)}
.ds-pricelist .sec-featured .dish h3{font-family:var(--font-display);font-size:1.2rem}
.ds-pricelist .sec-featured .dish .price{font-family:var(--font-display);font-size:1.2rem;color:var(--heading,var(--ink));font-weight:700}
.ds-pricelist .sec-featured .dish .add-btn{width:34px;height:34px}
@media(max-width:760px){.ds-pricelist .sec-featured .dish-list{grid-template-columns:1fr}}

/* ---------------------------------------------------------------- előrendelés */
.sp-banner .sec-specials .special{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
.sp-banner .sec-specials .special-media{order:2;min-height:300px}
.sp-banner .sec-specials .special-body{justify-content:center;padding:clamp(24px,4vw,48px)}
.sp-banner .sec-specials .special-body h2{font-size:var(--step-3)}
@media(max-width:760px){.sp-banner .sec-specials .special{grid-template-columns:1fr}.sp-banner .sec-specials .special-media{order:0;min-height:210px}.sp-banner .sec-specials .special-body h2{font-size:var(--step-2)}}

@media(min-width:760px){
  .sp-poster .sec-specials .specials{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
  .sp-poster .sec-specials .special{grid-template-columns:1fr;grid-template-rows:auto 1fr}
  .sp-poster .sec-specials .special-media{aspect-ratio:4/5;min-height:0}
  .sp-poster .sec-specials .special-body{text-align:center;align-items:center}
  .sp-poster .sec-specials .special-body .btn{align-self:center!important}
  .sp-poster .sec-specials .special-facts{justify-items:center}
}

.sp-ticket .sec-specials .special{border:2px dashed var(--line-2);box-shadow:none;background:var(--surface);overflow:visible;position:relative}
.sp-ticket .sec-specials .special::before,.sp-ticket .sec-specials .special::after{content:"";position:absolute;top:50%;width:34px;height:34px;margin-top:-17px;border-radius:50%;background:var(--bg);border:2px dashed var(--line-2);z-index:2}
.sp-ticket .sec-specials .special::before{left:-19px;clip-path:inset(0 0 0 50%)}
.sp-ticket .sec-specials .special::after{right:-19px;clip-path:inset(0 50% 0 0)}
.sp-ticket .sec-specials .special-media{margin:12px;border-radius:calc(var(--radius) - 4px);overflow:hidden;min-height:220px}
.sp-ticket .sec-specials .special-body{border-left:2px dashed var(--line-2)}
@media(max-width:760px){.sp-ticket .sec-specials .special-body{border-left:0;border-top:2px dashed var(--line-2)}}

/* ---------------------------------------------------------------- rólunk */
.ab-overlay .sec-about{background:#1d1b18 var(--about-img,none) center/cover no-repeat;border:0;padding-block:clamp(70px,10vw,140px)}
.ab-overlay .sec-about::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,10,10,.78),rgba(10,10,10,.35))}
.ab-overlay .sec-about .split>div:first-child{background:var(--surface);border-radius:var(--radius);padding:clamp(22px,3vw,40px);box-shadow:var(--shadow-lg)}
.ab-overlay .sec-about .split>.surface{background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(6px)}

.ab-quote .sec-about .split{grid-template-columns:1fr;justify-items:center;text-align:center;max-width:900px}
.ab-quote .sec-about h2{font-size:var(--step--1);letter-spacing:.24em;text-transform:uppercase;color:var(--accent);font-family:var(--font-body)}
.ab-quote .sec-about .prose{font-family:var(--font-display);font-style:italic;font-size:clamp(1.25rem,1rem + 1.1vw,1.9rem);line-height:1.45;color:var(--heading,var(--ink));position:relative}
.ab-quote .sec-about .prose::before{content:"“";display:block;font-size:5rem;line-height:.6;color:var(--gold);font-style:normal}
.ab-quote .sec-about .split>.surface{width:min(100%,720px);text-align:left}
@media(min-width:700px){.ab-quote .sec-about .hours{columns:2;column-gap:40px}.ab-quote .sec-about .hours tbody{display:block}.ab-quote .sec-about .hours tr{display:flex;justify-content:space-between;break-inside:avoid;border-bottom:1px dashed var(--line-2)}.ab-quote .sec-about .hours td{border:0}}

.ab-board .sec-about .split>.surface{background:#2c312e radial-gradient(circle at 30% 20%,rgba(255,255,255,.06),transparent 60%);color:#f1efe6;border:10px solid #7b5634;border-radius:6px;box-shadow:inset 0 0 30px rgba(0,0,0,.45),0 18px 40px -16px rgba(0,0,0,.5)}
.ab-board .sec-about .split>.surface h3{color:#fff;font-family:var(--font-display);font-style:italic;font-size:1.6rem;text-align:center}
.ab-board .sec-about .hours td{border-bottom:1px dashed rgba(255,255,255,.25);color:#f1efe6;font-size:1.02rem}
.ab-board .sec-about .hours tr.today td{color:var(--gold)}
.ab-board .sec-about .split>.surface .muted{color:rgba(255,255,255,.7)!important}

/* ---------------------------------------------------------------- galéria */
.gl-grid .sec-gallery .gallery{columns:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:12px}
.gl-grid .sec-gallery .gallery figure{margin:0;aspect-ratio:1}
.gl-grid .sec-gallery .gallery img,.gl-mosaic .sec-gallery .gallery img,.gl-film .sec-gallery .gallery img{height:100%;object-fit:cover}

@media(min-width:700px){
  .gl-mosaic .sec-gallery .gallery{columns:auto;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(130px,14vw,190px);gap:10px}
  .gl-mosaic .sec-gallery .gallery figure{margin:0;border-radius:4px}
  .gl-mosaic .sec-gallery .gallery figure:first-child{grid-column:span 2;grid-row:span 2}
  .gl-mosaic .sec-gallery .gallery figure:nth-child(6){grid-column:span 2}
  .gl-mosaic .sec-gallery .gallery a{height:100%}
}

.gl-film .sec-gallery .gallery{columns:auto;display:flex;gap:10px;overflow-x:auto;padding:26px 14px;background:#151515;border-radius:6px;position:relative;scroll-snap-type:x mandatory;
  background-image:radial-gradient(circle,#f4efe6 0 4px,transparent 4.5px),radial-gradient(circle,#f4efe6 0 4px,transparent 4.5px);background-size:22px 22px;background-position:0 2px,0 calc(100% + 9px);background-repeat:repeat-x}
.gl-film .sec-gallery .gallery figure{flex:0 0 clamp(200px,26vw,300px);aspect-ratio:4/3;margin:0;border-radius:2px;scroll-snap-align:start}
.gl-film .sec-gallery .gallery a{height:100%}

.gl-polaroid .sec-gallery .gallery{columns:auto;display:flex;flex-wrap:wrap;justify-content:center;gap:22px 18px;padding:10px 0}
.gl-polaroid .sec-gallery .gallery figure{flex:0 0 clamp(150px,20vw,220px);margin:0;background:#fffdf8;padding:10px 10px 34px;border-radius:2px;box-shadow:0 12px 28px -12px rgba(0,0,0,.4);transform:rotate(-3deg);overflow:visible}
.gl-polaroid .sec-gallery .gallery figure:nth-child(2n){transform:rotate(2.5deg) translateY(10px)}
.gl-polaroid .sec-gallery .gallery figure:nth-child(3n){transform:rotate(-1deg) translateY(-6px)}
.gl-polaroid .sec-gallery .gallery figure:hover{transform:rotate(0) scale(1.05);z-index:2}
.gl-polaroid .sec-gallery .gallery img{aspect-ratio:1;object-fit:cover}
.gl-polaroid .sec-gallery .gallery figcaption{position:static;background:none;color:#4a443d;padding:8px 2px 0;font-family:var(--font-display);font-style:italic;text-align:center}

/* ---------------------------------------------------------------- lábléc */
.ft-light .footer{background:var(--surface);color:var(--ink-2);border-top:1px solid var(--line)}
.ft-light .footer::before{opacity:.18;background-color:transparent;filter:invert(1)}
.ft-light .footer h3,.ft-light .footer a:hover,.ft-light .footer .brand{color:var(--heading,var(--ink))}
.ft-light .footer li[style*="color:#fff"]{color:var(--accent)!important}
.ft-light .footer .footer-bottom{border-color:var(--line);color:var(--ink-3)}
.ft-light .footer .social a{border-color:var(--line);color:var(--ink)}

.ft-center .footer-grid{grid-template-columns:1fr!important;justify-items:center;text-align:center;gap:26px}
.ft-center .footer-grid>div:first-child .brand{flex-direction:column;gap:14px}
.ft-center .footer-grid>div:first-child .brand .name{font-size:clamp(2rem,1.4rem + 2.4vw,3.2rem)}
.ft-center .footer-grid>div:first-child p{margin-inline:auto}
.ft-center .footer .social{justify-content:center}
.ft-center .footer ul{grid-auto-flow:column;grid-template-rows:none;justify-content:center;gap:6px 22px;flex-wrap:wrap}
.ft-center .footer-grid>div:nth-child(2) ul{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 22px}
.ft-center .footer-grid>div:nth-child(2) li{display:inline-flex!important;gap:8px!important}
.ft-center .footer-grid>div:nth-child(3) ul{display:flex;flex-wrap:wrap;justify-content:center}
.ft-center .footer .news .inline-form{justify-content:center}
.ft-center .footer-bottom{justify-content:center;text-align:center}

.ft-color .footer{background:var(--accent);color:rgba(255,255,255,.9);margin-top:clamp(70px,9vw,130px);overflow:visible}
.ft-color .footer::before{top:-34px;height:36px;opacity:1;background:var(--accent);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24' preserveAspectRatio='none'%3E%3Cpath d='M0 24V12Q30 0 60 12T120 12V24Z'/%3E%3C/svg%3E") 0 0/180px 36px repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24' preserveAspectRatio='none'%3E%3Cpath d='M0 24V12Q30 0 60 12T120 12V24Z'/%3E%3C/svg%3E") 0 0/180px 36px repeat-x}
.ft-color .footer .footer-bottom{border-color:rgba(255,255,255,.25)}
.ft-color .footer .btn{background:var(--ink);border-color:var(--ink)}

.ft-receipt .footer{background:#fbfaf6;color:#2b2b2b;font-family:ui-monospace,"SFMono-Regular","DejaVu Sans Mono",Menlo,Consolas,monospace;font-size:.86rem;margin-top:clamp(70px,9vw,130px);overflow:visible;box-shadow:0 -10px 30px -20px rgba(0,0,0,.3)}
.ft-receipt .footer::before{top:-14px;height:15px;opacity:1;background:#fbfaf6;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14'%3E%3Cpath d='M0 14L10 2 20 14Z'/%3E%3C/svg%3E") 0 0/20px 15px repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14'%3E%3Cpath d='M0 14L10 2 20 14Z'/%3E%3C/svg%3E") 0 0/20px 15px repeat-x}
.ft-receipt .footer .wrap{max-width:980px}
.ft-receipt .footer-grid>div{border-top:2px dashed #b9b4a8;padding-top:16px}
.ft-receipt .footer h3,.ft-receipt .footer .brand .name{color:#111;font-family:inherit;text-transform:uppercase;letter-spacing:.12em;font-size:.95rem}
.ft-receipt .footer .brand .mark{filter:grayscale(1)}
.ft-receipt .footer li[style*="color:#fff"]{color:#000!important;font-weight:800}
.ft-receipt .footer a:hover{color:#000}
.ft-receipt .footer .footer-bottom{border-top:2px dashed #b9b4a8;color:#555}
.ft-receipt .footer .footer-bottom::before{content:"*** KÖSZÖNJÜK, HOGY NÁLUNK JÁRTÁL ***";display:block;width:100%;text-align:center;letter-spacing:.2em;margin-bottom:10px;color:#111}
.ft-receipt .footer .social a{border-color:#b9b4a8;color:#111}

/* ---------------------------------------------------------------- vízjel */
.wm-corner main>.sec:not(.band)::after,.wm-big main>.sec:not(.band)::after,.wm-scatter main>.sec:not(.band)::after{content:"";position:absolute;z-index:-1;pointer-events:none;background:var(--primary);-webkit-mask:var(--pattern) center/contain no-repeat;mask:var(--pattern) center/contain no-repeat}
.wm-corner main>.sec:not(.band)::after{width:clamp(170px,20vw,300px);aspect-ratio:1;right:-30px;top:18px;opacity:.09;transform:rotate(-14deg)}
.wm-corner main>.sec:not(.band):nth-of-type(even)::after{right:auto;left:-30px;top:auto;bottom:18px;transform:rotate(12deg)}
.wm-big main>.sec:not(.band)::after{width:min(70vw,720px);aspect-ratio:1;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-8deg);opacity:.05}
.wm-scatter main>.sec:not(.band)::after{inset:0;opacity:.06;-webkit-mask-size:230px;mask-size:230px;-webkit-mask-repeat:repeat;mask-repeat:repeat;-webkit-mask-position:40px 30px;mask-position:40px 30px}
.ab-overlay .sec-about::after{display:none}

/* ---------------------------------------------------------------- nyitókép: kollázs */
.hero-v-collage .wrap{grid-template-columns:1fr 1fr}
.hero-v-collage .collage{position:relative;min-height:clamp(320px,38vw,520px)}
.hero-v-collage .collage figure{position:absolute;margin:0;overflow:hidden;background:#fff;padding:8px;box-shadow:0 26px 50px -20px rgba(0,0,0,.55);border-radius:6px}
.hero-v-collage .collage img{width:100%;height:100%;object-fit:cover;border-radius:3px}
.hero-v-collage .collage .c1{inset:0 18% 14% 0;transform:rotate(-3deg)}
.hero-v-collage .collage .c2{width:44%;aspect-ratio:1;right:0;top:6%;transform:rotate(5deg)}
.hero-v-collage .collage .c3{width:40%;aspect-ratio:4/3;right:6%;bottom:0;transform:rotate(-6deg)}
.hero-v-collage .collage-badge{position:absolute;left:-14px;bottom:4%;background:var(--gold);color:var(--ink);font-family:var(--font-display);font-weight:700;padding:.5em 1em;border-radius:999px;transform:rotate(-8deg);box-shadow:4px 4px 0 var(--ink);max-width:70%;text-align:center;line-height:1.15}
.hero-v-collage h1{max-width:11ch}
@media(max-width:860px){.hero-v-collage .wrap{grid-template-columns:1fr}.hero-v-collage .collage{min-height:300px;margin-top:10px}}

/* ---------------------------------------------------------------- nyitókép: kerek tányér */
.hero-v-circle .wrap{grid-template-columns:1.05fr .95fr;align-items:center}
.hero-v-circle .plate{position:relative;width:min(100%,500px);aspect-ratio:1;justify-self:center}
.hero-v-circle .ring{position:absolute;inset:0;width:100%;height:100%;animation:rela-spin 40s linear infinite}
.hero-v-circle .ring text{fill:var(--gold);font:700 15px/1 var(--font-body);letter-spacing:.32em}
.hero-v-circle .dish-img{position:absolute;inset:13%;border-radius:50%;overflow:hidden;box-shadow:0 0 0 12px rgba(255,255,255,.92),0 0 0 14px rgba(0,0,0,.08),0 40px 70px -24px rgba(0,0,0,.6);background:#fff}
.hero-v-circle .dish-img img{width:100%;height:100%;object-fit:cover}
.hero-v-circle .facts{grid-column:1/-1;justify-content:center}
@keyframes rela-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.hero-v-circle .ring{animation:none}}
@media(max-width:860px){.hero-v-circle .wrap{grid-template-columns:1fr}.hero-v-circle .plate{width:min(86vw,380px)}}
.anim-none .hero-v-circle .ring{animation:none}

/* ---------------------------------------------------------------- mobil: egyszerűsítés */
@media(max-width:760px){
  .sh-big .sec .section-head h2{font-size:clamp(2rem,9vw,3rem)}
  .fl-cards main>.sec:not(.band)>.wrap{border-radius:18px}
  .wm-big main>.sec:not(.band)::after{width:90vw}
}
