/* Praxoria premium reduction layer – visual polish for public pages.
   Scope: public marketing, course detail, checkout, quality, verification and legal pages.
   Excluded by linkage: learn.html and buy-transfer.html. */

:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage, body.legalPage){
  --premium-paper: color-mix(in oklab, var(--bg-bottom) 88%, white 12%);
  --premium-ink: color-mix(in oklab, var(--text) 92%, #111827 8%);
  --premium-line: color-mix(in oklab, var(--border) 74%, transparent);
  --premium-line-strong: color-mix(in oklab, var(--border-strong) 62%, transparent);
  --premium-muted: color-mix(in oklab, var(--text) 60%, var(--muted2));
  --premium-glow: 0 24px 70px rgba(15,23,42,.09);
  --premium-soft: 0 8px 22px rgba(15,23,42,.045);
}

:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage, body.legalPage) .container{
  max-width: 1160px;
}

/* calmer global interaction on the polished public surfaces */
:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage, body.legalPage) .card:hover{
  transform:none;
  box-shadow: var(--premium-soft);
  border-color: var(--premium-line-strong);
}

:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage, body.legalPage) .hero.heroPanel,
body.qualityPage .qHero{
  border-radius: 32px;
  border-color: var(--premium-line);
  background:
    radial-gradient(780px 480px at 7% 4%, color-mix(in oklab, var(--accent) 9%, transparent), transparent 62%),
    radial-gradient(720px 460px at 80% 0%, color-mix(in oklab, var(--accent3) 7%, transparent), transparent 64%),
    linear-gradient(180deg, color-mix(in oklab, var(--surface) 96%, white 4%), color-mix(in oklab, var(--surface2) 48%, transparent));
  box-shadow: var(--premium-glow);
}

:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage, body.legalPage) .hero h1,
body.qualityPage .qHero h1{
  max-width: 12ch;
  letter-spacing: -.035em;
}

:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage, body.legalPage) .hero p,
body.qualityPage .qHero .subline{
  font-size: clamp(1rem, 1.3vw, 1.09rem);
  line-height: 1.72;
}

/* Navigation: text navigation instead of pill navigation on polished public pages. */
:where(body.home, body.courseInfo, body.buy, body.verify) .topbar .deskNav > a.pill{
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:3px 0 10px !important;
}

/* Meta lines replace decorative pills and tags. */
:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage) .tagRow{
  display:flex !important;
  align-items:center;
  flex-wrap:wrap;
  gap:0 !important;
  margin:12px 0 8px !important;
  color: var(--premium-muted);
}

:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage) .tagRow .tag,
:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage) .heroValuePill,
body.qualityPage .qChip,
body.qualityPage .taskBadge,
body.qualityPage .taskPill{
  display:inline-flex;
  align-items:center;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color: var(--premium-muted) !important;
  font-size:.82rem;
  font-weight:650;
  letter-spacing:.005em;
}

:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage) .tagRow .tag + .tag::before,
:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage) .heroValuePill + .heroValuePill::before,
body.qualityPage .qChip + .qChip::before,
body.qualityPage .taskBadge + .taskBadge::before{
  content:"·" !important;
  display:inline-block !important;
  width:auto !important;
  height:auto !important;
  margin:0 .55rem !important;
  background:transparent !important;
  color: color-mix(in oklab, var(--premium-muted) 70%, transparent) !important;
  position:static !important;
  transform:none !important;
  box-shadow:none !important;
}

body.home .tag.brandTag{
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.76rem;
}

