body.rs-site {
  --rs-ink:#21172f;
  --rs-dark:#291b42;
  --rs-paper:#faf8f3;
  --rs-lime:#def475;
  --rs-line:#c7bfd1;
  --rs-lavender:#e9e1f5;
  margin:0;
  background:var(--rs-paper);
  color:var(--rs-ink);
  font: 1rem/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body.rs-action { --rs-dark:#211d28; --rs-lime:#f9be75; --rs-lavender:#fae9d4; }
.rs-site *, .rs-site *::before,.rs-site *::after { box-sizing:border-box; }
.rs-site a { color:inherit; text-underline-offset:.19em; }
.rs-site :focus-visible { outline:3px solid #ab48ee; outline-offset:4px; }
.rs-site :where(h1,h2,h3) { line-height:1.08; letter-spacing:-.035em; margin:0 0 .5em; overflow-wrap:anywhere; }
.rs-site :where(h1,h2,h3) { font-weight:750; }
.rs-site h1 { font-size:clamp(2.65rem, 7vw, 6.35rem); }
.rs-site h2 { font-size:clamp(1.65rem, 3.7vw, 3rem); }
.rs-site h3 { font-size:clamp(1.2rem, 2.2vw, 1.55rem); }
.rs-site p { margin:0 0 1em; }
.rs-site img { display:block; max-width:100%; height:auto; }
.rs-wrap { width:min(100% - 2.5rem, 78rem); margin-inline:auto; }
.rs-skip { position:fixed; left:1rem; top:1rem; transform:translateY(-200%); z-index:100000; padding:.75rem 1rem; background:#fff; }
.rs-skip:focus { transform:none; }
.rs-preview { background:var(--rs-lime); padding:.38rem 1rem; text-align:center; font-size:.79rem; font-weight:750; }
.rs-header { background:var(--rs-paper); border-bottom:1px solid var(--rs-line); }
.rs-header-inner { min-height:5.5rem; display:flex; justify-content:space-between; align-items:center; gap:1rem 2rem; padding-block:.8rem; }
.rs-brand { display:inline-flex; gap:.62rem; align-items:center; font-size:1.52rem; font-weight:850; line-height:.94; letter-spacing:-.065em; text-decoration:none; }
.rs-brand small { display:block; font-size:.82rem; font-weight:680; letter-spacing:.025em; margin-top:.35rem; }
.rs-brand-mark { width:2rem; height:2rem; border:4px solid currentColor; border-radius:50% 48% 16% 48%; transform:rotate(-16deg); }
.rs-header nav,.rs-footer nav { display:flex; flex-wrap:wrap; align-items:center; gap:.25rem 1.35rem; }
.rs-header nav a,.rs-footer nav a { min-height:2.75rem; display:inline-flex; align-items:center; gap:.3rem; font-weight:680; font-size:.93rem; }
.rs-header nav a:not(:hover):not([aria-current]) { text-decoration:none; }
.rs-nav-cta { background:var(--rs-lime); padding:.35rem .85rem; border:1px solid var(--rs-ink); }
.rs-hero,.rs-page-title { background:var(--rs-dark); color:#fff; }
.rs-hero-grid { display:grid; grid-template-columns:1.03fr 1fr; gap:clamp(1.5rem,4vw,4.5rem); align-items:center; padding-block:clamp(2.75rem,7vw,6rem); }
.rs-action .rs-hero-grid { grid-template-columns:minmax(0,45rem); }
.rs-hero h1 { max-width:12ch; font-size:clamp(2.8rem, 6.1vw, 5.9rem); line-height:.99; letter-spacing:-.065em; }
.rs-hero-copy > p:not(.rs-label) { max-width:39ch; font-size:clamp(1.02rem,1.8vw,1.25rem); color:#f0eaf7; }
.rs-hero-image { overflow:hidden; background:#493466; }
.rs-hero-image img { width:100%; aspect-ratio:3/2; object-fit:cover; }
.rs-label { font-size:.78rem; letter-spacing:.105em; font-weight:800; text-transform:uppercase; }
.rs-hero .rs-label { color:var(--rs-lime); margin-bottom:1rem; }
.rs-buttons { display:flex; flex-wrap:wrap; gap:.7rem; align-items:center; margin-top:1.4rem; }
.rs-site .rs-button { display:inline-flex; align-items:center; justify-content:center; gap:.5em; min-height:2.75rem; padding:.6rem 1rem; font:inherit; font-weight:750; color:var(--rs-ink); background:var(--rs-lime); border:1px solid var(--rs-ink); text-decoration:none; cursor:pointer; }
.rs-site .rs-button:hover { box-shadow:inset 0 -3px currentColor; }
.rs-site .rs-outline { color:inherit; background:transparent; border-color:currentColor; }
.rs-hero .rs-button:not(.rs-outline) { border-color:var(--rs-lime); }
.rs-page-title .rs-wrap { padding-block:clamp(2.1rem,5vw,4.5rem); }
.rs-page-title h1 { margin:0; max-width:22ch; }
.rs-page-title nav { margin-bottom:1rem; }
.rs-content { padding-block:clamp(2rem,5vw,4.5rem); }
.rs-content > :where(p,ul,ol) { max-width:74ch; }
.rs-intro { font-size:clamp(1.08rem,2vw,1.35rem); max-width:62ch; }
.rs-section + .rs-section { margin-top:clamp(2.5rem,6vw,5.5rem); border-top:1px solid var(--rs-line); padding-top:clamp(2rem,5vw,4rem); }
.rs-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-block:1.5rem 2rem; }
.rs-card { background:#fff; border:1px solid var(--rs-line); border-top:4px solid var(--rs-dark); min-width:0; padding:clamp(1rem,2.25vw,1.65rem); }
.rs-card:nth-child(3n + 2) { background:var(--rs-lavender); }
.rs-card p:last-child { margin-bottom:0; }
.rs-card h2 { font-size:1.55rem; }
.rs-filters { background:var(--rs-lavender); padding:1rem; display:grid; grid-template-columns:1.3fr 1fr .85fr auto; gap:.75rem; align-items:end; margin-block:1.5rem 1rem; }
.rs-filters label { display:grid; gap:.32rem; font-weight:720; min-width:0; }
.rs-filters input,.rs-filters select { width:100%; min-height:2.75rem; background:white; color:var(--rs-ink); border:1px solid #655970; border-radius:0; font:inherit; padding:.35rem .6rem; }
.rs-pagination { display:flex; gap:1rem; flex-wrap:wrap; align-items:center; }
.rs-footer { background:var(--rs-dark); color:#fff; padding-block:2rem; }
.rs-footer-grid { display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:.75rem 2rem; }
.rs-footer .rs-footer-brand { font-size:1.35rem; font-weight:800; margin:0; }
.rs-footer .rs-legal { flex-basis:100%; font-size:.86rem; margin:0; }
@media (max-width: 61rem) { .rs-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 48rem) {
  .rs-header-inner { align-items:flex-start; flex-direction:column; }
  .rs-hero-grid { grid-template-columns:1fr; }
  .rs-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 34rem) {
  .rs-wrap { width:calc(100% - 2rem); }
  .rs-header nav { column-gap:.8rem; }
  .rs-grid,.rs-filters { grid-template-columns:1fr; }
}
