@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,800;1,600&family=Sora:wght@300;400;500;600;700&display=swap');
/* ============================================================
   Dragonia Polska — Poradnik (plg)
   Design: PLUM-ARCADE-ATRIUM · layout=sidebar · theme=light
   shape=moderate · density=dense · persona=arcade
   ============================================================ */



:root{
  /* palette */
  --bg-main:#F4F0F8;
  --bg-card:#FBF8FD;
  --bg-deep:#241733;
  --bg-deep-2:#180E24;
  --accent:#00C98D;
  --accent-2:#C9A227;
  --text-main:#241733;
  --text-muted:#6B5A80;
  --text-on-deep:#EFE7F7;
  --border:rgba(64,30,92,.16);
  --border-gold:rgba(201,162,39,.42);
  --glass:rgba(64,30,92,.07);
  --glass-deep:rgba(255,255,255,.06);
  --glow:0 0 0 1px var(--accent),0 0 18px rgba(0,201,141,.35);

  /* type */
  --font-head:"Playfair Display",Georgia,"Times New Roman",serif;
  --font-body:"Sora",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;

  /* geometry — shape: moderate */
  --r-card:10px;
  --r-btn:8px;
  --r-chip:6px;

  /* density: dense — 8px base rhythm */
  --sp-1:.5rem;
  --sp-2:.75rem;
  --sp-3:1rem;
  --sp-4:1.5rem;
  --sp-5:2rem;
  --sec-pad:clamp(1.75rem,3.4vw,2.75rem);
  --gutter:1.15rem;
  --wrap:1120px;
  --rail-w:268px;

  --shadow-sm:0 1px 2px rgba(36,23,51,.06),0 2px 10px rgba(36,23,51,.05);
  --shadow-md:0 8px 26px rgba(36,23,51,.10);
}

*{box-sizing:border-box}
*,*::before,*::after{margin:0;padding:0}

html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

body{
  margin:0;
  background:var(--bg-main);
  color:var(--text-main);
  font-family:var(--font-body);
  font-weight:400;
  font-size:16px;
  line-height:1.45;
  overflow-x:hidden;
  padding-inline-start:var(--rail-w);          /* nav-rail? no — sidebar archetype keeps rail reserve off */
  -webkit-font-smoothing:antialiased;
}
/* sidebar archetype: the header is a normal top bar, not a rail */
body{padding-inline-start:0}

img{max-width:100%;display:block}
a{color:inherit}
ul,ol{list-style:none}

:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}

h1,h2,h3,h4{font-family:var(--font-head);font-weight:700;line-height:1.16;letter-spacing:-.01em;overflow-wrap:anywhere}
h1{font-size:clamp(1.85rem,4.2vw,2.9rem)}
h2{font-size:clamp(1.4rem,2.8vw,2rem)}
h3{font-size:clamp(1.12rem,1.9vw,1.35rem)}
h4{font-size:1.02rem}
p,li,dd,dt,td,th{overflow-wrap:anywhere}
p{margin-block:0 var(--sp-2)}
p:last-child{margin-bottom:0}

/* ---------- container / sections ---------- */
.plg-container{
  width:100%;
  max-width:var(--wrap);
  margin-inline:auto;
  padding-inline:var(--gutter);
}
.plg-section{padding-block:var(--sec-pad)}
.plg-section--alt{background:rgba(64,30,92,.045)}
.plg-section__head{margin-bottom:var(--sp-4)}
.plg-eyebrow{
  display:inline-block;
  font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--accent-2);
  margin-bottom:var(--sp-1);
}
.plg-lead{font-size:1.06rem;color:var(--text-muted)}

/* ---------- SIDEBAR ARCHETYPE ---------- */
.plg-layout{display:block}
@media (min-width:960px){
  .plg-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 300px;
    gap:clamp(1.25rem,2.4vw,2rem);
    align-items:start;
  }
  .plg-layout > *{min-width:0}
  .plg-layout__aside{position:sticky;top:88px}
}
.plg-layout__aside{margin-top:var(--sp-4)}
@media (min-width:960px){.plg-layout__aside{margin-top:0}}