/* Buttons: stronger hierarchy, less chrome. */
:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage, body.legalPage) .btn:not(.primary){
  background:transparent;
  box-shadow:none;
}
:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage, body.legalPage) .btn.ghost{
  border-color: color-mix(in oklab, var(--border) 72%, transparent);
}
:where(body.home, body.courseInfo, body.buy, body.verify, body.qualityPage, body.legalPage) .btn.primary{
  border:0;
  background: linear-gradient(135deg,
    color-mix(in oklab, var(--accent) 88%, #0f172a 12%),
    color-mix(in oklab, var(--accent3) 78%, var(--accent) 22%)
  );
  color:#fff;
  box-shadow: 0 14px 32px color-mix(in oklab, var(--accent) 22%, transparent);
}

/* HOME ------------------------------------------------------------------ */
body.home .heroKicker{ gap:14px; }
body.home .heroMicroNote{
  color: var(--premium-muted);
  border-left: 2px solid color-mix(in oklab, var(--accent) 38%, var(--border));
  padding-left: 12px;
}

body.home .heroFocus{
  margin-top: 26px;
}
body.home .heroValueGrid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:0 !important;
  border-top:1px solid var(--premium-line);
  border-bottom:1px solid var(--premium-line);
}
body.home .heroValueCard,
body.home .heroValueCard.is-featured{
  min-height:0 !important;
  padding:22px 24px 22px 0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  transform:none !important;
}
body.home .heroValueCard + .heroValueCard{
  border-left:1px solid var(--premium-line) !important;
  padding-left:24px !important;
}
body.home .heroValueCard::before,
body.home .heroValueCard::after,
body.home .heroValuePill::before{
  display:none !important;
}
body.home .heroValueHead{
  gap:8px;
}
body.home .heroValueBadge,
body.home .heroValueCard.is-featured .heroValueBadge{
  display:block;
  padding:0;
  border:0;
  background:transparent;
  color: var(--muted2);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.71rem;
  box-shadow:none;
}
body.home .heroValueTitle{
  font-size:1.03rem;
  letter-spacing:-.018em;
}
body.home .heroValueText{
  color: var(--muted);
  line-height:1.66;
}
body.home .heroValueMeta{
  gap:0 !important;
  margin-top:14px;
}
@media (max-width: 840px){
  body.home .heroValueGrid{ grid-template-columns:1fr; }
  body.home .heroValueCard{ padding:18px 0 !important; }
  body.home .heroValueCard + .heroValueCard{
    border-left:0 !important;
    border-top:1px solid var(--premium-line) !important;
    padding-left:0 !important;
  }
}

body.home .band.startBand,
body.home .whyBand,
body.home .moodBand,
body.home .faqBand{
  border:0 !important;
  border-top:1px solid var(--premium-line) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:34px 0 0 !important;
}
body.home .pillar,
body.home .whyBand .featureCard,
body.home details.faq{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  transform:none !important;
}
body.home .pillar{
  padding:0 24px 0 0 !important;
}
body.home .pillar + .pillar{
  border-left:1px solid var(--premium-line) !important;
  padding-left:24px !important;
}
body.home .pillar::after,
body.home .whyBand .featureCard::before,
body.home .pillarMeta span::before{
  display:none !important;
}
body.home .pillarMeta,
body.home .courseCard .tagRow,
body.home .qualityCopy .tagRow{
  gap:0 !important;
}
body.home .pillarMeta span,
body.home .qualityRoleMeta span,
body.home .qualityProofMeta span,
body.home .qualityMiniCard{
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}
body.home .pillarMeta span + span::before,
body.home .qualityRoleMeta span + span::before,
body.home .qualityProofMeta span + span::before{
  content:"·";
  margin:0 .5rem;
  color: color-mix(in oklab, var(--premium-muted) 70%, transparent);
}
body.home .pillarPreview{
  background: color-mix(in oklab, var(--surface2) 62%, transparent) !important;
  border-color: var(--premium-line) !important;
  box-shadow:none !important;
}
body.home .qualityBand{
  border:0 !important;
  border-top:1px solid var(--premium-line) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:34px 0 0 !important;
}
body.home .qualityBand::after{ display:none !important; }
body.home .qualitySurface{
  border:1px solid var(--premium-line) !important;
  background: color-mix(in oklab, var(--surface) 70%, transparent) !important;
  box-shadow: var(--premium-soft) !important;
}
body.home .qualityRoleCard{
  border:0 !important;
  border-left:2px solid color-mix(in oklab, var(--qAcc) 44%, var(--border)) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:6px 0 8px 18px !important;
}
body.home .qualityRoleCard + .qualityRoleCard{
  border-top:1px solid var(--premium-line) !important;
  padding-top:18px !important;
}
body.home .qualityRoleCard.isOn{
  background: linear-gradient(90deg, color-mix(in oklab, var(--qAcc) 7%, transparent), transparent 60%) !important;
}
body.home .qualityRoleCard::before{ display:none !important; }
body.home .qualityRoleTop .sig{
  border:0 !important;
  background:transparent !important;
  padding:0 !important;
  color: color-mix(in oklab, var(--qAcc) 65%, var(--text)) !important;
}
body.home .courseCard{
  box-shadow: var(--premium-soft);
}

