/* KRELVENT — css/style.css */
:root{--bg:#0B1510;--panel:#132018;--ink:#E2F0E8;--muted:#3A7A52;--accent:#4A8A62;--line:rgba(255,255,255,.1);--display:'Outfit',sans-serif;--body:'Nunito Sans',Arial,sans-serif}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);line-height:1.65}
img{width:100%;height:280px;max-height:60vh;object-fit:cover;display:block}
a{color:var(--accent);text-decoration:none}
a:hover{color:var(--ink)}
.container{width:min(1180px,calc(100% - 2rem));margin-inline:auto}
.site-header{background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.nav-wrap{min-height:76px;display:flex;align-items:center;gap:2rem}
.wordmark{font:700 1.7rem var(--display);color:var(--ink);letter-spacing:.04em}
.main-nav{display:flex;align-items:center;gap:1.2rem;margin-left:auto}
.main-nav>a,.main-nav summary{color:var(--ink);font-size:.9rem;cursor:pointer}
.main-nav details{position:relative}
.main-nav summary{list-style:none}
.dropdown{position:absolute;top:2rem;right:0;width:300px;background:var(--panel);border:1px solid var(--line);padding:.7rem;border-radius:10px;display:grid;gap:.4rem}
.dropdown a{padding:.4rem;color:var(--accent)}
.phone{color:var(--ink);font-size:.85rem}
.menu-toggle{display:none;background:none;border:0;color:var(--ink);font-size:1.5rem}
section{padding:5rem 0}
.hero{background:linear-gradient(125deg,#132018,#0B1510);padding:7rem 0}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center}
.hero h1{font:700 clamp(2.7rem,7vw,5.5rem)/1.02 var(--display);color:#fff;margin:.5rem 0 1.5rem;letter-spacing:-.04em}
.hero p,.dark p,.dark h2,.dark h3,.band p,.band h2,.band h3,.cta p,.cta h2{color:#fff}
.eyebrow{color:var(--accent);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.75rem}
.hero img{height:520px;max-height:80vh;border-radius:18px}
.section-head{max-width:720px;margin-bottom:2.5rem}
.section-head h2,h2{font:700 clamp(2rem,4vw,3.2rem)/1.1 var(--display);color:var(--ink);margin:.4rem 0 1rem}
.section-head p,p{color:var(--ink)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:1.5rem}
.card h3{font:700 1.25rem var(--display);color:var(--ink);margin-top:.4rem}
.card p{color:#c5d9cc}
.card img{height:210px;border-radius:9px;margin:-.2rem 0 1rem}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;text-align:center}
.stat{padding:1.5rem;border-top:1px solid var(--line)}
.stat strong{display:block;color:#fff;font:700 2.8rem var(--display)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.split img{height:420px;border-radius:14px}
.band,.dark,.cta{background:var(--panel)}
.timeline{display:grid;gap:1rem}
.timeline article{border-left:2px solid var(--accent);padding:0 0 1rem 1.5rem}
.timeline h3{color:var(--ink);margin:.1rem 0}
.quote-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.quote-wall blockquote{margin:0;background:var(--panel);padding:1.5rem;border-radius:12px;color:var(--ink);font-size:1.1rem}
.article-list{display:grid;gap:.8rem}
.article-list a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:1rem 0}
.callout{background:#183522;border:1px solid var(--accent);padding:1.5rem;border-radius:12px}
.callout h2,.callout p{color:#fff}
.cta{text-align:center;background:var(--accent);padding:4rem 0}
.cta h2,.cta p{color:#fff}
.button{display:inline-block;background:#fff;color:#173521;border-radius:999px;padding:.75rem 1.3rem;font-weight:700;border:0;cursor:pointer}
.newsletter{display:flex;gap:.6rem;max-width:600px}
.newsletter input{flex:1;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:.8rem;color:var(--ink)}
table{width:100%;border-collapse:collapse;background:var(--panel)}
th,td{padding:1rem;border:1px solid var(--line);text-align:left}
th{color:var(--accent)}
.article{max-width:850px}
.article h1{font:700 clamp(2.5rem,6vw,4.8rem)/1.05 var(--display);color:#fff}
.article h2{margin-top:3rem}
.article figure{margin:2rem 0}
.article figure img{height:380px;border-radius:12px}
.article-meta{color:var(--accent)}
.site-footer{border-top:1px solid var(--line);padding:4rem 0 2rem;background:#09100c}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:3rem}
.footer-grid h3{color:#fff;font:700 1.1rem var(--display)}
.footer-grid a{display:block;margin:.45rem 0}
.footer-bottom{border-top:1px solid var(--line);margin-top:3rem;padding-top:1rem;font-size:.82rem}
.cookie-banner{position:fixed!important;bottom:1.25rem;right:1.25rem;left:auto;z-index:9999;background:#fff;color:#2c3e50;padding:1rem 1.25rem;border:1px solid rgba(0,0,0,.12);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.15);max-width:380px;font-size:.9rem}
.cookie-banner p{color:#2c3e50;margin:0 0 .75rem}
.cookie-banner button{padding:.5rem 1rem;border-radius:4px;cursor:pointer;border:1px solid #2c3e50;background:#2c3e50;color:#fff;font:inherit;margin-right:.5rem}
.cookie-banner button[data-action="cookies.reject"],.cookie-banner button[data-action="cookies.openModal"]{background:transparent;color:#2c3e50}
.cookie-banner.hidden{display:none!important}
.dark h2,.dark h3,.dark p,.dark li,.band h2,.band h3,.band p,.band li,.sage-band h2,.sage-band h3,.sage-band p,.sage-band li,.callout h2,.callout h3,.callout p,.callout li,.hero h2,.hero h3,.hero p,.hero li,.cta h2,.cta h3,.cta p,.cta li,.accent h2,.accent h3,.accent p,.accent li{color:#fff}
.dark .card,.dark .card *,.band .card,.band .card *,.sage-band .card,.sage-band .card *,.callout .card,.callout .card *,.hero .card,.hero .card *,.cta .card,.cta .card *,.accent .card,.accent .card *{color:#2c3e50}
.dark table th,.dark table td,.band table th,.band table td,.sage-band table th,.sage-band table td,.callout table th,.callout table td,.hero table th,.hero table td,.cta table th,.cta table td,.accent table th,.accent table td{color:#2c3e50}
.dark blockquote,.band blockquote,.sage-band blockquote,.callout blockquote,.hero blockquote,.cta blockquote,.accent blockquote{color:#2c3e50}
@media(max-width:800px){.main-nav{display:none}
.main-nav.open{display:grid;position:absolute;top:76px;left:0;right:0;padding:1rem;background:var(--panel)}
.menu-toggle{display:block;margin-left:auto}
.phone{display:none}
.hero-grid,.split{grid-template-columns:1fr}
.grid-3,.quote-wall{grid-template-columns:1fr}
.stats{grid-template-columns:repeat(2,1fr)}
.footer-grid{grid-template-columns:1fr}
.newsletter{flex-direction:column}
.hero{padding:4rem 0}
}

/* === CSS FIXES — images, layout, contrast === */
html, body { overflow-x: hidden; }
*, *::before, *::after { box-sizing: border-box; }
img { max-width: 100% !important; height: auto !important; display: block; }
.hero img, .hero-img, .product-img, .content-img, .split img,
.feature-img, .article-img, .card img, section img {
  width: 100% !important; max-height: 520px !important;
  object-fit: cover !important; border-radius: 8px !important;
}
.container, .wrap, .inner {
  max-width: 1280px !important; margin-left: auto !important;
  margin-right: auto !important; padding-left: 24px !important;
  padding-right: 24px !important; box-sizing: border-box !important;
}
.hero { display: block !important; overflow: hidden !important; }
.hero > .container, .hero > div { max-width: 1280px !important; margin: 0 auto !important; padding: 0 24px !important; }
.hero-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 3rem !important; align-items: center !important; }
.grid-3, .grid3 { display: grid !important; grid-template-columns: repeat(3,1fr) !important; gap: 28px !important; }
.stats-row { display: grid !important; grid-template-columns: repeat(4,1fr) !important; gap: 2rem !important; }
.hero h1, .hero h2, .hero p { color: var(--ink, var(--text, #1a1a1a)); }
.site-header nav, header .container { max-width: 1280px !important; margin: 0 auto !important; padding: 1rem 24px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; }
footer .container, footer .wrap { max-width: 1280px !important; margin: 0 auto !important; padding: 3rem 24px !important; }
@media (max-width: 1023px) { .hero-grid { grid-template-columns: 1fr !important; } .stats-row { grid-template-columns: repeat(2,1fr) !important; } }
@media (max-width: 767px) { .grid-3,.grid3,.hero-grid,.stats-row { grid-template-columns: 1fr !important; } .hero { padding: 3rem 0 !important; } h1 { font-size: clamp(1.8rem,8vw,2.8rem) !important; } }
