/* =====================================================
   AMNESIA – "polish" réteg (utolsóként töltődik be)
   Olvashatóság: nagyobb, tisztább betűk, erősebb kontraszt,
   egységes ritmus, díszek a szekciók között.
   ===================================================== */

/* ---------- alap tipográfia ---------- */
body{font-size:17.5px;line-height:1.7}
p{color:#fff2e4}
.lead{font-size:clamp(17px,1.55vw,19.5px);line-height:1.75;max-width:700px;color:#fff2e4;font-weight:500;text-shadow:0 2px 14px rgba(13,4,24,.55)}
.lead b{color:#ffd34d}
.page-hero .lead{font-size:clamp(16px,1.5vw,19px);color:#fff;text-shadow:0 2px 0 #12051f,0 0 18px rgba(13,4,24,.9)}
section{padding-top:88px;padding-bottom:88px}
.wrap{max-width:1200px}

/* ---------- címek ---------- */
.h2{margin:14px 0 22px}
.center .h2::after{content:"";display:block;width:clamp(90px,12vw,140px);height:6px;margin:20px auto 0;border-radius:6px;
  background:linear-gradient(90deg,#2de2e6,#ffd34d 50%,#ff2e88);box-shadow:0 0 18px rgba(255,46,136,.55),0 3px 0 #12051f}
.kicker{font-size:15.5px;letter-spacing:1.6px}

/* ---------- apró címkék: legalább 11–12 px, kevesebb ritkítás ---------- */
.field label{font-size:12px;letter-spacing:1.4px}
.cd small,.pp-unit small,.st-stats small,.pf-stats small,.hire-steps small,.tk-howto small,.ly-bottom small,.cd-meta small,.ib-head small,.tkp-kick,.mc-head small,.hr-go,.sj-t small{font-size:11.5px!important;letter-spacing:1.2px!important}
.st-stats small,.pf-stats small{line-height:1.35}
.tk-howto small{opacity:1;color:#e8ddff;line-height:1.5}
.countdown .lbl{font-size:12px!important;letter-spacing:1.6px!important}

/* ---------- gombok ---------- */
.btn{font-size:13px;letter-spacing:1.6px;padding:15px 26px}
.btn.sm{font-size:11.5px;letter-spacing:1.2px}

/* ---------- menü, lábléc ---------- */
.tb-link{font-size:15.5px}
.sf-col a,.sf-col span{font-size:15.5px;line-height:1.5}
.sf-col h4{font-size:17px;letter-spacing:1px}
.sf-brand p{font-size:15.5px;color:#f1e6ff}
.sf-bottom{font-size:13.5px;color:#d9cdef}

/* ---------- bulik flyerek: jól olvasható leírás minden háttéren ---------- */
.flyer p{font-size:15.5px;line-height:1.55;font-weight:600}
.flyer.f3 p,.flyer.f5 p,.flyer.f6 p{background:rgba(13,4,24,.78);color:#fff;padding:10px 12px;border-radius:14px;border:2px solid rgba(255,255,255,.12);backdrop-filter:blur(2px)}
.flyer .day{font-size:13px;letter-spacing:2px}
.flyer .meta span{font-size:14px}

/* ---------- házirend kártyák ---------- */
.rule b{font-size:19px;letter-spacing:.6px}
.rule p{font-size:15.5px;line-height:1.6;color:#efe4ff;opacity:1}
.rule .ic{width:56px;height:56px;font-size:28px}

/* ---------- GYIK ---------- */
.faq summary{font-size:clamp(15px,1.4vw,17px);line-height:1.4;padding-top:20px;padding-bottom:20px}
.faq details p{font-size:16px;line-height:1.7;color:#f1e6ff}
.faq details[open] summary{color:#ffd34d}

/* ---------- elérhetőség kártyák ---------- */
.contact small,.contact .l{font-size:12.5px!important;letter-spacing:1.4px}
.contact b,.contact a b{font-size:clamp(17px,1.6vw,21px)}

/* ---------- itallap ---------- */
.drink b{font-size:17px}
.drink small{font-size:14px;color:#e2d6f7;opacity:1}
.drink .p{font-size:20px}

/* ---------- jegyek / profil / rólunk ---------- */
.tk-howto b{font-size:17px}
.ticket .tk-r p{font-size:14px;opacity:.95}
.st-card p,.st-values p,.hr-d,.pf-tl small,.ib-body p{font-size:15px;line-height:1.65}
.hire-perks small{font-size:14px;color:#efe4ff}

/* ---------- díszek: neon elválasztó a szekciók között ---------- */
.sec-div{position:relative;height:0;z-index:5;pointer-events:none}
.sec-div::before{content:"";position:absolute;left:50%;top:0;width:min(640px,82%);height:2px;transform:translate(-50%,-1px);
  background:linear-gradient(90deg,transparent,rgba(45,226,230,.9) 30%,transparent 44%,transparent 56%,rgba(255,46,136,.9) 70%,transparent);
  filter:drop-shadow(0 0 6px rgba(255,46,136,.6))}
.sec-div::after{content:"✦";position:absolute;left:50%;top:0;transform:translate(-50%,-52%);font-size:26px;line-height:1;color:#ffd34d;
  text-shadow:0 0 14px #ff2e88,0 0 4px #fff;animation:divSpin 9s linear infinite}
@keyframes divSpin{to{transform:translate(-50%,-52%) rotate(360deg)}}


/* ---------- hozzáférhetőség ---------- */
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ffd34d;outline-offset:3px;border-radius:8px}
::selection{background:#ff2e88;color:#fff}

/* ---------- mobil ---------- */
@media (max-width:620px){
  body{font-size:16.5px}
  section{padding-top:64px;padding-bottom:64px}
  .lead{font-size:16.5px}
  .flyer p{font-size:15px}
  .sec-div::after{font-size:20px}
}
@media (prefers-reduced-motion:reduce){ .sec-div::after{animation:none} }

/* ---------- zenekérés ---------- */
.req-sec{background:linear-gradient(180deg,#170828,#120520)}
.req-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:40px}
.req-box{padding:22px;border-radius:26px;background:#1f0a33;border:3px solid #12051f;box-shadow:7px 8px 0 #12051f}
.req-box h3{font-family:"Luckiest Guy","Bungee",sans-serif;font-weight:400;font-size:24px;text-transform:uppercase;color:#fff;text-shadow:2px 2px 0 #12051f;margin-bottom:12px}
.req-box input{width:100%;padding:12px 14px;border-radius:14px;border:2px solid rgba(255,255,255,.15);background:#0d0418;color:#fff;font:inherit;margin-bottom:12px}
.req-lib,.req-list{list-style:none;margin:0;padding:0;max-height:460px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}
.req-lib li,.req-list li{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.04);border:2px solid rgba(255,255,255,.08)}
.req-list li.queued{border-color:rgba(61,255,138,.5);background:rgba(61,255,138,.08)}
.rq-ic{font-size:22px}
.rq-rank{flex-shrink:0;width:38px;text-align:center;font-family:"Luckiest Guy",sans-serif;font-size:20px;color:#ffd34d;text-shadow:2px 2px 0 #12051f}
.rq-t{flex:1;min-width:0;display:flex;flex-direction:column}
.rq-t b{color:#fff;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rq-t small{font-size:13.5px;color:#d9cdef;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rq-vote{flex-shrink:0;padding:8px 12px;border-radius:999px;font:inherit;font-weight:800;font-size:14px;cursor:pointer;color:#fff;background:linear-gradient(135deg,#ff2e88,#ff8a3d);border:2px solid #12051f;box-shadow:2px 3px 0 #12051f}
.rq-vote.on,.rq-vote:disabled{background:#3a1450;cursor:default;opacity:.85}
.rq-votes{font-size:20px}
.req-empty{justify-content:center;text-align:center;color:#d9cdef;font-weight:600}
@media (max-width:860px){ .req-grid{grid-template-columns:1fr} }

/* ---------- meghívó kártya ---------- */
.invite-sec{background:linear-gradient(180deg,#120520,#1a0630)}
.inv-card{display:grid;grid-template-columns:1.4fr 1fr;gap:24px;align-items:center;max-width:900px;margin:36px auto 0;padding:26px 28px;border-radius:28px;
  background:linear-gradient(135deg,rgba(61,255,138,.14),rgba(45,226,230,.1)),#1f0a33;border:3px solid #12051f;box-shadow:8px 10px 0 #12051f,0 0 0 3px rgba(61,255,138,.45)}
.inv-l small{font-family:"Orbitron",sans-serif;font-size:11.5px;font-weight:900;letter-spacing:1.4px;color:#8ff6f8}
.inv-l b{display:block;font-family:"Luckiest Guy","Bungee",sans-serif;font-weight:400;font-size:clamp(34px,5vw,48px);letter-spacing:2px;color:#ffd34d;text-shadow:3px 3px 0 #12051f;margin:4px 0 10px}
.inv-link{padding:10px 12px;border-radius:12px;background:#0d0418;border:2px solid rgba(255,255,255,.12)}
.inv-link code{color:#8ff6f8;font-size:14px;overflow-wrap:anywhere}
.inv-btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.inv-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.inv-stats div{padding:14px 8px;border-radius:18px;text-align:center;background:#12051f;border:2px solid rgba(255,255,255,.1)}
.inv-stats b{display:block;font-family:"Luckiest Guy",sans-serif;font-size:32px;color:#3dff8a;text-shadow:2px 2px 0 #000}
.inv-stats small{font-family:"Orbitron",sans-serif;font-size:10.5px;font-weight:900;letter-spacing:1px;color:#e8ddff}
@media (max-width:760px){ .inv-card{grid-template-columns:1fr} }