/* COURSE DETAIL ---------------------------------------------------------- */
body.courseInfo #tagRow{
  border-top:1px solid var(--premium-line);
  border-bottom:1px solid var(--premium-line);
  padding:10px 0;
}
body.courseInfo #tagRow .courseMetaItem{
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
body.courseInfo #tagRow .courseMetaItem + .courseMetaItem{
  margin-left:18px;
  padding-left:18px !important;
  border-left:1px solid var(--premium-line) !important;
}
body.courseInfo #facts{
  gap:0 !important;
  border-top:1px solid var(--premium-line);
  border-bottom:1px solid var(--premium-line);
}
body.courseInfo #facts .card{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:18px 18px 18px 0 !important;
}
body.courseInfo #facts .card + .card{
  border-left:1px solid var(--premium-line) !important;
  padding-left:18px !important;
}
body.courseInfo #hook,
body.courseInfo #goalsCard,
body.courseInfo #easyCard,
body.courseInfo #examCard{
  border:0 !important;
  border-top:1px solid var(--premium-line) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:18px 0 0 !important;
}
body.courseInfo .courseInfoSidebar{
  background: color-mix(in oklab, var(--surface) 92%, white 8%) !important;
  border-color: var(--premium-line) !important;
  box-shadow: var(--premium-glow) !important;
}
body.courseInfo .bundleBox,
body.courseInfo .promoAside{
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  border-left:2px solid color-mix(in oklab, var(--accent) 32%, var(--border)) !important;
}
@media (max-width: 760px){
  body.courseInfo #facts{ grid-template-columns:1fr; }
  body.courseInfo #facts .card + .card{
    border-left:0 !important;
    border-top:1px solid var(--premium-line) !important;
    padding-left:0 !important;
  }
  body.courseInfo #tagRow .courseMetaItem + .courseMetaItem{
    margin-left:0;
    padding-left:0 !important;
    border-left:0 !important;
  }
}

