body.rv-family-page{
  --fam-ink:#07182f;
  --fam-blue:#123b7a;
  --fam-green:#16a34a;
  --fam-mint:#eafbf2;
  --fam-line:#d8e5f2;
  --fam-muted:#5c718b;
  background:
    radial-gradient(circle at 10% 7%,rgba(22,163,74,.15),transparent 30%),
    radial-gradient(circle at 92% 4%,rgba(37,99,235,.13),transparent 28%),
    linear-gradient(180deg,#f7fbff 0%,#eef7f4 58%,#f8fbff 100%);
  color:var(--fam-ink);
}
body.rv-family-page .btn{white-space:nowrap}
body.rv-family-page .site-header{background:rgba(255,255,255,.88);backdrop-filter:blur(16px)}
.rv-family-hero{padding:24px 0 42px}
.rv-family-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);gap:32px;align-items:center}
.rv-family-copy{padding:34px;border:1px solid rgba(10,35,70,.1);border-radius:32px;background:rgba(255,255,255,.72);box-shadow:0 26px 80px rgba(8,26,51,.1)}
.rv-family-copy h1{font-size:clamp(2.55rem,5vw,4.95rem);line-height:.98;letter-spacing:-.065em;margin:14px 0 18px}
.rv-family-copy h1 span{color:#0f766e}
.rv-family-copy .lead{font-size:1.12rem;line-height:1.75;color:var(--fam-muted);max-width:760px}
.rv-family-actions,.rv-family-pills,.rv-family-anchor{display:flex;flex-wrap:wrap;gap:10px}
.rv-family-actions{margin:24px 0}
.rv-family-pills{padding:0;margin:0;list-style:none}
.rv-family-pills li,.rv-family-anchor a{padding:10px 13px;border-radius:999px;border:1px solid var(--fam-line);background:#fff;color:#274660;font-weight:900;text-decoration:none}
.rv-family-visual{position:relative;border-radius:34px;padding:22px;overflow:hidden;background:linear-gradient(145deg,#07182f,#123b7a 56%,#16a34a);box-shadow:0 32px 90px rgba(8,26,51,.22);color:#fff}
.rv-family-visual:before{content:"";position:absolute;inset:auto -80px -120px auto;width:280px;height:280px;background:radial-gradient(circle,rgba(255,211,105,.55),transparent 62%);filter:blur(8px)}
.rv-family-window{position:relative;display:flex;justify-content:space-between;align-items:center;color:#c8ddf2;font-weight:900;margin-bottom:18px}
.rv-family-window i{display:inline-block;width:10px;height:10px;border-radius:99px;background:#9bd6ff;margin-left:5px;opacity:.8}
.rv-family-main-stat{position:relative;padding:24px;border-radius:26px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14)}
.rv-family-main-stat small,.rv-family-main-stat span{display:block;color:#cfe1f5;font-weight:850}
.rv-family-main-stat strong{display:block;font-size:clamp(2.35rem,5vw,4.2rem);line-height:.95;letter-spacing:-.06em;margin:8px 0}
.rv-family-metrics{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}
.rv-family-metrics div{border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:14px;background:rgba(255,255,255,.1)}
.rv-family-metrics span{display:block;color:#cfe1f5;font-size:.82rem;font-weight:850}
.rv-family-metrics strong{display:block;margin-top:4px;font-size:1.04rem}
.rv-family-breakdown{position:relative;display:grid;gap:10px;padding:14px;border-radius:22px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12)}
.rv-family-breakdown div{display:grid;grid-template-columns:1fr 1.25fr auto;gap:10px;align-items:center;color:#dceaf9;font-weight:850;font-size:.9rem}
.rv-family-breakdown b{height:9px;border-radius:999px;background:linear-gradient(90deg,#22c55e,#93c5fd)}
.rv-family-breakdown em{font-style:normal;color:#fff}
.rv-family-mini-card{position:relative;margin-top:14px;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:14px;border-radius:20px;background:#fff;color:var(--fam-ink);box-shadow:0 18px 44px rgba(3,12,25,.18)}
.rv-family-icon{width:42px;height:42px;border-radius:15px;background:linear-gradient(135deg,#dcfce7,#dbeafe);display:grid;place-items:center;color:#0f766e;font-weight:950}
.rv-family-mini-card small{display:block;color:var(--fam-muted);font-weight:850}
.rv-family-mini-card strong{display:block;line-height:1.3}
.rv-family-anchor{margin:0 auto 26px}
.rv-family-tool,.rv-family-content,.rv-family-related,.rv-family-faq{padding:34px 0}
.rv-family-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:24px;align-items:start}
.rv-family-card,.rv-family-result,.rv-family-info{background:#fff;border:1px solid var(--fam-line);border-radius:30px;box-shadow:0 20px 58px rgba(8,26,51,.08)}
.rv-family-form{padding:26px}
.rv-family-section-head h2{font-size:clamp(1.65rem,2.8vw,2.55rem);line-height:1.05;letter-spacing:-.05em;margin:0 0 10px}
.rv-family-section-head p{margin:0;color:var(--fam-muted);line-height:1.7}
.rv-family-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:22px}
.rv-family-fields label{display:grid;gap:7px;font-weight:950;color:#14304e}
.rv-family-fields span{font-size:.84rem;color:var(--fam-muted);font-weight:750}
.rv-family-fields input,.rv-family-fields select{width:100%;border:1px solid var(--fam-line);border-radius:17px;padding:14px 15px;font:inherit;font-weight:850;color:var(--fam-ink);background:#f9fcff}
.rv-family-presets{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 0}
.rv-family-presets button{border:1px solid var(--fam-line);background:#fff;color:#1f3f60;border-radius:999px;padding:10px 13px;font-weight:900;cursor:pointer}
.rv-family-presets button.active{background:var(--fam-ink);color:#fff;border-color:var(--fam-ink)}
.rv-family-submit{margin-top:22px;width:100%;justify-content:center}
.rv-family-result{padding:24px;position:static}
.rv-family-score{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 13px;border-radius:18px;background:#effcf5;color:#166534;font-weight:950}
.rv-family-primary{margin:17px 0;padding:24px;border-radius:25px;background:linear-gradient(135deg,#07182f,#123b7a);color:#fff}
.rv-family-primary small{display:block;color:#c7dcef;font-weight:850}
.rv-family-primary strong{display:block;font-size:clamp(2.2rem,4vw,3.25rem);letter-spacing:-.06em;margin:7px 0}
.rv-family-primary p{margin:0;color:#d9e8f7;line-height:1.6}
.rv-family-result-grid,.rv-family-mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.rv-family-result-grid div,.rv-family-mini-grid div{border:1px solid var(--fam-line);border-radius:19px;padding:14px;background:#f8fbff}
.rv-family-result-grid small,.rv-family-mini-grid small{display:block;color:var(--fam-muted);font-weight:850}
.rv-family-result-grid strong,.rv-family-mini-grid strong{display:block;margin-top:4px;font-size:1.12rem}
.rv-family-next{margin-top:14px;padding:17px;border-radius:22px;background:linear-gradient(145deg,#effcf5,#fff);border:1px solid rgba(22,163,74,.25)}
.rv-family-next p{color:var(--fam-muted);line-height:1.65}
.rv-family-table-wrap{overflow:auto;margin-top:18px;border:1px solid var(--fam-line);border-radius:22px}
.rv-family-table{width:100%;border-collapse:collapse;background:#fff}
.rv-family-table th,.rv-family-table td{padding:13px 14px;text-align:left;border-bottom:1px solid var(--fam-line);white-space:nowrap}
.rv-family-table th{background:#f2f7fb;color:#12304e}
.rv-family-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.rv-family-info{padding:25px}
.rv-family-info h2{font-size:clamp(1.45rem,2.4vw,2.15rem);line-height:1.12;letter-spacing:-.045em;margin:0 0 14px}
.rv-family-info h3{margin:22px 0 8px}
.rv-family-info p,.rv-family-info li{color:var(--fam-muted);line-height:1.75}
.rv-family-formula{padding:16px;border-radius:18px;background:#fff7e8;border:1px solid #f1d4a7;font-family:ui-monospace,Menlo,Consolas,monospace;color:#14213d;margin:16px 0}
.rv-family-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.rv-family-related-grid a{display:block;padding:19px;border:1px solid var(--fam-line);border-radius:23px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 14px 38px rgba(8,26,51,.06)}
.rv-family-related-grid span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:15px;background:#ecfdf3;color:#0f766e;font-weight:950}
.rv-family-related-grid strong{display:block;margin:12px 0 7px;font-size:1.08rem}
.rv-family-related-grid p{color:var(--fam-muted);line-height:1.55;margin:0}
.rv-family-faq-list{display:grid;gap:10px}
.rv-family-faq-list details{background:#fff;border:1px solid var(--fam-line);border-radius:18px;padding:16px}
.rv-family-faq-list summary{font-weight:950;cursor:pointer}
.rv-family-faq-list p{color:var(--fam-muted);line-height:1.7}
body.rv-family-page .site-footer{margin-top:46px;background:radial-gradient(circle at 8% 0%,rgba(16,185,129,.22),transparent 34%),linear-gradient(135deg,#061326,#081a33 72%)}
@media(max-width:980px){
  .rv-family-hero-grid,.rv-family-grid,.rv-family-content-grid{grid-template-columns:1fr}
  .rv-family-related-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  body.rv-family-page{overflow-x:hidden}
  body.rv-family-page *{box-sizing:border-box}
  body.rv-family-page .container{width:calc(100vw - 24px)!important;margin-left:auto!important;margin-right:auto!important}
  .rv-family-hero-grid > *,
  .rv-family-grid > *,
  .rv-family-content-grid > *,
  .rv-family-copy,
  .rv-family-visual,
  .rv-family-card,
  .rv-family-result,
  .rv-family-info{min-width:0!important;max-width:100%!important}
  body.rv-family-page .header-actions{display:none}
  body.rv-family-page .breadcrumbs{display:none}
  .rv-family-hero{padding-top:8px}
  .rv-family-copy{padding:0;border:0;background:transparent;box-shadow:none}
  .rv-family-copy h1{max-width:calc(100vw - 24px);font-size:1.82rem;line-height:1.08;letter-spacing:-.035em;overflow-wrap:anywhere}
  .rv-family-copy h1 span{display:block}
  .rv-family-copy .lead{font-size:1rem;line-height:1.62;overflow-wrap:anywhere}
  .rv-family-actions{display:grid;grid-template-columns:1fr}
  .rv-family-actions .btn{width:100%;justify-content:center;white-space:normal;text-align:center}
  .rv-family-visual{border-radius:26px;padding:16px}
  .rv-family-metrics,.rv-family-fields,.rv-family-result-grid,.rv-family-mini-grid,.rv-family-related-grid{grid-template-columns:1fr}
  .rv-family-breakdown div{grid-template-columns:1fr}
  .rv-family-card,.rv-family-result,.rv-family-info{border-radius:24px}
  .rv-family-form,.rv-family-result,.rv-family-info{padding:18px}
  .rv-family-anchor{overflow:auto;flex-wrap:nowrap;padding-bottom:5px}
  .rv-family-anchor a{flex:0 0 auto}
}
