/* TopTech Console -- Cold Luxury Console design system */

@font-face{font-family:'Space Grotesk';src:url('../fonts/space-grotesk-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;}
@font-face{font-family:'Space Grotesk';src:url('../fonts/space-grotesk-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;}
@font-face{font-family:'Space Grotesk';src:url('../fonts/space-grotesk-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;}
@font-face{font-family:'Manrope';src:url('../fonts/manrope-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'Manrope';src:url('../fonts/manrope-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;}
@font-face{font-family:'Manrope';src:url('../fonts/manrope-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;}
@font-face{font-family:'Manrope';src:url('../fonts/manrope-800.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap;}

:root{
  --bg:#F5F6F8;
  --surface:#FFFFFF;
  --surface-raised:#EEF1F4;
  --ink:#10141A;
  --ink-muted:#5B6470;
  --accent:#2F86FF;
  --accent-ink:#03060B;
  --border:#E2E6EB;
  --success:#1C9A6C;
  --danger:#D93A2C;
  --font-heading:'Space Grotesk',Arial,sans-serif;
  --font-body:'Manrope',Arial,sans-serif;
  --space-xs:8px;
  --space-sm:16px;
  --space-md:24px;
  --space-lg:48px;
  --space-xl:96px;
  --radius-sm:6px;
  --radius-md:12px;
  --radius-pill:999px;
  --maxw:1200px;
}

:where(*,*::before,*::after){box-sizing:border-box;}
:where(html){scroll-behavior:smooth;}
:where(body,h1,h2,h3,h4,p,figure,blockquote,dl,dd,ul,ol){margin:0;}
:where(ul,ol){padding:0;list-style:none;}
:where(img,picture,video,svg){display:block;max-width:100%;height:auto;}
:where(a){color:inherit;text-decoration:none;}
:where(button){font:inherit;color:inherit;background:none;border:none;cursor:pointer;}

body{
  background:var(--bg);
  color:var(--ink);
  font-family:var(--font-body);
  font-weight:400;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

:where(h1,h2,h3,h4){font-family:var(--font-heading);color:var(--ink);line-height:1.1;font-weight:600;letter-spacing:-0.01em;}
h1{font-size:clamp(2.8rem,5.2vw,4.5rem);line-height:1.04;}
h2{font-size:clamp(1.9rem,2.8vw,2.4rem);}
h3{font-size:1.2rem;}

.container{max-width:var(--maxw);margin:0 auto;padding:0 var(--space-md);}

@media(max-width:720px){
  .container{padding:0 var(--space-sm);}
}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:14px 28px;border-radius:var(--radius-pill);
  font-family:var(--font-heading);font-weight:600;font-size:0.95rem;
  white-space:nowrap;transition:transform .15s ease, background-color .15s ease, border-color .15s ease;
}
.btn-primary{background:var(--accent);color:var(--accent-ink);}
.btn-primary:hover{transform:translateY(-1px);background:#4794ff;}
.btn-ghost{border:1px solid var(--border);color:var(--ink);}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent);}

/* ---------- Header ---------- */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,0.92);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:68px;gap:var(--space-md);}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-heading);font-weight:700;font-size:1.05rem;}
.brand,.brand .custom-logo-link{display:flex;align-items:center;}
.brand img,.brand .custom-logo{max-height:44px;width:auto;display:block;}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:var(--accent);color:var(--accent-ink);font-family:var(--font-heading);font-weight:700;font-size:0.85rem;}
.site-nav{display:flex;}
.nav-list{display:flex;gap:26px;align-items:center;}
.nav-list a{font-weight:600;color:var(--ink);font-size:0.92rem;transition:color .15s ease;}
.nav-list a:hover{color:var(--accent);}

.header-actions{display:flex;align-items:center;gap:6px;}
.icon-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-pill);color:var(--ink);transition:background-color .15s ease;}
.icon-btn:hover{background:var(--surface-raised);}

.search-panel{max-height:0;overflow:hidden;border-bottom:0 solid var(--border);transition:max-height .25s ease;background:var(--surface);}
.search-panel.is-open{max-height:90px;border-bottom-width:1px;}
.search-form{display:flex;align-items:center;gap:12px;padding:18px 0;color:var(--ink-muted);}
.search-form input{flex:1;border:none;outline:none;background:none;font-family:var(--font-body);font-size:1.05rem;color:var(--ink);}
.search-form input::placeholder{color:var(--ink-muted);}
.nav-toggle{display:none;flex-direction:column;gap:5px;width:28px;}
.nav-toggle span{display:block;height:2px;width:100%;background:var(--ink);border-radius:2px;}
.mobile-nav{display:none;}

@media(max-width:860px){
  .site-nav{display:none;}
  .nav-toggle{display:flex;}
  .mobile-nav{position:fixed;inset:68px 0 0 0;background:var(--bg);padding:var(--space-lg) var(--space-md);transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .2s ease, transform .2s ease;z-index:49;}
  .mobile-nav.is-open{opacity:1;transform:translateY(0);pointer-events:auto;}
  .mobile-nav-list{display:flex;flex-direction:column;gap:var(--space-md);}
  .mobile-nav-list a{font-family:var(--font-heading);font-size:1.4rem;font-weight:600;}
}

/* ---------- Hero ---------- */
.hero{position:relative;padding:var(--space-xl) 0 var(--space-lg);overflow:hidden;}
.hero-glow{position:absolute;inset:-20% -10% auto -10%;height:640px;pointer-events:none;z-index:0;background:radial-gradient(560px 360px at 12% 15%, rgba(47,134,255,0.10), transparent 60%),radial-gradient(480px 320px at 78% 0%, rgba(139,92,246,0.06), transparent 60%);filter:blur(10px);}
.hero .container{position:relative;z-index:1;}
.hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:var(--space-xl);align-items:center;}
.eyebrow{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:0.08em;font-size:0.8rem;color:var(--accent);margin-bottom:var(--space-sm);}
.hero-copy h1{margin-bottom:var(--space-md);}
.accent-text{color:var(--accent);}
.hero-sub{color:var(--ink-muted);font-size:1.15rem;max-width:46ch;margin-bottom:var(--space-md);}
.hero-actions{display:flex;gap:var(--space-sm);flex-wrap:wrap;}

.verdict-card{
  display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;
  transform:rotate(-1.5deg);transition:transform .25s ease, border-color .25s ease;
}
.verdict-card:hover{transform:rotate(0deg) translateY(-4px);border-color:var(--accent);}
.verdict-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--surface-raised);}
.verdict-media img{width:100%;height:100%;object-fit:cover;}
.badge{position:absolute;top:14px;left:14px;padding:6px 14px;border-radius:var(--radius-pill);font-family:var(--font-heading);font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;}
.badge-accent{background:var(--accent);color:var(--accent-ink);}
.verdict-body{padding:var(--space-md);}
.verdict-body h3{margin:8px 0;}
.verdict-body p{color:var(--ink-muted);font-size:0.95rem;}

