/* ============================================================================
   TOKENEK
   ========================================================================= */
.zeg-home, .zeg-home *{box-sizing:border-box}

.zeg-home{
  --blue:#2c8296;
  --blue-dark:#22697a;
  --ink:#11151a;
  --muted:#5b6772;
  --faint:#7c868f;
  --surface:#fff;

  --r:16px;                /* kisképek sugara */
  --inset:12px;            /* panelek belső kerete */
  --thumb-w:clamp(92px,17cqi,124px);

  /* a kiemelt kártya saját tokenjei */
  --pad-x:clamp(11px,2.4cqi,16px);
  --radius-sm:18px;
  --radius-lg:28px;
  --title-pad-y:11px;
  --meta-pad-y:9px;
  --goo-blur:5px;
  --copy-gap:24px;

  width:min(100%,1300px);margin:0 auto;container-type:inline-size;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  color:#11151a;-webkit-font-smoothing:antialiased;
}

/* ============================================================================
   SZEKCIÓFEJLÉC
   ========================================================================= */
.zeg-home .head{display:flex;align-items:baseline;justify-content:space-between;margin:34px 6px 10px}
.zeg-home .head:first-child{margin-top:0}
.zeg-home .head h2{margin:0;font-size:clamp(20px,2.6cqi,24px);font-weight:850;letter-spacing:-.01em;line-height:1.2}
.zeg-home .head a,.zeg-home .head em{font-size:13px;font-weight:650;color:var(--faint);text-decoration:none;font-style:normal}
.zeg-home .head a:hover{color:var(--blue)}

/* ============================================================================
   1. ÁLLAPOTSÁV
   ========================================================================= */
