/* crescō · slides · 20 tipos · v1.0 */

.slide-frame {
    width: 100%;
    aspect-ratio: 16/9;
    border: var(--bw) solid var(--line);
    border-radius: 8px;
    overflow: hidden;
    position: relative;
    container-type: inline-size;
    background: #fff;
  }

.slide { width: 100%; height: 100%; position: relative; overflow: hidden; }

.slide.s-cover { background: var(--ink); color: var(--bg); }

.slide.s-cover::after {
    content: ''; position: absolute; inset: 0;
    background: radial-gradient(ellipse at 78% 30%, rgba(61, 82, 64,0.22), transparent 55%);
    pointer-events: none;
  }

.slide.s-cover .eyebrow {
    position: absolute; top: 4cqw; left: 5cqw; z-index: 1;
    font-family: var(--mono); font-size: 1.2cqw;
    letter-spacing: 0.1em; text-transform: uppercase; color: var(--accent);
    display: flex; align-items: center; gap: 0.6cqw;
  }

.slide.s-cover .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-cover .title {
    position: absolute; bottom: 22cqw; left: 5cqw; right: 5cqw; z-index: 1;
    font-family: var(--serif); font-weight: 500; font-size: 8cqw;
    line-height: 0.92; letter-spacing: -0.04em; color: var(--bg);
  }

.slide.s-cover .title .ac { color: var(--accent); }

.slide.s-cover .sub {
    position: absolute; bottom: 12cqw; left: 5cqw; right: 5cqw; z-index: 1;
    font-family: var(--serif); font-style: italic; font-weight: 400;
    font-size: 3.4cqw; color: rgba(239,234,224,0.55);
    letter-spacing: -0.02em;
  }

.slide.s-cover .foot {
    position: absolute; bottom: 4cqw; left: 5cqw; z-index: 1;
    font-family: var(--mono); font-size: 1.1cqw;
    color: rgba(239,234,224,0.65); letter-spacing: 0.04em;
  }

.slide.s-cover .mark {
    position: absolute; bottom: 4cqw; right: 5cqw; z-index: 1;
    font-family: var(--serif); font-weight: 500; font-size: 2.4cqw;
    color: var(--bg); letter-spacing: -0.025em;
  }

.slide.s-cover .mark .dot { color: var(--accent); }

.slide.s-agenda { background: var(--bg); color: var(--ink); padding: 4.5cqw 5cqw; display: flex; flex-direction: column; }

.slide.s-agenda .eyebrow {
    font-family: var(--mono); font-size: 1.1cqw; color: var(--accent);
    letter-spacing: 0.1em; text-transform: uppercase;
    display: flex; align-items: center; gap: 0.6cqw;
  }

.slide.s-agenda .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-agenda .title {
    font-family: var(--serif); font-weight: 500; font-size: 5.4cqw;
    line-height: 1; letter-spacing: -0.035em; margin-top: 1.4cqw;
  }

.slide.s-agenda .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-agenda .list { margin-top: 3.5cqw; flex: 1; display: flex; flex-direction: column; gap: 0.8cqw; }

.slide.s-agenda .item {
    display: grid; grid-template-columns: 4cqw 1fr; gap: 1.5cqw;
    padding: 0.9cqw 0; border-bottom: 0.5pt solid var(--line);
    align-items: baseline;
  }

.slide.s-agenda .item:last-child { border-bottom: none; }

.slide.s-agenda .item .n { font-family: var(--mono); font-size: 1.3cqw; color: var(--accent); letter-spacing: 0.05em; }

.slide.s-agenda .item .t { font-family: var(--serif); font-weight: 500; font-size: 2.2cqw; letter-spacing: -0.018em; line-height: 1.15; color: var(--ink); }

.slide.s-agenda .item .t em { font-style: italic; font-weight: 400; color: var(--muted); }

.slide.s-agenda .item .d { font-size: 1.1cqw; color: var(--ink-soft); margin-top: 0.3cqw; line-height: 1.5; }

.slide.s-agenda .footer { font-family: var(--mono); font-size: 1cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; padding-top: 1.4cqw; border-top: 0.5pt solid var(--line); display: flex; justify-content: space-between; }

.slide.s-divider { background: var(--accent); color: var(--ink); padding: 5cqw; display: flex; flex-direction: column; justify-content: center; }

.slide.s-divider .num {
    font-family: var(--serif); font-style: italic; font-weight: 400;
    font-size: 6cqw; line-height: 1;
    color: rgba(26,22,18,0.4); margin-bottom: 1cqw;
    letter-spacing: -0.04em;
  }

.slide.s-divider .title {
    font-family: var(--serif); font-weight: 500;
    font-size: 11cqw; line-height: 0.92;
    letter-spacing: -0.045em; color: var(--ink); margin-bottom: 2cqw;
  }

.slide.s-divider .sub {
    font-family: var(--serif); font-style: italic; font-weight: 400;
    font-size: 3cqw; color: rgba(26,22,18,0.6);
    line-height: 1.2; letter-spacing: -0.02em; max-width: 70%;
  }

.slide.s-divider .corner {
    position: absolute; bottom: 4cqw; right: 5cqw;
    font-family: var(--mono); font-size: 1cqw;
    color: rgba(26,22,18,0.6); letter-spacing: 0.06em; text-transform: uppercase;
  }

.slide.s-statement { background: var(--paper); color: var(--ink); padding: 6cqw; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; }

.slide.s-statement .quote {
    font-family: var(--serif); font-weight: 500;
    font-size: 7cqw; line-height: 1.05;
    letter-spacing: -0.04em; color: var(--ink); max-width: 92%;
  }

.slide.s-statement .quote em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-statement .attribution {
    font-family: var(--mono); font-size: 1.1cqw;
    color: var(--muted); letter-spacing: 0.08em; text-transform: uppercase;
    margin-top: 4cqw;
  }

.slide.s-statement .border-mark {
    position: absolute; top: 5cqw; left: 5cqw;
    width: 0.3cqw; height: 8cqw; background: var(--accent);
  }

.slide.s-number { background: var(--bg); color: var(--ink); padding: 5cqw; display: flex; flex-direction: column; }

.slide.s-number .eyebrow {
    font-family: var(--mono); font-size: 1.1cqw; color: var(--accent);
    letter-spacing: 0.1em; text-transform: uppercase;
    display: flex; align-items: center; gap: 0.6cqw;
  }

