/* Project pages: each service uses its cover color; deliverables read top-to-bottom, one idea per section. */
.theme-ssok{--project-accent:#4d5fe9;--project-soft:#eef0fe;--project-line:#dfe3fb;--project-ink:#2e3a92}
.theme-koach{--project-accent:#744fe3;--project-soft:#f2eefe;--project-line:#e5ddfb;--project-ink:#44298f}
.theme-yeonox{--project-accent:#e44e81;--project-soft:#fdeff4;--project-line:#f8dbe6;--project-ink:#8c2c50}
.project-page .service-gallery{border-color:var(--project-line);background:linear-gradient(145deg,var(--project-soft),color-mix(in srgb,var(--project-accent) 16%,#fff))}
.project-page .project-heading .eyebrow,.project-page .service-name{color:var(--project-accent)}
.project-page .overview-cards article{background:linear-gradient(140deg,#fff,var(--project-soft))}


.dv-shots{display:flex;justify-content:center;align-items:center;gap:16px;padding:36px 28px;border-radius:26px;background:linear-gradient(150deg,var(--project-soft),color-mix(in srgb,var(--project-accent) 18%,#fff))}
.dv-shots img{display:block;min-width:0;max-width:100%;max-height:520px;width:auto;object-fit:contain;filter:drop-shadow(0 18px 24px #1a103020)}
.dv-shots img+img{max-width:48%}
.dv-shots:has(img+img) img{max-width:48%}

.result-section{padding-top:110px}
.result-section h2{margin-top:14px;font-size:40px;letter-spacing:-1.6px}
.result-lead{margin-top:16px;font-size:16px;line-height:1.8;color:#6d6880;max-width:620px}
.result-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:40px}
.stat{padding:34px 32px;border:1px solid var(--project-line);border-radius:22px;background:#fff}
.stat b{display:block;font-size:46px;line-height:1.1;font-weight:800;letter-spacing:-1.5px;color:var(--project-accent)}
.stat span{display:block;margin-top:14px;font-size:14px;color:#6d6880;line-height:1.6}
.result-note{margin-top:20px;padding:32px;border:1px solid var(--project-line);border-radius:22px;background:var(--project-soft)}
.result-note span{font-size:13px;font-weight:750;letter-spacing:1.5px;color:var(--project-ink)}
.result-note p{margin-top:12px;font-size:16px;line-height:1.8;color:#2d2a3a}

@media(max-width:1100px){.result-section h2{font-size:34px}}
@media(max-width:860px){.dv-shots{padding:24px 16px}.dv-shots img{max-height:420px}.result-section{padding-top:72px}.result-section h2{font-size:30px;letter-spacing:-1.2px}.stat{padding:26px 24px}.stat b{font-size:38px}}

/* Story headline + document visual (original image when provided, otherwise a readable document preview). */
.dv-original{margin:0;padding:18px;border-radius:24px;background:#fff;border:1px solid var(--project-line);box-shadow:0 24px 50px color-mix(in srgb,var(--project-accent) 10%,#0000)}
.dv-original img{display:block;width:100%;height:auto;border-radius:12px}
.document-paper.dv-paper{min-height:0;padding:36px 36px 32px;border-radius:18px;border:1px solid var(--project-line);box-shadow:0 24px 50px color-mix(in srgb,var(--project-accent) 10%,#0000)}
.dv-paper .paper-meta{padding-bottom:16px;margin-bottom:22px}
.dv-paper .paper-meta span{font-size:11px;letter-spacing:.5px;color:#9d97ae}
.dv-paper .paper-kicker{font-size:11px;letter-spacing:1.6px}
.dv-paper h3{font-size:24px;margin-top:8px}
.dv-paper .paper-lead{font-size:14px;margin-top:10px}
.dv-paper p,.dv-paper .paper-list,.dv-paper .paper-checks{font-size:14px;line-height:1.85}
.dv-paper h4{font-size:15px;margin:24px 0 10px}
.dv-paper .paper-note p{font-size:14px}
.dv-paper .paper-note>b,.dv-paper .paper-empty>span{font-size:13px}
.dv-paper .paper-empty{font-size:13px}
.dv-paper .paper-table{font-size:13px}
.dv-paper .paper-table thead{font-size:12px}
.dv-paper .paper-table tbody th small{font-size:11px}
.dv-paper .priority{font-size:12px}
.dv-paper .ia-root{font-size:14px}
.dv-paper .ia-branches>div,.dv-paper .journey li{font-size:13px}
.dv-paper .journey li>span{font-size:11px}
.dv-paper .validation-grid span{font-size:12px}
.dv-paper .validation-grid b{font-size:15px}
.dv-paper .validation-grid p{font-size:13px}
@media(max-width:860px){.document-paper.dv-paper{padding:26px 20px}.dv-paper h3{font-size:20px}.dv-paper p,.dv-paper .paper-list,.dv-paper .paper-checks{font-size:13px}.dv-paper .journey{grid-template-columns:repeat(2,1fr)}.dv-paper .journey li:nth-child(3)::before{display:none}}


/* Deliverables: fixed index on the left, every document stacked on the right in story order. */
.document-stream{display:grid;gap:28px;min-width:0}
.doc-step{scroll-margin-top:84px}
.doc-step-head{padding:30px 32px 24px}
.deliv-num{font-size:13px;font-weight:750;letter-spacing:.2px;color:var(--project-accent)}
.deliv-num span{margin-left:6px;font-weight:600;opacity:.55}
.doc-step-head h3{margin-top:10px;font-size:28px;line-height:1.35;letter-spacing:-1px;font-weight:750;color:#17151f}
.doc-step-head p{margin-top:10px;font-size:15px;line-height:1.8;color:#6d6880}
.doc-step .document-canvas{min-height:0;background:color-mix(in srgb,var(--project-accent) 6%,#f7f6fb)}
.doc-step .document-paper.dv-paper{box-shadow:0 10px 30px color-mix(in srgb,var(--project-accent) 8%,#0000)}
.doc-step .dv-shots{border-radius:14px}
.project-page .documents-heading h2{font-size:34px;line-height:1.4}
.project-page .documents-heading p{font-size:15px}
.project-page .document-choice b{font-size:14px}
.project-page .document-choice small{font-size:11px}
.project-page .document-choice.is-selected{border-color:color-mix(in srgb,var(--project-accent) 35%,#fff);box-shadow:0 6px 18px color-mix(in srgb,var(--project-accent) 12%,#0000)}
@media(max-width:1100px){.doc-step-head h3{font-size:24px}}
@media(max-width:760px){.doc-step-head{padding:22px 20px 18px}.doc-step-head h3{font-size:22px}.doc-step-head p{font-size:14px}.project-page .documents-heading h2{font-size:26px}}

/* Compact steps: one card, a two-line header, the document body right below. */
.doc-step-head{padding:26px 32px 4px}
.doc-step-head h3{margin-top:6px;font-size:24px}
.doc-step .document-canvas{background:none;padding:14px 32px 32px}
.doc-step .dv-paper{padding:0;border:0;box-shadow:none;background:none}
.doc-step .dv-paper>:first-child{margin-top:0}
.doc-step .dv-shots{padding:28px 20px}
.document-stream{gap:22px}
@media(max-width:1100px){.doc-step-head h3{font-size:22px}}
@media(max-width:760px){.doc-step-head{padding:20px 20px 2px}.doc-step-head h3{font-size:20px}.doc-step .document-canvas{padding:12px 20px 22px}}
.result-cards .result-value{font-size:30px;line-height:1.2;font-weight:800;letter-spacing:-1px;color:var(--project-accent)}

/* One-line section titles; retrospective = title + compact results, then learnings. */
.project-page .overview-heading{display:block}
.project-page .overview-heading>p{margin-top:14px;max-width:760px;font-size:15px}
.retro-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px;align-items:end;margin-top:22px}
.retro-title>p{margin-top:14px;font-size:15px;line-height:1.85;color:#82798e;max-width:460px}
.retro-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.retro-stat{padding:20px 22px;border:1px solid var(--project-line);border-radius:14px;background:linear-gradient(140deg,#fff,var(--project-soft))}
.retro-stat b{display:block;font-size:26px;line-height:1.2;font-weight:800;letter-spacing:-.8px;color:var(--project-accent)}
.retro-stat span{display:block;margin-top:6px;font-size:13px;color:#82798e}
.retro-learn{margin-top:44px;padding-top:34px;border-top:1px solid var(--project-line)}
.retro-learn>h3{font-size:20px;font-weight:700;color:#1f1d2b}
.retro-learn .overview-cards{margin-top:18px}
.retro-empty{margin-top:14px;padding:26px;border:1px dashed var(--project-line);border-radius:14px;font-size:14px;color:#a39bb0}
@media(max-width:860px){.retro-top{grid-template-columns:1fr;gap:22px}}

/* Neutral gray surfaces; the service color is reserved for numbers, labels and key values. */
.project-page{--g-bg:#f6f6f8;--g-line:#e8e8ed;--g-text:#5f5e6d}
.card-num{margin-right:10px;color:var(--project-accent);font-weight:800}
.project-page .overview-cards article{background:var(--g-bg);border-color:var(--g-line)}
.project-page .overview-cards h3{margin-top:0}
.project-page .project-tags span{background:var(--g-bg);color:var(--g-text)}
.project-page .service-gallery{background:var(--g-bg);border-color:var(--g-line)}
.project-page .project-facts,.project-page .project-tabs{border-color:var(--g-line)}
.project-page .project-tabs a>span{background:var(--g-bg);color:var(--g-text)}
.project-page .documents-section{background:#fafafb;border-color:var(--g-line)}
.project-page .document-viewer{border-color:var(--g-line);box-shadow:0 8px 24px #1a18300a}
.project-page .document-choice{color:#7a7988}
.project-page .document-choice:hover{background:#f0f0f3}
.project-page .document-choice.is-selected{border-color:var(--g-line);box-shadow:0 4px 14px #1a18300d}
.project-page .document-choice-arrow{color:#c3c2cc}
.project-page .paper-note{background:var(--g-bg);border-color:var(--g-line)}
.project-page .paper-note>b{color:#2d2a3a}
.project-page .paper-note p,.project-page .document-paper p,.project-page .paper-list,.project-page .paper-checks{color:var(--g-text)}
.project-page .paper-empty{border-color:var(--g-line)}
.project-page .paper-table-wrap{border-color:var(--g-line)}
.project-page .paper-table thead{background:var(--g-bg);color:var(--g-text)}
.project-page .paper-table th,.project-page .paper-table td{border-color:var(--g-line)}
.project-page .paper-table tbody th{color:#2d2a3a}
.project-page .paper-table td{color:var(--g-text)}
.project-page .ia-tree{background:var(--g-bg)}
.project-page .ia-root{background:#fff;border-color:var(--g-line)}
.project-page .ia-root::after,.project-page .ia-branches>div::before,.project-page .ia-branches>div::after{border-color:#d8d8df}
.project-page .ia-branches>div{border-color:var(--g-line);color:var(--g-text)}
.project-page .journey li{background:var(--g-bg);border-color:var(--g-line);color:#2d2a3a}
.project-page .journey li>span{color:var(--project-accent)}
.project-page .journey li+li::before{color:#c3c2cc}
.project-page .validation-grid>div{border-color:var(--g-line)}
.project-page .validation-grid b{color:#2d2a3a}
.project-page .dv-shots{background:var(--g-bg)}
.retro-stat{background:var(--g-bg);border-color:var(--g-line)}
.retro-stat span,.retro-title>p{color:var(--g-text)}
.retro-learn{border-color:var(--g-line)}
.retro-empty{border-color:var(--g-line)}
@media(max-width:760px){.project-page .document-choice{background:var(--g-bg);border-color:var(--g-line)}.project-page .document-choice.is-selected{background:#fff}}
.project-page .project-heading .project-facts,.project-page dl.project-facts{border-color:var(--g-line)!important}