.zeg-home .status{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.zeg-home .edition{width:100%;display:flex;align-items:baseline;justify-content:space-between;
         margin:0 6px 10px;font-size:12.5px;font-weight:700;color:var(--faint)}
.zeg-home .edition b{color:var(--ink);font-weight:850}
.zeg-home .chip{display:inline-flex;align-items:center;gap:9px;padding:9px 16px 9px 11px;
      border-radius:999px;background:var(--surface);font-size:13.5px;font-weight:650;
      text-decoration:none;color:var(--ink);
      transition:transform .18s ease, box-shadow .18s ease}
.zeg-home .chip:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(22,34,48,.10)}
.zeg-home .chip i{display:grid;place-items:center;width:26px;aspect-ratio:1;border-radius:50%;
        background:var(--blue);color:#fff;flex:none}
.zeg-home .chip i svg{width:15px;height:15px}
.zeg-home .chip--warn i{background:#c2761b}
.zeg-home .chip time{color:var(--faint);font-weight:600}

/* ============================================================================
   2. KIEMELT KÁRTYA (gooey)
   ========================================================================= */
.zeg-home .card{
  position:relative;container-type:inline-size;
  aspect-ratio:16/9;overflow:hidden;
  /* koncentrikus a gomb fehér keretével; --shell-r-t a JS méri */
  border-radius:calc(var(--shell-r,36px) + var(--copy-gap));
  background:#cfd5da var(--card-image) var(--card-pos,center)/cover no-repeat;
  box-shadow:0 18px 55px rgba(22,34,48,.14);
  color:var(--ink);
}
.zeg-home .card:after{content:"";position:absolute;inset:0;pointer-events:none;
            background:linear-gradient(180deg,transparent 38%,rgba(8,20,30,.08))}
@container (max-width:460px){ .zeg-home .card{aspect-ratio:4/5} }
@container (min-width:900px){
  .zeg-home .card{aspect-ratio:2.5/1}
  .zeg-home .card .title-row{font-size:clamp(30px,4.4cqi,48px)}
}

.zeg-home .copy{position:absolute;left:var(--copy-gap);bottom:var(--copy-gap);width:min(88%,440px);z-index:3}
.zeg-home .text-stack{position:relative;width:100%}
/* egyenes bal él: a sorok lekerekített bal sarkai közti beharapásokat
   ez a fehér gerinc tölti ki (a -10px/8px az eyebrow és a gomb FIX
   magasságából jön, a cím méretétől független) */
.zeg-home .text-stack::before{content:"";position:absolute;z-index:1;left:-1px;top:-10px;bottom:8px;
                    width:calc(var(--pad-x) + 16px);background:#fff;
                    border-radius:24px 0 0 24px;pointer-events:none}

.zeg-home .layer{width:100%;display:flex;flex-direction:column;align-items:flex-start}
.zeg-home .ghost{position:absolute;inset:0;z-index:2;pointer-events:none;filter:url(#goo);
       clip-path:inset(-36px -36px -36px calc(-1 * var(--pad-x)))}
.zeg-home .real{position:relative;z-index:3}

.zeg-home .eyebrow-row{font-size:12px;line-height:1.35;font-weight:850;letter-spacing:.15em;
             text-transform:uppercase;margin-bottom:5px}
.zeg-home .title-row{width:100%;padding-right:20px;margin-top:-1px;margin-bottom:5px;
           font-size:clamp(22px,5.2cqi,40px);line-height:1.10;font-weight:820;letter-spacing:-.035em}
.zeg-home .meta-row{max-width:88%;margin-top:-2px;font-size:15px;line-height:1.42;font-weight:560}

.zeg-home .pill-text{-webkit-box-decoration-break:clone;box-decoration-break:clone;
           padding-left:var(--pad-x);padding-right:var(--pad-x);border-radius:var(--radius-sm)}
.zeg-home .eyebrow-row .pill-text{padding-top:10px;padding-bottom:10px}
.zeg-home .title-row .pill-text{padding-top:var(--title-pad-y);padding-bottom:var(--title-pad-y);
                      border-radius:var(--radius-lg)}
.zeg-home .meta-row .pill-text{padding-top:var(--meta-pad-y);padding-bottom:var(--meta-pad-y)}

.zeg-home .ghost .pill-text{background:#fff;color:#fff}
.zeg-home .ghost .button-shell{background:#fff}
.zeg-home .ghost .more{background:#fff;color:#fff}
.zeg-home .ghost .arrow{border-color:#fff;color:#fff}
.zeg-home .real .pill-text{background:transparent}
.zeg-home .real .button-shell{background:transparent}
.zeg-home .real .eyebrow-row{color:var(--blue)}
.zeg-home .real .meta-row{color:#4e5964}

.zeg-home .button-shell{display:inline-flex;padding:10px;margin-top:5px;border-radius:999px}
.zeg-home .more{display:inline-flex;align-items:center;gap:10px;border-radius:999px;
      padding:12px 14px 12px 18px;background:var(--blue);color:#fff;font:inherit;
      font-weight:780;text-decoration:none;white-space:nowrap}
.zeg-home .arrow{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;
       border:1px solid rgba(255,255,255,.68);font-size:16px}

/* ============================================================================
   2b. TOVÁBBI KIEMELT (3 kártya)
   ========================================================================= */
.zeg-home .featured-more{display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin-top:10px}
.zeg-home .ecard{display:grid;gap:8px;align-content:start;padding:var(--inset);background:var(--surface);
       border-radius:calc(var(--r) + var(--inset));text-decoration:none;color:inherit;
       transition:transform .18s ease, box-shadow .18s ease}
.zeg-home .ecard:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(22,34,48,.10)}
.zeg-home .ecard-img{width:100%;aspect-ratio:16/10;border-radius:var(--r);object-fit:cover;
           object-position:var(--thumb-pos,center);display:block;background:#dde3e8}
.zeg-home .ecard-img--mono{display:grid;place-items:center;
                 background:linear-gradient(150deg,var(--blue),#1b5c6c);
                 color:#fff;font-size:clamp(28px,4cqi,40px);font-weight:850}
.zeg-home .ecard-eyebrow{font-size:11px;font-weight:850;letter-spacing:.1em;color:var(--blue);
               overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zeg-home .ecard-title{font-size:clamp(15px,1.8cqi,18px);font-weight:770;line-height:1.28;
             letter-spacing:-.02em;display:-webkit-box;-webkit-box-orient:vertical;
             -webkit-line-clamp:2;line-clamp:2;overflow:hidden}
.zeg-home .ecard-meta{font-size:13px;font-weight:500;color:var(--muted);
            overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@container (max-width:760px){ .zeg-home .featured-more{grid-template-columns:1fr 1fr} }
@container (max-width:440px){ .zeg-home .featured-more{grid-template-columns:1fr} }

/* Admin: program ↔ POI kép váltó */
.zeg-home .event-shell{position:relative}
.zeg-home .event-shell--ecard .ecard,
.zeg-home .event-shell--row .row{width:100%}
.zeg-home .event-image-toggle{
  position:absolute;top:10px;right:10px;z-index:5;
  width:36px;height:36px;padding:0;border:0;border-radius:999px;
  background:rgba(255,255,255,.92);color:#142033;
  box-shadow:0 1px 8px rgba(0,0,0,.18);cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  opacity:.9;transition:opacity .2s ease,background .2s ease,color .2s ease
}
.zeg-home .card > .event-image-toggle{top:14px;right:14px}
.zeg-home .event-shell--ecard > .event-image-toggle{top:calc(var(--inset) + 10px);right:calc(var(--inset) + 10px)}
.zeg-home .event-shell--row > .event-image-toggle{
  top:calc(var(--inset) + 8px);left:calc(var(--inset) + var(--thumb-w) - 44px);right:auto;transform:none
}
.zeg-home .event-image-toggle:hover,
.zeg-home .event-image-toggle:focus-visible{
  opacity:1;background:var(--blue);color:#fff;outline:none
}
.zeg-home .event-image-toggle:disabled{opacity:.5;cursor:wait}

.zeg-staff-bar {
  position: fixed;
  right: 14px;
  bottom: 14px;
  left: auto;
  z-index: 1000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: min(280px, calc(100vw - 28px));
  padding: 10px 16px;
  border-radius: 999px;
  background: #0596f1;
  color: #fff;
  font: 600 12px/1.2 Inter, sans-serif;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 4px 16px rgba(0,0,0,.18);
  cursor: pointer;
}

.zeg-staff-bar[hidden] {
  display: none !important;
}

.zeg-edition-preview-banner {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  align-items: center;
  justify-content: center;
  background: #fff3cd;
  color: #664d03;
  padding: 10px 16px;
  margin: 0;
  text-align: center;
  font-family: Inter, sans-serif;
  font-size: 14px;
}

.zeg-edition-preview-banner-link {
  color: #664d03;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}

.zeg-edition-preview-banner-link:hover {
  color: #3d2e02;
}

/* ============================================================================
   3. PROGRAMLISTA
   ========================================================================= */
.zeg-home .list{display:grid;gap:10px}
.zeg-home .list--after-featured{margin-top:10px}
@container (min-width:900px){ .zeg-home .list{grid-template-columns:1fr 1fr} }

.zeg-home .row{display:grid;grid-template-columns:var(--thumb-w) 1fr auto;
     gap:clamp(12px,2.4cqi,18px);align-items:stretch;padding:var(--inset);
     background:var(--surface);border-radius:calc(var(--r) + var(--inset));
     text-decoration:none;color:inherit;
     transition:transform .18s ease, box-shadow .18s ease}
.zeg-home .row:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(22,34,48,.10)}
.zeg-home .thumb{width:100%;aspect-ratio:4/3;border-radius:var(--r);object-fit:cover;
       object-position:var(--thumb-pos,center);display:block;background:#dde3e8}
.zeg-home .thumb--mono{display:grid;place-items:center;
             background:linear-gradient(150deg,var(--blue),#1b5c6c);
             color:#fff;font-size:clamp(26px,4.6cqi,34px);font-weight:850}
.zeg-home .row-body{display:grid;gap:3px;min-width:0;align-content:center}
.zeg-home .row-eyebrow{font-size:11px;font-weight:850;letter-spacing:.12em;color:var(--blue)}
.zeg-home .row-title{font-size:clamp(16px,2.6cqi,19px);font-weight:750;line-height:1.25;
           letter-spacing:-.02em;display:-webkit-box;-webkit-box-orient:vertical;
           -webkit-line-clamp:2;line-clamp:2;overflow:hidden}
.zeg-home .row-meta{font-size:13.5px;font-weight:500;color:var(--muted);
          overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zeg-home .row-go{width:clamp(34px,5.6cqi,42px);aspect-ratio:1;border-radius:50%;align-self:center;
        display:grid;place-items:center;background:var(--blue);color:#fff}
.zeg-home .row-go svg{width:45%;height:45%;transition:transform .18s ease}
.zeg-home .row:hover .row-go svg{transform:translate(2px,-2px)}

/* ============================================================================
   4. INTÉZMÉNYEK HÍREI
   ========================================================================= */
.zeg-home .org{display:flex;align-items:center;gap:7px;min-width:0;font-size:10.5px;font-weight:850;
     letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.zeg-home .org span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zeg-home .org i{width:19px;aspect-ratio:1;border-radius:50%;background:#e9f1f3;flex:none;
       display:grid;place-items:center;overflow:hidden}
.zeg-home .org i img{width:72%;height:72%;object-fit:contain}
.zeg-home .date{font-size:12.5px;font-weight:500;color:var(--faint);white-space:nowrap}

/* --- 1-2 db --- */
.zeg-home .news--band{display:grid;gap:10px}
.zeg-home .band{display:grid;grid-template-columns:var(--band-img,30%) 1fr;gap:clamp(12px,2.4cqi,18px);
      padding:var(--inset);background:var(--surface);
      border-radius:calc(var(--r) + var(--inset));text-decoration:none;color:inherit;
      transition:transform .18s ease, box-shadow .18s ease}
.zeg-home .band:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(22,34,48,.10)}
.zeg-home .b-img{width:100%;aspect-ratio:16/9;border-radius:var(--r);object-fit:cover;
       object-position:var(--pos,center);display:block;background:#dde3e8}
.zeg-home .b-img--org{display:grid;place-items:center;background:#e9f1f3}
.zeg-home .b-img--org img{width:38%;height:38%;object-fit:contain}
.zeg-home .band-body{display:grid;gap:6px;align-content:center;min-width:0}
.zeg-home .band-title{font-size:clamp(17px,2.3cqi,21px);font-weight:790;line-height:1.24;letter-spacing:-.022em}
.zeg-home .band-excerpt{font-size:14px;font-weight:500;line-height:1.45;color:var(--muted);
              display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
              line-clamp:2;overflow:hidden}
.zeg-home .news--band.is-single{--band-img:38%}
.zeg-home .news--band.is-single .band-excerpt{-webkit-line-clamp:3;line-clamp:3}
/* Két hír: egymás mellett; kártyán belül kép felül, szöveg alatta. */
.zeg-home .news--band.is-pair{grid-template-columns:1fr 1fr;align-items:stretch}
.zeg-home .news--band.is-pair .band{grid-template-columns:1fr;gap:10px;height:100%}
.zeg-home .news--band.is-pair .b-img{aspect-ratio:16/10}
.zeg-home .news--band.is-pair .band-body{align-content:start}
.zeg-home .news--band.is-pair .band-title{font-size:clamp(16px,2cqi,19px)}
.zeg-home .news--band.is-pair .band-excerpt{-webkit-line-clamp:3;line-clamp:3}
@container (max-width:620px){
  .zeg-home .news--band.is-pair{grid-template-columns:1fr}
  .zeg-home .news--band.is-pair .band{grid-template-columns:var(--band-img,30%) 1fr;gap:clamp(12px,2.4cqi,18px)}
  .zeg-home .news--band.is-pair .b-img{aspect-ratio:16/9}
}
@container (max-width:520px){ .zeg-home .band{grid-template-columns:1fr} }

/* --- 3-4 db --- */
.zeg-home .news--grid{display:grid;gap:10px;grid-template-columns:repeat(4,1fr);--img-ar:4/3}
.zeg-home .ncard{display:grid;gap:9px;align-content:start;padding:var(--inset);background:var(--surface);
       border-radius:calc(var(--r) + var(--inset));text-decoration:none;color:inherit;
       transition:transform .18s ease, box-shadow .18s ease}
.zeg-home .ncard:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(22,34,48,.10)}
.zeg-home .c-img{width:100%;aspect-ratio:var(--img-ar);border-radius:var(--r);object-fit:cover;
       object-position:var(--pos,center);display:block;background:#dde3e8}
.zeg-home .c-img--org{display:grid;place-items:center;background:#e9f1f3}
.zeg-home .c-img--org img{width:clamp(38px,13%,60px);object-fit:contain}
.zeg-home .ncard-title{font-size:clamp(15px,1.7cqi,17px);font-weight:770;line-height:1.28;
             letter-spacing:-.02em;display:-webkit-box;-webkit-box-orient:vertical;
             -webkit-line-clamp:2;line-clamp:2;overflow:hidden}
/* felhívás-csempe: nincs fehér lapja, hogy üres helyként olvasódjon */
.zeg-home .ncard--invite{background:transparent;box-shadow:inset 0 0 0 2px #d5dde3}
.zeg-home .ncard--invite:hover{transform:none;box-shadow:inset 0 0 0 2px var(--blue)}
.zeg-home .c-img--invite{width:100%;aspect-ratio:var(--img-ar);border-radius:var(--r);
               display:grid;place-items:center;background:#e4eaee;color:#93a0a9}
.zeg-home .c-img--invite svg{width:26px;height:26px}
.zeg-home .ncard--invite .ncard-title{color:#6a757e;font-weight:700}
.zeg-home .ncard--invite .date{color:var(--blue);font-weight:750}
@container (max-width:760px){ .zeg-home .news--grid{grid-template-columns:repeat(2,1fr)} }
@container (max-width:440px){ .zeg-home .news--grid{grid-template-columns:1fr;--img-ar:16/9} }

/* --- 5+ db (a demóban nem szerepel, de a CSS kész) --- */
.zeg-home .news--list{display:grid;gap:8px}
.zeg-home .lrow{display:grid;grid-template-columns:56px 1fr auto;gap:14px;align-items:center;
      padding:10px 14px 10px 10px;background:var(--surface);
      border-radius:calc(var(--r) + 10px);text-decoration:none;color:inherit}
.zeg-home .l-img{width:56px;aspect-ratio:1;border-radius:13px;object-fit:cover;display:block}
.zeg-home .lrow-title{font-size:15.5px;font-weight:750;line-height:1.3;letter-spacing:-.02em;
            overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ============================================================================
   5. POI SÁV – vízszintesen húzható
   ========================================================================= */
.zeg-home .rail-wrap{position:relative}
.zeg-home .rail{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(150px,20cqi,200px);
      gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;
      padding-bottom:6px;scrollbar-width:none}
.zeg-home .rail::-webkit-scrollbar{display:none}
.zeg-home .poi{scroll-snap-align:start;display:grid;gap:8px;align-content:start;padding:var(--inset);
     background:var(--surface);border-radius:calc(var(--r) + var(--inset));
     text-decoration:none;color:inherit;transition:transform .18s ease, box-shadow .18s ease}
.zeg-home .poi:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(22,34,48,.10)}
.zeg-home .poi img{width:100%;aspect-ratio:1;border-radius:var(--r);object-fit:cover;
                        object-position:var(--pos,center);display:block;background:#dde3e8}
.zeg-home .poi-mono{
  display:grid;place-items:center;place-content:center;
  width:100%;aspect-ratio:1;border-radius:var(--r);
  background:#dde3e8;
  color:#fff;font-size:clamp(52px,36cqi,78px);font-weight:850;line-height:1;
  letter-spacing:0;text-align:center
}
.zeg-home .poi-name{font-size:14.5px;font-weight:770;letter-spacing:-.015em;line-height:1.25}
.zeg-home .poi-cat{font-size:11px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
/* nyilak: egérrel a kikandikálás nem elég jelzés */
.zeg-home .rail-btn{position:absolute;top:calc(50% - 22px);width:40px;aspect-ratio:1;border:0;
          border-radius:50%;background:#fff;color:var(--ink);cursor:pointer;
          display:grid;place-items:center;box-shadow:0 6px 18px rgba(22,34,48,.18);z-index:2}
.zeg-home .rail-btn[disabled]{opacity:0;pointer-events:none}
.zeg-home .rail-btn--prev{left:-14px}
.zeg-home .rail-btn--next{right:-14px}
.zeg-home .rail-btn svg{width:18px;height:18px}
@container (max-width:700px){ .zeg-home .rail-btn{display:none} }

/* ============================================================================
   6. SZOLGÁLTATÁS-CSEMPÉK
   ========================================================================= */
.zeg-home .services{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(148px,1fr))}
.zeg-home .tile{display:grid;gap:10px;align-content:start;justify-content:start;
      padding:16px 16px 18px;background:var(--surface);
      border-radius:calc(var(--r) + var(--inset));text-decoration:none;color:inherit;
      min-height:0;overflow:visible;isolation:auto;border:0;box-shadow:none;
      transition:transform .18s ease, box-shadow .18s ease}
.zeg-home .tile:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(22,34,48,.10)}
.zeg-home .tile i{display:grid;place-items:center;width:42px;aspect-ratio:1;border-radius:14px;
        background:#e8f1f3;color:var(--blue)}
.zeg-home .tile i svg{width:21px;height:21px}
.zeg-home .tile b{font-size:15px;font-weight:800;letter-spacing:-.015em}
.zeg-home .tile span{font-size:12.5px;font-weight:500;color:var(--muted);line-height:1.35}

@media (prefers-reduced-motion:reduce){ .zeg-home *{transition:none !important;scroll-behavior:auto} }