/* ---------- buttons ---------- */
.plg-btn{
  display:inline-block;
  font-family:var(--font-body);
  font-weight:600;font-size:.95rem;line-height:1.2;
  padding:.72rem 1.25rem;
  border:1px solid transparent;
  border-radius:var(--r-btn);
  background:var(--accent);
  color:#08261C;
  text-decoration:none;
  cursor:pointer;
  transition:box-shadow .18s ease,transform .18s ease,background .18s ease;
}
.plg-btn:hover,.plg-btn:focus-visible{
  background:#0ADFA0;
  box-shadow:var(--glow);
  transform:translateY(-1px);
}
.plg-btn--ghost{
  background:transparent;
  color:var(--text-main);
  border-color:var(--border);
}
.plg-btn--ghost:hover,.plg-btn--ghost:focus-visible{background:var(--glass);box-shadow:none;color:var(--text-main)}
.plg-btn--gold{background:var(--accent-2);color:#231A02}
.plg-btn--gold:hover{background:#DFB534;box-shadow:0 0 0 1px var(--accent-2),0 0 18px rgba(201,162,39,.35)}
.plg-btn--lg{font-size:1.02rem;padding:.9rem 1.6rem}
.plg-btn--block{display:block;width:100%;text-align:center}

/* ---------- icons ---------- */
.plg-icon{
  width:1.5em;height:1.5em;
  display:inline-block;vertical-align:middle;flex-shrink:0;
  stroke:currentColor;fill:none;
}
.plg-icon--lg{width:2rem;height:2rem}

/* ============================================================
   HEADER  (light surface — logo tone unknown → text logo)
   ============================================================ */
.plg-header{
  position:sticky;top:0;z-index:900;
  background:rgba(251,248,253,.86);
  backdrop-filter:blur(14px) saturate(150%);
  -webkit-backdrop-filter:blur(14px) saturate(150%);
  border-bottom:1px solid var(--border);
}
.plg-header__bar{
  max-width:var(--wrap);margin-inline:auto;
  padding:.6rem var(--gutter);
  display:flex;align-items:center;gap:var(--sp-3);
}
.plg-header__bar > *{min-width:0}

.plg-logo{
  display:inline-flex;align-items:center;gap:.55rem;
  text-decoration:none;flex-shrink:0;
  font-family:var(--font-head);
  font-weight:800;font-size:1.22rem;letter-spacing:-.015em;
  color:var(--text-main);
}
.plg-logo__img{height:40px;width:auto;object-fit:contain;max-width:min(45vw,190px)}
.plg-logo__mark{
  display:inline-grid;place-items:center;
  width:32px;height:32px;flex-shrink:0;
  border-radius:var(--r-chip);
  background:var(--bg-deep);
  color:var(--accent);
  font-family:var(--font-body);font-size:.85rem;font-weight:700;letter-spacing:.02em;
  box-shadow:inset 0 0 0 1px var(--border-gold);
}
.plg-logo__text{white-space:nowrap}
.plg-logo__text b{font-weight:800}
.plg-logo__text i{font-style:normal;color:var(--accent-2)}

/* nav */
.plg-nav{margin-inline-start:auto;display:flex;align-items:center;gap:.15rem}
.plg-nav ul{display:flex;align-items:center;gap:.1rem}
.plg-nav a:not(.plg-btn){
  display:block;
  padding:.5rem .6rem;
  border-radius:var(--r-chip);
  font-size:.9rem;font-weight:500;
  color:var(--text-main);
  text-decoration:none;
  white-space:nowrap;
  transition:color .16s ease,background .16s ease;
}
.plg-nav a:not(.plg-btn):hover,
.plg-nav a:not(.plg-btn):focus-visible{color:#04553C;background:rgba(0,201,141,.12)}
.plg-nav a:not(.plg-btn)[aria-current="page"]:not(.plg-btn){color:#04553C;box-shadow:inset 0 -2px 0 var(--accent)}
.plg-nav > .plg-btn{display:none}

.plg-header__cta{flex-shrink:0;margin-inline-start:.4rem;font-size:.88rem;padding:.6rem 1rem}

/* burger */
.plg-burger{
  display:none;
  width:44px;height:44px;flex-shrink:0;
  margin-inline-start:auto;
  align-items:center;justify-content:center;
  flex-direction:column;gap:5px;
  background:transparent;border:1px solid var(--border);border-radius:var(--r-chip);
  cursor:pointer;
}
.plg-burger span{
  display:block;width:22px;height:2px;
  background:var(--text-main);border-radius:2px;
  transition:transform .2s ease,opacity .2s ease;
}
.plg-header.is-open .plg-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.plg-header.is-open .plg-burger span:nth-child(2){opacity:0}
.plg-header.is-open .plg-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media (max-width:900px){
  .plg-burger{display:flex}
  .plg-nav{
    display:none;
    position:absolute;left:0;right:0;top:100%;
    margin:0;
    flex-direction:column;align-items:stretch;gap:.15rem;
    padding:var(--sp-2) var(--gutter) var(--sp-3);
    background:var(--bg-card);
    border-bottom:1px solid var(--border);
    box-shadow:var(--shadow-md);
    max-height:calc(100vh - 64px);overflow-y:auto;
  }
  .plg-header.is-open .plg-nav{display:flex}
  .plg-nav ul{flex-direction:column;align-items:stretch;gap:.1rem;width:100%}
  .plg-nav a:not(.plg-btn){padding:.7rem .6rem;font-size:.98rem;border-bottom:1px solid var(--border)}
  .plg-header__cta{display:none}
  .plg-nav > .plg-btn{display:block;width:100%;text-align:center;margin-top:var(--sp-2)}
}

/* ============================================================
   HERO
   ============================================================ */
.plg-hero{position:relative}
.plg-hero__inner{position:relative}
.plg-hero h1{text-wrap:balance}

/* --- HOME: stacked pattern --- */
.plg-hero--home{
  padding-block:clamp(2rem,4.6vw,3.4rem);
  background:
    radial-gradient(900px 340px at 12% -10%,rgba(0,201,141,.16),transparent 60%),
    radial-gradient(700px 300px at 92% 0%,rgba(201,162,39,.16),transparent 62%),
    var(--bg-main);
  border-bottom:1px solid var(--border);
  overflow:hidden;
}
.plg-hero--home::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(36,23,51,.045) 0 1px,transparent 1px 4px);
  opacity:.6;
}
.plg-hero--home .plg-hero__inner{
  max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter);
  display:flex;flex-direction:column;gap:var(--sp-3);
  z-index:1;
}
.plg-hero--home .plg-hero__text{display:flex;flex-direction:column;gap:var(--sp-2);max-width:none}
.plg-hero--home .plg-hero__sub{font-size:clamp(1rem,1.5vw,1.12rem);color:var(--text-muted)}
.plg-hero__actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-1)}
.plg-hero__note{font-size:.8rem;color:var(--text-muted)}
.plg-hero__visual{
  width:100%;
  border-radius:var(--r-card);
  overflow:hidden;
  border:1px solid var(--border-gold);
  background:linear-gradient(135deg,#2B1A3E 0%,#3C2352 45%,#0F5C46 100%);
  aspect-ratio:3/2;
  max-height:52vh;
}
.plg-hero--home .plg-hero__visual{margin-top:var(--sp-2)}
.plg-hero__img{
  display:block;width:100%;height:auto;
  max-height:70vh;aspect-ratio:3/2;object-fit:cover;
  border-radius:var(--r-card);
}
.plg-hero__visual .plg-hero__img{border-radius:0;height:100%;max-height:none}

/* --- INNER: compact page-header band --- */
.plg-hero--inner{
  position:relative;
  min-height:170px;
  display:flex;align-items:center;
  padding-block:var(--sp-4);
  background:
    linear-gradient(120deg,#241733 0%,#3A2151 58%,#123F35 100%);
  border-bottom:1px solid var(--border-gold);
  overflow:hidden;
  color:var(--text-on-deep);
}
.plg-hero--inner .plg-hero__inner{
  position:relative;width:100%;
  padding-inline:max(var(--gutter),calc((100% - var(--wrap))/2 + var(--gutter)));
  display:flex;flex-direction:column;gap:.4rem;
}
.plg-hero--inner .plg-hero__inner::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(90deg,rgba(15,9,24,.82) 0%,rgba(15,9,24,.66) 55%,rgba(15,9,24,.5) 100%);
  pointer-events:none;
}
:where(.plg-hero--inner .plg-hero__inner > :not(.plg-hero__img)){position:relative;z-index:2}
.plg-hero--inner .plg-hero__img{
  position:absolute;inset:0;width:100%;height:100%;
  max-height:none;aspect-ratio:auto;object-fit:cover;border-radius:0;z-index:0;
}
.plg-hero--inner h1{font-size:clamp(1.6rem,3.2vw,2.35rem);color:#fff}
.plg-hero--inner .plg-eyebrow{color:var(--accent)}
.plg-hero--inner .plg-hero__sub{color:rgba(239,231,247,.86);font-size:.98rem}
.plg-hero--inner .plg-breadcrumb,
.plg-hero--inner .plg-breadcrumb a{color:rgba(239,231,247,.78)}
.plg-hero--inner .plg-breadcrumb a:hover{color:var(--accent)}

/* ============================================================
   PAGE HEADER (legal / inner, no hero)
   ============================================================ */
.plg-page-header{
  position:relative;
  padding-block:var(--sp-4) var(--sp-3);
  background:rgba(64,30,92,.05);
  border-bottom:1px solid var(--border);
}
.plg-page-header h1{margin-top:.3rem;text-wrap:balance}
.plg-page-header .plg-lead{margin-top:.5rem}

.plg-breadcrumb{font-size:.8rem;color:var(--text-muted)}
.plg-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}
.plg-breadcrumb li{display:flex;align-items:center;gap:.35rem}
.plg-breadcrumb li+li::before{content:"/";color:var(--border-gold);font-weight:600}
.plg-breadcrumb a{color:var(--text-muted);text-decoration:none}
.plg-breadcrumb a:hover{color:var(--accent);text-decoration:underline}
.plg-breadcrumb [aria-current="page"]{color:var(--text-main)}

/* ============================================================
   TEXT / OVERVIEW
   ============================================================ */
.plg-prose > *+*{margin-top:var(--sp-2)}
.plg-prose h2{margin-top:var(--sp-4)}
.plg-prose h3{margin-top:var(--sp-3)}
.plg-prose ul{display:flex;flex-direction:column;gap:.4rem}
.plg-prose ul li{position:relative;padding-inline-start:1.1rem}
.plg-prose ul li::before{
  content:"";position:absolute;inset-inline-start:0;top:.6em;
  width:6px;height:6px;border-radius:2px;background:var(--accent);
}
.plg-prose a{color:#0A6B4E;text-underline-offset:2px}
.plg-prose strong{font-weight:600}

/* callouts — «dobrze wiedzieć» / «uwaga» */
.plg-note{
  display:flex;gap:var(--sp-2);
  padding:var(--sp-2) var(--sp-3);
  border-radius:var(--r-card);
  background:var(--bg-card);
  border:1px solid var(--border);
  border-inline-start:3px solid var(--accent);
  box-shadow:var(--shadow-sm);
  margin-block:var(--sp-3);
}
.plg-note > *{min-width:0}
.plg-note__title{font-family:var(--font-head);font-weight:700;font-size:1rem;margin-bottom:.25rem}
.plg-note .plg-icon{color:var(--accent);margin-top:.15rem}
.plg-note--warn{border-inline-start-color:var(--accent-2)}
.plg-note--warn .plg-icon{color:var(--accent-2)}

/* ============================================================
   TOC
   ============================================================ */
.plg-toc{
  background:var(--glass);
  backdrop-filter:blur(14px) saturate(150%);
  -webkit-backdrop-filter:blur(14px) saturate(150%);
  border:1px solid var(--border-gold);
  border-radius:var(--r-card);
  padding:var(--sp-3);
  box-shadow:var(--shadow-sm);
}
.plg-toc__title{
  font-family:var(--font-body);
  font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--text-muted);margin-bottom:var(--sp-2);
}
.plg-toc ol{counter-reset:toc;display:grid;gap:.15rem;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}
.plg-toc li{counter-increment:toc;min-width:0}
.plg-toc a{
  display:flex;gap:.55rem;align-items:baseline;
  padding:.4rem .5rem;border-radius:var(--r-chip);
  font-size:.9rem;color:var(--text-main);text-decoration:none;
}
.plg-toc a::before{
  content:counter(toc,decimal-leading-zero);
  font-size:.72rem;font-weight:600;color:var(--accent-2);flex-shrink:0;
}
.plg-toc a:hover{background:rgba(0,201,141,.1);color:#04553C}

/* ============================================================
   FEATURE CARDS — pattern: grid
   ============================================================ */
.plg-features{display:grid;gap:var(--sp-2);grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.plg-features > *{min-width:0}
.plg-feature{
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--r-card);
  padding:var(--sp-3);
  box-shadow:var(--shadow-sm);
  transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;
}
.plg-feature:hover{transform:translateY(-2px);border-color:transparent;box-shadow:var(--glow)}
.plg-feature__icon{
  display:inline-grid;place-items:center;
  width:42px;height:42px;margin-bottom:var(--sp-2);
  border-radius:var(--r-chip);
  background:rgba(0,201,141,.13);
  color:#07archive;
  color:#046B4E;
}
.plg-feature__title{font-family:var(--font-head);font-size:1.08rem;margin-bottom:.35rem}
.plg-feature__text{font-size:.92rem;color:var(--text-muted)}

/* ============================================================
   CARDS GRID
   ============================================================ */
.plg-cards{display:grid;gap:var(--sp-2);grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.plg-cards > *{min-width:0}
.plg-card{
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--r-card);
  padding:var(--sp-3);
  box-shadow:var(--shadow-sm);
  display:flex;flex-direction:column;gap:.4rem;
}
.plg-card__label{
  font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2);
}
.plg-card__title{font-family:var(--font-head);font-size:1.1rem}
.plg-card__text{font-size:.92rem;color:var(--text-muted)}
.plg-card__value{font-family:var(--font-head);font-size:1.5rem;color:#046B4E}
.plg-card .plg-btn{margin-top:auto;align-self:flex-start}

/* ============================================================
   DATA TABLE
   ============================================================ */
.plg-table-wrap{overflow-x:auto;max-width:100%;margin-block:1.5rem;-webkit-overflow-scrolling:touch;
  border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-card)}
.plg-table{width:100%;border-collapse:collapse;font-size:.92rem;min-width:520px}
.plg-table th,.plg-table td{padding:.62rem .8rem;text-align:start;border-bottom:1px solid var(--border);vertical-align:top}
.plg-table th{
  white-space:nowrap;
  font-family:var(--font-body);font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--text-muted);background:rgba(64,30,92,.06);
}
.plg-table tbody tr:last-child td{border-bottom:0}
.plg-table tbody tr:hover{background:rgba(0,201,141,.06)}
.plg-table caption{caption-side:bottom;padding:.6rem .8rem;font-size:.78rem;color:var(--text-muted);text-align:start}
.plg-table td b,.plg-table td strong{font-weight:600;color:var(--text-main)}