.slide.s-number .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-number .center { flex: 1; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }

.slide.s-number .figure {
    font-family: var(--serif); font-weight: 500;
    font-size: 16cqw; line-height: 0.9;
    letter-spacing: -0.05em; color: var(--accent);
    font-feature-settings: "tnum" 1;
  }

.slide.s-number .label {
    font-family: var(--serif); font-style: italic; font-weight: 400;
    font-size: 3cqw; color: var(--ink-soft);
    margin-top: 1cqw; letter-spacing: -0.02em;
  }

.slide.s-number .quote-block {
    margin-top: 3cqw; padding: 1.6cqw 2cqw;
    border-left: 0.3cqw solid var(--ink); max-width: 60%;
    font-family: var(--serif); font-style: italic;
    font-size: 1.4cqw; line-height: 1.5; color: var(--ink);
  }

.slide.s-number .quote-block cite {
    display: block; margin-top: 0.5cqw;
    font-family: var(--mono); font-style: normal;
    font-size: 1cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase;
  }

.slide.s-number .meta-foot {
    display: flex; justify-content: space-between;
    font-family: var(--mono); font-size: 1cqw;
    color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase;
    padding-top: 1.4cqw; border-top: 0.5pt solid var(--line);
  }

.slide.s-bullet { background: var(--bg); color: var(--ink); padding: 5cqw; display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 4cqw; }

.slide.s-bullet .lc { display: flex; flex-direction: column; justify-content: center; }

.slide.s-bullet .lc .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; margin-bottom: 1.5cqw; }

.slide.s-bullet .lc .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-bullet .lc .title { font-family: var(--serif); font-weight: 500; font-size: 4.4cqw; line-height: 1.02; letter-spacing: -0.035em; color: var(--ink); }

.slide.s-bullet .lc .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-bullet .lc .intro { font-family: var(--serif); font-style: italic; font-size: 1.4cqw; color: var(--muted); margin-top: 1.5cqw; line-height: 1.45; max-width: 90%; }

.slide.s-bullet .lc .foot { font-family: var(--mono); font-size: 0.9cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; margin-top: auto; padding-top: 1cqw; }

.slide.s-bullet .rc { display: flex; flex-direction: column; justify-content: center; gap: 0.4cqw; }

.slide.s-bullet .item { display: grid; grid-template-columns: 4cqw 1fr; gap: 1.4cqw; padding: 1.4cqw 0; border-bottom: 0.5pt solid var(--line); align-items: baseline; }

.slide.s-bullet .item:last-child { border-bottom: none; }

.slide.s-bullet .item .n { font-family: var(--mono); color: var(--accent); font-size: 1.2cqw; letter-spacing: 0.06em; padding-top: 0.3cqw; }

.slide.s-bullet .item .t { font-family: var(--serif); font-weight: 500; font-size: 1.95cqw; letter-spacing: -0.018em; line-height: 1.2; color: var(--ink); }

.slide.s-bullet .item .t em { font-style: italic; font-weight: 400; color: var(--muted); }

.slide.s-bullet .item .d { font-size: 1.1cqw; color: var(--ink-soft); margin-top: 0.4cqw; line-height: 1.5; }

.slide.s-twocol { background: var(--bg); color: var(--ink); padding: 4.5cqw 5cqw; display: flex; flex-direction: column; }

.slide.s-twocol .head .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-twocol .head .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-twocol .head .title { font-family: var(--serif); font-weight: 500; font-size: 4.4cqw; line-height: 1; letter-spacing: -0.035em; margin-top: 1.2cqw; }

.slide.s-twocol .head .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-twocol .cols { flex: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 0; align-items: stretch; margin-top: 3cqw; }

.slide.s-twocol .col { padding: 1.5cqw 0; display: flex; flex-direction: column; }

.slide.s-twocol .col.before { padding-right: 3cqw; border-right: 0.5pt solid var(--line); }

.slide.s-twocol .col.after { padding-left: 3cqw; }

.slide.s-twocol .col .lbl { font-family: var(--mono); font-size: 1cqw; letter-spacing: 0.1em; text-transform: uppercase; }

.slide.s-twocol .col.before .lbl { color: var(--muted); }

.slide.s-twocol .col.after .lbl { color: var(--accent); }

.slide.s-twocol .col h3 { font-family: var(--serif); font-weight: 500; font-size: 2.4cqw; letter-spacing: -0.025em; margin-top: 0.8cqw; line-height: 1.1; }

.slide.s-twocol .col h3 em { font-style: italic; font-weight: 400; color: var(--muted); }

.slide.s-twocol .col.before h3 { color: var(--ink-soft); }

.slide.s-twocol .col.after h3 { color: var(--ink); }

.slide.s-twocol .col ul { list-style: none; padding: 0; margin: 2cqw 0 0; }

.slide.s-twocol .col li { padding: 1.1cqw 0; border-bottom: 0.5pt solid var(--line); font-size: 1.5cqw; line-height: 1.4; display: flex; gap: 1.2cqw; align-items: baseline; }

.slide.s-twocol .col li:last-child { border-bottom: none; }

.slide.s-twocol .col.before li { color: var(--muted); }

.slide.s-twocol .col.before li::before { content: '—'; color: var(--accent-deep); font-family: var(--mono); flex-shrink: 0; font-size: 1.2cqw; }

.slide.s-twocol .col.after li { color: var(--ink); font-family: var(--serif); font-weight: 500; letter-spacing: -0.01em; }

.slide.s-twocol .col.after li::before { content: '+'; color: var(--accent); font-family: var(--mono); flex-shrink: 0; font-size: 1.2cqw; font-weight: 500; }

.slide.s-twocol .col li b { color: var(--ink); font-weight: 500; }

.slide.s-stats { background: var(--bg); color: var(--ink); padding: 4.5cqw 5cqw; display: flex; flex-direction: column; }

.slide.s-stats .head .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-stats .head .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-stats .head .title { font-family: var(--serif); font-weight: 500; font-size: 4.4cqw; line-height: 1; letter-spacing: -0.035em; margin-top: 1.2cqw; }

.slide.s-stats .head .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-stats .grid { flex: 1; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.4cqw; margin-top: 3.5cqw; }

.slide.s-stats .stat { background: var(--paper); border: 0.5pt solid var(--line); border-radius: 1.4cqw; padding: 2.2cqw 2cqw; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }

.slide.s-stats .stat.featured { background: var(--accent); border-color: var(--accent); }

.slide.s-stats .stat .n { font-family: var(--serif); font-weight: 500; font-size: 5.2cqw; line-height: 0.95; color: var(--accent); letter-spacing: -0.04em; font-feature-settings: "tnum" 1; }

.slide.s-stats .stat.featured .n { color: var(--ink); }

.slide.s-stats .stat .l { font-family: var(--serif); font-style: italic; font-weight: 400; font-size: 1.4cqw; color: var(--ink-soft); margin-top: 0.6cqw; line-height: 1.3; letter-spacing: -0.01em; }

.slide.s-stats .stat.featured .l { color: rgba(26,22,18,0.7); }

.slide.s-stats .stat .ctx { font-family: var(--mono); font-size: 0.85cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; margin-top: 1cqw; padding-top: 0.8cqw; border-top: 0.5pt solid var(--line); width: 100%; }

.slide.s-stats .stat.featured .ctx { color: rgba(26,22,18,0.6); border-top-color: rgba(26,22,18,0.18); }

.slide.s-stats .meta-foot { display: flex; justify-content: space-between; font-family: var(--mono); font-size: 0.95cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; padding-top: 1.4cqw; border-top: 0.5pt solid var(--line); margin-top: 2.5cqw; }

.slide.s-quote { background: var(--paper); color: var(--ink); padding: 6cqw 7cqw; display: flex; flex-direction: column; justify-content: center; position: relative; }

.slide.s-quote .marks { position: absolute; top: 4cqw; left: 6cqw; font-family: var(--serif); font-style: italic; font-size: 18cqw; line-height: 0.6; color: var(--accent); opacity: 0.18; pointer-events: none; }

.slide.s-quote .quote { font-family: var(--serif); font-weight: 500; font-size: 4.4cqw; line-height: 1.22; letter-spacing: -0.025em; color: var(--ink); position: relative; z-index: 1; max-width: 95%; }

.slide.s-quote .quote em { font-style: italic; font-weight: 400; }

.slide.s-quote .by { display: flex; align-items: center; gap: 1.6cqw; margin-top: 4cqw; padding-top: 2cqw; border-top: 0.5pt solid var(--line); position: relative; z-index: 1; }

.slide.s-quote .by .av { width: 4.8cqw; height: 4.8cqw; border-radius: 50%; background: var(--ink); color: var(--paper); display: grid; place-items: center; font-family: var(--serif); font-weight: 500; font-size: 1.6cqw; flex-shrink: 0; letter-spacing: -0.02em; }

.slide.s-quote .by .info .who { font-family: var(--serif); font-weight: 500; font-size: 1.8cqw; letter-spacing: -0.015em; }

.slide.s-quote .by .info .role { font-family: var(--mono); font-size: 1cqw; color: var(--muted); margin-top: 0.4cqw; letter-spacing: 0.04em; }

.slide.s-quote .corner { position: absolute; bottom: 4cqw; right: 6cqw; font-family: var(--mono); font-size: 0.95cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; }

.slide.s-process { background: var(--bg); color: var(--ink); padding: 4.5cqw 5cqw; display: flex; flex-direction: column; }

.slide.s-process .head .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-process .head .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-process .head .title { font-family: var(--serif); font-weight: 500; font-size: 4.4cqw; line-height: 1; letter-spacing: -0.035em; margin-top: 1.2cqw; }

.slide.s-process .head .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-process .flow { flex: 1; display: grid; grid-template-columns: repeat(5, 1fr); gap: 1cqw; align-items: start; padding: 4cqw 0 2cqw; position: relative; }

.slide.s-process .flow::before { content: ''; position: absolute; top: calc(4cqw + 1.6cqw); left: 9.5%; right: 9.5%; height: 0.5pt; background: var(--line); z-index: 0; }

.slide.s-process .step { z-index: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 1.2cqw; }

.slide.s-process .step .dot { width: 3.2cqw; height: 3.2cqw; border-radius: 50%; background: var(--bg); border: 1pt solid var(--line); display: grid; place-items: center; font-family: var(--serif); font-weight: 500; font-size: 1.4cqw; color: var(--ink-soft); font-feature-settings: "tnum" 1; }

.slide.s-process .step.active .dot { background: var(--accent); border-color: var(--accent); color: var(--ink); }

.slide.s-process .step .nm { font-family: var(--serif); font-weight: 500; font-size: 1.7cqw; letter-spacing: -0.018em; line-height: 1.15; }

.slide.s-process .step .nm em { font-style: italic; font-weight: 400; color: var(--muted); display: block; font-size: 1.2cqw; margin-top: 0.3cqw; }

.slide.s-process .step .d { font-size: 1cqw; color: var(--ink-soft); line-height: 1.5; padding-top: 0.6cqw; border-top: 0.5pt solid var(--line-soft); margin-top: 0.4cqw; }

.slide.s-process .meta-foot { display: flex; justify-content: space-between; font-family: var(--mono); font-size: 0.95cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; padding-top: 1.4cqw; border-top: 0.5pt solid var(--line); }

.slide.s-closing { background: var(--ink); color: var(--bg); padding: 5cqw; display: flex; flex-direction: column; position: relative; }

.slide.s-closing::after { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse at 22% 70%, rgba(61, 82, 64,0.22), transparent 55%); pointer-events: none; }

