@charset "UTF-8";
/* ============================================================
   SAME MASZKETY — arkusz główny
   ------------------------------------------------------------
   Język graficzny wzięty z KARTY MENU KLIENTA, nie wymyślony:
   · dziewięć białych rysunków konturowych (rożek, miska lodów,
     słoik szejka, filiżanka, truskawka) wyciętych z jego kart
   · różowo-żółte paski z firmowego rożka na gofra
   · pismo odręczne z okładki karty
   · zaokrąglony grotesk nagłówków, jak w drukowanej karcie
   · czarne koło logo jako pieczątka
   Paleta i uzasadnienie: PROJEKT-DESIGNU.md
   ============================================================ */

/* --- KROJE Z NASZEGO SERWERA ------------------------------- */
@font-face{font-family:'Baloo 2';font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/baloo-2-latin-ext.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:'Baloo 2';font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/baloo-2-latin.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:'Sacramento';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/sacramento-latin-ext.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:'Sacramento';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/sacramento-latin.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:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/manrope-latin-ext.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:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/manrope-latin.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;}
/* Kroje zapasowe o miarach ZMIERZONYCH w przeglądarce — podmiana
   po wczytaniu nie rusza układu (memory: lekcja-fout-kroj-z-google). */
@font-face{font-family:'Baloo zapasowy';font-weight:1 600;src:local('Arial'),local('Helvetica'),local('Liberation Sans');size-adjust:93.34%;ascent-override:115.49%;descent-override:56.14%;line-gap-override:0%;}
@font-face{font-family:'Baloo zapasowy';font-weight:601 1000;src:local('Arial Bold'),local('Helvetica Bold'),local('Arial');size-adjust:94.46%;ascent-override:114.12%;descent-override:55.47%;line-gap-override:0%;}
@font-face{font-family:'Sacramento zapasowy';font-weight:1 1000;src:local('Georgia'),local('Times New Roman');size-adjust:74.51%;ascent-override:124.83%;descent-override:71.03%;line-gap-override:0%;}
@font-face{font-family:'Manrope zapasowy';font-weight:1 600;src:local('Arial'),local('Helvetica'),local('Liberation Sans');size-adjust:101.3%;ascent-override:105.23%;descent-override:29.61%;line-gap-override:0%;}
@font-face{font-family:'Manrope zapasowy';font-weight:601 1000;src:local('Arial Bold'),local('Helvetica Bold'),local('Arial');size-adjust:102.17%;ascent-override:104.34%;descent-override:29.36%;line-gap-override:0%;}

/* --- TOKENY ------------------------------------------------- */
:root{
  --sm-krem:#FDF6F2;
  --sm-krem-ciemny:#F6EBE4;
  --sm-czern:#1A1A1A;
  --sm-czern-mocna:#0E0E0E;
  --sm-roz:#FF9C9C;
  --sm-roz-pastel:#F9B7CE;      /* pasek rożka */
  --sm-zolty-pastel:#FBD97A;    /* pasek rożka */
  --sm-magenta:#D4116F;         /* wypełnienie przycisków, biel na tym 5,11:1 */
  --sm-magenta-tekst:#B80E60;   /* magenta jako tekst na jasnym tle, min 5,30:1 */
  --sm-magenta-ciemna:#AB0B58;
  --sm-zielen:#1E3A31;
  --sm-zloto:#E0B84A;
  --sm-puder:#FBE3EE;
  --sm-tekst:#241C1E;
  --sm-tekst-slaby:#5C4C50;
  --sm-tekst-jasny:#FDF6F2;
  --sm-tekst-jasny-slaby:#D8C9C4;
  --sm-obrys:#DCC7BB;            /* linie dekoracyjne */
  --sm-obrys-mocny:#9C7A6B;      /* KONTROLKI: min 3,20:1 na kremie, bieli i pudrze */
  --sm-kreska:#3A2C30;           /* granica sekcji, 12,4:1 na kremie */
  --sm-obrys-jasny:rgba(253,246,242,.28);

  --s1:.25rem; --s2:.5rem; --s3:.75rem; --s4:1rem; --s5:1.25rem;
  --s6:1.5rem; --s8:2rem; --s10:2.5rem; --s12:3rem; --s16:4rem; --s20:5rem;

  --sekcja-s:clamp(2.5rem,6vw,3.75rem);
  --sekcja-m:clamp(3.5rem,8vw,5.5rem);
  --sekcja-l:clamp(4.5rem,10vw,7rem);

  --w-content:clamp(18rem,92vw,76rem);
  --w-wide:clamp(18rem,96vw,88rem);
  --px:clamp(1.125rem,4vw,2.5rem);

  /* Skala „wizytówkowa”. Wzorzec arlek.pl: h1 50 px, hero 500 px. */
  --fs-hero:clamp(2.125rem,1.6rem + 2.3vw,3rem);
  --fs-h1:clamp(1.875rem,1.5rem + 1.7vw,2.5rem);
  --fs-h2:clamp(1.625rem,1.4rem + 1vw,2.25rem);
  --fs-h3:clamp(1.125rem,1.06rem + .32vw,1.3125rem);
  --fs-body:clamp(1rem,.985rem + .07vw,1.0625rem);
  --fs-lead:clamp(1.0625rem,1.01rem + .28vw,1.1875rem);
  --fs-maly:.9375rem;
  --fs-drobny:.8125rem;
  --fs-skrypt:clamp(1.75rem,1.3rem + 2vw,2.75rem);

  --lh-ciasna:1.16;
  --lh-srednia:1.45;
  --lh-luzna:1.7;

  --r-s:.625rem; --r-m:1rem; --r-l:1.75rem; --r-xl:2.75rem; --r-kolo:50%;

  --cien-s:0 2px 4px rgba(120,70,60,.05),0 6px 18px rgba(120,70,60,.06);
  --cien-m:0 8px 18px rgba(120,70,60,.08),0 22px 50px rgba(120,70,60,.10);
  --cien-l:0 16px 34px rgba(120,70,60,.12),0 40px 88px rgba(120,70,60,.14);

  --ease:cubic-bezier(.25,1,.5,1);
  --t-szybko:150ms; --t-zwykle:220ms; --t-wolno:340ms;

  --naglowek-h:76px;

  /* Pasek z ich firmowego rożka: różowo-żółte ukośne paski. */
  --pasek:repeating-linear-gradient(115deg,
      var(--sm-roz-pastel) 0 14px,
      #fff 14px 28px,
      var(--sm-zolty-pastel) 28px 42px,
      #fff 42px 56px);
}
@media (min-width:1024px){:root{--naglowek-h:92px;}}

/* --- PODSTAWY ----------------------------------------------- */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--naglowek-h) + 1rem);}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}