/* ============================================================
   TWO COLS + CONTENT PANEL
   ============================================================ */
.plg-twocols{display:grid;gap:var(--sp-3);grid-template-columns:1fr}
.plg-twocols > *{min-width:0}
@media (min-width:900px){.plg-twocols{grid-template-columns:1.35fr .95fr;align-items:start}}

.plg-panel{
  background:var(--bg-card);
  border:1px solid var(--border-gold);
  border-radius:var(--r-card);
  padding:var(--sp-3);
  box-shadow:var(--shadow-sm);
}
.plg-panel__title{
  font-family:var(--font-body);
  font-size:.72rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;
  color:var(--text-muted);
  margin-bottom:var(--sp-2);
}
.plg-facts{display:flex;flex-direction:column}
.plg-facts__row{
  display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;align-items:baseline;
  padding:.5rem 0;border-bottom:1px solid var(--border);
}
.plg-facts__row:last-child{border-bottom:0}
.plg-facts dt{font-size:.86rem;color:var(--text-muted);min-width:0}
.plg-facts dd{font-size:.9rem;font-weight:600;text-align:end;min-width:0}

.plg-checklist{display:flex;flex-direction:column;gap:.5rem}
.plg-checklist li{display:flex;gap:.55rem;align-items:flex-start;font-size:.9rem}
.plg-checklist li > *{min-width:0}
.plg-checklist .plg-icon{color:var(--accent);margin-top:.05rem}

