/* Original editorial design: no external dependencies */
:root{--ink:#132833;--muted:#5d7078;--teal:#087e77;--teal2:#0f9c8f;--pale:#e6f5f0;--paper:#fbfaf6;--line:#dbe5e2;--card:#fff;--shadow:0 14px 35px rgba(17,52,56,.07)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);font:16px/1.72 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink)}a{color:#08776c}a:hover{color:#005a57}img{max-width:100%;height:auto}button{font:inherit} .wrap{width:min(1160px,calc(100% - 40px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:14px;top:12px;z-index:99;background:white;padding:12px}.site-header{position:sticky;top:0;z-index:20;background:rgba(251,250,246,.95);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.head-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-weight:900;font-size:19px;letter-spacing:-.045em;text-decoration:none;color:#122e34;white-space:nowrap}.brand-dot{color:var(--teal)}.nav{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.nav a{font-size:14px;font-weight:750;color:#243b43;text-decoration:none}.nav a:hover{color:var(--teal)}.nav-toggle{display:none}.hero{background:radial-gradient(circle at 85% 30%,#d8eee6 0,transparent 45%),linear-gradient(155deg,#f1f8f3 0,#faf9f4 80%);border-bottom:1px solid #e1e8e2}.hero-inner{display:grid;grid-template-columns:1.17fr .83fr;align-items:center;gap:45px;padding:67px 0}.eyebrow{text-transform:uppercase;font-size:12px;font-weight:850;letter-spacing:.14em;color:var(--teal);margin:0 0 18px}.hero h1{font-size:clamp(35px,5vw,62px);line-height:1.06;letter-spacing:-.065em;margin:0 0 23px;max-width:710px}.hero p{font-size:18px;color:#45616b;max-width:650px}.hero-photo{border-radius:24px;overflow:hidden;box-shadow:0 25px 65px rgba(18,58,62,.16);border:8px solid white;aspect-ratio: 1.38;transform:rotate(1.5deg)}.hero-photo img{width:100%;height:100%;object-fit:cover}.trust-row{display:flex;gap:13px;flex-wrap:wrap;margin-top:25px}.trust-row span{border:1px solid #c4e1d7;border-radius:999px;padding:6px 13px;font-size:13px;font-weight:700;color:#12594e;background:#fff}.section-label{color:var(--teal);text-transform:uppercase;font-weight:850;letter-spacing:.13em;font-size:12px}.affiliate{padding:59px 0 63px}.affiliate-top{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:23px}.affiliate h2{font-size:clamp(27px,3.2vw,39px);line-height:1.15;letter-spacing:-.04em;margin:7px 0}.affiliate-sub{color:var(--muted);font-size:14px}.affiliate-list{display:grid;gap:13px}.op-card{position:relative;display:grid;grid-template-columns:36px 80px minmax(150px,1fr) minmax(220px,1.3fr) 175px;gap:20px;align-items:center;background:#fff;border:1px solid #dce5e3;border-radius:17px;padding:19px 20px;box-shadow:0 3px 12px rgba(17,44,46,.03);transition:box-shadow .15s,transform .15s}.op-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.op-card:first-child{border:2px solid var(--teal);margin-top:12px}.top-pick{position:absolute;left:16px;top:-17px;font-size:11px;letter-spacing:.07em;font-weight:900;color:white;background:var(--teal);border-radius:999px;padding:5px 13px}.rank{width:33px;height:33px;border-radius:50%;background:#183c40;color:white;display:grid;place-items:center;font-weight:800}.logo-box{width:80px;height:80px;border-radius:12px;display:grid;place-items:center;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff29}.logo-box img{max-width:80%;max-height:80%;object-fit:contain}.op-title{font-weight:850;font-size:17px}.score{display:flex;gap:7px;align-items:center}.stars{position:relative;display:inline-block;letter-spacing:1px;color:#d9dfde;line-height:1;white-space:nowrap}.stars>span{position:absolute;inset:0 auto auto 0;white-space:nowrap;overflow:hidden;color:#dc9a37}.score small{color:#5e7378;font-weight:750}.bonus-label{font-size:11px;letter-spacing:.1em;color:#698087;font-weight:850;text-transform:uppercase}.bonus-value{font-weight:800;font-size:15px;line-height:1.5;margin-top:5px}.cta{display:inline-flex;justify-content:center;align-items:center;text-align:center;min-height:48px;border-radius:10px;background:#087f69;color:white!important;text-decoration:none;font-weight:850;box-shadow:0 4px 11px #087f6929;padding:11px 17px;transition:background .15s}.cta:hover{background:#046651}.skeleton{height:118px;border:1px solid #dbe4e1;border-radius:18px;background:linear-gradient(100deg,#edf1ee 20%,#fff 40%,#edf1ee 60%);background-size:220% 100%;animation:shimmer 1.35s infinite}@keyframes shimmer{to{background-position-x:-220%}}.table-error{padding:20px;background:#fff3eb;border:1px solid #e7cdc1;border-radius:12px}.content-layout{display:grid;grid-template-columns: minmax(0,1fr) 250px;gap:52px;padding:20px 0 95px}.article{min-width:0}.article h2{font-size:clamp(26px,3vw,35px);letter-spacing:-.045em;line-height:1.24;margin:63px 0 19px;scroll-margin-top:95px}.article h2:first-child{margin-top:5px}.article h3{font-size:22px;letter-spacing:-.025em;line-height:1.3;margin:39px 0 13px;scroll-margin-top:95px}.article p{margin:15px 0;color:#2e454e}.article ul,.article ol{padding-left:24px;margin:16px 0 27px}.article li{margin:8px 0;padding-left:3px}.article strong{color:#182d35}.article-figure{margin:22px 0 33px}.article-figure img{border-radius:17px;box-shadow:var(--shadow);display:block;width:100%;aspect-ratio:1376/768;object-fit:cover}.article-figure figcaption{color:var(--muted);font-size:12px;margin-top:8px}.article blockquote{margin:25px 0;border-left:4px solid var(--teal);background:#eaf5f0;padding:15px 22px;border-radius:0 11px 11px 0}.article blockquote p{margin:0}.table-scroll{overflow:auto;max-width:100%;border:1px solid #cbded8;border-radius:13px;margin:21px 0 26px;background:#fff}.table-scroll:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.article table{width:100%;border-collapse:collapse;min-width:590px;font-size:14px;line-height:1.5}.article th,.article td{text-align:left;vertical-align:top;padding:14px 16px;border-right:1px solid #dce8e3;border-bottom:1px solid #dce8e3;color:#183238}.article th:last-child,.article td:last-child{border-right:none}.article tr:last-child td{border-bottom:none}.article thead th{background:#173a3d;color:#fff;font-weight:850}.article tbody tr:nth-child(even){background:#f0f8f5}.toc{position:sticky;top:100px;align-self:start;border:1px solid var(--line);background:white;border-radius:17px;padding:22px;box-shadow:0 5px 22px #17383809}.toc p{margin:0 0 11px;font-weight:900}.toc a{display:block;text-decoration:none;font-size:13px;color:#406169;padding:8px 0;border-bottom:1px solid #edf0ee;line-height:1.5}.toc a:hover{color:var(--teal)}.footer{background:#122e32;color:#d0deda;padding:56px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:45px}.footer h2{font-size:23px;color:#fff;margin:0 0 12px}.footer p{max-width:470px;font-size:14px}.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.footer a{color:#e0eeea;text-decoration:none;font-size:14px}.footer a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #355157;margin-top:35px;padding-top:17px;font-size:12px;color:#bbd0c8}.utility{padding:48px 0 95px;min-height:65vh}.utility-article{max-width:850px;background:white;padding:clamp(24px,4vw,60px);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.utility h1{font-size:clamp(33px,4vw,49px);line-height:1.18;letter-spacing:-.05em;margin:0 0 28px}.utility h2{font-size:23px;letter-spacing:-.03em;margin-top:35px}.utility p,.utility li{color:#36515b}.utility ul{padding-left:22px}.crumb{color:#56727b;font-size:13px;margin:0 0 28px}
@media(max-width:950px){.content-layout{grid-template-columns:1fr}.toc{display:none}.op-card{grid-template-columns:30px 72px 1fr 1fr;gap:13px}.op-card .cta{grid-column:1/-1}.hero-inner{gap:26px}.footer-grid{grid-template-columns:1fr}}
@media(max-width:710px){.wrap{width:min(100% - 30px,1160px)}.head-inner{min-height:67px}.brand{font-size:16px}.nav-toggle{display:block;background:#e8f5f0;border:1px solid #c9e3db;color:#13413d;border-radius:9px;padding:6px 12px;font-weight:800}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fbfaf6;padding:12px 18px 20px;box-shadow:0 17px 18px #192d3026}.nav.open{display:grid;gap:6px}.nav a{display:block;padding:8px}.hero-inner{grid-template-columns:1fr;gap:24px;padding:39px 0}.hero h1{font-size:37px}.hero p{font-size:16px}.hero-photo{transform:none;aspect-ratio:1.68}.affiliate{padding:38px 0 44px}.affiliate-top{display:block}.op-card{grid-template-columns:28px 67px 1fr;gap:12px;padding:16px}.logo-box{width:67px;height:67px}.bonus-col{grid-column:1/-1;background:#f0f8f5;border-radius:9px;padding:12px 13px;text-align:center}.op-card .cta{grid-column:1/-1}.content-layout{padding:15px 0 65px}.article h2{margin-top:48px}.footer-links{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* VIP edition */
:root{--accent:#0c8076;--accent-soft:#e0f5f0}
.article-figure{margin:1.4rem 0 2rem}.article-figure img{display:block;max-width:100%;height:auto;border-radius:18px}.article-figure figcaption{font-size:.85rem;color:#566775;padding:.55rem .2rem}.article table{border-collapse:collapse;width:100%}.article th,.article td{border:1px solid #cbd8d8;padding:12px 14px;text-align:left;color:#17303b}.article th{background:#e8f3f0;color:#123d37}.article tr:nth-child(even) td{background:#f5f9f8}.table-scroll{max-width:100%;overflow-x:auto}.article blockquote{border-left:4px solid #128a73;background:#e9f5f0;color:#1b3840;padding:1rem 1.3rem;border-radius:0 12px 12px 0}.article blockquote p{color:inherit}

/* Compact, single-line desktop navigation; mobile collapses before crowding */
@media(min-width:901px){.head-inner{gap:20px}.nav{flex-wrap:nowrap;gap:clamp(12px,1.5vw,23px)}.nav a{white-space:nowrap;font-size:13px}.brand{flex-shrink:0}}
@media(min-width:711px) and (max-width:900px){.site-header{position:relative}.nav-toggle{display:block;background:#e8f5f0;border:1px solid #c9e3db;color:#13413d;border-radius:9px;padding:8px 13px;font-weight:800}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fbfaf6;padding:12px 20px 20px;box-shadow:0 17px 18px #192d3026;z-index:20}.nav.open{display:grid;gap:6px}.nav a{display:block;padding:9px 8px}}

/* Mobile and tablet overflow fixes */
html,body{max-width:100%}
.head-inner,.hero-inner,.affiliate-top,.content-layout,.footer-grid{min-width:0}
.brand{min-width:0;overflow-wrap:anywhere}
.op-card>*{min-width:0}
.bonus-value,.op-title,.article p,.article li,.utility p,.utility li{overflow-wrap:break-word}
@media (min-width:711px) and (max-width:1100px){
  .op-card{grid-template-columns:32px 72px minmax(0,1fr) minmax(0,1.25fr);gap:12px}
  .op-card .cta{grid-column:1/-1;justify-self:stretch}
  .logo-box{width:72px;height:72px}
}
@media (max-width:710px){
  .wrap{width:calc(100% - 28px)}
  .head-inner{gap:10px}
  .brand{font-size:clamp(13px,3.7vw,16px);letter-spacing:-.045em;line-height:1.2;white-space:normal;overflow-wrap:anywhere}
  .nav-toggle{flex:0 0 auto;min-height:40px}
  .hero h1{font-size:clamp(30px,8.5vw,37px);overflow-wrap:anywhere}
  .hero-inner{padding:30px 0;gap:20px}
  .hero-photo{width:100%;min-width:0}
  .affiliate-top h2{overflow-wrap:anywhere}
  .op-card{grid-template-columns:28px 64px minmax(0,1fr);gap:10px;padding:14px}
  .logo-box{width:64px;height:64px}
  .rank{width:28px;height:28px;font-size:13px}
  .score{flex-wrap:wrap;row-gap:5px}
  .op-title{font-size:15px;overflow-wrap:anywhere}
  .bonus-col,.op-card .cta{grid-column:1/-1;min-width:0}
  .bonus-value{font-size:14px}
  .article h2{font-size:clamp(25px,7vw,32px)}
  .article h3{font-size:clamp(20px,5.7vw,23px)}
  .article-figure img{aspect-ratio:auto}
  .table-scroll{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .article table{min-width:590px}
  .footer-links{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px}
  .footer a{overflow-wrap:anywhere}
  .utility-article{padding:22px 17px}
}
@media(max-width:355px){
  .footer-links{grid-template-columns:1fr}
  .trust-row span{font-size:12px}
  .op-card{grid-template-columns:25px 58px minmax(0,1fr);gap:8px;padding:12px}
  .logo-box{width:58px;height:58px}
}

/* Mobile layout revision: fixed readable viewport, contained grids */
html{width:100%;overflow-x:clip}
body{width:100%;min-width:0;overflow-x:clip}
@media(max-width:767px){
  .wrap{width:auto;max-width:none;margin-inline:16px}
  .site-header .head-inner{display:flex;min-height:64px;justify-content:space-between;align-items:center;gap:12px}
  .site-header .brand{display:block;flex:1 1 auto;min-width:0;font-size:clamp(14px,3.7vw,17px);letter-spacing:-.05em;line-height:1.25;overflow-wrap:anywhere;white-space:normal}
  .site-header .nav-toggle{display:block;flex:0 0 auto;min-height:42px}
  .site-header .nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;padding:12px 16px 18px;background:#fbfaf6;z-index:30;box-shadow:0 12px 20px #192d3026}
  .site-header .nav.open{display:grid;gap:6px}
  .hero-inner{display:grid;grid-template-columns:minmax(0,1fr);padding:32px 0;gap:24px}
  .hero-inner > *{min-width:0;max-width:100%}
  .hero h1{font-size:clamp(30px,8vw,42px);line-height:1.12;letter-spacing:-.045em;overflow-wrap:break-word}
  .hero p{font-size:16px;line-height:1.65}
  .hero-photo{width:100%;max-width:100%;aspect-ratio:16/9;transform:none;border-width:5px}
  .affiliate{padding:40px 0}
  .affiliate-top{display:block}
  .affiliate-list{display:grid;grid-template-columns:minmax(0,1fr);gap:15px}
  .op-card,.op-card:first-child{width:100%;min-width:0;display:grid;grid-template-columns:26px 60px minmax(0,1fr);column-gap:10px;row-gap:12px;padding:14px 12px;border-radius:14px}
  .rank{height:26px;width:26px;font-size:12px}
  .logo-box{height:60px;width:60px;max-width:100%}
  .op-title{font-size:16px;line-height:1.35;overflow-wrap:anywhere}
  .score{display:flex;flex-wrap:wrap;gap:5px}
  .stars{font-size:14px}
  .bonus-col{grid-column:1/-1;min-width:0;padding:12px;background:#f0f8f5;border-radius:10px;text-align:center}
  .bonus-value{font-size:14px;overflow-wrap:anywhere}
  .op-card .cta{grid-column:1/-1;width:100%;min-height:48px}
  .content-layout{display:block;padding:12px 0 65px}
  .article{max-width:100%;min-width:0;font-size:16px;line-height:1.7}
  .article h2{font-size:clamp(25px,7vw,32px);line-height:1.25}
  .article h3{font-size:clamp(20px,5.6vw,24px)}
  .article-figure,.article-figure img{max-width:100%}
  .article-figure img{height:auto;aspect-ratio:auto}
  .table-scroll{display:block;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
  .article table{min-width:590px}
  .toc{display:none}
  .footer-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
  .footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .utility-article{max-width:100%;min-width:0;padding:22px 17px}
}
@media(max-width:360px){.wrap{margin-inline:12px}.op-card{grid-template-columns:24px 54px minmax(0,1fr);gap:8px}.logo-box{width:54px;height:54px}.footer-links{grid-template-columns:minmax(0,1fr)}}