body{
  margin:0;color:var(--sm-tekst);
  background:
    radial-gradient(1200px 620px at 12% -6%, rgba(251,227,238,.55), transparent 62%),
    radial-gradient(980px 520px at 92% 4%, rgba(255,224,214,.5), transparent 60%),
    var(--sm-krem);
  background-attachment:fixed;
  font-family:'Manrope','Manrope zapasowy',system-ui,sans-serif;
  font-size:var(--fs-body);line-height:var(--lh-luzna);font-weight:450;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
body.sm-menu-otwarte{overflow:hidden;}

img,svg,video,iframe{max-width:100%;display:block;}
img{height:auto;}
[hidden]{display:none !important;}

h1,h2,h3,h4{
  font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;
  font-weight:600;line-height:var(--lh-ciasna);letter-spacing:-.012em;
  margin:0;text-wrap:balance;
}
p{margin:0;text-wrap:pretty;}
ul,ol{margin:0;padding:0;list-style:none;}
a{color:inherit;text-decoration:none;}
:focus-visible{outline:3px solid var(--sm-magenta);outline-offset:3px;border-radius:.25rem;}

.sm-pomin{position:absolute;left:-9999px;top:0;z-index:9999;background:var(--sm-czern);color:var(--sm-tekst-jasny);padding:var(--s3) var(--s5);border-radius:0 0 var(--r-m) 0;}
.sm-pomin:focus{left:0;}

.sm-kontener{width:var(--w-content);margin-inline:auto;padding-inline:var(--px);}
.sm-sekcja{padding-block:var(--sekcja-m);}
.sm-ikona{flex:0 0 auto;}

/* --- JĘZYK GRAFICZNY MARKI ---------------------------------- */

/* Pisany akcent, jak „Witaj w Same Maszkety!" z okładki ich karty. */
.sm-skrypt{
  font-family:'Sacramento','Sacramento zapasowy',cursive;
  font-weight:400;line-height:1;letter-spacing:.01em;
}

/* Pasek z firmowego rożka. Sygnatura marki, nie ozdóbka. */
.sm-pasek{height:14px;background:var(--pasek);background-size:auto;}
.sm-pasek--gruby{height:22px;}

/* Rysunki konturowe klienta jako maska — dziedziczą barwę tekstu. */
.sm-kontur{
  display:inline-block;width:var(--bok,64px);height:var(--bok,64px);
  background-color:currentColor;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center;
  -webkit-mask-size:contain;mask-size:contain;
  flex:0 0 auto;
}
.sm-kontur--gofr{-webkit-mask-image:url(../img/kontur-gofr-gruby.png);mask-image:url(../img/kontur-gofr-gruby.png);}
.sm-kontur--lody{-webkit-mask-image:url(../img/kontur-lody-gruby.png);mask-image:url(../img/kontur-lody-gruby.png);}
.sm-kontur--szejk{-webkit-mask-image:url(../img/kontur-szejk-gruby.png);mask-image:url(../img/kontur-szejk-gruby.png);}
.sm-kontur--smoothie{-webkit-mask-image:url(../img/kontur-smoothie-gruby.png);mask-image:url(../img/kontur-smoothie-gruby.png);}
.sm-kontur--kawa{-webkit-mask-image:url(../img/kontur-kawa-gruby.png);mask-image:url(../img/kontur-kawa-gruby.png);}
.sm-kontur--truskawka{-webkit-mask-image:url(../img/kontur-truskawka-gruby.png);mask-image:url(../img/kontur-truskawka-gruby.png);}
.sm-kontur--sniadanie{-webkit-mask-image:url(../img/kontur-sniadanie-gruby.png);mask-image:url(../img/kontur-sniadanie-gruby.png);}
.sm-kontur--rozek-duzy{-webkit-mask-image:url(../img/kontur-rozek-duzy-gruby.png);mask-image:url(../img/kontur-rozek-duzy-gruby.png);}
.sm-kontur--miska{-webkit-mask-image:url(../img/kontur-miska-gruby.png);mask-image:url(../img/kontur-miska-gruby.png);}

/* Powyzej 70 px wraca oryginalna, cienka kreska z karty klienta. */
.sm-kontur--gofr.sm-kontur--cienki{-webkit-mask-image:url(../img/kontur-gofr.png);mask-image:url(../img/kontur-gofr.png);}
.sm-kontur--lody.sm-kontur--cienki{-webkit-mask-image:url(../img/kontur-lody.png);mask-image:url(../img/kontur-lody.png);}
.sm-kontur--szejk.sm-kontur--cienki{-webkit-mask-image:url(../img/kontur-szejk.png);mask-image:url(../img/kontur-szejk.png);}
.sm-kontur--smoothie.sm-kontur--cienki{-webkit-mask-image:url(../img/kontur-smoothie.png);mask-image:url(../img/kontur-smoothie.png);}
.sm-kontur--kawa.sm-kontur--cienki{-webkit-mask-image:url(../img/kontur-kawa.png);mask-image:url(../img/kontur-kawa.png);}
.sm-kontur--truskawka.sm-kontur--cienki{-webkit-mask-image:url(../img/kontur-truskawka.png);mask-image:url(../img/kontur-truskawka.png);}
.sm-kontur--sniadanie.sm-kontur--cienki{-webkit-mask-image:url(../img/kontur-sniadanie.png);mask-image:url(../img/kontur-sniadanie.png);}
.sm-kontur--rozek-duzy.sm-kontur--cienki{-webkit-mask-image:url(../img/kontur-rozek-duzy.png);mask-image:url(../img/kontur-rozek-duzy.png);}
.sm-kontur--miska.sm-kontur--cienki{-webkit-mask-image:url(../img/kontur-miska.png);mask-image:url(../img/kontur-miska.png);}

/* Wielki rysunek w tle sekcji — dokładnie tak, jak w ich drukowanej karcie. */
.sm-znak-wodny{
  position:absolute;pointer-events:none;user-select:none;z-index:0;
  width:min(34vw,26rem);height:118%;top:-9%;right:-3%;
  background-color:currentColor;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center;
  -webkit-mask-size:contain;mask-size:contain;
}
.sm-znak-wodny--lewy{right:auto;left:-4%;}
@media (max-width:47.9375rem){.sm-znak-wodny{width:44vw;height:60%;top:auto;bottom:-3%;}}

/* Barwa znaku wodnego zalezy od sekcji, w ktorej stoi. */
.sm-sekcja,.sm-menu-sekcja,.sm-404{color:var(--sm-tekst);}
.sm-znak-wodny{color:var(--sm-puder);}
.sm-menu-sekcja--puder .sm-znak-wodny{color:#fff;}
.sm-haslo .sm-znak-wodny{color:rgba(253,246,242,.075);}
.sm-urodziny .sm-znak-wodny{color:rgba(253,246,242,.07);}
.sm-kroki-sekcja .sm-znak-wodny{color:#FBEFE8;}

.sm-znak-wodny--gofr{-webkit-mask-image:url(../img/kontur-gofr.png);mask-image:url(../img/kontur-gofr.png);}
.sm-znak-wodny--lody{-webkit-mask-image:url(../img/kontur-lody.png);mask-image:url(../img/kontur-lody.png);}
.sm-znak-wodny--szejk{-webkit-mask-image:url(../img/kontur-szejk.png);mask-image:url(../img/kontur-szejk.png);}
.sm-znak-wodny--smoothie{-webkit-mask-image:url(../img/kontur-smoothie.png);mask-image:url(../img/kontur-smoothie.png);}
.sm-znak-wodny--kawa{-webkit-mask-image:url(../img/kontur-kawa.png);mask-image:url(../img/kontur-kawa.png);}
.sm-znak-wodny--truskawka{-webkit-mask-image:url(../img/kontur-truskawka.png);mask-image:url(../img/kontur-truskawka.png);}
.sm-znak-wodny--sniadanie{-webkit-mask-image:url(../img/kontur-sniadanie.png);mask-image:url(../img/kontur-sniadanie.png);}
.sm-znak-wodny--rozek-duzy{-webkit-mask-image:url(../img/kontur-rozek-duzy.png);mask-image:url(../img/kontur-rozek-duzy.png);}
.sm-znak-wodny--miska{-webkit-mask-image:url(../img/kontur-miska.png);mask-image:url(../img/kontur-miska.png);}

/* --- PRZYCISKI ---------------------------------------------- */
.sm-przycisk{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);
  min-height:46px;padding:.75rem 1.25rem;
  font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;
  font-size:var(--fs-maly);font-weight:600;line-height:1.2;letter-spacing:.005em;
  border:2px solid transparent;border-radius:999px;cursor:pointer;
  transition:background-color var(--t-zwykle) var(--ease),color var(--t-zwykle) var(--ease),
             border-color var(--t-zwykle) var(--ease),transform var(--t-szybko) var(--ease),
             box-shadow var(--t-zwykle) var(--ease);
  text-align:center;
}
.sm-przycisk--duzy{min-height:54px;padding:.9375rem 1.75rem;font-size:1.0625rem;}
.sm-przycisk--maly{min-height:40px;padding:.5rem .9375rem;font-size:var(--fs-drobny);}
.sm-przycisk--glowny{background:var(--sm-magenta);color:#fff;border-color:var(--sm-magenta);box-shadow:0 6px 16px rgba(212,17,111,.24);}
.sm-przycisk--glowny:hover{background:var(--sm-magenta-ciemna);border-color:var(--sm-magenta-ciemna);transform:translateY(-2px);box-shadow:0 10px 22px rgba(171,11,88,.3);}
.sm-przycisk--jasny{background:#fff;color:var(--sm-tekst);border-color:#fff;}
.sm-przycisk--jasny:hover{background:var(--sm-puder);border-color:var(--sm-puder);transform:translateY(-2px);}
.sm-przycisk--obrys{background:transparent;color:var(--sm-tekst);border-color:var(--sm-obrys-mocny);}
.sm-przycisk--obrys:hover{border-color:var(--sm-magenta-tekst);color:var(--sm-magenta-tekst);}
.sm-przycisk--rozowy{background:#FFD5D5;color:var(--sm-tekst);border-color:#FFD5D5;}
.sm-przycisk--rozowy:hover{background:#fff;border-color:#fff;transform:translateY(-2px);}
.sm-przycisk--obrys-jasny{background:transparent;color:var(--sm-tekst-jasny);border-color:var(--sm-obrys-jasny);}
.sm-przycisk--obrys-jasny:hover{border-color:var(--sm-tekst-jasny);background:rgba(253,246,242,.12);}
.sm-przycisk--telefon{background:var(--sm-czern);color:var(--sm-tekst-jasny);border-color:var(--sm-czern);}
.sm-przycisk--telefon:hover{background:var(--sm-magenta);border-color:var(--sm-magenta);}
.sm-przycisk:active{transform:translateY(0);}

.sm-odnosnik{
  display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;
  font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;
  font-weight:600;font-size:var(--fs-maly);color:var(--sm-magenta-tekst);
  border-bottom:2px solid transparent;
  transition:color var(--t-zwykle) var(--ease),border-color var(--t-zwykle) var(--ease);
}
.sm-odnosnik:hover{border-bottom-color:currentColor;}
.sm-odnosnik .sm-ikona{transition:transform var(--t-zwykle) var(--ease);}
.sm-odnosnik:hover .sm-ikona{transform:translateX(4px);}
.sm-odnosnik--jasny{color:var(--sm-tekst-jasny);}

/* --- NAGŁÓWKI SEKCJI ---------------------------------------- */
.sm-sekcja__glowa{
  display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;
  gap:var(--s4);margin-bottom:var(--s10);
}
.sm-sekcja__nadtytul{
  display:block;margin-bottom:.15em;color:var(--sm-magenta-tekst);
  font-family:'Sacramento','Sacramento zapasowy',cursive;
  font-size:clamp(1.5rem,1.2rem + 1.2vw,2rem);line-height:1;
}
.sm-sekcja__naglowek{font-size:var(--fs-h2);}
/* Naglowek stojacy samodzielnie (bez bloku __glowa) potrzebuje
   wlasnego odstepu, inaczej pierwsza pozycja listy przykleja sie
   do niego (zmierzone na podstronie O nas). */
.sm-sekcja > .sm-kontener > .sm-sekcja__naglowek{margin-bottom:var(--s10);}
.sm-sekcja__naglowek--jasny{color:var(--sm-tekst-jasny);}

/* --- NAGŁÓWEK STRONY ---------------------------------------- */
.sm-naglowek{
  position:sticky;top:0;z-index:100;
  background:rgba(253,246,242,.94);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid transparent;
  transition:border-color var(--t-zwykle) var(--ease),box-shadow var(--t-zwykle) var(--ease);
}
.sm-naglowek.sm-przewiniete{border-bottom-color:var(--sm-obrys);box-shadow:var(--cien-s);}
.sm-naglowek__pas{width:var(--w-content);margin-inline:auto;padding-inline:var(--px);min-height:var(--naglowek-h);display:flex;align-items:center;gap:var(--s5);}
.sm-logo{flex:0 0 auto;display:block;transition:transform var(--t-zwykle) var(--ease);}
.sm-logo:hover{transform:scale(1.05) rotate(-3deg);}
@media (prefers-reduced-motion:reduce){.sm-logo:hover{transform:none;}}
.sm-logo__obraz{width:54px;height:54px;border-radius:var(--r-kolo);}
@media (min-width:1024px){.sm-logo__obraz{width:64px;height:64px;}}

/* Menu = NAPISY. Bez tła, bez obwódki, bez podkreślenia. Po najechaniu
   zmienia się wyłącznie barwa napisu (Paweł, 17.08.2026). */
.sm-nawigacja{display:none;margin-inline:auto;}
@media (min-width:1024px){.sm-nawigacja{display:block;}}
.sm-nawigacja__lista{display:flex;align-items:center;gap:clamp(1rem,2.1vw,1.875rem);}
.sm-nawigacja__lista a{
  display:inline-flex;align-items:center;min-height:44px;
  font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;
  font-size:1rem;font-weight:500;color:var(--sm-tekst);
  transition:color var(--t-zwykle) var(--ease);
}
.sm-nawigacja__lista a:hover{color:var(--sm-magenta-tekst);}
.sm-nawigacja__lista .current-menu-item > a,
.sm-nawigacja__lista .current_page_item > a{color:var(--sm-magenta-tekst);}
.sm-naglowek__akcje{display:none;align-items:center;gap:var(--s4);margin-left:auto;}
@media (min-width:1024px){.sm-naglowek__akcje{display:flex;}}

/* --- STAN OTWARCIA ------------------------------------------ */
.sm-stan{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--fs-drobny);font-weight:700;line-height:1.3;}
.sm-stan__ikona{opacity:.7;}
.sm-stan--naglowek{display:none;color:var(--sm-tekst-slaby);}
@media (min-width:1280px){.sm-stan--naglowek{display:inline-flex;}}
/* Ten sam napis nie stoi dwa razy na jednym ekranie: w hero pokazujemy go
   tylko tam, gdzie nie mieści się w nagłówku. */
.sm-stan--hero{margin-top:var(--s6);color:var(--sm-tekst);background:#fff;padding:.5rem .9375rem;border-radius:999px;box-shadow:var(--cien-s);}
@media (min-width:1280px){.sm-stan--hero{display:none;}}
.sm-stan--mobilne{color:var(--sm-tekst-slaby);margin-top:var(--s3);}
.sm-stan--stopka{color:var(--sm-tekst-jasny);}
.sm-stan--stopka.sm-stan--otwarte .sm-stan__ikona{color:#7BD6AC;}
.sm-stan--stopka.sm-stan--zamkniete .sm-stan__ikona{color:var(--sm-roz);}
.sm-stan.sm-stan--otwarte .sm-stan__ikona{color:#1B7F55;opacity:1;}
.sm-stan.sm-stan--zamkniete .sm-stan__ikona{color:var(--sm-magenta-tekst);opacity:1;}

/* --- HAMBURGER I MENU NA TELEFONIE -------------------------- */
.sm-hamburger{margin-left:auto;width:46px;height:46px;padding:0;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:transparent;border:0;cursor:pointer;}
@media (min-width:1024px){.sm-hamburger{display:none;}}
.sm-hamburger__kreska{display:block;width:24px;height:2px;background:var(--sm-tekst);border-radius:2px;transition:transform var(--t-zwykle) var(--ease),opacity var(--t-szybko) var(--ease);}
.sm-hamburger[aria-expanded="true"] .sm-hamburger__kreska:nth-child(1){transform:translateY(7px) rotate(45deg);}
.sm-hamburger[aria-expanded="true"] .sm-hamburger__kreska:nth-child(2){opacity:0;}
.sm-hamburger[aria-expanded="true"] .sm-hamburger__kreska:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

.sm-menu-mobilne{
  position:fixed;inset:0;z-index:200;background:var(--sm-krem);
  display:flex;flex-direction:column;padding:var(--s5) var(--px) var(--s10);
  transform:translateX(100%);transition:transform var(--t-wolno) var(--ease);overflow-y:auto;
}
.sm-menu-mobilne.sm-otwarte{transform:translateX(0);}
@media (prefers-reduced-motion:reduce){.sm-menu-mobilne{transition:none;}}
.sm-menu-mobilne__gora{display:flex;align-items:center;justify-content:space-between;min-height:52px;}
.sm-menu-mobilne__nazwa{font-family:'Sacramento','Sacramento zapasowy',cursive;font-size:1.75rem;color:var(--sm-magenta-tekst);}
.sm-menu-mobilne__zamknij{width:46px;height:46px;display:grid;place-items:center;background:transparent;border:0;cursor:pointer;color:var(--sm-tekst);}
.sm-menu-mobilne__lista{margin-top:var(--s8);display:flex;flex-direction:column;}
.sm-menu-mobilne__lista a{
  display:flex;align-items:center;min-height:58px;
  font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;font-size:1.5rem;font-weight:500;
  border-bottom:1px solid var(--sm-obrys);transition:color var(--t-zwykle) var(--ease);
}
.sm-menu-mobilne__lista a:hover{color:var(--sm-magenta-tekst);}
.sm-menu-mobilne__lista .current-menu-item > a,
.sm-menu-mobilne__lista .current_page_item > a{color:var(--sm-magenta-tekst);}
.sm-menu-mobilne__stopka{margin-top:auto;padding-top:var(--s8);display:flex;flex-direction:column;align-items:flex-start;gap:var(--s2);}

/* --- PIERWSZY EKRAN ----------------------------------------- */
/* Zdjęcie zostaje zdjęciem, a tekst siada na własnej kremowej płycie
   nachodzącej na kadr. Bez przyciemniania całej fotografii. */
.sm-hero{position:relative;background:var(--sm-czern);isolation:isolate;}
.sm-hero__tlo{position:absolute;inset:0;z-index:0;overflow:hidden;}
.sm-hero__obraz{width:100%;height:100%;object-fit:cover;object-position:center 42%;}
.sm-hero__tlo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,14,14,.42) 0%,rgba(14,14,14,.12) 46%,rgba(14,14,14,0) 72%);}
@media (max-width:63.9375rem){.sm-hero__tlo::after{background:linear-gradient(180deg,rgba(14,14,14,.18) 0%,rgba(14,14,14,.5) 100%);}}

.sm-hero__wnetrze{position:relative;z-index:1;min-height:clamp(30rem,74vh,38rem);display:flex;align-items:center;padding-block:var(--sekcja-m);}
.sm-hero__plyta{
  position:relative;background:var(--sm-krem);
  padding:clamp(1.75rem,4vw,3rem);border-radius:var(--r-xl);
  box-shadow:var(--cien-l);overflow:hidden;
  max-width:38rem;
}
@media (max-width:47.9375rem){.sm-hero__plyta{max-width:none;}}
.sm-hero__plyta::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:var(--pasek);}
.sm-hero__kontur{position:absolute;right:-2.5rem;bottom:-3.5rem;color:var(--sm-puder);opacity:.9;z-index:0;}
.sm-hero__tresc{position:relative;z-index:1;}
.sm-hero__skrypt{display:block;color:var(--sm-magenta-tekst);font-size:clamp(1.5rem,1.1rem + 1.7vw,2.75rem);margin-bottom:.1em;}
.sm-hero__naglowek{font-size:var(--fs-hero);}
.sm-hero__lead{margin-top:var(--s4);font-size:var(--fs-lead);line-height:var(--lh-srednia);color:var(--sm-tekst-slaby);}
.sm-hero__akcje{margin-top:var(--s8);display:flex;flex-wrap:wrap;gap:var(--s3);}
.sm-hero__adres{
  display:inline-flex;align-items:center;gap:var(--s2);margin-top:var(--s6);
  font-size:var(--fs-drobny);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sm-tekst-slaby);
}
.sm-hero__adres .sm-ikona{color:var(--sm-magenta-tekst);}

/* --- PASEK ZAUFANIA ----------------------------------------- */
.sm-zaufanie{position:relative;background:var(--sm-puder);padding-block:var(--sekcja-s);overflow:hidden;}
.sm-zaufanie__lista{display:grid;gap:var(--s6);grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));}
.sm-zaufanie__pozycja{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s2);}
.sm-zaufanie__ikona{color:var(--sm-magenta-tekst);}
.sm-zaufanie__glowne{font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;font-size:1.1875rem;font-weight:600;line-height:1.2;}
.sm-zaufanie__opis{font-size:var(--fs-maly);line-height:var(--lh-srednia);color:var(--sm-tekst-slaby);}

