:root{
  --ink:#24164a; --muted:#5b4f78;
  --pink:#e2215c; --orange:#f77c03; --sun:#ffd23f; --green:#2fae5f; --blue:#2b8ae0; --violet:#7b3fb8;
  --paper:#fff8ea; --sky:#9fdcff; --wood:#a8642f; --wood-d:#7a4520;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Nunito,system-ui,sans-serif;color:var(--ink);line-height:1.6;overflow-x:hidden;
  background:var(--paper);
  background-image:radial-gradient(rgba(36,22,74,.05) 1px,transparent 1.2px);background-size:22px 22px}
h1,h2,h3{font-family:"Baloo 2",sans-serif;line-height:1.1;margin:0}
p{margin:0 0 1em}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{width:min(1080px,100% - 32px);margin-inline:auto}
.hand{font-family:"Patrick Hand",cursive;font-size:1.35rem;line-height:1.3}

/* ---- top bar ---- */
.hero .wrap.top,.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}
.top img{height:64px;width:auto}
.top nav{display:flex;gap:24px;font-weight:800}
.top nav a{text-decoration:none;border-bottom:3px solid transparent}
.top nav a:hover{border-color:var(--sun)}
.call{font-family:"Baloo 2";font-weight:600;text-decoration:none;background:var(--ink);color:#fff;padding:10px 18px;border-radius:14px}
@media (max-width:760px){.hero .wrap.top,.top{flex-wrap:wrap;row-gap:10px}.top nav{order:3;width:100%;justify-content:center;flex-wrap:wrap;gap:8px 16px;font-size:.95rem}}

/* ---- hero ---- */
.hero{position:relative;background:linear-gradient(#8ed6ff,#c9eeff 70%,#e9f8ff);border-radius:0 0 48px 48px;overflow:hidden;padding:40px 0 0}
.hero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:end;position:relative;z-index:2}
.hero h1{font-size:clamp(2.3rem,5.4vw,3.8rem);margin-bottom:16px}
.hero h1 u{text-decoration:none;background:linear-gradient(transparent 62%,var(--sun) 62% 90%,transparent 90%)}
.hero .copy{padding-bottom:70px}
.hero .copy>p{font-size:1.15rem;max-width:28em}
.today{display:inline-flex;align-items:center;gap:10px;background:#fff;border-radius:14px;padding:10px 16px;font-weight:800;margin-top:6px;box-shadow:0 3px 0 rgba(36,22,74,.12)}
.dot{width:12px;height:12px;border-radius:50%;background:#bbb}
.dot.on{background:var(--green);box-shadow:0 0 0 4px rgba(47,174,95,.25)}
.hero-art{position:relative;align-self:center}
.hero-art img{width:100%;max-width:470px;margin-left:auto;transform:rotate(2deg)}
.sun{position:absolute;right:4%;top:18px;width:110px;height:110px;z-index:1}
.cloud{position:absolute;z-index:1;opacity:.95;animation:drift linear infinite}
@keyframes drift{from{transform:translateX(-25vw)}to{transform:translateX(125vw)}}
.pit{display:block;width:100%;height:auto;position:relative;z-index:3;margin-top:-30px}
@media (max-width:800px){
  .hero .wrap{grid-template-columns:1fr}
  .hero-art{order:-1}.hero-art img{max-width:300px;margin:0 auto}
  .hero .copy{padding-bottom:40px}
  .sun{width:70px;height:70px}
}

/* ---- wooden sign headings (mint a plakáton) ---- */
.sign{display:inline-block;position:relative;font-family:"Baloo 2";font-weight:700;color:#fff;font-size:clamp(1.6rem,3.6vw,2.2rem);
  padding:12px 34px 14px;border-radius:14px;transform:rotate(-1.5deg);
  background:repeating-linear-gradient(0deg,var(--wood) 0 9px,#b06e38 9px 11px);
  box-shadow:0 5px 0 var(--wood-d);text-shadow:0 2px 0 var(--wood-d)}
.sign.r{transform:rotate(1.2deg)}
.sign::before,.sign::after{content:"";position:absolute;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:#e7c08a;box-shadow:inset 0 -2px 0 var(--wood-d)}
.sign::before{left:12px}.sign::after{right:12px}

section{padding:80px 0}

/* ---- info board ---- */
.board{display:grid;grid-template-columns:1fr 1.5fr;gap:34px;margin-top:40px}
.panel{background:#fff;border-radius:26px;padding:30px;border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);position:relative}
.panel h3{font-size:1.4rem;margin-bottom:16px;color:var(--ink);font-weight:700}
.hours-panel{background:#f0f8ff}.prices-panel{background:#fff8fb}
.day{display:flex;align-items:center;gap:14px;border-radius:18px;padding:14px 18px;background:var(--bg);margin-bottom:12px}
.day svg{width:40px;height:40px;flex:none}
.day span{display:block;font-weight:800}
.day b{font-family:"Baloo 2";font-size:2rem;font-weight:700;line-height:1.1}
.tickets{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ticket{background:var(--bg);border-radius:18px;padding:18px 12px 16px;text-align:center;position:relative;border:3px dashed var(--c);
  -webkit-mask:radial-gradient(circle 10px at 0 50%,#0000 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 10px at 100% 50%,#0000 98%,#000) right/51% 100% no-repeat;
  mask:radial-gradient(circle 10px at 0 50%,#0000 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 10px at 100% 50%,#0000 98%,#000) right/51% 100% no-repeat}
.ticket svg{width:40px;height:40px;margin:0 auto 6px;display:block}
.ticket span{display:block;font-weight:800;font-size:.9rem;line-height:1.3;min-height:2.6em}
.ticket b{display:block;font-family:"Baloo 2";font-size:1.9rem;font-weight:800;color:var(--c);line-height:1.1;margin-top:4px}
.ticket small{color:var(--muted);font-weight:700}
.fine{font-size:.92rem;color:var(--muted);background:#fff6d1;border-radius:14px;padding:12px 14px;margin:18px 0 0}
.panel .sticker{right:-20px;top:-30px}
@media (max-width:900px){.board{grid-template-columns:1fr}}
@media (max-width:520px){.tickets{grid-template-columns:1fr}.ticket span{min-height:0}}
@media (max-width:800px){.board{grid-template-columns:1fr}}

/* ---- what's inside: polaroids ---- */
.inside{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 34px;margin-top:40px}
.pol:nth-child(4){transform:rotate(2deg)}.pol:nth-child(5){transform:rotate(-1.5deg) translateY(12px)}.pol:nth-child(6){transform:rotate(1deg)}
@media (max-width:900px){.inside{grid-template-columns:repeat(2,1fr)}}
.pol{background:#fff;padding:14px 14px 18px;box-shadow:0 10px 24px rgba(36,22,74,.12);position:relative}
.pol:nth-child(1){transform:rotate(-2.5deg)}.pol:nth-child(2){transform:rotate(1.5deg) translateY(16px)}.pol:nth-child(3){transform:rotate(-1deg)}
.pol::before{content:"";position:absolute;top:-12px;left:50%;width:90px;height:26px;margin-left:-45px;background:rgba(255,210,63,.75);transform:rotate(-3deg)}
.pol .ph{aspect-ratio:4/3;display:grid;place-items:center;background:var(--bg)}
.pol .ph svg{width:46%;height:auto}
.pol .ph img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.pol h3{font-size:1.3rem;margin:14px 4px 4px}
.pol p{margin:0 4px;color:var(--muted)}
@media (max-width:800px){.inside{grid-template-columns:1fr;max-width:380px;margin-inline:auto}.pol:nth-child(2){transform:rotate(1.5deg)}}

/* ---- birthday ---- */
.bday{background:var(--ink);color:#fff;border-radius:40px;padding:56px 48px;display:grid;grid-template-columns:1.3fr 1fr;gap:30px;align-items:center;position:relative;overflow:hidden}
.bday h2{font-size:clamp(1.9rem,4vw,2.6rem);margin-bottom:14px}
.bday p{color:#d9cff2;font-size:1.1rem}
.bday .hand{color:var(--sun)}
.bday-pic{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 60%;border:10px solid #fff;transform:rotate(2deg);box-shadow:0 14px 30px rgba(0,0,0,.35)}
.flags{position:absolute;left:0;right:0;top:0;height:40px}
.btn{display:inline-block;font-family:"Baloo 2";font-weight:600;font-size:1.1rem;text-decoration:none;padding:14px 26px;border-radius:16px;background:var(--sun);color:var(--ink);box-shadow:0 5px 0 #c99b00}
.btn:active{transform:translateY(3px);box-shadow:0 2px 0 #c99b00}
@media (max-width:800px){.bday{grid-template-columns:1fr;padding:56px 24px 36px;border-radius:28px}}

/* ---- contact ---- */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:34px}
.contact dl{margin:0}
.contact dt{font-weight:800;color:var(--muted);font-size:.9rem;text-transform:uppercase;letter-spacing:.05em}
.contact dd{margin:2px 0 18px;font-family:"Baloo 2";font-size:1.35rem}
.map{width:100%;padding:0;border-radius:26px;min-height:300px;border:3px dashed #9fc9ea;background:#eaf6ff;display:grid;place-items:center;text-align:center;color:var(--muted);padding:20px}
@media (max-width:800px){.contact{grid-template-columns:1fr}}

footer{padding:40px 0 50px;text-align:center;color:var(--muted)}
footer img{height:90px;width:auto;margin:0 auto 10px}
@media (prefers-reduced-motion:reduce){.cloud{animation:none}}
.zoom{cursor:zoom-in;transition:transform .2s,box-shadow .2s}
.pol.zoom:hover,.pol.zoom:focus-visible{transform:rotate(0) scale(1.04);box-shadow:0 16px 34px rgba(36,22,74,.22);outline:none}
.bday-pic.zoom:hover{transform:rotate(0) scale(1.03)}
.hero-art{display:block}
#lb{border:0;padding:0;background:transparent;max-width:min(1100px,96vw);width:100%;overflow:visible}
#lb::backdrop{background:rgba(20,10,45,.85)}
#lb figure{margin:0;background:#fff;padding:12px 12px 16px;border-radius:6px}
#lb img{width:100%;max-height:78vh;object-fit:contain;background:#111}
#lb p{margin:10px 4px 0;font-weight:700;text-align:center}
#lb button{position:absolute;border:0;cursor:pointer;font:700 2rem/1 "Baloo 2",sans-serif;background:var(--sun);color:var(--ink);width:52px;height:52px;border-radius:50%;box-shadow:0 4px 0 #c99b00}
#lb .x{top:-20px;right:-14px;z-index:2}
#lb .prev{left:-18px;top:45%}#lb .next{right:-18px;top:45%}
@media (max-width:600px){#lb .prev{left:4px}#lb .next{right:4px}#lb .x{right:4px}}

/* ---- aloldalak ---- */
.sub-top{background:linear-gradient(#8ed6ff,#c9eeff);border-radius:0 0 40px 40px;padding-bottom:40px}
.back{display:inline-flex;align-items:center;gap:6px;font-weight:800;text-decoration:none;background:#fff;padding:8px 16px;border-radius:999px;box-shadow:0 3px 0 rgba(36,22,74,.12);margin:10px 0 22px}
.sub-top h1{font-size:clamp(2.2rem,5vw,3.4rem);margin-bottom:10px}
.sub-top .lead{font-size:1.15rem;max-width:40em;margin:0}
.facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;padding:0;list-style:none}
.facts li{background:#fff;border-radius:14px;padding:8px 14px;font-weight:800;box-shadow:0 3px 0 rgba(36,22,74,.12)}
.photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,380px));justify-content:center;gap:28px;margin-top:10px}
.photos figure{margin:0;background:#fff;padding:12px 12px 16px;box-shadow:0 10px 24px rgba(36,22,74,.12)}
.photos figure:nth-child(odd){transform:rotate(-1deg)}.photos figure:nth-child(even){transform:rotate(1deg)}
.photos img{width:100%;aspect-ratio:4/3;object-fit:cover}
.photos figure.tall img{aspect-ratio:3/4}
.photos h2{font-size:1.35rem;margin:14px 4px 4px}
.photos p{margin:0 4px;color:var(--muted)}
.next-up{display:grid;grid-template-columns:repeat(3,minmax(0,200px));justify-content:center;gap:14px;margin:26px auto 0;max-width:640px}
.next-up a{display:block;font-family:"Baloo 2";font-weight:700;font-size:1.1rem;text-decoration:none;text-align:center;background:var(--bg,#fff);color:var(--ink);border-radius:16px;padding:12px 10px;box-shadow:0 5px 0 var(--c,#ccc);transition:transform .15s}
.next-up a:hover{transform:translateY(-3px)}
.next-up a[href^="labirintus"]{--bg:#d6f5e0;--c:#2fae5f}.next-up a[href^="labdamedence"]{--bg:#ffe7c7;--c:#f77c03}.next-up a[href^="babasarok"]{--bg:#ffe0ec;--c:#e2215c}
.next-up a[href^="ugralovar"]{--bg:#fff4c2;--c:#e2a400}.next-up a[href^="jatekgepek"]{--bg:#ece0ff;--c:#7b3fb8}.next-up a[href^="bufe"]{--bg:#dff0ff;--c:#2b8ae0}.next-up a[href^="szulinap"]{--bg:#ffe0ec;--c:#e2215c}
@media (max-width:560px){.next-up{grid-template-columns:repeat(2,1fr)}}
a.pol{display:block;text-decoration:none;color:inherit}
a.pol:hover,a.pol:focus-visible{transform:rotate(0) scale(1.04);box-shadow:0 16px 34px rgba(36,22,74,.22)}
.pol .more-link{display:inline-block;margin:8px 4px 0;font-family:"Baloo 2";font-weight:600;color:var(--pink)}
/* színes kártyák matricával */
a.pol{background:var(--bg,#fff);border:4px solid #fff;box-shadow:0 10px 0 var(--c,#ddd),0 14px 26px rgba(36,22,74,.12)}
a.pol .ph{border:3px solid #fff}
a.pol h3{color:var(--ink)}
a.pol .more-link{color:var(--c)}
.sticker{position:absolute;right:-22px;top:-28px;width:100px;height:100px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 4px 0 var(--c),0 8px 14px rgba(36,22,74,.18);z-index:2;transform:rotate(8deg);transition:transform .25s}
.sticker svg{width:68%;height:68%}
a.pol:hover .sticker{transform:rotate(-8deg) scale(1.12)}
@media (max-width:500px){.sticker{width:76px;height:76px;right:-8px}}
.photos figure>a{display:block;overflow:hidden}
/* színes aloldali képkártyák */
.photos{align-items:start}
.photos figure{background:var(--bg);border:4px solid #fff;border-radius:6px;box-shadow:0 8px 0 var(--c),0 14px 26px rgba(36,22,74,.12)}
.photos figure img{border:3px solid #fff}
.photos figure:nth-child(6n+1){--bg:#ffe0ec;--c:#e2215c}
.photos figure:nth-child(6n+2){--bg:#dff0ff;--c:#2b8ae0}
.photos figure:nth-child(6n+3){--bg:#fff4c2;--c:#e2a400}
.photos figure:nth-child(6n+4){--bg:#d6f5e0;--c:#2fae5f}
.photos figure:nth-child(6n+5){--bg:#ece0ff;--c:#7b3fb8}
.photos figure:nth-child(6n+6){--bg:#ffe7c7;--c:#f77c03}
.photos h2{color:var(--c)}

/* kapcsolat csempék */
.contact{align-items:stretch}
.ctiles{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ctile{display:flex;align-items:center;gap:12px;background:var(--bg);border-radius:20px;padding:16px;text-decoration:none;color:var(--ink);box-shadow:0 6px 0 var(--c);transition:transform .15s;min-width:0}
.ctile:hover{transform:translateY(-3px)}
.cic{flex:none;width:52px;height:52px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 3px 0 rgba(36,22,74,.1)}
.cic svg{width:30px;height:30px}
.ctile small{display:block;font-weight:800;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--c)}
.ctile b{display:block;font-family:"Baloo 2";font-size:1.08rem;font-weight:700;line-height:1.2;overflow-wrap:anywhere}
.mapwrap{background:#fff;padding:10px;border-radius:26px;box-shadow:0 8px 0 var(--blue),0 14px 26px rgba(36,22,74,.12);transform:rotate(1deg)}
.mapwrap .map{border:0;min-height:100%;height:100%;padding:0;border-radius:18px;display:block}
@media (max-width:560px){.ctiles{grid-template-columns:1fr}.mapwrap .map{min-height:280px}}
/* lebegő labdák a háttérben */
.labdak{position:fixed;inset:0;pointer-events:none;z-index:-1;overflow:hidden}
.labdak i{position:absolute;bottom:-80px;border-radius:50%;opacity:.55;
  box-shadow:inset -6px -8px 0 rgba(0,0,0,.12),inset 5px 5px 0 rgba(255,255,255,.4);
  animation:labda-fel linear infinite,labda-leng ease-in-out infinite alternate}
@keyframes labda-fel{from{bottom:-80px}to{bottom:110vh}}
@keyframes labda-leng{from{margin-left:-24px}to{margin-left:24px}}
.contact{grid-template-columns:1fr;gap:34px}
.ctiles{grid-template-columns:repeat(3,1fr)}
.ctile b{overflow-wrap:normal;word-break:normal}
.mapwrap .map{min-height:340px}
@media (max-width:900px){.ctiles{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.ctiles{grid-template-columns:1fr}}
/* aloldal fejléc: szöveg + fotó egymás mellett */
.sub-top{padding-bottom:70px}
.sub-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.sub-photo{margin:0;background:#fff;padding:12px 12px 16px;border-radius:6px;transform:rotate(2.5deg);box-shadow:0 10px 0 var(--c),0 18px 34px rgba(36,22,74,.2);position:relative;max-width:440px;justify-self:center}
.sub-photo::before{content:"";position:absolute;top:-14px;left:50%;width:110px;height:28px;margin-left:-55px;background:rgba(255,210,63,.8);transform:rotate(-3deg)}
.sub-photo a{display:block}
.sub-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.sub-photo h2{font-size:1.25rem;margin:12px 4px 2px;color:var(--c)}
.sub-photo p{margin:0 4px;color:var(--muted);font-size:.95rem}
.facts li:nth-child(4n+1){background:#ffe0ec;box-shadow:0 4px 0 #e2215c}
.facts li:nth-child(4n+2){background:#d6f5e0;box-shadow:0 4px 0 #2fae5f}
.facts li:nth-child(4n+3){background:#fff4c2;box-shadow:0 4px 0 #e2a400}
.facts li:nth-child(4n+4){background:#ece0ff;box-shadow:0 4px 0 #7b3fb8}
@media (max-width:860px){.sub-grid{grid-template-columns:1fr;gap:34px}.sub-photo{transform:rotate(1.5deg)}}
/* hero gombok és címkék */
.hero-ctas{display:flex;flex-wrap:wrap;gap:14px;margin:6px 0 18px}
.btn.ghost{background:#fff;box-shadow:0 5px 0 #e2215c;color:var(--ink)}
.hero-chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0 0 16px}
.hero-chips li{background:var(--bg);box-shadow:0 4px 0 var(--c);border-radius:14px;padding:7px 14px;font-weight:800;font-size:.95rem}
@media (max-width:800px){.hero-ctas,.hero-chips{justify-content:center}}
/* mobil lenyitható menü */
.menu-btn{display:none}
@media (max-width:760px){
  .hero .wrap.top,.top{flex-wrap:wrap;position:relative}
  .top .call{margin-left:auto}
  .menu-btn{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:48px;height:48px;padding:0 12px;border:0;border-radius:14px;background:var(--sun);box-shadow:0 4px 0 #c99b00;cursor:pointer;margin-left:10px}
  .menu-btn span{display:block;height:3px;border-radius:3px;background:var(--ink);transition:transform .2s,opacity .2s}
  .menu-open .menu-btn span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  .menu-open .menu-btn span:nth-child(2){opacity:0}
  .menu-open .menu-btn span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  .top nav{display:none;order:3;width:100%;flex-direction:column;gap:8px;margin-top:12px;font-size:1.1rem}
  .menu-open nav{display:flex}
  .top nav a{display:block;background:#fff;border-radius:16px;padding:12px 16px;box-shadow:0 4px 0 rgba(36,22,74,.15);border:0}
  .top nav a:nth-child(1){box-shadow:0 4px 0 #e2215c}.top nav a:nth-child(2){box-shadow:0 4px 0 #2fae5f}
  .top nav a:nth-child(3){box-shadow:0 4px 0 #e2a400}.top nav a:nth-child(4){box-shadow:0 4px 0 #2b8ae0}
}
@media (max-width:760px){.sun{display:none}}
/* színes mobilmenü */
@media (max-width:760px){
  .menu-open nav{background:#fff;border-radius:22px;padding:12px;box-shadow:0 8px 24px rgba(36,22,74,.18)}
  .top nav a{display:flex;align-items:center;gap:12px;font-family:"Baloo 2";font-weight:700;font-size:1.2rem}
  .top nav a::before{content:"";flex:none;width:34px;height:34px;border-radius:50%;background:#fff center/20px no-repeat}
  .top nav a:nth-child(1){background:#ffe0ec;color:#b3124a}
  .top nav a:nth-child(2){background:#d6f5e0;color:#1d7a41}
  .top nav a:nth-child(3){background:#fff4c2;color:#8a6200}
  .top nav a:nth-child(4){background:#dff0ff;color:#1a5fa6}
  .top nav a:nth-child(1)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M3 10l7-6 7 6v7H3z' fill='%23e2215c'/%3E%3Cpath d='M8 17v-4h4v4z' fill='%23fff'/%3E%3C/svg%3E")}
  .top nav a:nth-child(2)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='7' cy='13' r='4' fill='%232b8ae0'/%3E%3Ccircle cx='13' cy='13' r='4' fill='%23e2215c'/%3E%3Ccircle cx='10' cy='7' r='4' fill='%232fae5f'/%3E%3C/svg%3E")}
  .top nav a:nth-child(3)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Crect x='3' y='9' width='14' height='8' rx='2' fill='%23e2a400'/%3E%3Crect x='9' y='4' width='2' height='5' fill='%23e2215c'/%3E%3Ccircle cx='10' cy='3' r='1.5' fill='%23f77c03'/%3E%3C/svg%3E")}
  .top nav a:nth-child(4)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 18s6-6 6-10a6 6 0 0 0-12 0c0 4 6 10 6 10z' fill='%232b8ae0'/%3E%3Ccircle cx='10' cy='8' r='2.3' fill='%23fff'/%3E%3C/svg%3E")}
}
@media (max-width:760px){
  .menu-btn{position:relative;display:inline-block}
  .menu-btn span{position:absolute;left:12px;right:12px;height:3px;margin:0}
  .menu-btn span:nth-child(1){top:15px}.menu-btn span:nth-child(2){top:22.5px}.menu-btn span:nth-child(3){top:30px}
  .menu-open .menu-btn span:nth-child(1){transform:none;top:22.5px;rotate:45deg}
  .menu-open .menu-btn span:nth-child(3){transform:none;top:22.5px;rotate:-45deg}
}
@media (max-width:760px){.menu-open .menu-btn span:nth-child(2){opacity:0;visibility:hidden}}
/* hero fotókollázs */
.collage{position:relative;display:block;aspect-ratio:1/0.95;max-width:520px;margin-left:auto;width:100%}
.cp{position:absolute;margin:0;background:#fff;padding:9px 9px 6px;border-radius:4px;box-shadow:0 8px 0 var(--c),0 16px 30px rgba(36,22,74,.22);width:58%;transition:transform .25s}
.cp::before{content:"";position:absolute;top:-11px;left:50%;width:70px;height:22px;margin-left:-35px;background:rgba(255,210,63,.85);transform:rotate(-4deg)}
.cp img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.cp figcaption{font-family:"Baloo 2";font-weight:700;color:var(--c);text-align:center;padding-top:4px}
.cp1{left:0;top:4%;transform:rotate(-7deg);z-index:1}
.cp2{right:0;top:0;transform:rotate(6deg);z-index:2}
.cp3{left:20%;bottom:0;transform:rotate(-2deg);z-index:3}
.collage:hover .cp1{transform:rotate(-10deg) translate(-6px,-4px)}
.collage:hover .cp2{transform:rotate(9deg) translate(6px,-4px)}
.collage:hover .cp3{transform:rotate(0) translateY(4px)}
.cp-logo{position:absolute;right:2%;bottom:6%;width:30%;z-index:4;transform:rotate(8deg);filter:drop-shadow(0 6px 10px rgba(36,22,74,.3))}
.hero-art.collage img.cp-logo{max-width:none;margin:0}
.hero .copy{padding-bottom:70px}
.today-li{background:none!important;box-shadow:none!important;padding:0!important}
.today-li .today{margin:0;padding:7px 14px;font-size:.95rem}
@media (max-width:800px){.collage{max-width:400px;margin:0 auto}}
.hero-art.collage .cp img{max-width:none;margin:0;transform:none}
.hero-art.collage .cp-logo{margin:0}
@media (max-width:800px){.hero-art.collage .cp img{max-width:none;margin:0}.hero-art.collage .cp-logo{max-width:none}}
.hero-art.collage img.cp-logo{width:32%;max-width:none;margin:0;transform:rotate(8deg);animation:none}
/* szülinap: csomag + mesefigurák */
.incl{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.incl li{background:#fff;border-radius:14px;padding:10px 12px;font-weight:800;box-shadow:0 3px 0 rgba(36,22,74,.1)}
.mesefig{position:relative;background:linear-gradient(135deg,#ece0ff,#ffe0ec 55%,#fff4c2);border-radius:36px;padding:44px 40px;margin-bottom:70px;box-shadow:0 10px 0 #7b3fb8,0 18px 34px rgba(36,22,74,.15);text-align:center}
.mesefig .hand{color:#7b3fb8;margin:0}
.mesefig h2{font-size:clamp(1.9rem,4vw,2.6rem);margin:0 0 10px}
.mf-lead{font-size:1.15rem;max-width:34em;margin:0 auto 18px}
.mf-price{display:inline-flex;flex-direction:column;background:#fff;border-radius:22px;padding:12px 30px;box-shadow:0 6px 0 #e2215c;margin-bottom:26px}
.mf-price b{font-family:"Baloo 2";font-size:2.4rem;color:#e2215c;line-height:1.1}
.mf-price span{font-weight:800;color:var(--muted)}
.mesefig h3{font-size:1.35rem;margin:0 0 14px}
.figs{list-style:none;padding:0;margin:0 auto 28px;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:720px}
.figs li{background:var(--bg);border-radius:999px;padding:10px 20px;font-family:"Baloo 2";font-weight:700;font-size:1.15rem;box-shadow:0 4px 0 rgba(36,22,74,.18);transition:transform .15s}
.figs li:nth-child(odd){transform:rotate(-2deg)}.figs li:nth-child(even){transform:rotate(2deg)}
.figs li:hover{transform:scale(1.08)}
.mf-home{background:#fff;border-radius:22px;padding:20px 24px;max-width:640px;margin:0 auto;box-shadow:0 6px 0 #2fae5f}
.mf-home p{margin:0}
.mf-by{margin:20px 0 0;font-size:.9rem;color:var(--muted)}
@media (max-width:560px){.incl{grid-template-columns:1fr}.mesefig{padding:40px 20px}.tickets[style]{grid-template-columns:1fr!important}}
@media (max-width:760px){
  .top nav a:nth-child(4){background:#ece0ff;color:#5a2a90;box-shadow:0 4px 0 #7b3fb8}
  .top nav a:nth-child(5){background:#dff0ff;color:#1a5fa6;box-shadow:0 4px 0 #2b8ae0}
  .top nav a:nth-child(4)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 2l2.3 5 5.4.6-4 3.7 1.1 5.4L10 14l-4.8 2.7 1.1-5.4-4-3.7 5.4-.6z' fill='%237b3fb8'/%3E%3C/svg%3E")}
  .top nav a:nth-child(5)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 18s6-6 6-10a6 6 0 0 0-12 0c0 4 6 10 6 10z' fill='%232b8ae0'/%3E%3Ccircle cx='10' cy='8' r='2.3' fill='%23fff'/%3E%3C/svg%3E")}
}
.board.wide-first{grid-template-columns:1.5fr 1fr}@media (max-width:900px){.board.wide-first{grid-template-columns:1fr}}
.mf-img{display:block;width:100%;max-width:640px;margin:6px auto 22px;border:8px solid #fff;border-radius:8px;transform:rotate(-1.5deg);box-shadow:0 8px 0 #7b3fb8,0 14px 28px rgba(36,22,74,.2)}
.hero-art img.hero-logo{animation:logo-leb 5s ease-in-out infinite;filter:drop-shadow(0 18px 24px rgba(42,22,80,.25))}@keyframes logo-leb{50%{transform:translateY(-14px) rotate(-1.5deg)}}@media (prefers-reduced-motion:reduce){.hero-art img.hero-logo{animation:none}}
/* görgetésre előtűnés */
.rv{opacity:0;translate:0 36px;scale:.96;transition-property:opacity,translate,scale;transition-duration:.7s;transition-timing-function:cubic-bezier(.2,.8,.2,1.15)}
.rv.in{opacity:1;translate:0 0;scale:1}
/* javítólista: hero fotó */
.hero-art.hero-photo{display:block;background:#fff;padding:12px 12px 14px;border-radius:6px;transform:rotate(2.5deg);box-shadow:0 10px 0 var(--green),0 18px 34px rgba(36,22,74,.22);max-width:480px;margin-left:auto;position:relative}
.hero-art.hero-photo::before{content:"";position:absolute;top:-14px;left:50%;width:110px;height:28px;margin-left:-55px;background:rgba(255,210,63,.85);transform:rotate(-3deg)}
.hero-art.hero-photo img{width:100%;max-width:none;aspect-ratio:4/3;object-fit:cover;transform:none;margin:0;animation:none;filter:none}
.hero h1{font-size:clamp(2.2rem,4.6vw,3.4rem)}
/* nyitvatartás és jegyárak táblázat */
.infotable{max-width:640px;margin-top:34px}
.infotable table{width:100%;border-collapse:collapse;font-size:1.08rem}
.infotable th{text-align:left;font-weight:700;padding:11px 0;border-bottom:2px dotted #e2d8f0}
.infotable td{text-align:right;font-family:"Baloo 2";font-weight:700;font-size:1.2rem;padding:11px 0;border-bottom:2px dotted #e2d8f0;white-space:nowrap}
.infotable tr:last-child th,.infotable tr:last-child td{border-bottom:0}
.infotable tr.sep th,.infotable tr.sep td{padding-top:24px}
.infotable td b{color:var(--pink);font-size:1.35rem}
/* aszimmetrikus "Mi van bent?" rács */
.inside{grid-template-columns:repeat(3,1fr);gap:40px 34px}
.pol.big{grid-column:span 2}
.pol.big .ph img{aspect-ratio:16/9}
.pol.big h3{font-size:1.6rem}
@media (max-width:900px){.inside{grid-template-columns:1fr 1fr}.pol.big{grid-column:span 2}}
@media (max-width:560px){.inside{grid-template-columns:1fr}.pol.big{grid-column:auto}}
/* egyszerű kapcsolati blokk */
.contact{grid-template-columns:1fr 1.5fr;align-items:stretch}
.cblock{font-size:1.15rem}
.cblock p{margin:0 0 14px}
.cblock p:last-child{margin:0}
.cblock a{font-weight:800}
.cblock small{color:var(--muted)}
@media (max-width:800px){.contact{grid-template-columns:1fr}}
.pol.big .ph{aspect-ratio:auto}
.pol.big .ph img{aspect-ratio:5/2;height:auto}
@media (max-width:560px){.pol.big .ph img{aspect-ratio:4/3}}
.sub-photo.wide{max-width:560px}.sub-photo.wide img{aspect-ratio:16/9}
/* kapcsolat: egy kártya, bal oldalt adatok, jobb oldalt térkép */
.contact{grid-template-columns:1fr 1.4fr;gap:0;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 10px 0 var(--blue),0 18px 34px rgba(36,22,74,.12);margin-top:34px}
.cblock{padding:30px 30px;display:flex;flex-direction:column;justify-content:center;gap:6px}
.crow{display:flex;align-items:center;gap:14px;padding:10px 0;border-bottom:2px dotted #eadff5;font-size:1.08rem}
.crow:last-child{border-bottom:0}
.crow svg{flex:none;width:40px;height:40px;padding:9px;border-radius:12px}
.crow[data-k=pin] svg{background:#ffe0ec;color:#e2215c}.crow[data-k=tel] svg{background:#d6f5e0;color:#2fae5f}
.crow[data-k=clock] svg{background:#fff4c2;color:#c48a00}.crow[data-k=mail] svg{background:#dff0ff;color:#2b8ae0}.crow[data-k=heart] svg{background:#ece0ff;color:#7b3fb8}
.crow a{font-weight:800;text-decoration:none;color:var(--ink)}.crow a:hover{color:var(--pink)}
.crow small{color:var(--muted)}
.contact .mapwrap{padding:0;border-radius:0;box-shadow:none;transform:none;background:none}
.contact .mapwrap .map{border-radius:0;min-height:100%;height:100%}
@media (max-width:800px){.contact{grid-template-columns:1fr}.contact .mapwrap .map{min-height:280px}}
/* Pillanatok nálunk */
.moments{display:grid;grid-template-columns:1.6fr 1fr 1fr;grid-template-rows:auto auto;gap:22px;margin-top:34px}
.mom{margin:0;background:#fff;padding:10px;border-radius:6px;box-shadow:0 10px 24px rgba(36,22,74,.14)}
.mom img{display:block;width:100%;height:100%;object-fit:cover}
.m1{grid-column:1;grid-row:1;transform:rotate(-1.5deg)}.m1 img{aspect-ratio:16/9}
.m3{grid-column:1;grid-row:2;transform:rotate(1deg)}.m3 img{aspect-ratio:16/9}
.m2{grid-column:2;grid-row:1/3;transform:rotate(1.5deg)}
.m4{grid-column:3;grid-row:1/3;transform:rotate(-1deg)}
@media (max-width:800px){.moments{grid-template-columns:1fr 1fr}.m1,.m3{grid-column:1/3;grid-row:auto}.m2,.m4{grid-column:auto;grid-row:auto}.m2 img,.m4 img{aspect-ratio:9/16}}
.moments{grid-template-columns:1.6fr 1fr}
@media (max-width:800px){.moments{grid-template-columns:1fr 1fr}.m2{grid-column:1/3}.m2 img{aspect-ratio:4/5}}
/* generált 3D grafikák */
body{background-color:#fff8ea;background-image:none;background-size:520px 520px}
.hero,.sub-top{background:url(grafika/egbolt.webp) center/cover no-repeat}
.hero .g-sun{position:absolute;right:3%;top:10px;width:140px;height:auto;z-index:1;animation:napforog 14s ease-in-out infinite}
@keyframes napforog{50%{transform:rotate(10deg) scale(1.05)}}
.hero .g-cloud{position:absolute;height:auto;z-index:1;opacity:1}
.g-star{position:absolute;z-index:1;height:auto;animation:csillan 4s ease-in-out infinite}
.g-star.s1{width:56px;left:46%;top:24px}.g-star.s2{width:34px;left:4%;bottom:170px;animation-delay:-2s}
@keyframes csillan{50%{transform:translateY(-8px) rotate(12deg)}}
.hero .g-pit{display:block;width:100%;height:auto;max-height:180px;object-fit:cover;object-position:top;margin-top:-40px;position:relative;z-index:3}
.labdak i{box-shadow:none;opacity:.7;border-radius:0}
@media (max-width:760px){.hero .g-sun{display:block;width:84px;right:auto;left:62%;top:auto;bottom:150px}.g-star.s1{display:none}}
@media (prefers-reduced-motion:reduce){.hero .g-sun,.g-star{animation:none}}
.hero .g-pit{max-height:110px;margin-top:-20px}
.hero .g-sun{width:110px}
.hero .g-cloud{opacity:.9}
body{background-size:700px 700px}
.hero .g-sun{right:auto;left:47%;top:110px;width:96px}
.g-star.s1{left:auto;right:6%;top:auto;bottom:150px}
@media (max-width:760px){.hero .g-sun{left:auto;right:6%;top:auto;bottom:130px;width:70px}}
body{background-image:none;background-color:#fff8ea}
/* 3D ikonok a kártyák sarkában */
.pol .sticker{background:#fff;padding:6px}
.pol .sticker img{width:100%;height:100%;object-fit:contain;display:block}
/* szülinapi doboz: generált party háttér */
.bday{background:#2a1360 url(grafika/szulinap-hatter.webp) right center/cover no-repeat;padding-top:90px}
.bday .flags{display:none}
.bday-pic{max-width:340px;justify-self:center;transform:rotate(3deg)}
@media (max-width:800px){.bday{background-position:85% top;padding-top:80px}}
/* nyitvatartás és jegyárak: két színes kártya */
.info2{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:40px}
.icard{position:relative;border-radius:30px;padding:34px 32px 28px;box-shadow:0 10px 0 var(--c),0 18px 34px rgba(36,22,74,.10)}
.ic-blue{background:linear-gradient(160deg,#e3f3ff,#cfeaff);--c:#7cc0f0}
.ic-pink{background:linear-gradient(160deg,#fff0f5,#ffe0ec);--c:#f4a3c0}
.icard-ic{position:absolute;right:-18px;top:-34px;width:96px;height:auto;filter:drop-shadow(0 8px 10px rgba(36,22,74,.15))}
.icard h3{font-family:"Baloo 2";font-size:1.7rem;margin:0 0 14px}
.irow{display:flex;justify-content:space-between;align-items:baseline;gap:12px;background:rgba(255,255,255,.75);border-radius:16px;padding:12px 16px;margin-top:10px;font-weight:700}
.irow b{font-family:"Baloo 2";font-size:1.25rem;white-space:nowrap}
.big-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.big-price b{font-family:"Baloo 2";font-size:2.8rem;line-height:1;color:var(--pink)}
.big-price span{font-weight:700;color:var(--muted)}
.info-note{text-align:center;color:var(--muted);margin:26px 0 0;font-size:.95rem}
@media (max-width:800px){.info2{grid-template-columns:1fr;gap:44px}.icard-ic{width:76px;right:-6px}}
.photos figure:not(:has(h2)){padding-bottom:12px}
.photos:has(figure:only-child){grid-template-columns:minmax(260px,760px)}
/* ikonok fehér kör nélkül */
.pol .sticker{background:none;box-shadow:none;padding:0;width:110px;height:110px;right:-26px;top:-36px}
.pol .sticker img{filter:drop-shadow(0 8px 10px rgba(36,22,74,.22))}
@media (max-width:500px){.pol .sticker{width:84px;height:84px;right:-10px}}
.crow .cico{flex:none;width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 4px 6px rgba(36,22,74,.15))}
.contact.za{--blue:#7b3fb8;box-shadow:0 10px 0 #7b3fb8,0 18px 34px rgba(36,22,74,.12)}
.za-pic{display:block}.za-pic img{width:100%;height:100%;min-height:260px;object-fit:cover;display:block}
/* mobilon semmi ne lógjon ki oldalra */
html,body{overflow-x:hidden;overflow-x:clip;max-width:100%}
@media (max-width:560px){.pol .sticker{right:-4px;width:76px;height:76px}.icard-ic{right:-2px}.panel .sticker{right:-4px}}
/* szülinapi doboz: mobilon olvasható szöveg */
@media (max-width:800px){
  .bday{background:#2a1360 url(grafika/szulinap-hatter.webp) 92% top/auto 260px no-repeat;padding-top:200px}
  .bday>div:first-of-type{background:rgba(42,19,96,.92);border-radius:22px;padding:22px 20px;margin:0 -6px}
  .bday h2{text-shadow:0 2px 8px rgba(0,0,0,.35)}
}
/* kezdőlap: mesefigura blokk */
.mf-home-card{display:grid;grid-template-columns:1fr 1.15fr;gap:34px;align-items:center;margin-top:36px;background:linear-gradient(135deg,#ece0ff,#ffe0ec 60%,#fff4c2);border-radius:32px;padding:30px;box-shadow:0 10px 0 #7b3fb8,0 18px 34px rgba(36,22,74,.12)}
.mf-home-pic img{width:100%;border:8px solid #fff;border-radius:8px;transform:rotate(-2deg);box-shadow:0 12px 26px rgba(36,22,74,.2);display:block}
.mf-home-card h3{font-family:"Baloo 2";font-size:1.9rem;margin:0 0 8px}
.mf-home-facts{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:14px 0}
.mf-home-facts li{background:#fff;border-radius:12px;padding:6px 12px;font-weight:800;box-shadow:0 3px 0 rgba(123,63,184,.35)}
.mf-home-names{font-family:"Baloo 2";font-weight:700;color:#7b3fb8;margin:0 0 18px}
.mf-home-card .btn{margin:4px 6px 4px 0}
@media (max-width:800px){.mf-home-card{grid-template-columns:1fr;padding:22px}}
/* mesefigura blokk: kevésbé sablonos */
.mf-home-card h3{font-size:1.75rem;line-height:1.2}
.mf-home-card p{margin:0 0 12px;font-size:1.05rem}
.mf-home-call{font-size:1.5rem!important;color:var(--ink);margin:18px 0 8px!important}
.mf-home-call a{color:#7b3fb8;text-decoration:none;border-bottom:3px solid #ffd23f}
.mf-home-more{font-weight:800;color:var(--ink);text-decoration:underline;text-decoration-color:#7b3fb8;text-underline-offset:4px}
/* mobil hero: látható, élénkebb mozgás */
@keyframes nap-mobil{0%,100%{transform:rotate(-8deg) scale(1)}50%{transform:rotate(12deg) scale(1.12)}}
@keyframes csillag-mobil{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-16px) rotate(25deg) scale(1.15)}}
@media (max-width:760px){
  .hero .g-sun{display:block!important;position:absolute;left:auto;right:4%;top:auto;bottom:220px;width:92px;z-index:2;animation:nap-mobil 3.5s ease-in-out infinite}
  .hero .g-star{display:block!important;animation:csillag-mobil 2.6s ease-in-out infinite}
  .g-star.s1{width:46px;left:6%;right:auto;top:auto;bottom:250px}
  .g-star.s2{width:34px;left:auto;right:30%;bottom:150px;animation-delay:-1.3s}
  .hero .g-cloud{opacity:1}
  .hero .g-cloud:nth-of-type(2){animation-duration:30s!important}
  .hero .g-cloud:nth-of-type(3){animation-duration:22s!important}
}
@media (prefers-reduced-motion:reduce){.hero .g-sun,.hero .g-star{animation:none!important}}
@media (max-width:760px){
  .hero .g-sun{top:130px;bottom:auto;right:2%;width:84px}
  .g-star.s1{top:150px;bottom:auto;left:4%;width:44px}
  .g-star.s2{top:430px;bottom:auto;right:6%;left:auto;width:34px}
}
.mf-home-card h3{font-size:1.9rem;margin-bottom:10px}
.mf-home-card p{font-size:1.08rem;margin:0 0 14px}
.mf-home-price{color:var(--muted)}
.mf-home-price b{font-family:"Baloo 2";font-size:1.6rem;color:#7b3fb8}
.mf-home-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.mf-home-btns .btn{margin:0}
.mf-home-btns .btn.ghost{box-shadow:0 5px 0 #7b3fb8}
/* telefonszámos gombok: címke felül, szám egy sorban alatta */
.btn.btn-tel{display:inline-flex;flex-direction:column;align-items:center;line-height:1.15;padding:10px 24px 12px;text-align:center}
.btn.btn-tel small{font-size:.8rem;font-weight:700;opacity:.8}
.btn.btn-tel span{white-space:nowrap;font-size:1.15rem}
