:root {
  --rrt-primary: #9f1d20;
  --rrt-primary-dark: #721316;
  --rrt-ink: #18212b;
  --rrt-muted: #f4f6f7;
  --rrt-border: #d9dee3;
  --rrt-radius: 0.75rem;
  --rrt-shadow: 0 1rem 2.5rem rgba(24, 33, 43, 0.10);
}

.rrt-site-main { color: var(--rrt-ink); }
.rrt-wrap { width: min(1120px, calc(100% - 2rem)); margin-inline: auto; }
.rrt-section { padding: clamp(3.5rem, 7vw, 6rem) 0; }
.rrt-section--muted { background: var(--rrt-muted); }
.rrt-hero { padding: clamp(4rem, 9vw, 8rem) 0; background: linear-gradient(135deg, #fff 50%, var(--rrt-muted)); }
.rrt-hero__grid, .rrt-split { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.rrt-hero h1 { max-width: 17ch; margin-bottom: 1.25rem; font-size: clamp(2.5rem, 6vw, 4.75rem); line-height: 1.02; }
.rrt-hero__image { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--rrt-radius); box-shadow: var(--rrt-shadow); }
.rrt-eyebrow { color: var(--rrt-primary); font-size: .85rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.rrt-lead { max-width: 62ch; font-size: clamp(1.1rem, 2vw, 1.35rem); }
.rrt-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.75rem; }
.rrt-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: .8rem 1.15rem; border: 2px solid var(--rrt-primary); border-radius: .4rem; background: var(--rrt-primary); color: #fff; font-weight: 750; text-decoration: none; }
.rrt-button:hover, .rrt-button:focus-visible { background: var(--rrt-primary-dark); border-color: var(--rrt-primary-dark); color: #fff; }
.rrt-button--secondary { background: transparent; color: var(--rrt-primary); }
.rrt-trust { border-block: 1px solid var(--rrt-border); }
.rrt-trust__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.rrt-trust p { margin: 0; padding: 1.1rem; text-align: center; font-weight: 700; }
.rrt-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: 2rem; }
.rrt-card, .rrt-panel { padding: 1.5rem; border: 1px solid var(--rrt-border); border-radius: var(--rrt-radius); background: #fff; box-shadow: 0 .4rem 1.2rem rgba(24, 33, 43, .05); }
.rrt-card h3 { margin-top: 0; }
.rrt-panel address { margin-bottom: 1.25rem; font-style: normal; }
.rrt-hours { display: flex; justify-content: space-between; gap: 1rem; margin: .45rem 0; }
.rrt-contact { background: var(--rrt-ink); color: #fff; }
.rrt-contact h2, .rrt-contact .rrt-eyebrow { color: #fff; }

@media (max-width: 760px) {
  .rrt-hero__grid, .rrt-split, .rrt-card-grid { grid-template-columns: 1fr; }
  .rrt-trust__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 440px) {
  .rrt-trust__grid { grid-template-columns: 1fr; }
  .rrt-actions, .rrt-button { width: 100%; }
}

