/*
Theme Name: ClearWaterTank
Theme URI: https://clearwatertank.com
Author: ClearWaterTank
Author URI: https://clearwatertank.com
Description: A clean, fast affiliate content theme for freshwater aquarium guides. Built for AdSense/Ezoic ad slots and Amazon affiliate product reviews.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: clearwatertank
Tags: blog, custom-colors, custom-logo, featured-images, footer-widgets, full-width-template, sticky-post, theme-options, threaded-comments, translation-ready
*/

/* ============================================================
   DESIGN TOKENS
   ============================================================ */
:root {
  --navy:  #0a1628;
  --ocean: #0d3b6e;
  --blue:  #1565c0;
  --aqua:  #00acc1;
  --light: #e3f2fd;
  --teal:  #00897b;
  --cream: #f8fbff;
  --td:    #1a1a2e;
  --tm:    #4a5568;
  --tl:    #94a3b8;
  --r:     8px;
  --sh:    0 2px 12px rgba(0,0,0,.08);
  --sh2:   0 8px 32px rgba(0,0,0,.12);
  --fh:    'Playfair Display', Georgia, serif;
  --fb:    'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --mw:    1200px;
}

/* ============================================================
   RESET & BASE
   ============================================================ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 17px; scroll-behavior: smooth; }
body { font-family: var(--fb); color: var(--td); background: var(--cream); line-height: 1.7; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--blue); text-decoration: none; }
a:hover { color: var(--ocean); text-decoration: underline; }
h1,h2,h3,h4 { font-family: var(--fh); line-height: 1.25; color: var(--navy); }
h1 { font-size: clamp(2rem, 5vw, 3rem); }
h2 { font-size: clamp(1.5rem, 3vw, 2.1rem); margin: 2.5rem 0 1rem; }
h3 { font-size: clamp(1.1rem, 2vw, 1.4rem); margin: 1.5rem 0 .5rem; }
p  { margin-bottom: 1.2rem; }
ul, ol { margin: 0 0 1.2rem 1.5rem; }
li { margin-bottom: .4rem; }

/* ============================================================
   LAYOUT
   ============================================================ */