.plg-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(120px,100%),1fr));gap:.5rem}
.plg-tile{
  background:var(--glass);border:1px solid var(--border);border-radius:var(--r-chip);
  padding:.6rem .7rem;min-width:0;
}
.plg-tile__value{font-family:var(--font-head);font-size:1.24rem;line-height:1.1;color:#046B4E}
.plg-tile__label{font-size:.72rem;color:var(--text-muted);margin-top:.15rem}

.plg-score{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}
.plg-score__value{
  font-family:var(--font-head);font-size:2.1rem;line-height:1;color:var(--text-main);
}
.plg-score__value small{font-size:.9rem;color:var(--text-muted);font-family:var(--font-body)}
.plg-score__stars{display:flex;gap:.1rem;color:var(--accent-2)}
.plg-score__stars .plg-icon{width:1.05rem;height:1.05rem;fill:currentColor;stroke:none}
.plg-score__label{font-size:.8rem;color:var(--text-muted);width:100%}

/* ============================================================
   NUMBERED LIST (kroki)
   ============================================================ */
.plg-steps{counter-reset:step;display:flex;flex-direction:column;gap:var(--sp-2)}
.plg-steps > li{
  counter-increment:step;
  position:relative;
  padding:var(--sp-2) var(--sp-3) var(--sp-2) 3.1rem;
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--r-card);
  min-width:0;
}
.plg-steps > li::before{
  content:counter(step,decimal-leading-zero);
  position:absolute;inset-inline-start:.85rem;top:calc(var(--sp-2) + .05rem);
  font-family:var(--font-head);font-size:1.05rem;font-weight:700;
  color:var(--accent-2);
}
.plg-steps > li[dir],.plg-steps > li{padding-inline:3.1rem var(--sp-3)}
.plg-steps__title{font-family:var(--font-head);font-size:1.05rem;margin-bottom:.2rem}
.plg-steps p{font-size:.92rem;color:var(--text-muted)}

