/* ==========================================================================
   tabor.css — a Nyári Lézerharc Tábor oldal oldal-specifikus stílusai.
   Csak ezen az oldalon töltődik be (base.css + subpage.css mellé). Itt csak
   azok a szelektorok szerepelnek, amelyek NINCSENEK a base/subpage CSS-ben
   (hero, marquee, news, turnus, programchipek, ár/info, helyszínek).
   ========================================================================== */

/* ---------- Hero ---------- */
.hero{position:relative;background:var(--ink);color:#fff;overflow:hidden;padding:clamp(2.5rem,5vw,4rem) 0}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(110% 80% at 85% -10%,rgba(255,122,24,.28),transparent 55%),radial-gradient(90% 70% at 0% 110%,rgba(226,36,20,.2),transparent 55%);pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:2.6rem;align-items:center}
.hero .eyebrow{color:var(--o-yellow);display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}
.hero .eyebrow::before{content:"";width:34px;height:3px;background:var(--flame-h)}
.hero h1{font-size:clamp(2.5rem,5.4vw,4.6rem);margin-bottom:.4em}
.hero h1 .fl{color:transparent;background:var(--flame);-webkit-background-clip:text;background-clip:text}
.hero p.lead{font-size:1.12rem;line-height:1.6;color:#e0d5c7;max-width:50ch;margin-bottom:1.8rem}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap}
.hero-meta{display:flex;gap:2rem;margin-top:2rem;flex-wrap:wrap}
.hero-meta .m b{display:block;font-family:'Saira Condensed',sans-serif;font-weight:900;font-style:italic;font-size:1.9rem;line-height:1;background:var(--flame);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-meta .m span{font-family:'Saira Condensed',sans-serif;font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;color:#bdb0a2}
.poster{position:relative;justify-self:center}
.poster img{width:min(360px,80vw);height:auto;border:4px solid #fff;box-shadow:0 30px 60px rgba(0,0,0,.5);transform:rotate(2deg);transition:transform .3s}
.poster:hover img{transform:rotate(0)}
.poster .stamp{position:absolute;top:-18px;left:-18px;z-index:2;background:var(--o-red);color:#fff;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;text-align:center;font-family:'Saira Condensed',sans-serif;font-weight:900;font-style:italic;line-height:.85;transform:rotate(-12deg);box-shadow:0 8px 20px rgba(0,0,0,.4)}
.poster .stamp b{font-size:1.7rem;display:block}
.poster .stamp small{font-size:.58rem;letter-spacing:.06em}

/* ---------- Marquee ---------- */
.marquee{background:var(--flame-h);color:#1a0e00;overflow:hidden;padding:.55rem 0;border-block:3px solid var(--ink)}
.marquee .track{display:flex;gap:2.5rem;width:max-content;animation:scrollx 30s linear infinite;font-family:'Saira Condensed',sans-serif;font-weight:900;font-style:italic;text-transform:uppercase;font-size:1.05rem;letter-spacing:.04em}
.marquee .track span{display:inline-flex;align-items:center;gap:2.5rem}
.marquee .track span::after{content:"◆";font-size:.7em}
@keyframes scrollx{to{transform:translateX(-50%)}}

/* ---------- Középre igazított szakasz-fejléc ---------- */
.sec-head.center{text-align:center}
.sec-head.center p{margin-inline:auto}

/* ---------- News 2026 ---------- */
.news{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.news::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 80% at 10% 10%,rgba(255,122,24,.16),transparent 55%)}
.news .sec-head .eyebrow{color:var(--o-yellow)}
.news .sec-head p{color:#bdb0a2}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
.news-card{background:var(--ink-2);border:1px solid rgba(255,255,255,.1);padding:1.6rem;position:relative;overflow:hidden;clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);transition:transform .22s}
.news-card:hover{transform:translateY(-5px)}
.news-card .ic{width:48px;height:48px;background:var(--flame-h);display:grid;place-items:center;clip-path:polygon(0 0,100% 0,calc(100% - 8px) 100%,0 100%);margin-bottom:1rem}
.news-card .ic svg{width:24px;height:24px;stroke:#1a0e00;fill:none;stroke-width:2}
.news-card .new{position:absolute;top:0;right:0;background:var(--o-red);color:#fff;font-family:'Saira Condensed',sans-serif;font-weight:900;font-style:italic;font-size:.66rem;letter-spacing:.08em;padding:.25em .8em;text-transform:uppercase;clip-path:polygon(0 0,100% 0,100% 100%,14px 100%)}
.news-card h3{font-size:1.4rem;margin-bottom:.4rem}
.news-card p{color:#bdb0a2;font-size:.92rem;line-height:1.5}

/* ---------- Turnusok ---------- */
.turnus-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem}
.turnus{position:relative;background:#fff;border:2px solid var(--line);padding:1.3rem 1.2rem;text-align:center;transition:.18s;user-select:none}
.turnus:hover{border-color:var(--o-orange);transform:translateY(-3px)}
.turnus .mon{font-family:'Saira Condensed',sans-serif;font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;color:var(--o-red)}
.turnus .days{font-family:'Saira Condensed',sans-serif;font-weight:900;font-style:italic;font-size:1.55rem;line-height:1;margin-top:.3rem}
.turnus-note{margin-top:1.2rem;color:var(--muted);font-size:.92rem;display:flex;align-items:center;gap:.5rem}
.turnus-note b{color:var(--o-red)}

/* ---------- Programchipek ---------- */
.prog-wrap{background:var(--paper-2)}
.chips{display:flex;flex-wrap:wrap;gap:.7rem}
.chips .c{display:inline-flex;align-items:center;gap:.5em;background:#fff;border:1px solid var(--line);padding:.7em 1.1em;font-family:'Saira Condensed',sans-serif;font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.04em;font-size:.98rem;transition:.18s;clip-path:polygon(0 0,100% 0,calc(100% - 9px) 100%,0 100%)}
.chips .c:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}
.chips .c::before{content:"";width:8px;height:8px;background:var(--flame-h);flex:0 0 auto;transform:rotate(45deg)}

/* ---------- Info / árazás ---------- */
.info{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.info::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 90% 50%,rgba(226,36,20,.2),transparent 60%)}
.info-grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:2.4rem;align-items:start}
.price-box{background:var(--flame-h);color:#1a0e00;padding:2rem;clip-path:polygon(0 0,100% 0,100% 100%,22px 100%)}
.price-box .lbl{font-family:'Saira Condensed',sans-serif;font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.1em;font-size:.86rem}
.price-box .amt{font-family:'Saira Condensed',sans-serif;font-weight:900;font-style:italic;font-size:4.2rem;line-height:.9;margin:.2rem 0}
.price-box .per{font-weight:600;font-size:.95rem}
.price-box .disc{margin-top:1.3rem;padding-top:1.1rem;border-top:2px solid rgba(26,14,0,.2);display:flex;align-items:center;gap:.7rem;font-weight:600}
.price-box .disc .tag{background:#1a0e00;color:var(--o-yellow);font-family:'Saira Condensed',sans-serif;font-weight:900;font-style:italic;padding:.2em .7em;font-size:.9rem;white-space:nowrap}
.incl h3{font-size:1.5rem;color:var(--o-yellow);margin-bottom:1rem;font-style:italic}
.incl ul{list-style:none;display:grid;gap:.7rem;margin-bottom:1.6rem}
.incl ul li{display:flex;gap:.7rem;color:#e0d5c7;font-size:.98rem;line-height:1.45}
.incl ul li svg{width:20px;height:20px;flex:0 0 auto;stroke:var(--o-orange);fill:none;stroke-width:2;margin-top:2px}
.info-rows{display:grid;gap:.1rem;background:rgba(255,255,255,.08);margin-top:.5rem}
.info-rows .r{background:var(--ink-2);padding:1rem 1.2rem;display:flex;gap:1rem;align-items:baseline;flex-wrap:wrap}
.info-rows .r .k{font-family:'Saira Condensed',sans-serif;font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.06em;color:var(--o-yellow);font-size:.82rem;min-width:130px}
.info-rows .r .v{color:#e0d5c7;font-size:.95rem;flex:1}
.info-rows .r .v b{color:#fff}

/* ---------- Helyszínek ---------- */
.venues{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;margin-top:1.5rem}
.venue{position:relative;height:150px;overflow:hidden;color:#fff;display:flex;align-items:flex-end;clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%)}
.venue .photo{position:absolute;inset:0;transition:transform .5s}
.venue::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,12,10,.1) 30%,rgba(16,12,10,.88))}
.venue:hover .photo{transform:scale(1.07)}
.venue .t{position:relative;z-index:2;padding:1.1rem}
.venue .t .d{font-family:'Saira Condensed',sans-serif;font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.1em;font-size:.74rem;color:var(--o-yellow)}
.venue .t h4{font-size:1.4rem}

/* ---------- Jelentkezés szakasz ---------- */
.apply{background:var(--paper)}
.apply-form-wrap{max-width:760px;margin-inline:auto}

/* ---------- Reszponzív ---------- */
@media(max-width:1080px){
  .hero-grid{grid-template-columns:1fr}
  .poster{order:-1}
  .news-grid{grid-template-columns:1fr 1fr}
  .turnus-grid{grid-template-columns:repeat(2,1fr)}
  .info-grid{grid-template-columns:1fr}
}
@media(max-width:860px){
  .news-grid{grid-template-columns:1fr}
  .venues{grid-template-columns:1fr}
}
@media(max-width:560px){
  .turnus-grid{grid-template-columns:1fr}
}
