/* Sales homepage and business page sections (Review 1.3.0).
   Ported from the 2026-11 mockups; class names (.ail-*) kept as in the mockups.
   See also: docs/superpowers/specs/2026-11-02-homepage-sales-design.md */
.ail-cta-row { display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:34px }
.ail-cta-row .ail-cta-note { font-size:13px;color:var(--muted);max-width:420px }
.ail-navy { background:var(--navy);color:white;position:relative;overflow:hidden }
.ail-navy .eyebrow { color:#9eafff }
.ail-navy .section-heading p { color:#bdbed2 }
.ail-navy .ail-cta-row .ail-cta-note { color:#bdbed2 }
.ail-zolty { color:var(--gold) }
.ail-efekt:before { content:'';position:absolute;width:760px;height:760px;background:radial-gradient(ellipse,#21329f55 0,transparent 68%);left:-260px;top:-260px;pointer-events:none }
.ail-efekt .wrap { position:relative }
.ail-efekt h2 { max-width:640px }
.ail-wyniki { display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:8px }
.ail-wynik { background:linear-gradient(180deg,#ffffff10,#ffffff05);border:1px solid #ffffff1f;border-radius:12px;padding:26px 24px 28px;display:flex;flex-direction:column;gap:10px;transition:transform .2s,border-color .2s }
.ail-wynik:hover { transform:translateY(-3px);border-color:#ffce2666 }
.ail-wynik .ail-nr { font:600 13px/1 Space,Arial,sans-serif;color:var(--gold);letter-spacing:.04em }
.ail-wynik h3 { font-size:22px;color:white }
.ail-wynik p { font-size:14px;line-height:1.6;color:#c6c8dc }
.ail-wynik.ail-wynik-szef { border-color:#ffce2655;background:linear-gradient(180deg,#ffce2614,#ffffff05) }
.ail-srodek { display:grid;grid-template-columns:.9fr 1.35fr;gap:48px;align-items:center;margin-top:72px }
.ail-srodek h3 { font-size:30px;color:white;margin-bottom:16px }
.ail-srodek p { color:#c6c8dc;font-size:15px;line-height:1.7 }
.ail-srodek figure,.ail-przyklad figure { margin:0 }
.ail-srodek img { border-radius:12px;border:1px solid #ffffff1f;box-shadow:0 30px 80px #00000066 }
.ail-pytania { list-style:none;padding:0;margin:22px 0 0;display:grid;gap:9px;font-size:14px;color:#dfe1f0 }
.ail-pytania li { display:flex;gap:10px }
.ail-pytania li:before { content:'→';color:var(--gold);font-weight:700 }
.ail-przyklad { margin-top:56px;background:var(--paper);border-radius:14px;padding:30px 30px 26px;color:var(--ink) }
.ail-przyklad img { margin:0 auto }
.ail-przyklad figcaption { font-size:13px;color:var(--muted);margin-top:14px;text-align:center }
.ail-przyklad .ail-etykieta { display:block;text-align:center;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);margin-bottom:14px }
.ail-kroki { list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:krok;position:relative }
.ail-kroki:before { content:'';position:absolute;left:24px;right:24px;top:23px;height:2px;background:var(--line) }
.ail-kroki:after { content:'';position:absolute;left:24px;top:23px;height:2px;width:calc((100% - 48px) * var(--ail-postep,1));background:linear-gradient(90deg,var(--blue),var(--gold));transition:width .6s ease }
.ail-krok { position:relative;padding-right:28px }
.ail-krok .ail-kolko { position:relative;z-index:1;width:48px;height:48px;border-radius:50%;background:var(--blue);color:white;display:grid;place-items:center;font:700 18px/1 Space,Arial,sans-serif;box-shadow:0 0 0 6px white }
.ail-krok:last-child .ail-kolko { background:var(--gold);color:var(--navy) }
.ail-js .ail-krok .ail-kolko { background:#e6e8f0;color:#9799ab;transition:background .45s,color .45s,transform .45s }
.ail-js .ail-krok .ail-kiedy,.ail-js .ail-krok h3,.ail-js .ail-krok p { opacity:.35;transition:opacity .5s }
.ail-js .ail-krok.ail-zapalony .ail-kolko { background:var(--blue);color:white;transform:scale(1.08) }
.ail-js .ail-krok.ail-zapalony:last-child .ail-kolko { background:var(--gold);color:var(--navy) }
.ail-js .ail-krok.ail-zapalony .ail-kiedy,.ail-js .ail-krok.ail-zapalony h3,.ail-js .ail-krok.ail-zapalony p { opacity:1 }
.ail-krok .ail-kiedy { display:block;margin-top:22px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--blue) }
.ail-krok h3 { font-size:21px;margin:8px 0 10px }
.ail-krok p { font-size:14px;color:var(--muted);line-height:1.6 }
.ail-produkty { display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:20px;align-items:stretch }
.ail-produkty .offer-card { display:flex;flex-direction:column }
.ail-produkty .offer-card .btn { margin-top:auto }
.ail-produkty .offer-card.primary .offer-list { grid-template-columns:1fr;gap:10px }
/* One published package: reuse the tablet layout (full width, two-column list), keep the button compact.
   Must stay above the 650px block, whose .primary list rule has the same specificity. */
.ail-produkty .offer-card:only-child { grid-column:1 / -1 }
.ail-produkty .offer-card:only-child .offer-list { grid-template-columns:1fr 1fr }
@media(min-width:651px) { .ail-produkty .offer-card:only-child .btn { align-self:flex-start;width:auto;min-width:320px } }
/* From 821px the lone card is a buy box: price, price note and button on the left, package contents on the
   right. The last 1fr row absorbs the list height (spanning items grow flexible tracks first), so the left
   column stays compact with or without the price note or a "dla kogo" paragraph. Specificity 5 beats the
   1100px .primary list rule below. */
@media(min-width:821px) {
  .ail-produkty .offer-card.primary:only-child { display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-rows:repeat(8,auto) 1fr;column-gap:72px;row-gap:0 }
  .ail-produkty .offer-card.primary:only-child > * { grid-column:1 }
  .ail-produkty .offer-card.primary:only-child > .price-caption { grid-column:2;grid-row:1;margin:0;font-size:16px;font-weight:600;color:var(--ink) }
  .ail-produkty .offer-card.primary:only-child > .offer-list { grid-column:2;grid-row:2 / -1;grid-template-columns:1fr;font-size:14px;margin-top:0 }
  .ail-produkty .offer-card.primary:only-child > .btn { width:100%;min-width:0;margin-top:24px }
  .ail-produkty .offer-card.primary:only-child:before { content:'';grid-column:2;grid-row:1 / -1;justify-self:start;width:1px;margin-left:-36px;background:var(--line) }
}
.ail-zapisy .ail-zapisy-gora p a { color:var(--blue);font-weight:600;border-bottom:1px solid currentColor }
.ail-produkty .offer-list { grid-template-columns:1fr;font-size:13px }
.ail-cena-opis { font-size:12px;color:var(--muted);margin-top:8px }
/* Plain paragraph in the white package card, e.g. where to enter a discount code (1.5.0). */
.offer-card.primary .ail-dla-kogo { font-size:13px;color:var(--muted);margin-top:14px;line-height:1.55 }
.price .ail-cena-stara { display:block;margin-bottom:8px;font-size:20px;font-weight:500;letter-spacing:0;color:var(--muted) }
/* Learning Space purchase form (1.5.0): a #kup-kurs page rendered under the publisher box in "Zapisy", full width,
   target of every buy button. scroll-margin-top adds to html scroll-padding-top (screen.css) so the sticky menu never
   covers it. The form scrolls inside its own frame; 800px comes from the Learning Space embed code. */
.ail-kup { scroll-margin-top:24px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#f5f6f9 }
.ail-kup iframe { display:block;width:100%;height:800px;border:0 }
.ail-cena-nota { display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin-top:16px;padding:10px 12px;border-radius:8px;background:#fff6d6;color:#5a4500;font-size:12px;line-height:1.4 }
.ail-cena-nota strong { font-weight:700 }
/* A Ghost callout keeps its <br>; inside the flex column it would be an empty item and a visible gap. */
.ail-cena-nota br { display:none }
.offer-card.ail-ciemna { background:#ffffff08 }
.offer-card.ail-ciemna .overline { color:#9eafff }
.offer-card.ail-ciemna .price { color:white }
.offer-card.ail-ciemna .ail-cena-opis,.offer-card.ail-ciemna .fine { color:#9d9eb9 }
.offer-card.ail-ciemna .ail-dla-kogo { font-size:14px;color:#c6c8dc;margin-top:16px;line-height:1.6 }
.offer-card.ail-ciemna .offer-list { color:#d6d8ea }
.offer-card.ail-ciemna .ail-cena-nota { background:#ffce2614;color:#ffe8a3 }
.offer-card.ail-ciemna .btn { background:transparent;border-color:#ffffff40 }
.offer-card.ail-ciemna .btn:hover { background:#ffffff10 }
.offer-card.ail-lider { border-color:#ffce2688;box-shadow:inset 0 0 0 1px #ffce2633 }
.offer-card.ail-lider .btn { background:var(--gold);border-color:var(--gold);color:var(--navy) }
.offer-card.ail-lider .btn:hover { background:#ffe16d }
.offer-card.ail-lider .offer-list li:before { color:var(--gold) }
.ail-miejsca { display:inline-block;margin-left:8px;padding:3px 8px;border-radius:999px;background:#ffce2622;color:var(--gold);font-size:11px;font-weight:600;vertical-align:middle;letter-spacing:.02em }
.ail-price-na-zapytanie { font:700 30px/1.1 Space,Arial,sans-serif;letter-spacing:-.03em;color:white }
.ail-do-uzupelnienia { display:none }
body.ail-podglad .ail-do-uzupelnienia { display:inline-block;margin-top:10px;padding:3px 8px;border:1px dashed var(--gold);border-radius:6px;color:var(--gold);font-size:11px;font-weight:600 }
.ail-firmy { margin-top:20px;border:1px solid #ffffff25;border-radius:10px;padding:34px;background:linear-gradient(135deg,#2667ff14,#ffffff05) }
.ail-firmy-gora { display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px }
.ail-firmy-gora h3 { font-size:30px;color:white;margin-bottom:10px }
.ail-firmy-gora p { font-size:14px;color:#bdbed2;max-width:560px }
.ail-firmy-gora .btn { flex:none;background:transparent;border-color:#ffffff40 }
.ail-firmy-gora .btn:hover { background:#ffffff10 }
.ail-firmy-siatka { display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:20px }
.ail-firmy-kol { background:#ffffff08;border:1px solid #ffffff1a;border-radius:10px;padding:22px }
.ail-firmy-kol h4 { font:700 15px/1.3 Space,Arial,sans-serif;color:white;margin-bottom:14px;letter-spacing:-.01em }
.ail-tabela { width:100%;border-collapse:collapse;font-size:13px;color:#d6d8ea }
.ail-tabela td { padding:7px 0;border-bottom:1px solid #ffffff14 }
.ail-tabela td:last-child { text-align:right;font-weight:600;color:white;font-variant-numeric:tabular-nums }
.ail-tabela tr:last-child td { border-bottom:0 }
.ail-pakiet-gora { display:flex;justify-content:space-between;gap:12px;align-items:baseline }
.ail-pakiet-gora strong { color:white;font-size:14px }
.ail-pakiet-gora span { color:var(--gold);font-weight:700;font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums }
.ail-firmy-mala { font-size:11px;color:#9d9eb9;margin-top:12px;line-height:1.5 }
.ail-firmy-dol { display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 30px;margin-top:24px;padding-top:20px;border-top:1px solid #ffffff1a }
.ail-firmy-dol ul { list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:12px;color:#d6d8ea }
.ail-firmy-dol li { display:flex;gap:8px }
.ail-firmy-dol li:before { content:'✓';color:var(--blue) }
.ail-firmy-dol .fine { font-size:11px;color:#9d9eb9 }
.ail-firmy-dol .fine a { color:white;border-bottom:1px solid #ffffff55 }
/* "Zapisy" (1.5.2): heading on one line over the full width. From 1101px the callout from the #zapisy page and the
   publisher box share one row with the same top and height (rows stretch, dense flow fills the cell next to the callout),
   "Masz pytania" below. Grid margins do not collapse, so the row gap is 0 and the items keep their own top margins. */
.ail-zapisy .ail-zapisy-gora { margin-bottom:34px }
.ail-zapisy .ail-zapisy-gora > p:not(.ail-wydawca) { color:var(--muted);font-size:15px;margin-top:14px;max-width:520px }
@media(min-width:1101px) {
  .ail-zapisy .ail-zapisy-gora { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-flow:row dense;gap:0 40px;align-items:stretch }
  .ail-zapisy .ail-zapisy-gora > * { grid-column:1 / -1 }
  .ail-zapisy .ail-zapisy-gora > div, .ail-zapisy .ail-zapisy-gora > p:not(.ail-zapisy-start):not(.ail-wydawca) { grid-column:1 }
  .ail-zapisy .ail-zapisy-gora > div { display:flex;align-items:center;margin:18px 0 0 }
  .ail-zapisy .ail-zapisy-gora > p.ail-wydawca { grid-column:2 }
}
.ail-po-zakupie { list-style:none;padding:0;margin:0 0 26px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;counter-reset:pz }
.ail-po-zakupie li { counter-increment:pz;display:flex;gap:12px;align-items:flex-start;background:white;border:1px solid var(--line);border-radius:12px;padding:16px 18px;font-size:14px;line-height:1.5 }
.ail-po-zakupie li:before { content:counter(pz);flex:none;width:28px;height:28px;border-radius:50%;background:var(--blue);color:white;display:grid;place-items:center;font:700 13px/1 Space,Arial,sans-serif }
.ail-formularz { background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 60px #14142b14;overflow:hidden }
.ail-formularz iframe { display:block;width:100%;height:1520px;border:0 }
.ail-formularz-pod { display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;margin-top:14px;font-size:13px;color:var(--muted) }
.ail-formularz-pod a { color:var(--blue);font-weight:600 }
.ail-pasek { position:fixed;left:12px;right:12px;bottom:12px;z-index:45;display:none;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 16px;border-radius:12px;background:var(--navy);color:white;box-shadow:0 12px 30px #05021d55;transform:translateY(140%);transition:transform .25s }
.ail-pasek.ail-widoczny { transform:none }
.ail-pasek .ail-pasek-tekst { font-size:12px;line-height:1.35;color:#bdbed2 }
.ail-pasek .ail-pasek-tekst strong { display:block;color:white;font-size:14px }
.ail-pasek .ail-pasek-tekst s { color:#9d9eb9;font-weight:500;margin-right:4px }
.ail-pasek .btn { min-height:42px;padding:9px 16px;font-size:13px;gap:10px }
@media(max-width:1100px) {
  .ail-wyniki { grid-template-columns:1fr 1fr }
  .ail-srodek { grid-template-columns:1fr;gap:30px }
  .ail-produkty { grid-template-columns:1fr 1fr }
  .ail-produkty .offer-card.primary { grid-column:1 / -1 }
  .ail-produkty .offer-card.primary .offer-list { grid-template-columns:1fr 1fr }
  .ail-firmy-siatka { grid-template-columns:1fr 1fr }
  .ail-firmy-siatka .ail-firmy-pakiety { grid-column:1 / -1;order:3 }
  .ail-formularz iframe { height:1560px }
}
@media(max-width:820px) {
  .ail-kup iframe { height:min(800px,80vh) }
  .ail-kroki { grid-template-columns:1fr 1fr;row-gap:36px }
  .ail-kroki:before,.ail-kroki:after { display:none }
  .ail-po-zakupie { grid-template-columns:1fr }
  .ail-firmy-gora { flex-direction:column;align-items:flex-start }
  .ail-formularz iframe { height:2150px }
  .ail-pasek { display:flex }
}
@media(max-width:650px) {
  .ail-wyniki { grid-template-columns:1fr }
  .ail-produkty { grid-template-columns:1fr }
  .ail-produkty .offer-card.primary .offer-list { grid-template-columns:1fr }
  .ail-firmy { padding:24px }
  .ail-firmy-siatka { grid-template-columns:1fr }
  .ail-kroki { grid-template-columns:1fr }
  .ail-krok { padding-right:0 }
  .ail-przyklad { padding:18px 14px }
  .ail-formularz iframe { height:2250px }
}
.ail-firmy-tekst { font-size:14px;color:#d6d8ea;line-height:1.6 }
.ail-firmy-lista { list-style:none;padding:0;margin:0;display:grid;gap:10px;font-size:14px;color:#d6d8ea }
.ail-firmy-lista li { display:flex;gap:10px }
.ail-firmy-lista li:before { content:'→';color:var(--gold);font-weight:700 }
.ail-program-gora { display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:44px }
.ail-program-gora > div { max-width:640px }
.ail-program-gora p { color:var(--muted);font-size:15px;margin-top:16px }
.ail-program { display:grid;grid-template-columns:1.6fr 1fr;gap:56px;align-items:start }
.ail-plan-naglowek,.ail-sciezki-naglowek { font:700 13px/1.3 Space,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-bottom:22px }
.ail-plan { list-style:none;padding:0;margin:0;position:relative }
.ail-plan:before { content:'';position:absolute;left:17px;top:8px;bottom:8px;width:2px;background:linear-gradient(180deg,var(--blue),var(--gold)) }
.ail-plan-krok { position:relative;display:grid;grid-template-columns:36px 1fr;gap:20px;padding-bottom:30px }
.ail-plan-krok:last-child { padding-bottom:0 }
.ail-plan-kropka { position:relative;z-index:1;width:36px;height:36px;border-radius:50%;background:white;border:2px solid var(--blue);color:var(--blue);display:grid;place-items:center;font:700 13px/1 Space,Arial,sans-serif;box-shadow:0 0 0 5px var(--paper) }
.ail-plan-krok.ail-rozszerzenie .ail-plan-kropka { border-style:dashed }
.ail-plan-krok.ail-zamkniecie .ail-plan-kropka { background:var(--gold);border-color:var(--gold);color:var(--navy) }
.ail-plan-etykieta { display:block;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin:2px 0 6px }
.ail-plan-etykieta em { font-style:normal;color:var(--muted);letter-spacing:.08em }
.ail-plan-krok h3 { font-size:21px;margin-bottom:8px }
.ail-plan-krok p { font-size:15px;line-height:1.65;color:var(--ink) }
.ail-plan-krok p + p { margin-top:8px }
.ail-plan-krok .ail-plan-tematy { font-size:13px;color:var(--muted) }
.ail-plan-krok .ail-plan-wynik { font-size:14px }
.ail-plan-krok .ail-plan-zywo { font-size:13px;color:var(--muted) }
.ail-plan-krok .ail-plan-zywo strong { display:inline-block;padding:1px 7px;margin-right:6px;border-radius:4px;background:#2667ff14;color:var(--blue);font-size:11px;letter-spacing:.04em;text-transform:uppercase }
.ail-sciezki { position:sticky;top:110px }
.ail-sciezki-opis { font-size:14px;color:var(--muted);margin:-12px 0 18px }
.ail-sciezka { background:white;border:1px solid var(--line);border-radius:12px;padding:20px 22px;box-shadow:0 10px 30px #14142b0d }
.ail-sciezka + .ail-sciezka { margin-top:14px }
.ail-sciezka .ail-plan-etykieta { color:var(--blue) }
.ail-sciezka h3 { font-size:18px;margin-bottom:8px }
.ail-sciezka p { font-size:13px;line-height:1.6;color:var(--muted) }
.ail-sciezka p + p { margin-top:8px }
.ail-sciezka p strong { color:var(--ink) }
@media(max-width:1100px) {
  .ail-program { grid-template-columns:1fr;gap:44px }
  .ail-sciezki { position:static }
  .ail-program-gora { flex-direction:column;align-items:flex-start }
}
.ail-talia-blok { display:grid;grid-template-columns:.8fr 1.4fr;gap:56px;align-items:center;margin-top:72px }
.ail-talia-lewa h3 { font-size:30px;color:white;margin-bottom:14px }
.ail-talia-lewa > p { color:#c6c8dc;font-size:15px;line-height:1.7 }
.ail-talia-spis { list-style:none;padding:0;margin:20px 0 0;display:grid;gap:2px }
.ail-talia-spis button { all:unset;box-sizing:border-box;display:block;width:100%;cursor:pointer;padding:7px 12px;border-radius:8px;border-left:2px solid transparent;color:#8f91ad;font-size:14px;line-height:1.35;transition:background .25s,color .25s,border-color .25s }
.ail-talia-spis button b { font-weight:600 }
.ail-talia-spis button span { display:none;margin-top:4px;font-size:13px;color:#dfe1f0;line-height:1.5 }
.ail-talia-spis button:hover { color:white;background:#ffffff08 }
.ail-talia-spis button.ail-aktywna { color:white;background:#ffffff0f;border-left-color:var(--gold) }
.ail-talia-spis button.ail-aktywna span { display:block }
.ail-talia-spis button:focus-visible { outline:2px solid var(--gold);outline-offset:2px }
.ail-talia { position:relative;aspect-ratio:16/9;margin:40px 40px 0 0;cursor:pointer }
.ail-talia img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:12px;border:1px solid #ffffff26;box-shadow:0 30px 70px #00000080;transition:transform .55s cubic-bezier(.2,.8,.2,1),opacity .55s;will-change:transform,opacity }
.ail-talia img[data-poz="0"] { transform:none;opacity:1;z-index:4 }
.ail-talia img[data-poz="1"] { transform:translate(20px,-20px) scale(.96);opacity:.55;z-index:3 }
.ail-talia img[data-poz="2"] { transform:translate(40px,-40px) scale(.92);opacity:.25;z-index:2 }
.ail-talia img[data-poz="3"] { transform:translate(40px,-40px) scale(.92);opacity:0;z-index:1 }
.ail-talia img[data-poz="-1"] { transform:translate(-60px,40px) rotate(-5deg) scale(.98);opacity:0;z-index:5 }
@media (prefers-reduced-motion: reduce) {
  .ail-talia img { transition:none }
}
.ail-plan-wiecej { margin-top:10px }
.ail-plan-wiecej summary { cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--blue) }
.ail-plan-wiecej summary::-webkit-details-marker { display:none }
.ail-plan-wiecej summary:after { content:'+';display:grid;place-items:center;width:18px;height:18px;border-radius:50%;border:1px solid currentColor;font-size:13px;line-height:1 }
.ail-plan-wiecej[open] summary:after { content:'–' }
.ail-plan-wiecej ul { margin:12px 0 0;padding-left:18px;font-size:14px;line-height:1.6;color:var(--ink);display:grid;gap:3px }
.ail-plan-krok .ail-plan-wiecej p { font-size:14px;margin-top:10px }
.ail-platforma { display:grid;grid-template-columns:.75fr 1.5fr;gap:56px;align-items:center;margin-top:72px;padding-top:56px;border-top:1px solid var(--line) }
.ail-platforma-tekst h3 { font-size:28px;margin-bottom:12px }
.ail-platforma-tekst p { color:var(--muted);font-size:15px;line-height:1.7 }
.ail-platforma-okna { position:relative }
.ail-okno { margin:0;background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 24px 60px #14142b1f }
.ail-okno-pasek { display:flex;gap:6px;padding:9px 12px;background:#f1f2f6;border-bottom:1px solid var(--line) }
.ail-okno-pasek i { width:9px;height:9px;border-radius:50%;background:#d5d7e0 }
.ail-okno-tyl { position:absolute;left:0;top:0;width:56%;transform:rotate(-2deg) }
.ail-okno-przod { position:relative;width:80%;margin:16% 0 0 auto }
.ail-opinie-siatka { display:grid;grid-template-columns:repeat(3,1fr);gap:20px }
.ail-opinia { margin:0;background:white;border:1px solid var(--line);border-radius:12px;padding:26px;display:flex;flex-direction:column;gap:16px }
.ail-opinia blockquote { margin:0;font-size:16px;line-height:1.6;color:var(--ink) }
.ail-opinia blockquote:before { content:'„';display:block;font:700 48px/.6 Space,Arial,sans-serif;color:var(--gold);margin-bottom:8px }
.ail-opinia-kto { display:flex;align-items:center;gap:12px;margin-top:auto;font-size:12px;color:var(--muted) }
.ail-opinia-kto img { width:44px;height:44px;border-radius:50%;object-fit:cover }
.ail-opinia-kto strong { display:block;font-size:14px;color:var(--ink) }
.ail-opinia-rodzaj { align-self:flex-start;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);background:#2667ff12;padding:3px 8px;border-radius:999px }
.ail-opinia.ail-pusta { border:2px dashed #e0b400;background:#fffbea }
.ail-opinia.ail-pusta p { font-size:13px;line-height:1.6;color:#5a4500 }
.ail-zapisy .ail-zapisy-gora p.ail-wydawca { display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:white;font-size:13px;line-height:1.55;color:var(--muted);max-width:none }
.ail-wydawca strong { color:var(--ink) }
.ail-ls { flex:none;width:30px;height:30px;border-radius:8px;background:var(--blue);color:white;display:grid;place-items:center;font:700 12px/1 Space,Arial,sans-serif }
.ail-stopka-wydawca { flex:1;text-align:center;padding:0 12px }
@media(max-width:1100px) {
  .ail-talia-blok { grid-template-columns:1fr;gap:28px }
  .ail-talia { order:-1;margin:30px 30px 0 0 }
  .ail-platforma { grid-template-columns:1fr;gap:28px }
  .ail-opinie-siatka { grid-template-columns:1fr 1fr }
}
@media(max-width:650px) {
  .ail-opinie-siatka { grid-template-columns:1fr }
  .ail-stopka-wydawca { text-align:left;padding:0 }
}
.ail-platforma-lista { list-style:none;padding:0;margin:20px 0 0;display:grid;gap:11px;font-size:14px;line-height:1.55;color:var(--muted) }
.ail-platforma-lista li { position:relative;padding-left:24px }
.ail-platforma-lista li:before { content:'→';position:absolute;left:0;top:0;color:var(--blue);font-weight:700 }
.ail-platforma-lista strong { color:var(--ink) }
.ail-firmy { position:relative;overflow:hidden;padding:44px;background:radial-gradient(ellipse at 100% 0,#2667ff40 0,transparent 55%),linear-gradient(135deg,#2667ff1a,#ffffff05) }
.ail-firmy-gora h3 { font-size:clamp(30px,3vw,40px) }
.ail-firmy-gora p { font-size:15px }
.ail-firmy-cta { display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex:none }
.ail-firmy-cta p { font-size:12px;color:#bdbed2 }
.ail-firmy-cta p a { color:white;border-bottom:1px solid #ffffff55 }
.ail-firmy-gora .ail-firmy-cta .btn.ail-btn-duzy { background:var(--gold);border-color:var(--gold);color:var(--navy);min-height:62px;padding:16px 30px;font-size:16px;gap:18px;box-shadow:0 12px 30px #ffce2633 }
.ail-firmy-gora .ail-firmy-cta .btn.ail-btn-duzy:hover { background:#ffe16d }
.ail-firmy-kroki { list-style:none;padding:0;margin:0 0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px }
.ail-firmy-kroki li { display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:10px;background:#ffffff0a;border:1px solid #ffffff14 }
.ail-firmy-kroki strong { display:block;color:white;font-size:15px;margin-bottom:4px }
.ail-firmy-kroki p { font-size:13px;line-height:1.55;color:#bdbed2 }
.ail-firmy-nr { flex:none;width:34px;height:34px;border-radius:50%;border:2px solid var(--gold);color:var(--gold);display:grid;place-items:center;font:700 14px/1 Space,Arial,sans-serif }
.ail-firmy-kol h4 { display:flex;align-items:center;gap:10px }
.ail-ikona { flex:none;width:36px;height:36px;border-radius:9px;background:#2667ff26;color:#9eafff;display:grid;place-items:center }
.ail-ikona svg { width:20px;height:20px }
.ail-firmy-kol { transition:border-color .2s,transform .2s }
.ail-firmy-kol:hover { border-color:#ffce2655;transform:translateY(-2px) }
@media(max-width:820px) {
  .ail-firmy-kroki { grid-template-columns:1fr }
  .ail-firmy-cta { align-items:flex-start }
}
@media(max-width:650px) {
  .ail-firmy { padding:24px }
}
.ail-ls-logo { flex:none;width:112px;height:auto;margin-top:2px }
.ail-zapisy .ail-zapisy-gora p.ail-wydawca { align-items:center;gap:16px }
.ail-stopka-wydawca { display:inline-flex;align-items:center;justify-content:center;gap:10px }
.ail-stopka-wydawca img { height:20px;width:auto }
@media(max-width:650px) {
  .ail-zapisy .ail-zapisy-gora p.ail-wydawca { flex-direction:column;align-items:flex-start }
  .ail-stopka-wydawca { justify-content:flex-start;flex-wrap:wrap }
}
.ail-platforma-okna { padding-bottom:12% }
.ail-okno-tyl { width:58% }
.ail-okno-maly { position:absolute;left:0;bottom:0;width:50%;z-index:3;transform:rotate(1.5deg);box-shadow:0 24px 60px #14142b33 }
.ail-mail { margin-top:20px;border:1px solid #ffce2655;border-radius:10px;background:#ffce260d;color:white }
.ail-mail summary { list-style:none;cursor:pointer;display:flex;align-items:center;gap:16px;padding:18px 22px }
.ail-mail summary::-webkit-details-marker { display:none }
.ail-mail-ikona { flex:none;width:40px;height:40px;border-radius:10px;background:#ffce2622;color:var(--gold);display:grid;place-items:center }
.ail-mail-ikona svg { width:22px;height:22px }
.ail-mail-tekst { flex:1;font-size:14px;color:#d6d8ea;line-height:1.5 }
.ail-mail-tekst strong { color:white;margin-right:6px }
.ail-mail-przycisk { flex:none;padding:10px 16px;border:1px solid #ffffff40;border-radius:6px;font-size:13px;font-weight:600 }
.ail-mail[open] .ail-mail-przycisk { opacity:.6 }
.ail-mail-tresc { padding:0 22px 22px }
.ail-mail-tresc textarea { width:100%;box-sizing:border-box;border:0;border-radius:8px;padding:18px;background:white;color:var(--ink);font:14px/1.6 Inter,Arial,sans-serif;resize:vertical }
.ail-mail-akcje { display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:12px }
.ail-mail-info { font-size:12px;color:#bdbed2 }
.ail-dla-kogo-siatka { display:grid;grid-template-columns:1.3fr 1fr;gap:28px;align-items:start }
.ail-tak { list-style:none;padding:0;margin:0;display:grid;gap:12px }
.ail-tak li { position:relative;padding:16px 18px 16px 52px;border:1px solid var(--line);border-radius:10px;background:white;font-size:16px;line-height:1.5;color:var(--ink) }
.ail-tak li:before { content:'✓';position:absolute;left:16px;top:15px;width:24px;height:24px;border-radius:50%;background:var(--blue);color:white;display:grid;place-items:center;font-size:13px;font-weight:700 }
.ail-nie { border-radius:12px;background:var(--paper);padding:24px }
.ail-nie h3 { font-size:20px;margin-bottom:14px }
.ail-nie ul { list-style:none;padding:0;margin:0;display:grid;gap:12px }
.ail-nie li { position:relative;padding-left:30px;font-size:15px;line-height:1.55;color:var(--muted) }
.ail-nie li:before { content:'×';position:absolute;left:0;top:-1px;width:20px;height:20px;border-radius:50%;background:#e6e8f0;color:#72768c;display:grid;place-items:center;font-size:14px;font-weight:700 }
.ail-faq .section-heading p a { color:var(--blue);font-weight:600 }
.ail-faq-siatka { display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;align-items:start }
.ail-faq-siatka details { border-bottom:1px solid var(--line);padding:4px 0 }
.ail-faq-siatka summary { list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;padding:14px 0;font:700 17px/1.35 Space,Arial,sans-serif;letter-spacing:-.01em;color:var(--ink) }
.ail-faq-siatka summary::-webkit-details-marker { display:none }
.ail-faq-siatka summary:after { content:'+';flex:none;color:var(--blue);font-size:20px;line-height:1 }
.ail-faq-siatka details[open] summary:after { content:'–' }
.ail-faq-siatka p { padding:0 0 16px;font-size:15px;line-height:1.65;color:var(--muted) }
.ail-faq-siatka p a { color:var(--blue);font-weight:600 }
.ail-stopka-wydawca a { color:inherit;border-bottom:1px solid currentColor }
.ail-wydawca a { color:var(--blue);font-weight:600 }
@media(max-width:820px) {
  .ail-dla-kogo-siatka,.ail-faq-siatka { grid-template-columns:1fr }
  .ail-mail summary { flex-wrap:wrap }
}
.ail-platforma-okna { padding-bottom:22% }
.ail-okno-przod { z-index:3 }
.ail-okno-maly { z-index:2;left:0;width:50% }
.ail-przed-po { margin-top:56px }
.ail-przed-po h3 { font-size:28px;margin-bottom:18px }
.ail-pp-naglowki,.ail-przed-po li { display:grid;grid-template-columns:1fr 44px 1.15fr;align-items:stretch }
.ail-pp-naglowki { margin-bottom:10px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase }
.ail-pp-naglowki span:first-child { color:#9799ab }
.ail-pp-naglowki span:last-child { color:var(--blue) }
.ail-przed-po ul { list-style:none;padding:0;margin:0;display:grid;gap:10px }
.ail-pp-dzis { padding:16px 18px;border-radius:10px;background:var(--paper);color:#72768c;font-size:15px;line-height:1.5 }
.ail-pp-strzalka { display:grid;place-items:center;color:var(--gold);font-size:22px;font-weight:700 }
.ail-pp-po { padding:16px 18px;border-radius:10px;background:white;border:1px solid var(--line);border-left:3px solid var(--blue);color:var(--ink);font-size:15px;line-height:1.5;font-weight:500;box-shadow:0 8px 24px #14142b0a }
.ail-przed-po li:hover .ail-pp-po { border-left-color:var(--gold) }
@media(max-width:820px) {
  .ail-pp-naglowki { display:none }
  .ail-przed-po li { grid-template-columns:1fr;gap:6px }
  .ail-pp-strzalka { justify-content:start;padding-left:18px;transform:rotate(90deg);width:24px }
  .ail-pp-dzis:before { content:'Dziś: ';font-weight:600 }
  .ail-pp-po:before { content:'Po kursie: ';font-weight:700;color:var(--blue) }
}
.ail-przed-po-sekcja .ail-przed-po { margin-top:0 }
.ail-przed-po-sekcja .ail-pp-dzis { background:#e9ebf2 }
.btn.ail-btn-duzy { min-height:62px;padding:16px 30px;font-size:16px;gap:18px }
.btn.yellow.ail-btn-duzy { box-shadow:0 12px 30px #ffce2633 }
.ail-firmy-zajawka .ail-firmy-gora { margin-bottom:24px }
.ail-firmy-kafle { display:grid;grid-template-columns:repeat(3,1fr);gap:14px }
.ail-firmy-kafle a { display:flex;gap:14px;align-items:center;padding:16px 18px;border-radius:10px;background:#ffffff0a;border:1px solid #ffffff1a;color:#bdbed2;font-size:13px;line-height:1.45;transition:border-color .2s,transform .2s }
.ail-firmy-kafle a:hover { border-color:#ffce2666;transform:translateY(-2px) }
.ail-firmy-kafle strong { display:block;color:white;font-size:15px;margin-bottom:2px }
.ail-fh { padding:84px 0 70px }
.ail-fh:before { content:'';position:absolute;width:760px;height:760px;background:radial-gradient(ellipse,#21329f66 0,transparent 68%);right:-240px;top:-260px;pointer-events:none }
.ail-fh .wrap { position:relative }
.ail-fh h1 { font-size:clamp(38px,4.6vw,62px);max-width:920px;color:white }
.ail-fh-lead { font-size:18px;line-height:1.65;color:#bdbed2;max-width:680px;margin-top:22px }
.ail-fh-akcje { display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;margin-top:34px }
.ail-fh .text-link { color:white }
.ail-fh-fakty { list-style:none;padding:24px 0 0;margin:44px 0 0;border-top:1px solid #ffffff1f;display:flex;flex-wrap:wrap;gap:12px 32px;font-size:13px;color:#bdbed2 }
.ail-fh-fakty li:before { content:'✓';color:var(--gold);margin-right:8px }
.ail-wyniki-jasne .ail-wynik { background:var(--paper);border-color:var(--line) }
.ail-wyniki-jasne .ail-wynik h3 { color:var(--ink) }
.ail-wyniki-jasne .ail-wynik p { color:var(--muted) }
.ail-wyniki-jasne .ail-wynik .ail-nr { color:var(--blue) }
.ail-wyniki-jasne .ail-wynik-szef { background:#fff8dd;border-color:#ffce2688 }
.ail-role-siatka { display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;align-items:stretch }
.ail-role-siatka .ail-sciezka + .ail-sciezka { margin-top:0 }
.ail-sciezka-glowna { border-color:var(--blue);background:#f3f6ff }
.ail-formy .ail-firmy { margin-top:0 }
.ail-fk { padding:72px 0 }
.ail-fk .wrap { position:relative;display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap }
.ail-fk h2 { color:white;max-width:640px }
.ail-fk p { color:#bdbed2;margin-top:12px }
.ail-fk-akcje { display:flex;flex-direction:column;align-items:flex-end;gap:14px }
.ail-fk .text-link { color:white }
@media(max-width:820px) {
  .ail-firmy-kafle { grid-template-columns:1fr }
  .ail-fk-akcje { align-items:flex-start }
}
.ail-role-siatka { grid-template-columns:repeat(5,1fr) }
@media(max-width:1100px) {
  .ail-role-siatka { grid-template-columns:repeat(2,1fr) }
}
@media(max-width:650px) {
  .ail-role-siatka { grid-template-columns:1fr }
}
.ail-mapa { background:white;border:1px solid var(--line);border-radius:14px;padding:24px;overflow-x:auto;margin-bottom:24px }
.ail-mapa-siatka { display:grid;grid-template-columns:150px repeat(10,minmax(92px,1fr));gap:10px 6px;min-width:1100px;align-items:stretch }
.ail-mapa-etykieta { align-self:center;font-size:12px;font-weight:700;color:var(--ink);letter-spacing:.02em }
.ail-mapa-sciezka { color:var(--muted);font-weight:600 }
.ail-mapa-modul { display:flex;flex-direction:column;justify-content:space-between;gap:6px;min-height:78px;padding:10px;border-radius:8px;background:var(--blue);color:white;font-size:12px;line-height:1.3 }
.ail-mapa-modul b { font:700 13px/1.25 Space,Arial,sans-serif;letter-spacing:-.01em }
.ail-mapa-modul small { font-size:10px;letter-spacing:.08em;text-transform:uppercase;opacity:.75 }
.ail-mapa-start { background:#1752df }
.ail-mapa-koniec { background:var(--gold);color:var(--navy) }
.ail-mapa-tor { position:relative;min-height:26px;background:linear-gradient(#e6e8f0,#e6e8f0) center/100% 2px no-repeat }
.ail-mapa-tor i { position:absolute;left:50%;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px #ffce2633 }
.ail-mapa-legenda { margin-top:16px;font-size:12px;color:var(--muted) }
.ail-mapa-legenda i { display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--gold);margin-right:4px;vertical-align:-1px }
.ail-pakiety { display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch }
.ail-pakiet-karta { display:flex;flex-direction:column;border:1px solid #ffffff25;border-radius:12px;padding:30px;background:#ffffff08 }
.ail-pakiet-karta.ail-wyrozniony { border-color:#ffce2688;box-shadow:inset 0 0 0 1px #ffce2633 }
.ail-pakiet-nazwa { font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#9eafff }
.ail-pakiet-liczba { margin-top:14px;font:700 64px/1 Space,Arial,sans-serif;letter-spacing:-.04em;color:white }
.ail-pakiet-liczba small { display:block;margin-top:8px;font:500 14px/1.4 Inter,Arial,sans-serif;letter-spacing:0;color:#bdbed2 }
.ail-pakiet-dla { margin-top:14px;font-size:14px;line-height:1.55;color:#d6d8ea }
.ail-pakiet-karta ul { list-style:none;padding:0;margin:18px 0;display:grid;gap:9px;font-size:13px;color:#d6d8ea }
.ail-pakiet-karta li { position:relative;padding-left:22px }
.ail-pakiet-karta li:before { content:'✓';position:absolute;left:0;color:var(--gold) }
.ail-pakiet-wynik { margin:auto 0 18px;padding:12px 14px;border-radius:8px;background:#ffce2614;color:#ffe8a3;font-size:13px;line-height:1.5 }
.ail-pakiet-karta .btn { width:100%;background:transparent;border-color:#ffffff40 }
.ail-pakiet-karta .btn:hover { background:#ffffff10 }
.ail-pakiet-karta.ail-wyrozniony .btn { background:var(--gold);border-color:var(--gold);color:var(--navy) }
.ail-firmy-dodatki { display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0 24px }
.ail-formy .ail-firmy-kroki { margin-top:4px }
.ail-formy .ail-cta-row { margin-top:26px }
.ail-formy .ail-cta-note a { color:white;border-bottom:1px solid #ffffff55 }
@media(max-width:1100px) {
  .ail-pakiety { grid-template-columns:1fr }
  .ail-firmy-dodatki { grid-template-columns:1fr }
}
.ail-wartosc { display:grid;grid-template-columns:repeat(3,1fr);gap:18px }
.ail-wartosc article { position:relative;display:flex;flex-direction:column;gap:10px;padding:26px 24px 22px;border-radius:12px;background:white;border:1px solid var(--line);box-shadow:0 10px 30px #14142b0d;transition:transform .2s,border-color .2s }
.ail-wartosc article:hover { transform:translateY(-3px);border-color:var(--blue) }
.ail-wartosc-tag { align-self:flex-start;padding:4px 10px;border-radius:999px;background:var(--navy);color:var(--gold);font:700 11px/1 Space,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase }
.ail-wartosc h3 { font-size:20px }
.ail-wartosc p { font-size:14px;line-height:1.6;color:var(--muted) }
.ail-wartosc-mod { margin-top:auto;padding-top:10px;border-top:1px solid var(--line);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue) }
@media(max-width:1100px) {
  .ail-wartosc { grid-template-columns:1fr 1fr }
}
@media(max-width:650px) {
  .ail-wartosc { grid-template-columns:1fr }
}
.price .ail-ok { font-size:22px;font-weight:600;letter-spacing:0;margin-right:8px }
.ail-mapa-blok { grid-column:span 2;align-self:center;position:relative;z-index:1;margin:0 18px;padding:6px 10px;border-radius:999px;background:#fff3c4;border:1px dashed #e0b400;color:#5a4500;font-size:11px;font-weight:600;text-align:center;white-space:nowrap }
.ail-mapa-legenda-blok { display:inline-block;width:22px;height:10px;border-radius:999px;background:#fff3c4;border:1px dashed #e0b400;margin:0 4px 0 6px;vertical-align:-1px }
.ail-pakiet-liczba { white-space:nowrap }
.ail-mapa-modul b { overflow-wrap:normal;word-break:keep-all }
.ail-wewn { margin:0 0 18px;padding:12px 16px;border:2px dashed #ff6b6b;border-radius:10px;background:#fff1f1;color:#7a1010;font-size:13px;font-weight:600;line-height:1.5 }
.ail-mapa-blok { min-height:16px;height:16px;padding:0;margin:0 34px;background:var(--gold);border:0;box-shadow:0 0 0 4px #ffce2633 }
.ail-mapa-legenda-blok { background:var(--gold);border:0 }
.ail-warstwy { display:grid;gap:12px;justify-items:center }
.ail-warstwa { display:grid;grid-template-columns:170px 1fr;gap:20px;align-items:center;width:100%;padding:20px 26px;border-radius:12px;border:1px solid var(--line);background:white;box-shadow:0 10px 30px #14142b0d }
.ail-warstwa-zarzad { max-width:720px;background:var(--navy);border-color:var(--navy) }
.ail-warstwa-zarzad p,.ail-warstwa-zarzad strong { color:white }
.ail-warstwa-zarzad .ail-warstwa-nazwa { background:var(--gold);color:var(--navy) }
.ail-warstwa-liderzy { max-width:960px;border:2px solid var(--blue);background:#f3f6ff }
.ail-warstwa-liderzy .ail-warstwa-nazwa { background:var(--blue);color:white }
.ail-warstwa-wszyscy { max-width:1216px }
.ail-warstwa-nazwa { justify-self:start;padding:6px 12px;border-radius:999px;background:var(--paper);color:var(--ink);font:700 12px/1.2 Space,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase }
.ail-warstwa p { font-size:15px;line-height:1.6;color:var(--muted) }
.ail-warstwa strong { color:var(--ink) }
.ail-akcelerator { margin-top:20px;padding:34px;border-radius:12px;border:1px solid #ffce2688;background:radial-gradient(ellipse at 0 0,#ffce2622 0,transparent 55%),#ffffff08 }
.ail-akc-gora { display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:24px }
.ail-akc-gora h3 { font-size:clamp(28px,2.8vw,36px);color:white;margin-bottom:10px }
.ail-akc-gora p { font-size:15px;color:#bdbed2;max-width:560px }
.ail-akcelerator .eyebrow { color:var(--gold) }
.ail-akc-etapy { list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px }
.ail-akc-etapy li { display:flex;gap:12px;align-items:flex-start;padding:18px;border-radius:10px;background:#ffffff0a;border:1px solid #ffffff14 }
.ail-akc-etapy strong { display:block;color:white;font-size:15px;margin-bottom:4px }
.ail-akc-etapy p { font-size:13px;line-height:1.55;color:#bdbed2 }
.ail-akc-wynik { margin-top:18px;padding:14px 16px;border-radius:8px;background:#ffce2614;color:#ffe8a3;font-size:14px }
.ail-akc-wynik strong { color:var(--gold) }
@media(max-width:1100px) {
  .ail-akc-etapy { grid-template-columns:1fr 1fr }
}
@media(max-width:650px) {
  .ail-akc-etapy { grid-template-columns:1fr }
  .ail-warstwa { grid-template-columns:1fr;gap:8px }
}
.ail-warstwa.ail-warstwa-zarzad p { color:#d6d8ea }
.ail-warstwa.ail-warstwa-zarzad p strong { color:white }
.ail-akc-karty { display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:22px }
.ail-akc-podtytul { margin:6px 0 12px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold) }
.ail-hero-start { margin-top:24px;padding:12px 16px;border-left:3px solid var(--gold);background:#ffffff0a;border-radius:0 8px 8px 0;color:#d6d8ea;font-size:15px;line-height:1.5;max-width:520px }
.ail-hero-start strong { color:white }
@media(max-width:820px) {
  .ail-akc-karty { grid-template-columns:1fr }
}
.ail-kogo { display:grid;grid-template-columns:repeat(4,1fr);gap:16px }
.ail-kogo article { padding:24px 22px;border-radius:12px;background:white;border:1px solid var(--line);box-shadow:0 10px 30px #14142b0d }
.ail-kogo-nr { display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--blue);color:white;font:700 14px/1 Space,Arial,sans-serif;margin-bottom:14px }
.ail-kogo h3 { font-size:18px;margin-bottom:8px }
.ail-kogo p { font-size:14px;line-height:1.6;color:var(--muted) }
.ail-kurs-zespol-tytul { margin-top:0 }
@media(max-width:1100px) {
  .ail-kogo { grid-template-columns:1fr 1fr }
}
@media(max-width:650px) {
  .ail-kogo { grid-template-columns:1fr }
}
.ail-do-potw { display:none }
body.ail-podglad .ail-do-potw { display:inline-block;align-self:flex-start;margin-top:10px;padding:4px 10px;border:1px dashed #ff8a8a;border-radius:6px;background:#ff6b6b1f;color:#ffb3b3;font-size:12px;font-weight:700 }
.ail-oferty-firm { display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:stretch;margin-bottom:24px }
.ail-oferta-firm { display:flex;flex-direction:column;padding:32px;border-radius:12px;border:1px solid #ffffff25;background:#ffffff08 }
.ail-oferta-firm.ail-wyrozniony { border-color:#ffce2688;box-shadow:inset 0 0 0 1px #ffce2633;background:radial-gradient(ellipse at 100% 0,#ffce261a 0,transparent 55%),#ffffff08 }
.ail-oferta-firm h3 { margin-top:12px;font-size:clamp(24px,2.3vw,30px);color:white }
.ail-oferta-lead { margin-top:12px;font-size:15px;line-height:1.6;color:#d6d8ea }
.ail-oferta-rozmiary { display:flex;flex-wrap:wrap;gap:8px;margin-top:16px }
.ail-oferta-rozmiary span { padding:6px 12px;border-radius:999px;background:#ffffff12;border:1px solid #ffffff26;color:white;font-size:13px;font-weight:600 }
.ail-oferta-firm h4 { margin:22px 0 10px;font:600 11px/1.3 Inter,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#9eafff }
.ail-oferta-firm ul,.ail-oferta-etapy { list-style:none;padding:0;margin:0;display:grid;gap:9px;font-size:14px;line-height:1.5;color:#d6d8ea }
.ail-oferta-firm ul li { position:relative;padding-left:22px }
.ail-oferta-firm ul li:before { content:'✓';position:absolute;left:0;color:var(--gold) }
.ail-oferta-etapy { counter-reset:et }
.ail-oferta-etapy li { counter-increment:et;position:relative;padding-left:34px }
.ail-oferta-etapy li:before { content:counter(et);position:absolute;left:0;top:-1px;width:24px;height:24px;border-radius:50%;border:2px solid var(--gold);color:var(--gold);display:grid;place-items:center;font:700 12px/1 Space,Arial,sans-serif }
.ail-oferta-etapy strong { color:white }
.ail-oferta-firm .ail-pakiet-wynik { margin:22px 0 18px }
.ail-oferta-firm > .btn { margin-top:auto;width:100%;background:transparent;border-color:#ffffff40 }
.ail-oferta-firm > .btn:hover { background:#ffffff10 }
.ail-oferta-firm.ail-wyrozniony > .btn { background:var(--gold);border-color:var(--gold);color:var(--navy) }
.ail-oferta-firm:not(.ail-wyrozniony) .ail-pakiet-wynik { display:none }
@media(max-width:1000px) {
  .ail-oferty-firm { grid-template-columns:1fr }
}
/* Theme glue: the business page swaps the buy button for an offer request (body class from Ghost). */
.ail-header-firm { display:none }
.page-dla-firm .ail-header-firm { display:inline-flex }
.page-dla-firm .ail-header-buy, .page-dla-firm .ail-pasek, .page-dla-firm .ail-premiera { display:none }
/* A hidden sticky bar must not take keyboard focus. */
.ail-pasek:not(.ail-widoczny) { visibility:hidden }
/* Premiere bar above the header (1.4.0, partials/premiere-bar.hbs); text from @custom.premiere_bar (1.5.0). */
.ail-premiera { background:var(--gold);color:var(--navy);font-size:13px;line-height:1.4 }
.ail-premiera-wnetrze { display:flex;align-items:center;justify-content:center;gap:8px 24px;min-height:48px;padding:7px 0 }
.ail-premiera-tekst { margin:0 }
.ail-premiera-tekst strong { font-weight:700;letter-spacing:.12em }
.ail-premiera-tekst > :not(:last-child):after { content:'·';margin:0 5px 0 9px;opacity:.55 }
.ail-premiera .btn { flex:none;min-height:34px;padding:6px 14px;gap:10px;background:var(--navy);color:white;font-size:13px }
.ail-premiera .btn:hover { background:var(--blue);color:white }
/* Phones: compact button, balanced lines; the short part after the label (the code) never breaks inside. */
@media(max-width:650px) {
  .ail-premiera-wnetrze { justify-content:space-between;gap:12px }
  .ail-premiera-tekst { font-size:12px;text-wrap:balance }
  .ail-premiera-tekst span:first-of-type { white-space:nowrap }
  .ail-premiera .btn { padding:6px 12px }
  .ail-premiera .btn svg { display:none }
}