@media(max-width:920px){
  .hero-grid{grid-template-columns:1fr;}
  .verdict-card{transform:none;order:-1;}
}

/* ---------- Category strip ---------- */
.cat-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:var(--space-sm) 0;overflow-x:auto;}
.cat-strip-inner{display:flex;gap:10px;}
.cat-pill{flex:0 0 auto;padding:8px 16px;border:1px solid var(--border);border-radius:var(--radius-pill);font-size:0.85rem;color:var(--ink-muted);display:flex;gap:6px;transition:border-color .15s ease,color .15s ease;}
.cat-pill span{color:var(--ink-muted);opacity:0.7;}
.cat-pill:hover{border-color:var(--accent);color:var(--ink);}

/* ---------- Sections ---------- */
.section{padding:var(--space-xl) 0;}
.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-lg);gap:var(--space-md);}
.link-more{color:var(--accent);font-family:var(--font-heading);font-weight:600;font-size:0.95rem;white-space:nowrap;}

.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);}
.post-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;transition:border-color .2s ease, transform .2s ease;display:block;}
.post-card:hover{border-color:var(--accent);transform:translateY(-3px);}
.post-card-media{aspect-ratio:16/10;background:var(--surface-raised);overflow:hidden;}
.post-card-media img{width:100%;height:100%;object-fit:cover;}
.media-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--surface-raised),var(--surface));}
.post-card-body{padding:var(--space-md);}
.tag{display:inline-block;font-family:var(--font-heading);font-size:0.72rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--accent);margin-bottom:8px;}
.post-card-body h3{font-size:1.05rem;margin-bottom:8px;line-height:1.3;}
.post-card-body p{color:var(--ink-muted);font-size:0.9rem;margin-bottom:12px;}
.meta{color:var(--ink-muted);font-size:0.8rem;}

@media(max-width:920px){.post-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:620px){.post-grid{grid-template-columns:1fr;}}