/* --- HASŁO ZE ŚCIANY ---------------------------------------- */
/* Czerń, złoto i wielki rysunek rożka w tle — dokładnie ten sam zabieg,
   którego klient używa na okładce własnej karty. */
.sm-haslo{position:relative;background:var(--sm-czern-mocna);padding-block:var(--sekcja-l);overflow:hidden;text-align:center;color:var(--sm-tekst-jasny);}
.sm-haslo__wnetrze{position:relative;z-index:1;}

.sm-haslo__cytat{margin:0;display:flex;flex-direction:column;gap:.06em;}
.sm-haslo__linia{
  font-family:'Sacramento','Sacramento zapasowy',cursive;
  font-size:clamp(2.25rem,1.4rem + 4vw,4.5rem);line-height:1.1;color:var(--sm-zloto);
}
.sm-haslo__linia--druga{padding-left:clamp(0rem,5vw,4rem);}
.sm-haslo__podpis{margin-top:var(--s6);font-size:var(--fs-drobny);letter-spacing:.11em;text-transform:uppercase;color:var(--sm-tekst-jasny-slaby);}

/* --- KATEGORIE ---------------------------------------------- */
.sm-kategorie{position:relative;}
.sm-kategorie__siatka{display:grid;gap:var(--s5);grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));}
@media (min-width:48rem){
  .sm-kategorie__siatka{grid-template-columns:repeat(6,1fr);}
  .sm-karta--kategoria{grid-column:span 3;}
  .sm-karta--szeroka{grid-column:span 6;}
}
@media (min-width:64rem){
  .sm-karta--kategoria{grid-column:span 2;}
  .sm-karta--szeroka{grid-column:span 6;}
  /* Ostatnie dwa kafle rozciągamy, żeby rząd nie kończył się dziurą. */
  .sm-karta--kategoria:nth-last-child(2):not(.sm-karta--szeroka),
  .sm-karta--kategoria:last-child:not(.sm-karta--szeroka){grid-column:span 3;}
}

