:root{--bg:#F0F4F8;--paper:#FFFFFF;--ink:#16263A;--soft:#46566A;--navy:#1B3A5C;--cu:#9A5A2B;--rule:#C9D3DE;--band:#E8EEF5;
--s1:8px;--s2:16px;--s3:24px;--s4:32px;--s5:48px;--s6:64px;--hf:"Gentium Book Plus",Georgia,"Times New Roman",serif;--bf:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 18px/1.7 var(--bf);overflow-wrap:anywhere;overflow-x:hidden}
img,svg{max-width:100%}
a{color:var(--navy);text-underline-offset:3px}
a:hover{color:var(--cu)}
:focus-visible{outline:2px solid var(--cu);outline-offset:2px}
h1,h2,h3{font-family:var(--hf);font-weight:700;color:var(--navy);line-height:1.2;margin:0 0 var(--s2)}
h1{font-size:clamp(2rem,1.3rem + 2.6vw,3.1rem);letter-spacing:-.005em}
h2{font-size:1.6rem}h3{font-size:1.2rem}
p{margin:0 0 var(--s2)}
ul{margin:0 0 var(--s2);padding-left:1.2em}
.rv-wrap{width:100%;max-width:1200px;margin:0 auto;padding-left:var(--s3);padding-right:var(--s3)}
.rv-skip{position:absolute;left:var(--s2);top:-80px;background:var(--navy);color:#fff;padding:var(--s1) var(--s2);z-index:90}
.rv-skip:focus{top:var(--s2);color:#fff}
.rv-nw{white-space:nowrap}
/* header */
.rv-top{background:var(--paper);border-bottom:1px solid var(--rule)}
.rv-top__in{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);flex-wrap:wrap;padding-top:var(--s1);padding-bottom:var(--s1)}
.rv-mark{display:inline-flex;align-items:center;gap:var(--s1);min-height:44px;text-decoration:none;color:var(--navy);font-weight:600;font-size:.95rem}
.rv-mark__sq{display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid var(--navy);font-family:var(--hf);font-size:.85rem;letter-spacing:.04em}
.rv-nav{display:flex;flex-wrap:wrap;gap:0 var(--s3)}
.rv-nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;color:var(--ink);font-size:.95rem;font-weight:500}
.rv-nav a:hover{color:var(--cu)}
/* hero band */
.rv-hero{background:var(--paper);border-bottom:1px solid var(--rule)}
.rv-hero .rv-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,320px);gap:var(--s6);padding-top:var(--s6);padding-bottom:var(--s6)}
.rv-kick{font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--cu);margin-bottom:var(--s1)}
.rv-disc__k{font-weight:600;color:var(--navy)}
.rv-win__aside{display:block;text-align:center;font-size:.8rem;color:var(--soft);margin-top:-12px}
.rv-disc{border:1px solid var(--rule);border-left:2px solid var(--cu);background:var(--bg);padding:var(--s1) var(--s2);font-size:.9rem;line-height:1.55;color:var(--ink);max-width:68ch;margin-bottom:var(--s3)}
.rv-lede{font-size:1.1rem;max-width:62ch;color:var(--ink)}
.rv-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);font-size:.85rem;color:var(--soft)}
.rv-label{display:inline-block;border:1px solid var(--navy);color:var(--navy);padding:2px var(--s1);font-size:.75rem;font-weight:600;letter-spacing:.12em;border-radius:1px}
.rv-own{border-top:1px solid var(--rule);margin-top:var(--s3);padding-top:var(--s2);max-width:68ch}
.rv-own__h{font-weight:600;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);margin-bottom:var(--s1)}
.rv-own p:last-child{font-size:.95rem;color:var(--soft)}
.rv-facts{border-left:1px solid var(--rule);padding-left:var(--s3)}
.rv-facts h2{font-size:1.1rem;letter-spacing:.06em;text-transform:uppercase;font-family:var(--bf);font-weight:600;border-bottom:1px solid var(--navy);padding-bottom:var(--s1)}
.rv-facts dl{margin:0}
.rv-facts dl div{padding:var(--s1) 0;border-bottom:1px solid var(--rule)}
.rv-facts dt{font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--soft)}
.rv-facts dd{margin:0;font-size:.95rem;line-height:1.5}
/* winner card */
.rv-win{background:var(--paper);border:1px solid var(--navy);border-radius:2px;margin:var(--s5) 0 0}
.rv-win__edge{display:flex;align-items:stretch;border-bottom:1px solid var(--rule)}
.rv-win__no{background:var(--navy);color:#fff;font-family:var(--hf);font-weight:700;font-size:1.25rem;padding:var(--s1) var(--s2);line-height:1.4}
.rv-win__tag{display:flex;align-items:center;padding:0 var(--s2);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--navy)}
.rv-win__grid{display:grid;grid-template-columns:minmax(0,136px) minmax(0,1fr) minmax(0,280px);gap:var(--s4);padding:var(--s4)}
.rv-mono{display:grid;place-items:center;width:112px;height:112px;border:1px solid var(--navy);font-family:var(--hf);font-size:2.4rem;color:var(--navy);letter-spacing:.03em}
.rv-mono--s{width:64px;height:64px;font-size:1.3rem;flex:none}
.rv-win__body h2{font-size:2rem;margin-bottom:var(--s1)}
.rv-win__loc{color:var(--soft);font-size:.95rem}
.rv-ticks{list-style:none;padding:0;margin:0 0 var(--s2);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s1) var(--s3)}
.rv-ticks li{position:relative;padding-left:var(--s3);font-size:.95rem;line-height:1.5}
.rv-ticks li::before{content:"";position:absolute;left:2px;top:.35em;width:10px;height:6px;border-left:2px solid var(--cu);border-bottom:2px solid var(--cu);transform:rotate(-45deg)}
.rv-win__suit{font-size:.95rem;max-width:62ch}
.rv-win__side{display:flex;flex-direction:column;gap:var(--s2);border-left:1px solid var(--rule);padding-left:var(--s3)}
.rv-hl{border:1px solid var(--rule);background:var(--band);padding:var(--s2)}
.rv-hl__k{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--cu);margin-bottom:var(--s1)}
.rv-hl__v{font-family:var(--hf);font-weight:700;font-size:1.35rem;line-height:1.25;color:var(--navy);margin:0}
.rv-win__price{font-size:.9rem;margin:0}
.rv-win__price span{display:block;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.rv-win__read{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:.95rem}
.rv-pc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-top:1px solid var(--rule)}
.rv-pc>div{padding:var(--s3) var(--s4)}
.rv-pc>div+div{border-left:1px solid var(--rule)}
.rv-pc ul{list-style:none;padding:0;margin:0}
.rv-pc li{position:relative;padding-left:var(--s3);margin-bottom:var(--s1);font-size:.95rem;line-height:1.55}
.rv-plus li::before{content:"+";position:absolute;left:0;color:var(--navy);font-weight:600}
.rv-minus li::before{content:"\2013";position:absolute;left:0;color:var(--cu);font-weight:600}
.rv-win__ribbon{margin:0;border-top:1px solid var(--navy);background:var(--band);color:var(--navy);padding:var(--s1) var(--s4);font-size:.88rem;font-weight:500}
/* buttons */
.rv-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 var(--s3);border-radius:2px;font:600 .95rem/1.2 var(--bf);text-decoration:none;cursor:pointer;border:1px solid var(--navy)}
.rv-btn--fill{background:var(--navy);color:#fff}
.rv-btn--fill:hover{background:var(--ink);color:#fff}
.rv-btn--line{background:var(--paper);color:var(--navy)}
.rv-btn--line:hover{color:var(--cu);border-color:var(--cu)}
.rv-cta{width:100%}
.rv-textbtn{background:none;border:0;padding:0;min-height:44px;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.rv-textbtn--in{min-height:0;color:var(--navy)}
/* sections */
.rv-sec{padding:var(--s6) 0}
.rv-sec--band{background:var(--band);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.rv-sec__head{margin-bottom:var(--s4)}
.rv-sec__h{font-size:clamp(1.6rem,1.2rem + 1.2vw,2.2rem)}
.rv-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s3)}
.rv-card{background:var(--paper);border:1px solid var(--rule);border-top:2px solid var(--navy);padding:var(--s4)}
.rv-card__no{font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--cu);margin-bottom:var(--s1)}
.rv-card p:last-child{margin-bottom:0}
.rv-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--s5)}
.rv-note{color:var(--soft);font-size:.95rem}
.rv-prac{margin:0;border-top:1px solid var(--navy)}
.rv-prow{display:grid;grid-template-columns:minmax(0,180px) minmax(0,1fr);gap:var(--s3);padding:var(--s2) 0;border-bottom:1px solid var(--rule)}
.rv-prow dt{font-weight:600;color:var(--navy)}
.rv-prow dd{margin:0;max-width:68ch}
.rv-alts{display:grid;gap:var(--s2)}
.rv-alt{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--s3);align-items:center;background:var(--paper);border:1px solid var(--rule);padding:var(--s3)}
.rv-alt h3{margin-bottom:0}
.rv-alt__loc{font-size:.85rem;color:var(--soft);margin-bottom:var(--s1)}
.rv-alt p:last-child{margin-bottom:0;max-width:68ch}
.rv-faq{border-top:1px solid var(--navy)}
.rv-q{border-bottom:1px solid var(--rule)}
.rv-q summary{cursor:pointer;min-height:48px;display:flex;align-items:center;padding:var(--s1) 0;font-weight:600;color:var(--navy);list-style-position:inside}
.rv-q p{padding-bottom:var(--s2);max-width:68ch;margin:0}
.rv-prose p{max-width:68ch}
/* inner pages */
.rv-band{background:var(--paper);border-bottom:1px solid var(--rule)}
.rv-band .rv-band__solo{padding-top:var(--s5);padding-bottom:var(--s5)}
.rv-doc{padding-top:var(--s5);padding-bottom:var(--s6);max-width:880px;margin:0 auto}
.rv-docsec{border-top:1px solid var(--rule);padding:var(--s3) 0}
.rv-docsec p,.rv-docsec li{max-width:68ch}
.rv-n{font-family:var(--bf);font-size:.8rem;font-weight:600;color:var(--cu);letter-spacing:.06em;margin-right:var(--s1);vertical-align:middle}
.rv-tbl table{width:100%;border-collapse:collapse;background:var(--paper);font-size:.95rem}
.rv-tbl caption{text-align:left;font-weight:600;color:var(--navy);padding-bottom:var(--s1)}
.rv-tbl th,.rv-tbl td{border:1px solid var(--rule);padding:var(--s1) var(--s2);text-align:left;vertical-align:top}
.rv-tbl thead th{background:var(--band);color:var(--navy)}
.rv-form{display:grid;gap:var(--s1);max-width:560px}
.rv-form label{font-weight:600;font-size:.95rem;margin-top:var(--s1)}
.rv-form input,.rv-form select,.rv-form textarea{width:100%;min-height:48px;padding:var(--s1) var(--s2);border:1px solid var(--soft);border-radius:2px;font:inherit;background:var(--paper);color:var(--ink)}
.rv-form .rv-check{display:flex;gap:var(--s1);align-items:flex-start;font-weight:400}
.rv-form .rv-check input{width:24px;min-height:24px;height:24px;flex:none;margin-top:4px}
.rv-form button{justify-self:start;margin-top:var(--s2)}
.rv-ferr{color:#8A2A12;font-weight:600}
/* footer */
.rv-foot{background:var(--paper);border-top:1px solid var(--navy);font-size:.92rem;line-height:1.6}
.rv-foot__strip{background:var(--band);border-bottom:1px solid var(--rule)}
.rv-foot__strip p{margin:0;padding:var(--s2) 0}
.rv-foot__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr);gap:var(--s4);padding-top:var(--s4);padding-bottom:var(--s3)}
.rv-foot__h{font-weight:600;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);margin-bottom:var(--s1)}
.rv-foot__small{font-size:.82rem;color:var(--soft)}
.rv-foot__links{list-style:none;padding:0;margin:0}
.rv-foot__links a{display:inline-flex;align-items:center;min-height:44px}
.rv-foot__end{border-top:1px solid var(--rule);padding-top:var(--s2);padding-bottom:var(--s2)}
.rv-foot__end p{margin:0;font-size:.82rem;color:var(--soft)}
/* consent */
.rv-cc{position:fixed;z-index:70;left:var(--s2);right:var(--s2);bottom:var(--s2);max-width:1000px;margin:0 auto;display:flex;align-items:center;gap:var(--s2);background:var(--paper);border:1px solid var(--navy);border-radius:2px;padding:var(--s2)}
.rv-cc[hidden]{display:none}
.rv-cc__t{margin:0;flex:1;font-size:.88rem;line-height:1.5}
.rv-cc__b{display:flex;gap:var(--s1);flex:none}
.rv-cc .rv-btn{min-height:44px;padding:0 var(--s2);font-size:.85rem}
.rv-dlg{border:1px solid var(--navy);border-radius:2px;padding:0;max-width:520px;width:calc(100% - 32px);background:var(--paper);color:var(--ink)}
.rv-dlg::backdrop{background:rgba(22,38,58,.45)}
.rv-dlg__f{padding:var(--s3)}
.rv-dlg h2{font-size:1.35rem}
.rv-sw{display:flex;justify-content:space-between;gap:var(--s2);border-top:1px solid var(--rule);padding:var(--s2) 0}
.rv-sw p{margin:0;font-size:.88rem;line-height:1.5}
.rv-sw__n{font-weight:600;color:var(--navy)}
.rv-sw input{width:24px;height:24px;flex:none;margin-top:2px;accent-color:var(--navy)}
.rv-gpc{color:var(--cu);font-weight:600}
.rv-dlg__b{display:flex;gap:var(--s1);justify-content:flex-end;border-top:1px solid var(--rule);padding-top:var(--s2)}
@media (max-width:1024px){
 .rv-win__grid{grid-template-columns:minmax(0,112px) minmax(0,1fr)}
 .rv-win__side{grid-column:1 / -1;border-left:0;padding-left:0;border-top:1px solid var(--rule);padding-top:var(--s3);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
 .rv-hl{grid-row:span 2}
}
@media (max-width:860px){
 .rv-hero .rv-hero__grid{grid-template-columns:minmax(0,1fr);gap:var(--s4);padding-top:var(--s4);padding-bottom:var(--s4)}
 .rv-facts{border-left:0;padding-left:0}
 .rv-grid,.rv-split,.rv-pc{grid-template-columns:minmax(0,1fr)}
 .rv-split{gap:var(--s2)}
 .rv-pc>div+div{border-left:0;border-top:1px solid var(--rule)}
 .rv-foot__grid{grid-template-columns:minmax(0,1fr)}
 .rv-alt{grid-template-columns:auto minmax(0,1fr)}
 .rv-alt .rv-btn{grid-column:1 / -1;justify-self:start}
}
@media (max-width:600px){
 body{font-size:17px}
 .rv-wrap{padding-left:var(--s2);padding-right:var(--s2)}
 .rv-hero .rv-hero__grid{padding-top:var(--s4);padding-bottom:var(--s4)}
 .rv-band .rv-band__solo{padding-top:var(--s4);padding-bottom:var(--s4)}
 .rv-nav{gap:0 var(--s2)}
 .rv-nav a{font-size:.9rem}
 .rv-win__grid{grid-template-columns:minmax(0,1fr);padding:var(--s3) var(--s2);gap:var(--s2)}
 .rv-mono{width:80px;height:80px;font-size:1.7rem}
 .rv-win__body h2{font-size:1.6rem}
 .rv-ticks{grid-template-columns:minmax(0,1fr)}
 .rv-win__side{grid-template-columns:minmax(0,1fr)}
 .rv-hl{grid-row:auto}
 .rv-pc>div{padding:var(--s3) var(--s2)}
 .rv-win__ribbon{padding:var(--s1) var(--s2)}
 .rv-card{padding:var(--s3) var(--s2)}
 .rv-prow{grid-template-columns:minmax(0,1fr);gap:0}
 .rv-alt{padding:var(--s2);gap:var(--s2)}
 .rv-sec{padding:var(--s5) 0}
 .rv-tbl table,.rv-tbl thead,.rv-tbl tbody,.rv-tbl tr,.rv-tbl th,.rv-tbl td{display:block;width:100%}
 .rv-tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
 .rv-tbl tr{border:1px solid var(--rule);margin-bottom:var(--s2);background:var(--paper)}
 .rv-tbl th,.rv-tbl td{border:0;border-bottom:1px solid var(--rule)}
 .rv-tbl td::before,.rv-tbl tbody th::before{content:attr(data-label);display:block;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--soft)}
 .rv-cc{left:var(--s1);right:var(--s1);bottom:var(--s1);flex-direction:column;align-items:stretch;gap:var(--s1);padding:var(--s1) var(--s1) var(--s1)}
 .rv-cc__t{font-size:.8rem;line-height:1.4}
 .rv-cc__b{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:4px}
 .rv-cc .rv-btn{padding:0 8px;font-size:.78rem;line-height:1.15;text-align:center;min-width:0}
 .rv-cc .rv-btn:not(.rv-nw){white-space:normal}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