/* ---------- Trust / stats ---------- */
.trust{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:var(--space-xl) 0;}
.trust-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--space-lg);align-items:center;}
.trust-lead p{color:var(--ink-muted);margin-top:var(--space-sm);font-size:1.05rem;max-width:52ch;}
.trust-stats{display:flex;gap:var(--space-lg);}
.stat{display:flex;flex-direction:column;gap:4px;}
.stat-num{font-family:var(--font-heading);font-size:2.4rem;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums;}
.stat-label{color:var(--ink-muted);font-size:0.85rem;}

@media(max-width:820px){.trust-grid{grid-template-columns:1fr;}.trust-stats{flex-wrap:wrap;}}

/* ---------- Page / single ---------- */
.page-shell,.single-shell,.archive-shell{padding:var(--space-xl) 0;}
.page-header{margin-bottom:var(--space-lg);}
.single-header .tag{margin-bottom:12px;}
.single-header h1{margin-bottom:12px;}
.single-media{margin-bottom:var(--space-lg);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border);}

.prose{max-width:68ch;font-size:1.05rem;color:var(--ink);}
.prose p{margin-bottom:1.3em;color:var(--ink);}
.prose h2{margin:1.6em 0 0.6em;}
.prose h3{margin:1.4em 0 0.5em;}
.prose ul,.prose ol{margin:0 0 1.3em 1.4em;list-style:disc;}
.prose ol{list-style:decimal;}
.prose li{margin-bottom:0.5em;}
.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;}
.prose img{border-radius:var(--radius-md);margin:1.5em 0;}
.prose blockquote{border-left:3px solid var(--accent);padding-left:var(--space-md);color:var(--ink-muted);margin:1.5em 0;}
.prose table{width:100%;border-collapse:collapse;margin:1.5em 0;background:var(--surface-raised);border-radius:var(--radius-sm);overflow:hidden;font-variant-numeric:tabular-nums;}
.prose table th{background:var(--surface);text-align:left;padding:12px 16px;font-family:var(--font-heading);font-size:0.85rem;text-transform:uppercase;letter-spacing:0.03em;border-bottom:1px solid var(--border);}
.prose table td{padding:12px 16px;border-bottom:1px solid var(--border);color:var(--ink-muted);}
.prose table tr:last-child td{border-bottom:none;}

.single-layout{display:grid;grid-template-columns:1fr 300px;gap:var(--space-xl);align-items:start;margin-top:var(--space-lg);}
.single-layout .prose{max-width:none;}

.article-sidebar{position:sticky;top:88px;display:flex;flex-direction:column;gap:var(--space-md);}
.sidebar-box{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-md);background:var(--surface);}
.sidebar-box h4{font-family:var(--font-heading);font-size:0.78rem;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-muted);margin-bottom:var(--space-sm);}
.sidebar-toc ol{list-style:none;counter-reset:toc;display:flex;flex-direction:column;gap:10px;}
.sidebar-toc li{counter-increment:toc;font-size:0.88rem;line-height:1.4;}
.sidebar-toc li a{color:var(--ink);}
.sidebar-toc li a::before{content:counter(toc) '. ';color:var(--accent);font-weight:700;}
.sidebar-toc li a:hover{color:var(--accent);}
.sidebar-author p,.sidebar-disclaimer p{font-size:0.85rem;color:var(--ink-muted);line-height:1.55;margin-bottom:8px;}
.sidebar-author p:last-child,.sidebar-disclaimer p:last-child{margin-bottom:0;}
.sidebar-author strong{color:var(--ink);}
.sidebar-disclaimer a{color:var(--accent);}

@media(max-width:960px){
  .single-layout{grid-template-columns:1fr;}
  .article-sidebar{position:static;flex-direction:row;flex-wrap:wrap;}
  .sidebar-box{flex:1 1 240px;}
}
@media(max-width:620px){.article-sidebar{flex-direction:column;}}

.single-footer{margin-top:var(--space-lg);}

.legal-page .prose{max-width:72ch;}

.not-found{text-align:center;padding:var(--space-xl) 0;}
.not-found h1{font-size:5rem;color:var(--accent);}
.not-found p{color:var(--ink-muted);margin:var(--space-sm) 0 var(--space-lg);}

.archive-desc{color:var(--ink-muted);margin-top:var(--space-sm);}
.pagination{margin-top:var(--space-lg);display:flex;gap:8px;}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink-muted);}
.pagination .page-numbers.current{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);}

