@font-face {
  font-family: "Akrobat RULATAM Headline";
  src: url("/assets/fonts/akrobat/Akrobat-RULATAM-Headline.woff2?v=20260520-site-foundation-1") format("woff2");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter Tight RULATAM";
  src: url("/assets/fonts/inter-tight/InterTight-Medium-RULATAM.woff2?v=20260520-site-foundation-1") format("woff2");
  font-weight: 400 800;
  font-style: normal;
  font-display: swap;
}

/*
  RULATAM site foundation.
  Layer 1: shared tokens, typography roles, repeated components.
  Page CSS may tune layout around these components, but must not redefine their
  base typography, card geometry, or small-text rules unless the block is unique.
*/

:root {
  --r-site-font-heading: "Akrobat RULATAM Headline", "Inter Tight RULATAM", "Inter Tight", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --r-site-font-compact: "Inter Tight RULATAM", "Inter Tight", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --r-site-font-body: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;

  --r-site-blue: #1f2530;
  --r-site-blue-soft: #242a36;
  --r-site-ink: #1f2530;
  --r-site-muted: #626b76;
  --r-site-muted-soft: #7c8490;
  --r-site-gold: #c1a57a;
  --r-site-white: #ffffff;
  --r-site-champagne: #fffaf0;
  --r-site-line: rgba(31, 37, 48, .12);

  --r-site-container: 1200px;
  --r-site-container-readable: 1120px;
  --r-site-gutter: 40px;
  --r-site-gutter-mobile: 20px;
  --r-site-section-y: 72px;
  --r-site-section-y-mobile: 52px;
  --r-site-same-bg-gap: 36px;
  --r-site-same-bg-gap-mobile: 28px;
  --r-site-head-gap: 32px;
  --r-site-grid-gap: 16px;

  --r-type-hero-title-size: clamp(54px, 7vw, 100px);
  --r-type-hero-title-line: 1.08;
  --r-type-section-title-size: clamp(34px, 3.1vw, 40px);
  --r-type-section-title-line: 1.02;
  --r-type-subtitle-size: 18px;
  --r-type-subtitle-line: 1.28;
  --r-type-body-size: 15px;
  --r-type-body-line: 1.62;
  --r-type-lead-size: 17px;
  --r-type-lead-line: 1.5;
  --r-type-small-size: 13px;
  --r-type-small-line: 1.46;
  --r-type-footnote-size: 12px;
  --r-type-footnote-line: 1.55;
  --r-type-button-size: 12px;
  --r-type-button-line: 1;

  --r-card-radius: 18px;
  --r-card-bg: rgba(255, 255, 255, .72);
  --r-card-border: 1px solid transparent;
  --r-card-shadow: inset 0 1px 0 rgba(255, 255, 255, .74), inset 0 -1px 0 rgba(31, 37, 48, .08);
}

