:root {
  --evk-paper: #F3EDE2;
  --evk-paper-2: #ECE4D6;
  --evk-cream: #F3EDE2;
  --evk-ink: #1B1712;
  --evk-ink-editorial: #1B1712;
  --evk-pine: #15352A;
  --evk-pine-2: #1D4A3A;
  --evk-pine-ink: #0E271F;
  --evk-honey: #C1872B;
  --evk-honey-deep: #A8721F;
  --evk-honey-bright: #D8A23F;
  --evk-line-solid: #CDBFA9;
  --evk-logo-teal: #1D9C9B;
  --evk-logo-gray: #646C6A;
  --evk-ui-teal-safe: #178582;
  --evk-accent: var(--evk-pine);
  --evk-accent-2: var(--evk-pine-2);
  --evk-accent-strong: var(--evk-honey);
  --evk-accent-strong-deep: var(--evk-honey-deep);
  --evk-font-heading: 'Fraunces', Georgia, 'Times New Roman', serif;
  --evk-font-body: 'Hanken Grotesk', Arial, Helvetica, system-ui, sans-serif;
  --evk-h1-size: clamp(2.3rem, 1.4rem + 3.2vw, 4.2rem);
  --evk-h1-weight: 600;
  --evk-body-size: 18px;
  --evk-body-line: 1.6;
  --evk-radius: 18px;
  --evk-radius-sm: 12px;
  --evk-content-max: 1220px;
  --evk-shadow: 0 1px 2px rgba(27, 23, 18, 0.06),
    0 8px 24px rgba(27, 23, 18, 0.08);
  --evk-shadow-sm: 0 1px 2px rgba(27, 23, 18, 0.06),
    0 2px 8px rgba(27, 23, 18, 0.06);
}
:root {
  --evk-line: #CDBFA9;
  --evk-ink-mid: rgba(27, 23, 18, 0.78);
  --evk-ink-soft: #5B5145;
  --evk-section-pad: clamp(3.4rem, 8vw, 6.5rem);
}

.evk-grain::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0.5;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.045'/%3E%3C/svg%3E");
}

.ed-section { padding-block: var(--evk-section-pad); }
.ed-measure { max-width: 66ch; }

.ed-eyebrow {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  font-family: var(--evk-font-body);
  font-weight: 600;
  font-size: 0.8rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--evk-accent);
  margin: 0 0 1.1rem;
}
.ed-eyebrow::after {
  content: "";
  height: 1px;
  width: clamp(2rem, 6vw, 4.5rem);
  background: var(--evk-accent-strong);
  flex: none;
}

.ed-eyebrow-spaced {
  font-family: var(--evk-font-body);
  font-weight: 600;
  font-size: 0.74rem;
  letter-spacing: 0.42em;
  text-transform: uppercase;
  color: var(--evk-ink-soft);
  margin: 0 0 1.2rem;
}

.ed-display {
  font-family: var(--evk-font-heading);
  font-weight: 600;
  font-size: clamp(2.6rem, 6vw, 4.6rem);
  line-height: 1.05;
  letter-spacing: -0.01em;
  color: var(--evk-pine);
  margin: 0;
}
.ed-display em { font-style: italic; color: var(--evk-pine-2); }

.ed-statement {
  font-family: var(--evk-font-heading);
  font-weight: 600;
  color: var(--evk-pine);
  font-size: clamp(2.2rem, 5.6vw, 4.2rem);
  line-height: 1.08;
  letter-spacing: -0.01em;
  max-width: 18ch;
  margin: 0;
}
.ed-statement em { font-style: italic; color: var(--evk-accent); }

.ed-register {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--evk-line);
}
.ed-register li {
  display: grid;
  grid-template-columns: 3.6rem 1fr auto;
  gap: clamp(1rem, 3vw, 2.4rem);
  align-items: baseline;
  padding: clamp(1.2rem, 2.6vw, 1.7rem) 0;
  border-bottom: 1px solid var(--evk-line);
}
.ed-register .no {
  font-family: var(--evk-font-heading);
  font-style: italic;
  font-weight: 400;
  font-size: 1.05rem;
  color: var(--evk-honey-deep);
}
.ed-register h3 { font-size: clamp(1.2rem, 2.2vw, 1.55rem); margin: 0 0 0.3rem; }
.ed-register p {
  margin: 0;
  color: var(--evk-ink-mid);
  font-size: 0.98rem;
  max-width: 58ch;
}
.ed-register .arrow {
  color: var(--evk-accent);
  font-size: 1.3rem;
  align-self: center;
  transition: transform 0.18s ease;
}
.ed-register li:hover .arrow { transform: translateX(5px); }

.ed-register.invite li {
  position: relative;
  z-index: 0;
  cursor: pointer;
  transition: padding 0.3s ease, color 0.3s ease;
}
.ed-register.invite li::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--evk-pine);
  border-radius: 10px;
  transform: scaleY(0);
  transform-origin: bottom;
  transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1);
  z-index: -1;
}
.ed-register.invite li[aria-disabled] { cursor: default; }
.ed-register.invite li:not([aria-disabled]):hover {
  padding-left: 1.4rem;
  padding-right: 1.2rem;
}
.ed-register.invite li:not([aria-disabled]):hover::after { transform: scaleY(1); }
.ed-register.invite li:not([aria-disabled]):hover .no { color: var(--evk-honey-bright); }
.ed-register.invite li:not([aria-disabled]):hover h3,
.evk-root .ed-register.invite li:not([aria-disabled]):hover h3 { color: var(--evk-cream); }
.ed-register.invite li:not([aria-disabled]):hover p { color: color-mix(in srgb, var(--evk-cream) 82%, var(--evk-pine)); }
.ed-register.invite li:not([aria-disabled]):hover .arrow {
  color: var(--evk-honey-bright);
  transform: translateX(6px);
}
@media (prefers-reduced-motion: reduce) {
  .ed-register.invite li,
  .ed-register.invite li::after,
  .ed-register .arrow { transition: none; }
}

.ed-roman {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.6rem, 4vw, 3.5rem);
}
.ed-roman .blk {
  border-top: 1px solid var(--evk-line);
  padding-top: 1.2rem;
}
.ed-roman .rn {
  font-family: var(--evk-font-heading);
  font-style: italic;
  font-weight: 400;
  font-size: 1.5rem;
  color: var(--evk-honey-deep);
  display: block;
  margin-bottom: 0.6rem;
}
.ed-roman h3 { font-size: 1.15rem; margin: 0 0 0.4rem; }
.ed-roman p { margin: 0; color: var(--evk-ink-mid); font-size: 0.95rem; }

.ed-factgrid { display: grid; grid-template-columns: 1fr 1fr; min-width: 0; }
.ed-factgrid .cell { padding: 1rem 1.05rem; min-width: 0; }
.ed-factgrid .cell:nth-child(odd) { border-right: 1px solid var(--evk-line); }
.ed-factgrid .cell:nth-child(-n+2) { border-bottom: 1px solid var(--evk-line); }
.ed-factgrid .k {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--evk-ink-soft);
  margin-bottom: 0.35rem;
}
.ed-factgrid .v {
  font-family: var(--evk-font-heading);
  font-weight: 600;
  font-size: 1.05rem;
  color: var(--evk-pine);
  line-height: 1.3;
  hyphens: auto;
}

.ed-monogram {
  background: var(--evk-honey);
  color: var(--evk-pine-ink);
  border-radius: var(--evk-radius);
  padding: clamp(1.8rem, 3.4vw, 2.6rem);
  box-shadow: var(--evk-shadow);
  transform: rotate(1.2deg);
  max-width: 22rem;
}
.ed-monogram .mono {
  font-family: var(--evk-font-heading);
  font-weight: 600;
  font-size: clamp(3.4rem, 7vw, 5.4rem);
  line-height: 0.92;
  letter-spacing: -0.02em;
  margin: 0 0 0.6rem;
  word-break: break-all;
}
.ed-monogram .cap { margin: 0; font-size: 0.95rem; font-weight: 600; line-height: 1.5; }

.ed-status {
  font-family: var(--evk-font-body);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  white-space: nowrap;
}
.ed-status.open { color: var(--evk-pine-2); }
.ed-status.soon { color: var(--evk-ink-soft); }

.ed-trust {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(1.2rem, 3vw, 2.4rem);
  border-top: 1px solid var(--evk-line);
  border-bottom: 1px solid var(--evk-line);
  padding: clamp(1.3rem, 2.6vw, 1.9rem) 0;
}
.ed-trust .item { display: grid; gap: 0.2rem; }
.ed-trust b {
  font-family: var(--evk-font-heading);
  font-weight: 600;
  font-size: 1.05rem;
  color: var(--evk-pine);
}
.ed-trust span { font-size: 0.86rem; color: var(--evk-ink-soft); line-height: 1.45; }
@media (max-width: 760px) { .ed-trust { grid-template-columns: 1fr 1fr; } }

.ed-darkband {
  background: var(--evk-pine-ink);
  color: var(--evk-cream);
  border-radius: var(--evk-radius);
  box-shadow: var(--evk-shadow);
  padding: clamp(2.6rem, 6vw, 4.5rem) clamp(1.8rem, 4.5vw, 4rem);
}
.ed-darkband .ed-eyebrow { color: var(--evk-honey); }
.ed-darkband .lead {
  font-family: var(--evk-font-heading);
  font-weight: 400;
  font-size: clamp(1.4rem, 2.8vw, 2.1rem);
  line-height: 1.45;
  color: var(--evk-cream);
  max-width: 30ch;
  margin: 0;
}
.ed-darkband .lead em { font-style: italic; color: var(--evk-honey); }

.ed-empty {
  border-left: 1px dashed rgba(27, 36, 30, 0.23);
  padding-left: clamp(1.2rem, 3vw, 2rem);
  max-width: 62ch;
}
.ed-empty h3 { color: var(--evk-pine); margin: 0 0 0.5rem; }
.ed-empty p { color: var(--evk-ink-mid); margin: 0 0 1.1rem; }

/* ============================================================================
   Editorial page patterns – ported 2026-07-12 from the designer package
   "DACA Pakett v2" visual/hub/editorial.css for the DACA v2 sales-page parity
   (docs/design/2026-07-12-daca-konversioonimasin-arhitektuur.md, slice 2).
   All colors re-expressed through --evk-* tokens; the designer's decorative
   em-dash list marker is rendered as an en-dash per the CLAUDE.md dash gate.
   Deliberately NOT ported: the global `main section` padding rule (use
   .ed-section) and the viljapea logo animation (ptk 15: homepage hero only).
   ========================================================================== */

:root {
  --evk-accent-deep: var(--evk-pine-ink);
  --evk-ink-faint: #8A8478;
  --evk-shadow-lift: 0 1px 2px rgba(27, 23, 18, 0.08),
    0 30px 60px -22px rgba(14, 39, 31, 0.28);
}

.sec-head { margin: 0 0 clamp(2rem, 4vw, 3rem); }
.sec-head .sub { max-width: 60ch; }

/* ---- HERO — asymmetric: text + floating fact grid + watermark ---- */
.ed-hero { position: relative; padding-top: clamp(2.4rem, 5vw, 4rem); }
.ed-watermark { position: absolute; z-index: 0; right: -2%; top: -6%; pointer-events: none; user-select: none;
  font-family: var(--evk-font-heading); font-weight: 600; line-height: 1; font-size: clamp(9rem, 24vw, 20rem);
  color: transparent; -webkit-text-stroke: 1.5px color-mix(in srgb, var(--evk-accent) 22%, transparent); }
.ed-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.1fr 0.9fr;
  gap: clamp(2rem, 5vw, 4.5rem); align-items: start; }
@media (max-width: 880px) { .ed-hero-grid { grid-template-columns: 1fr; } }
.ed-hero-grid > div { min-width: 0; }
.ed-hero .kicker { background: none; border: 0; padding: 0; color: var(--evk-accent-2); letter-spacing: 0.16em; margin: 0 0 1.4rem; }
.ed-hero h1 { max-width: 15ch; font-size: clamp(2.4rem, 4.8vw, 4rem); letter-spacing: -0.01em; hyphens: auto; overflow-wrap: break-word; }
.ed-hero .lede { max-width: 34ch; }
.ed-hero .hero-angle { max-width: 52ch; line-height: 1.7; }

/* ---- Floating fact card + 2x2 grid cells ---- */
.ed-factcard { margin-top: clamp(1rem, 4vw, 3.5rem); background: var(--evk-paper-2);
  border: 1px solid var(--evk-line); border-radius: var(--evk-radius); box-shadow: var(--evk-shadow);
  padding: clamp(1.4rem, 2.6vw, 2rem); }