/* ---------- Footer ---------- */
.site-footer{border-top:1px solid var(--border);padding:var(--space-xl) 0 var(--space-md);background:var(--surface);}
.footer-inner{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--space-lg);margin-bottom:var(--space-lg);}
.footer-brand p{color:var(--ink-muted);margin-top:var(--space-sm);max-width:32ch;}
.footer-col h4{font-family:var(--font-heading);font-size:0.85rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--ink-muted);margin-bottom:var(--space-sm);}
.footer-list{display:flex;flex-direction:column;gap:10px;}
.footer-list a{color:var(--ink-muted);font-size:0.92rem;}
.footer-list a:hover{color:var(--accent);}
.footer-bottom{border-top:1px solid var(--border);padding-top:var(--space-md);color:var(--ink-muted);font-size:0.85rem;}

@media(max-width:820px){.footer-inner{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.footer-inner{grid-template-columns:1fr;}}

/* ---------- Magazine sections ---------- */
.mag-section{border-top:1px solid var(--border);}
.mag-spotlight{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-md);}
.mag-spotlight-side{display:flex;flex-direction:column;gap:var(--space-md);}

.post-card--lead{display:grid;grid-template-columns:1fr;}
.post-card--lead .post-card-media{aspect-ratio:16/9;}
.post-card--lead h3{font-size:1.5rem;line-height:1.25;}
.post-card--lead .post-card-body{padding:var(--space-md) var(--space-md) var(--space-lg);}

.post-card--compact{display:grid;grid-template-columns:96px 1fr;gap:var(--space-sm);border:none;background:none;align-items:start;}
.post-card--compact:hover{transform:none;border-color:transparent;}
.post-card--compact .post-card-media{aspect-ratio:1/1;border-radius:var(--radius-sm);}
.post-card--compact .post-card-body{padding:0;}
.post-card--compact h3{font-size:0.95rem;line-height:1.3;margin-bottom:6px;}

.post-grid--3{grid-template-columns:repeat(3,1fr);}
.post-grid--4{grid-template-columns:repeat(4,1fr);}