body {
  background: var(--r-site-champagne);
  font-family: var(--r-site-font-body);
  font-size: var(--r-type-body-size);
  line-height: var(--r-type-body-line);
  color: var(--r-site-ink);
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.r-site-body {
  margin: 0;
  color: var(--r-site-ink);
  font-family: var(--r-site-font-body);
  font-size: var(--r-type-body-size);
  font-weight: 400;
  line-height: var(--r-type-body-line);
  letter-spacing: 0;
}

.r-site-container,
:where(.rltm-faq-container, .rltm-reviews-container) {
  box-sizing: border-box;
  width: min(var(--r-site-container), calc(100% - (var(--r-site-gutter) * 2)));
  max-width: var(--r-site-container);
  margin-inline: auto;
  padding-inline: 0;
}

.r-site-title,
.r-site-section-title,
:where(
  .rltm-faq-title,
  .rltm-reviews-title,
  .r-press-main__title,
  .r-geo-philosophy__title,
  .country-geo-smartnav-title,
  .rltm-geo-trust-title,
  .rltm-cta-h2-signature
) {
  margin: 0;
  color: var(--r-site-ink);
  font-family: var(--r-site-font-heading);
  font-size: var(--r-type-section-title-size);
  font-weight: 800;
  line-height: var(--r-type-section-title-line);
  letter-spacing: 0;
  text-transform: none;
}

.r-site-hero-title {
  margin: 0;
  color: var(--r-site-white);
  font-family: var(--r-site-font-heading);
  font-size: var(--r-type-hero-title-size);
  font-weight: 900;
  line-height: var(--r-type-hero-title-line);
  letter-spacing: -.018em;
  text-transform: uppercase;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}

.r-site-lead,
.r-site-section-lead,
:where(.rltm-faq-lead, .rltm-reviews-lead, .r-press-main__lead, .country-geo-smartnav-lead) {
  margin: 0;
  color: var(--r-site-muted);
  font-family: var(--r-site-font-compact);
  font-size: var(--r-type-lead-size);
  font-weight: 500;
  line-height: var(--r-type-lead-line);
  letter-spacing: 0;
}

.r-site-label {
  font-family: var(--r-site-font-compact);
  font-size: var(--r-type-label-size, 10px);
  font-weight: 760;
  line-height: var(--r-type-label-line, 1.1);
  letter-spacing: .13em;
  text-transform: uppercase;
}

.r-site-card-title,
:where(.country-geo-title) {
  margin: 0;
  color: var(--r-site-ink);
  font-family: var(--r-site-font-heading);
  font-size: var(--r-type-card-title-size, clamp(30px, 3.8vw, 46px));
  font-weight: 800;
  line-height: var(--r-type-card-title-line, 1);
  letter-spacing: 0;
  text-transform: none;
}

.r-site-subtitle,
.r-site-section-subtitle,
:where(
  .country-geo-smartnav-subtitle,
  .country-geo-info-title,
  .country-geo-strategy-note-title,
  .rltm-geo-trust-card-title
) {
  margin: 0;
  color: var(--r-site-ink);
  font-family: var(--r-site-font-compact);
  font-size: var(--r-type-subtitle-size);
  font-weight: 650;
  line-height: var(--r-type-subtitle-line);
  letter-spacing: 0;
  text-transform: none;
}

.r-site-small,
.r-site-footnote,
:where(.rltm-reviews-footnote, .rltm-reviews-footnote p, .rltm-faq-note) {
  color: var(--r-site-muted-soft);
  font-family: var(--r-site-font-body);
  font-size: var(--r-type-footnote-size);
  font-weight: 400;
  line-height: var(--r-type-footnote-line);
  letter-spacing: .01em;
}

.r-action,
.r-site-button {
  font-family: var(--r-site-font-compact);
  font-size: var(--r-type-button-size);
  font-weight: 760;
  line-height: var(--r-type-button-line);
  letter-spacing: .09em;
  text-transform: uppercase;
}

.r-site-card {
  border: var(--r-card-border);
  border-radius: var(--r-card-radius);
  background: var(--r-card-bg);
  box-shadow: var(--r-card-shadow);
}

#rltm-faq-v8 {
  scroll-margin-top: 96px;
  padding: var(--r-site-section-y) 0;
  background: var(--r-site-white);
  color: var(--r-site-ink);
  font-family: var(--r-site-font-body);
}

#rltm-faq-v8 *,
#rltm-faq-v8 *::before,
#rltm-faq-v8 *::after {
  box-sizing: border-box;
}

#rltm-faq-v8 .rltm-faq-container {
  width: min(var(--r-site-container), calc(100% - (var(--r-site-gutter) * 2)));
  max-width: var(--r-site-container);
  padding: 0;
}

#rltm-faq-v8 .rltm-faq-head {
  width: 100%;
  margin: 0 0 var(--r-site-head-gap);
}

#rltm-faq-v8 .rltm-faq-title {
  margin: 0 0 18px;
}

#rltm-faq-v8 .rltm-faq-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--r-site-grid-gap);
  width: 100%;
}

#rltm-faq-v8 .rltm-faq-item {
  position: relative;
  overflow: hidden;
  border: var(--r-card-border);
  border-radius: var(--r-card-radius);
  background: var(--r-card-bg);
  box-shadow: var(--r-card-shadow);
}

#rltm-faq-v8 .rltm-faq-question {
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
  padding: 22px 58px 22px 24px;
  border: 0;
  background: transparent;
  color: var(--r-site-ink);
  font-family: var(--r-site-font-body);
  font-size: var(--r-type-subtitle-size);
  font-weight: 760;
  line-height: var(--r-type-subtitle-line);
  letter-spacing: -.025em;
  text-align: left;
  text-transform: none;
  cursor: pointer;
}

