/* Product-first landing page. All layout changes stay inside .rg-home. */
.rg-home {background:#fff;line-height:1.5;}
.rg-home .home-container {width:min(1160px,calc(100% - 56px));margin-inline:auto;}
.rg-home .site-header {min-height:76px;padding:12px max(28px,calc((100% - 1160px)/2));gap:24px;}
.rg-home .brand {font-size:23px;letter-spacing:-.7px;white-space:nowrap;}
.rg-home .brand img {width:42px;height:46px;}
.rg-home .brand small {font-size:11px;letter-spacing:0;}
.rg-home .brand:hover {text-decoration:none;}
.rg-home .site-header nav {gap:25px;flex-wrap:nowrap;font-weight:600;}
.rg-home .header-detail {color:var(--ink);}
.rg-home main {max-width:none;padding:0;}
.rg-home section {margin:0;}
.rg-home .button {display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:9px;padding:12px 18px;font:inherit;font-size:14px;font-weight:700;white-space:nowrap;cursor:pointer;min-height:44px;}
.rg-home a:focus-visible,.rg-home button:focus-visible,.rg-home input:focus-visible {outline:3px solid var(--blue);outline-offset:4px;}
.rg-home .home-hero {background:linear-gradient(115deg,#edf5fc,#f6faff);border-bottom:1px solid var(--border);}
.rg-home .hero-grid {display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:38px;align-items:center;padding-block:60px 68px;}
.rg-home .hero-copy {min-width:0;}
.rg-home .home-scope {display:inline-flex;align-items:center;gap:7px;max-width:100%;margin:0 0 19px;padding:7px 10px;border:1px solid var(--border);border-radius:30px;background:#fff;color:var(--blue);font-size:11px;font-weight:750;letter-spacing:.55px;}
.rg-home .home-scope>span {width:6px;height:6px;border-radius:50%;background:var(--green);flex:none;}
.rg-home h1 {font-size:clamp(40px,4.3vw,58px);line-height:1.065;font-weight:800;letter-spacing:-2.6px;margin:0 0 22px;max-width:650px;text-wrap:balance;}
.rg-home .hero-description {color:var(--muted);font-size:18px;line-height:1.55;margin:0 0 25px;max-width:570px;}
.rg-home .hero-search {display:flex;align-items:center;gap:8px;padding:6px;background:#fff;border:1px solid #c8d9ed;border-radius:12px;box-shadow:0 12px 35px #173d7610;}
.rg-home .search-icon {width:20px;height:20px;flex:none;margin-left:10px;stroke:var(--muted);fill:none;stroke-width:1.8;stroke-linecap:round;}
.rg-home .hero-search input[type=search] {min-width:0;width:100%;flex:1;border:0;background:transparent;padding:10px 3px;color:var(--ink);font:inherit;font-size:15px;line-height:1.4;}
.rg-home .hero-search input::placeholder {color:var(--muted);opacity:1;}
.rg-home .format-intro {color:var(--muted);font-size:11px;letter-spacing:.6px;text-transform:uppercase;font-weight:700;margin:19px 0 9px;}
.rg-home .format-shortcuts {display:flex;flex-wrap:wrap;gap:8px;}
.rg-home .format-shortcuts a {display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 10px;background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--ink);font-size:12px;font-weight:650;}
.rg-home .format-shortcuts a:hover {border-color:var(--blue);color:var(--blue);text-decoration:none;}
.rg-home .hero-note {font-size:12px;color:var(--muted);line-height:1.55;margin:17px 0 0;max-width:540px;}
.rg-home .comparison-preview {min-width:0;border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:0 18px 50px #173d760d;overflow:hidden;}
.rg-home .preview-heading {padding:22px 22px 18px;border-bottom:1px solid var(--border);}
.rg-home .home-eyebrow {color:var(--blue);font-size:11px;letter-spacing:1.2px;text-transform:uppercase;font-weight:750;margin:0 0 10px;}
.rg-home .preview-heading h2 {font-size:22px;line-height:1.25;letter-spacing:-.6px;margin:0 0 7px;}
.rg-home .preview-heading>p:last-child {font-size:12px;color:var(--muted);margin:0;}
.rg-home .preview-offers,.rg-home .preview-explainer {list-style:none;padding:4px 22px;margin:0;}
.rg-home .preview-offers li {display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:11px;padding:15px 0;border-bottom:1px solid var(--border);}
.rg-home .preview-offers li:last-child,.rg-home .preview-explainer li:last-child {border-bottom:0;}
.rg-home .preview-rank {display:grid;place-items:center;width:27px;height:27px;background:var(--pale);border-radius:7px;font-size:11px;font-weight:750;color:var(--muted);}
.rg-home .preview-offers li:first-child .preview-rank {background:#e8f7ee;color:var(--green);}
.rg-home .preview-offers li:first-child .preview-price {color:var(--green);}
.rg-home .preview-shop strong {display:block;font-size:13px;overflow-wrap:anywhere;}
.rg-home .preview-shop small {display:block;font-size:10px;color:var(--muted);margin-top:3px;}
.rg-home .preview-price {font-size:17px;white-space:nowrap;}
.rg-home .preview-explainer li {display:flex;gap:14px;align-items:center;padding:17px 0;border-bottom:1px solid var(--border);}
.rg-home .preview-explainer svg {width:30px;height:30px;flex:none;color:var(--blue);}
.rg-home .preview-explainer strong {font-size:14px;}
.rg-home .preview-explainer p {color:var(--muted);font-size:12px;line-height:1.5;margin:4px 0 0;}
.rg-home .preview-summary {display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 22px;background:#f6faff;border-top:1px solid var(--border);}
.rg-home .preview-summary small {display:block;font-size:11px;color:var(--muted);}
.rg-home .preview-summary strong {font-size:21px;}
.rg-home .preview-summary p {color:var(--muted);font-size:11px;margin:4px 0 0;}
.rg-home .preview-summary a {font-size:12px;font-weight:700;white-space:nowrap;}
.rg-home .preview-note {margin:0;padding:10px 22px 15px;color:var(--muted);font-size:10px;background:#f6faff;}
.rg-home .home-section {padding:58px 0 64px;}
.rg-home h2 {font-size:clamp(27px,2.6vw,36px);line-height:1.2;letter-spacing:-1.2px;font-weight:750;margin:0 0 26px;}
.rg-home h3 {font-size:18px;line-height:1.3;letter-spacing:-.4px;margin:0 0 9px;}
.rg-home #how-it-works {scroll-margin-top:25px;}
.rg-home .step-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0;}
.rg-home .step-card {border:1px solid var(--border);border-radius:12px;padding:22px;}
.rg-home .step-visual {display:flex;align-items:center;justify-content:space-between;margin-bottom:19px;}
.rg-home .step-number {display:grid;place-items:center;width:32px;height:32px;background:var(--pale);border-radius:8px;color:var(--blue);font-size:13px;font-weight:750;}
.rg-home .step-visual svg {width:51px;height:45px;color:var(--blue);}
.rg-home .step-card p {color:var(--muted);font-size:14px;line-height:1.55;margin:0;}
.rg-home .format-section {background:#f6faff;border-block:1px solid var(--border);}
.rg-home .format-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.rg-home .format-card {display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--border);border-radius:12px;padding:18px 20px;color:var(--ink);}
.rg-home .format-card>svg {display:block;width:100%;height:125px;margin-bottom:15px;}
.rg-home .format-card>strong {font-size:16px;line-height:1.4;margin-bottom:7px;letter-spacing:-.25px;}
.rg-home .format-card>span {font-size:12px;color:var(--blue);font-weight:650;}
.rg-home .format-card:hover {border-color:#8aafe6;background:#fbfdff;text-decoration:none;}
.rg-home .section-link {display:inline-block;font-size:14px;font-weight:650;margin-top:18px;padding-block:5px;}
.rg-home .principles-grid {display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.rg-home .principles-copy h2 {max-width:440px;margin-bottom:17px;}
.rg-home .principles-copy>p:not(.home-eyebrow) {color:var(--muted);font-size:16px;line-height:1.6;margin:0;}
.rg-home .principle-list {display:grid;gap:10px;}
.rg-home .principle {display:flex;gap:15px;align-items:center;background:#f6faff;border:1px solid var(--border);border-radius:10px;padding:15px 18px;}
.rg-home .principle>svg {width:33px;height:33px;flex:none;color:var(--blue);}
.rg-home .principle h3 {font-size:14px;letter-spacing:0;margin:0 0 3px;}
.rg-home .principle p {color:var(--muted);font-size:12px;margin:0;}
.rg-home .closing-section {padding:35px 0;background:var(--pale);border-top:1px solid var(--border);}
.rg-home .closing-grid {display:flex;align-items:center;justify-content:space-between;gap:24px;}
.rg-home .closing-section h2 {font-size:25px;letter-spacing:-.8px;margin-bottom:5px;}
.rg-home .closing-section p {font-size:14px;color:var(--muted);margin:0;}
.rg-home .home-footer {padding:25px 0;border-top:1px solid var(--border);}
.rg-home .footer-grid {display:flex;align-items:center;justify-content:space-between;gap:25px;}
.rg-home .footer-details {font-size:11px;color:var(--muted);text-align:right;}
.rg-home .footer-details p {margin:0 0 5px;}
.rg-home .footer-details nav {justify-content:flex-end;gap:9px;flex-wrap:wrap;font-size:12px;}
.rg-home .home-sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
@media(max-width:950px){
  .rg-home .site-header nav {gap:18px;}
  .rg-home .hero-grid {gap:26px;}
  .rg-home h1 {font-size:45px;letter-spacing:-1.9px;}
  .rg-home .hero-description {font-size:16px;}
  .rg-home .preview-heading,.rg-home .preview-summary {padding-inline:18px;}
  .rg-home .preview-offers,.rg-home .preview-explainer {padding-inline:18px;}
}
@media(max-width:800px){
  .rg-home .site-header {flex-wrap:nowrap;align-items:center;gap:12px;}
  .rg-home .site-header .header-detail {display:none;}
  .rg-home .hero-grid {grid-template-columns:1fr;padding-block:38px 44px;gap:30px;}
  .rg-home .hero-copy {max-width:650px;}
  .rg-home h1 {font-size:50px;}
  .rg-home .comparison-preview {max-width:630px;width:100%;}
  .rg-home .step-grid {grid-template-columns:1fr;gap:12px;}
  .rg-home .step-card {padding:19px;}
  .rg-home .step-visual {margin-bottom:12px;}
  .rg-home .format-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  .rg-home .principles-grid {grid-template-columns:1fr;gap:27px;}
  .rg-home .footer-grid {align-items:flex-start;}
}
@media(max-width:560px){
  .rg-home .home-container {width:calc(100% - 32px);}
  .rg-home .site-header {min-height:62px;padding:9px 16px;}
  .rg-home .brand {font-size:20px;gap:7px;}
  .rg-home .brand img {width:31px;height:38px;}
  .rg-home .site-header .brand small {display:none;}
  .rg-home .site-header .button {padding:10px 11px;font-size:12px;gap:5px;}
  .rg-home .hero-grid {padding-block:25px 34px;gap:25px;}
  .rg-home .home-scope {font-size:10px;letter-spacing:.1px;padding:6px 9px;margin-bottom:16px;}
  .rg-home h1 {font-size:36px;line-height:1.08;letter-spacing:-1.5px;margin-bottom:17px;}
  .rg-home .hero-description {font-size:15px;line-height:1.5;margin-bottom:19px;}
  .rg-home .hero-search {gap:5px;padding:5px;}
  .rg-home .search-icon {width:17px;height:17px;margin-left:6px;}
  .rg-home .hero-search input[type=search] {font-size:16px;}
  .rg-home .hero-search .button {padding:11px;font-size:13px;gap:5px;}
  .rg-home .format-intro {margin-top:15px;font-size:10px;}
  .rg-home .format-shortcuts {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}
  .rg-home .format-shortcuts a {min-height:42px;font-size:12px;}
  .rg-home .hero-note {font-size:11px;margin-top:13px;}
  .rg-home .preview-heading h2 {font-size:21px;}
  .rg-home .preview-summary {gap:12px;}
  .rg-home .preview-explainer li {padding-block:15px;}
  .rg-home .home-section {padding:39px 0 43px;}
  .rg-home .home-eyebrow {font-size:10px;letter-spacing:1px;}
  .rg-home h2 {font-size:29px;letter-spacing:-1px;margin-bottom:23px;}
  .rg-home .step-card h3 {font-size:18px;}
  .rg-home .format-grid {gap:10px;}
  .rg-home .format-card {padding:14px;}
  .rg-home .format-card>svg {height:98px;margin-bottom:12px;}
  .rg-home .format-card>strong {font-size:14px;}
  .rg-home .principles-copy>p:not(.home-eyebrow) {font-size:15px;}
  .rg-home .principle {padding:14px;gap:12px;}
  .rg-home .closing-grid {flex-direction:column;align-items:flex-start;gap:19px;}
  .rg-home .closing-section h2 {font-size:25px;}
  .rg-home .footer-grid {flex-direction:column;gap:20px;}
  .rg-home .footer-details {text-align:left;}
  .rg-home .footer-details nav {justify-content:flex-start;}
}
@media(prefers-reduced-motion:no-preference){
  html:has(body.rg-home) {scroll-behavior:smooth;}
  .rg-home .button,.rg-home .format-card,.rg-home .format-shortcuts a {transition:background-color .15s,border-color .15s;}
}