.sm-karta{
  position:relative;display:flex;flex-direction:column;
  background:#fff;border-radius:var(--r-l);
  box-shadow:var(--cien-s);color:var(--sm-tekst);
  transition:transform var(--t-zwykle) var(--ease),box-shadow var(--t-zwykle) var(--ease);
}
.sm-karta:hover{transform:translateY(-7px) rotate(-.35deg);box-shadow:var(--cien-l);}
.sm-karta__obraz{position:relative;aspect-ratio:4/3;background:var(--sm-puder);overflow:hidden;border-radius:var(--r-l) var(--r-l) 0 0;}
.sm-karta--szeroka .sm-karta__obraz{aspect-ratio:16/7;}
.sm-karta__obraz img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-wolno) var(--ease);}
.sm-karta:hover .sm-karta__obraz img{transform:scale(1.045);}
.sm-karta__zastepnik{position:absolute;inset:0;background:linear-gradient(135deg,var(--sm-puder),#FFE7C9);}
/* Odznaka z rysunkiem konturowym tej kategorii, wpięta w róg zdjęcia. */
/* Odznaka siedzi na karcie, nie w obrazie: obraz ma overflow:hidden
   i obcinal jej dolna polowe (zmierzone na zrzucie v2). */
.sm-karta__odznaka{
  position:absolute;left:var(--s5);top:-44px;z-index:3;
  width:88px;height:88px;display:grid;place-items:center;
  background:var(--sm-czern);color:var(--sm-krem);border-radius:var(--r-kolo);
  box-shadow:0 10px 24px rgba(26,26,26,.32);
}
.sm-karta--szeroka .sm-karta__odznaka{width:104px;height:104px;top:-52px;}
.sm-karta__tresc{position:relative;padding:var(--s12) var(--s5) var(--s6);display:flex;flex-direction:column;gap:var(--s2);flex:1;}
.sm-karta__tytul{font-size:var(--fs-h3);color:var(--sm-tekst);}
.sm-karta__opis{font-size:var(--fs-maly);line-height:var(--lh-srednia);color:var(--sm-tekst-slaby);}
.sm-karta__wiecej{
  margin-top:auto;padding-top:var(--s4);display:inline-flex;align-items:center;gap:var(--s2);
  font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;
  font-size:var(--fs-maly);font-weight:600;color:var(--sm-magenta-tekst);
}
.sm-karta__wiecej .sm-ikona{transition:transform var(--t-zwykle) var(--ease);}
.sm-karta:hover .sm-karta__wiecej .sm-ikona{transform:translateX(4px);}

/* --- OGRÓDEK: pasmo przez całą szerokość -------------------- */
.sm-ogrodek{padding-block:0;}
.sm-ogrodek__pasmo{position:relative;isolation:isolate;min-height:clamp(26rem,60vh,36rem);display:flex;align-items:flex-end;overflow:hidden;background:var(--sm-zielen);}
.sm-ogrodek__obraz{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;}
/* Lokalna podkładka pod tekstem, żeby czytelność nie zależała od tego,
   co akurat jest na zdjęciu w tym miejscu. */
.sm-ogrodek__pasmo::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(9,20,15,0) 30%,rgba(9,20,15,.55) 62%,rgba(9,20,15,.86) 100%);}
@media (max-width:47.9375rem){.sm-ogrodek__pasmo::after{background:linear-gradient(180deg,rgba(9,20,15,.12) 0%,rgba(9,20,15,.82) 62%);}}
.sm-ogrodek__karta{width:var(--w-content);margin-inline:auto;padding:var(--sekcja-s) var(--px);color:var(--sm-tekst-jasny);max-width:none;}
.sm-ogrodek__skrypt{display:block;color:var(--sm-roz);font-size:var(--fs-skrypt);margin-bottom:.06em;}
.sm-ogrodek__naglowek{font-size:var(--fs-h2);color:var(--sm-tekst-jasny);}
.sm-ogrodek__tekst{margin-top:var(--s3);font-size:var(--fs-lead);line-height:var(--lh-srednia);}
.sm-ogrodek__karta .sm-odnosnik{margin-top:var(--s4);}

