/* CV-100 v0.1.1: three owner-requested corrections only.
   Original page rules and all four accepted pages remain unchanged. */
.cv-review .cv-extra {
  --cv-extra-inset: 17px;
}
.cv-review .cv-extra > summary {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  min-height: 52px;
  /* Make the full disclosure heading clickable without moving its content. */
  margin-inline: calc(-1 * var(--cv-extra-inset));
  padding: 15px var(--cv-extra-inset);
}
.cv-review .cv-extra > summary::marker { content: ""; }
.cv-review .cv-extra > summary::-webkit-details-marker { display: none; }
.cv-review .cv-extra > summary::before,
.cv-review .cv-extra > summary::after { content: none; }
.cv-review .cv-extra > summary .cv-extra-chevron {
  display: block;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  color: #315b30;
  transform: rotate(0deg);
  transition: transform .16s ease;
}
.cv-review .cv-extra[open] > summary .cv-extra-chevron { transform: rotate(90deg); }
.cv-review .cv-extra > summary .cv-extra-label { font: inherit; }
.cv-review .cv-extra > summary .cv-extra-optional { margin-left: 0; }
.cv-review .cv-extra > summary:hover { color: #247b18; }
.cv-review .cv-extra > summary:focus-visible {
  outline: 3px solid #75ad5f;
  outline-offset: -4px;
  border-radius: 10px;
}
/* Each single-destination card keeps its one original anchor/paragraph. */
.cv-review .cv-routes-grid { align-items: stretch; grid-auto-rows: 1fr; }
.cv-review .cv-route-card {
  position: relative;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-content: start;
  align-items: start;
  gap: 16px;
  padding: 22px;
  transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}
.cv-review .cv-route-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  background: #eef6e8;
  border: 1px solid #dcead4;
  border-radius: 12px;
  color: #2c811a;
}
.cv-review .cv-route-icon svg { display: block; width: 24px; height: 24px; }
.cv-review .cv-route-copy { min-width: 0; }
.cv-review .cv-route-copy h3 {
  margin: 1px 0 8px;
  color: var(--ink, #122039);
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: -.015em;
  font-weight: 650;
}
.cv-review .cv-route-card p { margin: 0; font-size: 12px; line-height: 1.8; }
.cv-review .cv-route-card a { position: static; text-underline-offset: 3px; }
.cv-review .cv-route-card a::after { content: ""; position: absolute; inset: 0; border-radius: 11px; }
.cv-review .cv-route-card:hover {
  border-color: #b1caa5;
  background: #f6faf2;
  box-shadow: 0 6px 17px rgba(31, 59, 35, .045);
}
.cv-review .cv-route-card:hover a,
.cv-review .cv-route-card:focus-within a { color: #225f15; text-decoration: underline; text-decoration-thickness: 2px; }
.cv-review .cv-route-card:focus-within { outline: 3px solid #75ad5f; outline-offset: 3px; }
@media (max-width: 760px) {
  .cv-review .cv-extra { --cv-extra-inset: 12px; }
  .cv-review .cv-route-card { padding: 19px; gap: 14px; }
  .cv-review .cv-routes-grid { grid-auto-rows: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .cv-review .cv-extra > summary .cv-extra-chevron,
  .cv-review .cv-route-card { transition: none; }
}