@media(max-width:920px){
  .mag-spotlight{grid-template-columns:1fr;}
  .post-grid--3{grid-template-columns:repeat(2,1fr);}
  .post-grid--4{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:620px){
  .post-grid--3,.post-grid--4{grid-template-columns:1fr;}
}

.coming-soon-block{padding-top:var(--space-lg);padding-bottom:var(--space-lg);}
.coming-soon-grid{display:flex;flex-wrap:wrap;gap:var(--space-sm);}
.coming-soon-card{flex:1 1 180px;padding:var(--space-md);border:1px dashed var(--border);border-radius:var(--radius-md);}
.coming-soon-card h3{font-size:1rem;margin-bottom:4px;}
.coming-soon-card p{color:var(--ink-muted);font-size:0.85rem;}
.coming-soon-card:hover{border-color:var(--accent);}

/* ---------- Single post: more-block ---------- */
.more-block{padding:var(--space-lg) 0;border-top:1px solid var(--border);}
.more-block h2{margin-bottom:var(--space-md);font-size:1.4rem;}
.more-block--random .post-card{border-style:dashed;}

/* ---------- Footer polish ---------- */
.footer-brand{display:flex;flex-direction:column;gap:var(--space-sm);align-items:flex-start;}
.footer-brand img{max-height:40px;width:auto;}

/* ---------- Hero trust row ---------- */
.trust-row{display:flex;flex-wrap:wrap;gap:var(--space-md);margin-top:var(--space-lg);}
.trust-item{display:flex;align-items:flex-start;gap:10px;max-width:180px;}
.trust-icon{color:var(--accent);font-size:0.6rem;margin-top:6px;}
.trust-item strong{display:block;font-family:var(--font-heading);font-size:0.88rem;font-weight:700;margin-bottom:2px;}
.trust-item span{color:var(--ink-muted);font-size:0.8rem;line-height:1.4;}

/* ---------- Feature card (hero / bento) ---------- */
.feature-card{position:relative;display:block;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border);background:var(--ink);}
.feature-card img{width:100%;height:100%;object-fit:cover;display:block;}
.feature-card--hero{aspect-ratio:4/3.4;}
.feature-card--bento{aspect-ratio:16/11;}
.feature-badge{position:absolute;top:16px;left:16px;background:var(--accent);color:#fff;font-family:var(--font-heading);font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;padding:6px 14px;border-radius:var(--radius-pill);z-index:2;}
.feature-overlay{position:absolute;left:0;right:0;bottom:0;padding:56px 24px 22px;background:linear-gradient(180deg, transparent 0%, rgba(2,4,8,0.25) 25%, rgba(2,4,8,0.75) 55%, rgba(2,4,8,0.94) 78%, rgba(2,4,8,0.98) 100%);color:#fff;}
.feature-overlay h3{text-shadow:0 2px 12px rgba(0,0,0,0.5);}
.feature-overlay h3{color:#fff;font-size:1.5rem;line-height:1.25;margin:8px 0 8px;}
.feature-overlay p{color:rgba(255,255,255,0.82);font-size:0.95rem;margin-bottom:14px;max-width:46ch;}
.tag--light{color:#fff;background:rgba(255,255,255,0.16);padding:4px 10px;border-radius:var(--radius-pill);font-size:0.7rem;}
.feature-meta-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:rgba(255,255,255,0.75);font-size:0.85rem;}
.feature-meta-dot{opacity:0.6;}
.feature-arrow{position:absolute;right:20px;bottom:20px;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,0.14);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;z-index:2;transition:background-color .15s ease;}
.feature-card:hover .feature-arrow{background:var(--accent);}

/* ---------- Verdict pill ---------- */
.verdict-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--radius-pill);font-family:var(--font-heading);font-size:0.72rem;font-weight:700;text-transform:none;}
.verdict-pill-label{display:none;}
.verdict-pill--worth-it{background:#DEF7EC;color:#0E7B4F;}
.verdict-pill--worth-considering{background:#FFF1D6;color:#9A5B00;}
.verdict-pill--skip-it{background:#FCE4E1;color:#B23223;}
.verdict-pill--best-for-most-people{background:#DCEBFF;color:#1450A3;}
.feature-overlay .verdict-pill--worth-it{background:rgba(28,154,108,0.85);color:#fff;}
.feature-overlay .verdict-pill--worth-considering{background:rgba(180,120,10,0.85);color:#fff;}
.feature-overlay .verdict-pill--skip-it{background:rgba(217,58,44,0.85);color:#fff;}
.post-card-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}

/* ---------- Bento latest ---------- */
.bento-latest{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--space-md);align-items:stretch;}
.bento-side{display:flex;flex-direction:column;gap:var(--space-md);}
.post-card--compact-row{display:grid;grid-template-columns:96px 1fr;gap:14px;border:1px solid var(--border);border-radius:var(--radius-md);padding:14px;background:var(--surface);flex:1;}
.post-card--compact-row .post-card-media{aspect-ratio:1/1;border-radius:var(--radius-sm);}
.post-card--compact-row .post-card-body{padding:0;}
.post-card--compact-row h3{font-size:0.95rem;line-height:1.3;margin-bottom:6px;}
.post-card--compact-row p{font-size:0.82rem;margin-bottom:6px;}

@media(max-width:1080px){.bento-latest{grid-template-columns:1fr;}}

/* ---------- Tri-grid (category rows) ---------- */
.section--tight{padding:var(--space-lg) 0;}
.tri-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;}
.tri-col{display:flex;flex-direction:column;gap:14px;padding:0 var(--space-md);}
.tri-col:first-child{padding-left:0;}
.tri-col:last-child{padding-right:0;}
.tri-col + .tri-col{border-left:1px solid var(--border);}
.section-head--sm{margin-bottom:14px;}
.section-head--sm h2{font-size:1.3rem;}

.post-card--tri-feature{border:none;background:none;}
.post-card--tri-feature .post-card-media{aspect-ratio:16/10;}
.post-card--tri-feature .post-card-body{padding:14px 0 0;}
.post-card--tri-feature h3{font-size:1.05rem;}

.post-card--compact-mini{display:grid;grid-template-columns:64px 1fr;gap:12px;border:none;background:none;align-items:center;}
.post-card--compact-mini .post-card-media{aspect-ratio:1/1;border-radius:var(--radius-sm);}
.post-card--compact-mini .post-card-body{padding:0;}
.post-card--compact-mini h3{font-size:0.86rem;line-height:1.3;margin-bottom:4px;}
.post-card--compact-mini .tag{display:none;}

@media(max-width:1080px){.tri-grid{grid-template-columns:1fr;}.tri-col{padding:0;border-left:none !important;}.tri-col + .tri-col{border-top:1px solid var(--border);padding-top:var(--space-md);margin-top:6px;}}

/* ---------- Section heads with subtitle ---------- */
.section-head{align-items:flex-start;}
.section-sub{color:var(--ink-muted);font-size:0.95rem;margin-top:6px;}

/* ---------- Buying guides ---------- */
.guide-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-sm);}
.guide-card{display:block;position:relative;}
.guide-icon{position:absolute;top:-10px;left:14px;z-index:2;width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:0.9rem;border:3px solid var(--bg);}
.guide-media{aspect-ratio:4/3;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border);margin-bottom:12px;}
.guide-card h3{font-size:0.98rem;line-height:1.35;margin-bottom:8px;}
.guide-link{color:var(--accent);font-family:var(--font-heading);font-weight:600;font-size:0.85rem;}

@media(max-width:920px){.guide-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:620px){.guide-grid{grid-template-columns:repeat(2,1fr);}}

/* ---------- Compare cards ---------- */
.compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);}
.compare-card{display:block;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--surface);transition:border-color .2s ease;}
.compare-card:hover{border-color:var(--accent);}
.compare-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--surface-raised);}
.compare-media img{width:100%;height:100%;object-fit:cover;}
.compare-vs{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;background:var(--ink);color:#fff;font-family:var(--font-heading);font-weight:700;font-size:0.75rem;display:flex;align-items:center;justify-content:center;z-index:2;}
.compare-body{padding:var(--space-md);}
.compare-body h3{font-size:1.05rem;line-height:1.35;margin-bottom:12px;}
.compare-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;}