/* --- MOZAIKA I GALERIA: prawdziwy mur, bez dziur ------------ */
.sm-mozaika,.sm-galeria{columns:2;column-gap:var(--s3);}
@media (min-width:48rem){.sm-mozaika,.sm-galeria{columns:3;column-gap:var(--s4);}}
@media (min-width:75rem){.sm-mozaika{columns:4;}.sm-galeria{columns:4;}}
.sm-mozaika__pole,.sm-galeria__pole{
  break-inside:avoid;margin:0 0 var(--s3);padding:0;border:0;width:100%;
  border-radius:var(--r-m);overflow:hidden;background:var(--sm-puder);display:block;
}
@media (min-width:48rem){.sm-mozaika__pole,.sm-galeria__pole{margin-bottom:var(--s4);}}
.sm-galeria__pole{cursor:zoom-in;}
.sm-mozaika__pole img,.sm-galeria__pole img{width:100%;height:auto;transition:transform var(--t-wolno) var(--ease);}
.sm-mozaika__pole:hover img,.sm-galeria__pole:hover img{transform:scale(1.045);}

/* --- URODZINY ----------------------------------------------- */
.sm-urodziny{position:relative;background:var(--sm-zielen);color:var(--sm-tekst-jasny);overflow:hidden;}

.sm-urodziny__siatka{position:relative;z-index:1;display:grid;gap:var(--s10);align-items:center;}
@media (min-width:56.25rem){.sm-urodziny__siatka{grid-template-columns:1.15fr .85fr;}}
.sm-urodziny__skrypt{display:block;color:var(--sm-roz);font-size:var(--fs-skrypt);margin-bottom:.06em;}
.sm-urodziny__lead{margin-top:var(--s4);font-size:var(--fs-lead);line-height:var(--lh-srednia);}
.sm-lista-punktow{margin-top:var(--s6);display:flex;flex-wrap:wrap;gap:var(--s2) var(--s3);}
.sm-lista-punktow li{
  display:inline-flex;align-items:center;gap:var(--s2);
  padding:.4375rem .9375rem;border-radius:999px;
  border:1px solid rgba(253,246,242,.26);font-size:var(--fs-maly);
}
.sm-lista-punktow .sm-ikona{color:var(--sm-roz);}
.sm-urodziny__akcje{margin-top:var(--s8);display:flex;flex-wrap:wrap;gap:var(--s3);}
.sm-urodziny__zdjecie{position:relative;margin:0;border-radius:var(--r-l);overflow:hidden;box-shadow:var(--cien-l);}
.sm-urodziny__zdjecie img{width:100%;aspect-ratio:4/5;object-fit:cover;}
.sm-urodziny__zdjecie::after{content:"";position:absolute;left:0;right:0;bottom:0;height:12px;background:var(--pasek);}

/* --- KONTAKT I MAPA ----------------------------------------- */
.sm-kontakt-skrot__siatka{display:grid;gap:var(--s10);align-items:start;}
@media (min-width:56.25rem){.sm-kontakt-skrot__siatka{grid-template-columns:.9fr 1.1fr;}}
.sm-kontakt-skrot__adres{margin-top:var(--s5);font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;font-size:1.375rem;font-weight:500;line-height:var(--lh-srednia);}
.sm-kontakt-skrot__notka{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s4);font-size:var(--fs-maly);color:var(--sm-tekst-slaby);}
.sm-kontakt-skrot__notka .sm-ikona{color:var(--sm-magenta-tekst);}
.sm-kontakt-skrot__akcje{margin-top:var(--s6);display:flex;flex-wrap:wrap;gap:var(--s3);}
.sm-kontakt-skrot .sm-odnosnik{margin-top:var(--s5);}

.sm-godziny{margin:var(--s6) 0 0;display:flex;flex-direction:column;gap:.375rem;}
.sm-godziny__wiersz{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s4);padding-block:.4375rem;border-bottom:1px dashed var(--sm-obrys);}
.sm-godziny dt{font-size:var(--fs-maly);color:var(--sm-tekst-slaby);margin:0;}
.sm-godziny dd{margin:0;font-size:var(--fs-maly);font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;}
.sm-godziny--duze dt,.sm-godziny--duze dd{font-size:var(--fs-body);}

.sm-mapa{position:relative;border-radius:var(--r-l);overflow:hidden;box-shadow:var(--cien-m);background:var(--sm-puder);min-height:22rem;}
.sm-mapa::after{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:var(--pasek);z-index:2;pointer-events:none;}
.sm-mapa iframe{width:100%;height:100%;min-height:26rem;border:0;}
.sm-mapa__zastepnik{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s3);min-height:26rem;color:var(--sm-magenta-tekst);font-weight:700;text-align:center;padding:var(--s6);}

/* --- NAGŁÓWEK PODSTRONY ------------------------------------- */
.sm-glowa{position:relative;isolation:isolate;background:var(--sm-krem-ciemny);padding-block:var(--sekcja-m);overflow:hidden;}
.sm-glowa--ze-zdjeciem{background:var(--sm-czern);min-height:clamp(17rem,34vh,23rem);display:flex;align-items:flex-end;}
.sm-glowa__tlo{position:absolute;inset:0;z-index:-2;}
.sm-glowa__obraz{width:100%;height:100%;object-fit:cover;}
.sm-glowa--ze-zdjeciem::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(80deg,rgba(14,14,14,.78) 0%,rgba(14,14,14,.5) 46%,rgba(14,14,14,.18) 100%);}
.sm-glowa--ze-zdjeciem .sm-glowa__wnetrze{color:var(--sm-tekst-jasny);}
.sm-glowa--ze-zdjeciem .sm-glowa__lead{color:var(--sm-tekst-jasny);}
.sm-glowa--ze-zdjeciem .sm-glowa__nadtytul{color:var(--sm-roz);}
.sm-glowa__wnetrze{position:relative;z-index:1;width:var(--w-content);margin-inline:auto;padding-inline:var(--px);}
.sm-glowa__nadtytul{display:block;font-family:'Sacramento','Sacramento zapasowy',cursive;font-size:var(--fs-skrypt);color:var(--sm-magenta-tekst);margin-bottom:.06em;}
.sm-glowa__tytul{font-size:var(--fs-h1);}
.sm-glowa__lead{margin-top:var(--s4);font-size:var(--fs-lead);line-height:var(--lh-srednia);color:var(--sm-tekst-slaby);}
.sm-glowa__pasek{position:absolute;left:0;right:0;bottom:0;height:12px;background:var(--pasek);z-index:2;}

/* --- KARTA MENU --------------------------------------------- */
.sm-karta-nawigacja{position:sticky;top:var(--naglowek-h);z-index:80;background:var(--sm-czern);}
.sm-karta-nawigacja__lista{display:flex;gap:var(--s5);overflow-x:auto;padding-block:var(--s3);scrollbar-width:none;-ms-overflow-style:none;}
.sm-karta-nawigacja__lista::-webkit-scrollbar{display:none;}
.sm-karta-nawigacja__lista a{
  display:inline-flex;align-items:center;min-height:44px;white-space:nowrap;
  font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;
  font-size:var(--fs-maly);font-weight:500;color:var(--sm-tekst-jasny-slaby);
  transition:color var(--t-zwykle) var(--ease);
}
.sm-karta-nawigacja__lista a:hover{color:var(--sm-roz);}
/* Kotwica musi wylądować POD nagłówkiem I pod paskiem sekcji karty. */
.sm-karta-menu{--pasek-h:62px;}
.sm-menu-sekcja{scroll-margin-top:calc(var(--naglowek-h) + var(--pasek-h));}