/* ============================================================
   STATS BAR — pattern: strip
   ============================================================ */
.plg-stats{
  display:flex;flex-wrap:wrap;
  border:1px solid var(--border);border-radius:var(--r-card);
  background:var(--bg-card);
  overflow:hidden;
}
.plg-stats__item{
  flex:1 1 150px;min-width:0;
  padding:.75rem 1rem;
  border-inline-start:1px solid var(--border);
}
.plg-stats__item:first-child{border-inline-start:0}
.plg-stats__value{font-family:var(--font-head);font-size:clamp(1.2rem,2.4vw,1.6rem);line-height:1.1;color:var(--text-main)}
.plg-stats__label{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-top:.2rem}

/* ============================================================
   CATEGORIES BAR (pills)
   ============================================================ */
.plg-pills{display:flex;flex-wrap:wrap;gap:.4rem}
.plg-pill{
  display:inline-flex;align-items:center;gap:.35rem;
  padding:.35rem .7rem;
  border-radius:var(--r-chip);
  border:1px solid var(--border);
  background:var(--bg-card);
  font-size:.82rem;color:var(--text-main);text-decoration:none;
  transition:box-shadow .16s ease,color .16s ease;
}
.plg-pill:hover{box-shadow:var(--glow);color:#04553C}
.plg-pill--gold{border-color:var(--border-gold);color:#7A6314}

/* ============================================================
   REVIEWS
   ============================================================ */
.plg-reviews{display:grid;gap:var(--sp-2);grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.plg-reviews > *{min-width:0}
.plg-review{
  background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-card);
  padding:var(--sp-3);box-shadow:var(--shadow-sm);
  display:flex;flex-direction:column;gap:.5rem;
}
.plg-review__stars{display:flex;gap:.1rem;color:var(--accent-2)}
.plg-review__stars .plg-icon{width:1rem;height:1rem;fill:currentColor;stroke:none}
.plg-review__text{font-size:.92rem}
.plg-review__meta{font-size:.78rem;color:var(--text-muted);margin-top:auto}

/* ============================================================
   FAQ — pattern: boxed
   ============================================================ */
.plg-faq{display:flex;flex-direction:column;gap:.55rem}
.plg-faq details{
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--r-card);
  padding:0 var(--sp-3);
  box-shadow:var(--shadow-sm);
  transition:border-color .2s ease,box-shadow .2s ease;
}
.plg-faq details[open]{border-color:var(--border-gold)}
.plg-faq summary{cursor:pointer;padding:1rem 0;font-weight:600;list-style:none;display:flex;gap:.5rem;align-items:baseline}
.plg-faq summary::-webkit-details-marker{display:none}
.plg-faq summary::before{content:'+';margin-right:.5rem;transition:transform .2s;color:var(--accent);font-weight:700;flex-shrink:0}
.plg-faq details[open] summary::before{content:'−'}
.plg-faq details > :not(summary){padding:.5rem 0 1rem;font-size:.93rem;color:var(--text-muted)}
.plg-faq details > :not(summary) p+p{margin-top:.5rem}

/* generic fallback for details outside .plg-faq */
details summary{cursor:pointer;padding:1rem 0;font-weight:600;list-style:none}
details summary::before{content:'+';margin-right:.5rem;transition:transform .2s}
details[open] summary::before{content:'−'}
details > :not(summary){padding:.5rem 0 1rem}

/* ============================================================
   CTA BLOCK
   ============================================================ */
.plg-cta{
  position:relative;
  padding-block:var(--sec-pad);
  background:linear-gradient(115deg,#241733 0%,#3B2154 55%,#0F5C46 100%);
  color:var(--text-on-deep);
  overflow:hidden;
}
.plg-cta::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 1px,transparent 1px 4px);
}
.plg-cta__inner{
  position:relative;z-index:1;
  display:flex;flex-direction:column;gap:var(--sp-2);
  text-align:center;align-items:center;
}
.plg-cta .plg-eyebrow{color:var(--accent)}
.plg-cta h2{color:#fff;text-wrap:balance}
.plg-cta p{color:rgba(239,231,247,.85);font-size:1rem}
.plg-cta__actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);justify-content:center}
.plg-cta__fine{font-size:.78rem;color:rgba(239,231,247,.62)}
.plg-cta .plg-btn--ghost{color:#fff;border-color:rgba(255,255,255,.35)}
.plg-cta .plg-btn--ghost:hover{background:rgba(255,255,255,.1);color:#fff}

/* ============================================================
   LEGAL BODY
   ============================================================ */
.plg-legal{counter-reset:legal}
.plg-legal > section{margin-bottom:var(--sp-4)}
.plg-legal h2{counter-increment:legal;display:flex;gap:.6rem;align-items:baseline;margin-bottom:var(--sp-2)}
.plg-legal h2::before{
  content:counter(legal) ".";
  font-size:.85em;color:var(--accent-2);flex-shrink:0;
}
.plg-legal h3{margin:var(--sp-3) 0 .4rem}
.plg-legal p{margin-bottom:.6rem;color:var(--text-main)}
.plg-legal ul{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.6rem}
.plg-legal ul li{position:relative;padding-inline-start:1.05rem;font-size:.95rem}
.plg-legal ul li::before{
  content:"";position:absolute;inset-inline-start:0;top:.62em;
  width:5px;height:5px;border-radius:1px;background:var(--accent-2);
}
.plg-legal__updated{font-size:.8rem;color:var(--text-muted);margin-bottom:var(--sp-3)}

/* ============================================================
   PAYMENTS TABLE
   ============================================================ */
.plg-payments{width:100%;border-collapse:collapse;font-size:.92rem;min-width:600px}
.plg-payments th,.plg-payments td{padding:.62rem .8rem;text-align:start;border-bottom:1px solid var(--border)}
.plg-payments th{white-space:nowrap;font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--text-muted);background:rgba(64,30,92,.06)}
.plg-payments tbody tr:last-child td{border-bottom:0}
.plg-payments__method{display:flex;align-items:center;gap:.5rem;font-weight:600;white-space:nowrap}
.plg-payments__method .plg-icon{color:var(--accent)}

/* ============================================================
   RTP GRID
   ============================================================ */
.plg-rtp{display:grid;gap:clamp(.6rem,1.5vw,1rem);grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:640px){.plg-rtp{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:960px){.plg-rtp{grid-template-columns:repeat(4,minmax(0,1fr))}}
.plg-rtp-item{
  position:relative;overflow:hidden;min-width:0;
  border-radius:var(--r-card);
  border:1px solid var(--border);
  background:var(--bg-card);
  transition:box-shadow .2s ease,transform .2s ease;
}
.plg-rtp-item:hover{transform:translateY(-2px);box-shadow:var(--glow)}
.plg-rtp-item__thumb{
  aspect-ratio:3/2;position:relative;
  background:linear-gradient(135deg,#31204A 0%,#4A2C66 50%,#0F5C46 100%);
}
.plg-rtp-item__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.plg-rtp-item__name{
  padding:.5rem .6rem;font-size:.84rem;font-weight:600;line-height:1.25;
  overflow-wrap:anywhere;
}
.plg-rtp-tooltip{
  position:absolute;bottom:0;left:0;right:0;
  opacity:0;transition:opacity .2s;
  padding:.45rem .6rem;
  background:linear-gradient(180deg,rgba(15,9,24,0),rgba(15,9,24,.92));
  color:#fff;font-size:.76rem;
}
.plg-rtp-item:hover .plg-rtp-tooltip,
.plg-rtp-item:focus-within .plg-rtp-tooltip{opacity:1}
.plg-rtp-tooltip b{color:var(--accent)}

/* ============================================================
   STICKY NAV (mobile)
   ============================================================ */
.plg-sticky-nav{display:none}
@media (max-width:767px){
  .plg-sticky-nav{
    display:flex;position:fixed;bottom:0;left:0;right:0;z-index:800;
    background:rgba(251,248,253,.94);
    backdrop-filter:blur(14px) saturate(150%);
    -webkit-backdrop-filter:blur(14px) saturate(150%);
    border-top:1px solid var(--border);
    padding:.35rem .3rem calc(.35rem + env(safe-area-inset-bottom));
  }
  .plg-sticky-nav a{
    flex:1 1 0;min-width:0;
    display:flex;flex-direction:column;align-items:center;gap:.15rem;
    padding:.35rem .2rem;text-decoration:none;
    font-size:.66rem;color:var(--text-muted);text-align:center;
  }
  .plg-sticky-nav a .plg-icon{width:1.25rem;height:1.25rem;color:var(--text-muted)}
  .plg-sticky-nav a.is-cta{color:#04553C}
  .plg-sticky-nav a.is-cta .plg-icon{color:var(--accent)}
  body{padding-bottom:56px}
}

/* ============================================================
   CHAT WIDGET
   ============================================================ */
.plg-chat{position:fixed;right:1rem;bottom:1rem;z-index:850}
@media (max-width:767px){.plg-chat{bottom:64px}}
.plg-chat__btn{
  display:inline-flex;align-items:center;gap:.45rem;
  padding:.65rem .95rem;border:0;border-radius:var(--r-btn);
  background:var(--bg-deep);color:#fff;font-family:var(--font-body);font-size:.85rem;font-weight:600;
  cursor:pointer;box-shadow:var(--shadow-md);
}
.plg-chat__btn:hover{box-shadow:var(--glow)}
.plg-chat__btn .plg-icon{color:var(--accent)}
.plg-chat__dialog{
  display:none;position:absolute;right:0;bottom:calc(100% + .5rem);
  width:min(300px,calc(100vw - 2rem));
  background:var(--bg-card);border:1px solid var(--border-gold);border-radius:var(--r-card);
  padding:var(--sp-3);box-shadow:var(--shadow-md);
}
.plg-chat.is-open .plg-chat__dialog{display:block}
.plg-chat__dialog p{font-size:.88rem;color:var(--text-muted)}

/* ============================================================
   FOOTER  (deep plum surface)
   ============================================================ */
.plg-footer{
  background:var(--bg-deep);
  color:var(--text-on-deep);
  border-top:1px solid var(--border-gold);
  padding-block:var(--sp-5) var(--sp-3);
  margin-top:var(--sp-5);
}
.plg-footer__grid{
  display:grid;gap:var(--sp-4);
  grid-template-columns:1fr;
}
.plg-footer__grid > *{min-width:0}
@media (min-width:760px){.plg-footer__grid{grid-template-columns:1.4fr 1fr 1fr}}
.plg-footer .plg-logo{color:#fff}
.plg-footer .plg-logo__mark{background:var(--accent);color:#08261C;box-shadow:none}
.plg-footer .plg-logo__text i{color:var(--accent-2)}
.plg-footer__about{font-size:.86rem;color:rgba(239,231,247,.72);margin-top:var(--sp-2);max-width:46ch}
.plg-footer__contact{font-size:.86rem;color:rgba(239,231,247,.72);margin-top:var(--sp-2)}
.plg-footer__contact a{color:var(--accent);text-decoration:none}
.plg-footer__contact a:hover{text-decoration:underline}
.plg-footer__title{
  font-family:var(--font-body);font-size:.72rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;
  color:var(--accent-2);margin-bottom:var(--sp-2);
}
.plg-footer__links{display:flex;flex-direction:column;gap:.45rem}
.plg-footer__links a{font-size:.9rem;color:rgba(239,231,247,.82);text-decoration:none}
.plg-footer__links a:hover{color:var(--accent)}
.plg-footer__badges{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:var(--sp-3)}
.plg-badge{
  display:inline-flex;align-items:center;gap:.3rem;
  padding:.28rem .55rem;border-radius:var(--r-chip);
  border:1px solid rgba(201,162,39,.45);
  font-size:.72rem;font-weight:600;color:var(--accent-2);
}
.plg-footer__disclaimer{
  margin-top:var(--sp-4);padding-top:var(--sp-3);
  border-top:1px solid rgba(201,162,39,.25);
  font-size:.78rem;line-height:1.5;color:rgba(239,231,247,.62);
}
.plg-footer__disclaimer p+p{margin-top:.45rem}
.plg-footer__disclaimer a{color:rgba(239,231,247,.8)}
.plg-footer__bottom{
  margin-top:var(--sp-3);padding-top:var(--sp-2);
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;flex-wrap:wrap;gap:.5rem var(--sp-3);justify-content:space-between;align-items:center;
  font-size:.76rem;color:rgba(239,231,247,.55);
}
.plg-footer__bottom nav{display:flex;flex-wrap:wrap;gap:.5rem var(--sp-2)}
.plg-footer__bottom a{color:rgba(239,231,247,.68);text-decoration:none}
.plg-footer__bottom a:hover{color:var(--accent)}

/* ============================================================
   RESPONSIVE TAIL
   ============================================================ */
@media (max-width:520px){
  :root{--gutter:.95rem}
  .plg-logo{font-size:1.08rem}
  .plg-logo__img{height:34px;max-width:min(45vw,150px)}
  .plg-stats__item{flex:1 1 50%;border-inline-start:0;border-top:1px solid var(--border)}
  .plg-stats__item:nth-child(-n+2){border-top:0}
  .plg-hero--home{padding-block:1.75rem}
}
/* sa-responsive-net */
table th{white-space:nowrap}
figure,blockquote,dl,dd,fieldset{margin:0}
/* sa-logo-fit */
.plg-logo__img{object-fit:contain}
/* sa-ph-media */
.plg-page-header:has(.plg-hero__img){position:relative;overflow:hidden;isolation:isolate;min-height:clamp(200px,30vh,300px);display:flex;flex-direction:column;justify-content:center}
.plg-page-header:has(.plg-hero__img) .plg-hero__img{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;margin:0;z-index:0}
.plg-page-header:has(.plg-hero__img)::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,12,18,.72),rgba(10,12,18,.5))}
:where(.plg-page-header:has(.plg-hero__img)>:not(.plg-hero__img)){position:relative}
.plg-page-header:has(.plg-hero__img)>:not(.plg-hero__img){z-index:2}
.plg-page-header:has(.plg-hero__img),.plg-page-header:has(.plg-hero__img) h1,.plg-page-header:has(.plg-hero__img) a,.plg-page-header:has(.plg-hero__img) p,.plg-page-header:has(.plg-hero__img) li,.plg-page-header:has(.plg-hero__img) span{color:#fff}
/* sa-hero-media */
.plg-hero:has(>.plg-hero__img){position:relative;isolation:isolate}
.plg-hero:has(>.plg-hero__img)>.plg-hero__img{z-index:0}
.plg-hero:has(>.plg-hero__img)::after{z-index:1}
:where(.plg-hero:has(>.plg-hero__img)>:not(.plg-hero__img)){position:relative}
.plg-hero:has(>.plg-hero__img)>:not(.plg-hero__img){z-index:2}
/* sa-rhythm */
:where(.plg-table-wrap){margin-block:1.5rem}
:where(main) :where(ul,ol,table,.plg-table-wrap)+p{margin-block-start:1rem}
/* sa-slot-link */
.plg-rtp-item,.plg-rtp-item:hover,.plg-rtp-item:focus{color:inherit;text-decoration:none;cursor:pointer}
/* sa-logo-chip */
.plg-footer .plg-logo__img{filter:none;background:transparent;padding:0}
.plg-footer .plg-footer__logo-chip{background:transparent;padding:0}
