@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root{
  --green:#0E7C55;
  --green-dark:#096746;
  --green-soft:#EAF6F1;
  --ink:#111816;
  --muted:#64706B;
  --line:#DCE6E1;
  --paper:#FFFFFF;
  --soft:#F6F9F7;
  --black:#0C1110;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.65}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.container{width:min(var(--max),calc(100% - 40px));margin:auto}
.topbar{background:var(--black);color:#fff;font-size:12px;letter-spacing:.02em}
.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:8px 0}
.topbar a{color:#91E1BB}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(220,230,225,.8)}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:11px;font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.035em;font-size:21px}
.brand-mark{width:38px;height:38px;border:2px solid var(--green);border-radius:50%;display:grid;place-items:center;color:var(--green);font-size:19px;transform:rotate(-8deg)}
.brand .dot{color:var(--green)}
nav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:600}
nav a:hover{color:var(--green)}
.nav-cta{border:1px solid var(--line);border-radius:9px;padding:10px 14px}
.mobile-toggle{display:none;border:0;background:none;font-size:24px}
.hero{position:relative;overflow:hidden;padding:88px 0 78px;background:
radial-gradient(circle at 82% 30%, rgba(14,124,85,.11), transparent 29%),
linear-gradient(180deg,#fbfdfc 0%,#fff 100%)}
.hero:after{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(14,124,85,.12);border-radius:50%;right:-130px;top:-150px}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:75px;align-items:center}
.eyebrow{color:var(--green);font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin-bottom:15px}
h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-.045em;line-height:1.04;margin:0}
h1{font-size:clamp(48px,6vw,82px);font-weight:700;max-width:780px}
h2{font-size:clamp(34px,4vw,52px);font-weight:700}
h3{font-size:21px;font-weight:700}
.hero p{font-size:19px;color:#51605A;max-width:650px;margin:25px 0 30px}
.actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 20px;border-radius:8px;font-weight:700;font-size:14px;border:1px solid transparent;transition:.2s ease}
.btn-primary{background:var(--green);color:#fff}.btn-primary:hover{background:var(--green-dark);transform:translateY(-1px)}
.btn-secondary{background:#fff;border-color:#BFCFC7}.btn-secondary:hover{border-color:var(--green);color:var(--green)}
.trustline{margin-top:32px;display:flex;gap:24px;flex-wrap:wrap;font-size:12px;font-weight:600;color:#58645F}
.trustline span{display:flex;align-items:center;gap:7px}.trustline b{color:var(--green)}
.hero-panel{position:relative;min-height:475px}
.hero-card{position:absolute;background:#fff;border:1px solid var(--line);box-shadow:0 24px 70px rgba(20,40,31,.08);border-radius:20px;padding:25px}
.hero-card.primary{width:78%;height:290px;right:0;top:30px;background:linear-gradient(145deg,#10211B,#0B1210);color:#fff;border-color:#1a3429;overflow:hidden}
.hero-card.primary:after{content:"";position:absolute;width:270px;height:270px;border:1px solid rgba(112,220,168,.2);border-radius:50%;right:-55px;bottom:-80px;box-shadow:0 0 0 36px rgba(112,220,168,.03),0 0 0 72px rgba(112,220,168,.02)}
.hero-card.primary .big{font:700 34px/1.05 Manrope,sans-serif;max-width:290px;margin-top:80px}
.hero-card.primary small{color:#8CDCB6;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
.hero-card.mini{width:52%;bottom:36px;left:0;z-index:3}
.hero-card.mini h3{margin-bottom:8px}.hero-card.mini p{font-size:13px;margin:0;color:var(--muted)}
.hero-card.badge{width:39%;right:12px;bottom:0;z-index:4;background:var(--green-soft);border:0}
.hero-card.badge strong{display:block;color:var(--green);font:800 30px Manrope,sans-serif}.hero-card.badge span{font-size:12px;font-weight:600;color:#4d5c56}
.category-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.category-grid{display:grid;grid-template-columns:repeat(5,1fr)}
.quick{padding:24px 20px;border-right:1px solid var(--line);transition:.2s ease}.quick:last-child{border-right:0}.quick:hover{background:var(--green-soft)}
.quick .icon{color:var(--green);font-size:22px;margin-bottom:12px}.quick strong{display:block;font-family:Manrope;font-size:15px}.quick span{font-size:12px;color:var(--muted)}
.section{padding:92px 0}.section.soft{background:var(--soft)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section-head p{max-width:560px;color:var(--muted);margin:0}
.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.guide-card{min-height:300px;border:1px solid var(--line);border-radius:17px;padding:30px;position:relative;overflow:hidden;background:#fff;display:flex;flex-direction:column;justify-content:space-between;transition:.22s ease}
.guide-card:hover{transform:translateY(-4px);box-shadow:0 18px 50px rgba(26,49,39,.08);border-color:#bed7ca}
.guide-card.dark{background:var(--black);color:#fff;border-color:var(--black)}
.guide-card .kicker{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--green);font-weight:800}.guide-card.dark .kicker{color:#7DD7AB}
.guide-card p{color:var(--muted);max-width:420px;margin:12px 0}.guide-card.dark p{color:#B4C0BB}
.guide-card .arrow{font-size:14px;color:var(--green);font-weight:700}.guide-card.dark .arrow{color:#8BE1B6}
.guide-card:after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,rgba(14,124,85,.14),rgba(14,124,85,0) 70%);right:-55px;bottom:-60px}
.supplier{padding:0 0 92px}
.supplier-box{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--black);border-radius:23px;overflow:hidden;color:#fff}
.supplier-art{min-height:430px;background:linear-gradient(145deg,#0E7C55 0%,#072C20 100%);position:relative;overflow:hidden}
.supplier-art:before,.supplier-art:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.18)}
.supplier-art:before{width:360px;height:360px;left:-80px;top:50px}.supplier-art:after{width:220px;height:220px;right:-60px;bottom:-50px}
.supplier-art .word{position:absolute;left:48px;bottom:48px;font:800 56px/1 Manrope,sans-serif;letter-spacing:-.06em}.supplier-art .word span{color:#9BE7C0}
.supplier-copy{padding:58px}.supplier-copy .eyebrow{color:#89E0B4}.supplier-copy h2{font-size:44px}.supplier-copy p{color:#B9C5C0;font-size:17px;max-width:590px}.supplier-points{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0 32px}.supplier-point{padding-top:14px;border-top:1px solid #26342F}.supplier-point strong{display:block;font-size:14px}.supplier-point span{font-size:12px;color:#9EACA6}
.article-hero{padding:72px 0 50px;background:linear-gradient(180deg,var(--soft),#fff)}
.article-hero h1{font-size:clamp(44px,6vw,72px);max-width:900px}.article-hero p{font-size:19px;color:var(--muted);max-width:760px}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:70px;padding:60px 0 90px}
.prose{font-size:17px}.prose h2{font-size:34px;margin:48px 0 16px}.prose h3{font-size:22px;margin:32px 0 10px}.prose p{color:#495650}.prose ul{padding-left:22px;color:#495650}.prose li{margin:8px 0}.callout{background:var(--green-soft);border:1px solid #CEE5DA;border-radius:14px;padding:24px;margin:28px 0}.callout strong{display:block;color:var(--green);margin-bottom:6px}.sidebar{position:relative}.side-card{position:sticky;top:112px;border:1px solid var(--line);border-radius:16px;padding:24px;background:#fff}.side-card h3{font-size:20px}.side-card p{font-size:13px;color:var(--muted)}.side-links{margin:20px 0}.side-links a{display:block;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px;font-weight:600}.side-links a:hover{color:var(--green)}
.faq{margin-top:45px}.faq-item{border-top:1px solid var(--line);padding:20px 0}.faq-item h3{font-size:18px;margin-bottom:7px}.faq-item p{margin:0;color:var(--muted)}
footer{background:#0D1210;color:#fff;padding:62px 0 24px}.footer-grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:55px}.footer-copy{color:#9CA9A3;font-size:13px;max-width:310px}.footer-title{font:700 13px Manrope;text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}.footer-links a{display:block;color:#AFBBB6;font-size:13px;padding:4px 0}.footer-links a:hover{color:#8BE1B6}.footer-bottom{border-top:1px solid #26312D;margin-top:48px;padding-top:20px;color:#7F8C86;font-size:12px;display:flex;justify-content:space-between;gap:20px}
@media(max-width:900px){nav{display:none}.mobile-toggle{display:block}.hero-grid,.supplier-box,.article-layout{grid-template-columns:1fr}.hero-panel{min-height:430px;margin-top:10px}.category-grid{grid-template-columns:repeat(2,1fr)}.quick:nth-child(even){border-right:0}.guide-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.sidebar{display:none}.supplier-copy{padding:38px}.supplier-art{min-height:300px}}
@media(max-width:600px){.container{width:min(100% - 28px,var(--max))}.topbar .container{justify-content:center}.topbar span:first-child{display:none}.hero{padding:56px 0}.hero-grid{gap:30px}.hero p{font-size:17px}.hero-panel{min-height:365px}.hero-card.primary{width:90%;height:245px}.hero-card.primary .big{font-size:27px;margin-top:60px}.hero-card.mini{width:62%}.hero-card.badge{width:46%}.category-grid{grid-template-columns:1fr 1fr}.quick{padding:18px 14px}.section{padding:68px 0}.section-head{display:block}.section-head p{margin-top:14px}.supplier-points{grid-template-columns:1fr}.supplier-copy h2{font-size:36px}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}}
