/* ============================================================
   ALMENTA INTERNATIONAL
   Customer Centricity Assessment - page stylesheet

   Loaded after the shared stylesheet. Every rule is namespaced
   under .assessment-page, so nothing here reaches another page.
   One authoritative rule per component. Responsive rules are
   consolidated into a single block per breakpoint at the end.
   ============================================================ */

.assessment-page { --a-sticky: 72px; }

.assessment-page .a-visually-hidden {
  position: absolute;
  width: 1px; height: 1px;
  margin: -1px; padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.assessment-page [hidden] { display: none !important; }

.assessment-page .assessment-noscript {
  margin-bottom: 34px;
  padding: 20px 24px;
  border-left: 3px solid var(--gold);
  background: #fff;
  color: var(--navy);
  font-weight: 600;
}


/* ============================================================
   1. HERO
   ============================================================ */

.assessment-page .assessment-hero {
  position: relative;
  min-height: 610px;
  padding: 72px 0 0;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 78% 48%, rgba(67,177,145,.16), transparent 34%),
    linear-gradient(120deg, #03131f 0%, #06283d 62%, #0a4050 100%);
}

.assessment-page .assessment-hero-grid {
  position: relative;
  z-index: 2;
  display: grid;
  /* minmax(0, …) rather than a 380px floor: between the 1080px and 900px
     breakpoints a hard floor plus the 56% column exceeded the container. */
  grid-template-columns: minmax(0, 56%) minmax(0, 44%);
  align-items: stretch;
  gap: 48px;
}

.assessment-page .assessment-hero-copy { align-self: center; padding: 0 20px 64px 0; }

.assessment-page .assessment-hero h1 { max-width: 720px; margin: 0 0 22px; color: #fff; font-size: clamp(48px, 4.8vw, 70px); line-height: 1.04; }

.assessment-page .assessment-hero-lead { max-width: 640px; margin: 0; color: #C6D6D8; font-size: clamp(17px, 1.35vw, 19.5px); line-height: 1.6; }

/* Authority line, set below the copy and never over the portrait */

.assessment-page .assessment-authority-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 16px;
  max-width: 640px;
  margin: 26px 0 0;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,.16);
  font-size: 14px;
}

.assessment-page .assessment-authority-line span:first-child { color: #fff; font-weight: 800; letter-spacing: .05em; }

.assessment-page .assessment-authority-line span + span { color: #9FB4B8; }

.assessment-page .assessment-authority-line span + span::before { content: "/"; margin-right: 15px; color: var(--gold); }

.assessment-page .assessment-authority-line em { color: var(--champagne); font-family: var(--serif); }

/* One compact facts line */

.assessment-page .assessment-facts-inline {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 24px;
  margin: 22px 0 30px;
  padding: 0;
  list-style: none;
  color: #9FB4B8;
  font-size: 14.5px;
}

.assessment-page .assessment-facts-inline li { display: flex; align-items: baseline; gap: 8px; }

.assessment-page .assessment-facts-inline li + li::before {
  content: "";
  width: 1px;
  height: 13px;
  margin-right: 24px;
  background: rgba(255,255,255,.24);
}

.assessment-page .assessment-facts-inline strong {
  color: var(--champagne);
  font-family: var(--serif);
  font-size: 21px;
  font-weight: 600;
  line-height: 1;
}

.assessment-page .assessment-hero-actions { display: flex; flex-wrap: wrap; gap: 16px; }

.assessment-page .assessment-transparency {
  max-width: 600px;
  margin: 24px 0 0;
  padding-left: 16px;
  border-left: 2px solid var(--gold);
  color: #9FB4B8;
  font-size: 14px;
  line-height: 1.6;
}

/* Portrait: no frame, no crop, no card over her */

.assessment-page .assessment-hero-visual {
  position: relative;
  align-self: stretch;
  min-height: 500px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 0;
}

.assessment-page .assessment-hero-compass {
  position: absolute;
  top: 46%;
  left: 50%;
  width: 540px;
  max-width: none;
  transform: translate(-50%, -50%);
  opacity: .13;
  pointer-events: none;
}

.assessment-page .assessment-portrait {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 470px;
  margin: 0 auto -1px;
  aspect-ratio: auto;
  overflow: visible;
  border: 0;
  box-shadow: none;
}

.assessment-page .assessment-portrait img { display: block; width: 100%; height: auto; object-fit: contain; object-position: center bottom; }


/* ============================================================
   2. PREPARATION
   ============================================================ */

.assessment-page .assessment-prep {
  padding: 82px 0 88px;
  background: var(--paper);
}

.assessment-page .assessment-prep-head { max-width: 780px; margin-bottom: 42px; }

.assessment-page .assessment-prep-head h2 { margin: 0; font-size: clamp(32px, 3.4vw, 46px); }

.assessment-page .assessment-prep-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 420px); gap: 52px; align-items: start; }

.assessment-page .assessment-prep-copy > p { max-width: 560px; margin: 0; font-size: 17px; }

.assessment-page .assessment-prep-points { margin: 24px 0 0; padding: 0; list-style: none; max-width: 560px; }

.assessment-page .assessment-prep-points li {
  position: relative;
  padding: 13px 0 13px 26px;
  border-top: 1px solid var(--line);
  color: #2B3C48;
  font-size: 15.5px;
}

.assessment-page .assessment-prep-points li:last-child { border-bottom: 1px solid var(--line); }

.assessment-page .assessment-prep-points li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 22px;
  width: 12px;
  height: 1px;
  background: var(--gold);
}