/* BUY -------------------------------------------------------------------- */
body.buy .heroHighlights{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:0 !important;
  margin-top:26px;
  border-top:1px solid var(--premium-line);
  border-bottom:1px solid var(--premium-line);
}
body.buy .benefitCard,
body.buy .benefitCard.isFeatured{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:20px 22px 20px 0 !important;
}
body.buy .benefitCard + .benefitCard{
  border-left:1px solid var(--premium-line) !important;
  padding-left:22px !important;
}
body.buy .benefitCard::before,
body.buy .benefitCard::after{ display:none !important; }
body.buy .benefitMeta{
  border:0 !important;
  background:transparent !important;
  padding:0 !important;
  color: var(--muted2) !important;
  letter-spacing:.14em;
  text-transform:uppercase;
}
body.buy .benefitCard h3 .icon{
  display:none !important;
}
body.buy .band{
  border:0 !important;
  border-top:1px solid var(--premium-line) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:34px 0 0 !important;
}
body.buy #checkoutCard{
  background: color-mix(in oklab, var(--surface) 94%, white 6%) !important;
  border-color: var(--premium-line) !important;
  box-shadow: var(--premium-glow) !important;
}
body.buy .checkoutStepper{
  gap:0 !important;
  margin:0 0 24px !important;
  padding:0 0 18px !important;
}
body.buy .stepChip{
  min-width:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:8px 18px 8px 0 !important;
}
body.buy .stepChip + .stepChip{
  border-left:1px solid var(--premium-line) !important;
  padding-left:18px !important;
}
body.buy .stepChip[aria-current="step"]{
  background:transparent !important;
  box-shadow:none !important;
}
body.buy .stepChip .stepDot{
  background:transparent !important;
  border-color: color-mix(in oklab, var(--accent) 42%, var(--border)) !important;
}
body.buy .stepChip[aria-current="step"] .stepDot{
  background: color-mix(in oklab, var(--accent) 12%, transparent) !important;
}
body.buy .checkoutGroup,
body.buy .checkoutAside,
body.buy .summaryCard{
  border-radius:0 !important;
  box-shadow:none !important;
}
body.buy .checkoutAside{
  border:0 !important;
  border-top:1px solid var(--premium-line) !important;
  background:transparent !important;
}
@media (max-width: 840px){
  body.buy .heroHighlights{ grid-template-columns:1fr; }
  body.buy .benefitCard{ padding:18px 0 !important; }
  body.buy .benefitCard + .benefitCard{
    border-left:0 !important;
    border-top:1px solid var(--premium-line) !important;
    padding-left:0 !important;
  }
  body.buy .checkoutStepper{ flex-wrap:wrap !important; }
  body.buy .stepChip{ flex:1 1 100%; }
  body.buy .stepChip + .stepChip{
    border-left:0 !important;
    border-top:1px solid var(--premium-line) !important;
    padding-left:0 !important;
  }
}

/* QUALITY ---------------------------------------------------------------- */
body.qualityPage .qHero{
  padding:34px 28px;
}
body.qualityPage .qSummary{
  background: color-mix(in oklab, var(--surface) 86%, white 14%) !important;
  border-color: var(--premium-line) !important;
  box-shadow: var(--premium-soft) !important;
}
body.qualityPage .band{
  border:0 !important;
  border-top:1px solid var(--premium-line) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:42px 0 0 !important;
  margin-top:0 !important;
}
body.qualityPage .qPillars{
  gap:0 !important;
  border-top:1px solid var(--premium-line);
  border-bottom:1px solid var(--premium-line);
}
body.qualityPage .qPillar{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:22px 24px 22px 0 !important;
}
body.qualityPage .qPillar + .qPillar{
  border-left:1px solid var(--premium-line) !important;
  padding-left:24px !important;
}
body.qualityPage .qDemo,
body.qualityPage .qCardPad,
body.qualityPage .qCycle,
body.qualityPage .qDetailCard,
body.qualityPage .qPredCalc,
body.qualityPage .qPredExamples,
body.qualityPage .qualitySurface{
  border-color: var(--premium-line) !important;
  background: color-mix(in oklab, var(--surface) 88%, white 12%) !important;
  box-shadow: var(--premium-soft) !important;
}
body.qualityPage .qDetailCard{
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  border-top:1px solid var(--premium-line) !important;
  padding:22px 0 0 !important;
}
body.qualityPage .qChipRow,
body.qualityPage .qCycleTags,
body.qualityPage .qualityProofMeta,
body.qualityPage .qualityRoleMeta,
body.qualityPage .taskMeta{
  gap:0 !important;
}
body.qualityPage .qualityRoleCard{
  border:0 !important;
  border-left:2px solid color-mix(in oklab, var(--qAcc) 44%, var(--border)) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:8px 0 10px 18px !important;
}
body.qualityPage .qualityRoleCard + .qualityRoleCard{
  border-top:1px solid var(--premium-line) !important;
  padding-top:20px !important;
}
body.qualityPage .qualityRoleCard::before{ display:none !important; }
body.qualityPage .qualityRoleCard.isOn{
  background: linear-gradient(90deg, color-mix(in oklab, var(--qAcc) 7%, transparent), transparent 60%) !important;
}
body.qualityPage .qualityRoleTop .sig,
body.qualityPage .qualityRoleMeta span,
body.qualityPage .qualityProofMeta span,
body.qualityPage .qualityMiniCard{
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}
body.qualityPage .qualityRoleMeta span + span::before,
body.qualityPage .qualityProofMeta span + span::before{
  content:"·";
  margin:0 .5rem;
  color: color-mix(in oklab, var(--premium-muted) 70%, transparent);
}
body.qualityPage .qPred{
  box-shadow:none !important;
}
@media (max-width: 860px){
  body.qualityPage .qPillars{ grid-template-columns:1fr; }
  body.qualityPage .qPillar{ padding:18px 0 !important; }
  body.qualityPage .qPillar + .qPillar{
    border-left:0 !important;
    border-top:1px solid var(--premium-line) !important;
    padding-left:0 !important;
  }
}

