.refsw-price-guide {
    --rpg-ink: #10263f;
    --rpg-muted: #5b7187;
    --rpg-navy: #082b54;
    --rpg-blue: #1463ff;
    --rpg-green: #078266;
    --rpg-line: #d8e4ee;
    --rpg-soft: #f4f8fb;
    max-width: 1180px;
    margin: 0 auto;
    padding: 18px 20px 56px;
    color: var(--rpg-ink);
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.refsw-price-guide *, .refsw-price-guide *::before, .refsw-price-guide *::after { box-sizing: border-box; }
.refsw-price-guide [hidden] { display: none !important; }
.rpg-hero { position: relative; display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(230px, .65fr); gap: 28px; align-items: end; overflow: hidden; padding: clamp(28px, 5vw, 52px); border-radius: 28px; background: linear-gradient(135deg, #062b55 0%, #105cc5 62%, #079574 135%); color: #fff; box-shadow: 0 22px 55px rgba(8,43,84,.18); }
.rpg-hero::after { content: ""; position: absolute; width: 280px; height: 280px; right: -100px; top: -130px; border-radius: 50%; background: rgba(255,255,255,.09); }
.rpg-hero-copy, .rpg-purpose { position: relative; z-index: 1; min-width: 0; }
.rpg-kicker, .rpg-eyebrow { display: block; margin-bottom: 9px; color: #1767d8; font-size: 12px; font-weight: 900; letter-spacing: .065em; text-transform: uppercase; }
.rpg-kicker { display: inline-flex; padding: 7px 12px; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; background: rgba(255,255,255,.12); color: #fff; }
.rpg-hero h1 { max-width: 760px; margin: 15px 0 11px; color: #fff; font-size: clamp(34px, 5.2vw, 58px); line-height: 1.04; letter-spacing: -.045em; }
.rpg-hero p { max-width: 760px; margin: 0; color: #e8f3ff; font-size: clamp(16px, 2vw, 19px); line-height: 1.62; }
.rpg-purpose { padding: 18px; border: 1px solid rgba(255,255,255,.22); border-radius: 18px; background: rgba(4,32,64,.25); backdrop-filter: blur(4px); }
.rpg-purpose strong, .rpg-purpose span { display: block; }
.rpg-purpose strong { margin-bottom: 6px; font-size: 16px; }
.rpg-purpose span { color: #dcecff; font-size: 14px; line-height: 1.5; }
.rpg-filter-card, .rpg-method { margin-top: 22px; padding: clamp(22px, 3vw, 30px); border: 1px solid var(--rpg-line); border-radius: 23px; background: #fff; box-shadow: 0 12px 34px rgba(16,38,63,.07); }
.rpg-filter-intro, .rpg-results-head { display: flex; justify-content: space-between; align-items: end; gap: 20px; }
.rpg-filter-intro h2, .rpg-results-head h2, .rpg-method h2 { margin: 0; font-size: clamp(24px, 3vw, 34px); line-height: 1.15; letter-spacing: -.025em; }
.rpg-reset { flex: 0 0 auto; border: 0; padding: 8px 0; background: transparent; color: var(--rpg-blue); font: 800 14px/1.2 inherit; cursor: pointer; }
.rpg-reset:hover, .rpg-reset:focus-visible { text-decoration: underline; }
.rpg-filters { display: grid; grid-template-columns: minmax(260px, 1.5fr) minmax(170px, .7fr) minmax(170px, .7fr); gap: 14px; margin-top: 21px; }
.rpg-field { display: block; min-width: 0; }
.rpg-field > span { display: block; margin: 0 0 7px; font-size: 13px; font-weight: 850; }
.rpg-field input, .rpg-field select { width: 100%; min-width: 0; min-height: 50px; border: 1px solid #b9c9d7; border-radius: 13px; padding: 10px 13px; background: #fff; color: var(--rpg-ink); font: inherit; }
.rpg-field input:focus, .rpg-field select:focus { outline: 3px solid rgba(20,99,255,.14); border-color: var(--rpg-blue); }
.rpg-field select:disabled { background: #f1f5f8; color: #7b8d9d; }
.rpg-summary { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-top: 18px; padding-top: 17px; border-top: 1px solid var(--rpg-line); color: var(--rpg-muted); font-size: 13px; }
.rpg-summary p { margin: 0; }
.rpg-summary p.is-error { color: #a22b2b; font-weight: 750; }
.rpg-summary > div { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.rpg-summary > div span { padding: 6px 9px; border-radius: 999px; background: #eef4f9; white-space: nowrap; }
.rpg-results { margin-top: 30px; }
.rpg-results-head { margin: 0 2px 16px; }
.rpg-results-head > p { max-width: 390px; margin: 0; color: var(--rpg-muted); font-size: 14px; line-height: 1.55; text-align: right; }
.rpg-models { display: grid; gap: 15px; }
.rpg-model-card { overflow: hidden; border: 1px solid var(--rpg-line); border-radius: 20px; background: #fff; box-shadow: 0 9px 27px rgba(16,38,63,.055); }
.rpg-model-card > header { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 20px 22px; border-bottom: 1px solid var(--rpg-line); background: linear-gradient(100deg, #f5f9fd, #fff); }
.rpg-model-card > header > div { min-width: 0; }
.rpg-model-meta { display: block; margin-bottom: 4px; color: var(--rpg-blue); font-size: 11px; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.rpg-model-card h3 { margin: 0; color: var(--rpg-navy); font-size: clamp(21px, 2.4vw, 28px); line-height: 1.15; overflow-wrap: anywhere; }
.rpg-config-count { flex: 0 0 auto; padding: 7px 10px; border-radius: 999px; background: #e8f7f2; color: #08745c; font-size: 12px; font-weight: 850; white-space: nowrap; }
.rpg-column-labels, .rpg-config-row { display: grid; grid-template-columns: minmax(120px, 1.05fr) minmax(115px, .8fr) minmax(150px, 1.15fr) minmax(175px, 1.15fr) minmax(175px, 1.15fr); gap: 14px; align-items: center; }
.rpg-column-labels { padding: 10px 22px; background: #fbfdff; color: #75889a; font-size: 10px; font-weight: 900; letter-spacing: .045em; text-transform: uppercase; }
.rpg-config-row { padding: 17px 22px; border-top: 1px solid #e8eff5; }
.rpg-config-row:first-child { border-top: 0; }
.rpg-config-row > div, .rpg-config-row > a { min-width: 0; }
.rpg-label { display: none; }
.rpg-config-name strong, .rpg-price strong, .rpg-interval strong { display: block; line-height: 1.3; overflow-wrap: anywhere; }
.rpg-config-name strong { font-size: 14px; }
.rpg-price strong { color: var(--rpg-navy); font-size: 20px; letter-spacing: -.02em; }
.rpg-interval strong { font-size: 14px; }
.rpg-interval strong.is-limited { color: var(--rpg-muted); font-size: 12px; font-weight: 750; }
.rpg-secondary { display: flex; flex-direction: column; gap: 3px; color: var(--rpg-muted); font-size: 11px; line-height: 1.35; }
.rpg-quality { width: fit-content; margin-bottom: 2px; padding: 3px 7px; border-radius: 999px; font-weight: 900; }
.rpg-quality.is-strong { background: #e5f6f0; color: #08745c; }
.rpg-quality.is-medium { background: #edf4fc; color: #275f9c; }
.rpg-quality.is-limited { background: #f6f0e5; color: #835d12; }
.rpg-trend { font-weight: 850; }
.rpg-trend.is-down { color: #08745c; }
.rpg-trend.is-up { color: #a35a00; }
.rpg-trend.is-flat { color: #275f9c; }
.rpg-trend.is-thin { color: #687b8d; }
.rpg-cta { display: flex; flex-direction: column; gap: 2px; color: var(--rpg-muted); font-size: 10px; line-height: 1.35; text-decoration: none; }
.rpg-cta span { color: var(--rpg-blue); font-size: 12px; font-weight: 900; }
.rpg-cta:hover span, .rpg-cta:focus-visible span { text-decoration: underline; }
.rpg-empty { padding: 38px 22px; border: 1px dashed #b9c9d7; border-radius: 18px; background: var(--rpg-soft); text-align: center; }
.rpg-empty strong, .rpg-empty span { display: block; }
.rpg-empty span { margin-top: 6px; color: var(--rpg-muted); }
.rpg-more { display: block; min-height: 46px; margin: 18px auto 0; border: 1px solid #adc2d5; border-radius: 12px; padding: 10px 18px; background: #fff; color: var(--rpg-navy); font: 850 14px/1.2 inherit; cursor: pointer; }
.rpg-more:hover { border-color: var(--rpg-blue); color: var(--rpg-blue); }
.rpg-method { display: grid; grid-template-columns: minmax(230px, .7fr) minmax(0, 1.5fr); gap: 28px; background: var(--rpg-soft); }
.rpg-method-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.rpg-method article { padding: 16px; border: 1px solid var(--rpg-line); border-radius: 15px; background: #fff; }
.rpg-method article strong { display: block; margin-bottom: 6px; }
.rpg-method article p { margin: 0; color: var(--rpg-muted); font-size: 13px; line-height: 1.55; }

@media (max-width: 900px) {
    .rpg-column-labels { display: none; }
    .rpg-config-row { grid-template-columns: 1fr 1fr; gap: 13px 18px; }
    .rpg-label { display: block; margin-bottom: 4px; color: #75889a; font-size: 9px; font-weight: 900; letter-spacing: .045em; text-transform: uppercase; }
    .rpg-secondary, .rpg-cta { padding-top: 10px; border-top: 1px solid #e8eff5; }
    .rpg-cta { align-self: stretch; justify-content: center; }
    .rpg-method { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
    .refsw-price-guide { padding: 10px 11px 44px; }
    .rpg-hero { grid-template-columns: 1fr; gap: 19px; padding: 28px 21px; border-radius: 22px; }
    .rpg-purpose { padding: 14px; }
    .rpg-filter-card, .rpg-method { margin-top: 14px; padding: 20px 17px; border-radius: 18px; }
    .rpg-filter-intro, .rpg-results-head { align-items: flex-start; }
    .rpg-filters { grid-template-columns: 1fr; gap: 12px; }
    .rpg-field input, .rpg-field select { min-height: 52px; }
    .rpg-summary { align-items: flex-start; flex-direction: column; }
    .rpg-summary > div { justify-content: flex-start; }
    .rpg-results { margin-top: 24px; }
    .rpg-results-head { flex-direction: column; gap: 7px; margin-bottom: 13px; }
    .rpg-results-head > p { text-align: left; }
    .rpg-model-card { border-radius: 17px; }
    .rpg-model-card > header { align-items: flex-start; padding: 17px; }
    .rpg-config-row { padding: 16px 17px; }
    .rpg-method-grid { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
    .rpg-hero h1 { font-size: 34px; }
    .rpg-filter-intro { flex-direction: column; gap: 5px; }
    .rpg-reset { align-self: flex-start; }
    .rpg-model-card > header { flex-direction: column; gap: 9px; }
    .rpg-config-count { align-self: flex-start; }
    .rpg-config-row { grid-template-columns: 1fr; gap: 12px; }
    .rpg-price strong { font-size: 23px; }
    .rpg-secondary, .rpg-cta { padding-top: 11px; }
    .rpg-cta { min-height: 44px; }
}

@media (prefers-reduced-motion: reduce) {
    .refsw-price-guide * { scroll-behavior: auto !important; }
}