/* Start card */

.assessment-page .assessment-start-card {
  padding: 32px 32px 34px;
  background: #fff;
  border: 1px solid var(--line);
  border-top: 2px solid var(--gold);
}

.assessment-page .assessment-start-card .field { margin-bottom: 20px; }
.assessment-page .assessment-start-card select { width: 100%; }

.assessment-page .assessment-start-error { margin: -6px 0 16px; color: #A2402F; font-size: 14px; font-weight: 700; }

.assessment-page .assessment-start-card .btn { width: 100%; }

/* Scale strip, full width beneath */

.assessment-page .assessment-scale-guide {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1px;
  margin-top: 46px;
  background: var(--line);
  border: 1px solid var(--line);
  border-top: 2px solid var(--gold);
}

.assessment-page .assessment-scale-guide > div { display: flex; flex-direction: column; gap: 7px; padding: 22px 20px 24px; background: #fff; }

.assessment-page .assessment-scale-guide b { font-family: var(--serif); font-size: 26px; font-weight: 600; line-height: 1; color: var(--navy); }

.assessment-page .assessment-scale-guide span {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--teal-deep);
}

.assessment-page .assessment-scale-guide small { color: var(--muted); font-size: 12.5px; line-height: 1.45; }


/* ============================================================
   3. WORKSPACE
   ============================================================ */

.assessment-page .assessment-workspace {
  padding: 0 0 88px;
  background: var(--paper);
}

.assessment-page .assessment-shell { display: block; max-width: 1000px; margin: 0 auto; }

/* The single progress component on the page */

.assessment-page .assessment-dimension-bar {
  position: sticky;
  top: var(--a-sticky);
  z-index: 30;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 32px;
  padding: 22px 28px 18px;
  margin-bottom: 28px;
  color: #fff;
  background: rgba(4,24,37,.97);
  border-top: 2px solid var(--gold);
  box-shadow: 0 14px 38px rgba(4,24,37,.16);
}

.assessment-page .dimension-identity > span {
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--gold);
}