/* VERIFY ----------------------------------------------------------------- */
body.verify .tagRow{
  border-top:1px solid var(--premium-line);
  border-bottom:1px solid var(--premium-line);
  padding:10px 0;
}
body.verify #verifyCard{
  background: color-mix(in oklab, var(--surface) 96%, white 4%) !important;
  border-color: var(--premium-line) !important;
  box-shadow: var(--premium-glow) !important;
}
body.verify .verifySideCard,
body.verify .verifyResult,
body.verify .verifyCheckRow{
  border-radius:0 !important;
  box-shadow:none !important;
}

/* LEGAL ------------------------------------------------------------------ */
body.legalPage .hero.heroPanel{
  display:block;
  padding:32px 0 0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body.legalPage .hero.heroPanel::after{ display:none; }
body.legalPage .hero h1{
  max-width:none;
  margin-bottom:18px;
}
body.legalPage .hero .card{
  border-radius:0 !important;
  border:0 !important;
  border-top:1px solid var(--premium-line) !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:24px 0 0 !important;
}
body.legalPage .legalMeta{
  border:0 !important;
  border-bottom:1px solid var(--premium-line) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 0 16px !important;
}
body.legalPage .legalToc{
  border:0 !important;
  border-left:2px solid color-mix(in oklab, var(--accent) 36%, var(--border)) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 0 0 16px !important;
}
body.legalPage .legalTocList a{
  padding:2px 0 !important;
  border-radius:0 !important;
}
body.legalPage .legalTocList a:hover{
  background:transparent !important;
  text-decoration:underline;
}
body.legalPage .legalContent{
  font-size:16px;
  line-height:1.72;
}
body.legalPage .legalContent h2{
  border-top:1px solid color-mix(in oklab, var(--border) 58%, transparent);
  padding-top:18px;
}
body.legalPage .legalContent h2:first-child{
  border-top:0;
  padding-top:0;
}
@media (max-width: 900px){
  body.legalPage .legalGrid{ gap:26px; }
  body.legalPage .legalToc{
    border-left:0 !important;
    border-top:1px solid var(--premium-line) !important;
    padding:14px 0 0 !important;
  }
}

/* Separator restoration after older page-specific dot rules. */
body.home .heroValuePill + .heroValuePill::before{
  content:"·" !important;
  display:inline-block !important;
  width:auto !important;
  height:auto !important;
  margin:0 .55rem !important;
  background:transparent !important;
  color: color-mix(in oklab, var(--premium-muted) 70%, transparent) !important;
  position:static !important;
  transform:none !important;
  box-shadow:none !important;
}
body.home .pillarMeta span + span::before,
body.home .qualityRoleMeta span + span::before,
body.home .qualityProofMeta span + span::before,
body.qualityPage .qualityRoleMeta span + span::before,
body.qualityPage .qualityProofMeta span + span::before{
  display:inline-block !important;
}