#rltm-faq-v8 .rltm-faq-question::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 24px;
  width: 12px;
  height: 12px;
  border-right: 2px solid var(--r-site-gold);
  border-bottom: 2px solid var(--r-site-gold);
  transform: translateY(-62%) rotate(45deg);
  transition: transform .22s ease;
}

#rltm-faq-v8 .rltm-faq-item.is-open .rltm-faq-question::after {
  transform: translateY(-35%) rotate(225deg);
}

#rltm-faq-v8 .rltm-faq-answer {
  display: none;
  padding: 0 24px 22px;
}

#rltm-faq-v8 .rltm-faq-item.is-open .rltm-faq-answer {
  display: block;
}

#rltm-faq-v8 .rltm-faq-answer p {
  margin: 0;
  color: var(--r-site-muted);
  font-family: var(--r-site-font-body);
  font-size: var(--r-type-body-size);
  font-weight: 400;
  line-height: var(--r-type-body-line);
}

#rltm-faq-v8 .rltm-faq-note {
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid var(--r-site-line);
}

#rltm-reviews-v35 {
  scroll-margin-top: 96px;
  padding: var(--r-site-section-y) 0;
  background: var(--r-site-champagne);
  color: var(--r-site-ink);
  font-family: var(--r-site-font-body);
}

#rltm-reviews-v35 *,
#rltm-reviews-v35 *::before,
#rltm-reviews-v35 *::after {
  box-sizing: border-box;
}

#rltm-reviews-v35 .rltm-reviews-container {
  width: min(var(--r-site-container), calc(100% - (var(--r-site-gutter) * 2)));
  max-width: var(--r-site-container);
  padding: 0;
}

#rltm-reviews-v35 .rltm-reviews-top {
  display: grid;
  grid-template-columns: minmax(0, 60%) minmax(390px, 1fr);
  align-items: start;
  gap: 28px 0;
  width: min(100%, var(--r-site-container-readable));
  margin: 0 0 58px;
}

#rltm-reviews-v35 .rltm-reviews-head {
  min-width: 0;
  max-width: none;
}

#rltm-reviews-v35 .rltm-reviews-title {
  max-width: none;
  white-space: nowrap;
}

#rltm-reviews-v35 .rltm-reviews-lead {
  max-width: 650px;
  margin-top: 20px;
  color: var(--r-site-muted);
  font-weight: 520;
}

#rltm-reviews-v35 .rltm-rating-strip {
  justify-self: end;
  width: 390px;
  max-width: 390px;
  margin: 0;
  padding: 22px 24px;
  border-radius: 18px;
  background: var(--r-site-blue);
  color: #fff;
  box-shadow: 0 24px 60px -42px rgba(31, 37, 48, .64), inset 0 1px 0 rgba(255, 255, 255, .12);
}

#rltm-reviews-v35 .rltm-rating-row {
  display: flex;
  align-items: center;
  gap: 14px;
}

#rltm-reviews-v35 .rltm-rating-brand,
#rltm-reviews-v35 .rltm-rating-center,
#rltm-reviews-v35 .rltm-rating-cta {
  display: flex;
  flex-direction: column;
}

#rltm-reviews-v35 .rltm-rating-logo {
  display: block;
  max-width: 96px;
  height: auto;
}

#rltm-reviews-v35 .rltm-rating-source,
#rltm-reviews-v35 .rltm-rating-cta {
  color: rgba(255, 255, 255, .72);
  font-family: var(--r-site-font-compact);
  font-size: 8px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: .18em;
  text-transform: uppercase;
}

#rltm-reviews-v35 .rltm-rating-score {
  color: #fff;
  font-family: var(--r-site-font-body);
  font-size: 44px;
  font-weight: 760;
  line-height: .9;
  letter-spacing: -.04em;
}

#rltm-reviews-v35 .rltm-rating-stars,
#rltm-reviews-v35 .rltm-review-stars {
  color: #ffc533;
  letter-spacing: .04em;
}

#rltm-reviews-v35 .rltm-rating-note {
  width: min(100%, 372px);
  max-width: 372px;
  margin: 14px auto 0;
  padding-top: 13px;
  border-top: 1px solid rgba(255, 255, 255, .12);
  color: rgba(255, 255, 255, .78);
  font-family: var(--r-site-font-compact);
  font-size: 11.5px;
  font-weight: 420;
  line-height: 1.32;
  letter-spacing: -.01em;
  text-align: center;
}

#rltm-reviews-v35 .rltm-reviews-control-row {
  display: flex;
  justify-content: flex-end;
  gap: 18px;
  margin: -8px 0 22px;
}

