.logo img{width:180px;height:54px;object-fit:contain}
header.site .wrap{gap:20px}
nav.main{gap:0}
nav.main a{padding:7px 8px;font-size:14px}
.hdr-right{gap:8px}
.page-menu{position:relative;font-size:13px;white-space:nowrap}
.page-menu summary{cursor:pointer;padding:8px}
.page-menu>div{position:absolute;right:0;top:100%;min-width:180px;padding:8px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 25px rgba(var(--shadow),.14);display:grid}
.page-menu a{display:block;padding:8px;text-decoration:none;border-radius:6px}
.page-menu a:hover{background:var(--blush)}
nav.main a.service-link{display:none}
nav.main.open a.service-link{display:block}
.clogo,.tp-logo,.review-brand{display:flex;align-items:center;justify-content:center;background:#131923;border:1px solid var(--line);padding:8px;overflow:hidden}
.clogo img,.tp-logo img,.review-brand img{display:block;min-width:0;min-height:0;width:100%;height:100%;object-fit:contain}
.tp-logo{height:100px}
.review-brand{display:block;width:240px;height:110px;border-radius:14px;margin-block:24px}
.highlights{font-size:12.5px;color:var(--text2)}
.highlights ul{padding-left:16px;margin:0}
.row-main{grid-template-columns:28px 68px minmax(130px,.85fr) minmax(160px,1.2fr) minmax(180px,1.4fr) 130px;gap:16px}
.row .big{font-size:19px}
.compare-check{display:flex;align-items:center;gap:5px;font-size:12px;margin-top:8px;color:var(--muted);cursor:pointer}
input[type=checkbox]{accent-color:var(--pink);width:17px;height:17px}
.author{position:relative;display:block;min-width:240px}
.author summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none}
.author summary::-webkit-details-marker{display:none}
img.avatar{object-fit:cover;object-position:center;width:42px;height:42px}
.author-bio{position:absolute;left:0;top:calc(100% + 8px);width:min(420px,calc(100vw - 40px));z-index:15;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 8px 30px rgba(var(--shadow),.16)}
.author-bio p{margin:0}
.article-copy{max-width:960px;line-height:1.8}
.article-copy h3{margin-top:30px;margin-bottom:12px}
.article-copy p{margin:14px 0}
.legal-copy{max-width:850px;margin-top:28px}
.legal-copy h2{margin-top:32px;font-size:24px}
.legal-copy .author{margin-top:30px;max-width:360px}
.back-link{display:inline-block;margin-bottom:20px;color:var(--pink-deep)}
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:14px;margin:24px 0}
.table-scroll table{width:100%;border-collapse:collapse;min-width:620px;text-align:left;background:var(--card);font-size:14px}
.table-scroll th{background:var(--blush);color:var(--ink);font-weight:800}
.table-scroll td,.table-scroll th{padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:top}
.table-scroll tr:last-child td{border-bottom:0}
.review-link{margin:0 22px 22px}
.rev-body{grid-template-columns:260px 1fr}
.rev-head h3{font-size:18px}
.rev-body .spec{overflow-wrap:anywhere}
.standalone-review{padding:24px}
.standalone-review>.btn{margin-top:24px}
.face{overflow:auto}
.flip,.flip-in{min-height:420px}
.f-val{font-size:29px}
.back-terms{gap:5px 10px}
.back-terms dd{overflow-wrap:anywhere}
.f-back{white-space:nowrap}
.face.back .f-code{margin-top:auto}
.filter-status{font-size:13px;color:var(--muted)}
#faq details{border-bottom:1px solid var(--line);padding-block:16px}
#faq summary{cursor:pointer;font-weight:700;font-size:16px;list-style:none;display:flex;justify-content:space-between;gap:16px}
#faq summary::after{content:"+";font-size:20px;color:var(--pink-deep);flex:none}
#faq details[open] summary::after{content:"−"}
#faq details p{color:var(--text2);max-width:85ch;margin-bottom:0}
.skip-link{position:fixed;left:12px;top:8px;transform:translateY(-150%);z-index:100;background:var(--card);padding:10px 16px;border:2px solid var(--pink)}
.skip-link:focus{transform:none}
dialog{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:18px;max-width:min(1000px,calc(100vw - 28px));max-height:85dvh;width:860px;padding:24px;overflow:auto;overscroll-behavior:contain}
dialog::backdrop{background:rgba(0,0,0,.55)}
.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
.dialog-head h2{font-size:24px}
.dialog-head button{flex:none}
body:has(dialog[open]){overflow:hidden}
.compare-choices{display:flex;flex-wrap:wrap;gap:8px 20px;margin-block:20px}
.compare-choices label{display:flex;align-items:center;gap:6px;cursor:pointer}
.compare-table td{min-width:180px}
.operator-message{padding:14px;background:var(--blush);border-radius:10px}
.operator-link{margin-top:16px}
#contact-form{padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--card);margin-block:30px;display:grid;gap:10px}
#contact-form h2{margin-top:0}
#contact-form input,#contact-form textarea{width:100%;font:inherit;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--page);color:var(--ink)}
#contact-form label{font-weight:700}
#contact-form p{font-size:14px;margin:8px 0}
#contact-form .btn{justify-self:start}
.cats .cat{min-width:0}
.cats .cat .ic{flex:none}
footer .logo{width:max-content;background:#fff;border-radius:8px;padding:4px 8px}
footer .seals a{color:inherit}
button:disabled{opacity:.55;cursor:default}
section[id],h3[id]{scroll-margin-top:110px}
@media(min-width:1101px){nav.main{flex-wrap:nowrap}.logo{flex-shrink:0}}
@media(max-width:1100px){
  nav.main{display:none}
  .burger{display:inline-flex}
  nav.main.open{display:flex;position:absolute;left:20px;right:20px;top:100%;flex-direction:column;padding:12px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px rgba(var(--shadow),.12)}
  .row-main{grid-template-columns:28px 64px 1fr 1fr;grid-template-areas:"r l n c" "o o t t"}
  .row-main .rank{grid-area:r}.row-main>.clogo{grid-area:l}.row-main>.name{grid-area:n}.row-main>.offer{grid-area:o}.row-main>.highlights{grid-area:t}.row-main>.cta{grid-area:c}
}
@media(max-width:820px){
  .rev-body{grid-template-columns:1fr}
  .hdr-right>.lang{display:none}
  .page-menu{display:none}
  .logo img{width:150px;height:46px}
  header.site .wrap{gap:10px;padding-block:10px}
  .hdr-right .btn{font-size:12px;padding:9px 13px}
  footer{padding-bottom:140px}
  .sticky-cta .btn{font-size:12px;padding:10px;flex:none}
  .sticky-cta div span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px}
}
@media(max-width:520px){
  .wrap{padding-inline:16px}
  .logo img{width:122px;height:40px}
  .hdr-right{gap:5px}.hdr-right .btn{padding:8px 10px}
  .row-main{grid-template-columns:24px 60px 1fr;grid-template-areas:"r l n" "o o o" "t t t" "c c c";gap:12px}
  .row-main .cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
  .row-main .cta small{width:100%;text-align:left}
  .detail{padding:16px}
  .toppick{margin-top:20px}.tp-box{padding:24px}
  .skins{left:10px}.to-top{right:10px}
  .hero{padding-block:26px 18px}
  .rev-head{padding:16px;gap:10px}.rev-head h3{font-size:16px}
  .rev-body{padding:16px}.pc{grid-template-columns:1fr}
  .standalone-review{padding:8px}
  .standalone-review>.btn{margin:16px}
  dialog{padding:18px}
  .cats{grid-template-columns:1fr}
}