.ed-factgrid .cell { padding: 1rem 1.05rem; min-width: 0; }
.ed-factgrid .cell:nth-child(odd) { border-right: 1px solid var(--evk-line); }
.ed-factgrid .cell:nth-child(-n+2) { border-bottom: 1px solid var(--evk-line); }
.ed-factgrid .k { display: block; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.14em;
  text-transform: uppercase; color: var(--evk-ink-soft); margin-bottom: 0.35rem; }
.ed-factgrid .v { font-family: var(--evk-font-heading); font-weight: 600; font-size: 1.05rem;
  color: var(--evk-pine); line-height: 1.3; hyphens: auto; }
.ed-factgrid .v.tbd { color: var(--evk-ink-faint); font-style: italic; font-weight: 400; font-size: 1.05rem; }
.ed-factnote { margin: 1.1rem 0 0; font-size: 0.86rem; color: var(--evk-ink-soft); line-height: 1.5; }
.ed-factnote a { color: var(--evk-accent-2); font-weight: 600; }

/* ---- Statement grid (typographic statement + aside) ---- */
.ed-statement-grid { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: clamp(2rem, 5vw, 4.5rem); align-items: end; }
@media (max-width: 820px) { .ed-statement-grid { grid-template-columns: 1fr; align-items: start; } }
.ed-statement-grid .aside { max-width: 44ch; color: var(--evk-ink-mid); font-size: 1.05rem; line-height: 1.7; }
.ed-statement-grid .aside p { margin: 0; }

/* ---- Investment — light, asymmetric ---- */
.ed-invest-grid { display: grid; grid-template-columns: 1fr 0.9fr; gap: clamp(2rem, 5vw, 4rem); align-items: start; }
@media (max-width: 820px) { .ed-invest-grid { grid-template-columns: 1fr; } }
.ed-offer { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--evk-line); }
.ed-offer li { display: flex; gap: 1rem; align-items: baseline; padding: 1rem 0;
  border-bottom: 1px solid var(--evk-line); font-size: 1.02rem; color: var(--evk-ink); }
.ed-offer li::before { content: "\2013"; color: var(--evk-accent-strong-deep); font-weight: 600; flex: none; }
.ed-offer li b { font-weight: 600; }
.ed-invest-card { background: var(--evk-paper-2); border: 1px solid var(--evk-line);
  border-top: 4px solid var(--evk-accent-strong); border-radius: var(--evk-radius);
  padding: clamp(1.5rem, 3vw, 2.2rem); box-shadow: var(--evk-shadow); }
.ed-invest-card .anchor-k { font-size: 0.78rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--evk-accent-2); margin: 0 0 0.5rem; }
.ed-invest-card .anchor-v { font-family: var(--evk-font-heading); font-weight: 600; font-size: 1.7rem;
  color: var(--evk-pine); margin: 0 0 1rem; line-height: 1.2; }
.ed-invest-card p { color: var(--evk-ink-mid); font-size: 0.98rem; }
.ed-invest-card .derisk { border-top: 1px solid var(--evk-line); padding-top: 1rem; margin: 1rem 0 0; }
.ed-invest-card .derisk b { color: var(--evk-pine); }
.ed-invest-card a { color: var(--evk-accent-2); font-weight: 600; }

/* ---- Certificate — thin row, not a card ---- */
.ed-cert { display: grid; grid-template-columns: auto 1fr; gap: 1.4rem; align-items: start;
  border-top: 1px solid var(--evk-line); border-bottom: 1px solid var(--evk-line);
  padding: clamp(1.4rem, 3vw, 2rem) 0; }
@media (max-width: 620px) { .ed-cert { grid-template-columns: 1fr; } }
.ed-cert .seal { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; flex: none;
  border: 1px solid color-mix(in srgb, var(--evk-accent) 35%, transparent); color: var(--evk-accent); }
.ed-cert h3 { margin: 0 0 0.4rem; }
.ed-cert p { margin: 0; color: var(--evk-ink-mid); max-width: 62ch; }
.ed-cert .badge-haka { display: inline-flex; align-items: center; gap: 0.45em; margin-top: 0.7rem;
  font-size: 0.82rem; font-weight: 700; color: var(--evk-accent);
  background: color-mix(in srgb, var(--evk-accent) 12%, transparent);
  border: 1px solid color-mix(in srgb, var(--evk-accent) 24%, transparent);
  border-radius: 999px; padding: 0.35em 0.85em; }

/* ---- FAQ — thin lines, not cards ---- */
.ed-faq { border-top: 1px solid var(--evk-line); }
.ed-faq details { background: none; border: 0; border-bottom: 1px solid var(--evk-line);
  border-radius: 0; box-shadow: none; padding: 0; }
.ed-faq summary { padding: 1.15rem 0; }
.ed-faq summary::after { content: "+"; font-size: 1.4rem; color: var(--evk-accent); font-weight: 400; }
.ed-faq details[open] summary::after { content: "\2013"; }
.ed-faq details p { padding: 0 0 1.15rem; max-width: 62ch; }

/* ---- Mobile-only section fold (curriculum, FAQ) — CSS-only details/summary,
   no JS. Content is ALWAYS in the DOM (never removed), so GEO/SEO reads it
   regardless of fold state (ptk 04 §4.4). Closed by default (mobile-first
   baseline) below the breakpoint; from 761px the summary is hidden and every
   other child is force-shown, so desktop keeps exactly today's shape — no
   visible toggle, content simply always open, matching pre-fold behaviour
   even if a keyboard user reaches a stray [open] state via other means. ---- */
.mob-fold { border: 0; }
.mob-fold > summary {
  cursor: pointer; list-style: none; display: flex; align-items: center; gap: 0.5em;
  font-family: var(--evk-font-heading); font-weight: 600; font-size: 1.02rem;
  color: var(--evk-pine); padding: 0.9rem 0; border-top: 1px solid var(--evk-line);
}
.mob-fold > summary::-webkit-details-marker { display: none; }
.mob-fold > summary::after { content: "+"; margin-left: auto; font-size: 1.3rem; color: var(--evk-accent); font-weight: 400; }
.mob-fold[open] > summary::after { content: "\2013"; }
@media (min-width: 761px) {
  .mob-fold > summary { display: none; }
  .mob-fold > *:not(summary) { display: block !important; }
}

/* ---- Final CTA — light editorial, honey button is the only emphasis ---- */
.ed-final { text-align: center; padding: clamp(1rem, 3vw, 2rem) 0; }
.ed-final h2 { font-size: clamp(2rem, 4.6vw, 3.2rem); max-width: 20ch; margin: 0 auto 0.9rem; }
.ed-final p { color: var(--evk-ink-mid); max-width: 52ch; margin: 0 auto 1.8rem; }
.ed-final .note-flag { margin: 1.4rem auto 0; font-size: 0.86rem; color: var(--evk-ink-soft); }

/* ---- Catalog register (like "Suunad") ---- */
.ed-cat { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--evk-line); }
.ed-cat li { border-bottom: 1px solid var(--evk-line); }
.ed-cat a { display: grid; grid-template-columns: 3.6rem 1fr auto; gap: clamp(1rem, 3vw, 2.4rem);
  align-items: baseline; padding: clamp(1.6rem, 3.4vw, 2.4rem) 0; text-decoration: none; color: inherit; }
@media (max-width: 640px) { .ed-cat a { grid-template-columns: 2.6rem 1fr auto; } }
.ed-cat .no { font-family: var(--evk-font-heading); font-style: italic; color: var(--evk-accent-strong-deep); font-size: 1.1rem; }
.ed-cat h3 { font-size: clamp(1.5rem, 3vw, 2.2rem); margin: 0 0 0.35rem; transition: color 0.15s ease; }
.ed-cat a:hover h3 { color: var(--evk-accent); }
.ed-cat p { margin: 0; color: var(--evk-ink-mid); max-width: 56ch; font-size: 1rem; }
.ed-cat .meta { font-size: 0.82rem; color: var(--evk-ink-soft); letter-spacing: 0.08em; text-transform: uppercase;
  margin-top: 0.6rem; display: block; }
.ed-cat .arrow { color: var(--evk-accent); font-size: 1.5rem; align-self: center; transition: transform 0.18s ease; }
.ed-cat a:hover .arrow { transform: translateX(6px); }

/* work-sample closing line stays readable on the dark band */
.work-sample .ws-outcome { color: var(--evk-accent-strong); }

/* ---- Fact strip — 4 facts across, thin lines ---- */
.ed-factstrip { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--evk-line);
  border-bottom: 1px solid var(--evk-line); margin-top: clamp(2.4rem, 5vw, 4rem); }
@media (max-width: 760px) { .ed-factstrip { grid-template-columns: 1fr 1fr; } }
.ed-factstrip .cell { padding: 1.3rem 1.3rem 1.3rem 0; min-width: 0; }
.ed-factstrip .cell + .cell { border-left: 1px solid var(--evk-line); padding-left: 1.3rem; }
@media (max-width: 760px) {
  .ed-factstrip .cell:nth-child(3) { border-left: 0; padding-left: 0; }
  .ed-factstrip .cell:nth-child(-n+2) { border-bottom: 1px solid var(--evk-line); }
}
.ed-factstrip .k { display: block; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.14em;
  text-transform: uppercase; color: var(--evk-ink-soft); margin-bottom: 0.35rem; }
.ed-factstrip .v { font-family: var(--evk-font-heading); font-weight: 600; font-size: 1.05rem;
  color: var(--evk-pine); line-height: 1.3; hyphens: auto; }
.ed-factstrip-note { margin: 0.9rem 0 0; font-size: 0.86rem; color: var(--evk-ink-soft); }
.ed-factstrip-note a { color: var(--evk-accent-2); font-weight: 600; }

/* ---- Highlight card — typographic statement on the strong accent ---- */
.ed-hlcard { background: var(--evk-accent-strong); color: var(--evk-accent-deep); border-radius: var(--evk-radius);
  padding: clamp(1.8rem, 3.4vw, 2.6rem); box-shadow: var(--evk-shadow-lift); transform: rotate(1.2deg); }
.ed-hlcard .big { font-family: var(--evk-font-heading); font-weight: 600; font-size: clamp(2.4rem, 4.6vw, 3.6rem);
  line-height: 1; letter-spacing: -0.01em; margin: 0 0 0.7rem; }
.ed-hlcard .cap { margin: 0; font-size: 0.98rem; font-weight: 600; line-height: 1.5; }

/* ---- Light work-sample — when the page's single dark band lives elsewhere ---- */
.ws-light .work-sample { background: var(--evk-paper-2); border: 1px solid var(--evk-line); box-shadow: var(--evk-shadow); }
.ws-light .ws-tabs label { color: var(--evk-accent); background: color-mix(in srgb, var(--evk-accent) 8%, transparent);
  border-color: color-mix(in srgb, var(--evk-accent) 22%, transparent); }