.slide.s-closing .eyebrow { z-index: 1; font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-closing .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-closing .center { z-index: 1; flex: 1; display: flex; flex-direction: column; justify-content: center; }

.slide.s-closing .title { font-family: var(--serif); font-weight: 500; font-size: 6cqw; line-height: 1.05; letter-spacing: -0.04em; color: var(--bg); max-width: 90%; }

.slide.s-closing .title em { font-style: italic; font-weight: 400; color: rgba(239,234,224,0.55); }

.slide.s-closing .title .ac { color: var(--accent); }

.slide.s-closing .echo { font-family: var(--serif); font-style: italic; font-size: 1.5cqw; color: rgba(239,234,224,0.6); margin-top: 2cqw; max-width: 70%; line-height: 1.5; }

.slide.s-closing .bottom { z-index: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 4cqw; padding-top: 2cqw; border-top: 0.5pt solid rgba(239,234,224,0.18); }

.slide.s-closing .col .lbl { font-family: var(--mono); font-size: 0.95cqw; color: rgba(239,234,224,0.5); letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 0.8cqw; }

.slide.s-closing .col .val { font-family: var(--serif); font-weight: 500; font-size: 1.7cqw; line-height: 1.3; letter-spacing: -0.015em; color: var(--bg); }

.slide.s-closing .col .val em { font-style: italic; font-weight: 400; color: rgba(239,234,224,0.65); }

.slide.s-closing .col .val a { color: var(--accent); text-decoration: none; }

.slide.s-closing .col .extra { font-family: var(--mono); font-size: 0.95cqw; color: rgba(239,234,224,0.55); margin-top: 0.5cqw; letter-spacing: 0.04em; }

.slide.s-closing .mark-big { position: absolute; bottom: 4cqw; right: 5cqw; z-index: 2; font-family: var(--serif); font-weight: 500; font-size: 4cqw; color: var(--bg); letter-spacing: -0.035em; }

.slide.s-closing .mark-big .dot { color: var(--accent); }

.slide.s-bar { background: var(--bg); color: var(--ink); padding: 4.5cqw 5cqw; display: flex; flex-direction: column; }

.slide.s-bar .head .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-bar .head .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-bar .head .title { font-family: var(--serif); font-weight: 500; font-size: 4cqw; line-height: 1; letter-spacing: -0.035em; margin-top: 1cqw; }

.slide.s-bar .head .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-bar .head .title .ac { color: var(--accent); }

.slide.s-bar .chart { flex: 1; display: flex; flex-direction: column; justify-content: flex-end; padding: 3cqw 0 1cqw; position: relative; }

.slide.s-bar .bars { display: flex; align-items: flex-end; justify-content: space-between; gap: 1.6cqw; height: 30cqw; padding: 0 1cqw; border-bottom: 0.5pt solid var(--line); position: relative; }

.slide.s-bar .bars::before { content: 'min/día'; position: absolute; top: -1.5cqw; left: 0; font-family: var(--mono); font-size: 0.85cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; }

.slide.s-bar .bar-col { flex: 1; display: flex; flex-direction: column; align-items: stretch; gap: 0.8cqw; height: 100%; justify-content: flex-end; min-width: 0; }

.slide.s-bar .bar-col .value { font-family: var(--serif); font-weight: 500; font-size: 1.5cqw; text-align: center; font-feature-settings: "tnum" 1; color: var(--ink-soft); letter-spacing: -0.01em; }

.slide.s-bar .bar-col .bar { width: 100%; background: var(--ink-soft); border-radius: 0.4cqw 0.4cqw 0 0; min-height: 1cqw; }

.slide.s-bar .bar-col.featured .bar { background: var(--accent); }

.slide.s-bar .bar-col.featured .value { color: var(--accent); font-weight: 500; }

.slide.s-bar .axis { display: flex; justify-content: space-between; gap: 1.6cqw; padding: 1cqw 1cqw 0; }

.slide.s-bar .axis .tick { flex: 1; text-align: center; font-family: var(--mono); font-size: 1cqw; color: var(--muted); letter-spacing: 0.04em; }

.slide.s-bar .axis .tick.featured { color: var(--accent); font-weight: 500; }

.slide.s-bar .insight { margin-top: 2cqw; padding: 1.4cqw 1.8cqw; background: var(--paper); border-left: 0.3cqw solid var(--accent); border-radius: 0.4cqw; font-family: var(--serif); font-style: italic; font-size: 1.4cqw; line-height: 1.5; color: var(--ink); max-width: 80%; }

.slide.s-bar .insight cite { display: block; font-family: var(--mono); font-style: normal; font-size: 0.85cqw; color: var(--muted); margin-top: 0.4cqw; letter-spacing: 0.06em; text-transform: uppercase; }

.slide.s-bar .meta-foot { display: flex; justify-content: space-between; font-family: var(--mono); font-size: 0.95cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; padding-top: 1.4cqw; border-top: 0.5pt solid var(--line); margin-top: 1.5cqw; }

.slide.s-decision { background: var(--paper); color: var(--ink); padding: 5cqw 6cqw; display: flex; flex-direction: column; position: relative; }

.slide.s-decision .border-mark { position: absolute; top: 5cqw; left: 4cqw; width: 0.3cqw; height: 8cqw; background: var(--accent); }

.slide.s-decision .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-decision .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-decision .reco-label { font-family: var(--serif); font-style: italic; font-size: 1.3cqw; color: var(--muted); margin-top: 0.8cqw; letter-spacing: 0.02em; }

.slide.s-decision .statement { font-family: var(--serif); font-weight: 500; font-size: 6.4cqw; line-height: 1.02; letter-spacing: -0.045em; color: var(--ink); margin-top: 1.5cqw; max-width: 92%; }

.slide.s-decision .statement em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-decision .statement .ac { color: var(--accent); }

.slide.s-decision .reasons { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2cqw; margin-top: 4cqw; padding-top: 2.5cqw; border-top: 0.5pt solid var(--line); }

.slide.s-decision .reason { padding: 0; }

.slide.s-decision .reason .num { font-family: var(--mono); font-size: 0.95cqw; color: var(--accent); letter-spacing: 0.06em; }

.slide.s-decision .reason .txt { font-family: var(--serif); font-weight: 500; font-size: 1.4cqw; line-height: 1.4; letter-spacing: -0.01em; color: var(--ink); margin-top: 0.5cqw; }

.slide.s-decision .reason .txt em { font-style: italic; font-weight: 400; color: var(--muted); }

.slide.s-decision .signed { display: flex; align-items: center; gap: 1.4cqw; margin-top: 3cqw; padding-top: 1.5cqw; border-top: 0.5pt solid var(--line); }

.slide.s-decision .signed .av { width: 3.5cqw; height: 3.5cqw; border-radius: 50%; background: var(--ink); color: var(--paper); display: grid; place-items: center; font-family: var(--serif); font-weight: 500; font-size: 1.2cqw; flex-shrink: 0; letter-spacing: -0.02em; }

.slide.s-decision .signed .who { font-family: var(--mono); font-size: 1cqw; color: var(--muted); letter-spacing: 0.04em; }

.slide.s-decision .signed .who b { color: var(--ink); font-family: var(--serif); font-weight: 500; font-style: italic; font-weight: 400; letter-spacing: -0.01em; }

.slide.s-timeline { background: var(--bg); color: var(--ink); padding: 4.5cqw 5cqw; display: flex; flex-direction: column; }

.slide.s-timeline .head .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-timeline .head .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-timeline .head .title { font-family: var(--serif); font-weight: 500; font-size: 4cqw; line-height: 1; letter-spacing: -0.035em; margin-top: 1cqw; }

.slide.s-timeline .head .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-timeline .events { flex: 1; display: flex; flex-direction: column; gap: 1.4cqw; padding: 3cqw 0 0; position: relative; }

.slide.s-timeline .events::before { content: ''; position: absolute; left: 8.4cqw; top: 4cqw; bottom: 0; width: 0.5pt; background: var(--line); z-index: 0; }

.slide.s-timeline .event { display: grid; grid-template-columns: 7.5cqw 2cqw 1fr; gap: 1.5cqw; align-items: baseline; z-index: 1; }

.slide.s-timeline .event .date { font-family: var(--mono); font-size: 1cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; text-align: right; padding-top: 0.7cqw; }

.slide.s-timeline .event.milestone .date { color: var(--accent); font-weight: 500; }

.slide.s-timeline .event .dot-cell { display: flex; align-items: flex-start; justify-content: center; padding-top: 0.85cqw; }

.slide.s-timeline .event .dot { width: 1.4cqw; height: 1.4cqw; border-radius: 50%; background: var(--bg); border: 1pt solid var(--line); }

.slide.s-timeline .event.milestone .dot { background: var(--accent); border-color: var(--accent); }

.slide.s-timeline .event .info .name { font-family: var(--serif); font-weight: 500; font-size: 1.8cqw; letter-spacing: -0.018em; line-height: 1.2; color: var(--ink); }

.slide.s-timeline .event.milestone .info .name { color: var(--ink); }

.slide.s-timeline .event .info .name em { font-style: italic; font-weight: 400; color: var(--muted); }

.slide.s-timeline .event .info .desc { font-size: 1.1cqw; color: var(--ink-soft); margin-top: 0.3cqw; line-height: 1.5; }

.slide.s-timeline .meta-foot { display: flex; justify-content: space-between; font-family: var(--mono); font-size: 0.95cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; padding-top: 1.4cqw; border-top: 0.5pt solid var(--line); margin-top: 1.5cqw; }

.slide.s-image { background: var(--ink); color: var(--bg); padding: 0; display: block; position: relative; overflow: hidden; }

.slide.s-image .photo { position: absolute; inset: 0; background: linear-gradient(135deg, #2B231D 0%, #1A1612 50%, #322620 100%); display: grid; place-items: center; }

.slide.s-image .photo .ph { font-family: var(--serif); font-style: italic; font-size: 1.6cqw; color: rgba(239,234,224,0.25); letter-spacing: -0.01em; }

.slide.s-image .photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0.4) 0%, transparent 30%, transparent 50%, rgba(26,22,18,0.85) 100%); pointer-events: none; }