.sm-menu-sekcja{position:relative;padding-block:var(--sekcja-m);overflow:hidden;}
.sm-menu-sekcja--puder{background:var(--sm-puder);}
.sm-menu-sekcja__wnetrze{position:relative;z-index:1;}


.sm-menu-sekcja__glowa{margin-bottom:var(--s10);display:flex;align-items:center;gap:var(--s4);}
.sm-menu-sekcja__ikona{color:var(--sm-magenta-tekst);}
.sm-menu-sekcja__nazwa{font-size:var(--fs-h2);}
.sm-menu-sekcja__notka{margin-top:.2em;font-family:'Sacramento','Sacramento zapasowy',cursive;font-size:1.375rem;color:var(--sm-magenta-tekst);}

.sm-menu-grupa + .sm-menu-grupa{margin-top:var(--s12);}
.sm-menu-grupa__nazwa{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s3);
  margin-bottom:var(--s6);padding-bottom:var(--s2);
  border-bottom:2px solid var(--sm-roz);
  font-size:1.125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
}
.sm-menu-grupa__cena{margin-left:auto;color:var(--sm-magenta-tekst);font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:0;}

.sm-menu-pozycje{display:grid;gap:var(--s6);}
@media (min-width:48rem){.sm-menu-pozycje{grid-template-columns:repeat(2,1fr);column-gap:var(--s12);}}
.sm-pozycja__gora{display:flex;align-items:baseline;gap:var(--s2);}
.sm-pozycja__nazwa{
  font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;
  font-size:1.0625rem;font-weight:600;letter-spacing:.01em;line-height:var(--lh-srednia);
}
.sm-pozycja__kropki{flex:1 1 auto;min-width:1.5rem;height:1px;margin-bottom:.3em;border-bottom:2px dotted var(--sm-obrys);}
.sm-pozycja__cena{font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;font-weight:600;color:var(--sm-magenta-tekst);font-variant-numeric:tabular-nums;white-space:nowrap;}
.sm-pozycja__sklad{margin-top:.15rem;font-size:var(--fs-maly);line-height:var(--lh-srednia);color:var(--sm-tekst-slaby);}

/* Smaki jako wyliczenie oddzielone kropka, tak jak w drukowanej karcie
   klienta. Kafelki z obwodka mialy kontrast 1,16:1, czyli obwodki nie bylo
   widac wcale (zmierzone: 63 elementy). */
.sm-menu-smaki{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 var(--s2);font-size:var(--fs-body);}
.sm-menu-smaki li{display:inline-flex;align-items:baseline;gap:var(--s2);font-weight:600;color:var(--sm-tekst);}
.sm-menu-smaki li + li::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--sm-roz);transform:translateY(-.18em);}

.sm-menu-stopka{padding-block:var(--sekcja-s);text-align:center;}
.sm-menu-stopka__tekst{font-size:var(--fs-maly);color:var(--sm-tekst-slaby);margin-bottom:var(--s4);}

/* --- O NAS -------------------------------------------------- */
.sm-onas__siatka{display:grid;gap:var(--s10);align-items:start;}
@media (min-width:56.25rem){.sm-onas__siatka{grid-template-columns:1.25fr .75fr;}}
.sm-onas__zdjecie{position:relative;margin:0;border-radius:var(--r-l);overflow:hidden;box-shadow:var(--cien-m);}
.sm-onas__zdjecie img{width:100%;aspect-ratio:3/4;object-fit:cover;}
.sm-onas__zdjecie::after{content:"";position:absolute;left:0;right:0;top:0;height:12px;background:var(--pasek);}

.sm-proza{font-size:var(--fs-body);line-height:var(--lh-luzna);}
.sm-proza > * + *{margin-top:var(--s5);}
.sm-proza h2{font-size:var(--fs-h2);margin-top:var(--s10);}
.sm-proza h3{font-size:var(--fs-h3);margin-top:var(--s8);}
.sm-proza ul{display:flex;flex-direction:column;gap:var(--s2);}
.sm-proza ul li{position:relative;padding-left:var(--s6);}
.sm-proza ul li::before{content:"";position:absolute;left:0;top:.62em;width:.5rem;height:.5rem;border-radius:var(--r-kolo);background:var(--sm-roz);}
.sm-proza ol{counter-reset:sm;display:flex;flex-direction:column;gap:var(--s2);}
.sm-proza ol li{counter-increment:sm;position:relative;padding-left:var(--s8);}
.sm-proza ol li::before{content:counter(sm) ".";position:absolute;left:0;font-weight:800;color:var(--sm-magenta-tekst);}
.sm-proza a{color:var(--sm-magenta-tekst);border-bottom:1px solid currentColor;}
.sm-proza a:hover{color:var(--sm-magenta-ciemna);}
.sm-proza--dokument h2{font-size:var(--fs-h3);}

.sm-cytat{
  margin:var(--s10) 0 0;padding:var(--s6) 0 var(--s6) var(--s6);
  border-left:4px solid var(--sm-roz);
  font-family:'Sacramento','Sacramento zapasowy',cursive;
  font-size:clamp(1.625rem,1.3rem + 1.4vw,2.25rem);line-height:1.25;color:var(--sm-magenta-tekst);
}

.sm-numerowane{display:grid;gap:var(--s8);}
@media (min-width:48rem){.sm-numerowane{grid-template-columns:repeat(2,1fr);gap:var(--s10);}}
.sm-numerowane__pozycja{display:flex;gap:var(--s5);align-items:flex-start;}
.sm-numerowane__ikona{color:var(--sm-magenta-tekst);opacity:.85;}
.sm-numerowane__tytul{font-size:var(--fs-h3);}
.sm-numerowane__opis{margin-top:var(--s2);font-size:var(--fs-maly);line-height:var(--lh-srednia);color:var(--sm-tekst-slaby);}

/* --- KROKI -------------------------------------------------- */
.sm-kroki-sekcja{position:relative;background:var(--sm-krem-ciemny);overflow:hidden;}
.sm-kroki-sekcja .sm-kontener{position:relative;z-index:1;}
.sm-kroki{display:grid;gap:var(--s6);}
@media (min-width:48rem){.sm-kroki{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));}}
.sm-kroki__krok{position:relative;background:#fff;border-radius:var(--r-l);padding:var(--s8) var(--s6) var(--s6);box-shadow:var(--cien-s);color:var(--sm-tekst);overflow:hidden;}
.sm-kroki__krok::before{content:"";position:absolute;left:0;right:0;top:0;height:8px;background:var(--pasek);}
.sm-kroki__numer{
  display:grid;place-items:center;width:2.75rem;height:2.75rem;margin-bottom:var(--s4);
  border-radius:var(--r-kolo);background:var(--sm-czern);color:var(--sm-krem);
  font-family:'Baloo 2','Baloo zapasowy',system-ui,sans-serif;font-size:1.25rem;font-weight:600;
}
.sm-kroki__tytul{font-size:var(--fs-h3);}
.sm-kroki__opis{margin-top:var(--s2);font-size:var(--fs-maly);line-height:var(--lh-srednia);color:var(--sm-tekst-slaby);}

/* --- DOJAZD ------------------------------------------------- */
.sm-dojazd__lista{display:grid;gap:var(--s6);}
@media (min-width:48rem){.sm-dojazd__lista{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));}}
.sm-dojazd__pozycja{display:flex;gap:var(--s4);}
.sm-dojazd__pozycja .sm-ikona{flex:0 0 auto;margin-top:.15em;color:var(--sm-magenta-tekst);}
.sm-dojazd__tytul{font-size:var(--fs-h3);}
.sm-dojazd__opis{margin-top:var(--s2);font-size:var(--fs-maly);line-height:var(--lh-srednia);color:var(--sm-tekst-slaby);}

/* --- FORMULARZE --------------------------------------------- */
.sm-formularz-sekcja__siatka{display:grid;gap:var(--s10);align-items:start;}
@media (min-width:56.25rem){.sm-formularz-sekcja__siatka{grid-template-columns:.8fr 1.2fr;}}
.sm-formularz-sekcja__telefon{margin-top:var(--s4);font-size:var(--fs-maly);color:var(--sm-tekst-slaby);}
.sm-formularz-sekcja__telefon a{display:inline-flex;align-items:center;min-height:44px;font-weight:800;color:var(--sm-magenta-tekst);border-bottom:2px solid transparent;}
.sm-formularz-sekcja__telefon a:hover{border-bottom-color:currentColor;}