.container { max-width: var(--mw); margin: 0 auto; padding: 0 1.5rem; }
.layout-sb { display: grid; grid-template-columns: 1fr 300px; gap: 2.5rem; align-items: start; }
section { padding: 4rem 0; }
section.alt { background: #fff; }

/* ============================================================
   READING PROGRESS BAR
   ============================================================ */
#rp { position: fixed; top: 0; left: 0; height: 3px; background: var(--aqua); width: 0%; z-index: 9999; transition: width .1s; }

/* ============================================================
   AD SLOTS
   ============================================================ */
.ad-slot { background: #f0f4f8; border: 1px dashed #cbd5e1; border-radius: var(--r); display: flex; align-items: center; justify-content: center; color: #94a3b8; font-size: .75rem; position: relative; padding-top: 1.5rem; }
.ad-slot::before { content: 'Advertisement'; font-size: .62rem; letter-spacing: .05em; text-transform: uppercase; position: absolute; top: .3rem; left: 50%; transform: translateX(-50%); white-space: nowrap; }
.ad-leader  { width: 100%; min-height: 90px; }
.ad-content { width: 100%; min-height: 90px; margin: 2rem 0; }
.ad-sb      { width: 100%; min-height: 250px; margin-bottom: 1.5rem; }

/* ============================================================
   NAVIGATION
   ============================================================ */
nav.site-nav { background: var(--navy); position: sticky; top: 0; z-index: 100; box-shadow: 0 2px 8px rgba(0,0,0,.3); }
.nav-inner { max-width: var(--mw); margin: 0 auto; padding: 0 1.5rem; display: flex; align-items: center; justify-content: space-between; height: 64px; }
.logo { display: flex; align-items: center; gap: .75rem; text-decoration: none; }
.logo-icon { width: 38px; height: 38px; background: linear-gradient(135deg, var(--aqua), var(--blue)); border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; }
.logo-text { font-family: var(--fh); font-size: 1.2rem; font-weight: 700; color: #fff; line-height: 1; }
.logo-text span { display: block; font-size: .6rem; font-family: var(--fb); color: var(--aqua); font-weight: 400; letter-spacing: .08em; text-transform: uppercase; margin-top: 2px; }
.nav-links { display: flex; align-items: center; gap: .25rem; list-style: none; }
.nav-links a { color: rgba(255,255,255,.8); font-size: .88rem; font-weight: 500; padding: .4rem .75rem; border-radius: var(--r); transition: all .2s; text-decoration: none; }
.nav-links a:hover { color: #fff; background: rgba(255,255,255,.12); }
.nav-links .cta a { background: var(--aqua); color: var(--navy); font-weight: 700; }
.nav-links .cta a:hover { background: #26c6da; }

/* ============================================================
   BUTTONS
   ============================================================ */
.btn { display: inline-flex; align-items: center; gap: .4rem; padding: .7rem 1.5rem; border-radius: var(--r); font-weight: 600; font-size: .95rem; cursor: pointer; border: 2px solid transparent; transition: all .2s; text-decoration: none; }
.btn-primary  { background: var(--aqua); color: var(--navy); }
.btn-primary:hover  { background: #26c6da; color: var(--navy); text-decoration: none; }
.btn-ghost    { background: rgba(255,255,255,.15); color: #fff; border-color: rgba(255,255,255,.4); }
.btn-ghost:hover    { background: rgba(255,255,255,.25); text-decoration: none; color: #fff; }
.btn-outline  { background: transparent; color: var(--blue); border-color: var(--blue); }
.btn-outline:hover  { background: var(--blue); color: #fff; text-decoration: none; }
.btn-buy { display: block; background: #ff9900; color: #000; font-weight: 700; padding: .65rem 1.25rem; border-radius: var(--r); text-decoration: none; text-align: center; font-size: .9rem; transition: background .2s; }
.btn-buy:hover { background: #e68a00; color: #000; text-decoration: none; }

/* ============================================================
   CARDS
   ============================================================ */
.card { background: #fff; border: 1px solid #e2e8f0; border-radius: var(--r); overflow: hidden; transition: box-shadow .2s, transform .2s; }
.card:hover { box-shadow: var(--sh2); transform: translateY(-2px); }
.card-img { aspect-ratio: 16/9; overflow: hidden; background: var(--light); display: flex; align-items: center; justify-content: center; font-size: 3rem; }
.card-body { padding: 1.5rem; }
.card-meta { font-size: .78rem; color: var(--tl); margin-bottom: .5rem; display: flex; align-items: center; gap: .75rem; }
.tag { background: var(--light); color: var(--blue); padding: .15rem .5rem; border-radius: 2rem; font-weight: 600; font-size: .75rem; }
.grid { display: grid; gap: 1.5rem; }
.grid-3 { grid-template-columns: repeat(3, 1fr); }

/* ============================================================
   REVIEW CARDS
   ============================================================ */
.review-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 2rem; margin-bottom: 2rem; position: relative; }
.rank-badge { position: absolute; top: -1px; right: 1.5rem; padding: .3rem .9rem; border-radius: 0 0 var(--r) var(--r); font-size: .75rem; font-weight: 700; color: #fff; }
.rank-1 { background: linear-gradient(135deg,#f59e0b,#d97706); }
.rank-2 { background: linear-gradient(135deg,#94a3b8,#64748b); }
.rank-3 { background: linear-gradient(135deg,var(--teal),#00695c); }
.rank-4 { background: linear-gradient(135deg,var(--blue),var(--ocean)); }
.product-meta { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; background: var(--light); border-radius: var(--r); padding: 1rem; margin: 1rem 0; }
.product-meta-item label { font-size: .72rem; text-transform: uppercase; letter-spacing: .05em; color: var(--tl); display: block; margin-bottom: .2rem; }
.product-meta-item span  { font-weight: 700; color: var(--navy); font-size: .95rem; }
.pros-cons { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin: 1.25rem 0; }
.pros h4 { color: #15803d; font-size: .85rem; margin-bottom: .5rem; }
.cons h4 { color: #dc2626; font-size: .85rem; margin-bottom: .5rem; }
.pros ul, .cons ul { list-style: none; margin: 0; padding: 0; font-size: .88rem; }
.pros li::before { content: '✓ '; color: #15803d; font-weight: 700; }
.cons li::before { content: '✗ '; color: #dc2626; font-weight: 700; }
.verdict { background: linear-gradient(135deg, var(--navy), var(--ocean)); color: #fff; border-radius: var(--r); padding: 1.25rem; margin: 1.25rem 0; }
.verdict strong { color: var(--aqua); display: block; margin-bottom: .35rem; font-size: .85rem; }

/* ============================================================
   CALLOUTS
   ============================================================ */
.callout { border-radius: var(--r); padding: 1rem 1.25rem; margin: 1.25rem 0; border-left: 4px solid; }
.callout strong { display: block; margin-bottom: .25rem; font-size: .88rem; }
.callout-info   { background: #eff6ff; border-color: var(--blue); }
.callout-tip    { background: #f0fdf4; border-color: #22c55e; }
.callout-warn   { background: #fffbeb; border-color: #f59e0b; }
.callout-danger { background: #fef2f2; border-color: #ef4444; }

/* ============================================================
   COMPARISON TABLES
   ============================================================ */
.compare-table { width: 100%; border-collapse: collapse; margin: 2rem 0; font-size: .9rem; }
.compare-table th { background: var(--navy); color: #fff; padding: .75rem 1rem; text-align: left; font-weight: 600; }
.compare-table td { padding: .75rem 1rem; border-bottom: 1px solid #e2e8f0; }
.compare-table tr:nth-child(even) td { background: #f8fafc; }
.win    { color: #15803d; font-weight: 600; }
.c-yes  { color: #15803d; font-weight: 600; }
.c-no   { color: #dc2626; font-weight: 600; }
.c-maybe { color: #d97706; font-weight: 600; }

/* ============================================================
   VS COMPARISON LAYOUT
   ============================================================ */
.vs-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin: 2rem 0; }
.vs-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 1.75rem; }
.vs-card.winner { border-color: var(--teal); border-width: 2px; }
.vs-badge { display: inline-block; background: var(--teal); color: #fff; font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; padding: .2rem .6rem; border-radius: 99px; margin-bottom: .6rem; }
.vs-specs { list-style: none; padding: 0; margin: 0 0 1rem; font-size: .88rem; }
.vs-specs li { padding: .35rem 0; border-bottom: 1px solid #f1f5f9; display: flex; justify-content: space-between; }

/* ============================================================
   BREADCRUMB
   ============================================================ */
.breadcrumb { font-size: .82rem; color: var(--tl); padding: .75rem 0; }
.breadcrumb a { color: var(--tl); text-decoration: none; }
.breadcrumb a:hover { color: var(--blue); }
.breadcrumb span { margin: 0 .4rem; }

/* ============================================================
   NEWSLETTER STRIP
   ============================================================ */
.nl-strip { background: linear-gradient(135deg, var(--navy), var(--ocean)); color: #fff; padding: 4rem 1.5rem; text-align: center; }
.nl-strip h2 { color: #fff; margin-bottom: .75rem; }
.nl-strip p  { color: rgba(255,255,255,.8); max-width: 500px; margin: 0 auto 2rem; }
.nl-form { display: flex; gap: .75rem; max-width: 480px; margin: 0 auto; flex-wrap: wrap; }
.nl-form input  { flex: 1; min-width: 200px; padding: .75rem 1.25rem; border: none; border-radius: var(--r); font-size: .95rem; }
.nl-form button { background: var(--aqua); color: var(--navy); border: none; padding: .75rem 1.5rem; border-radius: var(--r); font-weight: 700; cursor: pointer; font-size: .95rem; }
.nl-form button:hover { background: #26c6da; }

/* ============================================================
   SIDEBAR
   ============================================================ */
.sidebar-widget { background: #fff; border: 1px solid #e2e8f0; border-radius: var(--r); padding: 1.5rem; margin-bottom: 1.5rem; }
.sidebar-widget h3 { font-size: 1rem; margin: 0 0 1rem; color: var(--navy); }

/* ============================================================
   FOOTER
   ============================================================ */
footer { background: var(--navy); color: rgba(255,255,255,.7); padding: 3rem 0 1.5rem; }
.footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 2rem; margin-bottom: 2.5rem; }
.footer-brand p { font-size: .88rem; margin: .75rem 0 1.25rem; color: rgba(255,255,255,.55); }
.footer-col h4 { color: #fff; font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 1rem; }
.footer-col ul  { list-style: none; padding: 0; margin: 0; }
.footer-col li  { margin-bottom: .4rem; }
.footer-col a   { color: rgba(255,255,255,.6); font-size: .88rem; text-decoration: none; transition: color .2s; }
.footer-col a:hover { color: var(--aqua); }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.1); padding-top: 1.25rem; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .75rem; font-size: .8rem; }
.footer-bottom a { color: rgba(255,255,255,.55); text-decoration: none; }
.footer-bottom a:hover { color: var(--aqua); }
.affil-disc { background: rgba(255,255,255,.05); border-radius: var(--r); padding: 1rem 1.25rem; margin-bottom: 1.5rem; font-size: .78rem; color: rgba(255,255,255,.45); }

/* ============================================================
   SECTION LABELS
   ============================================================ */
.section-label { font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--aqua); margin-bottom: .5rem; }
.section-title { font-size: clamp(1.6rem, 3vw, 2rem); margin-bottom: .5rem; }
.section-sub   { color: var(--tm); margin-bottom: 2.5rem; }

/* ============================================================
   WORDPRESS CORE STYLES
   ============================================================ */
.wp-block-image { margin: 1.5rem 0; }
.wp-caption { max-width: 100%; }
.wp-caption-text { font-size: .82rem; color: var(--tl); text-align: center; margin-top: .4rem; }
.alignleft  { float: left; margin: 0 1.5rem 1rem 0; }
.alignright { float: right; margin: 0 0 1rem 1.5rem; }
.aligncenter { display: block; margin: 1.5rem auto; }
.screen-reader-text { position: absolute; left: -9999px; }
.entry-content { max-width: 780px; }
.entry-content h2 { margin-top: 2.5rem; }
.entry-content p, .entry-content ul, .entry-content ol { margin-bottom: 1.2rem; }
.single-post-header { background: linear-gradient(135deg, var(--navy), var(--ocean)); color: #fff; padding: 3.5rem 1.5rem; }
.single-post-header h1 { color: #fff; }
.post-meta { font-size: .82rem; color: rgba(255,255,255,.6); margin-top: .75rem; }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 900px) {
  .grid-3       { grid-template-columns: repeat(2, 1fr); }
  .layout-sb    { grid-template-columns: 1fr; }
  .footer-grid  { grid-template-columns: 1fr 1fr; }
  .nav-links    { display: none; }
  .vs-grid      { grid-template-columns: 1fr; }
  .pros-cons    { grid-template-columns: 1fr; }
  .product-meta { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .grid-3       { grid-template-columns: 1fr; }
  .footer-grid  { grid-template-columns: 1fr; }
  .nl-form      { flex-direction: column; }
  .product-meta { grid-template-columns: 1fr; }
}


/* ============================================================
   PAGE CONTENT STYLES
   (review cards, comparison tables, callouts, fish cards, etc.)
   ============================================================ */

:root{--navy:#0a1628;--ocean:#0d3b6e;--blue:#1565c0;--aqua:#00acc1;--light:#e3f2fd;--teal:#00897b;--cream:#f8fbff;--td:#1a1a2e;--tm:#4a5568;--tl:#94a3b8;--r:8px;--fh:'Playfair Display',Georgia,serif;--fb:'Inter',-apple-system,sans-serif;--mw:1200px}

*{box-sizing:border-box;margin:0;padding:0}

html{font-size:17px;scroll-behavior:smooth}

body{font-family:var(--fb);color:var(--td);background:var(--cream);line-height:1.7}

a{color:var(--blue)}

h1,h2,h3{font-family:var(--fh);line-height:1.25;color:var(--navy)}

h1{font-size:clamp(1.8rem,4vw,2.5rem)}

h2{font-size:1.4rem;margin:2rem 0 .75rem}

p{margin-bottom:1.2rem}

.container{max-width:780px;margin:0 auto;padding:0 1.5rem}

.ad-slot{background:#f0f4f8;border:1px dashed #cbd5e1;border-radius:var(--r);display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:.75rem;position:relative;padding-top:1.5rem}

.ad-slot::before{content:'Advertisement';font-size:.62rem;letter-spacing:.05em;text-transform:uppercase;position:absolute;top:.3rem;left:50%;transform:translateX(-50%);white-space:nowrap}

.ad-leader{width:100%;min-height:90px}

nav.site-nav{background:var(--navy);position:sticky;top:0;z-index:100}

.nav-inner{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;height:64px}

.logo{display:flex;align-items:center;gap:.75rem;text-decoration:none}

.logo-icon{width:38px;height:38px;background:linear-gradient(135deg,var(--aqua),var(--blue));border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.2rem}

.logo-text{font-family:var(--fh);font-size:1.2rem;font-weight:700;color:#fff;line-height:1}

.logo-text span{display:block;font-size:.6rem;font-family:var(--fb);color:var(--aqua);font-weight:400;letter-spacing:.08em;text-transform:uppercase;margin-top:2px}

.nav-links{display:flex;align-items:center;gap:.25rem;list-style:none}

.nav-links a{color:rgba(255,255,255,.8);font-size:.88rem;font-weight:500;padding:.4rem .75rem;border-radius:var(--r);text-decoration:none}

.nav-links a:hover{color:#fff;background:rgba(255,255,255,.12)}

.nav-links .cta a{background:var(--aqua);color:var(--navy);font-weight:700}

.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin:2rem 0}

.value-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;text-align:center}

.value-icon{font-size:1.8rem;margin-bottom:.5rem}

.value-card h3{font-size:.95rem;margin-bottom:.4rem}

.value-card p{font-size:.85rem;color:var(--tm);margin:0}

footer{background:var(--navy);color:rgba(255,255,255,.7);padding:3rem 0 1.5rem}

.footer-inner{max-width:1200px;margin:0 auto;padding:0 1.5rem}

.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2rem;margin-bottom:2.5rem}

.footer-col h4{color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:1rem}

.footer-col ul{list-style:none;padding:0;margin:0}

.footer-col li{margin-bottom:.4rem}

.footer-col a{color:rgba(255,255,255,.6);font-size:.88rem;text-decoration:none}

.footer-col a:hover{color:var(--aqua)}

.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:1.25rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.75rem;font-size:.8rem}

.footer-bottom a{color:rgba(255,255,255,.55);text-decoration:none}

.affil-disc{background:rgba(255,255,255,.05);border-radius:var(--r);padding:1rem 1.25rem;margin-bottom:1.5rem;font-size:.78rem;color:rgba(255,255,255,.45)}

#rp{position:fixed;top:0;left:0;height:3px;background:var(--aqua);width:0%;z-index:9999}

@media(max-width:900px){.value-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}}

@media(max-width:560px){.value-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}}

h1,h2{font-family:var(--fh);line-height:1.25;color:var(--navy)}

h1{font-size:clamp(1.8rem,4vw,2.2rem)}

h2{font-size:1.25rem;margin:2rem 0 .75rem}

footer{background:var(--navy);color:rgba(255,255,255,.7);padding:2rem 0 1.5rem}

.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.75rem;font-size:.8rem}

@media(max-width:900px){.nav-links{display:none}}

h1{font-size:clamp(1.8rem,4vw,2.4rem)}

h2{font-size:1.35rem;margin:2.5rem 0 .85rem}

p{margin-bottom:1rem}

.container{max-width:var(--mw);margin:0 auto;padding:0 1.5rem}

.ad-content{width:100%;min-height:90px;margin:2rem 0}

.nav-inner{max-width:var(--mw);margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;height:64px}

.vs-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0}

.vs-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.75rem}

.vs-card.winner{border-color:var(--teal);border-width:2px}

.vs-title{font-family:var(--fh);font-size:1.15rem;color:var(--navy);margin-bottom:.3rem}

.vs-badge{display:inline-block;background:var(--teal);color:#fff;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.2rem .6rem;border-radius:99px;margin-bottom:.6rem}

.vs-price{font-size:1.4rem;font-weight:700;color:var(--navy);margin-bottom:.75rem}

.vs-specs{list-style:none;padding:0;margin:0 0 1rem;font-size:.9rem}

.vs-specs li{padding:.35rem 0;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between}

.vs-specs li strong{color:var(--navy)}

.btn-buy{display:block;background:#ff9900;color:#000;font-weight:700;padding:.65rem;border-radius:var(--r);text-decoration:none;text-align:center;font-size:.88rem}

.compare-table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.9rem}

.compare-table th{background:var(--navy);color:#fff;padding:.75rem 1rem;text-align:left;font-weight:600}

.compare-table td{padding:.75rem 1rem;border-bottom:1px solid #e2e8f0}

.compare-table tr:nth-child(even) td{background:#f8fafc}

.win{color:#15803d;font-weight:600}

.tie{color:var(--tl)}

.callout{border-radius:var(--r);padding:1rem 1.25rem;margin:1.25rem 0;border-left:4px solid}

.callout-info{background:#eff6ff;border-color:var(--blue)}

.callout-tip{background:#f0fdf4;border-color:#16a34a}

.callout strong{display:block;margin-bottom:.25rem;font-size:.88rem}

.nl-strip{background:linear-gradient(135deg,var(--navy),var(--ocean));color:#fff;padding:3rem 1.5rem;text-align:center}

.nl-strip h2{color:#fff;margin-bottom:.5rem;font-size:1.5rem}

.nl-form{display:flex;gap:.75rem;max-width:480px;margin:1rem auto 0;flex-wrap:wrap}

.nl-form input{flex:1;min-width:200px;padding:.75rem 1.25rem;border:none;border-radius:var(--r)}

.nl-form button{background:var(--aqua);color:var(--navy);border:none;padding:.75rem 1.5rem;border-radius:var(--r);font-weight:700;cursor:pointer}

@media(max-width:900px){.vs-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}}

@media(max-width:560px){.footer-grid{grid-template-columns:1fr}}

.vs-specs{list-style:none;padding:0;margin:0 0 1rem;font-size:.88rem}

h1{font-size:clamp(1.8rem,4vw,2.6rem)}

h2{font-size:1.5rem;margin:2.5rem 0 .75rem}

h3{font-size:1.1rem;margin:1.5rem 0 .35rem}

ul,ol{margin:0 0 1.2rem 1.5rem}

li{margin-bottom:.4rem}

.ad-content{width:100%;min-height:280px;margin:2rem 0}

.ad-sidebar{width:100%;min-height:250px}

.layout-sb{display:grid;grid-template-columns:1fr 280px;gap:2.5rem;align-items:start}

.sidebar{position:sticky;top:80px}

.step-box{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;margin-bottom:1.25rem;border-left:4px solid var(--aqua);display:flex;gap:1rem}

.step-num{width:36px;height:36px;background:var(--aqua);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;flex-shrink:0;margin-top:.15rem}

.step-box h3{margin-top:0;font-size:1rem}

.callout{border-radius:var(--r);padding:1.25rem 1.5rem;margin:1.75rem 0}

.callout-info{background:#e3f2fd;border-left:4px solid var(--blue)}

.callout-warn{background:#fff8e1;border-left:4px solid #f59e0b}

.callout-tip{background:#f0fdf4;border-left:4px solid var(--teal)}

.callout-danger{background:#ffebee;border-left:4px solid #e53935}

.callout h4{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.35rem}

.equipment-table{width:100%;border-collapse:collapse;font-size:.88rem;margin:1.25rem 0}

.equipment-table th{background:var(--navy);color:#fff;padding:.65rem 1rem;text-align:left;font-size:.78rem}

.equipment-table td{padding:.65rem 1rem;border-bottom:1px solid #e2e8f0}

.equipment-table tr:nth-child(even) td{background:#f8fafc}

.toc{background:#fff;border:1px solid #e2e8f0;border-radius:var(--r);padding:1.25rem;margin-bottom:1.5rem}

.toc h4{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.75rem;color:var(--tl)}

.toc ol{margin:0;padding-left:1.2rem;font-size:.82rem}

.toc li{padding:.25rem 0;color:var(--tm)}

.toc a{color:var(--tm);text-decoration:none}

.toc a:hover{color:var(--blue)}

@media(max-width:900px){.layout-sb{grid-template-columns:1fr}.sidebar{position:static}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}}

:root{--navy:#0a1628;--ocean:#0d3b6e;--blue:#1565c0;--aqua:#00acc1;--light:#e3f2fd;--teal:#00897b;--cream:#f8fbff;--td:#1a1a2e;--tm:#4a5568;--tl:#94a3b8;--r:8px;--sh:0 2px 12px rgba(0,0,0,.08);--fh:'Playfair Display',Georgia,serif;--fb:'Inter',-apple-system,sans-serif;--mw:1200px}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

a{color:var(--blue);text-decoration:none}

a:hover{text-decoration:underline}

h2{font-size:clamp(1.3rem,2.5vw,1.8rem);margin:2.5rem 0 .75rem}

h3{font-size:1.1rem;margin:1.5rem 0 .4rem}

.ad-bar{background:#fff;border-bottom:1px solid #e2e8f0;padding:.5rem 0;text-align:center}

nav.site-nav{background:var(--navy);position:sticky;top:0;z-index:100;box-shadow:0 2px 8px rgba(0,0,0,.3)}

.nav-links a{color:rgba(255,255,255,.8);font-size:.88rem;font-weight:500;padding:.4rem .75rem;border-radius:var(--r);transition:all .2s;text-decoration:none}

.layout-sb{display:grid;grid-template-columns:1fr 300px;gap:2.5rem;align-items:start}

.review-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;margin-bottom:2rem;box-shadow:var(--sh)}

.review-card-header{background:linear-gradient(135deg,var(--navy),var(--ocean));color:#fff;padding:1.5rem;display:flex;align-items:center;gap:1rem}

.rank-badge{width:48px;height:48px;border-radius:50%;background:var(--aqua);color:var(--navy);font-weight:700;font-size:1.3rem;font-family:var(--fh);display:flex;align-items:center;justify-content:center;flex-shrink:0}

.review-card-body{padding:1.75rem}

.product-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin:1.25rem 0;background:var(--light);border-radius:var(--r);padding:1rem}

.meta-item label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--tl);margin-bottom:.15rem}

.meta-item span{font-weight:600;font-size:.88rem;color:var(--navy)}

.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.25rem 0}

.pros h4{color:var(--teal);font-size:.85rem;margin-bottom:.4rem}

.cons h4{color:#c62828;font-size:.85rem;margin-bottom:.4rem}

.pros ul,.cons ul{margin:0;padding:0;list-style:none}

.pros li::before{content:'✓ ';color:var(--teal);font-weight:700}

.cons li::before{content:'✗ ';color:#c62828;font-weight:700}

.pros li,.cons li{font-size:.85rem;margin-bottom:.3rem}

.verdict-box{background:#e8f5e9;border-left:4px solid var(--teal);border-radius:0 var(--r) var(--r) 0;padding:1rem 1.25rem;margin:1.25rem 0}

.verdict-box strong{color:var(--teal);display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.2rem}

.rating-section{margin:1.25rem 0}

.rating-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.45rem;font-size:.82rem}

.rating-label{width:120px;flex-shrink:0;color:var(--tm)}

.rating-bar{flex:1;height:7px;background:#e2e8f0;border-radius:4px;overflow:hidden}

.rating-fill{height:100%;background:var(--aqua);border-radius:4px}

.rating-num{width:28px;text-align:right;font-weight:600;font-size:.78rem;color:var(--navy)}

.callout-tip{background:#e8f5e9;border-left:4px solid var(--teal)}

.toc ul{margin:0;padding:0;list-style:none}

.toc li{border-bottom:1px solid #f1f5f9;padding:.4rem 0;font-size:.82rem}

.toc li:last-child{border-bottom:none}

.filter-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.5rem 0}

.filter-type{background:#fff;border:1px solid #e2e8f0;border-radius:var(--r);padding:1.25rem;text-align:center}

.filter-type .icon{font-size:2rem;margin-bottom:.5rem}

.filter-type h4{font-size:.9rem;margin-bottom:.35rem}

.filter-type p{font-size:.8rem;color:var(--tm);margin:0}

.btn-buy{display:inline-flex;align-items:center;background:#ff9900;color:#111;border:none;padding:.6rem 1.3rem;border-radius:var(--r);font-weight:700;font-size:.9rem;cursor:pointer;text-decoration:none;transition:background .2s}

.btn-buy:hover{background:#e88a00;text-decoration:none;color:#111}

.compare-table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.85rem}

.compare-table th{background:var(--navy);color:#fff;padding:.7rem 1rem;text-align:left}

.compare-table td{padding:.65rem 1rem;border-bottom:1px solid #e2e8f0}

.compare-table tr:nth-child(even) td{background:#f8fbff}

.nl-form input{flex:1;min-width:200px;padding:.75rem 1.25rem;border:none;border-radius:var(--r);font-size:.95rem}

.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:1.25rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;font-size:.8rem}

.footer-bottom a:hover{color:var(--aqua)}

@media(max-width:900px){.layout-sb{grid-template-columns:1fr}.sidebar{position:static}.filter-type-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}.product-meta{grid-template-columns:1fr 1fr}}

@media(max-width:560px){.pros-cons{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}}

h3{font-size:1.05rem;margin:1rem 0 .3rem}

.review-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.75rem;margin-bottom:2rem;position:relative;overflow:hidden}

.rank-badge{position:absolute;top:1.25rem;right:1.25rem;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;color:#fff}

.rank-1{background:linear-gradient(135deg,#f59e0b,#d97706)}

.rank-2{background:linear-gradient(135deg,#94a3b8,#64748b)}

.rank-3{background:linear-gradient(135deg,#b45309,#92400e)}

.rank-4{background:linear-gradient(135deg,var(--aqua),var(--teal))}

.product-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1rem 0}

.pm-item{background:#f8fafc;border-radius:6px;padding:.6rem;text-align:center}

.pm-item .label{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--tl);display:block}

.pm-item .value{font-size:.88rem;font-weight:700;color:var(--td);display:block;margin-top:.15rem}

.rating-bars{margin:1rem 0}

.rb{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}

.rb-label{font-size:.8rem;color:var(--tm);width:120px;flex-shrink:0}

.rb-track{flex:1;height:6px;background:#e2e8f0;border-radius:3px}

.rb-fill{height:6px;border-radius:3px;background:linear-gradient(90deg,var(--aqua),var(--blue))}

.rb-val{font-size:.78rem;font-weight:700;color:var(--td);width:32px;text-align:right}

.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}

.pros{background:#f0fdf4;border-radius:8px;padding:1rem}

.cons{background:#fff5f5;border-radius:8px;padding:1rem}

.pros h4{color:#16a34a;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem}

.cons h4{color:#dc2626;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem}

.pros ul,.cons ul{margin:0;padding-left:1rem;font-size:.85rem}

.pros li,.cons li{margin-bottom:.25rem}

.verdict{background:var(--light);border-radius:8px;padding:1rem 1.25rem;margin-top:1rem;border-left:3px solid var(--blue)}

.verdict strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--blue);display:block;margin-bottom:.25rem}

.btn-buy{display:inline-flex;align-items:center;gap:.5rem;background:#ff9900;color:#000;font-weight:700;padding:.7rem 1.5rem;border-radius:var(--r);text-decoration:none;font-size:.9rem;margin-top:1rem}

.btn-buy:hover{background:#e68a00;color:#000}

.comparison-table{width:100%;border-collapse:collapse;font-size:.85rem;margin:1.5rem 0}

.comparison-table th{background:var(--navy);color:#fff;padding:.75rem 1rem;text-align:left;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}

.comparison-table td{padding:.7rem 1rem;border-bottom:1px solid #e2e8f0}

.comparison-table tr:nth-child(even) td{background:#f8fafc}

.toc li{border-bottom:1px solid #f1f5f9;padding:.35rem 0;font-size:.82rem}

.top-pick-box{background:linear-gradient(135deg,var(--navy),var(--ocean));color:#fff;border-radius:var(--r);padding:1.25rem;margin-bottom:1.5rem}

.top-pick-box h4{color:var(--aqua);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}

@media(max-width:900px){.layout-sb{grid-template-columns:1fr}.sidebar{position:static}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}.pros-cons{grid-template-columns:1fr}.product-meta{grid-template-columns:repeat(2,1fr)}}

:root{--navy:#0a1628;--ocean:#0d3b6e;--blue:#1565c0;--aqua:#00acc1;--light:#e3f2fd;--teal:#00897b;--cream:#f8fbff;--ww:#fff;--td:#1a1a2e;--tm:#4a5568;--tl:#94a3b8;--r:8px;--sh:0 2px 12px rgba(0,0,0,.08);--sh2:0 8px 32px rgba(0,0,0,.12);--fh:'Playfair Display',Georgia,serif;--fb:'Inter',-apple-system,sans-serif;--mw:1200px}

h1,h2,h3,h4{font-family:var(--fh);line-height:1.25;color:var(--navy)}

h2{font-size:clamp(1.3rem,2.5vw,1.8rem);margin:2.5rem 0 1rem}

h3{font-size:1.15rem;margin:1.5rem 0 .4rem}

.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.7rem 1.5rem;border-radius:var(--r);font-weight:600;font-size:.95rem;cursor:pointer;border:2px solid transparent;transition:all .2s;text-decoration:none}

.btn-buy{background:#ff9900;color:#111;border-color:#ff9900;font-size:.95rem;padding:.65rem 1.5rem;font-weight:700}

.btn-outline{background:transparent;color:var(--blue);border-color:var(--blue)}

.btn-outline:hover{background:var(--blue);color:#fff;text-decoration:none}

/* Layout */
.layout-sb{display:grid;grid-template-columns:1fr 320px;gap:2.5rem;align-items:start}

/* Review card */
.review-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;margin-bottom:2rem;box-shadow:var(--sh)}

.rank-badge{width:52px;height:52px;border-radius:50%;background:var(--aqua);color:var(--navy);font-weight:700;font-size:1.4rem;font-family:var(--fh);display:flex;align-items:center;justify-content:center;flex-shrink:0}

.product-meta{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:1.25rem 0;background:var(--light);border-radius:var(--r);padding:1rem}

.meta-item span{font-weight:600;font-size:.9rem;color:var(--navy)}

.pros h4{color:var(--teal);font-size:.85rem;margin-bottom:.5rem}

.cons h4{color:#c62828;font-size:.85rem;margin-bottom:.5rem}

.verdict-box strong{color:var(--teal);display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}

/* Rating bar */
.rating-section{margin:1.25rem 0}

.rating-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;font-size:.82rem}

.rating-label{width:100px;flex-shrink:0;color:var(--tm)}

.rating-bar{flex:1;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}

.rating-num{width:30px;text-align:right;font-weight:600;font-size:.8rem;color:var(--navy)}

/* Callout */
.callout{border-radius:var(--r);padding:1.25rem 1.5rem;margin:1.75rem 0}

/* TOC */
.toc{background:#fff;border:1px solid #e2e8f0;border-radius:var(--r);padding:1.25rem;margin-bottom:1.5rem}

.toc li{border-bottom:1px solid #f1f5f9;padding:.4rem 0;font-size:.85rem}

/* Comparison table */
.compare-table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.85rem}

.compare-table th{background:var(--navy);color:#fff;padding:.75rem 1rem;text-align:left}

.compare-table td{padding:.7rem 1rem;border-bottom:1px solid #e2e8f0}

.compare-table tr:hover td{background:var(--light)}

/* Newsletter */
.nl-strip{background:linear-gradient(135deg,var(--navy),var(--ocean));color:#fff;padding:3rem 1.5rem;text-align:center}

@media(max-width:560px){.pros-cons{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.product-meta{grid-template-columns:1fr 1fr}}

ul{margin:0 0 1.2rem 1.5rem}

.fish-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.75rem;margin-bottom:1.5rem;display:grid;grid-template-columns:80px 1fr;gap:1.5rem;align-items:start}

.fish-emoji{font-size:3rem;text-align:center;width:80px}

.fish-rank{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--aqua);margin-bottom:.2rem}

.fish-name{font-family:var(--fh);font-size:1.2rem;font-weight:700;color:var(--navy)}

.fish-sci{font-style:italic;font-size:.82rem;color:var(--tl);margin-bottom:.75rem}

.fish-stats{display:flex;gap:1rem;flex-wrap:wrap;margin:1rem 0;padding:1rem;background:var(--light);border-radius:var(--r)}

.stat{font-size:.78rem;color:var(--tm)}

.stat strong{display:block;font-weight:700;color:var(--navy);font-size:.85rem}

.avoid-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1.25rem 0}

.avoid-card{background:#fff;border:1px solid #fee2e2;border-radius:var(--r);padding:1rem}

.avoid-card h4{color:#c62828;font-size:.9rem;margin-bottom:.3rem}

.avoid-card p{font-size:.82rem;color:var(--tm);margin:0}

@media(max-width:560px){.fish-card{grid-template-columns:1fr}.avoid-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}}

.ad-sb{width:100%;min-height:250px;margin-bottom:1.5rem}

.breadcrumb{font-size:.82rem;color:var(--tl);margin:.75rem 0}

.breadcrumb a{color:var(--blue);text-decoration:none}

.sb-box{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;margin-bottom:1.25rem}

.sb-box h3{font-size:.95rem;margin:0 0 .75rem}

.toc{list-style:none;padding:0;margin:0}

.toc li{margin-bottom:.35rem}

.toc a{font-size:.85rem;color:var(--blue);text-decoration:none}

.toc a:hover{color:var(--navy)}

.review-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.75rem;margin-bottom:2rem;position:relative}

.rank-badge{position:absolute;top:1.25rem;right:1.25rem;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;color:#fff}

.rank-3{background:linear-gradient(135deg,var(--teal),#00695c)}

.rank-4{background:linear-gradient(135deg,var(--blue),var(--ocean))}

.product-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin:1rem 0;background:#f8fafc;border-radius:var(--r);padding:1rem}

.pm-item label{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--tl);font-weight:700;margin-bottom:.2rem}

.pm-item span{font-size:.9rem;font-weight:600;color:var(--navy)}

.pros{background:#f0fdf4;border-radius:var(--r);padding:1rem}

.cons{background:#fef2f2;border-radius:var(--r);padding:1rem}

.pros h4{color:#15803d;font-size:.82rem;text-transform:uppercase;margin-bottom:.5rem}

.cons h4{color:#dc2626;font-size:.82rem;text-transform:uppercase;margin-bottom:.5rem}

.pros ul,.cons ul{list-style:none;padding:0;margin:0}

.pros li,.cons li{font-size:.85rem;padding:.2rem 0;padding-left:1.1rem;position:relative}

.pros li::before{content:'✓';position:absolute;left:0;color:#15803d;font-weight:700}

.cons li::before{content:'✗';position:absolute;left:0;color:#dc2626;font-weight:700}

.verdict{background:linear-gradient(135deg,var(--navy),var(--ocean));color:#fff;border-radius:var(--r);padding:1rem 1.25rem;margin-top:1rem}

.verdict strong{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--aqua);margin-bottom:.3rem}

.btn-buy{display:inline-block;background:#ff9900;color:#000;font-weight:700;padding:.65rem 1.5rem;border-radius:var(--r);text-decoration:none;font-size:.88rem;margin-top:.5rem}

.callout-warn{background:#fffbeb;border-color:#d97706}

@media(max-width:900px){.layout-sb{grid-template-columns:1fr}.sidebar{position:static}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}.product-meta{grid-template-columns:1fr 1fr}.pros-cons{grid-template-columns:1fr}}

@media(max-width:560px){.footer-grid{grid-template-columns:1fr}.product-meta{grid-template-columns:1fr}}

h2{font-size:1.4rem;margin:2.5rem 0 1rem}

.picks-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:2rem}

.pick-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;display:flex;flex-direction:column}

.pick-icon{font-size:1.8rem;margin-bottom:.75rem}

.pick-card h3{font-size:1rem;margin-bottom:.4rem}

.pick-card p{font-size:.85rem;color:var(--tm);margin-bottom:1rem;flex:1}

.top-pick{font-size:.75rem;font-weight:700;color:var(--teal);margin-bottom:.25rem}

.btn-review{display:inline-block;background:var(--light);color:var(--blue);border:1px solid #bfdbfe;font-weight:600;padding:.5rem 1rem;border-radius:var(--r);text-decoration:none;font-size:.82rem;margin-right:.4rem;margin-bottom:.4rem}

.btn-amazon{display:inline-block;background:#ff9900;color:#000;font-weight:700;padding:.5rem 1rem;border-radius:var(--r);text-decoration:none;font-size:.82rem}

@media(max-width:900px){.picks-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}}

@media(max-width:560px){.picks-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}}

.blog-layout{display:grid;grid-template-columns:1fr 300px;gap:2.5rem;align-items:start}

.post-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;margin-bottom:1.25rem;display:flex;gap:1.25rem}

.post-icon{font-size:2.5rem;flex-shrink:0;align-self:flex-start}

.post-meta{font-size:.75rem;color:var(--tl);margin-bottom:.4rem}

.post-card h3{font-size:1.05rem;margin-bottom:.4rem}

.post-card p{font-size:.88rem;color:var(--tm);margin-bottom:.75rem}

.tag{display:inline-block;padding:.15rem .55rem;border-radius:99px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-right:.3rem}

.tag-guide{background:#e0f2fe;color:#0369a1}

.tag-review{background:#fef3c7;color:#92400e}

.tag-trouble{background:#fff7ed;color:#c2410c}

.tag-fish{background:#f0fdf4;color:#15803d}

.read-more{font-size:.82rem;font-weight:600;color:var(--blue);text-decoration:none}

.sidebar-widget{background:#fff;border:1px solid #e2e8f0;border-radius:var(--r);padding:1.25rem;margin-bottom:1.5rem}

.sidebar-widget h4{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.75rem;color:var(--tl)}

@media(max-width:900px){.blog-layout{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}.post-card{flex-direction:column;gap:.5rem}}

h3{font-size:1.1rem;margin:1.5rem 0 .3rem}

.cloud-type{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;margin-bottom:1.25rem;border-left:5px solid var(--aqua)}

.cloud-type.white{border-left-color:#94a3b8}

.cloud-type.green{border-left-color:#16a34a}

.cloud-type.brown{border-left-color:#92400e}

.cloud-type.yellow{border-left-color:#d97706}

.fix-steps{counter-reset:fix;list-style:none;padding:0;margin:0 0 1.2rem}

.fix-steps li{counter-increment:fix;padding:.75rem 0 .75rem 3rem;border-bottom:1px solid #e2e8f0;position:relative;font-size:.9rem}

.fix-steps li:last-child{border-bottom:none}

.fix-steps li::before{content:counter(fix);position:absolute;left:0;top:.75rem;width:2rem;height:2rem;background:var(--aqua);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.82rem}

.product-rec{background:var(--light);border:1px solid #bfdbfe;border-radius:var(--r);padding:1.25rem;margin-bottom:1rem}

.product-rec h4{font-size:.88rem;margin-bottom:.3rem}

.product-rec p{font-size:.8rem;color:var(--tm);margin-bottom:.6rem}

.btn-buy{display:inline-flex;align-items:center;gap:.5rem;background:#ff9900;color:#000;font-weight:700;padding:.55rem 1rem;border-radius:var(--r);text-decoration:none;font-size:.82rem}

h3{font-size:1.1rem;margin:1.5rem 0 .5rem}

.toc a{font-size:.85rem;color:var(--blue);text-decoration:none;display:flex;gap:.4rem;align-items:baseline}

.callout-danger{background:#fef2f2;border-color:#dc2626}

.compat-table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.85rem;overflow-x:auto}

.compat-table th{background:var(--navy);color:#fff;padding:.6rem .75rem;font-weight:600;text-align:center;font-size:.78rem}

.compat-table th:first-child{text-align:left}

.compat-table td{padding:.6rem .75rem;border:1px solid #e2e8f0;text-align:center}

.compat-table td:first-child{text-align:left;font-weight:600;background:#f8fafc}

.compat-table tr:hover td{background:#f0f7ff}

.c-yes{color:#15803d;font-weight:700}

.c-no{color:#dc2626;font-weight:700}

.c-maybe{color:#d97706;font-weight:700}

.fish-row{display:grid;grid-template-columns:80px 1fr;gap:1.5rem;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;margin-bottom:1rem;align-items:start}

.fish-emoji{font-size:3rem;text-align:center;line-height:1}

.fish-name{font-family:var(--fh);font-size:1.05rem;color:var(--navy);margin-bottom:.2rem}

.fish-tags{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:.5rem}

.tag{display:inline-block;padding:.15rem .5rem;border-radius:99px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}

.tag-peaceful{background:#dcfce7;color:#15803d}

.tag-semi{background:#fef9c3;color:#854d0e}

.tag-aggressive{background:#fee2e2;color:#991b1b}

.tag-solo{background:#f3e8ff;color:#6b21a8}

@media(max-width:560px){.footer-grid{grid-template-columns:1fr}.fish-row{grid-template-columns:1fr}}

.callout-tip{background:#f0fdf4;border-color:#22c55e}

.par-bar-wrap{margin:1.5rem 0}

.par-label{font-size:.85rem;font-weight:600;margin-bottom:.3rem;display:flex;justify-content:space-between}

.par-bar{background:#e2e8f0;border-radius:99px;height:14px;overflow:hidden}

.par-fill{height:100%;border-radius:99px}

.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:2rem}

.guide-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;text-decoration:none;color:inherit;display:block;transition:box-shadow .15s}

.guide-card:hover{box-shadow:0 4px 20px rgba(0,0,0,.08);border-color:var(--aqua)}

.guide-icon{font-size:2rem;margin-bottom:.75rem}

.guide-card h3{font-size:1rem;color:var(--navy);margin-bottom:.4rem}

.guide-card p{font-size:.85rem;color:var(--tm);margin:0}

.badge{display:inline-block;padding:.2rem .6rem;border-radius:99px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem}

.badge-start{background:#e0f2fe;color:#0369a1}

.badge-care{background:#f0fdf4;color:#15803d}

.badge-trouble{background:#fff7ed;color:#c2410c}

@media(max-width:900px){.guide-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}}

@media(max-width:560px){.guide-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}}

li{margin-bottom:.5rem}

.step-box{background:#fff;border:1px solid #e2e8f0;border-radius:var(--r);padding:1.5rem;margin:1.25rem 0;display:flex;gap:1.25rem;align-items:flex-start}

.step-num{width:44px;height:44px;background:var(--aqua);color:var(--navy);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;font-family:var(--fh);flex-shrink:0}

.phase-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.5rem 0}

.phase{background:#fff;border:1px solid #e2e8f0;border-radius:var(--r);padding:1.25rem;text-align:center}

.phase-week{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--tl);margin-bottom:.4rem}

.phase-status{font-size:1.5rem;margin-bottom:.4rem}

.phase-title{font-weight:700;color:var(--navy);font-family:var(--fh);font-size:1rem;margin-bottom:.35rem}

.phase-desc{font-size:.8rem;color:var(--tm)}

.btn-buy{background:#ff9900;color:#111;border-color:#ff9900;font-weight:700}

@media(max-width:900px){.layout-sb{grid-template-columns:1fr}.sidebar{position:static}.footer-grid{grid-template-columns:1fr 1fr}.phase-timeline{grid-template-columns:1fr}.nav-links{display:none}}

.step-box{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.75rem;margin-bottom:1.5rem;position:relative;padding-left:3.5rem}

.step-num{position:absolute;left:1.25rem;top:1.5rem;width:32px;height:32px;background:var(--aqua);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem}

.step-box h3{margin:0 0 .6rem;font-size:1.15rem}

.equip-table{width:100%;border-collapse:collapse;margin:1.25rem 0;font-size:.9rem}

.equip-table th{background:var(--navy);color:#fff;padding:.65rem 1rem;text-align:left;font-weight:600}

.equip-table td{padding:.65rem 1rem;border-bottom:1px solid #e2e8f0}

.equip-table tr:nth-child(even) td{background:#f8fafc}

.equip-table a{color:var(--blue);text-decoration:none}

.btn-buy{display:inline-block;background:#ff9900;color:#000;font-weight:700;padding:.6rem 1.25rem;border-radius:var(--r);text-decoration:none;font-size:.88rem}

:root{--navy:#0a1628;--ocean:#0d3b6e;--blue:#1565c0;--aqua:#00acc1;--light:#e3f2fd;--teal:#00897b;--cream:#f8fbff;--ww:#ffffff;--td:#1a1a2e;--tm:#4a5568;--tl:#94a3b8;--ad:#f0f4f8;--adb:#cbd5e1;--adt:#94a3b8;--r:8px;--sh:0 2px 12px rgba(0,0,0,.08);--sh2:0 8px 32px rgba(0,0,0,.12);--fh:'Playfair Display',Georgia,serif;--fb:'Inter',-apple-system,sans-serif;--mw:1200px}

img{max-width:100%;height:auto;display:block}

a:hover{color:var(--ocean);text-decoration:underline}

h1{font-size:clamp(2rem,5vw,3rem)}

h2{font-size:clamp(1.5rem,3vw,2.1rem);margin:2.5rem 0 1rem}

h3{font-size:clamp(1.1rem,2vw,1.4rem);margin:1.5rem 0 .5rem}

.ad-slot{background:var(--ad);border:1px dashed var(--adb);border-radius:var(--r);display:flex;align-items:center;justify-content:center;color:var(--adt);font-size:.75rem;position:relative;padding-top:1.5rem}

.ad-rect{width:300px;height:250px}

.nav-links .cta a:hover{background:#26c6da}

.btn-primary{background:var(--aqua);color:var(--navy)}

.btn-primary:hover{background:#26c6da;color:var(--navy);text-decoration:none}

.btn-ghost{background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.4)}

.btn-ghost:hover{background:rgba(255,255,255,.25);text-decoration:none;color:#fff}

.card{background:#fff;border:1px solid #e2e8f0;border-radius:var(--r);overflow:hidden;transition:box-shadow .2s,transform .2s}

.card:hover{box-shadow:var(--sh2);transform:translateY(-2px)}

.card-img{aspect-ratio:16/9;overflow:hidden;background:var(--light);display:flex;align-items:center;justify-content:center;font-size:3rem}

.card-body{padding:1.5rem}

.card-meta{font-size:.78rem;color:var(--tl);margin-bottom:.5rem;display:flex;align-items:center;gap:.75rem}

.tag{background:var(--light);color:var(--blue);padding:.15rem .5rem;border-radius:2rem;font-weight:600;font-size:.75rem}

.grid{display:grid;gap:1.5rem}

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

.grid-auto{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}

section{padding:4rem 0}

section.alt{background:#fff}

.section-label{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--aqua);margin-bottom:.5rem}

.section-title{font-size:clamp(1.6rem,3vw,2rem);margin-bottom:.5rem}

.section-sub{color:var(--tm);margin-bottom:2.5rem}

.nl-strip{background:linear-gradient(135deg,var(--navy),var(--ocean));color:#fff;padding:4rem 1.5rem;text-align:center}

.nl-strip h2{color:#fff;margin-bottom:.75rem}

.nl-strip p{color:rgba(255,255,255,.8);max-width:500px;margin:0 auto 2rem}

.nl-form{display:flex;gap:.75rem;max-width:480px;margin:0 auto;flex-wrap:wrap}

.footer-brand p{font-size:.88rem;margin:.75rem 0 1.25rem;color:rgba(255,255,255,.55)}

.footer-col a{color:rgba(255,255,255,.6);font-size:.88rem;text-decoration:none;transition:color .2s}

#rp{position:fixed;top:0;left:0;height:3px;background:var(--aqua);width:0%;z-index:9999;transition:width .1s}

@media(max-width:900px){.grid-3{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}}

@media(max-width:560px){.grid-3{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.nl-form{flex-direction:column}}

h3{font-size:1.05rem;margin:1.25rem 0 .4rem}

.plant-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}

.plant-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;border-top:3px solid var(--teal)}

.plant-card h3{margin:0 0 .3rem;font-size:1rem;color:var(--navy)}

.plant-card .difficulty{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.4rem;display:inline-block;padding:.1rem .45rem;border-radius:99px}

.diff-easy{background:#dcfce7;color:#15803d}

.plant-meta{font-size:.8rem;color:var(--tl);margin-bottom:.4rem}

.plant-card p{font-size:.85rem;color:var(--tm);margin:0}

@media(max-width:900px){.layout-sb{grid-template-columns:1fr}.sidebar{position:static}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}.plant-grid{grid-template-columns:1fr}}

h2{font-size:1.3rem;margin:2rem 0 .75rem}

.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}

.product-tile{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column}

.product-emoji{font-size:2.2rem;margin-bottom:.65rem}

.product-tile h3{font-size:.92rem;margin-bottom:.3rem;color:var(--navy)}

.product-price{font-size:.82rem;color:var(--tl);margin-bottom:.3rem}

.product-tile p{font-size:.8rem;color:var(--tm);flex:1;margin-bottom:.75rem}

.badge-top{display:inline-block;background:#fef3c7;color:#92400e;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.15rem .45rem;border-radius:99px;margin-bottom:.3rem}

.btn-amazon{display:block;text-align:center;background:#ff9900;color:#000;font-weight:700;padding:.6rem;border-radius:var(--r);text-decoration:none;font-size:.82rem}

.btn-review{display:block;text-align:center;background:var(--light);color:var(--blue);border:1px solid #bfdbfe;font-weight:600;padding:.5rem;border-radius:var(--r);text-decoration:none;font-size:.78rem;margin-top:.4rem}

@media(max-width:1000px){.product-grid{grid-template-columns:repeat(3,1fr)}}

@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}.product-grid{grid-template-columns:repeat(2,1fr)}}

@media(max-width:560px){.footer-grid{grid-template-columns:1fr}.product-grid{grid-template-columns:1fr}}

h3{font-size:1.05rem;margin:1.5rem 0 .3rem}

.cause-card{background:#fff;border:1px solid #e2e8f0;border-radius:var(--r);padding:1.5rem;margin-bottom:1.25rem;border-left:4px solid var(--aqua)}

.cause-num{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--aqua);margin-bottom:.25rem}

.cause-card h3{margin-top:0;font-size:1.1rem}

.fix-box{background:#e8f5e9;border-radius:var(--r);padding:1rem 1.25rem;margin-top:1rem}

.fix-box strong{color:var(--teal);display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.3rem}