/* Isolated to the reviews section; does not change the site or catalog styles. */
#reviews {
  --reviews-green: var(--green);
  --reviews-deep: var(--green);
  --reviews-ink: var(--ink);
  --reviews-muted: var(--muted);
  --reviews-line: var(--line);
  --reviews-mint: #edf5ef;
  --reviews-orange: var(--orange);
  box-sizing: border-box;
  width: 100%;
  margin-inline: auto;
  padding: 54px 0 20px;
  scroll-margin-top: 100px;
  color: var(--reviews-ink);
  font-family: inherit;
  -webkit-font-smoothing: antialiased;
}
#reviews *, #reviews *::before, #reviews *::after { box-sizing: border-box; }
#reviews [hidden] { display: none !important; }
#reviews a { color: inherit; }
#reviews button { font: inherit; cursor: pointer; }
#reviews button, #reviews a { -webkit-tap-highlight-color: transparent; }
#reviews a:focus-visible, #reviews button:focus-visible { outline: 3px solid var(--reviews-orange); outline-offset: 5px; border-radius: 5px; }
#reviews svg { fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
#reviews .reviews-top { display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; margin-bottom: 32px; }
#reviews .reviews-eyebrow { margin: 0 0 15px; display: flex; align-items: center; gap: 12px; color: var(--reviews-green); font-size: 11px; font-weight: 650; letter-spacing: .23em; text-transform: uppercase; }
#reviews .reviews-eyebrow::before { content: ""; width: 32px; height: 1px; background: var(--reviews-green); }
#reviews h2 { margin: 0; font-size: clamp(34px, 4.4vw, 54px); font-weight: 600; line-height: 1.1; letter-spacing: -.045em; }
#reviews .reviews-intro { max-width: 520px; margin: 19px 0 0; font-size: 16px; line-height: 1.65; color: var(--reviews-muted); }
#reviews .reviews-channel-link { display: inline-flex; align-items: center; justify-content: center; gap: 14px; flex-shrink: 0; border: 1px solid var(--reviews-green); border-radius: 30px; padding: 14px 20px; font-size: 14px; font-weight: 600; text-decoration: none; color: var(--reviews-deep); transition: background .15s; }
#reviews .reviews-channel-link:hover { background: var(--reviews-mint); }
#reviews .reviews-channel-link svg { height: 20px; width: 20px; }
#reviews .reviews-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
#reviews .reviews-card { min-width: 0; display: flex; flex-direction: column; min-height: 265px; padding: 29px 30px 23px; border: 1px solid var(--reviews-line); border-radius: 17px; background: linear-gradient(130deg, #f4f9f4, #ffffff); position: relative; }
#reviews .reviews-card::before { content: "“"; position: absolute; top: 12px; right: 25px; line-height: 1; font: 76px Georgia, serif; color: #ccded0; pointer-events: none; }
#reviews .reviews-theme { position: relative; z-index: 1; margin: 0 50px 21px 0; color: var(--reviews-green); font-size: 12px; font-weight: 650; letter-spacing: .07em; text-transform: uppercase; }
#reviews .reviews-card blockquote { margin: 0 0 27px; position: relative; z-index: 1; }
#reviews .reviews-card blockquote p { margin: 0; font-size: clamp(19px, 1.9vw, 23px); font-weight: 450; letter-spacing: -.02em; line-height: 1.48; overflow-wrap: break-word; }
#reviews .reviews-card blockquote p + p { margin-top: 8px; }
#reviews .reviews-meta { margin-top: auto; padding-top: 17px; border-top: 1px solid var(--reviews-line); display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; }
#reviews .reviews-meta p { margin: 0; font-size: 11px; line-height: 1.6; color: var(--reviews-muted); }
#reviews .reviews-meta time { font-size: 12px; }
#reviews .reviews-meta a { display: inline-flex; align-items: center; gap: 5px; min-height: 36px; font-size: 13px; font-weight: 600; color: var(--reviews-green); text-decoration: none; white-space: nowrap; }
#reviews .reviews-meta a:hover { text-decoration: underline; text-underline-offset: 4px; }
#reviews .reviews-meta svg { width: 18px; height: 18px; }
#reviews .reviews-bottom { display: flex; justify-content: center; margin-top: 28px; }
#reviews .reviews-more { border: 1px solid var(--reviews-line); background: white; color: var(--reviews-green); border-radius: 30px; padding: 14px 25px; font-size: 14px; font-weight: 600; min-height: 48px; }
#reviews .reviews-more:hover { background: var(--reviews-mint); border-color: #a3c0af; }
#reviews .reviews-source-note { max-width: 750px; margin: 27px auto 0; text-align: center; font-size: 12px; line-height: 1.65; color: var(--reviews-muted); }
@media (max-width: 720px) {
  #reviews { width: 100%; padding: 35px 0 10px; }
  #reviews .reviews-top { align-items: flex-start; flex-direction: column; gap: 21px; margin-bottom: 24px; }
  #reviews .reviews-intro { font-size: 15px; margin-top: 15px; }
  #reviews .reviews-grid { grid-template-columns: 1fr; gap: 14px; }
  #reviews .reviews-card { min-height: 230px; padding: 23px 22px 19px; }
  #reviews .reviews-theme { margin-bottom: 19px; }
  #reviews .reviews-card blockquote p { font-size: 21px; }
  #reviews .reviews-channel-link { font-size: 13px; padding: 12px 17px; }
  #reviews .reviews-meta p { font-size: 10px; }
  #reviews .reviews-meta time { font-size: 11px; }
  #reviews .reviews-source-note { text-align: left; }
}
@media (prefers-reduced-motion: reduce) {
  #reviews, #reviews * { scroll-behavior: auto !important; transition: none !important; }
}

/* Match the existing navigation and the three selectable site themes. */
.navigation .wrap{overflow-x:auto}
.navigation .wrap>a{flex-shrink:0}
.navigation .nav-reviews{display:inline-flex;align-items:center;gap:7px;color:var(--green);font-weight:600;white-space:nowrap}
.navigation .nav-reviews svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
#reviews h2{font-family:KarmaFriendly,Karma,sans-serif;font-size:clamp(29px,3.2vw,40px);font-weight:400;letter-spacing:-.8px;color:var(--green)}
#reviews .reviews-card{background:#fffefa}
#reviews .reviews-meta{background:transparent;padding:17px 0 0;color:var(--muted)}
#reviews .reviews-meta p{max-width:none}
#reviews .reviews-card blockquote p{font-family:KarmaFriendly,Karma,sans-serif;font-weight:400}
#reviews .reviews-more{font-family:inherit}
html[data-theme="light"] #reviews{--reviews-mint:#edf5f5}
html[data-theme="light"] #reviews .reviews-card{background:#fff}
html[data-theme="light"] #reviews .reviews-card::before{color:#d6e8e8}
html[data-theme="dark"] #reviews{--reviews-mint:#30402d}
html[data-theme="dark"] #reviews .reviews-card{background:#242f25}
html[data-theme="dark"] #reviews .reviews-card::before{color:#4a5b42}
html[data-theme="dark"] #reviews .reviews-more{background:#242f25}
@media(max-width:700px){#reviews .reviews-card{border-radius:14px}#reviews .reviews-card blockquote p{font-size:21px}}
