/* ============================================================
   PRECISE, DIZAJN V2  (JEDEN ZDROJ PRAVDY)
   ------------------------------------------------------------
   Toto je jediné miesto, kde sa nastavuje vizuálna identita V2
   (čistý/„ambi" smer). Zmena tu = zmena na celom webe.
   Napojené je vo všetkých *.html cez <link> pred </head>, takže
   prepisuje pôvodné inline štýly stránok.

   REPLIKÁCIA na iné weby (group/club/kantíny):
   skopíruj tento súbor do príslušného projektu a napoj ho.
   Odlišnosti značiek rieš cez html[data-brand="..."] nižšie,
   NIE kopírovaním iných hodnôt do stránok.

   FONT: nadpisy = Fraunces (vo vetách), text = Instrument Sans.
   Fraunces self-host z fonts/ (Fontsource, OFL), bez Google Fonts (GDPR).
   Detaily: claude/precise-group-dizajn-manual.md (v2)
   ============================================================ */

/* --- Fraunces: self-host (fonts/) --------------------------- */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400 600;font-display:swap;
  src:url(../fonts/fraunces-latin-ext-wght-normal.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400 600;font-display:swap;
  src:url(../fonts/fraunces-latin-wght-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:400 600;font-display:swap;
  src:url(../fonts/fraunces-latin-ext-wght-italic.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:400 600;font-display:swap;
  src:url(../fonts/fraunces-latin-wght-italic.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* ------------------------------------------------------------ */

/* === GLOBÁLNE TOKENY (mení sa tu, prejaví sa všade) ========= */
:root{
  /* Catering obálka, tmavá teplá čierna (premium/večer) */
  --ink:#121008; --coal:#1B1810; --coal2:#221d12; --card:#1a1710;
  --cream:#EFE7D8; --muted:#BDB4A1; --faint:#8c826f;
  /* Oranžová = LEN akcent (linka, slovo, jedno CTA), nikdy plocha */
  --orange:#EA821F; --orange-2:#f59a3c;
  --line:rgba(239,231,216,.12); --line-2:rgba(239,231,216,.22);
  /* Rádius, oblejšie, vzdušnejšie */
  --r:14px; --r-lg:20px; --r-xl:26px; --pill:999px;
  /* Typografia */
  --disp:'Fraunces',Georgia,'Times New Roman',serif;   /* nadpisy */
  --hd:'Instrument Sans','Trebuchet MS',system-ui,sans-serif; /* labely, UI */
  --bd:'Instrument Sans',system-ui,-apple-system,sans-serif;  /* text */
}

/* === TYPOGRAFIA V2: nadpisy Fraunces vo vetách (bez verzálok) */
h1,h2,h3,h4{font-family:var(--disp);font-weight:500;letter-spacing:-.02em;text-transform:none;line-height:1.08}
.hero h1,.h-xl{font-weight:400;letter-spacing:-.022em;line-height:1.06}
.hero h1 .or{font-style:italic;font-weight:400;color:var(--orange)}
.foot-claim h3{font-weight:500}
/* editoriálne čísla v číselnom rade a kalkulačke */
.trust .num,.stotal .big,.stepper .val{font-family:var(--disp);font-weight:400;letter-spacing:-.01em}
/* eyebrow ostáva label (Instrument Sans, verzálky), len jemnejší prestrk */
.eyebrow{letter-spacing:.2em}

/* === PILL TLAČIDLÁ namiesto ostrých ========================= */
/* pill vzhľad, bez zásahu do paddingu (necháva responzívne nav pravidlá tak) */
.btn{border-radius:var(--pill);text-transform:none;letter-spacing:.01em;font-weight:600}
.tlink{text-transform:none;letter-spacing:.01em}
.pill{border-radius:var(--pill)}

/* === OBLÉ ROHY (mäkší, „ambi" pocit) ======================== */
.scard,.rcard,.tribox,.emc,.summary-box,.figure,.stage-rv,.chip-img,
.st-chip,.inv,.base,.aud .card,.hubcard,.modal-card,.band{border-radius:var(--r-lg)}
.fx .main{border-radius:var(--r-xl)}
.figure,.fx .main{overflow:hidden}

/* === MIESTO PRE ZNAČKOVÉ VARIANTY (replikácia) ==============
   Odkomentuj a doplň v príslušnom webe. Mení sa len akcent/obálka,
   NIE štruktúra. Zelená pre Kantíny je zástupná (potvrdiť HEX).
html[data-brand="kantiny"]{--ink:#EFE7D8;--cream:#121008;--orange:#2F5F49;}
html[data-brand="club"]{--ink:#0A0A0B;--orange:#C9A86A;}
============================================================ */

/* === MOBIL: poistka proti vodorovnému pretečeniu ============
   grid deti sa smú zmršťovať (rieši preplnenie kalkulačky na 375 px) */
.calc,.calc>div,.base-grid,.st-grid,.base,.st-chip,.summary-box,
.stage-grid,.em-grid,.ref-grid,.trust .grid,.hub{min-width:0}
.base b,.base .d,.scard .bd,.emc,.rcard .bd{min-width:0;overflow-wrap:anywhere}

/* === ROZBAĽOVACIE MENU „Catering" (desktop hover / mobil rozbalené) === */
.nav-drop{position:relative}
.nav-drop-t{cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.nav-drop .caret{font-size:.7em;opacity:.7;transition:transform .2s}
.nav-drop:hover .caret{transform:rotate(180deg)}
.nav-drop-menu{position:absolute;top:100%;left:0;margin-top:10px;min-width:262px;
  background:rgba(18,16,8,.98);backdrop-filter:blur(12px);border:1px solid var(--line-2);
  border-radius:16px;padding:10px;display:flex;flex-direction:column;gap:2px;z-index:70;
  opacity:0;visibility:hidden;transform:translateY(6px);transition:.2s ease;
  box-shadow:0 22px 44px -22px rgba(0,0,0,.75)}
.nav-drop:hover .nav-drop-menu{opacity:1;visibility:visible;transform:none}
.nav-drop-menu a{padding:11px 14px;border-radius:10px;font-size:14.5px;font-weight:500;
  white-space:nowrap;color:var(--cream);opacity:.9}
.nav-drop-menu a::after{display:none!important}
.nav-drop-menu a:hover{background:rgba(234,130,31,.12);color:var(--orange-txt);opacity:1}
/* neviditeľný mostík, nech kurzor neprepadne medzi trigger a menu */
.nav-drop::after{content:"";position:absolute;top:100%;left:0;right:0;height:14px}

@media (max-width:1080px){
  /* v mobilnom menu je „Catering" rozklikávací: zbalený, otvorí sa ťuknutím */
  .nav-drop{width:100%}
  .nav-drop-t{justify-content:center;width:100%}
  .nav-drop .caret{display:inline-block}
  .nav-drop.open .caret{transform:rotate(180deg)}
  .nav-drop-menu{position:static;opacity:1;visibility:visible;transform:none;margin:0;
    min-width:0;background:transparent;border:0;box-shadow:none;padding:0 0 0 14px;
    border-left:2px solid var(--line-2);max-height:0;overflow:hidden;transition:max-height .3s ease}
  .nav-drop.open .nav-drop-menu{max-height:640px;padding:6px 0 6px 14px}
  .nav-drop::after{display:none}
}

/* mobil: dlhé tlačidlo sa radšej zalomí, než by pretieklo */
@media (max-width:480px){ .btn{white-space:normal;text-align:center} }

html{background:var(--ink)}

/* Horné menu výraznejšie: hrubšie a plne viditeľné */
.nav-links > a, .nav-links .nav-drop-t{font-weight:600;opacity:1;font-size:15px}

/* === PÄTKA: Precise Group badge (strecha) === */
.foot-group{border:1px solid var(--line-2);border-radius:26px;background:#0e0d0c;padding:clamp(24px,3vw,40px);margin-bottom:40px}
.foot-group-top{display:grid;grid-template-columns:auto 1fr;gap:clamp(22px,3vw,44px);align-items:center}
.fg-lockup{display:flex;align-items:center;padding-right:clamp(22px,2.8vw,44px);border-right:1px solid var(--line-2)}
.fg-logo{height:clamp(38px,5.4vw,60px);width:auto;display:block}
.fg-mark{width:58px;height:58px;border-radius:17px;background:var(--orange);display:grid;place-items:center;flex:none;box-shadow:0 8px 24px -8px rgba(234,130,31,.6)}
.fg-mark i{width:8px;height:29px;background:#0e0d0c;border-radius:4px;box-shadow:-11px 0 0 #0e0d0c,11px 0 0 #0e0d0c}
.fg-word{display:flex;flex-direction:column;line-height:1;font-family:var(--sans)}
.fg-word b{font-weight:700;font-size:23px;letter-spacing:.14em;color:#f6f3ee}
.fg-word span{font-weight:600;font-size:10.5px;letter-spacing:.42em;color:var(--orange-txt);margin-top:5px}
.foot-group-copy h3{font-family:var(--disp);font-weight:500;font-size:clamp(21px,2.4vw,27px);line-height:1.1;margin:0 0 8px;color:#fff}
.foot-group-copy p{margin:0;color:var(--muted);font-size:15px;line-height:1.55;max-width:60ch}
.foot-group-copy p strong{color:var(--cream)}
.foot-group-links{display:flex;align-items:center;gap:14px;margin-top:18px;flex-wrap:wrap}
.foot-group-links .fgl-web{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:14px;color:var(--orange-txt)}
.foot-group-links .fgl-web:hover{color:#fff}
.foot-group-links .fgl-web .arrow{transition:transform .2s}.foot-group-links .fgl-web:hover .arrow{transform:translateX(3px)}
.foot-group-links .fgl-ic{width:40px;height:40px;border:1px solid var(--line-2);border-radius:11px;display:grid;place-items:center;color:var(--muted)}
.foot-group-links .fgl-ic:hover{border-color:var(--orange);color:var(--orange-txt);transform:translateY(-2px)}
.foot-group-brands{margin-top:30px;padding-top:26px;border-top:1px solid var(--line)}
.foot-group-brands .fb-label{display:block;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--faint);margin-bottom:16px}
.fg-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.fg-tiles .tile{height:62px;border:1px solid var(--line-2);border-radius:14px;background:#100f0d;display:grid;place-items:center;padding:10px;transition:border-color .2s,transform .2s}
a.tile:hover{border-color:var(--orange);transform:translateY(-2px)}
.fg-tiles img{max-height:30px;max-width:80%;width:auto;opacity:.82}
a.tile:hover img{opacity:1}
.fg-tiles .tile.txt{font-family:var(--sans);font-size:12px;font-weight:600;color:var(--faint);text-align:center;line-height:1.22;letter-spacing:.01em}
@media(max-width:820px){.foot-group-top{grid-template-columns:1fr;gap:20px}.fg-lockup{border-right:none;padding-right:0;padding-bottom:18px;border-bottom:1px solid var(--line-2)}.foot-group-copy h3{font-size:clamp(20px,5.5vw,24px)}.foot-group-copy p{font-size:14.5px}}
@media(max-width:560px){.fg-tiles{grid-template-columns:repeat(2,1fr)}}

/* === „Člen Precise Group" endorsement badge (pre každý web skupiny) === */
.pg-badge{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--line-2);border-radius:999px;padding:8px 16px 8px 9px;background:rgba(239,231,216,.04);transition:border-color .2s,transform .2s}
.pg-badge:hover{border-color:var(--orange);transform:translateY(-1px)}
.pg-badge img{height:24px;width:auto;display:block;flex:none}
.pg-badge .t{font-family:var(--sans);font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--cream);line-height:1}
.pg-badge .t b{color:var(--orange-txt);font-weight:600}

/* === Hlavička: socials za CTA + telefón (posledný, klikací na mobile) === */
.nav-social{display:inline-flex;gap:7px;align-items:center}
.nav-social a{width:36px;height:36px;border:1px solid var(--line-2);border-radius:10px;display:grid;place-items:center;color:var(--cream);opacity:.85;transition:.2s}
.nav-social a:hover{border-color:var(--orange);color:var(--orange-txt);opacity:1;transform:translateY(-1px)}
.nav-phone{display:inline-flex;align-items:center;gap:8px;font-family:var(--sans);font-weight:600;font-size:14px;color:var(--cream);white-space:nowrap}
.nav-phone svg{color:var(--orange-txt);flex:none}
.nav-phone:hover{color:var(--orange-txt)}
@media(max-width:1080px){.nav-social{display:none}.nav-phone span{display:none}.nav-phone{border:1px solid var(--line-2);border-radius:10px;width:38px;height:38px;justify-content:center}}
/* Pätka: 3 stĺpce namiesto 4 */
.foot-cols{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.foot-cols{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.foot-cols{grid-template-columns:1fr}}

/* legal / GDPR pages */
.legal{color:var(--muted);line-height:1.7}
.legal h2{font-family:var(--disp);font-weight:500;font-size:clamp(20px,2.4vw,26px);color:var(--cream);margin:34px 0 10px}
.legal h3{font-family:var(--disp);font-weight:500;font-size:17px;color:var(--cream);margin:20px 0 6px}
.legal p{margin:0 0 12px;max-width:70ch}
.legal a{color:var(--orange-txt);text-decoration:underline;text-underline-offset:2px}
.legal b{color:var(--cream)}
.foot-legal a{color:var(--muted);text-decoration:underline;text-underline-offset:2px}
.foot-legal a:hover{color:var(--orange-txt)}

/* pätka: spodná lišta, lockup + prevádzkovateľ vpravo */
.pg-badge .pg-mark{width:24px;height:24px;border-radius:8px;background:var(--orange);display:grid;place-items:center;flex:none}
.pg-badge .pg-mark i{width:3px;height:12px;background:#0d0b06;border-radius:2px;box-shadow:-4px 0 0 #0d0b06,4px 0 0 #0d0b06}
.foot-bottom .foot-legal{display:flex;flex-direction:column;gap:6px;text-align:right;font-size:12.5px;line-height:1.65;color:var(--faint)}
.foot-bottom .foot-legal .fl-oper{color:var(--faint)}
.fcol-find{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.fcol-find .fc-label{display:block;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin-bottom:7px}
.fcol-find p{margin:0}
@media(max-width:820px){.foot-bottom .foot-legal{text-align:center}}

/* pätka: logá značiek ako čistý rad (bez boxov, bez odkazov) */


.pg-logo{height:38px;width:auto;display:block;opacity:.92;transition:opacity .2s}
.pg-badge:hover .pg-logo{opacity:1}

/* rad log: jeden riadok, plynulé škálovanie, zalomí až keď by boli nečitateľné */
.fg-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:clamp(12px,1.8vw,24px) clamp(16px,2.4vw,32px)}
.fg-logos a{display:flex;align-items:center;min-width:0;opacity:.92;transition:opacity .2s,transform .2s}
.fg-logos a:hover{opacity:1;transform:translateY(-2px)}
.fg-logos img{max-height:clamp(30px,3.9vw,44px);max-width:clamp(78px,9.5vw,104px);width:auto;height:auto;display:block}
.fg-logos img.fgl-smile,.fg-logos img.fgl-poke{max-height:clamp(24px,3.1vw,35px);max-width:clamp(60px,7.4vw,82px)}
.fg-logos img.fgl-rv,.fg-logos img.fgl-cake{max-height:clamp(36px,4.6vw,52px);max-width:clamp(92px,11vw,122px)}

/* ── LOGO SLIDER klientov/partnerov (plynulý posuv) ─────────────── */
.logo-wall{margin-top:clamp(16px,2.4vw,26px)}
.logo-wall + .logo-wall{margin-top:clamp(26px,3.4vw,44px)}
.logo-slider{position:relative;margin-top:clamp(14px,2vw,22px);overflow:hidden;
  padding:clamp(8px,1.2vw,14px) 0;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.lw-track{display:flex;align-items:center;width:max-content;
  gap:clamp(38px,5vw,74px);will-change:transform;animation:lw-scroll 63s linear infinite}
.lw-track.rev{animation-direction:reverse}
.logo-slider:hover .lw-track{animation-play-state:paused}
.lw-track img{height:clamp(20px,2.3vw,28px);width:auto;flex:none;display:block;
  opacity:.9;transition:opacity .2s}
.lw-track img:hover{opacity:1}
.lw-track img.lw-wide{height:clamp(16px,1.9vw,23px)}
.lw-track img.lw-mark{height:clamp(32px,3.6vw,42px)}
@keyframes lw-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.lw-track{animation:none}
  .logo-slider{-webkit-mask-image:none;mask-image:none;overflow-x:auto}}

/* ── Pruh log pod hero („Varili sme pre") ───────────────────────── */
.cs-logo{height:clamp(18px,2vw,24px);width:auto;display:block;opacity:.9;
  transition:opacity .2s,transform .2s}
.cs-logo:hover{opacity:1;transform:translateY(-1px)}
.cs-logo.cs-mark{height:clamp(25px,2.9vw,34px)}

.step .krok{display:block;font-size:clamp(15px,1.4vw,18px);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--orange);margin-bottom:10px}

/* dopytový formulár, skupiny možností */
.optgroup{margin-bottom:14px}
.optgroup:last-child{margin-bottom:0}
.optlab{display:block;font-family:var(--hd);font-weight:600;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange-txt);margin:0 0 8px}

/* Box picker (foodboxy / dezerty) */
.boxstep{position:absolute;top:10px;right:10px;z-index:3;display:inline-flex;align-items:center;gap:4px;margin:0;border:1px solid rgba(239,231,216,.22);border-radius:999px;padding:3px;background:rgba(18,16,8,.72)}
.boxstep button{width:26px;height:26px;border-radius:50%;border:1px solid rgba(239,231,216,.3);background:transparent;color:var(--cream);cursor:pointer;font-size:15px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0}
.boxstep button:hover{border-color:var(--orange);color:var(--orange)}
.boxstep .val{min-width:16px;text-align:center;font-family:var(--hd);font-weight:700;color:var(--cream);font-size:14px}
.boxstep .boxks{display:none}
.boxstep .js-bxm,.boxstep .val{display:none}
.boxstep.has{background:rgba(234,130,31,.95);border-color:var(--orange)}
.boxstep.has .js-bxm,.boxstep.has .val{display:inline-flex}
.boxstep.has button{border-color:rgba(18,16,8,.4);color:#1a1710}
[data-box]{position:relative}
[data-box].boxsel{outline:2px solid var(--orange);outline-offset:2px;border-radius:12px}

.picksum.need{border-color:#ff8f5a;box-shadow:0 0 0 2px rgba(255,143,90,.18)}



/* === ZAKLADNY CATERING FOTO SEKCIA ==================================== */
.fmt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:30px}
.fmt-card{position:relative;display:flex;flex-direction:column;text-align:left;text-decoration:none;color:var(--cream);border:1px solid var(--line-2);border-radius:16px;overflow:hidden;background:var(--coal);cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s;padding:0}
.fmt-card:hover{transform:translateY(-4px);border-color:var(--orange)}
.fmt-card.sel{border-color:var(--orange);box-shadow:0 0 0 1px var(--orange)}
.fmt-card .fmt-im{position:relative;aspect-ratio:16/11;overflow:hidden}
.fmt-card .fmt-im img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.fmt-card:hover .fmt-im img{transform:scale(1.05)}
.fmt-card .fmt-pick{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:50%;border:2px solid rgba(255,255,255,.7);background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s}
.fmt-card .fmt-pick::after{content:"";width:8px;height:14px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(45deg) scale(0);transition:transform .18s;margin-top:-3px}
.fmt-card.sel .fmt-pick{background:var(--orange);border-color:var(--orange)}
.fmt-card.sel .fmt-pick::after{transform:rotate(45deg) scale(1)}
.fmt-card .fmt-bd{padding:16px 18px 20px}
.fmt-card .fmt-bd h3{font-family:var(--hd);font-size:clamp(18px,2vw,22px);margin:0 0 6px}
.fmt-card .fmt-bd p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}
.fmt-foot{display:flex;flex-wrap:wrap;align-items:flex-end;gap:22px;margin-top:26px;padding-top:24px;border-top:1px solid var(--line)}
.fmt-foot .fmt-guests{display:flex;flex-direction:column;gap:8px}
.fmt-foot .stepper{align-self:flex-start}
.fmt-foot .fmt-guests .field-lab{margin:0}
.fmt-foot .btn{margin-left:auto}
@media(max-width:560px){.fmt-foot .btn{margin-left:0;width:100%;justify-content:center}}
/* editovatelny pocet hosti v stepperi */
.stepper input.val{width:64px;background:transparent;border:0;color:var(--cream);text-align:center;font-family:var(--hd);font-weight:700;font-size:20px;-moz-appearance:textfield;appearance:textfield;padding:0}
.stepper-sm input.val{font-size:20px}
.stepper input.val:focus{outline:none}
.stepper input.val::-webkit-outer-spin-button,.stepper input.val::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
/* rozsahy poctu hosti vo formulari */
#fHostRng{margin-top:10px}
#fHostRng.need{outline:2px solid var(--orange);outline-offset:6px;border-radius:10px}

/* homepage kalkulacka: pocet hosti nad orientacnou sumou (vpravo) */
.pe-sum-guests{margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.pe-sum-guests .field-lab{margin-bottom:10px}

/* select vo formulari (rozpocet) */
.field select{width:100%;background:var(--ink);border:1px solid var(--line-2);border-radius:8px;padding:12px 14px;color:var(--cream);font-family:var(--bd);font-size:15px;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' stroke='%23EA821F' stroke-width='2' fill='none' stroke-linecap='round'/></svg>");background-repeat:no-repeat;background-position:right 14px center;padding-right:38px}
.field select:focus{outline:none;border-color:var(--orange)}


/* ================================================================
   GLOBÁLNE PRAVIDLÁ RESPONZIVITY - Precise weby (zdieľaná vrstva)
   Breakpointy webu: 1080 px (tablet), 560 px (mobil).
   1) Dlaždice/karty s textom: na mobile vždy 1 na riadok.
   2) Drobné výberové dlaždice bez textu (hub-sm): 2 na riadok.
   3) Chipy (st-grid): 3 na riadok.
   4) Tlačidlá sa na mobile lámu do riadkov, nepretekajú.
   5) Obrázky nikdy nepretečú kontajner.
   Prefix "body" dáva pravidlám prednosť pred inline štýlmi stránok
   s rovnakou triedou. Vrstva je konzervatívna: potvrdzuje správanie
   hlavných stránok a chráni stránky, ktorým pravidlá chýbajú.
   ================================================================ */
body img{max-width:100%}
@media (max-width:560px){
  body .stage-grid,body .em-grid,body .base-grid,body .ref-grid,body .steps,body .hub,body .trigrid,body .mvar,body .scombo,body .aud,body .split,body .feature,body .relgrid{grid-template-columns:1fr}
  body .hub-sm{grid-template-columns:repeat(2,1fr)}
  body .st-grid{grid-template-columns:repeat(3,1fr)}
  body .btn{white-space:normal}
  body .shead{flex-direction:column;align-items:flex-start}
}

/* 3-stĺpcová mriežka kariet s textom: 3 → 2 (1080) → 1 (560) */
.g3{grid-template-columns:repeat(3,1fr)}
@media(max-width:1080px){body .g3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){body .g3{grid-template-columns:1fr}}

/* mobil: dve CTA v hero - väčšia medzera + druhé CTA ako orámovaný button */
@media(max-width:560px){
  body .hero-cta{flex-direction:column;align-items:flex-start;gap:18px}
  body .hero-cta .tlink{margin-left:0!important;display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--orange);border-radius:999px;padding:12px 22px;color:var(--orange);font-weight:600}
}

/* nav: Mexický večer + Wine Casino - mobil ako samostatné položky, desktop v Catering dropdowne */
.nav-mobonly{display:none}
@media(max-width:1080px){body .nav-mobonly{display:block}}

/* Mexický večer + Wine Casino v Catering dropdowne len na desktope (mobil/tablet cez nav-mobonly) */
@media(max-width:1080px){.nav-drop-menu .nav-deskonly{display:none}}

/* prepínač jazyka */
.nav-lang{font-family:var(--hd);font-weight:600;font-size:12px;letter-spacing:.12em;color:var(--muted);border:1px solid var(--line-2);border-radius:999px;padding:7px 11px;margin-right:12px;text-decoration:none;transition:color .2s,border-color .2s}
.nav-lang:hover{color:var(--cream);border-color:var(--cream)}
@media(max-width:760px){.nav-lang{display:none}}
