:root {
    --atamai-primary: #473728;
    --atamai-accent: #2F6F68;
    --atamai-bg: #F7F3ED;
    --atamai-text: #241A13;
    --atamai-secondary: #D9C7B2;
    --atamai-card: #FFFFFF;
    --koa: var(--atamai-primary);
    --koa-dark: var(--atamai-text);
    --sand: var(--atamai-bg);
    --coconut: var(--atamai-card);
    --charcoal: var(--atamai-text);
    --muted: #6f6258;
    --teal: var(--atamai-accent);
    --teal-dark: #255a54;
    --gold: var(--atamai-secondary);
    --gold-dark: #b8a187;
    --line: var(--atamai-secondary);
    --soft-line: rgba(71, 55, 40, 0.12);
    --shadow: 0 24px 70px rgba(71, 55, 40, 0.13);
    --shadow-hover: 0 30px 90px rgba(71, 55, 40, 0.2);
    --radius: 18px;
    --radius-small: 10px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: "Inter", Arial, sans-serif;
    color: var(--charcoal);
    background:
        radial-gradient(circle at 12% 8%, rgba(217, 199, 178, 0.18), transparent 28rem),
        radial-gradient(circle at 86% 18%, rgba(47, 111, 104, 0.12), transparent 24rem),
        var(--sand);
    line-height: 1.6;
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    opacity: 0.34;
    background-image:
        linear-gradient(135deg, transparent 0 48%, rgba(71, 55, 40, 0.06) 49%, transparent 50%),
        radial-gradient(ellipse at center, transparent 0 64%, rgba(47, 111, 104, 0.06) 65%, transparent 68%);
    background-size: 42px 42px, 180px 46px;
    pointer-events: none;
}

a {
    color: inherit;
}

button,
input,
textarea {
    font: inherit;
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 78px;
    padding: 0 6vw;
    color: var(--koa);
    background: rgba(247, 243, 237, 0.78);
    border-bottom: 1px solid transparent;
    backdrop-filter: blur(18px);
    transition: background-color 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.site-header.scrolled,
.site-header:focus-within {
    background: rgba(255, 255, 255, 0.94);
    border-bottom-color: rgba(71, 55, 40, 0.1);
    box-shadow: 0 12px 34px rgba(71, 55, 40, 0.1);
}

.brand,
.footer-brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: var(--koa);
    font-weight: 800;
    text-decoration: none;
}

.brand-mark {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    color: var(--coconut);
    background: linear-gradient(135deg, var(--koa), var(--teal));
    border-radius: 12px;
    box-shadow: 0 12px 28px rgba(71, 55, 40, 0.24);
}

.site-nav {
    display: flex;
    align-items: center;
    gap: 24px;
    font-size: 0.94rem;
    font-weight: 700;
}

.site-nav a {
    position: relative;
    color: rgba(36, 26, 19, 0.76);
    text-decoration: none;
    transition: color 180ms ease, transform 180ms ease;
}

.site-nav a:not(.nav-cta)::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -8px;
    left: 0;
    height: 2px;
    background: var(--teal);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 180ms ease;
}

.site-nav a:hover,
.site-nav a.active {
    color: var(--koa);
}

.site-nav a:hover::after,
.site-nav a.active::after {
    transform: scaleX(1);
}

.site-nav .nav-cta {
    min-height: 42px;
    padding: 10px 16px;
    color: var(--coconut);
    background: var(--teal);
    border-radius: var(--radius-small);
    box-shadow: 0 12px 28px rgba(47, 111, 104, 0.22);
}

.site-nav .nav-cta:hover {
    color: var(--coconut);
    background: var(--teal-dark);
    transform: translateY(-2px);
}

.nav-toggle {
    display: none;
    width: 44px;
    height: 44px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--coconut);
    cursor: pointer;
}

.nav-toggle span {
    display: block;
    width: 18px;
    height: 2px;
    margin: 4px auto;
    background: var(--koa);
    transition: transform 180ms ease, opacity 180ms ease;
}

.hero,
.page-hero,
.section {
    width: min(1160px, 88vw);
    margin: 0 auto;
}

.hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(340px, 0.82fr);
    gap: clamp(34px, 6vw, 78px);
    align-items: center;
    min-height: calc(100vh - 78px);
    padding: 84px 0 96px;
}

.hero::after,
.assessment-feature::before,
.demo-section::before {
    content: "";
    position: absolute;
    pointer-events: none;
    opacity: 0.42;
    background:
        radial-gradient(circle, rgba(47, 111, 104, 0.18) 0 2px, transparent 3px),
        linear-gradient(115deg, transparent 0 45%, rgba(217, 199, 178, 0.28) 46%, transparent 48%);
    background-size: 36px 36px, 100% 100%;
}

.hero::after {
    right: -7vw;
    bottom: 4vw;
    width: 260px;
    height: 160px;
    border-radius: 50%;
}

.hero h1,
.page-hero h1 {
    margin: 0;
    max-width: 880px;
    color: var(--koa-dark);
    font-size: clamp(3rem, 7vw, 6.35rem);
    line-height: 0.94;
    letter-spacing: 0;
}

.hero-copy,
.page-hero p,
.section-heading p,
.split p {
    max-width: 700px;
    color: var(--muted);
    font-size: 1.08rem;
}

.hero-copy,
.page-hero p {
    margin: 24px 0 0;
    font-size: clamp(1.05rem, 2vw, 1.22rem);
}