.ws-light .ws-tabs label:hover { background: color-mix(in srgb, var(--evk-accent) 14%, transparent); }
.ws-light .ws-art { background: #fff; border-color: var(--evk-line); }
.ws-light .ws-art pre { color: var(--evk-ink); }
.ws-light .ws-art .ws-kind { color: var(--evk-accent-strong-deep); }
.ws-light .ws-art pre .hl { color: var(--evk-accent-strong-deep); }
.ws-light .work-sample .ws-outcome { color: var(--evk-accent-deep); }

/* ---- Editorial dark why band — more air ---- */
.ed-whyband { padding: clamp(2.6rem, 5.5vw, 4.2rem) clamp(1.8rem, 4vw, 3.2rem); }
.ed-whyband h2 { font-size: clamp(1.9rem, 3.8vw, 2.9rem); }

/* ---- Dark empathy band (the page's focal dark hit) ---- */
.ed-darklead { background: var(--evk-accent-deep); border-radius: var(--evk-radius); box-shadow: var(--evk-shadow);
  padding: clamp(2.6rem, 6vw, 4.5rem) clamp(1.8rem, 4.5vw, 4rem); }
.ed-darklead .ed-eyebrow { color: var(--evk-accent-strong); }
.ed-darklead .lead { font-family: var(--evk-font-heading); font-weight: 400; font-size: clamp(1.4rem, 2.8vw, 2.1rem);
  line-height: 1.45; color: var(--evk-cream); max-width: 30ch; margin: 0; border: 0; padding: 0; }
.ed-darklead .lead em { font-style: italic; color: var(--evk-accent-strong); }

/* ---- Roman blocks in 4 columns (mechanism) ---- */
.ed-roman.cols4 { grid-template-columns: repeat(4, 1fr); gap: clamp(1.2rem, 3vw, 2.4rem); }
@media (max-width: 900px) { .ed-roman.cols4 { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .ed-roman.cols4 { grid-template-columns: 1fr; } }

/* ---- Foundations / frameworks — lines, not cards ---- */
.ed-foundations { list-style: none; margin: 0; padding: 0; display: grid;
  grid-template-columns: repeat(3, 1fr); gap: clamp(1.2rem, 3vw, 2.2rem); }
@media (max-width: 760px) { .ed-foundations { grid-template-columns: 1fr 1fr; } }
.ed-foundations li { border-top: 1px solid var(--evk-line); padding-top: 0.9rem; display: grid; gap: 0.2rem; }
.ed-foundations li b { font-size: 1rem; color: var(--evk-pine); font-family: var(--evk-font-heading); font-weight: 600; }
.ed-foundations li span { font-size: 0.88rem; color: var(--evk-ink-mid); line-height: 1.5; }

/* ---- DACA: portfolio motif (hero "aha" — stacked work sheets) ---- */
.ed-portfolio { display: grid; gap: 1rem; margin-top: clamp(0.6rem, 3vw, 2.4rem); }
.ed-portfolio .sheet { background: var(--evk-paper-2); border: 1px solid var(--evk-line);
  border-radius: var(--evk-radius-sm); box-shadow: var(--evk-shadow); padding: 1.05rem 1.3rem; display: grid; gap: 0.15rem; }
.ed-portfolio .sheet:nth-child(1) { transform: rotate(-1.3deg); }
.ed-portfolio .sheet:nth-child(2) { transform: rotate(0.9deg) translateX(clamp(0px, 4%, 1.6rem)); }
.ed-portfolio .sheet:nth-child(3) { transform: rotate(-0.5deg); }
.ed-portfolio .tag { font-size: 0.68rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--evk-accent-strong-deep); }
.ed-portfolio .t { font-family: var(--evk-font-heading); font-weight: 600; font-size: 1.08rem; color: var(--evk-pine); }
.ed-portfolio .d { font-size: 0.88rem; color: var(--evk-ink-soft); line-height: 1.5; }
.ed-portfolio-cap { margin: 1rem 0 0; font-size: 0.86rem; color: var(--evk-ink-soft); }

/* ---- DACA: compact fact line (no card/strip) ---- */
.ed-factline { display: flex; flex-wrap: wrap; gap: 1rem clamp(1.6rem, 4vw, 3.2rem);
  border-top: 1px solid var(--evk-line); border-bottom: 1px solid var(--evk-line);
  padding: 1.1rem 0; margin-top: clamp(1.8rem, 4vw, 2.8rem); }
.ed-factline .cell { display: grid; gap: 0.2rem; }
.ed-factline .k { font-size: 0.7rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--evk-ink-soft); }
.ed-factline .v { font-family: var(--evk-font-heading); font-weight: 600; font-size: 1rem; color: var(--evk-pine); }
.ed-factline .v.tbd { color: var(--evk-ink-faint); font-style: italic; font-weight: 400; }

/* ---- DACA: outcomes as a typographic statement (stepped serif index) ---- */
.ed-outstate { list-style: none; margin: 0; padding: 0; display: grid; gap: clamp(1.8rem, 4.5vw, 3.2rem); }
.ed-outstate .line { font-family: var(--evk-font-heading); font-weight: 600; font-size: clamp(1.6rem, 3.8vw, 2.8rem);
  line-height: 1.12; color: var(--evk-pine); margin: 0; letter-spacing: -0.01em; }
.ed-outstate .idx { font-style: italic; font-weight: 400; font-size: 0.5em; color: var(--evk-accent-strong-deep);
  margin-right: 0.9em; vertical-align: 0.4em; }
.ed-outstate .line em { font-style: italic; color: var(--evk-accent-2); }
.ed-outstate .sup { margin: 0.5rem 0 0; color: var(--evk-ink-mid); max-width: 52ch; font-size: 0.98rem; }
.ed-outstate li:nth-child(even) { margin-left: clamp(0px, 9vw, 8rem); }
@media (max-width: 640px) { .ed-outstate li:nth-child(even) { margin-left: 0; } }

/* ---- SoodushindBlock (owner erand #2, 24.07.2026) — shared copy of the
   card DACA's own editorial-v2 page (daca-editorial-v2-page.mjs V2_PAGE_CSS)
   already carries, promoted here so any RU-Variant-B "ed-*" page (e.g.
   buildRuDacaPage, product-catalog-static-site-generator.mjs) can render the
   SAME data-soodusplokk="1" container styled, without duplicating a whole
   second page-local CSS bundle. Selectors/values kept byte-identical to the
   ET original so the two never visually drift. */