.sm-uwaga{display:flex;gap:var(--s3);margin-top:var(--s5);padding:var(--s5);background:var(--sm-puder);border-radius:var(--r-m);font-size:var(--fs-maly);line-height:var(--lh-srednia);color:var(--sm-tekst);}
.sm-uwaga .sm-ikona{flex:0 0 auto;margin-top:.15em;color:var(--sm-magenta-tekst);}
.sm-uwaga a{color:var(--sm-magenta-tekst);font-weight:700;border-bottom:1px solid currentColor;transition:color var(--t-zwykle) var(--ease);}
.sm-uwaga a:hover{color:var(--sm-magenta-ciemna);}

.sm-formularz{position:relative;background:#fff;border-radius:var(--r-l);padding:var(--s8) var(--s6) var(--s6);box-shadow:var(--cien-m);color:var(--sm-tekst);overflow:hidden;}
.sm-formularz::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:var(--pasek);}
@media (min-width:37.5rem){.sm-formularz{padding:var(--s10) var(--s8) var(--s8);}}
.sm-formularz__wiersz{display:grid;gap:var(--s5);}
@media (min-width:37.5rem){.sm-formularz__wiersz{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));}}
.sm-formularz > * + *{margin-top:var(--s5);}

.sm-pole{display:flex;flex-direction:column;gap:var(--s2);margin:0;}
.sm-pole label{font-size:var(--fs-drobny);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--sm-tekst-slaby);}
.sm-pole label span[aria-hidden]{color:var(--sm-magenta-tekst);}
.sm-pole input,.sm-pole textarea{
  width:100%;min-height:50px;padding:.75rem .9375rem;
  font-family:inherit;font-size:1rem;line-height:var(--lh-srednia);color:var(--sm-tekst);
  background:var(--sm-krem);border:2px solid var(--sm-obrys-mocny);border-radius:var(--r-s);
  transition:border-color var(--t-zwykle) var(--ease),background-color var(--t-zwykle) var(--ease);
}
.sm-pole textarea{min-height:7rem;resize:vertical;}
.sm-pole input:hover,.sm-pole textarea:hover{border-color:var(--sm-roz);}
.sm-pole input:focus,.sm-pole textarea:focus{border-color:var(--sm-magenta);background:#fff;outline:none;}
.sm-pole input[aria-invalid="true"],.sm-pole textarea[aria-invalid="true"]{border-color:var(--sm-magenta);background:#FFF5FA;}
.sm-pole--waskie{max-width:9rem;}
.sm-pole--zgoda{flex-direction:row;align-items:flex-start;gap:var(--s3);}
.sm-pole--zgoda input{width:1.375rem;height:1.375rem;min-height:0;flex:0 0 auto;margin-top:.15em;accent-color:var(--sm-magenta);padding:0;}
.sm-pole--zgoda label{font-size:var(--fs-maly);font-weight:450;letter-spacing:0;text-transform:none;color:var(--sm-tekst-slaby);line-height:var(--lh-srednia);}
.sm-pulapka{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.sm-formularz__odpowiedz{margin-top:var(--s4);font-size:var(--fs-maly);font-weight:700;line-height:var(--lh-srednia);}
.sm-formularz__odpowiedz:empty{display:none;}
.sm-formularz__odpowiedz.sm-ok{color:#1B6B45;}
.sm-formularz__odpowiedz.sm-blad{color:var(--sm-magenta-ciemna);}

/* --- POWIĘKSZENIE ------------------------------------------- */
.sm-powiekszenie{position:fixed;inset:0;z-index:300;display:grid;place-items:center;background:rgba(14,14,14,.93);padding:var(--s5);}
.sm-powiekszenie__zamknij{position:absolute;top:var(--s4);right:var(--s4);width:48px;height:48px;display:grid;place-items:center;background:rgba(253,246,242,.14);border:0;border-radius:var(--r-kolo);color:var(--sm-tekst-jasny);cursor:pointer;}
.sm-powiekszenie__zamknij:hover{background:rgba(253,246,242,.26);}
.sm-powiekszenie__ramka{margin:0;max-width:min(100%,68rem);max-height:88vh;}
.sm-powiekszenie__obraz{max-width:100%;max-height:88vh;object-fit:contain;border-radius:var(--r-m);}

/* --- 404 ---------------------------------------------------- */
.sm-404{position:relative;padding-block:var(--sekcja-l);overflow:hidden;}
.sm-404__wnetrze{position:relative;z-index:1;}
.sm-404__skrypt{display:block;color:var(--sm-magenta-tekst);font-size:var(--fs-skrypt);}
.sm-404__tytul{margin-top:var(--s2);font-size:var(--fs-h1);}
.sm-404__tekst{margin-top:var(--s4);font-size:var(--fs-lead);color:var(--sm-tekst-slaby);}
.sm-404__akcje{margin-top:var(--s8);display:flex;flex-wrap:wrap;gap:var(--s3);}
.sm-lista-wpisow{display:flex;flex-direction:column;gap:var(--s3);}
.sm-lista-wpisow a{font-weight:700;color:var(--sm-magenta-tekst);}

/* --- STOPKA ------------------------------------------------- */
.sm-stopka{position:relative;background:var(--sm-czern);color:var(--sm-tekst-jasny);padding-block:var(--sekcja-m) var(--s8);overflow:hidden;}
/* Pasek zastapiony polewa (.sm-polewa--krem w footer.php). */
.sm-stopka__siatka{display:grid;gap:var(--s10);}
@media (min-width:48rem){.sm-stopka__siatka{grid-template-columns:repeat(2,1fr);}}
@media (min-width:64rem){.sm-stopka__siatka{grid-template-columns:1.3fr .9fr 1.2fr .8fr;gap:var(--s8);}}
.sm-stopka__logo{width:96px;height:96px;}
.sm-stopka__opis{margin-top:var(--s4);font-size:var(--fs-maly);line-height:var(--lh-srednia);color:var(--sm-tekst-jasny-slaby);}
.sm-stopka__tytul{font-family:'Sacramento','Sacramento zapasowy',cursive;font-size:1.5rem;font-weight:400;letter-spacing:0;text-transform:none;color:var(--sm-roz);margin-bottom:var(--s3);}
.sm-stopka__adres{font-style:normal;font-size:var(--fs-body);line-height:var(--lh-srednia);}
.sm-stopka__kontakt{margin-top:var(--s4);font-size:var(--fs-body);line-height:var(--lh-srednia);}
.sm-stopka__kontakt a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;border-bottom:1px solid rgba(253,246,242,.3);transition:color var(--t-zwykle) var(--ease),border-color var(--t-zwykle) var(--ease);}
.sm-stopka__kontakt a:hover{color:var(--sm-roz);border-bottom-color:var(--sm-roz);}
.sm-stopka__notka{margin-top:var(--s4);font-size:var(--fs-drobny);color:var(--sm-roz);}
.sm-stopka .sm-stan--stopka + .sm-stopka__kontakt{margin-top:var(--s3);}
.sm-stopka .sm-stan--stopka + .sm-stopka__kontakt a{font-size:var(--fs-maly);font-weight:600;}
.sm-stopka .sm-godziny__wiersz{border-bottom-color:rgba(253,246,242,.16);}
.sm-stopka .sm-godziny dt{color:var(--sm-tekst-jasny-slaby);}
.sm-stopka .sm-godziny dd{color:var(--sm-tekst-jasny);}
.sm-stopka .sm-godziny{margin-top:0;}
.sm-stopka__lista{display:flex;flex-direction:column;gap:.125rem;}
.sm-stopka__lista a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--fs-maly);color:var(--sm-tekst-jasny-slaby);transition:color var(--t-zwykle) var(--ease);}
.sm-stopka__lista a:hover{color:var(--sm-roz);}
.sm-social{display:flex;gap:var(--s3);margin-top:var(--s6);}
.sm-social a{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--r-kolo);border:1px solid rgba(253,246,242,.24);color:var(--sm-tekst-jasny);transition:background-color var(--t-zwykle) var(--ease),border-color var(--t-zwykle) var(--ease),color var(--t-zwykle) var(--ease);}
.sm-social a:hover{background:var(--sm-roz);border-color:var(--sm-roz);color:var(--sm-czern);}
.sm-stopka__dol{margin-top:var(--s10);padding-top:var(--s6);border-top:1px solid rgba(253,246,242,.16);display:flex;flex-wrap:wrap;gap:var(--s3) var(--s6);justify-content:space-between;font-size:var(--fs-drobny);color:var(--sm-tekst-jasny-slaby);}
.sm-stopka__dol a{border-bottom:1px solid rgba(253,246,242,.3);}
.sm-stopka__dol a:hover{color:var(--sm-roz);border-bottom-color:var(--sm-roz);}
.sm-stopka__nip{margin-left:var(--s3);}