#rltm-reviews-v35 .rltm-review-control {
  width: 42px;
  height: 42px;
  border: 0;
  background: transparent;
  color: var(--r-site-gold);
  font: inherit;
  cursor: pointer;
}

#rltm-reviews-v35 .rltm-reviews-track-wrap {
  overflow: hidden;
}

#rltm-reviews-v35 .rltm-reviews-track {
  display: flex;
  gap: 20px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

#rltm-reviews-v35 .rltm-reviews-track::-webkit-scrollbar {
  display: none;
}

#rltm-reviews-v35 .rltm-review-card {
  flex: 0 0 282px;
  width: 282px;
  min-height: 248px;
  scroll-snap-align: start;
  padding: 26px 24px 24px;
  border: var(--r-card-border);
  border-radius: var(--r-card-radius);
  background: rgba(255, 255, 255, .82);
  box-shadow: var(--r-card-shadow);
  font-family: var(--r-site-font-compact);
}

#rltm-reviews-v35 .rltm-review-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

#rltm-reviews-v35 .rltm-review-name {
  margin: 0;
  color: var(--r-site-ink);
  font-family: var(--r-site-font-compact);
  font-size: 18px;
  font-weight: 650;
  line-height: 1.08;
  letter-spacing: -.01em;
}

#rltm-reviews-v35 .rltm-review-text {
  margin: 0;
  color: #3c4350;
  font-family: var(--r-site-font-compact);
  font-size: 15px;
  font-weight: 380;
  line-height: 1.44;
  letter-spacing: -.005em;
}

#rltm-reviews-v35 .rltm-review-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  color: #a88750;
  font-family: var(--r-site-font-body);
  font-size: var(--r-type-footnote-size);
  font-weight: 760;
  line-height: var(--r-type-footnote-line);
  letter-spacing: .12em;
  text-transform: uppercase;
  text-decoration: none;
}

#rltm-reviews-v35 .rltm-reviews-footnote {
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid rgba(31, 37, 48, .10);
}

#rltm-reviews-v35 .rltm-reviews-footnote p {
  margin: 0;
}

#rltm-reviews-v35 .rltm-reviews-footnote p + p {
  margin-top: 10px;
}

@media (max-width: 980px) {
  #rltm-reviews-v35 .rltm-reviews-top {
    grid-template-columns: 1fr;
    width: 100%;
  }

  #rltm-reviews-v35 .rltm-reviews-title {
    white-space: normal;
  }

  #rltm-reviews-v35 .rltm-rating-strip {
    justify-self: start;
  }
}

@media (max-width: 699px) {
  :root {
    --r-site-gutter: var(--r-site-gutter-mobile);
    --r-site-section-y: var(--r-site-section-y-mobile);
    --r-type-section-title-size: clamp(30px, 10vw, 38px);
    --r-type-lead-size: 16px;
  }

  #rltm-faq-v8 .rltm-faq-grid {
    grid-template-columns: 1fr;
  }

  #rltm-faq-v8 .rltm-faq-question {
    padding: 20px 52px 20px 20px;
    font-size: 16px;
  }

  #rltm-reviews-v35 .rltm-rating-strip {
    width: 100%;
    max-width: 390px;
  }

  #rltm-reviews-v35 .rltm-review-card {
    flex-basis: 82vw;
    width: 82vw;
    min-width: 290px;
  }
}

