:root{--color-bg: #f8fafc;--color-surface: #ffffff;--color-border: #e2e8f0;--color-text: #1e293b;--color-text-muted: #64748b;--color-accent: #7c3aed;--color-accent-hover: #6d28d9;--color-accent-light: #a78bfa;--color-success: #16a34a;--color-danger: #dc2626;--color-header-bg: #0f0a1f;--color-header-text: #f1f5f9;--color-footer-bg: #1e293b;--color-footer-text: #cbd5e1;--radius: 6px;--radius-lg: 10px;--shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.06);--shadow-md: 0 4px 12px rgba(0,0,0,.1);--container: 1100px;--font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font);background:var(--color-bg);color:var(--color-text);line-height:1.65;font-size:1rem}img{max-width:100%;display:block}a{color:var(--color-accent)}a:hover{color:var(--color-accent-hover)}.container{max-width:var(--container);margin-inline:auto;padding-inline:1.25rem}.site-header{background:var(--color-header-bg);color:var(--color-header-text);position:sticky;top:0;z-index:100;box-shadow:0 1px 4px #0000004d}.site-header .container{display:flex;align-items:center;gap:2rem;padding-block:.85rem;flex-wrap:wrap}.logo{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;color:#fff;text-decoration:none;white-space:nowrap}.logo .logo-accent{color:var(--color-accent-light)}.site-header nav{display:flex;gap:1.25rem;flex-wrap:wrap}.site-header nav a{color:var(--color-header-text);text-decoration:none;font-size:.9rem;opacity:.85;transition:opacity .15s}.site-header nav a:hover{opacity:1;color:#fff}.btn{display:inline-block;padding:.5rem 1.1rem;border-radius:var(--radius);font-size:.875rem;font-weight:600;text-decoration:none;transition:background .15s,opacity .15s;white-space:nowrap}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--color-accent-hover);color:#fff}.btn-secondary{background:transparent;color:var(--color-accent);border:1.5px solid var(--color-accent)}.btn-secondary:hover{background:var(--color-accent);color:#fff}.btn.full-width{display:block;text-align:center}.hero{background:radial-gradient(900px circle at 50% -10%,rgba(124,58,237,.45),transparent 60%),linear-gradient(135deg,#0f0a1f,#2e1065);color:#fff;padding:4.5rem 0 4rem;text-align:center}.hero-eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.78rem;font-weight:700;color:var(--color-accent-light);margin-bottom:.85rem}.hero h1{font-size:clamp(1.9rem,4.5vw,3rem);font-weight:800;line-height:1.15;letter-spacing:-.02em;margin-bottom:.9rem}.hero-highlight{background:linear-gradient(90deg,var(--color-accent-light),#f0abfc);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-subtitle{font-size:clamp(1rem,2vw,1.2rem);color:#cbbbe8;max-width:620px;margin-inline:auto}.comparison-section{padding:3rem 0 4rem}.comparison-section h2{font-size:1.5rem;margin-bottom:1.5rem}.comparison-table-wrapper{overflow-x:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:var(--color-surface)}.comparison-table{width:100%;border-collapse:collapse;font-size:.9rem}.comparison-table thead th{background:var(--color-header-bg);color:var(--color-header-text);text-align:left;padding:.85rem 1rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.comparison-table tbody tr{border-bottom:1px solid var(--color-border);transition:background .1s}.comparison-table tbody tr:last-child{border-bottom:none}.comparison-table tbody tr:hover{background:#f1f5f9}.comparison-table td{padding:1rem;vertical-align:top}.comparison-table .vpn-name a{font-weight:700;font-size:1rem;display:block;text-decoration:none;color:var(--color-text)}.comparison-table .vpn-name a:hover{color:var(--color-accent)}.comparison-table .tagline{display:block;font-size:.8rem;color:var(--color-text-muted);margin-top:.2rem}.comparison-table .features ul{list-style:none;padding:0}.comparison-table .features li{padding:.15rem 0;color:var(--color-text-muted);font-size:.82rem}.comparison-table .features li:before{content:"✓ ";color:var(--color-success)}.comparison-table .price strong{font-size:1.1rem}.comparison-table .price small{color:var(--color-text-muted);font-size:.78rem}.comparison-table .cta{display:flex;flex-direction:column;gap:.5rem;min-width:140px}.review-link{font-size:.8rem;color:var(--color-text-muted)}.rating-badge{display:inline-block;background:var(--color-accent);color:#fff;padding:.25rem .6rem;border-radius:var(--radius);font-weight:700;font-size:.85rem}.rating-badge.large{font-size:1.1rem;padding:.4rem .9rem}.todo{color:var(--color-text-muted);font-style:italic;font-size:.82rem}.review-page{display:grid;grid-template-columns:1fr 300px;grid-template-rows:auto 1fr;gap:2rem;padding-block:2.5rem;align-items:start}.review-header{grid-column:1 / -1;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.review-header h1{font-size:clamp(1.5rem,3vw,2.2rem);margin-bottom:.5rem}.review-tagline{color:var(--color-text-muted);font-size:1.1rem;margin-bottom:.75rem}.review-rating{margin-top:.5rem}.review-sidebar{grid-column:2}.sidebar-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow);position:sticky;top:80px}.sidebar-card h3{font-size:1rem;margin-bottom:1rem}.price-display{margin-bottom:1rem}.price-display .price{font-size:1.5rem;color:var(--color-accent)}.placeholder-notice{font-size:.8rem;color:var(--color-text-muted);text-align:center;padding:.5rem;background:#f8fafc;border-radius:var(--radius)}.review-content{grid-column:1}.review-content h2{font-size:1.35rem;margin-top:2rem;margin-bottom:.75rem;padding-bottom:.4rem;border-bottom:1px solid var(--color-border)}.review-content h3{font-size:1.1rem;margin-top:1.5rem;margin-bottom:.5rem}.review-content p{margin-bottom:1rem}.review-content ul,.review-content ol{margin-left:1.5rem;margin-bottom:1rem}.review-content li{margin-bottom:.3rem}@media(max-width:768px){.review-page{grid-template-columns:1fr}.review-sidebar{grid-column:1;grid-row:2}.review-content{grid-column:1;grid-row:3}.sidebar-card{position:static}}.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}.pros,.cons{border-radius:var(--radius);padding:1rem}.pros{background:#f0fdf4}.cons{background:#fff1f2}.pros h3{color:var(--color-success);font-size:.9rem;margin-bottom:.5rem}.cons h3{color:var(--color-danger);font-size:.9rem;margin-bottom:.5rem}.pros ul,.cons ul{list-style:none;padding:0}.pros li,.cons li{font-size:.82rem;padding:.2rem 0}.pros li:before{content:"+ ";color:var(--color-success);font-weight:700}.cons li:before{content:"− ";color:var(--color-danger);font-weight:700}@media(max-width:480px){.pros-cons{grid-template-columns:1fr}}.roundup-page{padding-block:2.5rem}.roundup-page h1{font-size:clamp(1.5rem,3vw,2.2rem);margin-bottom:.75rem}.roundup-intro{color:var(--color-text-muted);max-width:720px;margin-bottom:2.5rem;font-size:1.05rem}.roundup-list{list-style:none;display:flex;flex-direction:column;gap:1.5rem}.roundup-item{display:flex;gap:1.25rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow)}.roundup-rank{font-size:2rem;font-weight:800;color:var(--color-accent);min-width:3rem;text-align:center;line-height:1;padding-top:.2rem}.roundup-body{flex:1}.roundup-body h2{font-size:1.2rem;margin-bottom:.25rem}.roundup-body h2 a{text-decoration:none;color:var(--color-text)}.roundup-body h2 a:hover{color:var(--color-accent)}.roundup-tagline{color:var(--color-text-muted);font-size:.9rem;margin-bottom:.5rem}.roundup-blurb{margin-bottom:.75rem}.roundup-price{font-size:.875rem;color:var(--color-text-muted);margin-bottom:1rem}.roundup-actions{display:flex;gap:.75rem;flex-wrap:wrap}@media(max-width:480px){.roundup-item{flex-direction:column}.roundup-rank{text-align:left}}.site-footer{background:var(--color-footer-bg);color:var(--color-footer-text);padding:2.5rem 0;margin-top:4rem}.site-footer .container{display:flex;flex-direction:column;gap:.75rem}.disclosure{font-size:.875rem;line-height:1.6;max-width:720px;padding:1rem 1.25rem;background:#ffffff0d;border-left:3px solid var(--color-accent);border-radius:0 var(--radius) var(--radius) 0}.copyright{font-size:.8rem;color:#64748b}
