/* WEN-582 tanfolyamoldal (/workshops/ai-sales-marketing/). Az alap a style.css; a fejléc, a sáv, a kártyák és a rácsok
   a landing.css (lp-*) rendszeréből jönnek, itt csak a tanfolyamoldal saját elemei. Forrás: a jóváhagyott Claude Design
   terv (TfOldal). Döntések: nincs cetli, nincs dőlt display-betű, nincs színátmenetes címsor (a kiemelés egyszínű
   narancs), a program időpontjai egyetlen akcentusszínnel (cián). */

/* ── Szekciók: a site.js szekció-navigációja a main közvetlen section[id] elemeiből épül (data-nav) ── */
.tf-section{padding:0}
.tf-section > .lp-wrap{padding-top:64px;padding-bottom:64px;display:flex;flex-direction:column;gap:28px}
.tf-section .lp-h2{font-size:clamp(30px,4.6vw,44px);line-height:1.04}
.tf-section .lp-text{max-width:860px}
.tf-hl{color:#fb923c}
.tf-kicker{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan)}

/* ── Hero ── */
.tf-hero{padding:0;text-align:left}
.tf-hero-inner{padding-top:84px;padding-bottom:56px;display:flex;flex-wrap:wrap;gap:40px;align-items:center}
.tf-hero-main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:22px;align-items:flex-start}
.tf-hero .eyebrow{margin:0}
.tf-hero .tf-ws-name{margin:0;font-size:20px;font-weight:700;color:#cbd5f0;letter-spacing:0}
.tf-hero h1{margin:0;max-width:none;width:100%;font-size:clamp(38px,5.4vw,62px);line-height:1.02;letter-spacing:-.05em;font-weight:800}
/* Hosszú magyar szó (pl. „minőségbiztosítással.”) keskeny kijelzőn vagy tartalék betűkészlettel se lógjon ki: elválaszt, végső esetben tör. */
.tf-hero h1{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
.tf-hero .lead{margin:0;max-width:700px;font-size:clamp(17px,1.8vw,19px)}
.tf-hero .lead strong{color:var(--text)}
.tf-hero .hero-actions{margin:0;justify-content:flex-start}
.tf-hero .trust{margin:0}
.tf-hero-card{flex:1 1 340px;min-width:0;border-color:rgba(139,92,246,.3);padding:28px;gap:16px}
.tf-fact{display:flex;flex-direction:column;gap:6px}
.tf-fact-k{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
/* a .date-highlight meglévő hook (a regisztrációs teszt is erre néz): itt a kártyán belüli szövegként jelenik meg */
.tf-hero-card .date-highlight{display:block;padding:0;border:0;background:none;border-radius:0;box-shadow:none;font-size:22px;font-weight:800;line-height:1.3}
.tf-fact-time{font-size:17px;color:#cbd5f0}
.tf-hero-card .hero-meta{display:block;font-size:17px;color:var(--text);line-height:1.5;margin:0}
.tf-hero-card .live-phase,.tf-hero-card .live-seats{margin:0}
.tf-divider{height:1px;background:rgba(139,92,246,.18)}
.tf-why-h{font-size:15px;font-weight:800}
.tf-checks{list-style:none;display:flex;flex-direction:column;gap:9px;font-size:15px;color:#cbd5f0}
.tf-checks li{display:flex;gap:10px;line-height:1.45}
.tf-checks svg{flex:none;width:18px;height:18px;margin-top:2px}

/* ── Lényeg: kinek szól, mit viszel haza, ár ── */
.tf-key{align-items:stretch}
.tf-key .lp-card{padding:28px}
.tf-section h2.tf-card-h{font-size:24px;letter-spacing:-.02em;line-height:1.2}
.tf-list{padding-left:20px;color:#cbd5f0;font-size:16px;line-height:1.8}
.tf-price-card{border-color:rgba(251,146,60,.4);gap:12px}
.tf-price-head{font-size:15px;font-weight:800;color:#fdba74}
.tf-price-card .price-box{margin:0;padding:0;background:none;border:0;font-size:15px}
.tf-price-card .price-box .pb-line,.tf-price-card .price-box .pb-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:3px 0;color:var(--muted)}
.tf-price-card .price-box .pb-promo{color:#cbd5f0}
.tf-price-card .price-box .pb-total{border-top:1px solid rgba(255,255,255,.1);margin-top:8px;padding-top:12px}
.tf-price-card .price-box .pb-total .pb-k{color:var(--text);font-weight:700}
.tf-price-card .price-box .pb-final{font-size:clamp(24px,2.6vw,30px);letter-spacing:-.02em;white-space:normal;text-align:right}
.tf-price-card .price-box .pb-gross{font-size:14px}
.tf-price-card .price-box .pb-note{font-size:13px}
.tf-btn-block{width:100%;margin-top:auto}

/* ── Partnerek ── */
.tf-tiles{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr));gap:10px}
.tf-tile{padding:16px 12px;border-radius:16px;font-weight:700;font-size:16px;text-align:center;
  background:color-mix(in srgb,var(--c) 12%,transparent);border:1px solid color-mix(in srgb,var(--c) 50%,transparent);color:var(--t)}
.tf-tile.lp-c-pink,.tf-partner-k.lp-c-pink{--t:#f9a8d4}
.tf-tile.lp-c-violet{--t:#c4b5fd}
.tf-tile.lp-c-cyan,.tf-partner-k.lp-c-cyan{--t:#67e8f9}
.tf-tile.lp-c-amber,.tf-partner-k.lp-c-amber{--t:#fcd34d}
.tf-tile.lp-c-green{--t:#6ee7b7}
.tf-partner-k{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--t,var(--cyan))}
.tf-partner-logo{align-self:flex-start;display:inline-flex}
.tf-partner p a{color:var(--cyan);font-weight:600}

/* ── Program: egy kártyában, az időpontok egyetlen akcentusszínnel ── */
.tf-agenda{list-style:none;padding:8px 28px;gap:0}
.tf-agenda li{display:grid;grid-template-columns:110px 36px minmax(0,1fr) auto;gap:16px;align-items:baseline;padding:16px 0;font-size:16px;line-height:1.5}
.tf-agenda li + li{border-top:1px solid rgba(139,92,246,.15)}
.tf-agenda-t{font-size:15px;font-weight:700;color:var(--cyan);font-variant-numeric:tabular-nums}
.tf-agenda-n{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;border:1px solid rgba(255,255,255,.25);font-size:14px;font-weight:700;align-self:center}
.tf-agenda-n:empty{border:0}
.tf-agenda-who{color:var(--muted)}
.tf-agenda-d{font-size:14px;color:var(--muted);white-space:nowrap}
.tf-agenda li.tf-break{color:var(--muted);font-size:15px;padding:14px 0}

/* ── Mit viszel haza: felső színcsík ── */
.tf-value{border-color:rgba(255,255,255,.10);border-top:4px solid var(--c,rgba(255,255,255,.10));border-radius:22px;padding:24px;gap:8px}
.tf-value-t{font-size:19px;font-weight:700}

/* ── Módszer és felkészülés ── */
.tf-method{padding:28px;gap:10px}
.tf-method-t{font-size:22px;font-weight:700}
.lp-card.tf-method p{color:var(--muted);font-size:16px;line-height:1.65}
.tf-pills{display:flex;flex-wrap:wrap;gap:8px}
.tf-pills span{padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);font-size:13px}
.tf-photos img{height:200px}

/* ── Előadók: vízszintes kártya a meglévő .spk-* jelölésen ── */
.tf-speakers{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:18px}
.tf-speakers > li{display:flex;min-width:0}
.tf-speakers .spk-card{flex:1;min-width:0;display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;align-items:start;padding:22px;border-radius:26px;border:1px solid rgba(139,92,246,.18);
  background:linear-gradient(160deg,rgba(139,92,246,.10),rgba(34,211,238,.04),rgba(255,255,255,.03));box-shadow:0 8px 40px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.06)}
.tf-speakers .spk-photo{width:120px;aspect-ratio:4/5;margin:0;overflow:hidden;border-radius:18px;background:rgba(255,255,255,.04)}
.tf-speakers .spk-photo::before,.tf-speakers .spk-photo::after{display:none}
.tf-speakers .spk-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0}
.tf-speakers .spk-body{padding:0;gap:8px;min-width:0}
.tf-speakers .spk-org{font-size:12px;letter-spacing:.08em}
.tf-speakers .spk-card h3.spk-name{font-size:21px}
.tf-speakers .spk-card p.spk-role{margin:0;color:#fdba74;font-size:14px}
.tf-speakers .spk-card p.spk-bio{color:#cbd5f0;font-size:15px;line-height:1.55;text-align:left}
.tf-speakers .spk-tags{margin:0;gap:6px}
.tf-speakers .spk-tags li{padding:4px 10px;font-size:12px;color:var(--text);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14)}
.tf-speakers .spk-foot{gap:8px;padding-top:0}
.tf-speakers .spk-more{border-top:0}
.tf-speakers .spk-more summary{padding:4px 0;font-size:14px;font-weight:700;color:var(--cyan)}
.tf-speakers .spk-more-body{padding-top:6px}
.tf-speakers .spk-card .spk-more-body p{font-size:14px;color:#cbd5f0;text-align:left}
.tf-speakers .spk-sessions-wrap{display:flex;flex-direction:column;gap:6px}
.tf-speakers .spk-sessions li{grid-template-columns:44px minmax(0,1fr);font-size:13px;color:var(--muted);line-height:1.5}
.tf-speakers .spk-link{min-height:36px;font-size:14px;font-weight:700;color:var(--cyan)}
@media (max-width:480px){
  .tf-speakers .spk-card{grid-template-columns:84px minmax(0,1fr);gap:14px;padding:18px}
  .tf-speakers .spk-photo{width:84px}
}

/* ── Gyors infók ── */
/* az .info-bar meglévő hook (az élő katalógus tesztje erre néz): itt kártyarács */
.tf-section .lp-grid.info-bar{display:grid;align-items:stretch;justify-content:normal;margin:0;padding:0;background:none;border:0;border-radius:0;overflow:visible}
.tf-quick-line{font-size:18px;color:#cbd5f0;line-height:1.5}
.tf-quick{padding:22px;gap:6px;border-radius:22px}
.tf-quick-k{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.tf-quick-v{font-size:18px;font-weight:700}

/* ── Helyszín: a térkép a meglévő .venue-map (iframe); a kártyacímkék a meglévő .tag hook-on ── */
.tf-venue{align-items:stretch}
.tf-venue .lp-card{padding:26px;gap:12px}
.tf-venue .venue-map{aspect-ratio:auto;min-height:240px;height:260px;border-radius:18px}
.tf-venue .tag{display:block;padding:0;border:0;background:none;border-radius:0;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);font-weight:400;margin:0}
.tf-venue h3{font-size:20px;font-weight:700;margin:0}
.tf-venue .venue-list{padding-left:18px;color:#cbd5f0;font-size:15px;line-height:1.75}
.tf-venue .lp-card p{text-align:left}
.tf-venue-ceu{font-weight:700}
.tf-venue .venue-map-links.tf-venue-btns{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.tf-venue .venue-map-links.tf-venue-btns a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(139,92,246,.4);color:var(--text);font-weight:700;font-size:14px;max-width:100%}

/* ── GYIK: a meglévő .faq-item jelölés, kártyásítva ── */
.tf-faq-wrap{max-width:900px}
.tf-section .faq{max-width:none;gap:10px}
.tf-section .faq-item{border:1px solid rgba(139,92,246,.18);border-radius:18px;
  background:linear-gradient(160deg,rgba(139,92,246,.10),rgba(34,211,238,.04),rgba(255,255,255,.03))}
.tf-section .faq-item summary{font-size:18px;font-weight:700}

/* ── Nincs rejtett költség + kapcsolat ── */
.tf-section > .lp-wrap.tf-contact{flex-direction:row;flex-wrap:wrap;gap:18px}
.tf-contact > .lp-card{min-width:0;padding:28px}
.tf-contact-value{flex:999 1 520px;border-color:rgba(251,146,60,.35)}
.lp-card.tf-contact-value p{font-size:16px;line-height:1.65}
.tf-contact-value .btn{align-self:flex-start}
.tf-contact-title{font-size:20px;font-weight:800}
.tf-contact-card{flex:1 1 320px;gap:10px}
.tf-contact-q{font-size:16px;font-weight:700;line-height:1.45}
.tf-contact-mail{font-size:18px;font-weight:800;color:var(--cyan);overflow-wrap:anywhere}

/* ── Közösség: a meglévő hírlevél-űrlap (handleSubscribe) ── */
.tf-section > .lp-wrap.tf-community{flex-direction:row;flex-wrap:wrap;gap:32px;align-items:center}
.tf-community-text{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:12px}
.tf-community-text .lp-h2{font-size:clamp(28px,4vw,40px)}
.tf-social{display:flex;gap:16px;font-size:15px}
.tf-community-box{flex:1 1 420px;min-width:0;border-color:rgba(139,92,246,.25)}
.tf-community-box .community-form{max-width:none}
.tf-community-box .community-grid{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr))}
.tf-community-box .community-submit{width:auto}

/* ── Lábléc ── */
.tf-footer{padding:0}
.tf-footer-inner{padding-top:40px;padding-bottom:40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:24px;font-size:14px;color:var(--muted)}
.tf-footer-brand{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.tf-footer-logo{display:inline-flex;align-items:center;gap:10px}
.tf-footer-logo .lp-brand-icon{width:32px;height:32px}
.tf-footer-logo .lp-brand-wordmark{display:block;height:13px;width:auto}
.tf-footer .footer-column{min-width:0;gap:4px}
.tf-footer .footer-column h4{color:#cbd5f0;font-size:12px;letter-spacing:.1em;font-weight:700;margin-bottom:4px}
.tf-footer .footer-column a{color:var(--muted);line-height:1.7}
.tf-footer-legal{display:flex;flex-direction:column;gap:6px;line-height:1.5}

/* ── Keskeny kijelző ── */
@media (max-width:640px){
  .tf-hero-inner{padding-top:48px;padding-bottom:40px;gap:28px}
  .tf-section > .lp-wrap{padding-top:48px;padding-bottom:48px}
  .tf-hero-card,.tf-key .lp-card,.tf-method,.tf-contact > .lp-card,.tf-venue .lp-card{padding:22px}
  .tf-agenda{padding:4px 18px}
  .tf-agenda li{grid-template-columns:30px minmax(0,1fr) auto;gap:6px 10px}
  .tf-agenda-n{grid-column:1;grid-row:1;width:26px;height:26px;font-size:13px}
  .tf-agenda-t{grid-column:2;grid-row:1;align-self:center}
  .tf-agenda-d{grid-column:3;grid-row:1;align-self:center}
  .tf-agenda-x{grid-column:1 / -1;grid-row:2}
  .tf-hero .tf-ws-name{font-size:18px}
}
@media (prefers-reduced-motion:reduce){
  .tf-speakers .spk-card,.tf-speakers .spk-photo img{transition:none}
  /* a site.js szekció-navigációja (style.css) görgetéskor csúsztatja a címkét: itt mozgás nélkül vált */
  .section-rail .rail-label,.section-rail .rail-dot{transition:none}
}
