/* =========================================================================
   CHILDRENEVENT – Szolgáltatások plugin stílusai
   Minden .che (lista) és .ches (aloldal) prefix alá zárva – nem üt a témával.
   ========================================================================= */

/* ===== KÖZÖS TOKENEK ===== */
.che,.ches{
  --kek:#5B8DEF; --kek-sotet:#3A66C8; --lila:#9625CA; --sarga:#FFC01E;
  --ink:#2A2540; --halvany:#6B6480; --lap:#F4F6FF; --lap2:#FBF4FF; --keret:#EAE6F5;
  font-family:'Nunito','Quicksand','Segoe UI',system-ui,-apple-system,sans-serif;
  color:var(--ink);-webkit-font-smoothing:antialiased;
}
.che *,.che *::before,.che *::after,
.ches *,.ches *::before,.ches *::after{box-sizing:border-box;}

/* ============================ LISTA OLDAL (.che) ============================ */
.che{
  background:
    radial-gradient(1100px 520px at 12% -8%, #E7EEFF 0%, rgba(231,238,255,0) 60%),
    radial-gradient(900px 480px at 100% 0%, #F7E9FF 0%, rgba(247,233,255,0) 55%),
    linear-gradient(180deg, var(--lap) 0%, var(--lap2) 100%);
  line-height:1.55;padding:0 0 10px;
  /* full-bleed */
  width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
}
.che-belso{max-width:1180px;margin:0 auto;padding:0 20px;}

/* HERO */
.che-hero{position:relative;overflow:hidden;text-align:center;padding:60px 20px 44px;}
.che-hero .che-belso{position:relative;z-index:2;}
.che-blob{position:absolute;border-radius:50%;filter:blur(2px);z-index:1;pointer-events:none;
  animation:che-lebeg 9s ease-in-out infinite;}
.che-blob.b1{width:120px;height:120px;left:6%;top:22%;opacity:.55;background:radial-gradient(circle at 30% 30%,#BFD3FF,#8EB0FF);animation-delay:-1s;}
.che-blob.b2{width:70px;height:70px;right:9%;top:16%;opacity:.55;background:radial-gradient(circle at 30% 30%,#FFE39A,#FFC01E);animation-delay:-4s;}
.che-blob.b3{width:150px;height:150px;right:4%;bottom:-30px;opacity:.4;background:radial-gradient(circle at 30% 30%,#F0C2FF,#D68CF5);animation-delay:-2.5s;}
.che-blob.b4{width:54px;height:54px;left:16%;bottom:10%;opacity:.55;background:radial-gradient(circle at 30% 30%,#B6F5DD,#4FD1A5);animation-delay:-6s;}
.che-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;
  background:#fff;box-shadow:0 6px 18px rgba(91,141,239,.18);color:var(--kek-sotet);
  font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:20px;}
.che-badge::before{content:'✦';color:var(--sarga);font-size:.9rem;}
.che-hero h1{margin:0 0 14px;font-size:clamp(2rem,5vw,3.4rem);font-weight:900;line-height:1.08;letter-spacing:-.01em;text-wrap:balance;}
.che-hero h1 .kiemel{color:var(--kek);position:relative;white-space:nowrap;}
.che-hero h1 .kiemel::after{content:'';position:absolute;left:0;right:0;bottom:.06em;height:.28em;background:var(--sarga);opacity:.5;border-radius:6px;z-index:-1;}
.che-hero p.lead{max-width:640px;margin:0 auto;color:var(--halvany);font-size:clamp(1rem,2.2vw,1.18rem);font-weight:600;}
.che-statok{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px;}
.che-stat{background:rgba(255,255,255,.72);backdrop-filter:blur(6px);border:1px solid #fff;border-radius:18px;padding:14px 22px;min-width:132px;box-shadow:0 8px 22px rgba(58,102,200,.10);}
.che-stat b{display:block;font-size:1.5rem;font-weight:900;color:var(--kek);line-height:1;}
.che-stat span{display:block;margin-top:5px;font-size:.8rem;font-weight:700;color:var(--halvany);}

/* SZŰRŐSÁV */
.che-vezerlo{position:sticky;top:0;z-index:20;margin-top:34px;padding:16px 0 14px;background:linear-gradient(180deg,var(--lap) 55%,rgba(244,246,255,0));}
.che-vezerlo-doboz{background:#fff;border:1px solid var(--keret);border-radius:24px;padding:16px 18px;box-shadow:0 14px 40px rgba(58,102,200,.10);}
.che-kereso-sor{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:14px;}
.che-kereso{flex:1;min-width:220px;position:relative;}
.che-kereso input{width:100%;padding:13px 16px 13px 46px;border:2px solid var(--keret);border-radius:14px;font-family:inherit;font-size:.98rem;font-weight:600;color:var(--ink);background:var(--lap);transition:border-color .15s,background .15s;}
.che-kereso input::placeholder{color:#A7A0BC;font-weight:600;}
.che-kereso input:focus{outline:none;border-color:var(--kek);background:#fff;}
.che-kereso::before{content:'🔍';position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:1.05rem;opacity:.6;}
.che-szamlalo{font-size:.86rem;font-weight:800;color:var(--halvany);white-space:nowrap;padding-right:4px;}
.che-szamlalo b{color:var(--kek);}
.che-pirulak{display:flex;flex-wrap:wrap;gap:9px;}
.che-pirula{appearance:none;display:inline-flex;align-items:center;gap:7px;border:2px solid var(--keret);background:#fff;border-radius:999px;padding:9px 16px;cursor:pointer;font-family:inherit;font-weight:800;font-size:.88rem;color:var(--ink);transition:transform .12s,border-color .15s,background .15s,color .15s,box-shadow .15s;}
.che-pirula .pont{width:9px;height:9px;border-radius:50%;background:var(--pc,var(--kek));flex:none;}
.che-pirula .db{font-size:.72rem;font-weight:800;color:var(--halvany);}
.che-pirula:hover{transform:translateY(-1px);border-color:var(--pc,var(--kek));}
.che-pirula.aktiv{background:var(--pc,var(--kek));border-color:var(--pc,var(--kek));color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--pc,var(--kek)) 40%,transparent);}
.che-pirula.aktiv .pont{background:#fff;}
.che-pirula.aktiv .db{color:rgba(255,255,255,.85);}
.che-pirula:focus-visible{outline:3px solid var(--kek);outline-offset:2px;}

/* KÁRTYARÁCS */
.che-racs{display:grid;grid-template-columns:repeat(auto-fill,minmax(266px,1fr));gap:20px;padding:8px 0 20px;}
.che-kartya{--c:var(--kek);position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--keret);border-radius:24px;overflow:hidden;box-shadow:0 10px 26px rgba(42,37,64,.06);transition:transform .2s cubic-bezier(.2,.7,.3,1),box-shadow .2s,border-color .2s;animation:che-be .4s both;text-decoration:none;color:inherit;}
.che-kartya:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--c) 40%,var(--keret));box-shadow:0 20px 42px color-mix(in srgb,var(--c) 22%,rgba(42,37,64,.08));}
.che-kartya-fej{position:relative;padding:22px 22px 0;}
.che-ikon{width:70px;height:70px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:2.15rem;line-height:1;background:var(--c);background:linear-gradient(140deg,color-mix(in srgb,var(--c) 22%,#fff),color-mix(in srgb,var(--c) 40%,#fff));box-shadow:0 8px 18px color-mix(in srgb,var(--c) 28%,transparent);transition:transform .25s;}
.che-kartya:hover .che-ikon{transform:scale(1.06) rotate(-4deg);}
.che-cimke{position:absolute;top:22px;right:22px;display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.02em;color:var(--c);background:color-mix(in srgb,var(--c) 14%,#fff);}
.che-kartya-test{padding:16px 22px 22px;display:flex;flex-direction:column;flex:1;}
.che-kartya-test h3{margin:0 0 7px;font-size:1.16rem;font-weight:900;line-height:1.22;letter-spacing:-.01em;}
.che-kartya-test p{margin:0 0 16px;font-size:.92rem;color:var(--halvany);font-weight:600;flex:1;}
.che-labs{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;}
.che-ar{display:inline-flex;flex-direction:column;line-height:1.1;}
.che-ar .cim{font-size:.66rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#A7A0BC;}
.che-ar .ertek{font-size:1.06rem;font-weight:900;color:var(--ink);}
.che-erdekel{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:999px;font-weight:800;font-size:.86rem;color:#fff;background:var(--c);white-space:nowrap;transition:transform .12s,filter .15s;}
.che-kartya:hover .che-erdekel{transform:translateY(-1px);filter:brightness(1.06);}
.che-erdekel::after{content:'→';transition:transform .15s;}
.che-kartya:hover .che-erdekel::after{transform:translateX(3px);}
.che-ures{display:none;text-align:center;padding:60px 20px;color:var(--halvany);}
.che-ures .emj{font-size:3rem;display:block;margin-bottom:12px;}
.che-ures b{color:var(--ink);font-size:1.15rem;}

/* ZÁRÓ CTA */
.che-cta{margin:26px auto 8px;max-width:1180px;padding:0 20px;}
.che-cta-doboz{position:relative;overflow:hidden;border-radius:30px;padding:40px 30px;text-align:center;background:linear-gradient(135deg,var(--kek) 0%,var(--lila) 100%);color:#fff;box-shadow:0 24px 50px rgba(91,141,239,.35);}
.che-cta-doboz::before{content:'';position:absolute;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.14);top:-70px;left:-40px;}
.che-cta-doboz::after{content:'';position:absolute;width:160px;height:160px;border-radius:50%;background:rgba(255,192,30,.30);bottom:-60px;right:-30px;}
.che-cta-doboz>*{position:relative;z-index:2;}
.che-cta-doboz h2{margin:0 0 10px;font-size:clamp(1.5rem,3.4vw,2.2rem);font-weight:900;text-wrap:balance;}
.che-cta-doboz p{margin:0 auto 24px;max-width:560px;font-size:1.02rem;font-weight:600;opacity:.95;}
.che-cta-gombok{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}
.che-gomb{display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-family:inherit;padding:15px 30px;border-radius:999px;font-weight:900;font-size:1rem;transition:transform .14s,box-shadow .15s;}
.che-gomb.feher{background:#fff;color:var(--kek-sotet);box-shadow:0 10px 24px rgba(0,0,0,.16);}
.che-gomb.feher:hover{transform:translateY(-2px);}
.che-gomb.uveg{background:rgba(255,255,255,.16);color:#fff;border:2px solid rgba(255,255,255,.55);}
.che-gomb.uveg:hover{transform:translateY(-2px);background:rgba(255,255,255,.24);}

@keyframes che-be{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}
@keyframes che-lebeg{0%,100%{transform:translateY(0);}50%{transform:translateY(-14px);}}

@media(max-width:640px){
  .che-hero{padding:46px 16px 30px;}
  .che-belso{padding:0 14px;}
  .che-stat{min-width:120px;padding:12px 16px;}
  .che-stat b{font-size:1.28rem;}
  .che-racs{grid-template-columns:1fr;gap:16px;}
  .che-szamlalo{width:100%;order:3;}
}

/* ============================ ALOLDAL (.ches) ============================ */
.ches{
  line-height:1.6;background:linear-gradient(180deg,var(--lap) 0%,var(--lap2) 100%);
  width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
  padding-bottom:40px;--c:#5B8DEF;
}
.ches-belso{max-width:1120px;margin:0 auto;padding:0 22px;}
.ches-vissza{display:inline-flex;align-items:center;gap:8px;margin:22px 0 4px;text-decoration:none;font-weight:800;font-size:.92rem;color:var(--kek-sotet);opacity:.9;transition:gap .15s,opacity .15s;}
.ches-vissza:hover{gap:12px;opacity:1;}
.ches-fej{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center;padding:14px 0 30px;}
.ches-fej-szoveg{min-width:0;}
.ches-cimke{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:999px;font-size:.78rem;font-weight:800;letter-spacing:.02em;color:var(--c);background:color-mix(in srgb,var(--c) 14%,#fff);margin-bottom:14px;}
.ches h1{margin:0 0 12px;font-size:clamp(1.9rem,4.2vw,3rem);font-weight:900;line-height:1.1;letter-spacing:-.01em;text-wrap:balance;}
.ches-lead{margin:0 0 22px;font-size:clamp(1.02rem,2vw,1.2rem);font-weight:600;color:var(--halvany);max-width:44ch;}
.ches-fej-alja{display:flex;flex-wrap:wrap;align-items:center;gap:14px;}
.ches-ar{display:inline-flex;flex-direction:column;line-height:1.15;}
.ches-ar .cim{font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#A7A0BC;}
.ches-ar .ertek{font-size:1.5rem;font-weight:900;color:var(--ink);}
.ches-cta{appearance:none;text-decoration:none;border:none;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:9px;padding:14px 26px;border-radius:999px;font-weight:900;font-size:1rem;color:#fff;background:var(--c);box-shadow:0 12px 26px color-mix(in srgb,var(--c) 34%,transparent);transition:transform .14s,filter .15s;}
.ches-cta:hover{transform:translateY(-2px);filter:brightness(1.05);}
.ches-cta::after{content:'→';transition:transform .15s;}
.ches-cta:hover::after{transform:translateX(3px);}
.ches-kep{position:relative;border-radius:28px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 26px 60px rgba(42,37,64,.18);background:linear-gradient(150deg,color-mix(in srgb,var(--c) 30%,#fff),color-mix(in srgb,var(--c) 55%,#fff));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;}
.ches-kep img{width:100%;height:100%;object-fit:cover;display:block;}
.ches-kep .nagyemj{font-size:4.5rem;line-height:1;filter:drop-shadow(0 8px 16px rgba(42,37,64,.18));}
.ches-kep .kepfelirat{font-weight:800;font-size:.82rem;color:color-mix(in srgb,var(--c) 65%,#3A2E4D);background:rgba(255,255,255,.7);padding:6px 14px;border-radius:999px;}
.ches-info{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px;}
.ches-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--keret);border-radius:14px;padding:10px 16px;font-weight:700;font-size:.9rem;color:var(--ink);box-shadow:0 6px 16px rgba(58,102,200,.07);}
.ches-chip b{color:var(--halvany);font-weight:800;}
.ches-torzs{display:grid;grid-template-columns:1fr 320px;gap:32px;align-items:start;}
.ches-leiras{background:#fff;border:1px solid var(--keret);border-radius:24px;padding:30px 32px;box-shadow:0 12px 30px rgba(42,37,64,.05);}
.ches-leiras h2{margin:0 0 12px;font-size:1.35rem;font-weight:900;}
.ches-leiras h3{margin:22px 0 8px;font-size:1.1rem;font-weight:800;}
.ches-leiras p{margin:0 0 14px;color:#4B4560;font-weight:500;}
.ches-leiras img{max-width:100%;height:auto;border-radius:16px;}
.ches-leiras ul{margin:0 0 14px;padding-left:0;list-style:none;display:grid;gap:9px;}
.ches-leiras ul li{position:relative;padding-left:30px;color:#4B4560;font-weight:600;}
.ches-leiras ul li::before{content:'✓';position:absolute;left:0;top:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.72rem;font-weight:900;color:#fff;background:var(--c);}
.ches-doboz{position:sticky;top:20px;border-radius:24px;padding:26px 24px;text-align:center;background:linear-gradient(150deg,color-mix(in srgb,var(--c) 12%,#fff),#fff);border:1px solid color-mix(in srgb,var(--c) 22%,var(--keret));box-shadow:0 18px 40px color-mix(in srgb,var(--c) 14%,rgba(42,37,64,.08));}
.ches-doboz .nagyar{font-size:1.7rem;font-weight:900;color:var(--ink);line-height:1;}
.ches-doboz .nagyar small{display:block;margin-top:5px;font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#A7A0BC;}
.ches-arlista{display:flex;flex-direction:column;gap:7px;text-align:left;}
.ches-arsor{background:color-mix(in srgb,var(--c) 8%,#fff);border:1px solid color-mix(in srgb,var(--c) 20%,var(--keret));border-radius:12px;padding:10px 14px;font-weight:800;font-size:.9rem;color:var(--ink);}
.ches-doboz .ches-cta{width:100%;justify-content:center;margin:18px 0 12px;}
.ches-tel{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:800;font-size:1rem;color:var(--kek-sotet);}
.ches-tel:hover{text-decoration:underline;}
.ches-doboz .apro{margin-top:14px;font-size:.82rem;color:var(--halvany);font-weight:600;}

@media(max-width:900px){
  .ches-torzs{grid-template-columns:1fr;}
  .ches-doboz{position:static;}
}
@media(max-width:760px){
  .ches-fej{grid-template-columns:1fr;gap:22px;}
  .ches-fej .ches-kep{order:-1;}
}

@media(prefers-reduced-motion:reduce){
  .che *,.ches *{animation:none!important;transition:none!important;}
}

/* ============================================================================
   KARAKTER-GALÉRIA – a Sétáló karakterek aloldalon a natív WordPress "Galéria"
   blokkot neves kártyás ráccsá alakítja. A kép FELIRATA lesz a karakter neve.
   Működik az új (has-nested-images) és a régi (blocks-gallery-*) blokkal is.
   ============================================================================ */
.ches-leiras .wp-block-gallery,
.ches-leiras .blocks-gallery-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(190px,1fr)) !important;
  gap:16px !important;margin:10px 0 20px !important;padding:0 !important;list-style:none !important;
}
/* egy karakter = egy kártya */
.ches-leiras .wp-block-gallery figure.wp-block-image,
.ches-leiras .blocks-gallery-item{
  margin:0 !important;width:auto !important;background:#fff;border:1px solid var(--keret);
  border-radius:18px;overflow:hidden;box-shadow:0 8px 22px rgba(42,37,64,.07);
  display:flex !important;flex-direction:column;
  transition:transform .2s,box-shadow .2s,border-color .2s;
}
.ches-leiras .wp-block-gallery figure.wp-block-image:hover,
.ches-leiras .blocks-gallery-item:hover{
  transform:translateY(-5px);border-color:color-mix(in srgb,var(--c) 45%,var(--keret));
  box-shadow:0 18px 34px color-mix(in srgb,var(--c) 18%,rgba(42,37,64,.10));
}
.ches-leiras .wp-block-gallery figure.wp-block-image img,
.ches-leiras .blocks-gallery-item img{
  width:100% !important;height:auto !important;
  aspect-ratio:1/1 !important;object-fit:cover !important;object-position:center !important;
  display:block !important;border-radius:0 !important;margin:0 !important;max-width:none !important;
}
/* a felirat = a karakter neve, a kép alatt */
.ches-leiras .wp-block-gallery figcaption,
.ches-leiras .wp-block-gallery .wp-element-caption,
.ches-leiras .blocks-gallery-item figcaption{
  position:static !important;transform:none !important;inset:auto !important;
  margin:0 !important;padding:12px 10px !important;max-width:none !important;width:100% !important;
  background:#fff !important;color:var(--ink) !important;
  font-weight:800;font-size:1rem;text-align:center;line-height:1.25;opacity:1 !important;}

@media(max-width:640px){
  .ches-leiras .wp-block-gallery,
  .ches-leiras .blocks-gallery-grid{grid-template-columns:repeat(2,1fr) !important;}
}