.assessment-page .dimension-identity h2 { margin: 7px 0 5px; color: #fff; font-size: clamp(21px, 2.1vw, 27px); line-height: 1.15; }

.assessment-page .dimension-identity p { margin: 0; color: #8FA8AE; font-size: 12.5px; line-height: 1.45; }

.assessment-page .dimension-progress-summary { text-align: right; align-self: start; }

.assessment-page .dimension-progress-summary strong {
  display: block;
  font-family: var(--serif);
  font-size: 34px;
  font-weight: 600;
  line-height: 1;
  color: var(--champagne);
}

.assessment-page .dimension-progress-summary span {
  display: block;
  margin-top: 6px;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #8FA8AE;
}

.assessment-page .assessment-progress-track {
  grid-column: 1 / -1;
  margin-top: 6px;
  height: 3px;
  background: rgba(255,255,255,.14);
  overflow: hidden;
}

.assessment-page .assessment-progress-fill {
  width: 0%;
  height: 100%;
  background: linear-gradient(90deg, var(--teal-deep), var(--gold));
  transition: width .35s var(--ease);
}

.assessment-page .assessment-restart-row { margin-top: 22px; text-align: right; }

.assessment-page .assessment-restart {
  padding: 0 0 3px;
  border: 0;
  border-bottom: 1px solid rgba(78,94,106,.4);
  background: none;
  color: var(--muted);
  font-family: var(--sans);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  cursor: pointer;
}

.assessment-page .assessment-restart:hover { color: var(--teal-deep); border-bottom-color: var(--gold); }


/* ============================================================
   4. QUESTIONS - one editorial panel per dimension
   ============================================================ */

.assessment-page .assessment-step {
  padding: 10px 34px 0;
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: 0 20px 55px rgba(4,24,37,.07);
}

.assessment-page .assessment-question {
  margin: 0;
  padding: 30px 0 32px;
  border: 0;
  border-bottom: 1px solid var(--line);
  box-shadow: none;
  background: transparent;
}

.assessment-page .assessment-question:last-of-type { border-bottom: 0; }

.assessment-page .assessment-question legend {
  width: 100%;
  margin-bottom: 20px;
  padding: 0;
  color: var(--navy);
  font-family: var(--serif);
  font-size: clamp(21px, 1.8vw, 25px);
  font-weight: 600;
  line-height: 1.34;
  letter-spacing: -0.01em;
}

.assessment-page .question-meta {
  margin-bottom: 9px;
  color: var(--gold);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.assessment-page .assessment-question.is-unanswered legend { color: #8A3524; }

.assessment-page .question-error { margin: 14px 0 0; color: #A2402F; font-size: 13.5px; font-weight: 700; }


/* ============================================================
   5. RATING CONTROLS - six equal choices
   ============================================================ */

.assessment-page .rating-options {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}

.assessment-page .rating-option {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
  min-height: 72px;
  padding: 14px 12px;
  border: 1px solid var(--line);
  border-top: 3px solid transparent;
  background: #fff;
  color: var(--navy-2);
  cursor: pointer;
  user-select: none;
  transition: background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);
}

.assessment-page .rating-option input { position: absolute; width: 1px; height: 1px; margin: 0; opacity: 0; }

.assessment-page .rating-number { font-family: var(--serif); font-size: 20px; font-weight: 600; line-height: 1; }

.assessment-page .rating-label { font-size: 11.5px; font-weight: 700; letter-spacing: .03em; line-height: 1.3; }

.assessment-page .rating-option:hover { border-color: var(--line); border-top-color: var(--champagne); background: var(--mint); }

.assessment-page .rating-option:has(input:focus-visible) { outline: 2px solid var(--teal); outline-offset: 2px; }

.assessment-page .rating-option:has(input:checked) {
  color: #fff;
  background: var(--teal-deep);
  border-color: var(--teal-deep);
  border-top-color: var(--gold);
}

/* Restrained check mark, so selection is never colour alone */
.assessment-page .rating-option::after {
  content: "";
  position: absolute;
  top: 11px;
  right: 11px;
  width: 11px;
  height: 6px;
  border-left: 2px solid var(--gold);
  border-bottom: 2px solid var(--gold);
  transform: rotate(-45deg);
  opacity: 0;
}

.assessment-page .rating-option:has(input:checked)::after { opacity: 1; }

.assessment-page .rating-na { grid-column: auto; width: auto; }


/* ============================================================
   6. STEP NAVIGATION
   ============================================================ */

.assessment-page .assessment-navigation {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
  margin: 0 -34px;
  padding: 22px 34px;
  border-top: 1px solid var(--line);
  background: var(--mint);
}

.assessment-page .assessment-navigation .assessment-back { justify-self: start; }
.assessment-page .assessment-navigation .assessment-next { justify-self: end; }

.assessment-page .assessment-location {
  grid-column: 2;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--faint);
  text-align: center;
}

.assessment-page .assessment-back { border-color: var(--navy); color: var(--navy); background: transparent; }

.assessment-page .assessment-back:hover { background: var(--navy); color: #fff; }

.assessment-page .assessment-next[disabled] { opacity: .4; cursor: not-allowed; }

.assessment-page .assessment-next[disabled]:hover { background: var(--gold); color: var(--abyss); transform: none; }


/* ============================================================
   7. COMPLETION AND CONTACT CAPTURE
   ============================================================ */

.assessment-page .assessment-complete {
  padding: 70px 0 76px;
  color: #DFEAE8;
  background: linear-gradient(130deg, #03131f 0%, #06283d 70%, #0a4050 100%);
}

.assessment-page .assessment-complete-grid { display: grid; grid-template-columns: minmax(0, 40%) minmax(0, 60%); gap: 48px; align-items: start; }

.assessment-page .assessment-complete h2 { margin-bottom: 18px; color: #fff; font-size: clamp(30px, 3.2vw, 42px); line-height: 1.08; }

.assessment-page .assessment-complete-copy p { color: #A9BEC2; }
.assessment-page .assessment-complete-copy .lead { color: #D5E2E1; font-size: 17px; }

.assessment-page .assessment-assurance { margin-top: 22px; padding-left: 16px; border-left: 2px solid var(--gold); font-size: 14px; color: #9FB4B8; }

.assessment-page .assessment-lead-card { padding: 34px 36px 36px; background: var(--paper); border-top: 2px solid var(--gold); }

.assessment-page .assessment-lead-card .form-grid { gap: 18px; }

.assessment-page .assessment-lead-card input { background: #fff; }

.assessment-page .assessment-consent {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--muted);
  font-weight: 500;
  cursor: pointer;
}

.assessment-page .assessment-consent input { flex: 0 0 auto; width: 17px; height: 17px; margin-top: 3px; accent-color: var(--teal-deep); }

.assessment-page .assessment-consent + .assessment-consent { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); }

.assessment-page .assessment-honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.assessment-page .assessment-form-error { margin: 0 0 10px; color: #A2402F; font-size: 14px; font-weight: 700; }

.assessment-page .assessment-lead-card .btn[disabled] { opacity: .55; cursor: progress; }


/* ============================================================
   8. RESULTS
   ============================================================ */

.assessment-page .results-overall {
  padding: 76px 0 80px;
  color: #DFEAE8;
  background: linear-gradient(130deg, #03131f 0%, #06283d 70%, #0a4050 100%);
}

.assessment-page .results-overall-grid { display: grid; grid-template-columns: minmax(0, 38%) minmax(0, 62%); gap: 56px; align-items: start; }

/* Editorial score, no gauge */

.assessment-page .results-score-block > span {
  display: block;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--champagne);
}

.assessment-page .results-score-block strong {
  display: block;
  margin: 10px 0 0;
  color: #fff;
  font-family: var(--serif);
  font-size: clamp(84px, 9vw, 148px);
  font-weight: 600;
  line-height: .88;
  letter-spacing: -0.04em;
}

.assessment-page .results-score-block small {
  display: block;
  margin-top: 22px;
  padding-top: 20px;
  border-top: 2px solid var(--gold);
  color: #9FB4B8;
  font-size: 13px;
  line-height: 1.5;
}

.assessment-page .results-stage-label {
  display: block;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--gold);
}

.assessment-page .results-stage-block h2 { margin: 14px 0 18px; color: #fff; font-size: clamp(28px, 3.2vw, 44px); line-height: 1.08; }

.assessment-page .results-stage-block > p { max-width: 620px; color: #C3D4D6; font-size: 16.5px; line-height: 1.6; }

.assessment-page .results-next-step { max-width: 620px; margin-top: 24px; padding-left: 20px; border-left: 2px solid var(--gold); }

.assessment-page .results-next-step h3 {
  margin-bottom: 8px;
  color: var(--champagne);
  font-family: var(--sans);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.assessment-page .results-next-step p { margin: 0; color: #D5E2E1; font-size: 15.5px; }

/* Strengths and priorities, two simple numbered lists */

.assessment-page .results-highlights { padding: 76px 0 72px; background: var(--paper); }

.assessment-page .results-highlights-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px; }

.assessment-page .results-highlight-block h2 { margin-bottom: 10px; font-size: clamp(24px, 2.4vw, 32px); }

.assessment-page .results-highlight-block > p { margin-bottom: 26px; font-size: 15px; }

.assessment-page .results-highlight-list { margin: 0; padding: 0; list-style: none; counter-reset: highlight; }

.assessment-page .results-highlight-list li {
  counter-increment: highlight;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) auto;
  gap: 4px 16px;
  padding: 18px 0;
  border-top: 1px solid var(--line);
}

.assessment-page .results-highlight-list li:last-child { border-bottom: 1px solid var(--line); }

.assessment-page .results-highlight-list li::before {
  content: counter(highlight);
  grid-row: 1 / 3;
  font-family: var(--serif);
  font-size: 16px;
  color: var(--gold);
  line-height: 1.4;
}

.assessment-page .results-highlight-list .name {
  font-family: var(--serif);
  font-size: 19px;
  font-weight: 600;
  color: var(--navy);
  line-height: 1.25;
}

.assessment-page .results-highlight-list .value {
  font-family: var(--serif);
  font-size: 20px;
  font-weight: 600;
  color: var(--teal-deep);
  text-align: right;
}

.assessment-page .results-highlight-list .official { grid-column: 2 / -1; font-size: 12px; line-height: 1.45; color: var(--faint); }

/* Fourteen-dimension profile */

.assessment-page .results-profile { padding: 82px 0 86px; }

.assessment-page .results-profile > .container > p { max-width: 660px; margin-bottom: 40px; }

.assessment-page .dimension-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 62px 118px;
  gap: 6px 22px;
  padding: 20px 0 22px;
  border-top: 1px solid var(--line);
}

.assessment-page .dimension-row:last-child { border-bottom: 1px solid var(--line); }

.assessment-page .dimension-row .name { font-family: var(--serif); font-size: 19px; font-weight: 600; color: var(--navy); line-height: 1.2; }

.assessment-page .dimension-row .score { font-family: var(--serif); font-size: 21px; font-weight: 600; color: var(--navy); text-align: right; }

.assessment-page .dimension-row .maturity {
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--teal-deep);
  text-align: right;
  align-self: center;
}

.assessment-page .dimension-row .official { grid-column: 1 / 2; font-size: 12px; line-height: 1.45; color: var(--faint); }

.assessment-page .dimension-row .track { grid-column: 1 / -1; margin-top: 10px; height: 4px; background: var(--mint-2); overflow: hidden; }

.assessment-page .dimension-row .fill { height: 100%; width: 0; background: linear-gradient(90deg, var(--teal-deep), var(--gold)); }

.assessment-page .dimension-row.is-unscored .score,
.assessment-page .dimension-row.is-unscored .maturity { color: var(--faint); }

.assessment-page .dimension-row.is-unscored .score { font-size: 13px; }

.assessment-page .dimension-row.is-unscored .track { background: repeating-linear-gradient(90deg, var(--line) 0 6px, transparent 6px 12px); }

.assessment-page .assessment-print-actions { margin-top: 40px; }

/* Results CTA */

.assessment-page .results-cta { padding: 82px 0 88px; color: #DFEAE8; background: linear-gradient(160deg, var(--abyss), var(--navy) 92%); }

.assessment-page .results-cta h2 { max-width: 760px; margin-bottom: 18px; color: #fff; }

.assessment-page .results-cta p { max-width: 700px; color: #A9BEC2; font-size: 17px; }

.assessment-page .results-cta-actions { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 32px; }


/* ============================================================
   9. MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
  .assessment-page .assessment-progress-fill,
  .assessment-page .rating-option { transition: none; }
}


/* ============================================================
   10. RESPONSIVE - one block per breakpoint
   ============================================================ */

@media (max-width: 1080px) {
  .assessment-page .assessment-hero-grid { gap: 34px; }
  .assessment-page .assessment-hero h1 { font-size: clamp(40px, 5vw, 56px); }
  .assessment-page .assessment-hero-compass { width: 380px; }
  .assessment-page .assessment-prep-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 340px); gap: 38px; }
  .assessment-page .results-overall-grid { grid-template-columns: 1fr; gap: 40px; }
  .assessment-page .results-highlights-grid { gap: 40px; }
}

@media (max-width: 900px) {
  .assessment-page .assessment-hero { min-height: 0; padding: 56px 0 0; }
  .assessment-page .assessment-hero-copy { align-self: auto; padding: 0 0 8px; }

  .assessment-page .assessment-hero-grid,
  .assessment-page .assessment-prep-grid,
  .assessment-page .assessment-complete-grid,
  .assessment-page .results-highlights-grid {
    grid-template-columns: 1fr;
  }

  .assessment-page .assessment-hero-grid { gap: 30px; }
  .assessment-page .assessment-hero-copy { padding-right: 0; }
  .assessment-page .assessment-hero-visual { min-height: 0; }
  .assessment-page .assessment-portrait { max-width: 340px; }
  .assessment-page .assessment-portrait img { max-height: 430px; width: auto; margin: 0 auto; }
  .assessment-page .assessment-hero-compass { width: 320px; }
  .assessment-page .assessment-hero-actions .btn { width: 100%; }

  .assessment-page .assessment-prep { padding: 56px 0 62px; }
  .assessment-page .assessment-prep-head { margin-bottom: 30px; }
  .assessment-page .assessment-scale-guide { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 34px; }

  .assessment-page .assessment-dimension-bar { padding: 18px 20px 16px; gap: 6px 20px; }
  .assessment-page .dimension-progress-summary strong { font-size: 27px; }

  .assessment-page .assessment-step { padding: 6px 22px 0; }
  .assessment-page .assessment-navigation { margin: 0 -22px; padding: 20px 22px; }

  /* three by two */
  .assessment-page .rating-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }

  .assessment-page .assessment-complete { padding: 54px 0 58px; }
  .assessment-page .assessment-lead-card { padding: 28px 24px 30px; }
  .assessment-page .results-overall { padding: 56px 0 58px; }
  .assessment-page .results-highlights { padding: 54px 0 52px; }
  .assessment-page .results-profile { padding: 56px 0 58px; }
  .assessment-page .results-cta { padding: 58px 0 62px; }
  .assessment-page .results-cta-actions .btn { width: 100%; }
  .assessment-page .assessment-workspace { padding-bottom: 62px; }
}

@media (max-width: 560px) {
  .assessment-page .assessment-hero h1 { font-size: clamp(33px, 8vw, 42px); }
  .assessment-page .assessment-facts-inline { gap: 6px 16px; font-size: 13.5px; }
  .assessment-page .assessment-facts-inline li + li::before { margin-right: 16px; }

  .assessment-page .assessment-scale-guide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .assessment-page .assessment-scale-guide > div { padding: 18px 16px 20px; }

  .assessment-page .assessment-step { padding: 4px 16px 0; }
  .assessment-page .assessment-question { padding: 24px 0 26px; }
  .assessment-page .assessment-question legend { font-size: 19px; margin-bottom: 16px; }

  /* two by three */
  .assessment-page .rating-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .assessment-page .rating-option { min-height: 66px; padding: 12px 10px; }

  .assessment-page .assessment-navigation {
    grid-template-columns: 1fr 1fr;
    margin: 0 -16px;
    padding: 18px 16px;
  }

  .assessment-page .assessment-location { grid-column: 1 / -1; grid-row: 1; text-align: left; }
  .assessment-page .assessment-navigation .btn { width: 100%; }
  .assessment-page .assessment-navigation .assessment-back { justify-self: stretch; }
  .assessment-page .assessment-navigation .assessment-next { justify-self: stretch; }
  .assessment-page .assessment-back[hidden] + .assessment-location + .assessment-next { grid-column: 1 / -1; }

  .assessment-page .dimension-identity h2 { font-size: 19px; }
  .assessment-page .dimension-progress-summary strong { font-size: 23px; }

  .assessment-page .results-score-block strong { font-size: clamp(66px, 20vw, 96px); }

  .assessment-page .dimension-row { grid-template-columns: minmax(0, 1fr) 56px; }
  .assessment-page .dimension-row .maturity { grid-column: 1 / -1; text-align: left; margin-top: 2px; }
  .assessment-page .results-highlight-list li { grid-template-columns: 22px minmax(0, 1fr) auto; }
}


/* ============================================================
   11. PRINT
   ============================================================ */

@media print {
  .assessment-page .topbar,
  .assessment-page header.site-header,
  .assessment-page footer.site-footer,
  .assessment-page .assessment-hero,
  .assessment-page .assessment-prep,
  .assessment-page .assessment-workspace,
  .assessment-page .assessment-complete,
  .assessment-page .results-cta,
  .assessment-page .assessment-print-actions,
  .assessment-page .assessment-noscript { display: none !important; }

  .assessment-page,
  .assessment-page .results-overall,
  .assessment-page .results-highlights,
  .assessment-page .results-profile {
    background: #fff !important;
    color: #000 !important;
  }

  .assessment-page .results-print-header {
    display: block !important;
    margin-bottom: 24px;
    padding-bottom: 14px;
    border-bottom: 2px solid #000;
  }

  .assessment-page .results-print-header .brand-line {
    font-family: var(--serif);
    font-size: 22px;
    color: #000;
  }

  .assessment-page .results-print-header p { margin: 5px 0 0; color: #333; font-size: 12px; }

  .assessment-page .results-overall { padding: 0 0 20px; }
  .assessment-page .results-overall-grid { grid-template-columns: 34% 1fr; gap: 26px; }
  .assessment-page .results-score-block strong { font-size: 78px; color: #000 !important; }
  .assessment-page .results-score-block small { border-top-color: #000; }

  .assessment-page .results-stage-block h2,
  .assessment-page .dimension-row .name,
  .assessment-page .results-highlight-list .name,
  .assessment-page .results-highlight-block h2,
  .assessment-page .results-highlight-list .value { color: #000 !important; }

  .assessment-page .results-score-block > span,
  .assessment-page .results-stage-label,
  .assessment-page .results-score-block small,
  .assessment-page .dimension-row .maturity,
  .assessment-page .results-next-step h3 { color: #333 !important; }

  .assessment-page .results-stage-block > p,
  .assessment-page .results-next-step p,
  .assessment-page .dimension-row .official,
  .assessment-page .results-highlight-list .official { color: #444 !important; }

  .assessment-page .results-next-step { border-left-color: #000; }
  .assessment-page .results-highlights, .assessment-page .results-profile { padding: 18px 0; }
  .assessment-page .results-highlights-grid { grid-template-columns: 1fr 1fr; gap: 24px; }

  .assessment-page .dimension-row,
  .assessment-page .results-highlight-list li {
    break-inside: avoid;
    page-break-inside: avoid;
    padding: 10px 0;
  }

  .assessment-page .dimension-row .track { background: #e5e5e5; border: 1px solid #bbb; height: 7px; }
  .assessment-page .dimension-row .fill { background: #555 !important; }
  .assessment-page h2, .assessment-page h3 { break-after: avoid; page-break-after: avoid; }
  .assessment-page .container { width: 100%; }
}


/* ============================================================
   JULY 2026 ADDITIONS
   Scale title, in-assessment scale reference, and the
   post-assessment educational sections.
   ============================================================ */

.assessment-page .assessment-scale-title {
  margin: 44px 0 0;
  font-family: var(--sans);
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--teal-deep);
}

.assessment-page .assessment-scale-title + .assessment-scale-guide { margin-top: 18px; }

/* Persistent, expandable scale reference during the assessment */

.assessment-page .assessment-scale-inline {
  margin: 0 0 8px;
  background: var(--paper);
  border: 1px solid var(--line);
}

.assessment-page .assessment-scale-inline summary {
  padding: 14px 22px;
  font-family: var(--sans);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--teal-deep);
  cursor: pointer;
}

.assessment-page .assessment-scale-inline summary:focus-visible { outline: 2px solid var(--teal); outline-offset: 2px; }

.assessment-page .assessment-scale-inline dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px 32px;
  margin: 0;
  padding: 4px 22px 24px;
}

.assessment-page .assessment-scale-inline dt {
  font-family: var(--sans);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--navy);
}

.assessment-page .assessment-scale-inline dt b { font-family: var(--serif); font-size: 17px; margin-right: 6px; }

.assessment-page .assessment-scale-inline dd { margin: 6px 0 0; font-size: 13.5px; line-height: 1.5; color: var(--muted); }

/* Completion message */

.assessment-page .results-congrats { padding: 74px 0 10px; }

.assessment-page .results-congrats h2 { margin: 0 0 22px; font-size: clamp(28px, 3vw, 40px); line-height: 1.1; }

.assessment-page .results-congrats p { color: var(--muted); font-size: 16.5px; line-height: 1.65; }

.assessment-page .results-congrats .lead { color: var(--navy); font-size: 18.5px; }

/* Educational content ahead of the CTA */

.assessment-page .results-education { padding: 24px 0 82px; }

.assessment-page .results-education h2 {
  margin: 56px 0 20px;
  font-size: clamp(26px, 2.6vw, 36px);
  line-height: 1.12;
}

.assessment-page .results-education h2:first-child { margin-top: 0; }

.assessment-page .results-education p { color: var(--muted); font-size: 16.5px; line-height: 1.65; }

.assessment-page .results-diagnostic-panel {
  margin: 48px 0 8px;
  padding: 38px 40px 34px;
  background: var(--mint);
  border-top: 2px solid var(--gold);
}

.assessment-page .results-diagnostic-panel h3 {
  margin: 0 0 18px;
  font-family: var(--serif);
  font-size: clamp(21px, 2.1vw, 27px);
  font-weight: 600;
  line-height: 1.18;
  color: var(--navy);
}

.assessment-page .results-diagnostic-panel p:last-child { margin-bottom: 0; }

.assessment-page .results-closing {
  margin-top: 30px;
  padding-left: 22px;
  border-left: 2px solid var(--gold);
  font-family: var(--serif);
  font-size: clamp(18px, 1.8vw, 21px);
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: -0.01em;
  color: var(--navy) !important;
  text-wrap: pretty;
}

.assessment-page .results-cta-contact { margin-top: 26px; font-size: 14.5px; }

.assessment-page .results-cta-contact a { color: var(--champagne); }

@media (max-width: 900px) {
  .assessment-page .assessment-scale-inline dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .assessment-page .results-congrats { padding-top: 54px; }
  .assessment-page .results-education h2 { margin-top: 44px; }
  .assessment-page .results-diagnostic-panel { padding: 28px 24px 26px; }
}

@media (max-width: 600px) {
  .assessment-page .assessment-scale-inline dl { grid-template-columns: minmax(0, 1fr); padding: 4px 18px 20px; }
  .assessment-page .assessment-scale-inline summary { padding: 13px 18px; }
}

@media print {
  .assessment-page .assessment-scale-inline { display: none; }
  .assessment-page .results-congrats h2,
  .assessment-page .results-education h2,
  .assessment-page .results-diagnostic-panel h3 { color: #000 !important; }
  .assessment-page .results-congrats p,
  .assessment-page .results-education p { color: #333 !important; }
}


/* Review-mode transmission notice. Informational, never celebratory. */
.assessment-page .results-transmission-notice {
  margin: 0;
  padding: 18px 22px;
  background: rgba(200, 155, 90, .12);
  border-left: 2px solid var(--gold);
  font-size: 14.5px;
  line-height: 1.6;
  color: var(--navy);
}

@media print { .assessment-page .results-transmission-notice { display: none; } }