@media(max-width:920px){.compare-grid{grid-template-columns:1fr;}}

/* ---------- Newsletter ---------- */
.newsletter{background:var(--surface-raised);border-radius:var(--radius-md);margin:0 var(--space-md) var(--space-lg);padding:var(--space-lg) 0 var(--space-sm);}
.newsletter-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);flex-wrap:wrap;}
.newsletter-copy{display:flex;align-items:flex-start;gap:16px;max-width:520px;}
.newsletter-icon{font-size:1.6rem;color:var(--accent);}
.newsletter-copy h2{font-size:1.5rem;margin-bottom:6px;}
.newsletter-copy p{color:var(--ink-muted);}
.newsletter-form{display:flex;gap:10px;flex:1;min-width:280px;max-width:420px;}
.newsletter-form input{flex:1;padding:13px 18px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);font-family:var(--font-body);font-size:0.95rem;color:var(--ink);}
.newsletter-form input:focus{outline:2px solid var(--accent);outline-offset:1px;}
.newsletter-note{text-align:center;color:var(--ink-muted);font-size:0.8rem;padding:10px 0 4px;}

@media(max-width:640px){.newsletter{margin:0 0 var(--space-lg);border-radius:0;}.newsletter-form{max-width:100%;flex-basis:100%;}}

/* ---------- Dark footer ---------- */
.site-footer{
  position:relative;
  background-color:#0B0E14;
  background-image:
    linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px),
    radial-gradient(700px 420px at 88% 0%, rgba(47,134,255,0.16), transparent 65%);
  background-size:48px 48px, 48px 48px, 100% 100%;
  background-position:center top;
  border-top:none;padding-top:var(--space-md);
  overflow:hidden;
}
.footer-inner{grid-template-columns:1.2fr 1fr 1fr 1fr 1fr;gap:0;border-top:1px solid #1D222C;border-bottom:1px solid #1D222C;padding:var(--space-md) 0;margin-bottom:var(--space-sm);}
.footer-inner > div{padding:0 var(--space-lg);}
.footer-inner > div:first-child{padding-left:0;}
.footer-inner > div + div{border-left:1px solid #1D222C;}
.footer-brand{gap:14px;}
.footer-brand img,.footer-brand .custom-logo{max-height:40px;width:auto;}
.footer-brand p{color:#7C8598;line-height:1.6;}
.footer-col h4{color:#5B6472;font-size:0.75rem;letter-spacing:0.08em;margin-bottom:var(--space-md);}
.footer-list{gap:14px;}
.footer-list a{color:#D3D8E2;font-size:0.93rem;}
.footer-list a:hover{color:var(--accent);}
.footer-bottom{border-top:none;padding-top:0;color:#5B6472;}
.footer-brand .brand-mark{background:var(--accent);color:#03060B;}

@media(max-width:980px){
  .footer-inner{grid-template-columns:1fr 1fr 1fr;row-gap:var(--space-lg);}
  .footer-inner > div{border-left:none !important;padding:0;}
}
@media(max-width:620px){.footer-inner{grid-template-columns:1fr 1fr;}}

@media (prefers-reduced-motion: reduce){
  *{transition-duration:0.001ms !important;animation-duration:0.001ms !important;}
}
