*{box-sizing:border-box}:root{--ink:#162019;--paper:#fbfaf6;--muted:#657067;--line:#dddccf;--accent:#ad542f;--cream:#efe5d2}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif;line-height:1.65}.wrap{width:min(1160px,calc(100% - 36px));margin:auto}a{color:inherit}.top{position:sticky;top:0;z-index:10;background:#fbfaf6ee;border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center;text-decoration:none}.brand b{display:block;letter-spacing:.08em}.brand small{display:block;color:var(--muted);font-size:.72rem}.mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:white;font-weight:800}.nav nav{display:flex;gap:20px}.nav nav a{text-decoration:none;font-weight:650;font-size:.9rem}.menu{display:none}h1,h2,h3{font-family:Georgia,serif;line-height:1.05}.eyebrow{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:850;color:var(--accent)}.hero{padding:80px 0;background:linear-gradient(120deg,#f1e7d4,#f8f6ee)}.hero h1{font-size:clamp(3.4rem,7vw,6.7rem);letter-spacing:-.055em;max-width:900px;margin:.2em 0}.hero p{max-width:720px;font-size:1.2rem;color:#475048}.btn{display:inline-block;background:var(--accent);color:white;padding:13px 18px;border-radius:8px;text-decoration:none;font-weight:800}.section{padding:70px 0}.section h2{font-size:clamp(2.2rem,4vw,3.8rem);letter-spacing:-.04em}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:white;border:1px solid var(--line);border-radius:14px;padding:22px;text-decoration:none;transition:.15s}.card:hover{transform:translateY(-2px);box-shadow:0 10px 25px #00000010}.card h3{font-size:1.5rem}.card p{color:var(--muted)}.band{background:var(--ink);color:white;padding:65px 0}.band p{color:#cbd3cd;max-width:760px}.article{display:grid;grid-template-columns:minmax(0,760px) 300px;gap:60px;padding:44px 0 75px}.article h1{font-size:clamp(2.8rem,5vw,4.8rem);letter-spacing:-.045em}.article h2{font-size:2rem;margin-top:42px}.dek{font-size:1.18rem;color:#505b52}.note{background:#edf0e8;border-left:4px solid #31513f;padding:18px;border-radius:0 10px 10px 0}.offer{background:var(--ink);color:white;border-radius:14px;padding:22px;margin:34px 0}.offer p{color:#d4dbd6}.offer small{display:block;color:#adb7b0;margin-top:10px}.sidebox{background:white;border:1px solid var(--line);border-radius:12px;padding:18px;margin-bottom:16px}.category{padding:65px 0 40px;background:var(--cream)}.category h1{font-size:4.8rem;margin:.2em 0}.prose{max-width:780px;padding:70px 0}.prose h1{font-size:4rem}footer{background:#111914;color:white;padding:50px 0 24px}.foot{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.foot a{display:block;color:#cbd4cd;text-decoration:none;margin:6px 0}.foot p{color:#aab5ad}.fine{border-top:1px solid #344038;margin-top:28px;padding-top:18px;color:#8e9991;font-size:.8rem}@media(max-width:900px){.nav nav{display:none;position:absolute;top:74px;left:0;right:0;background:#fbfaf6;padding:20px;flex-direction:column}.nav nav.open{display:flex}.menu{display:block}.article{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.grid,.foot{grid-template-columns:1fr}.hero{padding:50px 0}.hero h1{font-size:3.5rem}.category h1{font-size:3.3rem}.brand small{display:none}}

.review-hero{padding:48px 0 28px;border-bottom:1px solid var(--line)}
.review-hero h1{font-size:clamp(2.8rem,5.5vw,5rem);letter-spacing:-.05em;max-width:980px}
.review-dek{font-size:1.2rem;color:#505b52;max-width:820px}
.verdict{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;background:#e8eddf;border:1px solid #cad2c3;border-radius:14px;padding:24px;margin:28px 0}
.score{font-family:Georgia,serif;font-size:2.1rem;font-weight:bold}
.quick-table{width:100%;border-collapse:collapse;margin:25px 0}.quick-table th,.quick-table td{padding:13px 14px;text-align:left;border-bottom:1px solid var(--line)}.quick-table th{width:32%;color:var(--muted);font-size:.88rem}
.procon{display:grid;grid-template-columns:1fr 1fr;gap:18px}.procon>div{border:1px solid var(--line);border-radius:12px;padding:20px;background:#fff}.procon ul,.fit-grid ul{padding-left:20px}
.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fit-grid>div{padding:20px;border-radius:12px;background:#f3f0e7}
.review-cta{background:#162019;color:#fff;border-radius:16px;padding:26px;margin:36px 0}.review-cta p{color:#d5ddd7}.review-cta .btn{margin-top:6px}
.faq details{border-top:1px solid var(--line);padding:15px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-weight:750;cursor:pointer}
.source-box{font-size:.9rem;background:#f5f2e8;border:1px solid var(--line);padding:18px;border-radius:12px}.source-box a{font-weight:700}
@media(max-width:700px){.verdict,.procon,.fit-grid{grid-template-columns:1fr}}


.hero-visual{width:100%;border-radius:18px;border:1px solid var(--line);display:block;aspect-ratio:16/9;object-fit:cover}
.topic-visual{width:100%;border-radius:14px;display:block;aspect-ratio:16/9;object-fit:cover;margin:20px 0 28px}
.product-visual{width:min(100%,560px);display:block;margin:22px auto;border-radius:14px}
.figure{margin:28px 0}.figure figcaption{font-size:.82rem;color:var(--muted);margin-top:8px}
.article-toc{background:#f1ede2;border:1px solid var(--line);border-radius:12px;padding:18px 22px;margin:26px 0}.article-toc b{display:block;margin-bottom:8px}.article-toc a{display:block;margin:5px 0}
.key-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.key-grid div{background:#fff;border:1px solid var(--line);padding:16px;border-radius:10px}.key-grid b{display:block;font-family:Georgia,serif;font-size:1.2rem}
@media(max-width:700px){.key-grid{grid-template-columns:1fr}}


:root{--water:#1261a0;--growing:#2f7d32;--food:#d96b00;--power:#6d3a9c}
.topic-water{border-top:5px solid var(--water)!important}.topic-growing{border-top:5px solid var(--growing)!important}.topic-food{border-top:5px solid var(--food)!important}.topic-power{border-top:5px solid var(--power)!important}
.topic-water h2,.topic-water h3{color:var(--water)}.topic-growing h2,.topic-growing h3{color:var(--growing)}.topic-food h2,.topic-food h3{color:var(--food)}.topic-power h2,.topic-power h3{color:var(--power)}
.category-water .eyebrow{color:var(--water)}.category-growing .eyebrow{color:var(--growing)}.category-food .eyebrow{color:var(--food)}.category-power .eyebrow{color:var(--power)}


/* ===== Reliant Ground high-contrast redesign ===== */
:root{
  --rg-green:#123d1d;
  --rg-green-2:#0b2d14;
  --rg-cream:#fbfaf6;
  --rg-ink:#141714;
  --rg-muted:#5c645e;
  --rg-line:#d9ded8;
  --rg-yellow:#f6c515;
  --water:#145f9c;
  --growing:#2f7d32;
  --food:#e56500;
  --power:#643794;
}
html{background:var(--rg-cream)}
body{background:var(--rg-cream);color:var(--rg-ink)}
.top{background:#fff;border-bottom:1px solid #dfe4de;box-shadow:0 2px 8px rgba(0,0,0,.05)}
.top a{color:#142116}
.nav{background:var(--rg-green)!important;color:#fff!important}
.nav a{color:#fff!important}
.nav a:hover{color:#ffe86c!important}
.hero,.review-hero{background:linear-gradient(180deg,#173f20 0%,#102f18 100%);color:#fff}
.hero h1,.review-hero h1,.hero p,.review-hero p,.hero .eyebrow,.review-hero .eyebrow{color:#fff!important}
.hero .btn,.review-hero .btn,.review-cta .btn{background:var(--rg-yellow)!important;color:#111!important;border-color:var(--rg-yellow)!important;font-weight:800}
.btn{font-weight:800}
.btn:hover{filter:brightness(.96)}
.section{background:var(--rg-cream)}
.card,.sidebox,.procon>div,.quick-table,.source-box{box-shadow:0 6px 18px rgba(16,45,24,.07)}
.hero-visual,.topic-visual,.product-visual{border:1px solid #cdd6cf;box-shadow:0 10px 24px rgba(0,0,0,.12)}
.topic-water,.topic-growing,.topic-food,.topic-power{
  color:#fff!important;border:0!important;box-shadow:0 8px 20px rgba(0,0,0,.12);
}
.topic-water{background:linear-gradient(180deg,#1b6cab,#0c4d81)!important}
.topic-growing{background:linear-gradient(180deg,#43943d,#286827)!important}
.topic-food{background:linear-gradient(180deg,#ef7a11,#c95300)!important}
.topic-power{background:linear-gradient(180deg,#7950a7,#56307f)!important}
.topic-water h2,.topic-water h3,.topic-water p,.topic-water a,
.topic-growing h2,.topic-growing h3,.topic-growing p,.topic-growing a,
.topic-food h2,.topic-food h3,.topic-food p,.topic-food a,
.topic-power h2,.topic-power h3,.topic-power p,.topic-power a{color:#fff!important}
.topic-water .btn,.topic-growing .btn,.topic-food .btn,.topic-power .btn{
  background:rgba(0,0,0,.28)!important;border:1px solid rgba(255,255,255,.55)!important;color:#fff!important
}
.topic-water .btn:hover,.topic-growing .btn:hover,.topic-food .btn:hover,.topic-power .btn:hover{background:rgba(0,0,0,.42)!important}
.category-water .eyebrow{color:#0f5f9f!important}
.category-growing .eyebrow{color:#2f7d32!important}
.category-food .eyebrow{color:#c95800!important}
.category-power .eyebrow{color:#5e348f!important}
.verdict{background:#eef4e9!important;border:1px solid #b8c8b6}
.review-cta{background:linear-gradient(135deg,#0d3017,#174b25)!important;border:1px solid #214f2d}
.review-cta h2,.review-cta p,.review-cta .eyebrow{color:#fff!important}
.review-cta small{color:#d4ded6!important}
.quick-table th{background:#f0f3ee;color:#26372a}
.quick-table td{background:#fff}
.faq details{background:#fff;padding:16px 18px;border:1px solid var(--rg-line);border-radius:10px;margin:10px 0}
.faq details+details{margin-top:10px}
.article-toc{background:#f0f3ec!important}
footer{background:var(--rg-green-2)!important;color:#fff!important}
footer a,footer p,footer small{color:#fff!important}
@media(max-width:760px){
  .hero,.review-hero{padding-top:34px}
}


.product-green .review-hero{background:linear-gradient(180deg,#28431f,#1b2f16)}
.product-blue .review-hero{background:linear-gradient(180deg,#123d5c,#0b2d46)}
.product-olive .review-hero{background:linear-gradient(180deg,#5a681f,#3e4a12)}
.product-red .review-hero{background:linear-gradient(180deg,#7f2d1b,#591d12)}
.product-green .score,.product-blue .score,.product-olive .score,.product-red .score{color:#132015}


.book-cover{display:block;width:min(100%,280px);height:auto;margin:18px auto;filter:drop-shadow(0 10px 10px rgba(0,0,0,.2))}
.book-cover-small{display:block;width:150px;max-width:100%;height:auto;margin:10px auto;filter:drop-shadow(0 6px 7px rgba(0,0,0,.18))}
.cover-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:26px 0}.cover-card{text-align:center;background:#fff;border:1px solid var(--rg-line);border-radius:12px;padding:16px}.cover-card h3{font-size:1.05rem;margin:8px 0}
@media(max-width:800px){.cover-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.cover-grid{grid-template-columns:1fr}}


.book-cover{display:block;width:min(100%,330px)!important;height:auto!important;margin:18px auto!important;filter:drop-shadow(0 12px 14px rgba(0,0,0,.25))}
.book-cover-small{display:block;width:190px!important;max-width:100%!important;height:auto!important;margin:12px auto!important;filter:drop-shadow(0 8px 10px rgba(0,0,0,.22))}
.cover-card{background:#fff!important;border:1px solid #d7ddd7!important;padding:18px!important}
.cover-card h3{color:#172018!important;font-weight:800!important}


/* ===== Mobile navigation fix — 2026-08-30 ===== */
.top{position:relative;z-index:1000}
.top .nav{position:relative}
.menu{
  appearance:none;
  border:1px solid rgba(255,255,255,.7);
  background:transparent;
  color:#fff;
  border-radius:8px;
  padding:10px 14px;
  font:inherit;
  font-weight:800;
  line-height:1;
  cursor:pointer;
}
.menu::after{content:" ☰";font-size:1.05em}
.menu[aria-expanded="true"]::after{content:" ✕"}
@media (max-width:900px){
  .top .nav{min-height:68px;padding-top:8px;padding-bottom:8px}
  .brand{min-width:0;max-width:calc(100% - 92px)}
  .brand b{font-size:clamp(.95rem,4.7vw,1.25rem);white-space:nowrap}
  .brand .mark{flex:0 0 auto}
  .menu{display:block;flex:0 0 auto;margin-left:10px}
  .nav nav{
    display:none;
    position:absolute;
    z-index:1100;
    top:100%;
    left:0;
    right:0;
    width:100%;
    margin:0;
    padding:8px;
    flex-direction:column;
    gap:0;
    background:#0b2d14;
    border-top:1px solid rgba(255,255,255,.18);
    border-radius:0 0 12px 12px;
    box-shadow:0 14px 28px rgba(0,0,0,.28);
    max-height:calc(100vh - 72px);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }
  .nav nav.open{display:flex}
  .nav nav a{
    display:block;
    width:100%;
    box-sizing:border-box;
    padding:15px 14px;
    color:#fff!important;
    font-size:1rem;
    line-height:1.25;
    border-bottom:1px solid rgba(255,255,255,.12);
    text-decoration:none;
  }
  .nav nav a:last-child{border-bottom:0}
  .nav nav a:hover,.nav nav a:focus{background:#164c24;color:#ffe66b!important}
}
@media (max-width:600px){
  .brand small{display:none}
  .top .nav{padding-left:14px;padding-right:14px}
  .menu{padding:10px 12px}
}


/* ===== Full-width top banner fix ===== */
html,body{margin:0;padding:0}
.top{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  background:#0b2d14!important;
}
.top>.wrap.nav{
  width:100%;
  max-width:none!important;
  margin:0!important;
  box-sizing:border-box;
  padding-left:max(24px,calc((100vw - 1180px)/2));
  padding-right:max(24px,calc((100vw - 1180px)/2));
}
@media(max-width:900px){
  .top>.wrap.nav{
    padding-left:16px!important;
    padding-right:16px!important;
  }
}


/* ===== Contact form ===== */
.contact-form{max-width:760px;margin:30px 0;padding:26px;background:#fff;border:1px solid var(--line);border-radius:14px}
.form-row{margin-bottom:18px}.form-row label{display:block;font-weight:800;margin-bottom:7px}
.form-row input,.form-row textarea{width:100%;box-sizing:border-box;border:1px solid #aeb8ae;border-radius:8px;padding:12px 13px;font:inherit;background:#fff;color:#172018}
.form-row input:focus,.form-row textarea:focus{outline:3px solid rgba(218,182,63,.35);border-color:#355f3b}
.form-consent{display:flex;gap:10px;align-items:flex-start;margin:4px 0 20px;font-size:.94rem}.form-consent input{margin-top:4px;flex:0 0 auto}
.form-hidden{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-form .btn{border:0;cursor:pointer;font:inherit;font-weight:800}