/* --- SŁUCHAWKA I PASEK COOKIES ------------------------------ */
.sm-telefon-plywajacy{
  position:fixed;right:var(--s4);bottom:var(--s4);z-index:90;
  width:56px;height:56px;display:grid;place-items:center;
  background:var(--sm-magenta);color:#fff;border-radius:var(--r-kolo);
  box-shadow:0 8px 22px rgba(171,11,88,.4);animation:sm-puls 2.6s var(--ease) infinite;
}
@media (min-width:64rem){.sm-telefon-plywajacy{display:none;}}
@keyframes sm-puls{0%,70%,100%{box-shadow:0 8px 22px rgba(171,11,88,.4);}35%{box-shadow:0 8px 22px rgba(171,11,88,.4),0 0 0 12px rgba(212,17,111,.14);}}
@media (prefers-reduced-motion:reduce){.sm-telefon-plywajacy{animation:none;}}

/* Mała karta w rogu, nie wstęga przez całą szerokość.
   Na telefonie stoi NAD słuchawką, nie obok niej. */
.sm-cookies{
  position:fixed;z-index:95;left:var(--s4);right:var(--s4);
  bottom:calc(56px + var(--s4) + var(--s3));max-width:24rem;
  background:rgba(253,246,242,.98);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:2px solid var(--sm-obrys-mocny);border-radius:var(--r-l);
  padding:var(--s5);box-shadow:var(--cien-l);color:var(--sm-tekst);overflow:hidden;
}
.sm-cookies::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--pasek);}
@media (min-width:64rem){.sm-cookies{left:var(--s6);right:auto;bottom:var(--s6);}}
.sm-cookies__tekst{font-size:var(--fs-drobny);line-height:var(--lh-srednia);color:var(--sm-tekst-slaby);}
.sm-cookies__tekst a{color:var(--sm-magenta-tekst);font-weight:700;border-bottom:1px solid currentColor;}
.sm-cookies__akcje{margin-top:var(--s4);display:flex;flex-wrap:wrap;gap:var(--s2);}

.sm-do-gory{position:fixed;left:var(--s4);bottom:var(--s4);z-index:88;width:44px;height:44px;display:none;place-items:center;background:var(--sm-czern);color:var(--sm-tekst-jasny);border:0;border-radius:var(--r-kolo);cursor:pointer;box-shadow:var(--cien-m);transition:background-color var(--t-zwykle) var(--ease);}
@media (min-width:64rem){.sm-do-gory:not([hidden]){display:grid;}}
.sm-do-gory:hover{background:var(--sm-magenta);}


/* --- POLEWA I ISKIERKI -------------------------------------- */
/* Kapiąca polewa to najbardziej cukierniczy motyw, jaki istnieje,
   i jedyny, którego karta klienta jeszcze nie ma. Kształt generowany
   organicznie (_tools, `polewa.svg`), wchodzi jako maska, więc dziedziczy
   barwę sekcji, z której spływa. */
.sm-polewa{
  position:absolute;left:0;right:0;top:0;z-index:4;
  height:clamp(38px,4.6vw,68px);pointer-events:none;
  background-color:var(--polewa,var(--sm-krem));
  -webkit-mask-image:url(../img/polewa.svg);mask-image:url(../img/polewa.svg);
  -webkit-mask-size:100% 100%;mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
}
.sm-polewa--lekka{
  height:clamp(26px,3vw,44px);
  -webkit-mask-image:url(../img/polewa-lekka.svg);mask-image:url(../img/polewa-lekka.svg);
}
.sm-polewa--krem{--polewa:var(--sm-krem);}
.sm-polewa--puder{--polewa:var(--sm-puder);}
.sm-polewa--czern{--polewa:var(--sm-czern-mocna);}
.sm-polewa--zielen{--polewa:var(--sm-zielen);}
.sm-polewa--roz{--polewa:var(--sm-roz);}
.sm-polewa--kremciemny{--polewa:var(--sm-krem-ciemny);}

/* Sekcja pod polewą potrzebuje miejsca, żeby treść nie weszła w krople. */
.sm-ma-polewe{position:relative;padding-top:calc(var(--sekcja-m) + clamp(38px,4.6vw,68px));}

/* Iskierki i kropki z okładki jego karty. Delikatny posyp, nie tapeta. */
.sm-iskierki{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background-color:var(--iskry,rgba(255,156,156,.5));
  -webkit-mask-image:url(../img/iskierki.svg);mask-image:url(../img/iskierki.svg);
  -webkit-mask-size:min(72vw,52rem) auto;mask-size:min(72vw,52rem) auto;
  -webkit-mask-repeat:repeat;mask-repeat:repeat;
}
.sm-haslo .sm-iskierki{--iskry:rgba(224,184,74,.16);}
.sm-zaufanie .sm-iskierki{--iskry:rgba(212,17,111,.10);}
.sm-urodziny .sm-iskierki{--iskry:rgba(255,156,156,.13);}

/* --- GRANICE SEKCJI ----------------------------------------- */
/* Naprzemienny odcien to za malo: krem obok pudru daje 1,13:1, a dwie
   sekcje kremowe 1,00:1. Kreska w cieplej czerni ma 12,4:1 wobec obu
   stron i czyta sie jak linia w drukowanej karcie. */
.sm-menu-sekcja + .sm-menu-sekcja,
.sm-menu-sekcja + .sm-menu-stopka,
.sm-onas + .sm-onas-punkty,
.sm-onas-punkty + .sm-sekcja:not(.sm-haslo),
.sm-kroki-sekcja + .sm-formularz-sekcja,
.sm-kontakt-skrot + .sm-formularz-sekcja,
.sm-sekcja + .sm-kontakt-skrot:not(.sm-urodziny + .sm-kontakt-skrot),
.sm-dojazd + .sm-formularz-sekcja{
  border-top:3px solid var(--sm-kreska);
}

/* --- WEJŚCIE SEKCJI ----------------------------------------- */
/* Treść jest widoczna domyślnie. Ukrywa ją dopiero skrypt, i tylko wtedy,
   gdy obserwator faktycznie działa — awaria mechanizmu zostawia stronę
   pełną, nie pustą (memory: lekcja-animacja-wejscia-chowa-tresc). */
.sm-ruch-dziala .sm-wejscie{opacity:0;transform:translateY(16px);}
.sm-ruch-dziala .sm-wejscie.sm-widoczne{opacity:1;transform:none;transition:opacity 520ms var(--ease),transform 520ms var(--ease);}
@media (prefers-reduced-motion:reduce){
  .sm-ruch-dziala .sm-wejscie{opacity:1 !important;transform:none !important;transition:none !important;}
}

/* --- BARDZO WĄSKIE EKRANY (do 320 px) ----------------------- */
@media (max-width:22.5rem){
  :root{--px:1rem;}
  .sm-hero__akcje .sm-przycisk,
  .sm-404__akcje .sm-przycisk,
  .sm-urodziny__akcje .sm-przycisk,
  .sm-kontakt-skrot__akcje .sm-przycisk{width:100%;}
  .sm-mozaika,.sm-galeria{columns:1;}
  .sm-cookies{padding:var(--s4);}
  .sm-karta__odznaka{width:62px;height:62px;left:var(--s4);}
}

/* --- DRUK --------------------------------------------------- */
@media print{
  .sm-naglowek,.sm-menu-mobilne,.sm-cookies,.sm-telefon-plywajacy,.sm-do-gory,.sm-karta-nawigacja,.sm-znak-wodny{display:none !important;}
  body{background:#fff;color:#000;}
  .sm-menu-sekcja--puder{background:#fff;}
}
