.service-grid-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.service-grid-three .service-card { min-height: 570px; }
.service-grid-three .service-card h3 { font-size: 32px; }
.service-report-link { display: flex; justify-content: space-between; gap: 18px; margin-top: auto; padding-top: 20px; color: var(--forest); border-top: 1px solid var(--line); text-decoration: none; font-size: 13px; font-weight: 800; }
.service-report-link span { color: var(--coral); }
.service-card.dark .service-report-link { color: white; border-color: rgba(255,255,255,.18); }

.report-page { background: #f3f1ea; }
.report-header { position: sticky; top: 0; z-index: 20; min-height: 72px; padding: 0 max(24px, calc((100vw - 1180px)/2)); display: flex; align-items: center; justify-content: space-between; gap: 24px; color: white; background: rgba(17,44,37,.96); backdrop-filter: blur(14px); }
.report-header .brand { color: white; }
.report-header .brand small { color: #b8cbc4; }
.report-nav { display: flex; gap: 10px; }
.report-nav a { padding: 9px 12px; color: #d7e1dd; border: 1px solid rgba(255,255,255,.2); text-decoration: none; font-size: 12px; font-weight: 700; }
.report-nav a:hover { color: white; border-color: rgba(255,255,255,.55); }
.report-hero { padding-block: 88px 74px; color: white; background: var(--forest); }
.report-hero-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 70px; align-items: end; }
.report-hero .kicker { color: #e5cf9c; }
.report-hero h1 { max-width: 800px; font-size: clamp(48px, 6vw, 78px); }
.report-hero h1 em { color: #e9b291; }
.report-hero p:not(.kicker) { max-width: 720px; color: #c4d3ce; font-size: 18px; }
.report-meta { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid rgba(255,255,255,.2); border-left: 1px solid rgba(255,255,255,.2); }
.report-meta div { padding: 18px; border-right: 1px solid rgba(255,255,255,.2); border-bottom: 1px solid rgba(255,255,255,.2); }
.report-meta span { display: block; color: #9db2aa; font-size: 9px; text-transform: uppercase; letter-spacing: .12em; }
.report-meta strong { display: block; margin-top: 5px; font: 19px Georgia,serif; }
.report-notice { padding: 16px max(24px, calc((100vw - 1180px)/2)); color: #58452e; background: #f3dcac; font-size: 12px; }
.vsme-map { width: min(1180px, calc(100% - 48px)); margin: 28px auto 0; padding: 22px 24px; display: grid; grid-template-columns: minmax(220px,.8fr) 1.6fr; gap: 28px; align-items: center; color: #d7e1dd; background: #244c42; }
.vsme-map strong { display: block; margin-bottom: 5px; color: white; font: 20px Georgia,serif; }
.vsme-map p { margin: 0; color: #bfd0ca; font-size: 12px; }
.vsme-tags { display: flex; flex-wrap: wrap; gap: 7px; }
.vsme-tags span { padding: 7px 9px; color: #173f36; background: #eef3ef; border-radius: 2px; font-size: 10px; font-weight: 800; letter-spacing: .05em; }
.vsme-tags .comprehensive { color: white; background: #c96942; }
.report-shell { width: min(1180px, calc(100% - 48px)); margin: 0 auto; padding-block: 84px 120px; }
.report-section { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 70px; padding: 62px 0; border-bottom: 1px solid var(--line); }
.report-section:first-child { padding-top: 0; }
.report-side { color: var(--coral); font: 16px Georgia,serif; }
.report-side span { display: block; margin-top: 7px; color: var(--muted); font: 10px "Segoe UI",sans-serif; text-transform: uppercase; letter-spacing: .12em; }
.report-body { min-width: 0; }
.report-body h2 { margin: 0 0 24px; color: var(--forest); font-size: clamp(36px, 4vw, 52px); }
.report-body h3 { margin: 32px 0 12px; color: var(--forest); font-size: 24px; }
.report-lead { max-width: 820px; color: #40524b; font: 22px/1.55 Georgia,serif; }
.report-body > p:not(.report-lead), .report-body li { color: var(--muted); }
.metric-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin: 34px 0; }
.metric { min-height: 125px; padding: 20px; color: white; background: var(--forest); }
.metric.coral { background: var(--coral); }
.metric.sand { color: var(--forest); background: #e8ddc1; }
.metric b { display: block; font: 35px Georgia,serif; }
.metric span { display: block; margin-top: 7px; color: inherit; opacity: .76; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.report-table { width: 100%; border-collapse: collapse; margin: 26px 0; background: #fff; font-size: 13px; }
.report-table th { padding: 13px; color: white; background: var(--forest); text-align: left; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.report-table td { padding: 14px 13px; border-bottom: 1px solid var(--line); vertical-align: top; }
.priority-high { color: #a4472c; font-weight: 800; }.priority-mid { color: #8a6b23; font-weight: 800; }
.maturity-list { display: grid; gap: 14px; margin-top: 30px; }
.maturity-row { display: grid; grid-template-columns: 210px 1fr 38px; gap: 16px; align-items: center; font-size: 13px; }
.maturity-track { height: 9px; background: #dce4df; }
.maturity-fill { display: block; height: 100%; background: var(--coral); }
.maturity-row b { font: 16px Georgia,serif; }
.finding-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; margin-top: 28px; }
.finding { padding: 24px; background: white; border: 1px solid var(--line); }
.finding h3 { margin-top: 0; font-size: 22px; }
.finding p { color: var(--muted); font-size: 13px; }
.finding strong { display: block; margin-top: 18px; color: var(--coral); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.phase-list { display: grid; gap: 2px; margin-top: 30px; }
.phase { display: grid; grid-template-columns: 150px 1fr; gap: 30px; padding: 28px; color: white; background: var(--forest); }
.phase:nth-child(even) { background: #285347; }
.phase .time { color: #e7cd91; font: 19px Georgia,serif; }
.phase h3 { margin: 0 0 9px; color: white; }
.phase p { margin: 0; color: #c1d0ca; font-size: 13px; }
.quality-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 28px; counter-reset: quality; }
.quality { padding: 22px; background: white; counter-increment: quality; }
.quality::before { content: "0" counter(quality); display: block; margin-bottom: 14px; color: var(--coral); font: 16px Georgia,serif; }
.quality strong { display: block; margin-bottom: 6px; }
.quality p { margin: 0; color: var(--muted); font-size: 12px; }
.measure-card { display: grid; grid-template-columns: 90px minmax(0,1.5fr) repeat(3,minmax(90px,.6fr)); gap: 16px; align-items: center; padding: 22px 0; border-bottom: 1px solid var(--line); }
.measure-rank { width: 58px; height: 58px; display: grid; place-items: center; color: white; background: var(--coral); font: 21px Georgia,serif; }
.measure-card h3 { margin: 0 0 5px; font-size: 21px; }.measure-card p { margin: 0; color: var(--muted); font-size: 12px; }
.measure-stat span { display: block; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }.measure-stat b { font: 17px Georgia,serif; }
.report-cta { padding: 60px; display: grid; grid-template-columns: 1.2fr .8fr; gap: 50px; align-items: end; color: white; background: var(--coral); }
.report-cta h2 { margin: 0; color: white; }.report-cta p { color: #ffe6dc; }.report-cta .button { justify-self: end; color: white; background: var(--forest); }
.report-footer { padding-block: 35px; }

@media(max-width:1000px){.service-grid-three{grid-template-columns:1fr}.service-grid-three .service-card{min-height:480px}.report-hero-grid,.report-cta{grid-template-columns:1fr}.report-section{grid-template-columns:1fr;gap:22px}.metric-grid{grid-template-columns:repeat(2,1fr)}.measure-card{grid-template-columns:70px 1fr}.measure-stat{padding-left:86px}.report-cta .button{justify-self:start}}
@media(max-width:680px){.report-header{padding:12px 15px;align-items:flex-start}.report-header .brand small{display:none}.report-nav{flex-direction:column;align-items:stretch}.report-nav a{padding:5px 8px}.vsme-map{width:calc(100% - 30px);grid-template-columns:1fr}.report-shell{width:calc(100% - 30px)}.report-hero{padding-block:58px}.report-hero-grid{gap:40px}.report-meta{grid-template-columns:1fr 1fr}.metric-grid,.finding-grid,.quality-grid{grid-template-columns:1fr}.report-table{display:block;max-width:100%;overflow-x:auto}.maturity-row{grid-template-columns:120px 1fr 30px}.phase{grid-template-columns:1fr;gap:8px}.measure-card{grid-template-columns:58px 1fr}.measure-stat{padding-left:74px}.report-cta{padding:34px 24px}}