/* Compatibility mappings: current geo classes attach to the site typography roles. */
.r-geo-page {
  --r-font-heading: var(--r-site-font-heading);
  --r-font-subheading: var(--r-site-font-compact);
  --r-font-body: var(--r-site-font-body);
  --r-type-hero-title-size: clamp(54px, 7vw, 100px);
  --r-type-hero-title-line: 1.26;
  --r-type-section-title-size: clamp(34px, 3.1vw, 40px);
  --r-type-section-title-line: 1.02;
  --r-type-card-title-size: clamp(30px, 3.8vw, 46px);
  --r-type-card-title-line: 1;
  --r-type-subtitle-size: 18px;
  --r-type-subtitle-line: 1.22;
  --r-type-lead-size: 16px;
  --r-type-lead-line: 1.5;
  --r-type-body-size: 15px;
  --r-type-body-line: 1.62;
  --r-type-small-size: 13px;
  --r-type-small-line: 1.42;
  --r-type-footnote-size: 12px;
  --r-type-footnote-line: 1.55;
  --r-type-label-size: 10px;
  --r-type-label-line: 1.1;
  --r-type-button-size: 12px;
  --r-type-button-line: 1;
  font-family: var(--r-font-body);
  font-size: var(--r-type-body-size);
  font-weight: 400;
  line-height: var(--r-type-body-line);
  letter-spacing: 0;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.r-geo-page :where(p, li, dd, dt) {
  font-family: var(--r-font-body);
  font-size: var(--r-type-body-size);
  font-weight: 400;
  line-height: var(--r-type-body-line);
  letter-spacing: 0;
}

.r-geo-page :where(.r-site-lead, .r-site-section-lead, .rltm-faq-lead, .rltm-reviews-lead, .r-press-main__lead, .country-geo-smartnav-lead) {
  font-family: var(--r-font-subheading);
  font-size: var(--r-type-lead-size);
  font-weight: 500;
  line-height: var(--r-type-lead-line);
  letter-spacing: 0;
}

.r-geo-page :where(.r-site-small, .r-site-footnote, .rltm-reviews-footnote, .rltm-reviews-footnote p, .rltm-faq-note) {
  color: var(--r-site-muted-soft);
  font-family: var(--r-font-body);
  font-size: var(--r-type-footnote-size);
  font-weight: 400;
  line-height: var(--r-type-footnote-line);
  letter-spacing: .01em;
}

.r-geo-page :where(.r-geo-hero__title) {
  font-family: var(--r-font-heading);
  font-size: var(--r-type-hero-title-size);
  font-weight: 900;
  line-height: var(--r-type-hero-title-line);
  letter-spacing: -.018em;
  text-transform: uppercase;
}

.r-geo-page :where(
  .r-geo-philosophy__title,
  .country-geo-smartnav-title,
  .r-press-main__title,
  .rltm-geo-trust-title,
  .rltm-reviews-title,
  .rltm-faq-title,
  .rltm-cta-h2-signature
) {
  font-family: var(--r-font-heading);
  font-size: var(--r-type-section-title-size);
  font-weight: 800;
  line-height: var(--r-type-section-title-line);
  letter-spacing: 0;
  text-transform: none;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}

.r-geo-page :where(.r-site-card-title, .country-geo-title) {
  font-family: var(--r-font-heading);
  font-size: var(--r-type-card-title-size);
  font-weight: 800;
  line-height: var(--r-type-card-title-line);
  letter-spacing: 0;
  text-transform: none;
}

.r-geo-page :where(
  .country-geo-smartnav-subtitle,
  .country-geo-info-title,
  .country-geo-strategy-note-title,
  .rltm-geo-trust-card-title
) {
  font-family: var(--r-font-subheading);
  font-size: var(--r-type-subtitle-size);
  font-weight: 650;
  line-height: var(--r-type-subtitle-line);
  letter-spacing: 0;
  text-transform: none;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.r-geo-page :where(
  .r-geo-breadcrumbs,
  .r-geo-hero__description,
  .r-geo-country,
  .country-geo-kicker,
  .country-geo-smartnav-kicker,
  .country-geo-smartnav-alert-title,
  .country-geo-links-title,
  .rltm-geo-trust-subtitle,
  .rltm-geo-trust-caption
) {
  font-family: var(--r-font-subheading);
  font-size: var(--r-type-label-size);
  font-weight: 760;
  line-height: var(--r-type-label-line);
  letter-spacing: .13em;
  text-transform: uppercase;
}

.r-geo-page :where(
  .country-geo-smartnav-hint,
  .country-geo-smartnav-task-note,
  .country-geo-smartnav-country-role,
  .country-geo-smartnav-alert-text,
  .country-geo-filter-note-text,
  .country-geo-links-list a,
  .rltm-rating-note,
  .r-footer__note,
  .r-footer__copyright,
  .r-footer__legal-nav a
) {
  font-family: var(--r-font-body) !important;
  font-size: var(--r-type-small-size) !important;
  font-weight: 400 !important;
  line-height: var(--r-type-small-line) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.r-geo-page :where(
  .r-geo-hero__button,
  .country-geo-consult-btn,
  .country-geo-smartnav-alert-btn,
  #rltm-cta-split .rltm-cta-link-label,
  button,
  .r-action
) {
  font-family: var(--r-font-subheading);
  font-size: var(--r-type-button-size);
  font-weight: 650;
  line-height: var(--r-type-button-line);
  letter-spacing: .9px;
  text-transform: uppercase;
}

@media (max-width: 699px) {
  .r-geo-page {
    --r-type-hero-title-size: clamp(36px, 9.6vw, 39px);
    --r-type-hero-title-line: 1.06;
    --r-type-section-title-size: 34px;
    --r-type-card-title-size: clamp(27px, 7.2vw, 34px);
    --r-type-subtitle-size: 18px;
  }
}

/* Federal RULATAM reviews component. Source of truth for review blocks site-wide. */
.r-site-reviews {
  background: var(--r-site-bg, #fffaf0);
  color: var(--r-site-ink, #1f2530);
}

.r-site-reviews-container {
  box-sizing: border-box;
  width: min(var(--r-site-container, 1200px), calc(100vw - (var(--r-site-gutter, 40px) * 2)));
  max-width: var(--r-site-container, 1200px);
  margin: 0 auto;
  padding: 0;
}

.r-site-reviews-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 390px;
  gap: clamp(28px, 4vw, 44px);
  align-items: start;
  margin: 0 0 24px;
}

.r-site-reviews-head { max-width: 720px; }

.r-site-reviews-title {
  margin: 0 0 16px;
  color: var(--r-site-ink, #1f2530);
  font-family: var(--r-site-font-heading, "Akrobat RULATAM Headline", "Inter Tight", Inter, system-ui, sans-serif);
  font-size: clamp(34px, 3.1vw, 40px);
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: .002em;
}

.r-site-reviews-lead {
  max-width: 680px;
  margin: 0;
  color: var(--r-site-muted, #626b76);
  font-family: var(--r-site-font-body, Inter, system-ui, sans-serif);
  font-size: 16px;
  font-weight: 350;
  line-height: 1.5;
  letter-spacing: -.01em;
}

.r-site-rating-strip {
  width: 100%;
  min-height: 94px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  padding: 16px 18px 15px;
  border: 1px solid rgba(193, 165, 122, .24);
  border-radius: 22px;
  background: var(--r-site-blue, #1f2530);
  box-shadow: 0 18px 38px -30px rgba(31, 37, 48, .72);
  color: #fff;
  text-decoration: none;
}

.r-site-rating-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
}

.r-site-rating-brand {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.r-site-rating-logo {
  display: block;
  width: 92px;
  height: auto;
  margin: 0 0 5px;
}

.r-site-rating-source {
  color: rgba(255, 255, 255, .52);
  font-size: 7px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: .15em;
  text-transform: uppercase;
  white-space: nowrap;
}

.r-site-rating-center {
  display: flex;
  flex: 1 1 auto;
  min-width: 0;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

.r-site-rating-score {
  color: #fff;
  font-family: var(--r-site-font-heading, "Akrobat RULATAM Headline", "Inter Tight", Inter, system-ui, sans-serif);
  font-size: 44px;
  font-weight: 820;
  line-height: .9;
  letter-spacing: -.055em;
  white-space: nowrap;
}

.r-site-rating-stars {
  display: inline-flex;
  width: 82px;
  height: 16px;
  align-items: center;
  transform: translateY(2px);
}

.r-site-rating-stars svg {
  display: block;
  width: 82px;
  height: 16px;
}

.r-site-rating-cta {
  flex: 0 0 auto;
  color: rgba(255, 255, 255, .72);
  font-size: 9px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: .11em;
  text-transform: uppercase;
  white-space: nowrap;
}

.r-site-rating-note {
  width: 100%;
  padding-top: 2px;
  border-top: 1px solid rgba(255, 255, 255, .08);
  color: rgba(255, 255, 255, .72);
  font-size: 10px;
  font-weight: 650;
  line-height: 1.3;
  text-align: center;
}

.r-site-reviews-control-row {
  display: flex;
  min-height: 34px;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin: 0 0 12px;
}

.r-site-review-control {
  display: inline-flex;
  width: 44px;
  height: 34px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--r-site-gold-dark, #9f7b43);
  cursor: pointer;
  opacity: .88;
  transition: opacity .2s ease, transform .2s ease;
  -webkit-tap-highlight-color: transparent;
}

.r-site-review-control:hover { opacity: 1; transform: translateY(-1px); }

.r-site-review-control svg {
  display: block;
  width: 30px;
  height: 18px;
  overflow: visible;
}

.r-site-review-control path {
  fill: none;
  stroke: currentColor;
  stroke-width: 4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.r-site-reviews-track-wrap {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
}

.r-site-reviews-track-wrap::-webkit-scrollbar { display: none; }

.r-site-reviews-track {
  display: flex;
  gap: 12px;
  width: max-content;
  padding: 0 0 10px;
}

.r-site-review-card {
  position: relative;
  flex: 0 0 280px;
  width: 280px;
  min-height: 238px;
  padding: 22px 22px 20px;
  overflow: hidden;
  border: 1px solid var(--r-site-line, rgba(31, 37, 48, .08));
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 16px 36px -30px rgba(31, 37, 48, .42);
  scroll-snap-align: start;
}

.r-site-review-card::before {
  content: "";
  position: absolute;
  top: 20px;
  bottom: 20px;
  left: 0;
  width: 3px;
  border-radius: 0 999px 999px 0;
  background: var(--r-site-gold, #c1a57a);
  opacity: .86;
}

.r-site-review-card-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
  margin-bottom: 10px;
}

.r-site-review-name {
  margin: 0;
  color: var(--r-site-ink, #1f2530);
  font-family: var(--r-site-font-compact, "Inter Tight", Inter, system-ui, sans-serif);
  font-size: 18px;
  font-weight: 780;
  line-height: 1.12;
  letter-spacing: -.025em;
}

.r-site-review-stars {
  color: #fbbc05;
  font-size: 13px;
  line-height: 1;
  letter-spacing: .04em;
  white-space: nowrap;
  transform: translateY(2px);
}

.r-site-review-text {
  display: -webkit-box;
  height: 104px;
  margin: 0 0 22px;
  overflow: hidden;
  color: #374151;
  font-family: var(--r-site-font-body, Inter, system-ui, sans-serif);
  font-size: 14px;
  line-height: 1.52;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
}

.r-site-review-link {
  position: absolute;
  bottom: 20px;
  left: 22px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--r-site-gold-dark, #9f7b43);
  font-size: 10px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: .09em;
  text-transform: uppercase;
  text-decoration: none;
}

.r-site-review-link::after {
  content: "→";
  font-size: 13px;
  line-height: 1;
  transform: translateY(-1px);
}

.r-site-reviews-footnote {
  max-width: 1120px;
  margin: 20px 0 0;
  padding-top: 18px;
  border-top: 1px solid rgba(31, 37, 48, .08);
  color: var(--r-site-muted, #626b76);
  font-size: 10.5px;
  line-height: 1.5;
}

.r-site-reviews-footnote p { margin: 0; }
.r-site-reviews-footnote p + p { margin-top: 10px; }
.r-site-reviews-footnote a { color: var(--r-site-gold-dark, #9f7b43); border-bottom: 1px solid rgba(181,127,45,.28); }

@media (max-width: 980px) {
  .r-site-reviews-top { grid-template-columns: 1fr; }
  .r-site-rating-strip { width: min(100%, 390px); }
}

@media (max-width: 699px) {
  .r-site-reviews-container { width: min(100%, calc(100vw - 32px)); }
  .r-site-reviews-top { gap: 24px; margin-bottom: 22px; }
  .r-site-reviews-title { font-size: clamp(34px, 10vw, 40px); line-height: 1.02; }
  .r-site-reviews-lead { font-size: 15px; line-height: 1.5; }
  .r-site-rating-strip { min-height: 90px; padding: 15px; border-radius: 20px; gap: 9px; }
  .r-site-rating-row { gap: 10px; }
  .r-site-rating-logo { width: 82px; }
  .r-site-rating-source { font-size: 6.5px; letter-spacing: .13em; }
  .r-site-rating-center { gap: 7px; }
  .r-site-rating-score { font-size: 38px; }
  .r-site-rating-stars, .r-site-rating-stars svg { width: 74px; height: 15px; }
  .r-site-rating-cta { font-size: 8px; }
  .r-site-rating-note { font-size: 9px; line-height: 1.25; }
  .r-site-reviews-control-row { padding: 0; margin-bottom: 12px; }
  .r-site-reviews-track { padding: 0 0 10px; }
  .r-site-review-card { flex-basis: min(82vw, 320px); width: min(82vw, 320px); min-width: 290px; }
  .r-site-reviews-footnote { margin-top: 20px; }
}
