/* Styly stranky: merch. Generovano z build/merch.tpl.html — needituj rucne. */

@font-face{font-family:'Gloria Hallelujah';font-style:normal;font-weight:400;font-display:swap;
    src:url(../fonts/gloria-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:'Gloria Hallelujah';font-style:normal;font-weight:400;font-display:swap;
    src:url(../fonts/gloria-lat.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;}

/* ==========================================================================
   TOKENY — shodne se vsemi strankami (na WP jeden spolecny stylesheet)
   ========================================================================== */
:root{
  --yellow:#F5B301; --water:#57B0E6; --ink:#060606; --dark:#171208; --black:#000; --white:#fff;
  --gold:#E0921E; --green:#4E8A4E; --brown:#7B5230; --paper:#EBE1CB;
  --f-head:'Cabin',system-ui,'Segoe UI',sans-serif;
  --f-body:'Merriweather',Georgia,'Times New Roman',serif;
  --f-hand:'Gloria Hallelujah',ui-rounded,cursive;
  --wrap:1273.5px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--black);color:var(--white);overflow-x:hidden;
  font-family:var(--f-body);-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
h1,h2,h3{font-family:var(--f-head);font-weight:700;margin:0;}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 24px;}
section,footer{scroll-margin-top:82px;}

.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:100px;
  font-family:var(--f-head);font-weight:700;letter-spacing:.055em;text-transform:uppercase;
  cursor:pointer;border:0;transition:transform .16s cubic-bezier(.2,.7,.2,1),box-shadow .2s;}
.btn:hover{transform:translateY(-2px) scale(1.03);}
.btn--y{background:var(--yellow);color:var(--ink);}
.btn--y:hover{box-shadow:0 10px 30px rgba(245,179,1,.34);}
.btn--ink{background:var(--ink);color:var(--yellow);}
.btn--ink:hover{box-shadow:0 10px 26px rgba(0,0,0,.45);}
.btn--w{background:var(--water);color:var(--ink);}
.btn--w:hover{box-shadow:0 10px 30px rgba(87,176,230,.34);}
.btn--ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.24);}
.btn--ghost:hover{border-color:var(--yellow);color:var(--yellow);}

.glow{position:absolute;inset:-34% 0;z-index:0;pointer-events:none;}
.glow--warm{background:radial-gradient(closest-side at 38% 50%,
  rgba(245,183,1,.26),rgba(245,181,1,.09) 48%,rgba(245,179,1,0) 76%);}
.glow--water{background:radial-gradient(closest-side at 56% 50%,
  rgba(87,176,230,.26),rgba(87,176,230,.09) 48%,rgba(87,176,230,0) 76%);}

.eyebrow{font-family:var(--f-hand);font-weight:400;font-size:19.8px;line-height:1;margin:0 0 10px;}
.eyebrow--y{color:var(--yellow);} .eyebrow--w{color:var(--water);}
.lead{font-family:var(--f-body);font-size:15px;line-height:1.62;color:rgba(255,255,255,.82);margin:0;}

.js .rv{opacity:0;transform:translateY(22px);
  transition:opacity .83s cubic-bezier(.2,.7,.2,1),transform .83s cubic-bezier(.2,.7,.2,1);}
.js .rv.in{opacity:1;transform:none;}

/* ==========================================================================
   HLAVICKA
   ========================================================================== */
header.top{position:fixed;top:0;left:0;right:0;z-index:60;height:66px;background:var(--yellow);
  transition:transform .32s cubic-bezier(.4,0,.2,1);}
header.top.hide{transform:translateY(-100%);}
.top__in{max-width:1440px;margin:0 auto;padding:0 74.25px 0 83.25px;height:66px;
  display:flex;align-items:center;gap:18px;}
@media(max-width:1240px){.top__in{padding:0 24px;}}
.logo{display:flex;align-items:center;gap:9px;transition:transform .16s;}
.logo:hover{transform:scale(1.04);}
.logo__mark{height:41px;width:auto;flex:none;display:block;}
.logo__name{font-family:var(--f-head);font-weight:700;font-size:11.5px;line-height:.98;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ink);}
nav.main{margin-left:auto;display:flex;align-items:center;gap:34px;}
nav.main a{font-family:var(--f-head);font-weight:700;font-size:13.5px;letter-spacing:.01em;
  text-transform:uppercase;color:var(--ink);transition:transform .16s,opacity .16s;}