.sh-card { border: 1px solid var(--evk-line); border-radius: var(--evk-radius); padding: 1.6rem 1.7rem;
  background: var(--evk-card, #fff); display: grid; gap: 0.85rem; margin-top: 1.6rem; box-shadow: var(--evk-shadow); }
.sh-card .pill { justify-self: start; display: inline-flex; font-weight: 700; font-size: 0.78rem; letter-spacing: 0.1em;
  text-transform: uppercase; color: var(--evk-accent-strong-deep); background: color-mix(in srgb, var(--evk-accent) 14%, transparent);
  border-radius: 999px; padding: 0.4em 1em; }
.sh-price-row { display: flex; align-items: baseline; gap: 1.1rem; flex-wrap: wrap; }
.sh-old { font-size: 1.05rem; color: var(--evk-ink-soft); }
.sh-old s { text-decoration-thickness: 2px; }
.sh-now { font-family: var(--evk-font-heading); font-size: clamp(1.8rem, 3.4vw, 2.5rem); font-weight: 600; line-height: 1;
  color: var(--evk-accent-strong-deep); }
.sh-deadline { margin: 0; font-weight: 600; color: var(--evk-ink); }
.sh-reason { margin: 0; font-size: 0.95rem; color: var(--evk-ink-mid); max-width: 60ch;
  border-left: 3px solid var(--evk-accent-strong-deep); padding-left: 0.8rem; }

/* ---- RU DACA: mentor cards (name/title/subtitle/bio) — the RU pages don't
   carry the ET page's photo-bound mv2 mentor cards (MENTORS_V2_CSS, photo
   registry binding); this is the text-only equivalent for buildRuDacaPage. */
.ed-mentor-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 1.2rem; }
.ed-mentor-card { border: 1px solid var(--evk-line); border-radius: var(--evk-radius-sm); padding: 1.1rem 1.3rem;
  background: var(--evk-paper-2); display: grid; gap: 0.3rem; }
.ed-mentor-card .nm { font-family: var(--evk-font-heading); font-weight: 600; font-size: 1.05rem; color: var(--evk-pine); margin: 0; }
.ed-mentor-card .ti { font-size: 0.88rem; color: var(--evk-accent-strong-deep); font-weight: 600; margin: 0; }
.ed-mentor-card .su { font-size: 0.82rem; color: var(--evk-ink-soft); margin: 0; }
.ed-mentor-card p:last-child { margin: 0.4rem 0 0; font-size: 0.92rem; color: var(--evk-ink-mid); line-height: 1.5; }
/* Pakett portfell - shared cross-lane layer, ported from the designer package
   "Pakett portfell" (hub/portfell.css). Loaded AFTER editorial-patterns.css /
   conversion-patterns.css on the site.css lane, and appended into the
   self-contained DACA critical-CSS lane (buildThemedDacaCriticalCss) so both
   the editorial hub pages and the programme landing lane get the same rules.
   Portfelli 9 uut lehte: arhetüübid A (karjääriprogramm), B (sert-leht),
   C (lühikursus). Aktsent: vaikimisi mänd+mesi (ILMA data-program'ita) -
   ptk 02 paragrahv 3b: täpselt 4 programmi-aktsenti + bränd ise; uued
   programmid on programmideülesed kuni omaniku ratifitseerimiseta.

   Token strategy: every color/radius/font custom property below uses the
   var(--evk-token, var(--bare-token, #hex-fallback)) chain established by
   SITE_CHROME_RESPONSIVE_CSS (infra/public-web/site-navigation.mjs) - the
   site.css lane defines the --evk-* names (brand.css / editorial-patterns.css)
   while the self-contained DACA lane defines the bare names (DACA_CRITICAL_CSS
   own :root); the literal hex is the last-resort default so the rule still
   renders correctly even if a future lane defines neither. All hex values are
   the brand v2 sync ones (ptk 02); the source package's non-AMOS ink alpha
   border hex on .capture inputs was corrected to the real AMOS ink hex. */

.brand-mark img { height: 38px; width: auto; display: block; }

.capture input[type="text"],
.capture input[type="email"],
.capture select,
.capture textarea {
  width: 100%;
  padding: 0.85em 1em;
  border-radius: var(--evk-radius-sm, var(--r-sm, 12px));
  border: 1px solid #1b17122e;
  font: inherit;
  background: #fff;
  color: var(--evk-ink, var(--ink, #1B1712));
  resize: vertical;
}
.capture input:focus-visible,
.capture select:focus-visible,
.capture textarea:focus-visible {
  outline: 3px solid var(--evk-accent-2, var(--pine-2, #1D4A3A));
  outline-offset: 1px;
  border-color: var(--evk-accent-2, var(--pine-2, #1D4A3A));
}

/* kohordi-olekukaart - kolm olekut (avatud / tulekul / huvipüüe) ilma ümberdisainita */
.ed-cohort {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 1.2rem;
  align-items: baseline;
  background: var(--evk-paper-2, var(--paper-2, #ECE4D6));
  border: 1px solid var(--evk-line, var(--line, #CDBFA9));
  border-radius: var(--evk-radius-sm, var(--r-sm, 12px));
  padding: 1rem 1.2rem;
  margin-top: 1.6rem;
}
.ed-cohort .st {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--evk-honey-deep, var(--honey-deep, #A8721F));
}
.ed-cohort .dt {
  font-family: var(--evk-font-heading, var(--serif, 'Fraunces', Georgia, 'Times New Roman', serif));
  font-weight: 600;
  color: var(--evk-pine, var(--pine, #15352A));
  font-size: 1.12rem;
}
.ed-cohort .nt {
  font-size: 0.86rem;
  color: var(--evk-ink-soft, var(--ink-soft, #5B5145));
  flex-basis: 100%;
  margin: 0;
}

/* artefaktiriba - nummerdatud sammud ("mis sul lõpuks käes on") */
.ed-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 0.6rem;
  margin-top: 1.6rem;
  counter-reset: step;
}
.ed-steps .stp {
  background: var(--evk-paper-2, var(--paper-2, #ECE4D6));
  border: 1px solid var(--evk-line, var(--line, #CDBFA9));
  border-radius: 12px;
  padding: 0.85rem 0.95rem;
  counter-increment: step;
}
.ed-steps .stp::before {
  content: counter(step, decimal-leading-zero);
  display: block;
  font-family: var(--evk-font-heading, var(--serif, 'Fraunces', Georgia, 'Times New Roman', serif));
  font-style: italic;
  color: var(--evk-honey-deep, var(--honey-deep, #A8721F));
  margin-bottom: 0.35rem;
}
.ed-steps .stp b {
  display: block;
  font-family: var(--evk-font-heading, var(--serif, 'Fraunces', Georgia, 'Times New Roman', serif));
  font-weight: 600;
  color: var(--evk-pine, var(--pine, #15352A));
  font-size: 0.98rem;
  line-height: 1.3;
}
.ed-steps .stp span {
  display: block;
  margin-top: 0.3rem;
  font-size: 0.82rem;
  color: var(--evk-ink-mid, var(--ink-mid, #5B5145));
  line-height: 1.45;
}

/* tõendi kihid RANGELT lahus (provider / skeem / credential / valikuline välisrada) */
.ed-layers {
  display: grid;
  gap: 0.8rem;
  margin-top: 1.4rem;
  max-width: 820px;
}
.ed-layer {
  background: #ffffff99;
  border: 1px solid var(--evk-line, var(--line, #CDBFA9));
  border-radius: var(--evk-radius-sm, var(--r-sm, 12px));
  padding: 1.1rem 1.25rem;
}
.ed-layer .lk {
  display: inline-block;
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--evk-pine, var(--pine, #15352A));
  background: color-mix(in srgb, var(--evk-accent, var(--pine, #15352A)) 10%, transparent);
  border-radius: 999px;
  padding: 0.28rem 0.75rem;
  margin: 0 0 0.55rem;
}
.ed-layer h3 { margin: 0 0 0.3rem; font-size: 1.08rem; }
.ed-layer p {
  margin: 0;
  font-size: 0.93rem;
  color: var(--evk-ink-mid, var(--ink-mid, #5B5145));
  max-width: 64ch;
}
.ed-layer.warn { border-style: dashed; }

/* named-instructor person cards (renderLayerBlock personCards:true) - same
   photo-or-initials avatar language as the mv2 mentor cards (.mv2-card .ph/.av
   in daca-editorial-v2-page.mjs), scoped to .ed-layer.person only so the
   provider/scheme/credential layer stack above keeps its plain text card. */
.ed-layer.person .ed-layer-top {
  display: flex;
  gap: 0.85rem;
  align-items: center;
  margin-bottom: 0.55rem;
}
.ed-layer.person .ed-layer-top .lk { margin: 0 0 0.3rem; }
.ed-layer.person .ed-layer-top h3 { margin: 0; }
.ed-layer.person .ph,
.ed-layer.person .av {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  flex: none;
}
.ed-layer.person .ph {
  object-fit: cover;
  border: 1px solid var(--evk-line, var(--line, #CDBFA9));
  background: #fff;
}
.ed-layer.person .av {
  display: grid;
  place-items: center;
  font-family: var(--evk-font-heading, var(--serif, 'Fraunces', Georgia, 'Times New Roman', serif));
  font-weight: 700;
  font-size: 1.1rem;
  color: var(--evk-honey-bright, #E8B94A);
  background: var(--evk-pine, var(--pine, #15352A));
}

/* nädalarütmi kolmik (mentorkohtumine - grupitöö - demo) */
.ed-rhythm {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.6rem;
  margin-top: 1.6rem;
  max-width: 760px;
}
@media (max-width: 640px) { .ed-rhythm { grid-template-columns: 1fr; } }
.ed-rhythm .rt {
  border: 1px solid var(--evk-line, var(--line, #CDBFA9));
  border-radius: 12px;
  padding: 0.8rem 0.9rem;
  background: var(--evk-paper-2, var(--paper-2, #ECE4D6));
}
.ed-rhythm .rt .t {
  display: block;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--evk-honey-deep, var(--honey-deep, #A8721F));
  margin-bottom: 0.3rem;
}
.ed-rhythm .rt b {
  font-family: var(--evk-font-heading, var(--serif, 'Fraunces', Georgia, 'Times New Roman', serif));
  font-weight: 600;
  color: var(--evk-pine, var(--pine, #15352A));
}
.ed-rhythm .rt p { margin: 0.25rem 0 0; font-size: 0.84rem; color: var(--evk-ink-mid, var(--ink-mid, #5B5145)); }

/* "Mida sinult oodatakse" - ootuste juhtimine enne CTA-d */
.ed-expect {
  background: var(--evk-pine-ink, var(--pine-ink, #0E271F));
  color: #e9e2d4;
  border-radius: var(--evk-radius, var(--r, 18px));
  padding: clamp(1.6rem, 3.5vw, 2.6rem);
  max-width: 860px;
}
.ed-expect .tag {
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--evk-honey-bright, var(--honey-bright, #D8A23F));
}
.ed-expect h2 { color: #fff; font-size: clamp(1.4rem, 2.4vw, 1.9rem); margin: 0.5rem 0 0.8rem; }
.ed-expect ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 0.6rem; }
.ed-expect li {
  padding-left: 1.4rem;
  position: relative;
  color: #cfd8d0;
  font-size: 0.96rem;
  line-height: 1.55;
}
.ed-expect li::before { content: "\2013"; position: absolute; left: 0; color: var(--evk-honey-bright, var(--honey-bright, #D8A23F)); }

/* kontaktpäeva-kaardid (arhetüüp C) */
.ed-days {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 0.7rem;
  margin-top: 1.6rem;
}
.ed-days .day {
  background: var(--evk-paper-2, var(--paper-2, #ECE4D6));
  border: 1px solid var(--evk-line, var(--line, #CDBFA9));
  border-radius: 12px;
  padding: 1rem 1.05rem;
}
.ed-days .day .dn {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: var(--evk-honey-deep, var(--honey-deep, #A8721F));
}
.ed-days .day h3 { margin: 0.35rem 0 0.35rem; font-size: 1.05rem; }
.ed-days .day p { margin: 0; font-size: 0.85rem; color: var(--evk-ink-mid, var(--ink-mid, #5B5145)); line-height: 1.5; }

/* portfelli pikad liitsõna-H1-d: murra sõnapiirilt, mitte poolitusega (orb-tähe fix) */
.ed-hero h1 { hyphens: manual; max-width: 18ch; }

/* mentoriplokk (infra/public-web/mentor-block.mjs) - kaardigrid nime + valikulise
   lühikirjeldusega; initsiaal-avatar (fotota, sama distsipliin mis koolitajate lehel) */
.ed-mentors-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 0.8rem;
  margin-top: 1.6rem;
}
.ed-mentor {
  display: flex;
  gap: 0.9rem;
  align-items: flex-start;
  background: var(--evk-paper-2, var(--paper-2, #ECE4D6));
  border: 1px solid var(--evk-line, var(--line, #CDBFA9));
  border-radius: var(--evk-radius-sm, var(--r-sm, 12px));
  padding: 1rem 1.1rem;
}
.ed-mentor .av {
  flex: none;
  width: 46px;
  height: 46px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  font-family: var(--evk-font-heading, var(--serif, 'Fraunces', Georgia, 'Times New Roman', serif));
  font-weight: 700;
  font-size: 1rem;
  color: var(--evk-honey-bright, var(--honey-bright, #D8A23F));
  background: var(--evk-accent, var(--pine, #15352A));
}
.ed-mentor .nm {
  font-family: var(--evk-font-heading, var(--serif, 'Fraunces', Georgia, 'Times New Roman', serif));
  font-weight: 600;
  color: var(--evk-pine, var(--pine, #15352A));
  font-size: 1.02rem;
  line-height: 1.25;
}
.ed-mentor .ds {
  margin: 0.35rem 0 0;
  font-size: 0.86rem;
  color: var(--evk-ink-mid, var(--ink-mid, #5B5145));
  line-height: 1.5;
}
.cv-choices {
  display: grid;
  margin: 2.2rem 0 0;
  max-width: 760px;
  border-top: 1px solid var(--evk-line);
}
.cv-choice {
  display: flex;
  align-items: baseline;
  gap: 1.1rem;
  padding: 1.25rem 0.2rem;
  border-bottom: 1px solid var(--evk-line);
  text-decoration: none;
  color: var(--evk-ink);
  transition: background 0.15s ease;
}
.cv-choice:hover { background: color-mix(in srgb, var(--evk-accent) 4%, transparent); }
.cv-choice .mk {
  flex: none;
  min-width: 2.2rem;
  color: var(--evk-honey-deep);
  font-family: var(--evk-font-heading);
  font-style: italic;
  font-weight: 400;
  font-size: 1.05rem;
}
.cv-choice .ct { display: flex; flex-direction: column; gap: 0.2rem; }
.cv-choice .ct b {
  font-family: var(--evk-font-heading);
  font-weight: 600;
  font-size: clamp(1.2rem, 2.2vw, 1.5rem);
  line-height: 1.25;
  color: var(--evk-pine);
}
.cv-choice .ct span { color: var(--evk-ink-mid); font-size: 0.96rem; }
.cv-choice .go {
  margin-left: auto;
  align-self: center;
  color: var(--evk-accent-2);
  font-size: 1.4rem;
  flex: none;
  transition: transform 0.18s ease;
}
.cv-choice:hover .go { transform: translateX(5px); }
.cv-choice.soft .mk { color: var(--evk-ink-soft); }
.cv-choice.soft .ct b {
  color: var(--evk-ink-soft);
  font-weight: 400;
  font-style: italic;
}
.cv-tag {
  display: inline-block;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--evk-honey-deep);
  margin-left: 0.6rem;
}

.cv-steps {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  flex-wrap: wrap;
  margin: 0.4rem 0 1.4rem;
  font-size: 0.86rem;
  color: var(--evk-ink-soft);
  font-weight: 600;
}
.cv-steps ol { list-style: none; display: flex; gap: 0.4rem; margin: 0; padding: 0; }
.cv-steps li {
  width: 34px;
  height: 5px;
  border-radius: 3px;
  background: color-mix(in srgb, var(--evk-ink) 12%, transparent);
}
.cv-steps li.on { background: var(--evk-accent-strong); }
.cv-steps li.done { background: var(--evk-accent); }

.cv-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 2rem;
  padding: 1rem 0;
  border-top: 1px solid var(--evk-line);
  border-bottom: 1px solid var(--evk-line);
}
.cv-facts div { display: flex; flex-direction: column; gap: 0.1rem; }
.cv-facts .k {
  font-size: 0.8rem;
  color: var(--evk-ink-soft);
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.cv-facts .v {
  font-family: var(--evk-font-heading);
  font-weight: 600;
  font-size: 1.25rem;
  color: var(--evk-pine);
}

.cv-pledges {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: clamp(1.4rem, 3vw, 2.6rem);
  align-items: start;
}
.cv-pledge {
  background: var(--evk-paper-2);
  border: 1px solid var(--evk-line);
  border-radius: var(--evk-radius);
  padding: 1.5rem;
  box-shadow: var(--evk-shadow);
}
.cv-pledge .tag {
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--evk-ink-soft);
}
.cv-pledge h3,
.evk-root .cv-pledge h3 {
  font-family: var(--evk-font-heading);
  color: var(--evk-pine);
  margin: 0.5rem 0 0.6rem;
}
.cv-pledge ul {
  margin: 0;
  padding-left: 1.1rem;
  color: var(--evk-ink-mid);
  font-size: 0.98rem;
  display: grid;
  gap: 0.45rem;
}

.cv-ctaband {
  background: linear-gradient(160deg, var(--evk-pine-ink), var(--evk-pine));
  color: var(--evk-cream);
  border-radius: var(--evk-radius);
  padding: clamp(1.8rem, 4vw, 2.8rem);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
}
.cv-ctaband h2,
.evk-root .cv-ctaband h2 {
  color: #fff;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  margin: 0 0 0.3rem;
}
.cv-ctaband p {
  color: color-mix(in srgb, var(--evk-cream) 78%, var(--evk-pine-2));
  margin: 0;
  max-width: 52ch;
  font-size: 0.98rem;
}

.cv-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  font-weight: 600;
  font-size: 1.02rem;
  padding: 0.9em 1.5em;
  border-radius: 999px;
  text-decoration: none;
  border: 0;
  cursor: pointer;
  background: var(--evk-accent-strong);
  color: #2a1d05;
  box-shadow: 0 10px 24px -10px var(--evk-accent-strong-deep);
}
.cv-cta:hover { background: var(--evk-accent-strong-deep); }
.cv-cta-ghost {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  font-weight: 600;
  font-size: 1rem;
  padding: 0.85em 1.3em;
  border-radius: 999px;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid var(--evk-accent);
  color: var(--evk-accent);
  background: transparent;
}
.cv-cta-ghost:hover { background: color-mix(in srgb, var(--evk-accent) 8%, transparent); }

.cv-block {
  background: var(--evk-paper-2);
  border: 1px solid var(--evk-line);
  border-left: 4px solid var(--evk-accent-strong);
  border-radius: var(--evk-radius);
  box-shadow: var(--evk-shadow);
  padding: clamp(1.5rem, 3.5vw, 2.4rem);
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: clamp(1.4rem, 3vw, 2.4rem);
  align-items: center;
}
@media (max-width: 860px) { .cv-block { grid-template-columns: 1fr; } }
.cv-block .pill {
  display: inline-flex;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.35em 0.85em;
  border-radius: 999px;
  background: color-mix(in srgb, var(--evk-accent) 12%, transparent);
  color: var(--evk-accent);
  border: 1px solid color-mix(in srgb, var(--evk-accent) 22%, transparent);
}
.cv-block h2,
.evk-root .cv-block h2 {
  color: var(--evk-accent);
  font-size: clamp(1.4rem, 2.4vw, 1.9rem);
  margin: 0.7rem 0 0.5rem;
}
.cv-block p { color: var(--evk-ink-mid); margin: 0 0 1rem; max-width: 48ch; }
.cv-block ul {
  margin: 0 0 1.2rem;
  padding-left: 1.1rem;
  color: var(--evk-ink-mid);
  font-size: 0.96rem;
  display: grid;
  gap: 0.4rem;
}
.cv-block .side { display: grid; gap: 0.8rem; justify-items: start; }
.cv-block .side small { color: var(--evk-ink-soft); font-size: 0.85rem; line-height: 1.5; }

.cv-ctx {
  max-width: var(--evk-content-max);
  margin-inline: auto;
  padding: 0.7rem clamp(16px, 5vw, 48px) 0.7rem;
}
.cv-ctx .in {
  background: var(--evk-pine-ink);
  border-radius: 14px;
  box-shadow: var(--evk-shadow);
  padding: 0.6rem 1.2rem;
  display: flex;
  align-items: baseline;
  gap: 0.4rem 1.4rem;
  flex-wrap: wrap;
  font-size: 0.88rem;
}
.cv-ctx .nm {
  font-family: var(--evk-font-heading);
  font-weight: 600;
  color: #fff;
}
.cv-ctx .pts { color: color-mix(in srgb, var(--evk-cream) 78%, var(--evk-pine)); }
.cv-ctx .pts span + span::before { content: "·"; margin: 0 0.45rem; opacity: 0.6; }
.cv-ctx .back {
  margin-left: auto;
  color: var(--evk-honey-bright);
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}
.cv-ctx .back:hover { color: #fff; }
@media (max-width: 700px) {
  .cv-ctx {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    top: auto;
    z-index: 60;
    padding: 0 0.7rem 0.7rem;
  }
  .cv-ctx .in { align-items: center; flex-wrap: nowrap; padding: 0.5rem 0.85rem; }
  .cv-ctx .nm { white-space: nowrap; }
  .cv-ctx .pts {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  body.has-cv-ctx { padding-bottom: 4rem; }
}

.cv-points {
  background: var(--evk-paper-2);
  border: 1px solid var(--evk-line);
  border-radius: var(--evk-radius);
  box-shadow: var(--evk-shadow);
  padding: clamp(1.3rem, 3vw, 1.8rem);
}
.cv-points .tag {
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--evk-ink-soft);
}
.cv-points ul {
  margin: 0.8rem 0 0;
  padding-left: 1.1rem;
  color: var(--evk-ink-mid);
  display: grid;
  gap: 0.55rem;
}
.cv-points li::marker { color: var(--evk-honey-deep); }

.cv-shell {
  display: grid;
  gap: 1.2rem;
}

.cv-letter {
  background: #fff;
  border: 1px solid var(--evk-line);
  border-radius: var(--evk-radius);
  box-shadow: var(--evk-shadow);
  padding: clamp(1.4rem, 3vw, 2rem);
}
.cv-letter .meta {
  font-size: 0.86rem;
  color: var(--evk-ink-soft);
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin: 0 0 0.8rem;
}
.cv-letter .subject {
  font-family: var(--evk-font-heading);
  font-weight: 600;
  font-size: 1.15rem;
  color: var(--evk-pine);
  border-bottom: 1px dashed var(--evk-line);
  padding-bottom: 0.7rem;
  margin: 0 0 0.9rem;
}
.cv-letter textarea {
  width: 100%;
  min-height: 18em;
  border: 0;
  resize: vertical;
  font: inherit;
  font-size: 1rem;
  line-height: 1.65;
  color: var(--evk-ink);
  background: transparent;
  padding: 0;
}

.cv-prompt {
  background: var(--evk-pine-ink);
  color: var(--evk-cream);
  border-radius: var(--evk-radius);
  padding: clamp(1.3rem, 3vw, 1.8rem);
}
.cv-prompt .tag {
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--evk-honey);
}
.cv-prompt p {
  color: color-mix(in srgb, var(--evk-cream) 78%, var(--evk-pine-2));
  font-size: 0.94rem;
  margin: 0.5rem 0 0.9rem;
}
.cv-prompt textarea {
  width: 100%;
  min-height: 10em;
  resize: vertical;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--evk-radius-sm);
  font-family: ui-monospace, Menlo, monospace;
  font-size: 0.85rem;
  line-height: 1.6;
  color: var(--evk-cream);
  background: rgba(255, 255, 255, 0.06);
  padding: 0.9rem 1rem;
}

.cv-result-grid {
  display: grid;
  gap: 1rem;
}
@media (min-width: 980px) {
  .cv-result-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
    align-items: start;
  }
}

.cv-capture-band {
  display: grid;
  gap: 1rem;
}

.cv-voice {
  max-width: 46ch;
  font-family: var(--evk-font-heading);
  font-style: italic;
  font-size: 1.08rem;
  line-height: 1.5;
  color: var(--evk-ink);
}
.cv-voice::before {
  content: "\\201C";
  color: var(--evk-honey);
  font-size: 1.6em;
  line-height: 0;
  vertical-align: -0.3em;
  margin-right: 0.15em;
}
.cv-voice .src {
  display: block;
  margin-top: 0.5rem;
  font-family: var(--evk-font-body);
  font-style: normal;
  font-size: 0.82rem;
  color: var(--evk-ink-soft);
}
.cv-voice.pending {
  border: 1px dashed var(--evk-line-solid);
  border-radius: var(--evk-radius-sm);
  padding: 0.9rem 1.1rem;
  color: var(--evk-ink-soft);
  font-size: 0.95rem;
}
.cv-voice.pending::before { content: none; }

.cv-ai {
  background: var(--evk-pine-ink);
  color: var(--evk-cream);
  border-radius: var(--evk-radius);
  padding: clamp(1.8rem, 4vw, 2.8rem);
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: clamp(1.4rem, 3vw, 2.6rem);
  align-items: start;
}
@media (max-width: 860px) { .cv-ai { grid-template-columns: 1fr; } }
.cv-ai .tag {
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--evk-honey-bright);
}
.cv-ai h2,
.evk-root .cv-ai h2 {
  color: #fff;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  margin: 0.5rem 0 0.6rem;
}
.cv-ai p {
  color: color-mix(in srgb, var(--evk-cream) 80%, var(--evk-pine));
  margin: 0;
  font-size: 0.98rem;
  max-width: 52ch;
}
.cv-ai .cv-voice { color: var(--evk-cream); }
.cv-ai .cv-voice .src { color: color-mix(in srgb, var(--evk-cream) 65%, var(--evk-pine)); }
.cv-ai .cv-voice.pending {
  border-color: rgba(255, 255, 255, 0.25);
  color: color-mix(in srgb, var(--evk-cream) 70%, var(--evk-pine));
}

.cv-kit {
  display: grid;
  max-width: 720px;
  border-top: 1px solid var(--evk-line);
}
.cv-kit .item {
  display: flex;
  gap: 1.1rem;
  align-items: baseline;
  padding: 1.1rem 0.2rem;
  border-bottom: 1px solid var(--evk-line);
}
.cv-kit .mk {
  flex: none;
  min-width: 2.2rem;
  font-family: var(--evk-font-heading);
  font-style: italic;
  color: var(--evk-honey-deep);
}
.cv-kit b {
  font-family: var(--evk-font-heading);
  font-weight: 600;
  color: var(--evk-pine);
  font-size: 1.12rem;
}
.cv-kit .ct { display: flex; flex-direction: column; gap: 0.15rem; }
.cv-kit .ct span { color: var(--evk-ink-mid); font-size: 0.95rem; }

.cv-week { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0.6rem; }
@media (max-width: 760px) { .cv-week { grid-template-columns: repeat(2, 1fr); } }
.cv-week .day {
  background: var(--evk-paper-2);
  border: 1px solid var(--evk-line-solid);
  border-radius: var(--evk-radius-sm);
  padding: 0.7rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  min-height: 150px;
}
.cv-week .day h4 {
  margin: 0;
  font-family: var(--evk-font-body);
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--evk-ink-soft);
  font-weight: 700;
}
.cv-week .ev { border-radius: 8px; padding: 0.45rem 0.6rem; font-size: 0.78rem; line-height: 1.35; }
.cv-week .ev .t { display: block; font-weight: 700; font-size: 0.72rem; letter-spacing: 0.04em; }
.cv-week .ev.live { background: var(--evk-accent); color: var(--evk-cream); }
.cv-week .ev.demo { background: var(--evk-accent-strong); color: #2a1d05; }
.cv-week .ev.group { background: var(--evk-accent-2); color: var(--evk-cream); }
.cv-week .ev.solo { border: 1px dashed var(--evk-line-solid); color: var(--evk-ink-mid); }
.cv-week-note {
  font-size: 0.85rem;
  color: var(--evk-ink-soft);
  margin: 0.9rem 0 0;
  max-width: 64ch;
}

/* ---- /toetus/ indeks v2 (slice D) — designer toetus.css klassid porditud
   siia jagatud kihti; kõik värvid tokenitest, program-aktsent data-program
   kaudu (samad hexid nagu pw-field-card allmääratud paletis). ---- */
.pw-section-head { margin-bottom: clamp(1.4rem, 3vw, 2rem); }
.pw-section-head .pw-lede { margin-bottom: 0; }

/* teed: cv-choices peal aususe-alamsilt + rajasilt */
.cv-paths .cv-choice .ct > span:not(.cv-tag):not(.fits) { color: var(--evk-ink-mid); }
.cv-choice .fits {
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--evk-honey-deep);
  margin-top: 0.15rem;
}
.cv-choice { scroll-margin-top: 6rem; }

/* olukorra-kaardid: persona x vaikne vastuolu */
.cv-situations {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(1.2rem, 2.5vw, 2rem);
  margin-top: clamp(2rem, 4vw, 3rem);
}
@media (max-width: 900px) { .cv-situations { grid-template-columns: 1fr; } }
.cv-situation {
  background: var(--evk-paper-2);
  border: 1px solid var(--evk-line);
  border-radius: var(--evk-radius);
  box-shadow: var(--evk-shadow);
  padding: clamp(1.4rem, 3vw, 1.9rem);
  scroll-margin-top: 6rem;
}
.cv-situation .tag {
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--evk-ink-soft);
}
.cv-situation h3,
.evk-root .cv-situation h3 {
  font-family: var(--evk-font-heading);
  color: var(--evk-pine);
  margin: 0.5rem 0 0.6rem;
  font-size: 1.3rem;
}
.cv-situation p { color: var(--evk-ink-mid); font-size: 0.97rem; margin: 0 0 0.9rem; }
.cv-situation p b { color: var(--evk-pine); }
.cv-situation .conflict {
  border-top: 1px dashed var(--evk-line);
  padding-top: 0.9rem;
  color: var(--evk-ink-soft);
  font-size: 0.92rem;
}
.cv-situation .conflict b { color: var(--evk-honey-deep); }
.cv-slinks {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 1.2rem;
  align-items: center;
  margin-top: 1.1rem;
}
.cv-salt { color: var(--evk-accent-2); font-weight: 600; text-decoration: none; font-size: 0.94rem; }
.cv-salt:hover { text-decoration: underline; }
.cv-tref { color: var(--evk-accent-2); text-decoration: underline; text-underline-offset: 2px; }
.cv-tref:hover { color: var(--evk-pine); }
.cv-situation-open {
  grid-column: 1 / -1;
  margin-top: clamp(1.2rem, 2.5vw, 2rem);
  border-style: dashed;
}

/* programmi-grid: suuna-aktsent data-program kaudu */
.cv-prog-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(1.2rem, 2.5vw, 2rem);
}
@media (max-width: 860px) { .cv-prog-grid { grid-template-columns: 1fr; } }
.cv-prog-card {
  --cv-prog-accent: var(--evk-accent);
  background: var(--evk-paper-2);
  border: 1px solid var(--evk-line);
  border-top: 4px solid var(--cv-prog-accent);
  border-radius: var(--evk-radius);
  box-shadow: var(--evk-shadow);
  padding: clamp(1.4rem, 3vw, 1.9rem);
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}
.cv-prog-card[data-program="daca"] { --cv-prog-accent: #15352A; }
.cv-prog-card[data-program="arh"] { --cv-prog-accent: #3D2B6B; }
.cv-prog-card[data-program="uap"] { --cv-prog-accent: #1E3A5F; }
.cv-prog-card[data-program="aals"] { --cv-prog-accent: #6B2233; }
.cv-prog-top {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  flex-wrap: wrap;
}
.cv-prog-card .pill {
  align-self: start;
  display: inline-flex;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.35em 0.85em;
  border-radius: 999px;
  background: color-mix(in srgb, var(--cv-prog-accent) 12%, transparent);
  color: var(--cv-prog-accent);
  border: 1px solid color-mix(in srgb, var(--cv-prog-accent) 22%, transparent);
}
.cv-prog-card h3,
.evk-root .cv-prog-card h3 {
  font-family: var(--evk-font-heading);
  color: var(--cv-prog-accent);
  margin: 0;
  font-size: clamp(1.25rem, 2vw, 1.5rem);
}
.cv-prog-card ul {
  margin: 0;
  padding-left: 1.1rem;
  color: var(--evk-ink-mid);
  font-size: 0.95rem;
  display: grid;
  gap: 0.35rem;
}
.cv-prog-card li::marker { color: var(--cv-prog-accent); }
.cv-plinks {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem 1.2rem;
  align-items: center;
  margin-top: auto;
  padding-top: 0.6rem;
}
.cv-palt { color: var(--evk-accent-2); font-weight: 600; text-decoration: none; font-size: 0.94rem; }
.cv-palt:hover { text-decoration: underline; }

/* tööandja argumendid */
.cv-args {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.2rem, 2.5vw, 2rem);
}
@media (max-width: 900px) { .cv-args { grid-template-columns: 1fr; } }
.cv-arg .no { font-family: var(--evk-font-heading); font-style: italic; color: var(--evk-honey-deep); font-size: 1.1rem; }
.cv-arg h3,
.evk-root .cv-arg h3 {
  font-family: var(--evk-font-heading);
  color: var(--evk-pine);
  margin: 0.35rem 0 0.45rem;
  font-size: 1.22rem;
}
.cv-arg p { color: var(--evk-ink-mid); font-size: 0.98rem; margin: 0; }

/* teekaardi lead-magnet (väärtus enne väravat) */
.cv-roadmap {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: clamp(1.4rem, 3vw, 2.6rem);
  align-items: center;
  background: var(--evk-paper-2);
  border: 1px solid var(--evk-line);
  border-radius: var(--evk-radius);
  box-shadow: var(--evk-shadow);
  padding: clamp(1.5rem, 3.5vw, 2.4rem);
  margin-top: clamp(2rem, 4vw, 3rem);
}
@media (max-width: 860px) { .cv-roadmap { grid-template-columns: 1fr; } }
.cv-roadmap .tag {
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--evk-honey-deep);
}
.cv-roadmap h3,
.evk-root .cv-roadmap h3 {
  font-family: var(--evk-font-heading);
  color: var(--evk-pine);
  margin: 0.5rem 0 0.5rem;
  font-size: clamp(1.35rem, 2.2vw, 1.7rem);
}
.cv-roadmap p { color: var(--evk-ink-mid); font-size: 0.97rem; margin: 0; max-width: 48ch; }
.cv-roadmap-form .subscribe-form { max-width: none; }

/* /toetus/ indeksi hero on täislause (mitte lühipealkiri), seega laiendame
   globaalse h1 11ch-piiri sellel lehel loetavaks reavahemikuks. */
.pw-toetus-page .pw-page-head h1 { max-width: 24ch; }
.ru-riba{background:var(--surface-strong);border-block:1px solid var(--line-solid)}
.ru-riba .in{max-width:1180px;margin:0 auto;padding:.55rem clamp(16px,5vw,48px);display:flex;align-items:baseline;gap:.4rem 1.2rem;flex-wrap:wrap;font-family:'PT Sans',var(--sans);font-size:.88rem;color:var(--muted)}
.ru-riba .txt{flex:1;min-width:16rem}
.ru-riba a{color:var(--accent-2);font-weight:700;text-decoration:none;white-space:nowrap}
.ru-riba a:hover{color:var(--accent-strong-deep)}
[data-program='daca']{--evk-accent:#15352A;--evk-accent-2:#1D4A3A;--evk-accent-deep:#0E271F;--evk-accent-strong:#C1872B;--evk-accent-strong-deep:#A8721F}
[data-program='arh']{--evk-accent:#3D2B6B;--evk-accent-2:#4F3A85;--evk-accent-deep:#241A47;--evk-accent-strong:#E8623D;--evk-accent-strong-deep:#C94A28}
[data-program='uap']{--evk-accent:#1E3A5F;--evk-accent-2:#2C5685;--evk-accent-deep:#112338;--evk-accent-strong:#2BB3C0;--evk-accent-strong-deep:#1E8A95}
[data-program='aals']{--evk-accent:#6B2233;--evk-accent-2:#8A3247;--evk-accent-deep:#3F1320;--evk-accent-strong:#C99A3A;--evk-accent-strong-deep:#A87E22}
:root {
  color-scheme: light;
  --ink: #1B1712;
  --muted: #5B5145;
  --line: rgba(205, 191, 169, 0.72);
  --line-solid: #CDBFA9;
  --surface: #F3EDE2;
  --surface-strong: #ECE4D6;
  --accent: #15352A;
  --accent-2: #1D4A3A;
  --accent-ink: #0E271F;
  --accent-strong: #C1872B;
  --accent-strong-deep: #A8721F;
  --amber: #C9821A;
  --danger: #C2603F;
  --white: #ffffff;
  --serif: 'Fraunces', Georgia, 'Times New Roman', serif;
  --sans: 'Hanken Grotesk', Arial, Helvetica, system-ui, sans-serif;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: var(--sans);
  color: var(--ink);
  background: var(--surface);
  line-height: 1.5;
}
a { color: inherit; }
.site-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 18px clamp(18px, 5vw, 72px);
  background: rgba(243, 237, 226, 0.92);
  border-bottom: 1px solid var(--line);
  position: sticky;
  top: 0;
  z-index: 10;
  backdrop-filter: blur(12px);
}
.brand { font-family: var(--serif); font-weight: 600; text-decoration: none; }
.brand .brand-logo { display: block; width: auto; max-height: 40px; height: auto; }
.site-nav,
.footer-nav,
nav {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  color: var(--muted);
}
.site-nav a,
.footer-nav a,
nav a,
.text-link {
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}
.site-nav a[aria-current="page"] {
  color: var(--ink);
  font-weight: 700;
}
.pe-shortlist-link {
  display: none;
  align-items: center;
  gap: 0.35em;
  padding: 0.55em 0.95em;
  border-radius: 999px;
  border: 1px solid rgba(27, 23, 18, 0.12);
  background: #fff;
  color: var(--ink);
  font-weight: 700;
  text-decoration: none;
}
html.pe-on .pe-shortlist-link { display: inline-flex; }
.hero, .page-title {
  display: block;
  padding: clamp(48px, 8vw, 96px) clamp(18px, 5vw, 72px) clamp(34px, 6vw, 72px);
  background: #ffffff;
}
.page-title { display: block; }
.product-page { max-width: none; }
.eyebrow {
  margin: 0 0 10px;
  color: var(--accent);
  font-weight: 800;
  text-transform: uppercase;
  font-size: 0.78rem;
}
h1, h2, h3, p { margin-top: 0; }
h1 { font-size: clamp(2rem, 6vw, 4.75rem); line-height: 1.02; letter-spacing: 0; max-width: 11ch; }
.page-title h1 { max-width: 18ch; }
h2 { font-size: clamp(1.45rem, 3vw, 2.25rem); line-height: 1.08; letter-spacing: 0; }
h3 { font-size: 1.2rem; line-height: 1.2; letter-spacing: 0; }
.lead { color: var(--muted); font-size: 1.13rem; max-width: 68ch; }
.muted { color: var(--muted); }
.hero-actions, .card-actions { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; }
.button {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  border-radius: 6px;
  background: var(--accent);
  color: var(--white);
  text-decoration: none;
  font-weight: 750;
}
.button.is-large { min-height: 50px; padding-inline: 20px; }
.button.is-disabled {
  background: #d9e3dd;
  color: var(--muted);
}
.pe-shortlist-toggle {
  display: none;
  align-items: center;
  gap: 0.5em;
  min-height: 42px;
  border-radius: 999px;
  border: 1px solid rgba(27, 36, 30, 0.14);
  background: #fff;
  color: var(--ink);
  font: inherit;
  font-weight: 700;
  padding: 0.7em 1.05em;
  cursor: pointer;
}
html.pe-on .pe-shortlist-toggle { display: inline-flex; }
.pe-shortlist-toggle.is-active {
  background: rgba(230, 161, 44, 0.16);
  border-color: rgba(230, 161, 44, 0.42);
  color: #7a4f11;
}
.pe-shortlist-icon { font-size: 0.95em; line-height: 1; }
.hero-map {
  width: min(100%, 860px);
  margin-top: 28px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
}
.metrics-band {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  background: var(--line);
  border-block: 1px solid var(--line);
}
.metrics-band div {
  background: white;
  padding: 22px clamp(18px, 4vw, 40px);
}
.metrics-band strong { display: block; font-size: 2rem; }
.metrics-band span { color: var(--muted); }
.section, .content-band {
  padding: clamp(34px, 6vw, 72px) clamp(18px, 5vw, 72px);
}
.section-heading { max-width: 760px; margin-bottom: 24px; }
.card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 18px;
}
.family-card, .variant-card, .fact-panel {
  background: white;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 22px;
  min-width: 0;
}
.variant-card.ready_for_public_mvp { border-color: #1E7A4D61; box-shadow: inset 0 3px 0 var(--accent); }
.variant-card.needs_landing_work, .variant-card.needs_registration_mapping, .variant-card.needs_catalog_review { border-style: dashed; border-color: #C9821A8a; }
.variant-card.blocked { border-color: #C2603F7a; }
.card-kicker { color: var(--muted); font-size: 0.82rem; font-weight: 750; margin-bottom: 8px; }
.meta-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0;
}
.meta-grid.wide { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
dt { color: var(--muted); font-size: 0.78rem; }
dd { margin: 0; font-weight: 700; }
.content-band {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 18px;
}
.source-content-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.95fr) minmax(320px, 1.35fr);
  gap: 18px;
}
.evidence-panel-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 14px;
}
.evidence-panel {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 18px;
}
.evidence-panel.is-strong {
  border-color: #1E7A4D52;
  background: #f2faf6;
}
.content-excerpts,
.relationship-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding-left: 20px;
}
.content-excerpts li span,
.relationship-list li span {
  display: block;
  color: var(--muted);
  font-size: 0.82rem;
}
.relationship-list li strong {
  display: block;
}
.evidence-grid { display: flex; flex-wrap: wrap; gap: 8px; }
.evidence {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 0.82rem;
}
.evidence.is-present { background: #e8f5ef; color: var(--accent-ink); border-color: #b8dece; }
.evidence.is-missing { color: var(--muted); background: #f4f6f4; }
.offering-section + .offering-section { margin-top: 34px; }
.catalog-controls {
  display: grid;
  grid-template-columns: minmax(220px, 1.5fr) repeat(4, minmax(150px, 1fr));
  gap: 12px;
  align-items: end;
  margin-bottom: 14px;
}
.catalog-controls label {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 700;
}
.catalog-controls input,
.catalog-controls select {
  width: 100%;
  min-height: 42px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  padding: 8px 10px;
}
.catalog-result-count {
  color: var(--muted);
  font-weight: 700;
}
.site-footer {
  padding: 40px clamp(18px, 5vw, 72px);
  border-top: 0;
  color: #d7ddd8;
  background: #15352A;
  display: grid;
  gap: 10px;
}
.footer-nav { display: flex; flex-wrap: wrap; gap: 18px; }
.footer-nav a { color: #e6ede8; font-weight: 650; }
.footer-brand { margin: 0; font-weight: 650; color: #ffffff; }
.footer-identity { margin: 0; font-size: 0.9rem; }
.breadcrumbs {
  padding: 14px clamp(18px, 5vw, 72px) 0;
  font-size: 0.88rem;
  color: var(--muted);
}
.breadcrumbs ol {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  margin: 0;
  padding: 0;
}
.breadcrumbs li { display: flex; align-items: center; gap: 6px 10px; }
.breadcrumbs li + li::before { content: "›"; color: var(--line); }
.breadcrumbs a { text-decoration: none; border-bottom: 1px solid var(--line); }
.breadcrumbs li[aria-current="page"] span { color: var(--ink); font-weight: 650; }
.hero-home { background: linear-gradient(180deg, var(--surface-strong), #ffffff); }
.value-band { background: var(--surface); }
.browse-band { background: #ffffff; }
.faq-band { background: var(--surface); }
.faq-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 18px;
}
.faq-item {
  background: white;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 20px 22px;
}
.faq-item h3 { font-size: 1.08rem; margin-bottom: 8px; }
.faq-item p { margin: 0; color: var(--muted); }
.section-cta { margin: 18px 0 0; }
.final-cta { background: var(--surface-strong); }
.final-cta .section-heading { margin-bottom: 18px; }
.contact-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 18px;
}
.contact-grid .fact-panel h2 { font-size: 1.3rem; }
/* Kontakt v2 (designer parity, Pakett_kontakt_aitäh 2026-07-12): topic cards
   are prefilled mailto links; the side column carries phone + promise cards. */
.kontakt-grid { display: grid; grid-template-columns: 1.25fr 0.75fr; gap: clamp(18px, 4vw, 40px); align-items: start; }
.kontakt-main h2, .kontakt-side h2 { font-size: 1.3rem; }
.kontakt-hint { color: var(--muted); max-width: 60ch; }
.kontakt-topics { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 16px; }
.kontakt-topic {
  display: block;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 16px 18px;
  text-decoration: none;
  transition: border-color 0.15s ease;
}
.kontakt-topic:hover, .kontakt-topic:focus-visible { border-color: var(--accent-2); }
.kontakt-topic b { display: block; font-family: var(--serif); font-weight: 600; color: var(--accent-ink); font-size: 1.05rem; margin-bottom: 4px; }
.kontakt-topic span { display: block; font-size: 0.9rem; color: var(--muted); line-height: 1.45; }
.kontakt-side { display: grid; gap: 16px; }
.kontakt-phone { font-family: var(--serif); font-weight: 600; font-size: 1.3rem; text-decoration: none; }
.kontakt-promise { background: var(--accent-ink); color: #e7efe8; border-color: var(--accent-ink); }
.kontakt-promise .card-kicker, .kontakt-promise h2 { color: var(--white); }
.kontakt-promise ol { margin: 8px 0 0; padding-left: 20px; display: grid; gap: 8px; }
/* Koolitajad (two-competence-axis trainer cards, 2026-07-07) */
.trainer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 18px; }
.trainer-card { background: #fff; border: 1px solid #d8d2c4; border-radius: 14px; padding: 22px; }
.tr-head { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 10px; }
.tr-avatar { flex: none; width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center;
  background: linear-gradient(135deg, #1D4A3A, #A8721F); color: #f6f1e7; font-weight: 700; font-size: 1.1rem; }
.trainer-card h2 { font-size: 1.2rem; margin: 0 0 2px; }
.tr-title { font-weight: 600; margin: 0; }
.tr-sub { color: #5b5145; font-size: 0.9rem; margin: 2px 0 0; }
.tr-bio { color: #3a463f; font-size: 0.95rem; }
.tr-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0; }
.tr-tag { font-size: 0.78rem; font-weight: 600; padding: 3px 10px; border-radius: 999px; background: #15352A12; color: #15352A; }
.tr-tag.is-em { background: #C1872B22; color: #8a5a10; }
.tr-kutse { border-top: 1px dashed #d8d2c4; padding-top: 10px; margin: 10px 0 0; font-size: 0.9rem; color: #3a463f; }
.tr-empty, .tr-more { color: #5b5145; }
/* 2026-07-09 brand uplift: static no-script discovery pages */
body.pw-discovery-page {
  background: #F6F1E7;
  color: #1b241e;
  background-image: radial-gradient(900px 500px at 88% -8%, #1D4A3A14, transparent 60%), radial-gradient(700px 420px at -6% 8%, #C1872B12, transparent 55%);
}
body.pw-discovery-page .site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px clamp(16px, 5vw, 48px);
  background: rgba(246, 241, 231, 0.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(27, 36, 30, 0.14);
}
body.pw-discovery-page .site-header nav {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
body.pw-discovery-page .site-header nav a {
  display: inline-flex;
  align-items: center;
  padding: 0.5em 0.9em;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 600;
  font-size: 0.96rem;
  color: #15352A;
  border: 1px solid transparent;
}
body.pw-discovery-page .site-header nav a:hover,
body.pw-discovery-page .site-header nav a[aria-current="page"] {
  background: rgba(30, 77, 56, 0.08);
  border-color: rgba(30, 77, 56, 0.14);
}
body.pw-discovery-page .pe-shortlist-link {
  background: #FBF8F1;
  color: #15352A;
}
body.pw-discovery-page .site-footer {
  background: linear-gradient(160deg, #0E271F, #15352A);
  color: #e7efe8;
  border-top: 0;
  margin-top: clamp(3rem, 7vw, 6rem);
}
body.pw-discovery-page .site-footer a { color: #dbe7dd; }
body.pw-discovery-page .site-footer .footer-brand { color: #fff; font-family: var(--serif); font-weight: 600; }
body.pw-discovery-page .site-footer .footer-identity,
body.pw-discovery-page .site-footer .footer-note { color: #bcd0c2; }
.crumbs {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0.8rem clamp(20px, 5vw, 48px) 0;
  font-size: 0.88rem;
  color: #5b655e;
}
.crumbs a { color: #1D4A3A; text-decoration: none; }
.crumbs a:hover { text-decoration: underline; }
.pw-page-head,
.pw-section {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: clamp(20px, 5vw, 48px);
}
.pw-page-head {
  padding-top: clamp(1.6rem, 3.4vw, 2.6rem);
  padding-bottom: clamp(1rem, 2vw, 1.4rem);
}
.pw-retraining-hub .pw-page-head h1 {
  max-width: 18ch;
  font-size: clamp(2.7rem, 5.2vw, 4.5rem);
}
.pw-retraining-hub .pw-page-head {
  padding-top: clamp(2rem, 4vw, 3.6rem);
  padding-bottom: clamp(1.5rem, 3vw, 2.5rem);
}
.pw-hub-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.85rem 1.1rem;
  margin: 1.5rem 0 0;
}
.pw-lede {
  font-size: clamp(1.08rem, 1.6vw, 1.28rem);
  color: #3f4b44;
  max-width: 58ch;
}
.pw-legacy-note {
  margin-top: 1.1rem;
  max-width: 58ch;
  padding: 0.9rem 1.1rem;
  background: #FBF8F1;
  border: 1px solid rgba(27, 36, 30, 0.14);
  border-left: 3px solid #C1872B;
  border-radius: 6px;
}
.pw-legacy-note p {
  margin: 0.3rem 0 0;
  font-size: 0.98rem;
  color: #3f4b44;
}
.pw-legacy-note p:first-child {
  margin-top: 0;
}
.pw-motif {
  position: relative;
  height: 1px;
  max-width: 1180px;
  margin: clamp(1.2rem, 3vw, 2rem) auto 0;
  background: linear-gradient(90deg, transparent, rgba(27, 36, 30, 0.12) 12%, rgba(27, 36, 30, 0.12) 78%, transparent);
  border: 0;
}
.pw-motif::after {
  content: "";
  position: absolute;
  right: 16%;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #C1872B;
  box-shadow: 0 0 0 4px rgba(230, 161, 44, 0.15);
  transform: translateY(-70%);
}
.pw-filters,
.pw-empty-state,
.pw-field-card,
.pw-persona-card,
.pw-program-card {
  background: #FBF8F1;
  border: 1px solid rgba(27, 36, 30, 0.12);
  border-radius: 8px;
  box-shadow: 0 18px 40px -28px rgba(27, 36, 30, 0.24);
}
.pw-filters {
  display: grid;
  gap: 1rem;
  padding: clamp(1.1rem, 2.4vw, 1.5rem) clamp(1.1rem, 2.4vw, 1.6rem);
}
.pw-filter-search {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  background: #fff;
  border: 1px solid rgba(27, 36, 30, 0.14);
  border-radius: 999px;
  padding: 0.15rem 0.3rem 0.15rem 1.1rem;
}
.pw-filter-search svg { color: #1D4A3A; flex: none; }
.pw-filter-search input {
  flex: 1;
  border: 0;
  background: transparent;
  font: inherit;
  color: #1b241e;
  padding: 0.7rem 0;
}
.pw-filter-search input::placeholder { color: #5a6660; }
.pw-search-go {
  flex: none;
  border: 0;
  cursor: pointer;
  background: #15352A;
  color: #fff;
  font: inherit;
  font-weight: 600;
  border-radius: 999px;
  padding: 0.65em 1.2em;
}
.pw-filter-group {
  display: flex;
  align-items: baseline;
  gap: 0.7rem 0.9rem;
  flex-wrap: wrap;
}
.pw-filter-label {
  min-width: 5.6rem;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #5b655e;
}
.pw-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.pw-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.4em;
  text-decoration: none;
  font-weight: 600;
  font-size: 0.94rem;
  color: #15352A;
  background: rgba(30, 77, 56, 0.05);
  border: 1px solid rgba(30, 77, 56, 0.12);
  border-radius: 999px;
  padding: 0.42em 0.95em;
}
.pw-chip:hover { background: rgba(30, 77, 56, 0.09); }
.pw-chip[aria-current="page"] {
  background: #15352A;
  color: #fff;
  border-color: #15352A;
}
.pw-chip-count {
  font-size: 0.82em;
  opacity: 0.72;
}
.pw-result-bar {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin: clamp(1.4rem, 3vw, 2rem) 0 1.1rem;
}
.pw-result-count {
  margin: 0;
  font-size: 0.94rem;
  color: #5b655e;
  font-weight: 600;
}
.pw-result-count b { color: #1b241e; }
.pw-sort-link {
  font-size: 0.9rem;
  color: #1D4A3A;
  text-decoration: none;
  font-weight: 600;
}
.pw-sort-link:hover { text-decoration: underline; }
.pw-card-grid,
.pw-persona-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 1.1rem;
}
.pw-program-card {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  border-left: 4px solid var(--pw-accent, #15352A);
  padding: clamp(1.3rem, 2.6vw, 1.6rem);
}
.pw-program-card.is-coming {
  background: #f4efe4;
  border-left-color: #bcbcae;
}
.pw-program-top,
.pw-field-head {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  flex-wrap: wrap;
  margin-bottom: 0.3rem;
}
.pw-program-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.45em;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--pw-accent, #15352A);
  background: color-mix(in srgb, var(--pw-accent, #15352A) 12%, transparent);
  border: 1px solid color-mix(in srgb, var(--pw-accent, #15352A) 24%, transparent);
  border-radius: 999px;
  padding: 0.32em 0.8em;
}
.pw-program-card h2,
.pw-field-card h2,
.pw-persona-card h2,
.pw-empty-state h2 {
  font-size: clamp(1.32rem, 2.3vw, 1.9rem);
  margin: 0;
}
.pw-program-desc,
.pw-field-desc,
.pw-persona-card p,
.pw-empty-state p {
  color: #3f4b44;
}
.pw-program-meta {
  display: grid;
  gap: 0.15rem;
  margin: 0 0 1.1rem;
}
.pw-meta-row {
  display: grid;
  grid-template-columns: 5.6rem 1fr;
  gap: 0.8rem;
  padding: 0.5rem 0;
  border-bottom: 1px dashed rgba(27, 36, 30, 0.12);
  font-size: 0.94rem;
}
.pw-meta-row:last-child { border-bottom: 0; }
.pw-meta-key { color: #5b655e; }
.pw-meta-value { font-weight: 600; color: #1b241e; }
.pw-card-actions {
  margin-top: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
  align-items: center;
}
.pw-btn-honey,
.pw-btn-ghost {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  font-weight: 600;
  font-size: 1rem;
  text-decoration: none;
  border-radius: 999px;
  padding: 0.8em 1.4em;
}
.pw-btn-honey {
  background: #C1872B;
  color: #2a1d05;
  box-shadow: 0 10px 22px -12px #A8721F;
}
.pw-btn-ghost {
  background: transparent;
  color: #15352A;
  border: 1px solid #15352A;
}
.pw-card-shortlist {
  padding: 0.8em 1.1em;
  min-height: 0;
}
.pw-secondary-link,
.pw-persona-link {
  color: #1D4A3A;
  font-weight: 600;
  text-decoration: none;
}
.pw-secondary-link:hover,
.pw-persona-link:hover { text-decoration: underline; }
.pw-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.45em;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  border-radius: 999px;
  padding: 0.3em 0.7em;
}
.pw-status-pill::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  flex: none;
}
.pw-status-pill.is-open {
  color: #15352A;
  background: rgba(230, 161, 44, 0.14);
  border: 1px solid rgba(230, 161, 44, 0.33);
}
.pw-status-pill.is-open::before { background: #C1872B; }
.pw-status-pill.is-soon {
  color: #5c5c50;
  background: rgba(27, 36, 30, 0.05);
  border: 1px solid rgba(27, 36, 30, 0.12);
}
.pw-status-pill.is-soon::before { background: #9a9a8c; }
.pw-empty-state {
  padding: clamp(1.4rem, 3vw, 2rem);
  border-style: dashed;
}
.pw-field-list { display: flex; flex-direction: column; gap: 1.1rem; }
.pw-field-register {
  display: grid;
  gap: 0.95rem;
}
.pw-field-register-item {
  display: grid;
  grid-template-columns: minmax(56px, 72px) minmax(0, 1.2fr) minmax(260px, 0.9fr);
  gap: clamp(1rem, 2vw, 1.6rem);
  align-items: start;
  padding: clamp(1.35rem, 2.8vw, 1.7rem);
  border-top: 1px solid rgba(27, 36, 30, 0.12);
  background: #fbf8f1;
}
.pw-field-register-item:last-child {
  border-bottom: 1px solid rgba(27, 36, 30, 0.12);
}
.pw-field-register-item.is-coming {
  background: #f4efe4;
}
.pw-field-register-index {
  font-family: var(--serif);
  font-size: clamp(1.9rem, 4vw, 2.9rem);
  line-height: 0.95;
  color: #15352A;
}
.pw-field-register-copy {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}
.pw-field-band {
  max-width: none;
  background: #15352a;
  color: #edf3ee;
  margin-top: clamp(2.2rem, 5vw, 4rem);
  padding-block: clamp(2.2rem, 5vw, 4rem);
}
.pw-field-band-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: clamp(20px, 5vw, 48px);
}
.pw-field-band h2,
.pw-field-band p {
  color: inherit;
}
.pw-field-band .pw-chip {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.14);
  color: #edf3ee;
}
.pw-field-band .eyebrow {
  color: #C1872B;
}
.pw-field-card {
  padding: clamp(1.4rem, 3vw, 2rem);
  border-left: 4px solid var(--pw-accent, #15352A);
}
.pw-field-card[data-program="daca"] { --pw-accent: #15352A; }
.pw-field-card[data-program="arh"] { --pw-accent: #3D2B6B; }
.pw-field-card[data-program="uap"] { --pw-accent: #1E3A5F; }
.pw-field-card[data-program="aals"] { --pw-accent: #6B2233; }
.pw-field-card.is-coming { background: #f4efe4; border-style: dashed; }
.pw-program-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
}
.pw-program-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  text-decoration: none;
  font-weight: 600;
  font-size: 0.95rem;
  color: #1b241e;
  background: #fff;
  border: 1px solid rgba(27, 36, 30, 0.12);
  border-left: 3px solid var(--pw-accent, #15352A);
  border-radius: 10px;
  padding: 0.6em 1em;
}
.pw-program-link::after { content: "→"; color: var(--pw-accent, #15352A); font-weight: 700; }
.pw-shortlist-fallback { display: block; }
.pw-shortlist-app { display: none; }
html.pe-on .pw-shortlist-fallback { display: none; }
html.pe-on .pw-shortlist-app { display: block; }
.pw-shortlist-summary {
  margin-bottom: 1rem;
  color: #3f4b44;
  max-width: 62ch;
}
.pw-shortlist-actions {
  display: flex;
  gap: 0.8rem;
  flex-wrap: wrap;
  margin-bottom: 1.2rem;
}
.pw-shortlist-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1rem;
}
.pw-shortlist-card {
  background: #FBF8F1;
  border: 1px solid rgba(27, 36, 30, 0.12);
  border-radius: 8px;
  border-left: 4px solid var(--pw-shortlist-accent, #15352A);
  padding: 1.25rem;
}
.pw-shortlist-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.8rem;
  flex-wrap: wrap;
  margin-bottom: 0.6rem;
}
.pw-shortlist-remove {
  border: 0;
  background: transparent;
  color: #1D4A3A;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  padding: 0;
}
.pw-shortlist-meta {
  display: grid;
  gap: 0.65rem;
  margin: 1rem 0;
}
.pw-shortlist-meta dt {
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.pw-shortlist-meta dd { margin: 0.2rem 0 0; }
.pw-shortlist-compare { padding-top: 0; }
.pw-compare-grid { display: grid; gap: 0.8rem; }
.pw-compare-row {
  display: grid;
  grid-template-columns: minmax(160px, 0.7fr) repeat(auto-fit, minmax(180px, 1fr));
  gap: 0.8rem;
}
.pw-compare-head { display: none; }
.pw-compare-label,
.pw-compare-cell,
.pw-compare-program {
  background: #FBF8F1;
  border: 1px solid rgba(27, 36, 30, 0.12);
  border-radius: 8px;
  padding: 1rem 1.1rem;
}
.pw-compare-label {
  font-weight: 800;
  color: #1b241e;
}
.pw-compare-program h3 { margin: 0; font-size: 1.1rem; }
.pw-compare-program a { text-decoration: none; }
.pw-compare-accent {
  width: 42px;
  height: 6px;
  border-radius: 999px;
  margin-bottom: 0.8rem;
}
.pw-compare-cell ul {
  margin: 0;
  padding-left: 1rem;
}
.pw-persona-card {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  padding: clamp(1.4rem, 2.8vw, 1.8rem);
}
.pw-persona-register {
  display: grid;
  gap: 0.9rem;
}
.pw-persona-register-item {
  display: grid;
  grid-template-columns: minmax(56px, 72px) minmax(0, 1fr);
  gap: clamp(1rem, 2vw, 1.5rem);
  padding: clamp(1.35rem, 2.8vw, 1.7rem);
  border-top: 1px solid rgba(27, 36, 30, 0.12);
  background: #fbf8f1;
}
.pw-persona-register-item:last-child {
  border-bottom: 1px solid rgba(27, 36, 30, 0.12);
}
.pw-persona-register-index {
  font-family: var(--serif);
  font-size: clamp(1.9rem, 4vw, 2.9rem);
  line-height: 0.95;
  color: #15352A;
}
.pw-persona-register-copy {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  min-width: 0;
}
.pw-persona-register-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
}
.pw-persona-quote {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  line-height: 1.15;
  color: #1b241e;
}
.pw-persona-fit {
  color: #5b655e;
}
.pw-persona-band {
  max-width: none;
  background: #15352a;
  color: #edf3ee;
  margin-top: clamp(2.2rem, 5vw, 4rem);
  padding-block: clamp(2.2rem, 5vw, 4rem);
}
.pw-persona-band-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: clamp(20px, 5vw, 48px);
}
.pw-persona-band h2,
.pw-persona-band p {
  color: inherit;
}
.pw-persona-band .pw-chip {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.14);
  color: #edf3ee;
}
.pw-persona-band .eyebrow {
  color: #C1872B;
}
.pw-persona-card.is-wide {
  grid-column: 1 / -1;
  flex-direction: row;
  align-items: center;
  gap: 1.6rem;
  flex-wrap: wrap;
  background: linear-gradient(160deg, #fbf8f1, #f4efe3);
}
.pw-persona-copy { flex: 1; min-width: min(100%, 26rem); }
.pw-persona-icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  margin-bottom: 0.9rem;
  background: rgba(30, 77, 56, 0.08);
  color: #15352A;
}
.pw-persona-card.is-wide .pw-persona-icon { margin-bottom: 0; }
@media (max-width: 760px) {
  .site-header, nav, .hero-actions, .card-actions { align-items: flex-start; }
  .site-header { flex-direction: column; }
  .metrics-band, .content-band, .meta-grid, .source-content-grid, .catalog-controls, .faq-grid, .contact-grid, .kontakt-grid, .kontakt-topics { grid-template-columns: 1fr; }
  .pw-card-grid, .pw-persona-grid { grid-template-columns: 1fr; }
  .pw-field-register-item { grid-template-columns: 1fr; }
  .pw-field-register-index { font-size: 1.8rem; }
  .pw-filter-label { min-width: 100%; }
  .pw-persona-register-item { grid-template-columns: 1fr; }
  .pw-persona-register-index { font-size: 1.8rem; }
  .pw-persona-card.is-wide { flex-direction: column; align-items: flex-start; }
  .pw-compare-row { grid-template-columns: 1fr; }
  h1 { font-size: clamp(1.75rem, 8vw, 2.75rem); }
}
[data-mcbar]{--mcbar-accent:var(--evk-accent-strong,var(--honey,#C1872B))}[data-mcbar][data-program='uap']{--mcbar-accent:var(--evk-honey,#C1872B)}[data-mcbar] .sc-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:48%}[data-mcbar]{padding-left:14px!important;padding-right:14px!important;gap:.6rem!important}[data-mcbar] .cta-link,[data-mcbar] .cta-anchor{flex:0 0 auto;padding:0 16px;font-size:15px}[data-mcbar] .cta-link,[data-mcbar] .cta-anchor{background:var(--mcbar-accent);color:#fff;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;border-radius:999px;text-decoration:none;font-weight:700}h1,h2{overflow-wrap:break-word}.nav-sheet{display:none}.pe-shortlist-link .pe-shortlist-ico{display:none}@media(max-width:768px){.site-header{flex-direction:row!important;align-items:center!important;justify-content:space-between;flex-wrap:nowrap;gap:.5rem;height:auto;min-height:56px;padding-top:0!important;padding-bottom:0!important}.site-header>.bar{flex-wrap:nowrap;gap:.5rem;min-height:56px;padding-top:.4rem;padding-bottom:.4rem}.site-header .brand,.site-header .brand-mark{flex:0 0 auto;display:inline-flex;align-items:center}.site-header .brand-logo{max-height:32px!important;height:auto;width:auto}.site-nav{display:none!important}.site-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.site-header::before{content:'';position:absolute;inset:0;z-index:-1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.pe-shortlist-link{margin-left:auto;order:2;white-space:nowrap}.pe-shortlist-link .pe-shortlist-ico{display:inline;font-size:1.15rem;line-height:1}.pe-shortlist-link .pe-shortlist-text{display:none}.nav-sheet{display:block;order:3;flex:0 0 auto}.nav-sheet>summary{list-style:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent}.nav-sheet>summary::-webkit-details-marker{display:none}.nav-sheet-ico{position:relative;display:block;width:22px;height:2px;background:currentColor;border-radius:2px}.nav-sheet-ico::before,.nav-sheet-ico::after{content:'';position:absolute;left:0;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s ease}.nav-sheet-ico::before{top:-7px}.nav-sheet-ico::after{top:7px}.nav-sheet[open]>summary .nav-sheet-ico{background:transparent}.nav-sheet[open]>summary .nav-sheet-ico::before{transform:translateY(7px) rotate(45deg)}.nav-sheet[open]>summary .nav-sheet-ico::after{transform:translateY(-7px) rotate(-45deg)}.nav-sheet[open]>summary{position:relative;z-index:61}.nav-sheet-body{position:fixed;inset:56px 0 0 0;z-index:60;background:var(--evk-paper,var(--paper,#f3ede2));color:var(--evk-ink,var(--ink,#1b1712));overflow-y:auto;padding:1rem clamp(20px,6vw,40px) calc(2rem + env(safe-area-inset-bottom))}.nav-sheet-nav{display:flex;flex-direction:column}.nav-sheet-nav a{display:flex;align-items:center;min-height:52px;font-size:1.12rem;font-weight:600;text-decoration:none;color:inherit;border-bottom:1px solid rgba(0,0,0,.1)}.nav-sheet-actions{display:flex;flex-direction:column;gap:.6rem;margin-top:1.3rem}.nav-sheet-cta-primary,.nav-sheet-cta-secondary{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:999px;font-weight:700;text-decoration:none;padding:0 1.2rem}.nav-sheet-cta-primary{background:var(--evk-accent-strong,var(--honey,#C1872B));color:#fff}.nav-sheet-cta-secondary{border:1.5px solid currentColor;color:inherit}.crumbs,.breadcrumbs{display:block;white-space:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.crumbs::-webkit-scrollbar,.breadcrumbs::-webkit-scrollbar{display:none}.footer-nav a{display:inline-flex;align-items:center;min-height:44px}input,select,textarea{font-size:16px!important}[data-mcbar]{padding-top:.45rem!important;padding-bottom:calc(.45rem + env(safe-area-inset-bottom))!important;min-height:56px;box-sizing:border-box;position:fixed!important;left:0;right:0;bottom:0;z-index:55;margin:0!important}body:has([data-mcbar]){padding-bottom:72px}}