.eyebrow {
    margin: 0 0 16px;
    color: var(--teal);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.hero-actions.centered {
    justify-content: center;
}

.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 13px 21px;
    border: 1px solid transparent;
    border-radius: 12px;
    font-weight: 850;
    text-decoration: none;
    cursor: pointer;
    transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.button:hover {
    transform: translateY(-2px);
}

.button.primary {
    color: var(--coconut);
    background: var(--teal);
    box-shadow: 0 16px 34px rgba(47, 111, 104, 0.24);
}

.button.primary:hover {
    background: var(--teal-dark);
    box-shadow: 0 20px 44px rgba(47, 111, 104, 0.32);
}

.button.secondary {
    color: var(--koa);
    background: rgba(255, 255, 255, 0.84);
    border-color: var(--line);
}

.button.secondary:hover {
    border-color: rgba(47, 111, 104, 0.32);
    box-shadow: 0 16px 34px rgba(71, 55, 40, 0.12);
}

.button.gold {
    color: var(--koa-dark);
    background: var(--gold);
    box-shadow: 0 16px 34px rgba(217, 199, 178, 0.26);
}

.button.gold:hover {
    background: var(--gold-dark);
    box-shadow: 0 20px 44px rgba(217, 199, 178, 0.32);
}

.assessment-report-page {
    padding: clamp(34px, 5vw, 72px) 18px;
    color: var(--koa-dark);
    background:
        radial-gradient(circle at 12% 4%, rgba(217, 199, 178, 0.34), transparent 28%),
        var(--sand);
}

.report-toolbar {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    width: min(100%, 1040px);
    margin: 0 auto 18px;
}

.report-document {
    width: min(100%, 1040px);
    margin: 0 auto;
    padding: clamp(28px, 5vw, 60px);
    background: var(--coconut);
    border: 1px solid rgba(217, 199, 178, 0.72);
    border-radius: 18px;
    box-shadow: 0 24px 70px rgba(36, 26, 19, 0.12);
}

.report-cover {
    display: grid;
    align-content: center;
    min-height: 720px;
    gap: 26px;
    padding: clamp(28px, 6vw, 72px);
    color: var(--coconut);
    background:
        linear-gradient(135deg, rgba(71, 55, 40, 0.97), rgba(36, 26, 19, 0.94)),
        var(--koa);
    border-radius: 14px;
    break-after: page;
    page-break-after: always;
}

.report-cover.compact {
    min-height: 420px;
    color: var(--koa-dark);
    background: var(--coconut);
    border: 1px solid var(--line);
}

.report-kicker {
    margin: 0;
    color: var(--gold);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.report-cover h1 {
    max-width: 760px;
    margin: 0;
    color: inherit;
    font-size: clamp(2.6rem, 7vw, 5rem);
    line-height: 0.98;
    letter-spacing: 0;
}

.report-cover-rule {
    width: 112px;
    height: 4px;
    background: var(--teal);
    border-radius: 999px;
}

.report-cover dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    max-width: 760px;
    margin: 18px 0 0;
}

.report-cover dl div {
    padding-top: 14px;
    border-top: 1px solid rgba(247, 243, 237, 0.24);
}

.report-cover dt {
    color: rgba(247, 243, 237, 0.72);
    font-size: 0.72rem;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.report-cover dd {
    margin: 5px 0 0;
    color: var(--coconut);
    font-size: 1.08rem;
    font-weight: 750;
}

.report-toc {
    padding: 36px 0 44px;
    border-bottom: 1px solid var(--line);
    break-after: page;
    page-break-after: always;
}

.report-toc h2,
.report-section-title h2 {
    margin: 0;
    color: var(--koa);
}

.report-toc ol {
    columns: 2;
    column-gap: 48px;
    margin: 22px 0 0;
    padding-left: 24px;
}

.report-toc li {
    break-inside: avoid;
    margin-bottom: 10px;
    color: var(--koa-dark);
    font-weight: 650;
}

.report-section {
    padding: 44px 0;
    border-bottom: 1px solid var(--line);
    break-before: page;
    page-break-before: always;
}

.report-section:last-child {
    border-bottom: 0;
}

.report-section-title {
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 16px;
    align-items: start;
    margin-bottom: 28px;
}

.report-section-title span {
    display: inline-grid;
    place-items: center;
    width: 44px;
    height: 44px;
    color: var(--coconut);
    background: var(--teal);
    border-radius: 12px;
    font-weight: 900;
}

.report-section-title h2 {
    font-size: clamp(2rem, 4vw, 3.2rem);
    line-height: 1.02;
}

.report-section-title p {
    grid-column: 2;
    max-width: 760px;
    margin: -8px 0 0;
    color: var(--muted);
    font-size: 1.05rem;
    line-height: 1.7;
}

.report-callout,
.report-copy-block,
.report-finding,
.report-solution,
.report-path-step,
.report-metric,
.report-quadrant-block {
    border: 1px solid rgba(217, 199, 178, 0.72);
    border-radius: 12px;
    background: rgba(247, 243, 237, 0.56);
}

.report-callout,
.report-copy-block {
    padding: 18px;
}

.report-callout.soft {
    background: rgba(255, 255, 255, 0.72);
}

.report-callout.appointment {
    background: rgba(47, 111, 104, 0.08);
    border-color: rgba(47, 111, 104, 0.22);
}

.report-callout h3,
.report-callout h4,
.report-copy-block h4,
.report-finding h3,
.report-finding h5,
.report-solution h3,
.report-path-step h3,
.report-quadrant-block h4 {
    margin: 0 0 10px;
    color: var(--koa);
}

.report-callout p,
.report-copy-block p,
.report-finding p,
.report-solution p,
.report-path-step p,
.report-quadrant-block p {
    margin: 0;
    color: var(--koa-dark);
    line-height: 1.7;
}

.report-two-column,
.report-metric-grid,
.report-matrix-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin: 18px 0;
}

.report-metric-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.report-metric {
    padding: 16px;
    background: var(--coconut);
}

.report-metric span {
    display: block;
    color: var(--muted);
    font-size: 0.72rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.report-metric strong {
    display: block;
    margin-top: 8px;
    color: var(--koa);
    font-size: clamp(1.2rem, 2vw, 1.7rem);
    line-height: 1.15;
}

.report-metric small {
    display: block;
    margin-top: 7px;
    color: var(--muted);
}

.report-table {
    width: 100%;
    margin: 18px 0;
    overflow: hidden;
    background: var(--coconut);
    border: 1px solid var(--line);
    border-radius: 12px;
    border-collapse: separate;
    border-spacing: 0;
}

.report-table th,
.report-table td {
    padding: 12px 14px;
    border-bottom: 1px solid var(--line);
    text-align: left;
    vertical-align: top;
}

.report-table th {
    width: 28%;
    color: var(--koa);
    background: rgba(217, 199, 178, 0.18);
    font-weight: 850;
}

.report-table tr:last-child th,
.report-table tr:last-child td {
    border-bottom: 0;
}

.report-table.compact th,
.report-table.compact td {
    padding: 9px 12px;
}

.report-list {
    display: grid;
    gap: 9px;
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

.report-list li {
    position: relative;
    padding-left: 20px;
    color: var(--koa-dark);
    line-height: 1.6;
}

.report-list li::before {
    position: absolute;
    top: 0.72em;
    left: 0;
    width: 7px;
    height: 7px;
    content: "";
    background: var(--teal);
    border-radius: 50%;
}

.report-list li strong,
.report-list li span {
    display: block;
}

.report-list li strong {
    color: var(--koa);
}

.report-list li span {
    color: var(--muted);
}

.report-score-summary {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 20px;
    align-items: center;
    padding: 20px;
    background: rgba(47, 111, 104, 0.08);
    border: 1px solid rgba(47, 111, 104, 0.22);
    border-radius: 16px;
}

.report-score-summary > strong {
    display: grid;
    place-items: center;
    width: 128px;
    height: 128px;
    color: var(--teal);
    background: var(--coconut);
    border: 10px solid rgba(47, 111, 104, 0.22);
    border-radius: 50%;
    font-size: 2.4rem;
    line-height: 1;
}

.report-score-summary small {
    display: block;
    color: var(--muted);
    font-size: 0.78rem;
}

.report-findings-list,
.report-path {
    display: grid;
    gap: 16px;
}

.report-finding,
.report-solution,
.report-path-step {
    padding: 20px;
    break-inside: avoid;
}

.report-finding.compact {
    padding: 14px;
    background: var(--coconut);
}

.report-finding h3,
.report-solution h3,
.report-path-step h3 {
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 12px;
    align-items: center;
}

.report-finding h3 span,
.report-solution h3 span,
.report-path-step h3 span {
    display: inline-grid;
    place-items: center;
    width: 34px;
    height: 34px;
    color: var(--coconut);
    background: var(--koa);
    border-radius: 10px;
    font-size: 0.9rem;
}

.report-solution {
    margin-bottom: 24px;
}

.report-subtitle {
    margin: -4px 0 14px;
    color: var(--muted);
    font-style: italic;
}

.report-quadrant-block {
    padding: 18px;
    background: var(--coconut);
    break-inside: avoid;
}

.report-disclaimer {
    margin: 18px 0 0;
    color: var(--muted);
    font-size: 0.92rem;
    font-style: italic;
    line-height: 1.6;
}

.report-debug {
    width: min(100%, 1040px);
    margin: 0 auto 18px;
    padding: 14px 16px;
    background: var(--coconut);
    border: 1px solid var(--line);
    border-radius: 12px;
}

.report-debug span {
    display: block;
    margin-top: 4px;
}

/* Document report polish: intentionally more like printed pages than dashboard cards. */
.assessment-report-page {
    background: #e9dfd2;
}

.report-document {
    width: min(100%, 980px);
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.report-page {
    position: relative;
    min-height: 1040px;
    margin: 0 auto 34px;
    padding: 58px 64px 76px;
    background: var(--coconut);
    border: 1px solid rgba(217, 199, 178, 0.72);
    box-shadow: 0 14px 36px rgba(36, 26, 19, 0.08);
}

.report-cover,
.report-front-matter-page,
.report-toc,
.report-section {
    break-after: page;
    page-break-after: always;
}

.report-cover {
    align-content: center;
    color: var(--koa-dark);
    background:
        linear-gradient(90deg, rgba(47, 111, 104, 0.08), transparent 34%),
        var(--coconut);
    border-radius: 0;
}

.report-cover::before,
.report-front-matter-page::before,
.report-toc::before,
.report-section::before {
    display: block;
    width: 92px;
    height: 3px;
    margin-bottom: 30px;
    content: "";
    background: var(--teal);
}

.report-cover h1 {
    max-width: 700px;
    color: var(--koa);
    font-size: clamp(2.7rem, 6vw, 4.6rem);
}

.report-cover dl {
    margin-top: 28px;
    padding-top: 18px;
    border-top: 1px solid var(--line);
}

.report-logo {
    max-width: 190px;
    max-height: 70px;
    margin-bottom: 22px;
}

.report-cover dl div {
    border-top: 0;
}

.report-cover dt {
    color: var(--muted);
}

.report-cover dd {
    color: var(--koa-dark);
}

.report-front-matter-page h2,
.report-toc h2 {
    margin: 0 0 22px;
    color: var(--koa);
    font-size: clamp(2rem, 4vw, 3rem);
}

.report-toc {
    padding: 52px 64px 64px;
    border-bottom: 1px solid rgba(217, 199, 178, 0.72);
}

.report-toc > p {
    max-width: 680px;
    margin: 0 0 26px;
    color: var(--koa-dark);
    font-size: 1.02rem;
    line-height: 1.72;
}

.report-toc ol {
    columns: 1;
    max-width: 700px;
    margin-top: 22px;
    padding: 0;
    list-style: none;
}

.report-toc li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: end;
    padding: 11px 0;
    border-bottom: 1px solid rgba(217, 199, 178, 0.58);
    font-size: 1.02rem;
}

.report-toc li::after {
    display: none;
}

.report-toc li span {
    display: flex;
    gap: 12px;
    align-items: end;
    color: var(--koa-dark);
}

.report-toc li span::after {
    flex: 1;
    content: "";
    border-bottom: 1px dotted rgba(71, 55, 40, 0.34);
    transform: translateY(-0.32em);
}

.report-toc li b {
    color: var(--teal);
    font-weight: 850;
}

.report-section {
    border-bottom: 1px solid rgba(217, 199, 178, 0.72);
}

.report-section-title {
    display: block;
    margin-bottom: 28px;
    padding-bottom: 0;
    border-bottom: 0;
}

.report-section-title span {
    display: block;
    width: auto;
    height: auto;
    margin-bottom: 10px;
    color: var(--teal);
    background: transparent;
    border-radius: 0;
    font-size: 0.82rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.report-section-title h2 {
    font-size: clamp(2rem, 4vw, 3rem);
}

.report-section-title p {
    max-width: 720px;
    margin: 10px 0 0;
    color: var(--muted);
}

.report-executive-score {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 18px;
    align-items: center;
    margin: 18px 0 22px;
    padding: 16px 0 16px 20px;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    border-left: 4px solid var(--teal);
}

.report-executive-score > span {
    grid-column: 1 / -1;
    color: var(--muted);
    font-size: 0.72rem;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.report-executive-score strong {
    color: var(--koa);
    font-size: clamp(2.8rem, 6vw, 4.4rem);
    line-height: 0.9;
}

.report-executive-score small {
    margin-left: 6px;
    color: var(--muted);
    font-size: 1rem;
}

.report-executive-score p {
    margin: 0;
    color: var(--koa-dark);
    line-height: 1.6;
}

.report-callout,
.report-copy-block,
.report-finding,
.report-solution,
.report-path-step,
.report-metric,
.report-quadrant-block,
.report-score-summary {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.report-callout,
.report-copy-block {
    padding: 0;
}

.report-callout {
    padding-left: 18px;
    border-left: 3px solid var(--teal);
}

.report-callout.soft {
    padding-top: 12px;
    background: transparent;
    border-top: 1px solid var(--line);
    border-left: 0;
}

.report-note,
.report-callout.appointment {
    margin-top: 18px;
    padding: 18px 20px;
    background: rgba(247, 243, 237, 0.62);
    border: 1px solid var(--line);
    border-radius: 0;
}

.report-note h3 {
    margin: 0 0 8px;
    color: var(--koa);
}

.report-note p {
    margin: 0;
    line-height: 1.7;
}

.report-two-column,
.report-metric-grid,
.report-matrix-summary {
    gap: 22px 28px;
}

.report-metric-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.report-metric {
    padding: 16px 0;
    border-bottom: 1px solid rgba(217, 199, 178, 0.58);
}

.report-metric:nth-last-child(-n + 2) {
    border-bottom: 0;
}

.report-metric-grid .report-metric {
    align-content: start;
    min-height: 0;
}

.report-table {
    border: 0;
    border-top: 1px solid var(--line);
    border-radius: 0;
}

.report-table thead tr {
    border-bottom: 2px solid rgba(71, 55, 40, 0.22);
}

.report-table thead th {
    border-bottom: 2px solid rgba(71, 55, 40, 0.22);
}

.report-table th,
.report-table td {
    padding: 11px 0;
    background: transparent;
}

.report-table th {
    padding-right: 18px;
    color: var(--koa);
    background: transparent;
}

.report-score-summary {
    grid-template-columns: 120px 1fr;
    padding: 14px 0 20px 18px;
    border-bottom: 1px solid var(--line);
    border-left: 4px solid var(--teal);
}

.report-score-summary > strong {
    display: block;
    width: auto;
    height: auto;
    color: var(--koa);
    background: transparent;
    border: 0;
    border-radius: 0;
    font-size: clamp(2.8rem, 6vw, 4rem);
    text-align: left;
}

.report-score-summary > strong small {
    display: inline;
    margin-left: 5px;
    font-size: 1rem;
}

.report-snapshot-lists {
    display: grid;
    gap: 18px;
    margin-top: 22px;
}

.report-snapshot-lists section {
    padding-top: 14px;
    border-top: 1px solid var(--line);
}

.report-snapshot-lists h3 {
    margin: 0 0 8px;
    color: var(--koa);
}

.report-quadrant-tags {
    display: inline-block;
    margin: -4px 0 10px;
    color: var(--teal);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.report-finding.compact h5 {
    display: grid;
    grid-template-columns: 9px 1fr;
    gap: 10px;
    align-items: start;
}

.report-finding.compact h5 span {
    width: 7px;
    height: 7px;
    margin-top: 0.56em;
    background: var(--teal);
    border-radius: 50%;
}

.report-finding,
.report-solution,
.report-path-step {
    padding: 18px 0;
    border-top: 1px solid var(--line);
}

.report-finding h3,
.report-solution h3,
.report-path-step h3 {
    grid-template-columns: 36px 1fr;
}

.report-finding h3 span,
.report-solution h3 span,
.report-path-step h3 span {
    width: 28px;
    height: 28px;
    color: var(--teal);
    background: transparent;
    border: 1px solid var(--teal);
    border-radius: 50%;
}

.report-quadrant-block {
    padding: 16px 0;
    border-top: 1px solid var(--line);
}

.report-page-footer {
    position: absolute;
    right: 64px;
    bottom: 28px;
    left: 64px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 12px;
    color: var(--muted);
    border-top: 1px solid var(--line);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.report-executive-score {
    grid-template-columns: 168px 1fr;
    gap: 22px;
    margin: 14px 0 16px;
    padding: 14px 0 14px 20px;
}

.report-executive-score strong {
    font-size: clamp(3.1rem, 6vw, 4.6rem);
    letter-spacing: -0.01em;
}

.report-executive-score small {
    font-size: 1em;
}

.report-executive-score p {
    color: var(--teal);
    font-size: clamp(1.15rem, 2.1vw, 1.55rem);
    font-weight: 850;
    line-height: 1.35;
}

.report-score-summary {
    grid-template-columns: 150px 1fr;
    gap: 16px;
    align-items: center;
    margin: 0 0 12px;
    padding: 8px 0 10px 16px;
}

.report-score-summary > strong {
    font-size: clamp(2.85rem, 5.2vw, 4rem);
    line-height: 1;
    white-space: nowrap;
}

.report-score-summary > strong small {
    color: inherit;
    font-size: 1em;
    font-weight: inherit;
    letter-spacing: inherit;
}

.report-score-kicker {
    display: block;
    margin: 0 0 4px;
    color: var(--muted);
    font-size: 0.72rem;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.report-score-summary h3 {
    margin-bottom: 4px;
    color: var(--teal);
    font-size: clamp(1.25rem, 2vw, 1.62rem);
}

.report-score-note {
    margin-top: 7px;
    color: var(--muted);
    font-size: 0.9rem;
    font-style: italic;
}

.report-score-summary p {
    line-height: 1.55;
}

.report-scorecard-section .report-metric-grid {
    align-items: start;
    gap: 10px 28px;
    margin-top: 8px;
    border-top: 0;
    border-bottom: 0;
}

.report-scorecard-section .report-metric {
    padding-top: 6px;
    padding-bottom: 6px;
    border-bottom: 0;
}

.report-scorecard-section h3 {
    margin-top: 12px;
}

.report-scorecard-section .report-table {
    margin-top: 8px;
}

.report-findings-list .report-finding {
    padding: 14px 0 16px;
}

.report-findings-list .report-finding h3 {
    grid-template-columns: 36px 1fr;
    gap: 12px;
    align-items: start;
    margin-bottom: 6px;
    line-height: 1.28;
}

.report-findings-list .report-list.compact,
.report-findings-list .report-copy-block {
    margin-left: 48px;
}

.report-findings-list .report-list.compact {
    gap: 5px;
    margin-top: 4px;
    margin-bottom: 6px;
}

.report-findings-list .report-copy-block {
    padding-top: 7px;
    border-top: 1px solid rgba(217, 199, 178, 0.42);
}

.report-findings-list .report-copy-block h4 {
    margin-bottom: 3px;
    color: var(--teal);
    font-size: 0.76rem;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.report-findings-list .report-copy-block p {
    line-height: 1.58;
}

.report-solutions-section {
    min-height: 1040px;
}

.report-solutions-section .report-section-title {
    margin-bottom: 20px;
}

.report-solution {
    position: relative;
    margin: 0;
    padding: 28px 0 30px;
    border-top: 3px solid rgba(71, 55, 40, 0.22);
}

.report-solution:first-of-type {
    border-top-color: var(--teal);
}

.report-solution + .report-solution {
    margin-top: 12px;
}

.report-solution h3 {
    grid-template-columns: 34px 1fr;
    gap: 14px;
    margin-bottom: 8px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(217, 199, 178, 0.66);
}

.report-solution h3 span {
    margin-top: 1px;
}

.report-subtitle {
    margin: 0 0 14px 48px;
}

.report-solution .report-table.compact {
    margin: 12px 0 16px 48px;
    width: calc(100% - 48px);
}

.report-solution > .report-copy-block,
.report-solution > .report-callout,
.report-solution > .report-two-column {
    margin-left: 48px;
}

.report-solution > .report-copy-block {
    padding: 12px 0;
    border-top: 1px solid rgba(217, 199, 178, 0.5);
}

.report-solution > .report-copy-block h4 {
    margin-bottom: 5px;
    color: var(--teal);
    font-size: 0.78rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.report-solution .report-two-column {
    margin-top: 12px;
    margin-bottom: 12px;
    padding: 12px 0;
    border-top: 1px solid rgba(217, 199, 178, 0.58);
    border-bottom: 1px solid rgba(217, 199, 178, 0.58);
}

.report-solution .report-callout.soft {
    margin-top: 10px;
    padding-top: 10px;
}

.report-matrix-summary {
    gap: 0;
    border-top: 1px solid var(--line);
    border-left: 1px solid var(--line);
}

.report-quadrant-block {
    padding: 18px;
    border-top: 0;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.report-quadrant-block h4 {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(217, 199, 178, 0.68);
}

.report-quadrant-tags {
    display: block;
    margin: 0 0 14px;
    padding-top: 8px;
}

.report-quadrant-block .report-finding.compact {
    padding: 12px 0;
    border-top: 2px solid rgba(217, 199, 178, 0.72);
}

.report-quadrant-block .report-finding.compact:first-of-type {
    border-top-color: rgba(71, 55, 40, 0.22);
}

.report-money-section .report-metric-grid {
    align-items: stretch;
    gap: 8px 28px;
    margin-top: 8px;
}

.report-money-section .report-metric {
    display: grid;
    align-content: center;
    min-height: 76px;
    padding-top: 4px;
    padding-bottom: 4px;
}

.report-money-section .report-metric:nth-child(3),
.report-money-section .report-metric:nth-child(4) {
    padding-top: 2px;
}

.report-money-section .report-metric strong {
    margin-top: 5px;
}

.report-value-breakdown {
    margin: 18px 0 24px;
    border-top: 1px solid var(--line);
}

.report-value-breakdown > h3 {
    margin: 16px 0 8px;
    color: var(--koa);
}

.report-value-breakdown-item {
    padding: 16px 0 18px;
    border-top: 2px solid rgba(217, 199, 178, 0.72);
}

.report-value-breakdown-item h4 {
    margin: 0 0 10px;
    color: var(--koa);
    font-size: 1.05rem;
}

.report-best-first-step {
    margin-bottom: 18px;
    border-top-color: var(--teal);
}

.hero-proof {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 26px;
}

.hero-proof span,
.status-pill,
.pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 31px;
    padding: 5px 11px;
    color: var(--teal-dark);
    background: rgba(47, 111, 104, 0.1);
    border: 1px solid rgba(47, 111, 104, 0.12);
    border-radius: 999px;
    font-size: 0.84rem;
    font-weight: 850;
}

.hero-visual {
    position: relative;
    min-height: 540px;
}

.dashboard-card,
.preview-window,
.slide-stack,
.metric-card,
.card,
.service-card,
.process-step,
.contact-form,
.contact-card,
.assessment-shell {
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(71, 55, 40, 0.1);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}

.dashboard-card {
    position: relative;
    display: grid;
    gap: 22px;
    padding: clamp(24px, 4vw, 34px);
    overflow: hidden;
    transform: translateY(0);
    animation: floatCard 6s ease-in-out infinite;
}

.dashboard-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at top right, rgba(47, 111, 104, 0.14), transparent 18rem),
        linear-gradient(160deg, rgba(217, 199, 178, 0.12), transparent 52%);
    pointer-events: none;
}

.dashboard-card > * {
    position: relative;
}

.dashboard-top,
.assessment-topbar,
.assessment-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.mini-label {
    display: block;
    color: var(--muted);
    font-size: 0.82rem;
    font-weight: 800;
}

.dashboard-top strong {
    display: block;
    color: var(--koa-dark);
    font-size: 2.4rem;
    line-height: 1;
}

.score-ring {
    display: grid;
    place-items: center;
    width: 148px;
    height: 148px;
    margin: 0 auto;
    color: var(--koa);
    background:
        radial-gradient(circle at center, var(--coconut) 0 55%, transparent 56%),
        conic-gradient(var(--teal) 0 72%, rgba(47, 111, 104, 0.14) 72% 100%);
    border-radius: 50%;
    box-shadow: inset 0 0 0 1px rgba(47, 111, 104, 0.08);
}

.score-ring span {
    font-size: 2.2rem;
    font-weight: 900;
}

.workflow-path {
    display: grid;
    grid-template-columns: 1fr 28px 1fr 28px 1fr;
    gap: 8px;
    align-items: center;
}

.workflow-path span,
.mini-grid div,
.preview-list span,
.slide-stack span {
    padding: 12px;
    background: rgba(247, 243, 237, 0.72);
    border: 1px solid rgba(71, 55, 40, 0.08);
    border-radius: 12px;
}

.workflow-path i {
    height: 2px;
    background: linear-gradient(90deg, var(--gold), var(--teal));
}

.mini-grid {
    display: grid;
    gap: 12px;
}

.mini-grid b,
.mini-grid small {
    display: block;
}

.mini-grid small {
    color: var(--muted);
}

.floating-node {
    position: absolute;
    z-index: 2;
    width: 15px;
    height: 15px;
    background: var(--gold);
    border-radius: 50%;
    box-shadow: 0 0 0 10px rgba(217, 199, 178, 0.12);
    animation: floatNode 5s ease-in-out infinite;
}

.node-one {
    top: 58px;
    right: 12%;
}

.node-two {
    bottom: 76px;
    left: 4%;
    background: var(--teal);
    box-shadow: 0 0 0 10px rgba(47, 111, 104, 0.12);
    animation-delay: 1.2s;
}

.section {
    position: relative;
    padding: 84px 0;
}

.section-heading {
    max-width: 760px;
    margin-bottom: 36px;
}

.section-heading.centered {
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

.section h2,
.page-hero h1 {
    color: var(--koa-dark);
}

.section h2 {
    margin: 0;
    font-size: clamp(2.15rem, 4vw, 3.6rem);
    line-height: 1.04;
    letter-spacing: 0;
}

.section-heading p {
    margin: 18px 0 0;
}

.card-grid,
.process-grid,
.service-card-grid {
    display: grid;
    gap: 18px;
}

.card-grid.three,
.process-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.card-grid.four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.card,
.service-card,
.process-step {
    padding: 28px;
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.assessment-process-grid .card {
    min-height: 255px;
    padding: 30px;
}

.assessment-process-grid .card p {
    font-size: 0.98rem;
    line-height: 1.55;
}

.card:hover,
.service-card:hover,
.process-step:hover,
.metric-card:hover,
.service-item:hover,
.insight-box:hover {
    transform: translateY(-6px);
    border-color: rgba(47, 111, 104, 0.22);
    box-shadow: var(--shadow-hover);
}

.card h2,
.card h3,
.service-card h3,
.service-item h2,
.contact-card h2,
.process-step h3 {
    margin: 0 0 10px;
    color: var(--koa-dark);
    line-height: 1.15;
}

.card p,
.service-card p,
.service-item p,
.contact-card p,
.process-step p,
.metric-card p {
    color: var(--muted);
}

.card-marker,
.service-card span,
.metric-card span,
.service-item span,
.step,
.process-step span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-bottom: 16px;
    color: var(--koa);
    background: rgba(217, 199, 178, 0.18);
    border: 1px solid rgba(217, 199, 178, 0.22);
    border-radius: 12px;
    font-weight: 900;
}

.problem-section .card:nth-child(even) .card-marker,
.service-card:nth-child(even) span {
    color: var(--teal-dark);
    background: rgba(47, 111, 104, 0.11);
    border-color: rgba(47, 111, 104, 0.16);
}

.assessment-feature,
.demo-section {
    width: 100%;
    max-width: none;
    padding: 96px 6vw;
    overflow: hidden;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.76), rgba(247, 243, 237, 0.78));
}

.assessment-feature::before {
    left: -70px;
    bottom: 40px;
    width: 280px;
    height: 160px;
    border-radius: 50%;
}

.assessment-feature .split,
.demo-section .split,
.band .split {
    width: min(1160px, 100%);
    margin: 0 auto;
}

.split {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
    gap: clamp(34px, 6vw, 70px);
    align-items: start;
}

.split.align-center {
    align-items: center;
}

.check-list {
    display: grid;
    gap: 12px;
    margin: 24px 0 28px;
    padding: 0;
    list-style: none;
}

.check-list li {
    position: relative;
    padding-left: 28px;
    color: var(--muted);
}

.check-list li::before {
    content: "";
    position: absolute;
    top: 0.7em;
    left: 0;
    width: 13px;
    height: 7px;
    border-bottom: 2px solid var(--teal);
    border-left: 2px solid var(--teal);
    transform: rotate(-45deg);
}

.assessment-preview {
    position: relative;
}

.preview-window {
    overflow: hidden;
}

.preview-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 16px;
    background: var(--koa);
    color: var(--coconut);
}

.preview-header span {
    width: 10px;
    height: 10px;
    background: var(--gold);
    border-radius: 50%;
}

.preview-header strong {
    margin-left: auto;
    font-size: 0.82rem;
}

.preview-body {
    display: grid;
    gap: 18px;
    padding: 24px;
}

.preview-score {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 18px;
    padding: 20px;
    color: var(--coconut);
    background: linear-gradient(135deg, var(--teal), var(--koa));
    border-radius: 14px;
}

.preview-score small,
.preview-score b {
    display: block;
}

.preview-score b {
    font-size: 3rem;
    line-height: 0.95;
}

.preview-list {
    display: grid;
    gap: 10px;
}

.service-card-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.service-card a {
    display: inline-flex;
    margin-top: 6px;
    color: var(--teal);
    font-weight: 850;
    text-decoration: none;
}

.service-card a:hover {
    color: var(--teal-dark);
}

.process-section {
    overflow: hidden;
}

.process-line {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.process-line::before {
    content: "";
    position: absolute;
    top: 52px;
    right: 8%;
    left: 8%;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--gold), var(--teal), transparent);
}

.process-step {
    position: relative;
}

.demo-section {
    background: var(--koa);
    color: var(--coconut);
}

.demo-section::before {
    right: -80px;
    top: 70px;
    width: 310px;
    height: 180px;
}

.demo-section h2,
.demo-section p,
.demo-section .eyebrow {
    color: var(--coconut);
}

.demo-section .button.secondary {
    color: var(--koa);
}

.slide-stack {
    display: grid;
    gap: 10px;
    padding: 22px;
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.18);
    box-shadow: none;
}

.slide-stack span {
    color: var(--coconut);
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.16);
    transition: transform 180ms ease, background-color 180ms ease;
}

.slide-stack span:hover {
    background: rgba(255, 255, 255, 0.16);
    transform: translateX(5px);
}

.final-cta {
    width: min(980px, 88vw);
    margin-bottom: 84px;
    padding: clamp(34px, 6vw, 70px);
    text-align: center;
    background:
        linear-gradient(135deg, rgba(71, 55, 40, 0.92), rgba(47, 111, 104, 0.92)),
        var(--koa);
    border-radius: 26px;
    box-shadow: var(--shadow-hover);
}

.final-cta h2,
.final-cta p,
.final-cta .eyebrow {
    color: var(--coconut);
}

.final-cta p {
    max-width: 650px;
    margin: 16px auto 28px;
}

.band {
    width: 100%;
    max-width: none;
    padding: 86px 6vw;
    color: var(--coconut);
    background: var(--koa);
}

.band h2,
.band p,
.band .text-link,
.band .check-list,
.band .check-list li {
    color: var(--coconut);
}

.text-link {
    display: inline-flex;
    margin-top: 18px;
    color: var(--teal);
    font-weight: 850;
}

.cta-section {
    text-align: center;
}

.cta-section p {
    max-width: 660px;
    margin: 18px auto 0;
    color: var(--muted);
}

.page-hero {
    padding: 94px 0 34px;
}

.page-hero.compact {
    min-height: 380px;
}

.service-list {
    display: grid;
    gap: 18px;
}

.service-item {
    display: grid;
    grid-template-columns: 66px 1fr;
    gap: 22px;
    padding: 30px;
    background: var(--coconut);
    border: 1px solid var(--soft-line);
    border-radius: var(--radius);
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.contact-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.62fr);
    gap: 24px;
    align-items: start;
}

.contact-form {
    display: grid;
    gap: 18px;
    padding: 30px;
}

.contact-form label {
    display: grid;
    gap: 8px;
    color: var(--koa-dark);
    font-weight: 800;
}

.contact-form input,
.contact-form textarea {
    width: 100%;
    padding: 14px 15px;
    color: var(--charcoal);
    background: var(--coconut);
    border: 1px solid var(--line);
    border-radius: 12px;
    transition: border-color 180ms ease, box-shadow 180ms ease;
}

.contact-form input:focus,
.contact-form textarea:focus {
    outline: 0;
    border-color: var(--teal);
    box-shadow: 0 0 0 4px rgba(47, 111, 104, 0.12);
}

.contact-card {
    padding: 30px;
}

.site-footer {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(220px, 0.8fr) minmax(220px, 0.8fr);
    gap: 34px;
    padding: 52px 6vw;
    color: var(--coconut);
    background: var(--koa);
}

.footer-brand {
    color: var(--coconut);
}

.site-footer p,
.site-footer a,
.site-footer small {
    color: rgba(255, 255, 255, 0.78);
}

.site-footer p {
    max-width: 420px;
    margin: 12px 0 0;
}

.footer-links,
.footer-contact {
    display: grid;
    gap: 10px;
    align-content: start;
    font-weight: 750;
}

.footer-links a,
.footer-contact a {
    text-decoration: none;
    transition: color 180ms ease, transform 180ms ease;
}

.footer-links a:hover,
.footer-contact a:hover {
    color: var(--gold);
    transform: translateX(3px);
}

.footer-contact span {
    color: var(--gold);
    font-weight: 900;
}

.assessment-page {
    min-height: calc(100vh - 78px);
    padding: 34px 0 70px;
}

.assessment-shell {
    width: min(1120px, 92vw);
    margin: 0 auto;
    overflow: hidden;
}

.assessment-topbar {
    padding: 18px 22px;
    border-bottom: 1px solid var(--line);
}

.progress-track {
    height: 8px;
    background: #D9C7B2;
}

.progress-bar {
    width: 0;
    height: 100%;
    background: linear-gradient(90deg, var(--gold), var(--teal));
    transition: width 200ms ease;
}

.slide {
    display: none;
    min-height: 560px;
    padding: clamp(28px, 5vw, 58px);
}

.slide.active {
    display: grid;
    align-content: center;
}

.slide h1,
.slide h2 {
    margin: 0 0 18px;
    color: var(--koa-dark);
    font-size: clamp(2rem, 5vw, 4.4rem);
    line-height: 1.02;
}

.slide p {
    max-width: 800px;
    color: var(--muted);
    font-size: 1.08rem;
}

.slide-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 24px;
}

.insight-box {
    padding: 20px;
    background: rgba(247, 243, 237, 0.72);
    border: 1px solid var(--line);
    border-radius: 14px;
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.insight-box strong {
    display: block;
    margin-bottom: 6px;
    color: var(--koa-dark);
}

.matrix {
    display: grid;
    gap: 12px;
    margin-top: 24px;
}

.matrix-row {
    display: grid;
    grid-template-columns: 1.4fr 0.6fr 0.6fr 0.7fr;
    gap: 12px;
    align-items: center;
    padding: 14px;
    background: rgba(247, 243, 237, 0.72);
    border: 1px solid var(--line);
    border-radius: 14px;
}

.matrix-row.header {
    color: var(--coconut);
    background: var(--koa);
    font-weight: 850;
}

.assessment-actions {
    padding: 18px 22px;
    border-top: 1px solid var(--line);
}

.assessment-actions div {
    display: flex;
    gap: 10px;
}

.error-box {
    width: min(760px, 90vw);
    margin: 90px auto;
    padding: 34px;
    background: var(--coconut);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}

.assessment-page-prezi {
    padding: 48px 0 86px;
}

.assessment-shell-prezi {
    width: min(1240px, 94vw);
    overflow: visible;
}

.assessment-title-lockup {
    display: grid;
    gap: 4px;
}

.assessment-title-lockup span {
    color: var(--koa-dark);
    font-size: 1rem;
}

.assessment-title-lockup small {
    width: fit-content;
    padding: 4px 9px;
    color: var(--teal);
    background: rgba(47, 111, 104, 0.08);
    border: 1px solid rgba(47, 111, 104, 0.16);
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.assessment-shell-prezi .assessment-topbar {
    display: flex;
    gap: 18px;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(247, 243, 237, 0.72));
}

.assessment-shell-prezi [data-slide-counter] {
    padding: 7px 12px;
    color: var(--koa-dark);
    background: rgba(217, 199, 178, 0.14);
    border: 1px solid rgba(217, 199, 178, 0.28);
    border-radius: 999px;
    font-weight: 850;
    transition: color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.assessment-shell-prezi [data-slide-counter].is-changing {
    color: var(--coconut);
    background: var(--teal);
    transform: translateY(-1px);
}

.assessment-top-meta {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    margin-left: auto;
}

.assessment-top-actions {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.atamai-logo {
    display: block;
    width: auto;
    max-width: 180px;
    height: auto;
}

.assessment-top-logo {
    max-width: 128px;
    max-height: 42px;
    margin-bottom: 8px;
}

.assessment-icon-button {
    display: inline-grid;
    place-items: center;
    width: 38px;
    height: 38px;
    color: var(--teal);
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(217, 199, 178, 0.62);
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(36, 26, 19, 0.07);
    cursor: pointer;
    text-decoration: none;
    transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.assessment-icon-button svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.assessment-icon-button:hover,
.assessment-icon-button:focus-visible {
    color: var(--coconut);
    background: var(--teal);
    border-color: var(--teal);
    box-shadow: 0 12px 26px rgba(47, 111, 104, 0.22);
    transform: translateY(-1px);
}

.assessment-icon-button.is-copied {
    color: var(--coconut);
    background: var(--koa-dark);
    border-color: var(--koa-dark);
}

.assessment-shell-prezi .progress-track {
    background: rgba(234, 223, 206, 0.86);
}

.assessment-shell-prezi .progress-bar {
    background: linear-gradient(90deg, var(--teal), var(--gold));
    transition: width 420ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.prezi-slide-controls {
    display: flex;
    justify-content: flex-end;
    padding: 16px 22px;
    background: rgba(255, 255, 255, 0.72);
    border-top: 1px solid rgba(71, 55, 40, 0.06);
}

.prezi-controls-top {
    border-bottom: 1px solid var(--line);
}

.assessment-shell-prezi .slide {
    min-height: auto;
    padding: clamp(36px, 5vw, 72px);
}

.assessment-shell-prezi .slide.active {
    display: grid;
    align-content: start;
}

.prezi-slide h1,
.prezi-slide h2 {
    max-width: 980px;
    font-size: clamp(2rem, 4vw, 3.85rem);
    line-height: 1.06;
}

.prezi-slide > h2:not(:first-of-type) {
    margin-top: 38px;
    font-size: clamp(1.35rem, 2vw, 2rem);
}

.prezi-slide > .eyebrow {
    margin-bottom: 12px;
}

.assessment-shell-prezi .prezi-slide > .eyebrow {
    display: none;
}

.prezi-lede,
.prezi-greeting {
    max-width: 900px;
    color: var(--muted);
    font-size: clamp(1.05rem, 1.5vw, 1.28rem);
    line-height: 1.7;
}

.prezi-greeting {
    margin-top: 10px;
    color: var(--koa-dark);
    font-weight: 750;
}

.prezi-front-details {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 260px));
    gap: 20px;
    margin: 34px 0 0;
}

.prezi-front-details div {
    padding-top: 16px;
    border-top: 2px solid rgba(217, 199, 178, 0.7);
}

.prezi-front-details dt {
    color: var(--muted);
    font-size: 0.78rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.prezi-front-details dd {
    margin: 7px 0 0;
    color: var(--koa-dark);
    font-size: 1.05rem;
    font-weight: 850;
}

.prezi-front-actions {
    margin-top: 30px;
}

.prezi-text-block {
    margin-top: 16px;
    background: var(--coconut);
    box-shadow: none;
}

.prezi-text-block span,
.prezi-ranked-card span,
.prezi-value-area-card span {
    display: block;
    color: var(--muted);
    line-height: 1.65;
}

.prezi-card-grid,
.prezi-quadrant-grid,
.prezi-score-breakdown {
    gap: 22px;
    align-items: start;
}

.prezi-card-grid > .insight-box,
.prezi-quadrant-grid > .insight-box,
.prezi-score-breakdown > .insight-box {
    height: 100%;
}

.prezi-metric-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.prezi-metric-card {
    position: relative;
    min-height: 150px;
    padding: 24px;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(247, 243, 237, 0.9)),
        var(--coconut);
    border-color: rgba(47, 111, 104, 0.18);
    box-shadow: 0 18px 42px rgba(71, 55, 40, 0.08);
}

.prezi-metric-card::after {
    position: absolute;
    right: 18px;
    bottom: 16px;
    width: 42px;
    height: 3px;
    content: "";
    background: linear-gradient(90deg, var(--gold), var(--teal));
    border-radius: 999px;
}

.prezi-metric-card strong {
    color: var(--muted);
    font-size: 0.78rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.prezi-metric-card .pill {
    display: block;
    padding: 0;
    margin-top: 14px;
    color: var(--teal);
    background: transparent;
    border: 0;
    font-size: clamp(1.55rem, 2.6vw, 2.35rem);
    font-weight: 900;
    line-height: 1.05;
}

.prezi-metric-card small {
    display: block;
    margin-top: 12px;
    color: var(--muted);
    font-size: 0.88rem;
    line-height: 1.45;
}

.prezi-disclaimer {
    max-width: none;
    margin: 28px 0 0;
    color: rgba(91, 79, 69, 0.78);
    font-size: 0.82rem;
    font-style: italic;
    line-height: 1.45;
    white-space: nowrap;
}

.assessment-shell-prezi .insight-box:hover {
    transform: none;
    border-color: rgba(71, 55, 40, 0.1);
    box-shadow: 0 16px 38px rgba(71, 55, 40, 0.07);
}

.assessment-shell-prezi .prezi-text-block:hover {
    box-shadow: none;
}

.prezi-value .prezi-metric-card:hover {
    transform: translateY(-5px);
    border-color: rgba(47, 111, 104, 0.24);
    box-shadow: var(--shadow-hover);
}

.prezi-ranked-card,
.prezi-value-area-card,
.prezi-quadrant-card,
.prezi-score-card {
    background: var(--coconut);
    border-color: rgba(71, 55, 40, 0.1);
    box-shadow: 0 16px 38px rgba(71, 55, 40, 0.07);
}

.prezi-ranked-card > strong {
    padding-bottom: 12px;
    margin-bottom: 14px;
    border-bottom: 1px solid rgba(71, 55, 40, 0.1);
    font-size: 1.12rem;
    line-height: 1.28;
}

.prezi-ranked-card .hero-proof {
    margin: 4px 0 14px;
}

.prezi-ranked-card .hero-proof span,
.prezi-quadrant-card .check-list li {
    background: rgba(47, 111, 104, 0.08);
    border-color: rgba(47, 111, 104, 0.16);
    color: var(--teal);
}

.prezi-ranked-card .prezi-text-block {
    padding: 15px;
    margin-top: 12px;
    background: rgba(247, 243, 237, 0.48);
    border-color: rgba(71, 55, 40, 0.08);
    border-radius: 12px;
}

.prezi-ranked-card .prezi-text-block strong {
    margin-bottom: 5px;
    color: var(--koa);
    font-size: 0.82rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.prezi-issue-card {
    border-top: 5px solid var(--gold);
}

.prezi-issue-card .prezi-text-block:nth-of-type(1),
.prezi-score-card .pill {
    background: rgba(217, 199, 178, 0.12);
    border-color: rgba(217, 199, 178, 0.22);
}

.prezi-table-wrap {
    margin-top: 20px;
    overflow-x: auto;
    background: var(--coconut);
    border: 1px solid rgba(71, 55, 40, 0.1);
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(71, 55, 40, 0.06);
}

.prezi-value-table {
    width: 100%;
    min-width: 680px;
    border-collapse: collapse;
}

.prezi-value-table.compact {
    min-width: 520px;
}

.prezi-value-table th,
.prezi-value-table td {
    padding: 18px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid rgba(71, 55, 40, 0.08);
}

.prezi-value-table th {
    color: var(--koa-dark);
    background: rgba(247, 243, 237, 0.7);
    font-size: 0.78rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.prezi-value-table td:first-child {
    color: var(--koa-dark);
    font-weight: 850;
}

.prezi-value-table tr:last-child td {
    border-bottom: 0;
}

.prezi-ranked-list {
    display: grid;
    gap: 18px;
    margin-top: 28px;
}

.prezi-ranked-row {
    display: grid;
    gap: 0;
    overflow: hidden;
    background: var(--coconut);
    border: 1px solid rgba(71, 55, 40, 0.1);
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(71, 55, 40, 0.06);
}

.prezi-ranked-header {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 14px;
    align-items: center;
    padding: 18px 20px;
    background: linear-gradient(135deg, rgba(71, 55, 40, 0.06), rgba(247, 243, 237, 0.7));
    border-bottom: 1px solid rgba(71, 55, 40, 0.08);
}

.prezi-rank-badge {
    display: inline-grid;
    width: 42px;
    height: 42px;
    place-items: center;
    color: var(--coconut);
    background: var(--koa);
    border-radius: 50%;
    font-weight: 900;
}

.prezi-ranked-header > strong,
.prezi-ranked-content > strong {
    display: block;
    color: var(--koa-dark);
    font-size: 1.16rem;
}

.prezi-ranked-content {
    padding: 18px 20px 22px;
}

.prezi-ranked-list.compact {
    gap: 14px;
}

.prezi-ranked-list.compact .prezi-ranked-content {
    padding-top: 14px;
}

.prezi-ranked-content .hero-proof {
    margin: 10px 0 16px;
}

.prezi-context-labels {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin: 4px 0 16px;
}

.prezi-context-labels span {
    display: inline-flex;
    width: auto;
    padding: 7px 10px;
    color: var(--koa-dark);
    background: rgba(247, 243, 237, 0.76);
    border: 1px solid rgba(71, 55, 40, 0.1);
    border-radius: 999px;
    font-size: 0.82rem;
    font-weight: 750;
}

.prezi-context-labels .context-label-title {
    color: var(--muted);
    background: transparent;
    border: 0;
    padding-left: 0;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.prezi-row-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 14px 0;
}

.prezi-row-meta span {
    display: inline-flex;
    gap: 7px;
    align-items: center;
    padding: 8px 11px;
    color: var(--koa-dark);
    background: rgba(247, 243, 237, 0.76);
    border: 1px solid rgba(71, 55, 40, 0.08);
    border-radius: 999px;
    font-size: 0.9rem;
}

.prezi-status-pill.status-high {
    color: #7f1d1d;
    background: rgba(247, 243, 237, 0.58);
    border-color: rgba(127, 29, 29, 0.2);
}

.prezi-status-pill.status-medium {
    color: #7a4b00;
    background: rgba(247, 243, 237, 0.58);
    border-color: rgba(217, 199, 178, 0.3);
}

.prezi-status-pill.status-low {
    color: #166534;
    background: rgba(247, 243, 237, 0.58);
    border-color: rgba(22, 101, 52, 0.22);
}

.prezi-status-pill.status-neutral {
    color: var(--koa-dark);
    background: rgba(247, 243, 237, 0.76);
}

.prezi-row-meta b {
    color: var(--teal);
    font-size: 0.72rem;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.prezi-ranked-content p {
    max-width: 920px;
    margin: 10px 0 0;
}

.prezi-opportunity-graph {
    position: relative;
    min-height: 470px;
    margin-top: 30px;
    padding: 34px 44px 56px 64px;
    background:
        var(--coconut);
    border: 1px solid rgba(71, 55, 40, 0.1);
    border-radius: 22px;
    box-shadow: 0 18px 44px rgba(71, 55, 40, 0.08);
}

.prezi-opportunity-graph::before,
.prezi-opportunity-graph::after {
    position: absolute;
    content: "";
    background: var(--koa);
    border-radius: 999px;
}

.prezi-opportunity-graph::before {
    top: 34px;
    bottom: 56px;
    left: 42px;
    width: 2px;
}

.prezi-opportunity-graph::after {
    right: 44px;
    bottom: 34px;
    left: 64px;
    height: 2px;
}

.graph-grid {
    display: grid;
    height: 100%;
    min-height: 390px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
    overflow: visible;
    border: 1px solid rgba(71, 55, 40, 0.1);
    border-radius: 18px;
}

.axis-label {
    position: absolute;
    z-index: 3;
    color: var(--koa-dark);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.y-axis.high {
    top: 18px;
    left: 18px;
}

.y-axis.high::after,
.x-axis.high::after {
    content: "↑";
    margin-left: 6px;
}

.y-axis.low {
    bottom: 46px;
    left: 14px;
    color: var(--muted);
}

.x-axis.low {
    bottom: 11px;
    left: 64px;
    color: var(--muted);
}

.x-axis.high {
    right: 44px;
    bottom: 11px;
}

.x-axis.high::after {
    content: "→";
}

.graph-quadrant {
    position: relative;
    padding: 18px;
    background: rgba(247, 243, 237, 0.42);
    transition: background-color 180ms ease, box-shadow 180ms ease;
}

.graph-quadrant strong {
    display: flex;
    gap: 8px;
    align-items: center;
    color: var(--koa-dark);
    font-size: 0.86rem;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.graph-quadrant strong i {
    display: inline-grid;
    width: 25px;
    height: 25px;
    place-items: center;
    color: var(--coconut);
    background: var(--koa);
    border-radius: 50%;
    font-style: normal;
}

.quadrant-quick {
    background: #EFE3D3;
    border-radius: 16px 0 0 0;
    box-shadow: inset 0 0 0 2px rgba(217, 199, 178, 0.38);
}

.quadrant-quick strong i {
    color: var(--koa-dark);
    background: var(--gold);
}

.quadrant-items {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 16px;
}

.quadrant-opportunity {
    position: relative;
    display: inline-flex;
    padding: 8px 10px;
    color: var(--koa-dark);
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(71, 55, 40, 0.1);
    border-radius: 999px;
    font-size: 0.82rem;
    font-weight: 800;
}

.quadrant-opportunity em {
    position: absolute;
    z-index: 30;
    bottom: calc(100% + 10px);
    left: 50%;
    display: none;
    min-width: 190px;
    padding: 10px 12px;
    color: var(--koa-dark);
    background: var(--coconut);
    border: 1px solid rgba(71, 55, 40, 0.12);
    border-radius: 12px;
    box-shadow: 0 16px 34px rgba(71, 55, 40, 0.16);
    font-style: normal;
    line-height: 1.55;
    transform: translateX(-50%);
}

.quadrant-opportunity em b {
    margin-right: 4px;
    color: var(--teal);
}

.quadrant-opportunity:hover em {
    display: block;
}

.quadrant-detail {
    position: absolute;
    z-index: 20;
    right: auto;
    bottom: auto;
    left: 20px;
    top: calc(100% - 12px);
    width: min(320px, 82vw);
    max-height: 145px;
    padding: 12px;
    overflow: auto;
    opacity: 0;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(71, 55, 40, 0.1);
    border-radius: 12px;
    box-shadow: 0 14px 30px rgba(71, 55, 40, 0.1);
    transform: translateY(8px);
    transition: opacity 180ms ease, transform 180ms ease;
}

.graph-quadrant:hover {
    background-color: rgba(255, 255, 255, 0.8);
    box-shadow: inset 0 0 0 2px rgba(217, 199, 178, 0.28);
}

.graph-quadrant:hover .quadrant-detail {
    opacity: 1;
    transform: translateY(0);
}

.prezi-opportunity-list {
    display: grid;
    gap: 16px;
    margin-top: 30px;
}

.prezi-opportunity-list h3 {
    margin: 0;
    color: var(--koa-dark);
    font-size: 1.08rem;
}

.prezi-opportunity-row {
    display: grid;
    grid-template-columns: 38px 1fr;
    gap: 14px;
    align-items: start;
    padding: 16px 0;
    border-bottom: 1px solid rgba(71, 55, 40, 0.09);
}

.prezi-opportunity-row .opportunity-icon {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    color: var(--coconut);
    background: var(--teal);
    border-radius: 10px;
    font-weight: 900;
}

.prezi-opportunity-row strong {
    color: var(--koa-dark);
    font-size: 1.02rem;
}

.prezi-quadrant-grid {
    margin-top: 30px;
}

.prezi-quadrant-card {
    border-left: 5px solid var(--teal);
}

.prezi-quadrant-card .check-list {
    margin-top: 14px;
}

.prezi-solution-card {
    grid-column: span 1;
    border-top: 5px solid var(--teal);
}

.prezi-solution-carousel {
    position: relative;
    margin-top: 28px;
    padding: 0 56px 42px;
}

.prezi-solution-track {
    position: relative;
}

.prezi-solution-carousel .prezi-solution-card {
    display: none;
    min-height: 520px;
    padding: clamp(24px, 3vw, 34px);
}

.prezi-solution-carousel .prezi-solution-card.active {
    display: block;
}

.prezi-solution-heading {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 18px;
    align-items: start;
    padding-bottom: 18px;
    margin-bottom: 18px;
    border-bottom: 1px solid rgba(71, 55, 40, 0.1);
}

.prezi-solution-heading > div > strong {
    color: var(--koa-dark);
    font-size: clamp(1.25rem, 2vw, 2rem);
    line-height: 1.15;
}

.prezi-solution-details {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.prezi-solution-details .prezi-text-block {
    margin-top: 0;
}

.prezi-solution-field {
    padding: 0 0 16px;
    border-bottom: 1px solid rgba(71, 55, 40, 0.08);
}

.prezi-solution-field strong {
    display: block;
    margin-bottom: 6px;
    color: var(--koa);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.prezi-solution-field p {
    margin: 0;
    color: var(--muted);
    font-size: 1rem;
    line-height: 1.65;
}

.prezi-before-after {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-column: 1 / -1;
    gap: 16px;
    padding: 18px;
    background: rgba(247, 243, 237, 0.56);
    border: 1px solid rgba(71, 55, 40, 0.09);
    border-radius: 16px;
}

.prezi-before-after::before {
    position: absolute;
    top: 50%;
    left: 50%;
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    content: "→";
    color: var(--coconut);
    background: var(--teal);
    border-radius: 50%;
    font-weight: 900;
    transform: translate(-50%, -50%);
}

.prezi-before-after .prezi-solution-field {
    padding: 16px;
    background: var(--coconut);
    border: 1px solid rgba(71, 55, 40, 0.08);
    border-radius: 12px;
}

.carousel-arrow {
    position: absolute;
    top: 44%;
    z-index: 4;
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    color: var(--koa-dark);
    background: var(--coconut);
    border: 1px solid rgba(71, 55, 40, 0.14);
    border-radius: 50%;
    box-shadow: 0 12px 30px rgba(71, 55, 40, 0.12);
    cursor: pointer;
    font-size: 2rem;
    line-height: 1;
    transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}

.carousel-arrow:hover {
    background: var(--gold);
    transform: translateY(-2px);
    box-shadow: 0 18px 36px rgba(71, 55, 40, 0.16);
}

.carousel-arrow:disabled {
    cursor: pointer;
    opacity: 1;
}

.carousel-prev {
    left: 0;
}

.carousel-next {
    right: 0;
}

.carousel-dots {
    position: absolute;
    right: 56px;
    bottom: 0;
    left: 56px;
    display: flex;
    justify-content: center;
    gap: 9px;
}

.carousel-dot {
    width: 10px;
    height: 10px;
    padding: 0;
    background: rgba(71, 55, 40, 0.2);
    border: 0;
    border-radius: 999px;
    cursor: pointer;
    transition: width 180ms ease, background-color 180ms ease;
}

.carousel-dot.active {
    width: 30px;
    background: var(--teal);
}

.prezi-subsection {
    padding: 26px;
    margin-top: 28px;
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(71, 55, 40, 0.09);
    border-radius: 20px;
}

.prezi-subsection > h2 {
    margin-bottom: 4px;
    font-size: clamp(1.35rem, 2.2vw, 2.2rem);
}

.prezi-revenue-section {
    border-top: 5px solid var(--gold);
}

.prezi-time-section {
    border-top: 5px solid var(--teal);
}

.prezi-total-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 30px;
}

.prezi-roadmap .prezi-card-grid {
    position: relative;
    grid-template-columns: 1fr;
    gap: 20px;
    padding-left: 28px;
}

.prezi-roadmap .prezi-card-grid::before {
    position: absolute;
    top: 22px;
    bottom: 22px;
    left: 8px;
    width: 4px;
    content: "";
    background: linear-gradient(180deg, var(--gold), rgba(217, 199, 178, 0.62), var(--teal));
    border-radius: 999px;
}

.prezi-roadmap .prezi-card-grid::after {
    position: absolute;
    top: 14px;
    bottom: 14px;
    left: 1px;
    width: 18px;
    content: "";
    background:
        radial-gradient(circle at 50% 0, var(--gold) 0 7px, transparent 8px),
        radial-gradient(circle at 50% 100%, var(--teal) 0 7px, transparent 8px);
    pointer-events: none;
}

.prezi-roadmap-card {
    position: relative;
}

.prezi-roadmap-card::before {
    position: absolute;
    top: 24px;
    left: -31px;
    width: 12px;
    height: 12px;
    content: "";
    background: var(--gold);
    border: 4px solid var(--coconut);
    border-radius: 50%;
    box-shadow: 0 0 0 1px rgba(71, 55, 40, 0.16);
}

.prezi-roadmap-card:hover {
    transform: translateY(-4px);
    border-color: rgba(47, 111, 104, 0.18);
    box-shadow: var(--shadow-hover);
}

.prezi-first-step .prezi-text-block:first-of-type,
.prezi-action-card .prezi-text-block:nth-last-of-type(2) {
    border-left: 5px solid var(--gold);
}

.prezi-action-card {
    border-top: 5px solid rgba(47, 111, 104, 0.58);
}

.prezi-first-step-layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.86fr) minmax(320px, 1.14fr);
    gap: 34px;
    align-items: start;
    margin-top: 28px;
}

.prezi-first-step-main {
    padding: 30px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(247, 243, 237, 0.8)),
        var(--coconut);
    border: 1px solid rgba(217, 199, 178, 0.34);
    border-radius: 22px;
    box-shadow: 0 18px 44px rgba(71, 55, 40, 0.08);
}

.prezi-first-step-main h3 {
    margin: 10px 0 12px;
    color: var(--koa-dark);
    font-size: clamp(1.65rem, 3vw, 2.65rem);
    line-height: 1.1;
}

.prezi-first-step-main p {
    font-size: 1.08rem;
    line-height: 1.7;
}

.prezi-first-step-notes {
    display: grid;
    gap: 18px;
}

.prezi-score-hero {
    display: flex;
    padding: 28px;
    margin: 30px 0;
    background:
        radial-gradient(circle at 18% 20%, rgba(217, 199, 178, 0.18), transparent 22%),
        radial-gradient(circle at 78% 28%, rgba(47, 111, 104, 0.1), transparent 18%),
        linear-gradient(135deg, #FFFFFF, #F7F3ED);
    border: 1px solid rgba(71, 55, 40, 0.1);
    border-radius: 24px;
}

.prezi-score-meter {
    --score-percent: 0;
    --score-angle: 0deg;
    position: relative;
    display: grid;
    width: min(300px, 70vw);
    aspect-ratio: 1;
    place-items: center;
    padding: 18px;
    background:
        conic-gradient(from -90deg, var(--teal) 0 var(--score-angle), rgba(71, 55, 40, 0.12) var(--score-angle) 360deg);
    border: 1px solid rgba(47, 111, 104, 0.18);
    border-radius: 50%;
    box-shadow: 0 20px 46px rgba(71, 55, 40, 0.12);
}

.prezi-score-meter::before {
    position: absolute;
    inset: 15px;
    content: "";
    background:
        radial-gradient(circle at 30% 28%, rgba(255, 255, 255, 0.85) 0 5px, transparent 6px),
        radial-gradient(circle at 70% 32%, rgba(255, 255, 255, 0.6) 0 8px, transparent 9px),
        radial-gradient(circle at 36% 72%, rgba(217, 199, 178, 0.16) 0 12px, transparent 13px),
        var(--coconut);
    border-radius: 50%;
}

.score-meter-ring {
    position: relative;
    z-index: 1;
    display: grid;
    width: 74%;
    aspect-ratio: 1;
    place-items: center;
    align-content: center;
    background:
        radial-gradient(circle at 70% 20%, rgba(217, 199, 178, 0.18), transparent 34%),
        linear-gradient(135deg, var(--koa), #241A13);
    border-radius: 50%;
}

.score-meter-ring span {
    color: var(--coconut);
    font-size: clamp(3rem, 8vw, 5.6rem);
    font-weight: 950;
    line-height: 0.95;
}

.score-meter-ring small {
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.95rem;
    font-weight: 850;
}

.prezi-score-breakdown {
    display: grid;
    gap: 0;
    margin-top: 20px;
    background: var(--coconut);
    border: 1px solid rgba(71, 55, 40, 0.1);
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(71, 55, 40, 0.06);
}

.prezi-score-row {
    display: grid;
    grid-template-columns: minmax(180px, 0.8fr) 120px 1.2fr;
    gap: 18px;
    align-items: start;
    padding: 18px 20px;
    border-bottom: 1px solid rgba(71, 55, 40, 0.08);
}

.prezi-score-row:last-child {
    border-bottom: 0;
}

.prezi-score-row strong {
    color: var(--koa-dark);
}

.prezi-score-row .pill {
    justify-self: start;
    color: var(--teal);
    background: rgba(47, 111, 104, 0.08);
    font-weight: 900;
}

.prezi-score-row .pill small {
    display: block;
    margin-top: 4px;
    color: var(--koa-dark);
    font-size: 0.68rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.prezi-score-row .pill::after {
    display: block;
    width: 82px;
    height: 6px;
    margin-top: 7px;
    content: "";
    background: linear-gradient(90deg, var(--teal), var(--gold));
    border-radius: 999px;
    opacity: 0.72;
}

.prezi-score-row p {
    margin: 0;
    font-size: 0.98rem;
}

.prezi-final-cta {
    margin: clamp(18px, 3vw, 32px);
    color: var(--koa-dark);
    background:
        radial-gradient(circle at 92% 18%, rgba(217, 199, 178, 0.18), transparent 34%),
        linear-gradient(135deg, #FFFFFF, #F7F3ED);
    border: 1px solid rgba(217, 199, 178, 0.28);
    border-radius: 28px;
}

.prezi-final-cta h2,
.prezi-final-cta .eyebrow {
    color: var(--koa-dark);
}

.prezi-final-cta .prezi-text-block,
.prezi-final-cta .check-list li {
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(71, 55, 40, 0.09);
    border-radius: 14px;
    color: var(--muted);
}

.prezi-final-cta .prezi-text-block strong,
.prezi-final-cta .prezi-text-block span,
.prezi-final-cta .check-list li {
    color: var(--koa-dark);
}

.prezi-final-cta .check-list {
    gap: 10px;
    max-width: 860px;
}

.prezi-final-cta .check-list li {
    display: grid;
    grid-template-columns: 22px 1fr;
    gap: 10px;
    align-items: start;
    padding: 13px 15px;
}

.prezi-final-cta .check-list li::before {
    position: static;
    width: 13px;
    height: 7px;
    margin-top: 0.4em;
    transform: rotate(-45deg);
}

.prezi-final-cta .button.primary {
    color: var(--koa-dark);
    background: var(--gold);
}

.prezi-final-cta .button.is-copied {
    color: var(--coconut);
    background: var(--teal);
    border-color: var(--teal);
}

.prezi-opportunity-graph {
    min-height: 540px;
    padding: 36px 46px 58px 76px;
}

.prezi-opportunity-graph::before {
    left: 52px;
}

.prezi-opportunity-graph::after {
    left: 76px;
}

.graph-grid {
    min-height: 450px;
}

.y-axis.high,
.y-axis.low {
    left: 14px;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}

.y-axis.high {
    top: 52px;
}

.y-axis.low {
    bottom: 62px;
}

.y-axis.high::after {
    content: "";
}

.y-axis.high::before {
    content: "^";
    margin-bottom: 6px;
}

.x-axis.low {
    left: 76px;
}

.x-axis.high::after {
    content: ">";
    margin-left: 6px;
}

.graph-quadrant {
    display: grid;
    align-content: start;
    gap: 12px;
    transition: none;
}

.graph-quadrant:hover {
    background-color: rgba(247, 243, 237, 0.42);
    box-shadow: none;
}

.quadrant-quick:hover {
    background: #EFE3D3;
    box-shadow: inset 0 0 0 2px rgba(217, 199, 178, 0.38);
}

.graph-quadrant strong i {
    color: var(--koa-dark);
    background: rgba(247, 243, 237, 0.9);
}

.quadrant-items {
    display: grid;
    gap: 8px;
    margin-top: 0;
}

.quadrant-opportunity {
    display: grid;
    gap: 5px;
    padding: 9px 10px;
    border-radius: 12px;
}

.quadrant-opportunity small {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    color: var(--muted);
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1.4;
}

.quadrant-opportunity small b {
    margin-right: 4px;
    color: var(--teal);
}

.quadrant-detail-inline .check-list {
    gap: 7px;
    margin: 0;
}

.quadrant-detail-inline .check-list li {
    padding-left: 20px;
    font-size: 0.82rem;
    line-height: 1.4;
}

.quadrant-detail-inline .check-list li::before {
    width: 8px;
    height: 8px;
    border: 0;
    background: var(--gold);
    border-radius: 50%;
    transform: none;
}

.prezi-quadrant-carousel {
    position: relative;
    margin-top: 26px;
    padding: 0 56px 40px;
}

.prezi-quadrant-track {
    position: relative;
}

.prezi-quadrant-slide {
    display: none;
    padding: 22px;
    background: var(--coconut);
    border: 1px solid rgba(71, 55, 40, 0.1);
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(71, 55, 40, 0.06);
}

.prezi-quadrant-slide.active {
    display: block;
    animation: carouselSlideIn 260ms ease both;
}

.prezi-quadrant-slide > strong {
    display: flex;
    gap: 10px;
    align-items: center;
    color: var(--koa-dark);
    font-size: 1.06rem;
}

.prezi-quadrant-slide > strong i {
    display: inline-grid;
    width: 30px;
    height: 30px;
    place-items: center;
    background: rgba(217, 199, 178, 0.2);
    border-radius: 50%;
    font-style: normal;
}

.quadrant-prev,
.quadrant-next {
    top: calc(50% - 18px);
}

.prezi-solution-heading .prezi-rank-badge,
.prezi-revenue-card .prezi-rank-badge,
.prezi-time-card .prezi-rank-badge {
    color: var(--koa-dark);
    background: #F7F3ED;
    border: 1px solid rgba(71, 55, 40, 0.12);
}

.prezi-solution-carousel .prezi-solution-card.active {
    animation: carouselSlideIn 280ms ease both;
}

@keyframes carouselSlideIn {
    from {
        opacity: 0;
        transform: translateX(24px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.carousel-arrow {
    top: 50%;
    transform: translateY(-50%);
}

.carousel-arrow:hover {
    transform: translateY(calc(-50% - 2px));
}

.prezi-total-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
}

.prezi-total-grid .prezi-metric-card {
    height: 100%;
    min-height: 170px;
}

.prezi-total-grid .prezi-metric-card:first-child {
    background:
        linear-gradient(145deg, rgba(247, 243, 237, 0.98), rgba(247, 243, 237, 0.88)),
        var(--coconut);
    border-color: rgba(217, 199, 178, 0.36);
}

.prezi-roadmap-card:hover {
    transform: translateY(-5px);
    border-color: rgba(47, 111, 104, 0.2);
    box-shadow: var(--shadow-hover) !important;
}

.prezi-score-hero {
    justify-content: center;
}

.prezi-score-meter {
    width: min(286px, 70vw);
    padding: 12px;
    background: conic-gradient(from -90deg, var(--teal) 0 var(--score-angle), rgba(71, 55, 40, 0.12) var(--score-angle) 360deg);
    border: 10px solid #F7F3ED;
    box-shadow: 0 18px 42px rgba(71, 55, 40, 0.1);
}

.prezi-score-meter::before {
    inset: 20px;
}

.score-meter-ring {
    width: 66%;
}

.prezi-score-row {
    grid-template-columns: 136px minmax(170px, 0.72fr) 1.35fr;
    align-items: center;
}

.prezi-score-row .pill {
    grid-column: 1;
    grid-row: 1;
}

.prezi-score-row > strong {
    grid-column: 2;
}

.prezi-score-row > p {
    grid-column: 3;
}

.graph-grid {
    position: relative;
}

.graph-grid::before,
.graph-grid::after {
    position: absolute;
    z-index: 1;
    content: "";
    pointer-events: none;
}

.graph-grid::before {
    top: 22px;
    bottom: 22px;
    left: 50%;
    width: 1px;
    background: linear-gradient(transparent, rgba(71, 55, 40, 0.15), transparent);
}

.graph-grid::after {
    top: 50%;
    right: 22px;
    left: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(71, 55, 40, 0.15), transparent);
}

.graph-quadrant strong {
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(71, 55, 40, 0.1);
}

.graph-quadrant[data-tooltip]::after {
    position: absolute;
    z-index: 30;
    left: 18px;
    bottom: calc(100% + 10px);
    width: min(280px, 78vw);
    padding: 12px 14px;
    content: attr(data-tooltip);
    color: var(--koa-dark);
    background: var(--coconut);
    border: 1px solid rgba(71, 55, 40, 0.12);
    border-radius: 12px;
    box-shadow: 0 16px 34px rgba(71, 55, 40, 0.14);
    font-size: 0.86rem;
    line-height: 1.5;
    opacity: 0;
    pointer-events: none;
    transform: translateY(6px);
    transition: opacity 160ms ease, transform 160ms ease;
}

.graph-quadrant[data-tooltip]:hover::after {
    opacity: 1;
    transform: translateY(0);
}

.quadrant-opportunity {
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.quadrant-opportunity:hover {
    border-color: rgba(47, 111, 104, 0.2);
    box-shadow: 0 10px 22px rgba(71, 55, 40, 0.1);
    transform: translateY(-2px);
}

.quadrant-prev {
    left: 0;
}

.quadrant-next {
    right: 0;
}

.prezi-action-card .prezi-rank-badge {
    color: var(--koa-dark);
    background: #F7F3ED;
    border: 1px solid rgba(71, 55, 40, 0.12);
}

.prezi-row-meta strong,
.quadrant-opportunity small strong,
.hero-proof b {
    font-weight: 950;
}

.prezi-score-meter {
    background: conic-gradient(from -90deg, #D9C7B2 0deg, #a7b85a calc(var(--score-angle) * 0.58), #27885f var(--score-angle), rgba(71, 55, 40, 0.12) var(--score-angle) 360deg);
}

.prezi-score-row {
    min-height: 92px;
}

.prezi-score-row .pill {
    min-width: 112px;
    text-align: center;
}

/* Final alignment pass for the prezi-v1 assessment view. */
.assessment-shell-prezi .prezi-opportunity-graph {
    min-height: 540px;
    padding: 44px 56px 64px 88px;
}

.assessment-shell-prezi .prezi-opportunity-graph::before {
    top: 44px;
    bottom: 64px;
    left: 56px;
    width: 4px;
}

.assessment-shell-prezi .prezi-opportunity-graph::after {
    right: 56px;
    bottom: 40px;
    left: 88px;
    height: 4px;
}

.assessment-shell-prezi .graph-grid {
    min-height: 440px;
}

.assessment-shell-prezi .graph-grid::before {
    top: 26px;
    bottom: 26px;
    width: 2px;
    background: linear-gradient(transparent, rgba(71, 55, 40, 0.18), transparent);
}

.assessment-shell-prezi .graph-grid::after {
    right: 26px;
    left: 26px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(71, 55, 40, 0.18), transparent);
}

.assessment-shell-prezi .axis-label {
    font-size: 0.76rem;
    line-height: 1;
}

.assessment-shell-prezi .y-axis.high,
.assessment-shell-prezi .y-axis.low {
    left: 22px;
    writing-mode: vertical-rl;
    transform: none;
}

.assessment-shell-prezi .y-axis.high {
    top: 72px;
}

.assessment-shell-prezi .y-axis.low {
    bottom: 88px;
}

.assessment-shell-prezi .y-axis.high::before {
    display: block;
    content: "↑";
    margin-bottom: 10px;
    font-size: 1.55rem;
    line-height: 1;
}

.assessment-shell-prezi .y-axis.high::after {
    content: "";
    margin: 0;
}

.assessment-shell-prezi .x-axis.low {
    bottom: 14px;
    left: 88px;
}

.assessment-shell-prezi .x-axis.high {
    right: 56px;
    bottom: 14px;
}

.assessment-shell-prezi .x-axis.high::after {
    content: "→";
    margin-left: 8px;
    font-size: 1.2rem;
}

.assessment-shell-prezi .graph-quadrant {
    min-width: 0;
    padding: 18px;
}

.assessment-shell-prezi .quadrant-items {
    display: grid;
    gap: 8px;
}

.assessment-shell-prezi .quadrant-opportunity {
    display: grid;
    grid-template-columns: 1fr;
    align-items: start;
    width: 100%;
    box-sizing: border-box;
}

.assessment-shell-prezi .quadrant-detail-inline .check-list {
    gap: 8px;
    margin: 0;
}

.assessment-shell-prezi .quadrant-detail-inline .check-list li {
    display: grid;
    grid-template-columns: 10px 1fr;
    gap: 9px;
    align-items: start;
    padding-left: 0;
}

.assessment-shell-prezi .quadrant-detail-inline .check-list li::before {
    position: static;
    margin-top: 0.42em;
}

.assessment-shell-prezi .prezi-rank-badge {
    display: inline-flex;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    line-height: 1;
    text-align: center;
    font-variant-numeric: tabular-nums;
}

.assessment-shell-prezi .prezi-solution-heading {
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: center;
}

.assessment-shell-prezi .prezi-score-breakdown {
    overflow: hidden;
}

.assessment-shell-prezi .prezi-score-row {
    grid-template-columns: 124px minmax(180px, 0.8fr) minmax(0, 1.4fr);
    gap: 16px;
    align-items: center;
    min-height: auto;
    padding: 16px 18px;
}

.assessment-shell-prezi .prezi-score-row .pill {
    display: grid;
    min-width: 104px;
    justify-self: stretch;
    align-content: center;
    padding: 9px 10px;
    line-height: 1.15;
    text-align: center;
    white-space: normal;
}

.assessment-shell-prezi .prezi-score-row .pill::after {
    width: 100%;
}

.assessment-shell-prezi .prezi-score-row > strong {
    min-width: 0;
    font-size: 0.98rem;
    line-height: 1.3;
}

.assessment-shell-prezi .prezi-score-row > p {
    min-width: 0;
    font-size: 0.94rem;
    line-height: 1.55;
}

/* Targeted final fixes for matrix axes, carousel controls, solution badges, and score rows. */
.assessment-shell-prezi .y-axis.high,
.assessment-shell-prezi .y-axis.low {
    left: 24px;
    writing-mode: vertical-rl;
    transform: none;
    text-align: center;
}

.assessment-shell-prezi .y-axis.high {
    top: 68px;
}

.assessment-shell-prezi .y-axis.low {
    bottom: 92px;
}

.assessment-shell-prezi .y-axis.high::before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    margin: 0 auto 8px;
    border-right: 6px solid transparent;
    border-bottom: 12px solid var(--koa);
    border-left: 6px solid transparent;
}

.assessment-shell-prezi .y-axis.high::after {
    content: "";
}

.assessment-shell-prezi .x-axis.high::after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 8px;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 12px solid var(--koa);
    vertical-align: -0.02em;
}

.assessment-shell-prezi .y-axis.high,
.assessment-shell-prezi .y-axis.low {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    left: -42px;
    width: 126px;
    writing-mode: horizontal-tb;
    transform: rotate(-90deg);
    transform-origin: center center;
    white-space: nowrap;
}

.assessment-shell-prezi .y-axis.high {
    top: 106px;
}

.assessment-shell-prezi .y-axis.low {
    bottom: 126px;
}

.assessment-shell-prezi .y-axis.high::before {
    flex: 0 0 auto;
    margin: 0;
    border-right-width: 6px;
    border-bottom-width: 12px;
    border-left-width: 6px;
    transform: rotate(90deg);
}

.assessment-shell-prezi .y-axis.high::after {
    content: "";
}

.assessment-shell-prezi .carousel-arrow {
    top: 50%;
    bottom: auto;
    transform: translateY(-50%);
}

.assessment-shell-prezi .carousel-arrow:hover {
    transform: translateY(-50%);
}

.assessment-shell-prezi .prezi-solution-carousel,
.assessment-shell-prezi .prezi-quadrant-carousel {
    isolation: isolate;
}

.assessment-shell-prezi .prezi-solution-carousel {
    min-height: 650px;
}

.assessment-shell-prezi .prezi-solution-track {
    min-height: 560px;
}

.assessment-shell-prezi .prezi-solution-carousel .carousel-arrow {
    top: 300px;
}

.assessment-shell-prezi .prezi-quadrant-carousel {
    min-height: 250px;
}

.assessment-shell-prezi .prezi-quadrant-track {
    min-height: 170px;
}

.assessment-shell-prezi .prezi-quadrant-carousel .carousel-arrow {
    top: 94px;
}

.assessment-shell-prezi .prezi-solution-heading .prezi-rank-badge {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    line-height: 42px;
}

.assessment-shell-prezi .prezi-action-card .prezi-solution-field + .prezi-solution-field {
    padding-top: 18px;
}

.assessment-shell-prezi .prezi-score-row {
    grid-template-columns: 128px minmax(220px, 0.85fr) minmax(0, 1.35fr);
    gap: 22px;
    align-items: center;
    padding: 18px 22px;
}

.assessment-shell-prezi .prezi-score-rating {
    display: grid;
    gap: 6px;
    justify-items: center;
    min-width: 0;
}

.assessment-shell-prezi .prezi-score-row .pill {
    min-width: 96px;
    padding: 10px 8px;
}

.assessment-shell-prezi .prezi-score-row .pill::after {
    display: none;
}

.assessment-shell-prezi .prezi-score-rating em {
    color: var(--muted);
    font-size: 0.72rem;
    font-style: italic;
    font-weight: 700;
    line-height: 1.25;
    text-align: center;
}

.assessment-shell-prezi .prezi-score-row > strong {
    padding-left: 12px;
    font-size: 0.96rem;
}

.assessment-shell-prezi .prezi-score-row > p {
    font-size: 0.92rem;
}

.assessment-page-v2 .slide {
    align-content: start;
}

.assessment-shell-v2 .prezi-slide > h2 {
    margin-bottom: clamp(18px, 3vw, 28px);
}

.assessment-shell-v2 .prezi-slide::before {
    display: block;
    width: 86px;
    height: 4px;
    margin: 0 0 22px;
    content: "";
    background: linear-gradient(90deg, var(--teal), var(--gold));
    border-radius: 999px;
}

.prezi-v2-scorecard-layout {
    display: grid;
    grid-template-columns: minmax(240px, 0.9fr) minmax(280px, 1.1fr);
    gap: clamp(14px, 2.2vw, 20px);
    align-items: stretch;
}

.prezi-v2-score-panel {
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 12px;
    height: 100%;
    min-height: 0;
    padding: clamp(20px, 3vw, 28px);
    color: var(--koa);
    background:
        radial-gradient(circle at 20% 18%, rgba(217, 199, 178, 0.26), transparent 28%),
        linear-gradient(145deg, var(--coconut), var(--sand));
    border: 1px solid rgba(217, 199, 178, 0.86);
    border-radius: 20px;
    box-shadow: 0 18px 44px rgba(71, 55, 40, 0.1);
    text-align: center;
}

.prezi-v2-score-panel .prezi-score-meter {
    width: 158px;
    height: 158px;
    padding: 9px;
    border-width: 8px;
    box-shadow: 0 14px 34px rgba(71, 55, 40, 0.13);
}

.prezi-v2-score-panel .score-meter-ring {
    width: 68%;
}

.prezi-v2-score-panel .score-meter-ring span {
    font-size: clamp(2.05rem, 3.6vw, 2.9rem);
}

.prezi-v2-score-panel > strong {
    color: var(--koa);
    font-size: 1.15rem;
}

.prezi-score-kicker {
    color: var(--teal);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.prezi-v2-score-panel > p {
    max-width: 30rem;
    margin: 0;
    color: var(--muted);
    font-size: 0.94rem;
}

.prezi-v2-score-panel .prezi-score-helper {
    color: var(--koa-dark);
    font-size: 0.82rem;
    font-style: italic;
}

.prezi-v2-stat-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.prezi-v2-stat-stack {
    display: grid;
    gap: 12px;
    align-content: start;
}

.prezi-v2-stat-card {
    display: grid;
    align-content: start;
    min-height: 0;
    padding: 16px;
    background: var(--coconut);
    border: 1px solid var(--line);
    border-radius: 16px;
    box-shadow: 0 12px 28px rgba(71, 55, 40, 0.07);
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
    overflow-wrap: anywhere;
}

.prezi-v2-money .prezi-v2-stat-card:hover {
    border-color: rgba(47, 111, 104, 0.22);
    box-shadow: 0 18px 38px rgba(71, 55, 40, 0.12);
    transform: translateY(-3px);
}

.prezi-v2-stat-card strong {
    display: block;
    color: var(--muted);
    font-size: clamp(0.62rem, 0.9vw, 0.72rem);
    letter-spacing: 0.08em;
    line-height: 1.35;
    text-transform: uppercase;
    white-space: nowrap;
}

.prezi-v2-stat-card span {
    display: block;
    margin-top: 7px;
    color: var(--koa);
    font-size: clamp(1.06rem, 1.8vw, 1.48rem);
    font-weight: 950;
    line-height: 1.15;
}

.prezi-v2-stat-card small {
    display: block;
    margin-top: 10px;
    color: var(--muted);
    font-size: 0.86rem;
    line-height: 1.45;
}

.prezi-v2-stat-card small b {
    display: block;
    color: var(--teal);
    font-size: 0.68rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.prezi-v2-stat-disclaimer {
    margin: 2px 0 0;
    color: var(--muted);
    font-size: 0.8rem;
    font-style: italic;
    line-height: 1.5;
}

.prezi-v2-count-card .secondary-count {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid rgba(217, 199, 178, 0.8);
}

.prezi-v2-subsection-title {
    margin: 24px 0 12px;
    color: var(--koa);
    font-size: clamp(1.05rem, 2vw, 1.28rem);
}

.prezi-v2-score-breakdown .prezi-score-rating .pill {
    position: relative;
    overflow: hidden;
    color: var(--koa);
    background:
        linear-gradient(270deg, rgba(39, 136, 95, 0.28) 0 var(--row-score-percent), rgba(247, 243, 237, 0.92) var(--row-score-percent) 100%);
    border: 1px solid rgba(39, 136, 95, 0.22);
}

.prezi-v2-summary-strip {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 20px;
}

.prezi-v2-field {
    padding: 16px 18px;
    background: rgba(247, 243, 237, 0.74);
    border: 1px solid rgba(217, 199, 178, 0.82);
    border-radius: 16px;
}

.prezi-v2-field strong {
    display: block;
    color: var(--koa);
    font-size: 0.78rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.prezi-v2-field p {
    margin: 7px 0 0;
}

.prezi-v2-leak-list {
    display: grid;
    gap: 0;
    border-top: 1px solid rgba(217, 199, 178, 0.82);
    border-bottom: 1px solid rgba(217, 199, 178, 0.82);
}

.prezi-v2-leak-row {
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 16px;
    padding: 18px 0;
    background: transparent;
    border: 0;
    border-bottom: 1px solid rgba(217, 199, 178, 0.72);
    border-radius: 0;
    box-shadow: none;
}

.prezi-v2-leak-row:last-child {
    border-bottom: 0;
}

.prezi-v2-leak-rank {
    display: grid;
    justify-items: end;
    padding-top: 0;
}

.prezi-v2-leak-rank .prezi-rank-badge {
    width: 44px;
    height: 44px;
    border-radius: 14px;
}

.prezi-v2-leak-side {
    display: grid;
    align-self: stretch;
    align-content: start;
    justify-items: stretch;
    gap: 14px;
    max-width: 150px;
    margin-top: 72px;
    padding: 14px;
    background: rgba(247, 243, 237, 0.82);
    border: 1px solid rgba(217, 199, 178, 0.72);
    border-radius: 16px;
}

.prezi-v2-status-stack {
    display: grid;
    gap: 6px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(217, 199, 178, 0.78);
}

.prezi-v2-rail-line {
    display: block;
    color: var(--koa-dark);
    font-size: 0.86rem;
    line-height: 1.35;
}

.prezi-v2-rail-line b {
    color: var(--muted);
    font-size: 0.68rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.prezi-v2-rail-line b::after {
    content: " -";
}

.prezi-v2-leak-side .prezi-context-labels {
    display: grid;
    gap: 9px;
    margin: 8px 0 0;
}

.prezi-v2-leak-side .prezi-context-labels span {
    width: 100%;
    padding: 7px 9px;
    color: var(--koa);
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(217, 199, 178, 0.76);
    border-radius: 999px;
    font-size: 0.72rem;
    line-height: 1.35;
}

.prezi-v2-leak-side .prezi-context-labels .context-label-title {
    padding: 0;
    color: var(--muted);
    background: transparent;
    border: 0;
    border-radius: 0;
    font-size: 0.72rem;
}

.prezi-v2-leak-body {
    display: grid;
    gap: 5px;
}

.prezi-v2-leak-heading {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 5px;
    align-items: start;
}

.prezi-v2-leak-heading > strong {
    color: var(--koa);
    font-size: clamp(1.2rem, 2vw, 1.55rem);
    line-height: 1.2;
}

.prezi-v2-issue-statuses {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-start;
    min-width: 0;
}

.prezi-v2-issue-statuses .prezi-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    width: auto;
    min-width: 132px;
    gap: 10px;
    padding: 7px 10px;
    background: rgba(247, 243, 237, 0.72);
    border: 1px solid rgba(217, 199, 178, 0.78);
    border-radius: 999px;
    font-size: 0.82rem;
    line-height: 1;
}

.prezi-v2-issue-statuses .prezi-status-pill b {
    color: var(--muted);
    font-size: 0.64rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.prezi-v2-issue-statuses .prezi-status-pill strong {
    font-size: 0.82rem;
}

.prezi-v2-data-points {
    display: grid;
    gap: 2px;
    margin: 0;
    padding-left: 18px;
    color: var(--muted);
    font-size: 0.91rem;
    line-height: 1.42;
}

.prezi-v2-leak-body .prezi-v2-field {
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
}

.prezi-v2-leak-body .prezi-v2-field p {
    margin-top: 2px;
}

.prezi-v2-opportunity-graph {
    min-height: 500px;
    padding: 44px 56px 64px 88px;
}

.prezi-v2-opportunity-graph .prezi-v2-matrix-grid {
    min-height: 400px;
}

.prezi-v2-quadrant {
    min-height: auto;
}

.prezi-v2-quadrant.quadrant-quick {
    background: linear-gradient(145deg, rgba(217, 199, 178, 0.34), var(--coconut));
    border-color: var(--gold);
    box-shadow: inset 0 0 0 2px rgba(217, 199, 178, 0.24);
}

.prezi-v2-quadrant .quadrant-opportunity small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 0.82rem;
    font-weight: 650;
    line-height: 1.35;
}

.prezi-v2-opportunity-graph .y-axis.high::before {
    display: none;
}

.prezi-v2-opportunity-graph .y-axis.high::after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 8px;
    border-right: 6px solid transparent;
    border-bottom: 12px solid var(--koa);
    border-left: 6px solid transparent;
    transform: rotate(90deg);
}

.prezi-v2-opportunity-graph .quadrant-detail {
    pointer-events: none;
}

.prezi-v2-opportunity-graph .graph-quadrant::after {
    display: none;
}

.prezi-v2-solution-card,
.prezi-v2-step-card {
    display: none;
    min-height: 560px;
    padding: clamp(24px, 3vw, 34px);
    color: var(--coconut);
    background:
        radial-gradient(circle at 88% 12%, rgba(217, 199, 178, 0.2), transparent 28%),
        linear-gradient(145deg, var(--koa), var(--koa-dark));
    border: 1px solid rgba(217, 199, 178, 0.34);
    border-radius: 22px;
    box-shadow: 0 24px 58px rgba(71, 55, 40, 0.18);
}

.prezi-v2-solution-card.active,
.prezi-v2-step-card.active {
    display: block;
}

.prezi-v2-solution-card .prezi-rank-badge,
.prezi-v2-step-card .prezi-rank-badge {
    color: var(--koa);
    background: var(--gold);
}

.prezi-v2-solution-card .prezi-solution-heading strong,
.prezi-v2-step-card .prezi-solution-heading strong {
    color: var(--coconut);
    font-size: clamp(1.35rem, 2.4vw, 1.95rem);
}

.prezi-v2-solution-card .prezi-solution-heading p {
    margin: 7px 0 0;
    color: rgba(255, 255, 255, 0.76);
    font-style: italic;
}

.prezi-v2-solution-card .hero-proof span,
.prezi-v2-step-card .pill {
    color: var(--koa);
    background: var(--gold);
    border-color: rgba(217, 199, 178, 0.38);
}

.prezi-v2-solution-body {
    display: grid;
    gap: 14px;
    margin-top: 24px;
}

.assessment-shell-v2 .prezi-v2-solutions-carousel .carousel-arrow {
    top: 430px;
    transform: translateY(-50%);
}

.prezi-v2-step-carousel .carousel-arrow {
    top: 302px;
    transform: translateY(-50%);
}

.assessment-shell-v2 .prezi-v2-solutions-carousel .carousel-arrow:hover,
.prezi-v2-step-carousel .carousel-arrow:hover {
    transform: translateY(calc(-50% - 2px));
}

.prezi-v2-solutions .prezi-solution-heading,
.prezi-v2-next-steps .prezi-solution-heading {
    align-items: center;
}

.prezi-v2-next-steps .prezi-solution-heading {
    grid-template-columns: 52px 1fr;
    gap: 24px;
}

.prezi-v2-next-steps .prezi-solution-heading .pill {
    display: inline-grid;
    align-items: center;
    min-height: 28px;
    margin-left: 18px;
    vertical-align: 0.12em;
}

.prezi-v2-solution-card .prezi-before-after::before {
    width: 40px;
    height: 40px;
    color: var(--koa);
    background: var(--gold);
    border: 3px solid rgba(255, 255, 255, 0.18);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18);
    transform: translate(-50%, -50%);
    font-size: 1.42rem;
    font-weight: 950;
    line-height: 1;
    padding-bottom: 2px;
}

.prezi-v2-solution-card .prezi-before-after .prezi-v2-field {
    color: var(--koa);
    background:
        linear-gradient(145deg, rgba(255, 253, 248, 0.98), rgba(247, 243, 237, 0.92));
    border-color: rgba(217, 199, 178, 0.72);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.52);
}

.prezi-v2-solution-card .prezi-before-after .prezi-v2-field strong {
    color: var(--teal);
    font-weight: 950;
}

.prezi-v2-solution-card .prezi-before-after .prezi-v2-field p {
    color: var(--koa-dark);
}

.prezi-v2-solution-card .prezi-v2-field,
.prezi-v2-step-card .prezi-v2-field {
    color: var(--coconut);
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(217, 199, 178, 0.24);
}

.prezi-v2-solution-card .prezi-v2-field strong,
.prezi-v2-step-card .prezi-v2-field strong {
    color: var(--gold);
}

.prezi-v2-solution-card .prezi-v2-field p,
.prezi-v2-step-card .prezi-v2-field p {
    color: rgba(255, 255, 255, 0.84);
}

.prezi-v2-money-stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 18px;
}

.prezi-v2-money-stats .prezi-v2-stat-card strong {
    font-size: clamp(0.52rem, 0.72vw, 0.66rem);
    letter-spacing: 0.055em;
}

.prezi-v2-money-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 18px;
}

.prezi-v2-breakdown-list {
    display: grid;
    gap: 12px;
}

.prezi-v2-breakdown-table {
    display: grid;
    gap: 0;
    margin: 18px 0;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.prezi-v2-breakdown-row {
    padding: 16px 0;
    border-bottom: 1px solid rgba(217, 199, 178, 0.7);
}

.prezi-v2-breakdown-row:last-child {
    border-bottom: 0;
}

.prezi-v2-breakdown-row h3 {
    margin: 0 0 10px;
    color: var(--koa);
    font-size: clamp(1.05rem, 1.8vw, 1.28rem);
}

.prezi-v2-breakdown-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.prezi-v2-breakdown-meta span {
    display: inline-flex;
    gap: 7px;
    padding: 7px 10px;
    color: var(--koa-dark);
    background: rgba(247, 243, 237, 0.76);
    border: 1px solid rgba(217, 199, 178, 0.72);
    border-radius: 999px;
    font-size: 0.82rem;
}

.prezi-v2-breakdown-meta b {
    color: var(--teal);
    font-size: 0.68rem;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.prezi-v2-breakdown-item {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 12px;
    align-items: start;
    padding: 13px 0;
    border-bottom: 1px solid rgba(71, 55, 40, 0.08);
}

.prezi-v2-breakdown-item > span {
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    color: var(--teal);
    background: rgba(47, 111, 104, 0.08);
    border-radius: 999px;
    font-weight: 900;
}

.prezi-v2-breakdown-item strong {
    display: block;
    color: var(--koa);
}

.prezi-v2-breakdown-item p {
    margin: 4px 0 0;
}

.prezi-v2-breakdown-item small {
    display: block;
    margin-top: 6px;
    color: var(--teal);
    font-weight: 850;
}

.prezi-v2-final {
    background:
        radial-gradient(circle at 85% 12%, rgba(217, 199, 178, 0.28), transparent 30%),
        linear-gradient(145deg, var(--coconut), var(--sand));
}

.prezi-v2-plain-section {
    position: relative;
    max-width: 760px;
    margin: 0 0 20px;
    padding-left: 26px;
}

.prezi-v2-plain-section::before {
    position: absolute;
    top: 0.35rem;
    left: 0;
    width: 11px;
    height: 11px;
    content: "";
    background: var(--teal);
    border-radius: 999px;
    box-shadow: 0 0 0 5px rgba(47, 111, 104, 0.1);
}

.prezi-v2-plain-section strong {
    display: block;
    color: var(--koa);
    font-size: 0.78rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.prezi-v2-plain-section p {
    margin: 6px 0 0;
}

.prezi-v2-bullet-list {
    display: grid;
    gap: 9px;
    max-width: 760px;
    margin: 18px 0 22px;
    padding: 16px 0 16px 26px;
    border-top: 1px solid rgba(217, 199, 178, 0.82);
    border-bottom: 1px solid rgba(217, 199, 178, 0.82);
}

.prezi-v2-bullet-list li {
    padding-left: 4px;
}

.prezi-v2-best-step {
    margin: 16px 0 18px;
    padding: 18px 0;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.prezi-v2-best-step h3 {
    margin: 0 0 12px;
    color: var(--koa);
    font-size: clamp(1.16rem, 2vw, 1.45rem);
}

.reveal {
    opacity: 1;
    transform: none;
}

.js .reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 650ms ease, transform 650ms ease;
}

.js .reveal.slide-right {
    transform: translateX(32px);
}

.js .reveal.slide-left {
    transform: translateX(-32px);
}

.js .reveal.reveal-visible {
    opacity: 1;
    transform: translate(0, 0);
}

@keyframes floatCard {
    0%,
    100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}

@keyframes floatNode {
    0%,
    100% {
        transform: translateY(0) scale(1);
    }
    50% {
        transform: translateY(-14px) scale(1.08);
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

    .reveal {
        opacity: 1;
        transform: none;
    }
}

@media (max-width: 1080px) {
    .service-card-grid,
    .card-grid.four {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .process-line {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .process-line::before {
        display: none;
    }
}

@media (max-width: 880px) {
    .site-header {
        padding: 0 4vw;
    }

    .nav-toggle {
        display: block;
    }

    .nav-toggle[aria-expanded="true"] span:nth-child(1) {
        transform: translateY(6px) rotate(45deg);
    }

    .nav-toggle[aria-expanded="true"] span:nth-child(2) {
        opacity: 0;
    }

    .nav-toggle[aria-expanded="true"] span:nth-child(3) {
        transform: translateY(-6px) rotate(-45deg);
    }

    .site-nav {
        position: absolute;
        top: 78px;
        right: 4vw;
        left: 4vw;
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 18px;
        background: var(--coconut);
        border: 1px solid var(--line);
        border-radius: 18px;
        box-shadow: var(--shadow-hover);
    }

    .site-nav.open {
        display: flex;
    }

    .site-nav a {
        padding: 7px 2px;
    }

    .site-nav a::after {
        display: none;
    }

    .hero,
    .split,
    .contact-layout {
        grid-template-columns: 1fr;
    }

    .hero {
        min-height: auto;
        padding-top: 58px;
    }

    .hero-visual {
        min-height: auto;
    }

    .workflow-path {
        grid-template-columns: 1fr;
    }

    .workflow-path i {
        width: 2px;
        height: 20px;
        margin: 0 auto;
    }

    .card-grid.three,
    .process-grid,
    .slide-grid,
    .service-card-grid,
    .card-grid.four,
    .process-line {
        grid-template-columns: 1fr;
    }

    .matrix-row {
        grid-template-columns: 1fr;
    }

    .assessment-shell-prezi {
        width: min(100% - 28px, 760px);
    }

    .assessment-shell-prezi .slide {
        padding: 30px 22px;
    }

    .prezi-metric-grid,
    .prezi-total-grid,
    .prezi-score-hero {
        grid-template-columns: 1fr;
    }

    .prezi-slide-controls {
        justify-content: stretch;
    }

    .prezi-slide-controls div {
        display: grid;
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .prezi-front-details,
    .prezi-solution-details,
    .prezi-score-row,
    .prezi-before-after,
    .prezi-first-step-layout,
    .prezi-v2-scorecard-layout,
    .prezi-v2-summary-strip,
    .prezi-v2-leak-row,
    .prezi-v2-money-grid {
        grid-template-columns: 1fr;
    }

    .prezi-v2-stat-grid,
    .prezi-v2-money-stats,
    .prezi-v2-matrix-grid {
        grid-template-columns: 1fr;
    }

    .prezi-v2-opportunity-graph {
        min-height: 580px;
        padding: 32px 20px 50px 48px;
    }

    .prezi-v2-solution-card,
    .prezi-v2-step-card {
        min-height: auto;
    }

    .prezi-v2-leak-side {
        grid-template-columns: repeat(3, max-content);
        align-items: center;
        max-width: none;
        margin-top: 0;
    }

    .prezi-v2-leak-heading {
        grid-template-columns: 1fr;
    }

    .prezi-v2-issue-statuses {
        grid-template-columns: repeat(2, max-content);
        justify-items: start;
        min-width: 0;
    }

    .assessment-shell-prezi .prezi-score-row {
        grid-template-columns: 1fr;
        gap: 10px;
        align-items: start;
    }

    .assessment-shell-prezi .prezi-score-row .pill,
    .assessment-shell-prezi .prezi-score-row > strong,
    .assessment-shell-prezi .prezi-score-row > p {
        grid-column: auto;
        grid-row: auto;
    }

    .assessment-shell-prezi .prezi-score-row .pill {
        justify-self: start;
        min-width: 116px;
    }

    .assessment-shell-prezi .prezi-score-rating {
        justify-items: start;
    }

    .prezi-ranked-row {
        grid-template-columns: 1fr;
        padding: 0;
    }

    .prezi-opportunity-graph {
        min-height: 580px;
        padding: 24px 16px 44px 34px;
    }

    .assessment-shell-prezi .prezi-opportunity-graph {
        min-height: 580px;
        padding: 32px 20px 50px 48px;
    }

    .assessment-shell-prezi .prezi-opportunity-graph::before {
        top: 32px;
        bottom: 50px;
        left: 28px;
        width: 3px;
    }

    .assessment-shell-prezi .prezi-opportunity-graph::after {
        right: 20px;
        bottom: 28px;
        left: 48px;
        height: 3px;
    }

    .assessment-shell-prezi .y-axis.high,
    .assessment-shell-prezi .y-axis.low {
        left: -54px;
        width: 112px;
        font-size: 0.66rem;
    }

    .assessment-shell-prezi .y-axis.high {
        top: 90px;
    }

    .assessment-shell-prezi .y-axis.low {
        bottom: 102px;
    }

    .assessment-shell-prezi .x-axis.low {
        left: 48px;
    }

    .assessment-shell-prezi .x-axis.high {
        right: 20px;
    }

    .prezi-disclaimer {
        white-space: normal;
    }

    .graph-grid {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(4, minmax(120px, 1fr));
    }

    .quadrant-detail {
        position: static;
        display: none;
        width: auto;
        margin-top: 12px;
    }

    .graph-quadrant:hover .quadrant-detail {
        display: block;
    }

    .prezi-solution-carousel {
        padding: 0 0 44px;
    }

    .prezi-before-after::before {
        top: 50%;
        transform: translate(-50%, -50%) rotate(90deg);
    }

    .carousel-arrow {
        top: auto;
        bottom: 0;
    }

    .assessment-shell-prezi .prezi-solution-carousel,
    .assessment-shell-prezi .prezi-quadrant-carousel,
    .assessment-shell-prezi .prezi-solution-track,
    .assessment-shell-prezi .prezi-quadrant-track {
        min-height: 0;
    }

    .assessment-shell-prezi .prezi-solution-carousel .carousel-arrow,
    .assessment-shell-prezi .prezi-quadrant-carousel .carousel-arrow {
        top: auto;
        bottom: 0;
    }

    .carousel-prev {
        left: 0;
    }

    .carousel-next {
        right: 0;
    }

    .carousel-dots {
        right: 56px;
        left: 56px;
        bottom: 16px;
    }

    .prezi-subsection {
        padding: 20px;
    }

    .prezi-roadmap .prezi-card-grid {
        padding-left: 22px;
    }

    .prezi-roadmap-card::before {
        left: -25px;
    }

    .prezi-final-cta {
        margin: 14px;
        border-radius: 20px;
    }

    .matrix-row.header {
        display: none;
    }

    .assessment-actions,
    .assessment-topbar,
    .site-footer {
        grid-template-columns: 1fr;
        flex-direction: column;
        align-items: stretch;
    }

    .assessment-actions div {
        flex-wrap: wrap;
    }

    .footer-links {
        display: grid;
    }
}

@media (max-width: 560px) {
    .hero,
    .page-hero,
    .section {
        width: min(100% - 32px, 1160px);
    }

    .hero h1,
    .page-hero h1 {
        font-size: clamp(2.55rem, 15vw, 4.2rem);
    }

    .brand-text {
        max-width: 150px;
        line-height: 1.05;
    }

    .hero-actions,
    .assessment-actions div {
        align-items: stretch;
        flex-direction: column;
    }

    .button {
        width: 100%;
    }

    .section {
        padding: 66px 0;
    }

    .assessment-feature,
    .demo-section,
    .band {
        padding-right: 16px;
        padding-left: 16px;
    }
}

@media (max-width: 900px) {
    .assessment-page-v2 {
        padding: 24px 0 52px;
    }

    .assessment-shell-v2 {
        width: min(100% - 22px, 760px);
        border-radius: 20px;
    }

    .assessment-shell-v2 .assessment-topbar {
        flex-wrap: wrap;
        gap: 10px;
        padding: 14px 16px;
    }

    .assessment-top-meta {
        margin-left: 0;
    }

    .assessment-shell-v2 .assessment-title-lockup {
        width: 100%;
        min-width: 0;
        justify-items: center;
        text-align: center;
    }

    .assessment-shell-v2 .assessment-title-lockup small {
        margin: 0 auto;
    }

    .assessment-shell-v2 [data-slide-counter] {
        flex: 0 0 auto;
    }

    .assessment-shell-v2 .assessment-top-meta {
        width: 100%;
        justify-content: center;
    }

    .assessment-shell-v2 .prezi-slide {
        padding: 30px 20px;
    }

    .assessment-shell-v2 .prezi-slide::before {
        width: 72px;
        margin-bottom: 18px;
    }

    .assessment-shell-v2 .prezi-slide > h2 {
        font-size: clamp(1.75rem, 8vw, 2.45rem);
        line-height: 1.08;
    }

    .assessment-shell-v2 .prezi-slide-controls {
        padding: 12px 16px;
    }

    .assessment-shell-v2 .prezi-slide-controls div,
    .assessment-shell-v2 .assessment-actions div {
        gap: 8px;
    }

    .assessment-shell-v2 .button {
        min-height: 48px;
        padding: 12px 16px;
    }

    .prezi-v2-scorecard-layout,
    .prezi-v2-summary-strip,
    .prezi-v2-money-grid {
        grid-template-columns: 1fr;
    }

    .prezi-v2-score-panel {
        height: auto;
        min-height: 0;
        padding: 22px 18px;
    }

    .prezi-v2-score-panel .prezi-score-meter {
        width: 146px;
        height: 146px;
    }

    .prezi-v2-stat-stack,
    .prezi-v2-stat-grid,
    .prezi-v2-money-stats {
        grid-template-columns: 1fr;
    }

    .prezi-v2-stat-card strong {
        white-space: normal;
    }

    .assessment-shell-v2 .prezi-score-row {
        grid-template-columns: 1fr;
        gap: 9px;
    }

    .assessment-shell-v2 .prezi-score-row .pill,
    .assessment-shell-v2 .prezi-score-row > strong,
    .assessment-shell-v2 .prezi-score-row > p {
        grid-column: auto;
        grid-row: auto;
    }

    .assessment-shell-v2 .prezi-score-row .pill {
        justify-self: start;
        min-width: min(100%, 124px);
    }

    .prezi-v2-leak-row {
        grid-template-columns: 42px 1fr;
        gap: 10px;
        padding: 16px 0;
    }

    .prezi-v2-leak-rank {
        justify-items: start;
    }

    .prezi-v2-leak-rank .prezi-rank-badge {
        width: 36px;
        height: 36px;
        border-radius: 12px;
    }

    .prezi-v2-leak-heading > strong {
        font-size: clamp(1.05rem, 5.2vw, 1.32rem);
    }

    .prezi-v2-data-points {
        padding-left: 16px;
        font-size: 0.92rem;
    }

    .prezi-v2-field {
        padding: 14px;
    }

    .prezi-v2-opportunity-graph {
        min-height: auto;
        padding: 18px;
    }

    .prezi-v2-opportunity-graph::before,
    .prezi-v2-opportunity-graph::after,
    .prezi-v2-opportunity-graph .axis-label,
    .prezi-v2-opportunity-graph .graph-grid::before,
    .prezi-v2-opportunity-graph .graph-grid::after {
        display: none;
    }

    .prezi-v2-opportunity-graph .graph-grid,
    .prezi-v2-opportunity-graph .prezi-v2-matrix-grid {
        min-height: auto;
        grid-template-columns: 1fr;
        grid-template-rows: none;
        gap: 10px;
    }

    .assessment-shell-v2 .prezi-v2-opportunity-graph .prezi-v2-quadrant {
        padding: 13px;
        gap: 10px;
        min-height: auto;
    }

    .assessment-shell-v2 .prezi-v2-opportunity-graph .prezi-v2-quadrant .quadrant-title {
        gap: 8px;
        padding-bottom: 7px;
        font-size: 0.92rem;
    }

    .assessment-shell-v2 .prezi-v2-opportunity-graph .prezi-v2-quadrant .quadrant-items {
        gap: 7px;
    }

    .assessment-shell-v2 .prezi-v2-opportunity-graph .prezi-v2-quadrant .quadrant-opportunity {
        padding: 8px 9px;
        font-size: 0.86rem;
        line-height: 1.35;
    }

    .assessment-shell-v2 .prezi-v2-opportunity-graph .prezi-v2-quadrant .quadrant-opportunity small {
        font-size: 0.76rem;
        line-height: 1.32;
    }

    .prezi-v2-opportunity-graph .quadrant-detail,
    .prezi-v2-opportunity-graph .graph-quadrant:hover .quadrant-detail {
        display: none !important;
    }

    .assessment-shell-v2 .prezi-solution-carousel {
        padding: 0 0 58px;
    }

    .assessment-shell-v2 .prezi-solution-track {
        min-height: 0;
    }

    .prezi-v2-solution-card,
    .prezi-v2-step-card {
        min-height: auto;
        padding: 22px 18px;
        border-radius: 18px;
    }

    .assessment-shell-v2 .prezi-v2-solutions-carousel .carousel-arrow,
    .assessment-shell-v2 .prezi-v2-step-carousel .carousel-arrow {
        top: auto;
        bottom: 0;
        transform: none;
    }

    .assessment-shell-v2 .prezi-v2-solutions-carousel .carousel-arrow:hover,
    .assessment-shell-v2 .prezi-v2-step-carousel .carousel-arrow:hover {
        transform: translateY(-2px);
    }

    .prezi-v2-solution-card .prezi-before-after::before {
        top: 50%;
        content: "\2193";
        transform: translate(-50%, -50%);
    }

    .prezi-v2-breakdown-item {
        grid-template-columns: 28px 1fr;
        gap: 10px;
    }

    .prezi-v2-final .hero-actions,
    .assessment-shell-v2 .assessment-actions {
        align-items: stretch;
        flex-direction: column;
    }
}

@media (max-width: 640px) {
    html,
    body {
        overflow-x: hidden;
    }

    .site-header {
        width: 100%;
        max-width: 100%;
        padding: 0 16px;
    }

    .brand {
        min-width: 0;
    }

    .nav-toggle {
        flex: 0 0 44px;
    }

    .assessment-page-v2 {
        padding: 16px 0 42px;
        overflow-x: hidden;
    }

    .assessment-shell-v2 {
        width: min(100% - 16px, 640px);
        border-radius: 16px;
        max-width: 100%;
    }

    .assessment-shell-v2 .assessment-topbar {
        align-items: flex-start;
        justify-content: center;
        padding: 12px 14px;
    }

    .assessment-icon-button {
        width: 40px;
        height: 40px;
    }

    .assessment-shell-v2 .assessment-title-lockup span {
        font-size: 0.98rem;
    }

    .assessment-shell-v2 [data-slide-counter] {
        padding: 6px 10px;
        font-size: 0.78rem;
    }

    .assessment-shell-v2 .prezi-slide {
        padding: 24px 16px;
    }

    .assessment-shell-v2 .prezi-slide > h2 {
        margin-bottom: 16px;
    }

    .assessment-shell-v2 .prezi-slide-controls div,
    .assessment-shell-v2 .assessment-actions div {
        grid-template-columns: 1fr;
    }

    .prezi-lede,
    .prezi-v2-field p,
    .prezi-v2-breakdown-item p,
    .prezi-v2-plain-section p {
        font-size: 0.95rem;
        line-height: 1.58;
    }

    .prezi-v2-score-panel .prezi-score-meter {
        width: 132px;
        height: 132px;
        padding: 8px;
        border-width: 7px;
    }

    .prezi-v2-score-panel .score-meter-ring span {
        font-size: clamp(1.55rem, 9.5vw, 2.05rem);
        line-height: 1;
    }

    .prezi-v2-stat-card {
        padding: 14px;
    }

    .prezi-v2-stat-card span {
        font-size: clamp(1.05rem, 7vw, 1.34rem);
    }

    .prezi-v2-leak-row {
        grid-template-columns: 36px 1fr;
        gap: 9px;
    }

    .prezi-v2-leak-rank .prezi-rank-badge {
        width: 32px;
        height: 32px;
        font-size: 0.88rem;
    }

    .prezi-v2-opportunity-graph {
        padding: 0;
        background: transparent;
        border: 0;
        box-shadow: none;
    }

    .assessment-shell-v2 .prezi-v2-opportunity-graph .prezi-v2-quadrant {
        padding: 11px;
        border-radius: 14px;
    }

    .assessment-shell-v2 .prezi-v2-opportunity-graph .prezi-v2-quadrant .quadrant-title {
        font-size: 0.86rem;
    }

    .assessment-shell-v2 .prezi-v2-opportunity-graph .prezi-v2-quadrant .quadrant-opportunity {
        padding: 7px 8px;
        font-size: 0.82rem;
    }

    .prezi-v2-solution-card .prezi-solution-heading,
    .prezi-v2-step-card .prezi-solution-heading {
        grid-template-columns: 38px 1fr;
        gap: 12px;
    }

    .prezi-v2-solution-card .prezi-solution-heading {
        align-items: start;
    }

    .prezi-v2-solution-card .prezi-rank-badge,
    .prezi-v2-step-card .prezi-rank-badge {
        width: 36px;
        height: 36px;
        font-size: 0.92rem;
    }

    .prezi-v2-solution-card .prezi-rank-badge {
        margin-top: 1px;
    }

    .prezi-v2-solution-card .prezi-solution-heading strong,
    .prezi-v2-step-card .prezi-solution-heading strong {
        font-size: clamp(1.12rem, 6vw, 1.48rem);
    }

    .prezi-v2-solution-body {
        gap: 12px;
        margin-top: 18px;
    }

    .prezi-v2-solution-card .prezi-before-after::before {
        position: static;
        order: 2;
        width: 34px;
        height: 34px;
        margin: 0 auto;
        font-size: 1.18rem;
        transform: none;
    }

    .prezi-v2-solution-card .prezi-before-after {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .prezi-v2-solution-card .prezi-before-after .prezi-v2-field:first-child {
        order: 1;
    }

    .prezi-v2-solution-card .prezi-before-after .prezi-v2-field:last-child {
        order: 3;
    }

    .prezi-v2-step-card .prezi-solution-heading {
        align-items: start;
    }

    .prezi-v2-step-card .prezi-rank-badge {
        margin-top: 2px;
    }

    .prezi-v2-next-steps .prezi-solution-heading .pill {
        display: table;
        margin: 8px 0 0;
        min-height: 0;
        padding: 6px 9px;
    }

    .prezi-v2-bullet-list {
        padding-left: 20px;
    }

    .prezi-v2-final .hero-actions {
        align-items: stretch;
    }
}

@media (max-width: 420px) {
    .assessment-shell-v2 {
        width: min(100% - 10px, 420px);
        border-radius: 14px;
    }

    .assessment-shell-v2 .assessment-topbar {
        display: grid;
        grid-template-columns: 1fr;
        justify-items: center;
        padding: 10px 12px;
    }

    .assessment-top-meta {
        width: 100%;
        justify-content: center;
        gap: 10px;
    }

    .assessment-shell-v2 .prezi-slide {
        padding: 22px 12px;
    }

    .assessment-shell-v2 .prezi-slide::before {
        width: 58px;
        height: 3px;
        margin-bottom: 14px;
    }

    .assessment-shell-v2 .prezi-slide > h2 {
        font-size: clamp(1.55rem, 10vw, 2rem);
    }

    .assessment-shell-v2 .prezi-slide-controls div,
    .assessment-shell-v2 .assessment-actions div {
        grid-template-columns: 1fr;
    }

    .prezi-v2-score-panel {
        padding: 18px 12px;
    }

    .prezi-v2-score-panel .prezi-score-meter {
        width: 118px;
        height: 118px;
    }

    .prezi-v2-score-panel .score-meter-ring span {
        font-size: clamp(1.45rem, 10vw, 1.85rem);
    }

    .prezi-v2-stat-card,
    .prezi-v2-field {
        padding: 12px;
        border-radius: 13px;
    }

    .prezi-v2-leak-row {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 15px 0;
    }

    .prezi-v2-leak-rank {
        justify-items: start;
    }

    .assessment-shell-v2 .prezi-v2-opportunity-graph .prezi-v2-quadrant .quadrant-opportunity small {
        display: none;
    }

    .assessment-shell-v2 .prezi-v2-opportunity-graph .prezi-v2-quadrant {
        gap: 8px;
    }

    .prezi-v2-solution-card,
    .prezi-v2-step-card {
        padding: 18px 14px;
    }

    .prezi-v2-solution-card .prezi-before-after {
        gap: 14px;
    }

    .prezi-v2-breakdown-item {
        grid-template-columns: 1fr;
    }

    .prezi-v2-breakdown-item > span {
        width: 28px;
        height: 28px;
    }
}

@media (max-width: 760px) {
    .assessment-report-page {
        padding: 18px 10px;
    }

    .report-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .report-document {
        padding: 20px;
        border-radius: 14px;
    }

    .report-cover {
        min-height: auto;
        padding: 30px 22px;
    }

    .report-cover h1 {
        font-size: clamp(2.2rem, 12vw, 3.4rem);
    }

    .report-cover dl,
    .report-toc ol,
    .report-two-column,
    .report-metric-grid,
    .report-matrix-summary,
    .report-score-summary {
        grid-template-columns: 1fr;
        columns: 1;
    }

    .report-section-title {
        grid-template-columns: 1fr;
    }

    .report-section-title p {
        grid-column: auto;
        margin-top: 0;
    }

    .report-table,
    .report-table tbody,
    .report-table tr,
    .report-table th,
    .report-table td {
        display: block;
        width: 100%;
    }

    .report-table th {
        border-bottom: 0;
    }

    .report-score-summary > strong {
        font-size: 2rem;
    }

    .report-executive-score,
    .report-score-summary {
        grid-template-columns: 1fr;
    }

    .report-solution > .report-copy-block,
    .report-solution > .report-callout,
    .report-solution > .report-two-column,
    .report-solution .report-table.compact,
    .report-subtitle {
        width: 100%;
        margin-left: 0;
    }
}

@media print {
    @page {
        size: letter;
        margin: 0.5in;
    }

    *,
    *::before,
    *::after {
        animation: none !important;
        transition: none !important;
        text-shadow: none !important;
    }

    html {
        background: var(--coconut);
    }

    body {
        color: var(--koa-dark);
        background: var(--coconut);
        print-color-adjust: exact;
        -webkit-print-color-adjust: exact;
    }

    .site-header,
    .site-footer,
    .assessment-actions,
    .assessment-top-actions,
    .assessment-topbar [data-slide-counter],
    .assessment-debug-panel,
    .prezi-slide-controls,
    .progress-track,
    .carousel-arrow,
    .carousel-dots,
    .prezi-quadrant-carousel,
    .quadrant-detail,
    .graph-quadrant[data-tooltip]::after {
        display: none !important;
    }

    .assessment-page {
        padding: 0;
        background: var(--coconut);
    }

    .assessment-shell {
        width: 100%;
        box-shadow: none;
        border: 0;
        border-radius: 0;
        overflow: visible;
        background: var(--coconut);
    }

    .assessment-topbar {
        padding: 0 0 16px;
        margin-bottom: 10px;
        border-bottom: 1px solid var(--line);
        background: transparent !important;
    }

    .slide {
        display: block !important;
        min-height: auto;
        break-after: page;
        page-break-after: always;
        padding: 40px;
        color: var(--koa-dark);
        background: var(--coconut) !important;
        box-shadow: none !important;
    }

    .slide.active {
        display: block !important;
    }

    .assessment-shell-prezi {
        width: 100%;
        overflow: visible;
        background: var(--coconut);
    }

    .assessment-shell-prezi .slide {
        padding: 28px 0 20px;
        break-inside: auto;
        page-break-inside: auto;
    }

    .assessment-shell-v2 .slide {
        break-before: page;
        page-break-before: always;
        break-after: auto;
        page-break-after: auto;
    }

    .assessment-shell-v2 .slide:first-of-type {
        break-before: auto;
        page-break-before: auto;
    }

    .assessment-shell-v2 .prezi-slide::before {
        width: 72px;
        height: 3px;
        margin-bottom: 14px;
        background: var(--teal);
    }

    .slide h1,
    .slide h2,
    .slide h3,
    .prezi-slide h1,
    .prezi-slide h2,
    .prezi-slide h3 {
        color: var(--koa) !important;
        break-after: avoid;
        page-break-after: avoid;
    }

    .prezi-lede,
    .prezi-v2-field p,
    .prezi-v2-plain-section p,
    .prezi-v2-bullet-list,
    .prezi-v2-data-points,
    .prezi-disclaimer {
        color: var(--koa-dark) !important;
    }

    .prezi-card-grid,
    .prezi-metric-grid,
    .prezi-quadrant-grid,
    .prezi-total-grid,
    .prezi-score-breakdown,
    .prezi-solution-details {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .prezi-v2-scorecard-layout {
        grid-template-columns: minmax(210px, 0.8fr) minmax(260px, 1.2fr);
        gap: 14px;
    }

    .prezi-v2-stat-stack,
    .prezi-v2-money-stats {
        gap: 9px;
    }

    .prezi-v2-summary-strip,
    .prezi-v2-money-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .prezi-roadmap .prezi-card-grid,
    .prezi-score-hero {
        grid-template-columns: 1fr;
    }

    .insight-box,
    .matrix-row,
    .prezi-subsection,
    .prezi-ranked-row,
    .prezi-score-row {
        break-inside: avoid;
        page-break-inside: avoid;
        box-shadow: none !important;
    }

    .insight-box,
    .prezi-subsection,
    .prezi-v2-field,
    .prezi-v2-stat-card,
    .prezi-v2-score-panel,
    .prezi-score-row,
    .prezi-v2-leak-row,
    .prezi-v2-solution-card,
    .prezi-v2-step-card {
        border-color: var(--line) !important;
        background: var(--coconut) !important;
        color: var(--koa-dark) !important;
        box-shadow: none !important;
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .prezi-v2-score-panel {
        min-height: auto;
        padding: 18px;
    }

    .prezi-score-meter {
        --score-angle: 360deg;
        width: 138px;
        height: 138px;
        box-shadow: none;
        background: conic-gradient(var(--teal) var(--score-angle), rgba(217, 199, 178, 0.28) 0) !important;
    }

    .prezi-score-meter .score-meter-ring span,
    .prezi-v2-score-panel > strong,
    .prezi-v2-stat-card span,
    .prezi-rank-badge,
    .prezi-v2-solution-card .prezi-rank-badge,
    .prezi-v2-step-card .prezi-rank-badge {
        color: var(--koa) !important;
    }

    .prezi-v2-score-panel > p,
    .prezi-v2-stat-card small,
    .prezi-v2-solution-card .prezi-solution-heading p,
    .prezi-v2-solution-card .prezi-v2-field p,
    .prezi-v2-step-card .prezi-v2-field p {
        color: var(--koa-dark) !important;
    }

    .prezi-solution-carousel {
        padding: 0;
    }

    .prezi-solution-track {
        display: block !important;
        min-height: auto !important;
    }

    .prezi-solution-carousel .prezi-solution-card {
        display: block !important;
        min-height: auto;
        margin: 0 0 14px;
    }

    .prezi-v2-solution-card,
    .prezi-v2-step-card {
        padding: 18px;
        border: 1px solid var(--line);
        border-radius: 14px;
    }

    .prezi-v2-solution-card .prezi-solution-heading strong,
    .prezi-v2-step-card .prezi-solution-heading strong,
    .prezi-v2-solution-card .prezi-v2-field strong,
    .prezi-v2-step-card .prezi-v2-field strong {
        color: var(--koa) !important;
    }

    .prezi-before-after {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .prezi-before-after::before {
        display: none !important;
    }

    .prezi-v2-opportunity-graph,
    .prezi-opportunity-graph {
        min-height: auto !important;
        padding: 14px !important;
        overflow: visible;
        color: var(--koa-dark);
        background: var(--coconut) !important;
        border: 1px solid var(--line);
        box-shadow: none;
    }

    .prezi-v2-opportunity-graph .graph-grid,
    .prezi-v2-opportunity-graph .prezi-v2-matrix-grid {
        min-height: 320px;
    }

    .graph-quadrant,
    .prezi-v2-quadrant,
    .quadrant-opportunity,
    .prezi-opportunity-row,
    .prezi-v2-money-item {
        break-inside: avoid;
        page-break-inside: avoid;
        box-shadow: none !important;
    }

    .graph-quadrant[data-tooltip]::after {
        content: none !important;
    }

    .prezi-v2-leak-list {
        gap: 0;
    }

    .prezi-v2-leak-row {
        padding: 12px 0;
        border-bottom: 1px solid var(--line);
    }

    .prezi-v2-data-points {
        margin-bottom: 8px;
    }

    .prezi-v2-money-grid,
    .prezi-v2-money-stats,
    .prezi-v2-stat-grid {
        break-inside: auto;
        page-break-inside: auto;
    }

    .prezi-v2-money-item::before {
        color: var(--teal) !important;
        background: rgba(47, 111, 104, 0.08) !important;
    }

    .prezi-final-cta {
        color: var(--koa-dark);
        background: var(--coconut);
        border: 1px solid var(--line);
    }

    .prezi-final-cta h2,
    .prezi-final-cta .eyebrow,
    .prezi-final-cta .prezi-text-block strong,
    .prezi-final-cta .prezi-text-block span,
    .prezi-final-cta .check-list li {
        color: var(--koa-dark);
    }

    .prezi-v2-final .hero-actions {
        display: block !important;
        margin-top: 18px;
        padding-top: 14px;
        border-top: 1px solid var(--line);
    }

    .prezi-v2-final .hero-actions button {
        display: none !important;
    }

    .prezi-v2-final .hero-actions a[href*="calendly"] {
        display: block !important;
        width: auto;
        min-height: 0;
        padding: 0;
        color: var(--koa-dark) !important;
        background: transparent !important;
        border: 0;
        border-radius: 0;
        box-shadow: none;
        font-weight: 700;
        text-align: left;
        text-decoration: none;
    }

    .prezi-v2-final .hero-actions a[href*="calendly"]::before {
        content: "Book an Appointment: ";
        color: var(--koa);
        font-weight: 900;
    }

    .prezi-v2-final .hero-actions a[href*="calendly"]::after {
        content: " (" attr(href) ")";
        color: var(--teal);
        font-weight: 600;
        overflow-wrap: anywhere;
    }

    .button {
        box-shadow: none !important;
    }

    .assessment-report-page {
        padding: 0;
        background: var(--coconut) !important;
    }

    .report-toolbar,
    .report-debug {
        display: none !important;
    }

    .report-document {
        width: 100%;
        padding: 0;
        background: var(--coconut);
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .report-page {
        min-height: 9.2in;
        margin: 0;
        padding: 0.35in 0 0.62in;
        background: var(--coconut) !important;
        border: 0;
        box-shadow: none;
        break-before: page;
        page-break-before: always;
        break-after: page;
        page-break-after: always;
    }

    .report-page:first-child {
        break-before: auto;
        page-break-before: auto;
    }

    .report-cover {
        min-height: 9.2in;
        padding: 0.45in 0 0.62in;
        color: var(--koa-dark);
        background: var(--coconut) !important;
        border: 0;
        border-radius: 0;
    }

    .report-cover h1,
    .report-cover dd {
        color: var(--koa-dark);
    }

    .report-cover dt {
        color: var(--muted);
    }

    .report-cover dl div {
        border-top-color: var(--line);
    }

    .report-kicker {
        color: var(--teal);
    }

    .report-toc,
    .report-section {
        padding: 0.35in 0 0.62in;
        break-before: page;
        page-break-before: always;
        break-after: page;
        page-break-after: always;
    }

    .report-cover::before,
    .report-front-matter-page::before,
    .report-toc::before,
    .report-section::before {
        width: 0.8in;
        height: 2px;
        margin-bottom: 0.22in;
    }

    .report-solutions-section {
        min-height: auto;
    }

    .report-solution > .report-copy-block,
    .report-solution > .report-callout,
    .report-solution > .report-two-column,
    .report-solution .report-table.compact,
    .report-subtitle {
        margin-left: 0;
        width: 100%;
    }

    .report-section-title,
    .report-callout,
    .report-copy-block,
    .report-finding,
    .report-solution,
    .report-path-step,
    .report-metric,
    .report-quadrant-block,
    .report-score-summary,
    .report-table,
    .report-list li {
        break-inside: avoid;
        page-break-inside: avoid;
        box-shadow: none !important;
    }

    .report-section-title h2 {
        font-size: 28pt;
    }

    .report-section-title p,
    .report-callout p,
    .report-copy-block p,
    .report-finding p,
    .report-solution p,
    .report-path-step p,
    .report-quadrant-block p,
    .report-table th,
    .report-table td,
    .report-list li {
        font-size: 10.5pt;
        line-height: 1.45;
    }

    .report-metric-grid,
    .report-two-column,
    .report-matrix-summary {
        gap: 10px;
    }

    .report-metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .report-cover,
    .report-callout,
    .report-copy-block,
    .report-finding,
    .report-solution,
    .report-path-step,
    .report-metric,
    .report-quadrant-block,
    .report-score-summary {
        background: var(--coconut) !important;
        border-color: var(--line) !important;
    }

    .report-callout,
    .report-callout.soft,
    .report-callout.appointment,
    .report-copy-block,
    .report-finding,
    .report-solution,
    .report-path-step,
    .report-quadrant-block {
        padding: 0;
        border-right: 0 !important;
        border-bottom: 0 !important;
        border-left: 0 !important;
        border-radius: 0;
    }

    .report-callout {
        padding-left: 0.12in;
        border-left: 2px solid var(--teal) !important;
    }

    .report-note {
        padding: 0.14in 0;
        background: var(--coconut) !important;
        border-right: 0;
        border-left: 0;
        border-radius: 0;
    }

    .report-score-summary {
        grid-template-columns: 120px 1fr;
    }

    .report-score-summary > strong {
        width: 100px;
        height: 100px;
        border-width: 7px;
        font-size: 24pt;
    }

    .report-page-footer {
        right: 0;
        bottom: 0.18in;
        left: 0;
        padding-top: 0.08in;
        font-size: 8pt;
    }
}

/* Final report print-flow override: keep body sections flexible to prevent blank pages. */
@media print {
    .assessment-report-page .report-page {
        min-height: auto;
        margin: 0;
        padding: 0.2in 0 0.18in;
        break-before: auto;
        page-break-before: auto;
        break-after: auto;
        page-break-after: auto;
    }

    .assessment-report-page .report-cover,
    .assessment-report-page .report-front-matter-page,
    .assessment-report-page .report-toc {
        min-height: 9.2in;
        break-before: auto;
        page-break-before: auto;
        break-after: page;
        page-break-after: always;
    }

    .assessment-report-page .report-section {
        padding: 0.2in 0 0.12in;
        break-before: page;
        page-break-before: always;
        break-after: auto;
        page-break-after: auto;
    }

    .assessment-report-page .report-section:first-of-type {
        break-before: page;
        page-break-before: always;
    }

    .assessment-report-page .report-section-title {
        break-inside: avoid;
        page-break-inside: avoid;
        padding-bottom: 0;
        border-bottom: 0;
    }

    .assessment-report-page .report-finding,
    .assessment-report-page .report-path-step,
    .assessment-report-page .report-quadrant-block,
    .assessment-report-page .report-metric,
    .assessment-report-page .report-note,
    .assessment-report-page .report-copy-block,
    .assessment-report-page .report-callout {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .assessment-report-page .report-solution {
        break-inside: auto;
        page-break-inside: auto;
    }

    .assessment-report-page .report-solution > h3,
    .assessment-report-page .report-path-step > h3,
    .assessment-report-page .report-finding > h3 {
        break-after: avoid;
        page-break-after: avoid;
    }

    .assessment-report-page .report-page-footer {
        position: static;
        margin-top: 0.22in;
    }

    .assessment-report-page .report-executive-score {
        grid-template-columns: 1.1in 1fr;
        margin: 0.14in 0 0.16in;
        padding: 0.1in 0 0.1in 0.14in;
    }

    .assessment-report-page .report-executive-score strong {
        font-size: 30pt;
    }

    .assessment-report-page .report-executive-score small,
    .assessment-report-page .report-score-summary > strong small {
        color: inherit;
        font-size: 1em;
    }

    .assessment-report-page .report-score-summary {
        grid-template-columns: 1.35in 1fr;
        gap: 0.16in;
        margin: 0 0 0.14in;
        padding: 0.08in 0 0.1in 0.12in;
    }

    .assessment-report-page .report-score-summary > strong {
        width: auto;
        height: auto;
        border: 0;
        font-size: 28pt;
        white-space: nowrap;
    }

    .assessment-report-page .report-score-summary h3 {
        font-size: 16pt;
    }

    .assessment-report-page .report-matrix-summary {
        display: block;
        border-left: 0;
    }

    .assessment-report-page .report-quadrant-block {
        padding: 0.12in 0;
        border-right: 0;
    }
}