nav.main a:hover{transform:scale(1.07);opacity:.72;}
nav.main a[aria-current]{opacity:1;position:relative;}
nav.main a[aria-current]::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;
  background:var(--ink);border-radius:2px;}
nav.main a.btn--ink{background:var(--water);color:var(--ink);height:35px;padding:0 20px;font-size:12px;
  letter-spacing:.03em;margin-left:-12px;}
nav.main a.btn--ink:hover{opacity:1;color:var(--ink);box-shadow:0 8px 22px rgba(87,176,230,.42);}
.burger{display:none;margin-left:auto;background:none;border:1.5px solid rgba(0,0,0,.35);
  border-radius:9px;padding:9px 12px;color:var(--ink);font-family:var(--f-head);font-weight:700;
  font-size:14px;cursor:pointer;}
@media(max-width:1180px){nav.main{gap:22px;} nav.main a{font-size:12.5px;}}
@media(max-width:900px){
  nav.main{display:none;position:absolute;top:100%;left:0;right:0;z-index:59;
    flex-direction:column;align-items:stretch;gap:0;background:var(--yellow);
    padding:6px 0 14px;box-shadow:0 16px 30px rgba(0,0,0,.4);
    max-height:calc(100vh - 66px);overflow-y:auto;}
  nav.main.open{display:flex;}
  nav.main a{padding:14px 24px;font-size:15px;}
  nav.main a:hover{transform:none;opacity:1;}
  nav.main a[aria-current]::after{display:none;}
  nav.main a[aria-current]{text-decoration:underline;text-underline-offset:5px;}
  nav.main a.btn--ink{margin:10px 24px 0;height:46px;justify-content:center;}
  .burger{display:inline-block;}
}

/* ==========================================================================
   HLAVA STRANKY
   ========================================================================== */
.phero{position:relative;padding:120px 0 24px;}
.phero__in{position:relative;z-index:2;max-width:760px;}
.drob{font-family:var(--f-head);font-weight:700;font-size:11px;letter-spacing:.11em;
  text-transform:uppercase;color:rgba(255,255,255,.42);margin:0 0 22px;}
.drob a:hover{color:var(--yellow);}
.phero h1{font-size:clamp(38px,5.2vw,70px);line-height:1;text-transform:uppercase;margin:0 0 18px;}
.phero h1 .zvyr{color:var(--yellow);}
.phero .lead{font-size:16px;max-width:52ch;}

/* ==========================================================================
   MERCH — mrizka produktu (stejny system jako homepage)
   ========================================================================== */
.sec{position:relative;padding:34px 0;content-visibility:auto;contain-intrinsic-size:auto 620px;}
.sec__in{position:relative;z-index:2;}
.shop{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.item{display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.1);border-radius:18px;
  overflow:hidden;background:rgba(255,255,255,.025);
  transition:transform .24s cubic-bezier(.2,.7,.2,1),border-color .24s,box-shadow .24s;}
.item:hover{transform:translateY(-6px);border-color:rgba(245,179,1,.5);box-shadow:0 18px 40px rgba(0,0,0,.5);}
.item__img{aspect-ratio:1/1;overflow:hidden;background:#0d0d0f;}
.item__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1);}
.item:hover .item__img img{transform:scale(1.06);}
.item__b{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1;}
.item h3{font-size:14px;line-height:1.25;text-transform:none;margin:0;}
.item .price{font-family:var(--f-head);font-weight:700;font-size:17px;color:var(--yellow);margin-top:auto;}
.item .stock{font-family:var(--f-head);font-weight:600;font-size:9.5px;letter-spacing:.09em;
  text-transform:uppercase;color:#7FBF7F;}
@media(max-width:1000px){.shop{grid-template-columns:repeat(2,1fr);gap:16px;}}
@media(max-width:620px){
  .shop{grid-template-columns:repeat(2,1fr);gap:12px;}
  .item{border-radius:14px;}
  .item__b{padding:11px;gap:5px;}
  .item h3{font-size:12px;line-height:1.3;}
  .item .price{font-size:14px;}
  .item .stock{font-size:8.5px;}
}

.more{display:inline-flex;align-items:center;gap:9px;margin-top:30px;
  font-family:var(--f-head);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--yellow);border-bottom:1.5px solid rgba(245,179,1,.35);padding-bottom:4px;
  transition:gap .2s,border-color .2s;}
.more:hover{gap:15px;border-color:var(--yellow);}

/* ==========================================================================
   PODPORA CTA — pruh pod merchem
   ========================================================================== */