.slide.s-image .corner { position: absolute; top: 4cqw; left: 5cqw; z-index: 2; font-family: var(--mono); font-size: 1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-image .corner::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-image .corner-mark { position: absolute; top: 4cqw; right: 5cqw; z-index: 2; font-family: var(--serif); font-weight: 500; font-size: 1.6cqw; color: rgba(239,234,224,0.7); letter-spacing: -0.025em; }

.slide.s-image .corner-mark .dot { color: var(--accent); }

.slide.s-image .caption-block { position: absolute; bottom: 4cqw; left: 5cqw; right: 5cqw; z-index: 2; }

.slide.s-image .caption-block .eyebrow { font-family: var(--mono); font-size: 0.95cqw; color: var(--accent); letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 0.8cqw; }

.slide.s-image .caption-block .caption { font-family: var(--serif); font-style: italic; font-weight: 400; font-size: 2.6cqw; line-height: 1.2; letter-spacing: -0.025em; color: var(--bg); max-width: 75%; }

.slide.s-image .caption-block .caption b { font-weight: 500; font-style: normal; }

.slide.s-image .caption-block .credit { font-family: var(--mono); font-size: 0.85cqw; color: rgba(239,234,224,0.55); letter-spacing: 0.06em; text-transform: uppercase; margin-top: 1.4cqw; padding-top: 0.8cqw; border-top: 0.5pt solid rgba(239,234,224,0.18); display: flex; justify-content: space-between; }

.slide.s-imgtext { background: var(--bg); display: grid; grid-template-columns: 1fr 1.15fr; height: 100%; padding: 0; }

.slide.s-imgtext .photo-side { position: relative; background: linear-gradient(135deg, #322620 0%, #1A1612 50%, #211A14 100%); display: grid; place-items: center; overflow: hidden; }

.slide.s-imgtext .photo-side::after { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse at 30% 70%, rgba(61, 82, 64,0.12), transparent 60%); pointer-events: none; }

.slide.s-imgtext .photo-side .ph { font-family: var(--serif); font-style: italic; color: rgba(239,234,224,0.3); font-size: 1.4cqw; padding: 0 4cqw; text-align: center; line-height: 1.4; max-width: 80%; z-index: 1; }

.slide.s-imgtext .photo-side .img-tag { position: absolute; bottom: 2.5cqw; left: 2.5cqw; right: 2.5cqw; font-family: var(--mono); font-size: 0.85cqw; color: rgba(239,234,224,0.6); letter-spacing: 0.06em; text-transform: uppercase; z-index: 1; padding-top: 0.8cqw; border-top: 0.5pt solid rgba(239,234,224,0.18); display: flex; justify-content: space-between; }

.slide.s-imgtext .text-side { padding: 4cqw 4cqw; display: flex; flex-direction: column; justify-content: center; }

.slide.s-imgtext .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-imgtext .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-imgtext .title { font-family: var(--serif); font-weight: 500; font-size: 4.4cqw; line-height: 1.02; letter-spacing: -0.035em; margin-top: 1.2cqw; color: var(--ink); }

.slide.s-imgtext .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-imgtext .title .ac { color: var(--accent); }

.slide.s-imgtext .desc { font-family: var(--serif); font-size: 1.4cqw; color: var(--ink); line-height: 1.55; margin-top: 1.5cqw; max-width: 92%; }

.slide.s-imgtext .desc b { font-weight: 500; }

.slide.s-imgtext .desc em { font-style: italic; color: var(--ink-soft); }

.slide.s-imgtext .stat-row { display: flex; gap: 2.5cqw; margin-top: 2cqw; padding-top: 1.5cqw; border-top: 0.5pt solid var(--line); }

.slide.s-imgtext .stat-row .stat .n { font-family: var(--serif); font-weight: 500; font-size: 2.2cqw; color: var(--accent); letter-spacing: -0.02em; line-height: 1; font-feature-settings: "tnum" 1; }

.slide.s-imgtext .stat-row .stat .l { font-family: var(--mono); font-size: 0.85cqw; color: var(--muted); letter-spacing: 0.04em; text-transform: uppercase; margin-top: 0.4cqw; }

.slide.s-imgtext .meta-foot { display: flex; justify-content: space-between; font-family: var(--mono); font-size: 0.95cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; margin-top: 2cqw; padding-top: 1cqw; border-top: 0.5pt solid var(--line); }

.slide.s-table { background: var(--bg); color: var(--ink); padding: 4.5cqw 5cqw; display: flex; flex-direction: column; }

.slide.s-table .head .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-table .head .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-table .head .title { font-family: var(--serif); font-weight: 500; font-size: 4cqw; line-height: 1; letter-spacing: -0.035em; margin-top: 1cqw; }

.slide.s-table .head .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-table .table-block { flex: 1; margin-top: 2.5cqw; background: #fff; border: 0.5pt solid var(--line); border-radius: 1.2cqw; overflow: hidden; display: flex; flex-direction: column; }

.slide.s-table .row { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 1.5cqw; padding: 1.4cqw 2cqw; border-bottom: 0.5pt solid var(--line-soft); align-items: center; }

.slide.s-table .row:last-child { border-bottom: none; }

.slide.s-table .row.head { background: var(--paper); border-bottom: 0.5pt solid var(--line); padding: 1cqw 2cqw; }

.slide.s-table .row.head .col { font-family: var(--mono); font-size: 0.9cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; font-weight: 500; }

.slide.s-table .row.head .col.featured { color: var(--accent); }

.slide.s-table .row .col.first { font-family: var(--serif); font-weight: 500; font-size: 1.45cqw; letter-spacing: -0.015em; color: var(--ink); }

.slide.s-table .row .col.first em { font-style: italic; font-weight: 400; color: var(--muted); display: block; font-size: 1cqw; margin-top: 0.2cqw; line-height: 1.3; }

.slide.s-table .row .col { font-family: var(--serif); font-size: 1.3cqw; color: var(--ink); font-feature-settings: "tnum" 1; }

.slide.s-table .row .col em { font-style: italic; font-weight: 400; color: var(--muted); }

.slide.s-table .row .col.featured { color: var(--accent-deep); font-weight: 500; }

.slide.s-table .row.featured-row { background: var(--accent-soft); }

.slide.s-table .check { color: var(--accent); font-family: var(--mono); font-weight: 500; font-size: 1.4cqw; }

.slide.s-table .dash { color: var(--muted); font-family: var(--mono); font-size: 1.2cqw; }

.slide.s-table .meta-foot { display: flex; justify-content: space-between; font-family: var(--mono); font-size: 0.95cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; padding-top: 1.4cqw; border-top: 0.5pt solid var(--line); margin-top: 1.5cqw; }

.slide.s-threecol { background: var(--bg); color: var(--ink); padding: 4.5cqw 5cqw; display: flex; flex-direction: column; }

.slide.s-threecol .head .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-threecol .head .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-threecol .head .title { font-family: var(--serif); font-weight: 500; font-size: 4cqw; line-height: 1; letter-spacing: -0.035em; margin-top: 1cqw; }

.slide.s-threecol .head .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-threecol .cols { flex: 1; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1.4cqw; margin-top: 3cqw; }

.slide.s-threecol .col { background: var(--paper); border: 0.5pt solid var(--line); border-radius: 1.4cqw; padding: 2.5cqw 2cqw; display: flex; flex-direction: column; position: relative; }

.slide.s-threecol .col.featured { background: var(--accent); border-color: var(--accent); color: var(--ink); }

.slide.s-threecol .col.featured::before { content: '★ recomendado'; position: absolute; top: -0.85cqw; left: 50%; transform: translateX(-50%); font-family: var(--mono); font-size: 0.8cqw; padding: 0.4cqw 1cqw; background: var(--ink); color: var(--accent); border-radius: 99px; letter-spacing: 0.06em; text-transform: uppercase; font-weight: 500; white-space: nowrap; }

.slide.s-threecol .col .lbl { font-family: var(--mono); font-size: 0.95cqw; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); }

.slide.s-threecol .col.featured .lbl { color: rgba(26,22,18,0.65); }

.slide.s-threecol .col h3 { font-family: var(--serif); font-weight: 500; font-size: 2.4cqw; letter-spacing: -0.025em; line-height: 1.05; margin-top: 0.6cqw; color: var(--ink); }

.slide.s-threecol .col h3 em { font-style: italic; font-weight: 400; color: var(--muted); }

.slide.s-threecol .col.featured h3 em { color: rgba(26,22,18,0.55); }

.slide.s-threecol .col .price { font-family: var(--serif); font-weight: 500; font-size: 2.6cqw; letter-spacing: -0.02em; margin-top: 1.2cqw; padding-top: 1cqw; border-top: 0.5pt solid var(--line); color: var(--ink); font-feature-settings: "tnum" 1; }

.slide.s-threecol .col.featured .price { border-top-color: rgba(26,22,18,0.18); }

.slide.s-threecol .col .price em { font-style: italic; font-weight: 400; color: var(--muted); font-size: 0.95cqw; display: block; margin-top: 0.2cqw; letter-spacing: 0.04em; text-transform: uppercase; font-family: var(--mono); }

.slide.s-threecol .col.featured .price em { color: rgba(26,22,18,0.55); }

.slide.s-threecol .col ul { list-style: none; padding: 0; margin: 1.5cqw 0 0; flex: 1; }

.slide.s-threecol .col li { padding: 0.7cqw 0; border-bottom: 0.5pt solid var(--line-soft); font-size: 1.1cqw; line-height: 1.4; display: flex; gap: 0.8cqw; align-items: baseline; color: var(--ink); }

.slide.s-threecol .col.featured li { border-bottom-color: rgba(26,22,18,0.15); }

.slide.s-threecol .col li::before { content: '+'; color: var(--accent); font-family: var(--mono); font-weight: 500; flex-shrink: 0; }

.slide.s-threecol .col.featured li::before { color: var(--ink); }

.slide.s-threecol .col li:last-child { border-bottom: none; }

.slide.s-threecol .col li b { font-weight: 500; }

.slide.s-threecol .meta-foot { display: flex; justify-content: space-between; font-family: var(--mono); font-size: 0.95cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; padding-top: 1.4cqw; border-top: 0.5pt solid var(--line); margin-top: 1.5cqw; }

.slide.s-line { background: var(--bg); color: var(--ink); padding: 4.5cqw 5cqw; display: flex; flex-direction: column; }

.slide.s-line .head .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-line .head .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-line .head .title { font-family: var(--serif); font-weight: 500; font-size: 4cqw; line-height: 1; letter-spacing: -0.035em; margin-top: 1cqw; }

.slide.s-line .head .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-line .head .title .ac { color: var(--accent); }

.slide.s-line .chart { flex: 1; display: flex; flex-direction: column; padding: 2.5cqw 0 0; }

.slide.s-line .y-label { font-family: var(--mono); font-size: 0.85cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; margin-bottom: 0.8cqw; }

.slide.s-line .svg-wrap { flex: 1; position: relative; min-height: 18cqw; }

.slide.s-line .svg-wrap svg { width: 100%; height: 100%; display: block; overflow: visible; }

.slide.s-line .axis-x { display: flex; justify-content: space-between; padding: 0.7cqw 0 0; font-family: var(--mono); font-size: 1cqw; color: var(--muted); letter-spacing: 0.04em; text-transform: uppercase; border-top: 0.5pt solid var(--line); }

.slide.s-line .axis-x .tick.featured { color: var(--accent); font-weight: 500; }

.slide.s-line .insight { margin-top: 1.5cqw; padding: 1.2cqw 1.6cqw; background: var(--paper); border-left: 0.3cqw solid var(--accent); border-radius: 0.4cqw; font-family: var(--serif); font-style: italic; font-size: 1.3cqw; line-height: 1.5; color: var(--ink); max-width: 85%; }

.slide.s-line .insight cite { display: block; font-family: var(--mono); font-style: normal; font-size: 0.85cqw; color: var(--muted); margin-top: 0.4cqw; letter-spacing: 0.06em; text-transform: uppercase; }

.slide.s-line .meta-foot { display: flex; justify-content: space-between; font-family: var(--mono); font-size: 0.95cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; padding-top: 1cqw; border-top: 0.5pt solid var(--line); margin-top: 1.2cqw; }

.slide.s-donut { background: var(--bg); color: var(--ink); padding: 4.5cqw 5cqw; display: flex; flex-direction: column; }

.slide.s-donut .head .eyebrow { font-family: var(--mono); font-size: 1.1cqw; color: var(--accent); letter-spacing: 0.1em; text-transform: uppercase; display: flex; align-items: center; gap: 0.6cqw; }

.slide.s-donut .head .eyebrow::before { content: ''; width: 0.6cqw; height: 0.6cqw; border-radius: 50%; background: var(--accent); }

.slide.s-donut .head .title { font-family: var(--serif); font-weight: 500; font-size: 4cqw; line-height: 1; letter-spacing: -0.035em; margin-top: 1cqw; }

.slide.s-donut .head .title em { font-style: italic; font-weight: 400; color: var(--ink-soft); }

.slide.s-donut .donut-row { flex: 1; display: grid; grid-template-columns: 1fr 1.1fr; gap: 4cqw; align-items: center; margin-top: 2cqw; }

.slide.s-donut .donut-svg-wrap { position: relative; aspect-ratio: 1; max-height: 30cqw; display: grid; place-items: center; justify-self: center; width: 100%; }

.slide.s-donut .donut-svg-wrap svg { width: 100%; height: 100%; max-width: 26cqw; max-height: 26cqw; transform: rotate(-90deg); }

.slide.s-donut .donut-center { position: absolute; text-align: center; pointer-events: none; }

.slide.s-donut .donut-center .n { font-family: var(--serif); font-weight: 500; font-size: 4cqw; letter-spacing: -0.04em; color: var(--ink); font-feature-settings: "tnum" 1; line-height: 0.95; }

.slide.s-donut .donut-center .n em { font-style: italic; font-weight: 400; color: var(--muted); }

.slide.s-donut .donut-center .l { font-family: var(--serif); font-style: italic; font-size: 1.1cqw; color: var(--ink-soft); margin-top: 0.5cqw; line-height: 1.3; }

.slide.s-donut .legend { display: flex; flex-direction: column; gap: 0; }

.slide.s-donut .legend-item { display: grid; grid-template-columns: 1.4cqw 4.5cqw 1fr 3cqw; gap: 1cqw; align-items: baseline; padding: 0.9cqw 0; border-bottom: 0.5pt solid var(--line-soft); }

.slide.s-donut .legend-item:last-child { border-bottom: none; }

.slide.s-donut .legend-item .swatch { width: 1.2cqw; height: 1.2cqw; border-radius: 0.25cqw; align-self: center; }

.slide.s-donut .legend-item .pct { font-family: var(--serif); font-weight: 500; font-size: 1.7cqw; color: var(--ink); font-feature-settings: "tnum" 1; letter-spacing: -0.015em; }

.slide.s-donut .legend-item.featured .pct { color: var(--accent); }

.slide.s-donut .legend-item .lbl { font-family: var(--serif); font-size: 1.3cqw; color: var(--ink); letter-spacing: -0.01em; line-height: 1.3; }

.slide.s-donut .legend-item .lbl em { font-style: italic; font-weight: 400; color: var(--muted); display: block; font-size: 1cqw; margin-top: 0.15cqw; }

.slide.s-donut .legend-item .val { font-family: var(--mono); font-size: 0.95cqw; color: var(--muted); text-align: right; letter-spacing: 0.04em; }

.slide.s-donut .meta-foot { display: flex; justify-content: space-between; font-family: var(--mono); font-size: 0.95cqw; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; padding-top: 1.4cqw; border-top: 0.5pt solid var(--line); margin-top: 1.5cqw; }

.slide-spec {
    background: var(--paper); border: var(--bw) solid var(--line); border-radius: var(--r-md);
    padding: 22px 24px; margin-top: 14px;
  }

.slide-spec .head { display: flex; justify-content: space-between; align-items: baseline; padding-bottom: 12px; border-bottom: var(--bw) solid var(--line); margin-bottom: 12px; }

.slide-spec .head .nm { font-family: var(--serif); font-weight: 500; font-size: 18px; letter-spacing: -0.015em; }

.slide-spec .head .nm em { font-style: italic; font-weight: 400; color: var(--muted); }

.slide-spec .head .lbl { font-family: var(--mono); font-size: 10px; color: var(--accent); letter-spacing: 0.06em; text-transform: uppercase; }

.slide-spec .specs { display: grid; grid-template-columns: 110px 1fr; gap: 10px 18px; padding: 4px 0; font-size: 12.5px; line-height: 1.55; }

.slide-spec .specs .k { font-family: var(--mono); font-size: 10px; color: var(--muted); letter-spacing: 0.04em; text-transform: uppercase; padding-top: 2px; }

.slide-spec .specs .v b { color: var(--ink); font-weight: 500; font-family: var(--serif); font-style: italic; font-weight: 400; }

.slide-spec .when { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 14px; padding-top: 12px; border-top: var(--bw) solid var(--line); }

.slide-spec .when h5 { font-family: var(--mono); font-size: 10px; letter-spacing: 0.06em; text-transform: uppercase; margin-bottom: 8px; }

.slide-spec .when h5.yes { color: #2D6A45; }

.slide-spec .when h5.no { color: var(--accent-deep); }

.slide-spec .when ul { list-style: none; padding: 0; margin: 0; }

.slide-spec .when li { padding: 4px 0; font-size: 12px; line-height: 1.5; display: flex; gap: 8px; color: var(--ink-soft); }

.slide-spec .when .yes li::before { content: '+'; color: #2D6A45; font-family: var(--mono); }

.slide-spec .when .no li::before { content: '—'; color: var(--accent-deep); font-family: var(--mono); }

.slide-spec .when b { color: var(--ink); font-weight: 500; font-family: var(--serif); font-style: italic; font-weight: 400; }

.slide-showcase { margin-top: 36px; }

.slide-showcase .sc-num { font-family: var(--mono); font-size: 11px; color: var(--accent); letter-spacing: 0.06em; text-transform: uppercase; }

.slide-showcase h3 { font-family: var(--serif); font-weight: 500; font-size: 26px; letter-spacing: -0.025em; margin: 6px 0 4px; }

.slide-showcase h3 em { font-style: italic; font-weight: 400; color: var(--muted); }

.slide-showcase .sc-sub { font-size: 13.5px; color: var(--ink-soft); line-height: 1.55; max-width: 640px; margin-bottom: 16px; }

.types-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 32px; }

.type-tile { background: #fff; border: var(--bw) solid var(--line); border-radius: 8px; padding: 14px 16px; aspect-ratio: 4/3; display: flex; flex-direction: column; justify-content: space-between; }

.type-tile.built { border-color: var(--accent); background: var(--accent-soft); }

.type-tile.pending { opacity: 0.65; }

.type-tile .head { display: flex; justify-content: space-between; align-items: baseline; }

.type-tile .head .num { font-family: var(--mono); font-size: 10px; color: var(--muted); letter-spacing: 0.04em; }

.type-tile.built .head .num { color: var(--accent-deep); }

.type-tile .head .status { font-family: var(--mono); font-size: 8.5px; letter-spacing: 0.06em; text-transform: uppercase; padding: 2px 5px; border-radius: 3px; background: var(--paper); color: var(--muted); border: 0.5pt solid var(--line); }

.type-tile.built .head .status { background: var(--accent); color: var(--ink); border-color: var(--accent); }

.type-tile .nm { font-family: var(--serif); font-weight: 500; font-size: 16px; letter-spacing: -0.015em; line-height: 1.15; }

.type-tile .nm em { font-style: italic; font-weight: 400; color: var(--muted); }

.type-tile .when { font-family: var(--mono); font-size: 9.5px; color: var(--muted); letter-spacing: 0.04em; text-transform: uppercase; }

.slide-anatomy { margin-top: 32px; }

.slide-anatomy .anatomy-row { display: grid; grid-template-columns: 1.5fr 1fr; gap: 24px; align-items: start; }

.slide-anatomy .anatomy-key { background: #fff; border: var(--bw) solid var(--line); border-radius: var(--r-md); padding: 20px 22px; }

.slide-anatomy .anatomy-key h4 { font-family: var(--mono); font-size: 10px; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; padding-bottom: 12px; border-bottom: var(--bw) solid var(--line); margin-bottom: 6px; }

.slide-anatomy .key-row { padding: 9px 0; border-bottom: var(--bw) solid var(--line-soft); font-size: 12.5px; line-height: 1.55; display: grid; grid-template-columns: 60px 1fr; gap: 10px; align-items: baseline; }

.slide-anatomy .key-row:last-child { border-bottom: none; }

.slide-anatomy .key-row .nm { font-family: var(--mono); color: var(--accent); font-size: 10.5px; letter-spacing: 0.04em; font-weight: 500; }

.slide-anatomy .key-row .lbl b { font-family: var(--serif); font-weight: 500; font-style: italic; font-weight: 400; color: var(--ink); }

.export-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 32px; }

.export-card { background: #fff; border: var(--bw) solid var(--line); border-radius: var(--r-md); padding: 22px 24px; }

.export-card .nm { font-family: var(--mono); font-size: 10px; color: var(--accent); letter-spacing: 0.06em; text-transform: uppercase; }

.export-card .who { font-family: var(--serif); font-weight: 500; font-size: 18px; letter-spacing: -0.015em; margin: 4px 0 6px; }

.export-card .who em { font-style: italic; font-weight: 400; color: var(--muted); }

.export-card .desc { font-size: 12.5px; color: var(--ink-soft); line-height: 1.55; }

.export-card .desc b { color: var(--ink); font-weight: 500; }

.export-card .desc code { font-family: var(--mono); font-size: 11px; background: var(--paper); padding: 1px 5px; border-radius: 3px; color: var(--accent-deep); border: 0.5pt solid var(--line); }

.export-card .stack { margin-top: 12px; padding-top: 10px; border-top: var(--bw) solid var(--line); font-family: var(--mono); font-size: 10px; color: var(--muted); letter-spacing: 0.04em; }

.export-card .stack b { color: var(--ink); font-weight: 500; }