.pod{position:relative;padding:44px 0;content-visibility:auto;contain-intrinsic-size:auto 220px;}
.pod__in{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;gap:24px;
  align-items:center;border:1px solid rgba(87,176,230,.28);border-radius:20px;
  padding:clamp(24px,3vw,38px);background:rgba(87,176,230,.04);}
.pod h2{font-size:clamp(22px,2.6vw,30px);text-transform:uppercase;margin:0 0 8px;}
.pod .lead{max-width:56ch;}
.pod .btn{height:46px;padding:0 30px;font-size:13px;flex:none;}
@media(max-width:760px){.pod__in{grid-template-columns:1fr;}}

/* ==========================================================================
   PROC MERCH — vysvetleni potisku a kam jdou penize
   ========================================================================== */
.proc{position:relative;padding:12px 0 46px;content-visibility:auto;contain-intrinsic-size:auto 480px;}
.proc__in{position:relative;z-index:2;}
.proc__txt{max-width:60ch;}
.proc .shead{margin:0 0 26px;}
.proc .shead h2{font-size:clamp(26px,3.2vw,40px);line-height:1.05;
  text-transform:uppercase;margin:0;}
.proc__txt p{font-family:var(--f-body);font-size:15.5px;line-height:1.72;
  color:rgba(255,255,255,.82);margin:0 0 14px;}
.proc__grid{display:grid;grid-template-columns:1fr .8fr;gap:44px;align-items:center;}
.proc__foto{position:relative;}
.proc__foto img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;
  border-radius:20px;display:block;}
.proc__foto figcaption{font-family:var(--f-hand);font-size:16px;color:var(--yellow);
  margin-top:12px;text-align:center;}
.pozn__shop{margin:20px 0 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);
  font-family:var(--f-body);font-size:13.5px;line-height:1.65;color:rgba(255,255,255,.6);}
@media(max-width:900px){.proc__grid{grid-template-columns:1fr;gap:30px;}
  .proc__foto{max-width:420px;margin:0 auto;}}

/* ==========================================================================
   PATICKA
   ========================================================================== */
footer.foot{position:relative;background:transparent;border-top:1px solid rgba(245,179,1,.22);margin-top:30px;}
.foot__in{max-width:var(--wrap);margin:0 auto;padding:44px 24px 30px;position:relative;z-index:2;}
.foot__top{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:start;
  padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,.09);}
.foot__logo{display:flex;align-items:center;gap:11px;margin-bottom:12px;position:relative;width:fit-content;}
.foot__logo::before{content:"";position:absolute;left:-26px;top:50%;width:calc(100% + 54px);height:150%;
  transform:translateY(-50%);border-radius:50%;z-index:0;pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(245,179,1,.32),rgba(245,179,1,.10) 52%,rgba(245,179,1,0) 74%);}
.foot__logo img,.foot__logo svg,.foot__logo b{position:relative;z-index:1;}
.foot__logo svg{width:30px;height:38px;}
.foot__logo img{height:40px;width:auto;}
.foot__logo b{font-family:var(--f-head);font-weight:700;font-size:15px;line-height:.96;
  letter-spacing:.05em;text-transform:uppercase;}
.foot .claim{font-family:var(--f-hand);font-size:17px;color:var(--yellow);margin:0;}
.foot__kontakt{text-align:right;font-family:var(--f-head);font-weight:600;font-size:14px;line-height:1.7;}
.foot__kontakt a{display:inline-block;padding:4px 0;}
.foot__kontakt a:hover{color:var(--yellow);}
.foot__kontakt .lbl{font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;
  color:rgba(255,255,255,.4);display:block;margin-bottom:2px;}
.foot__bot{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;
  padding-top:22px;font-family:var(--f-head);font-weight:600;font-size:12px;letter-spacing:.04em;
  color:rgba(255,255,255,.42);}
.foot__bot a{display:inline-block;padding:5px 0;}
.foot__bot a:hover{color:var(--yellow);}
@media(max-width:760px){.foot__top{grid-template-columns:1fr;} .foot__kontakt{text-align:left;}}

.note{position:fixed;right:14px;bottom:14px;z-index:80;background:var(--yellow);color:var(--ink);
  font-family:var(--f-head);font-weight:700;font-size:10px;letter-spacing:.09em;text-transform:uppercase;
  padding:7px 12px;border-radius:100px;box-shadow:0 6px 18px rgba(0,0,0,.4);}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .js .rv,.js .rv.in{opacity:1;transform:none;transition:none;}
}
