:root{
  --ink:#102018;
  --muted:#607068;
  --paper:#f7f5ef;
  --card:#fffdf8;
  --matcha:#6f8e4a;
  --matcha-dark:#2f4a2f;
  --matcha-light:#dfe8ca;
  --line:#d8ddd4;
  --gold:#b49a63;
  --white:#ffffff;
  --shadow:0 18px 50px rgba(23,44,30,.08);
  --radius:26px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--paper);color:var(--ink);line-height:1.55}
a{color:inherit;text-decoration:none}
img{max-width:100%}
button,input,select,textarea{font:inherit}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.nav{position:sticky;top:0;z-index:50;background:rgba(247,245,239,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(16,32,24,.08)}
.nav-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.08em;font-size:18px}
.brand-mark{width:34px;height:34px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;position:relative;overflow:hidden}
.brand-mark:before,.brand-mark:after{content:"";position:absolute;width:24px;height:10px;border:1px solid var(--matcha-dark);border-radius:50%}
.brand-mark:before{transform:translateY(3px)}
.brand-mark:after{transform:translateY(8px)}
.nav-links{display:flex;gap:24px;align-items:center;font-size:14px;color:#33443a}
.nav-links a:hover{color:var(--matcha-dark)}
.nav-actions{display:flex;gap:10px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 18px;border-radius:999px;border:1px solid var(--ink);font-weight:700;font-size:14px;transition:.2s ease;cursor:pointer;background:transparent}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--ink);color:white}
.btn-secondary{background:var(--card)}
.btn-matcha{background:var(--matcha-dark);color:white;border-color:var(--matcha-dark)}
.mobile-toggle{display:none;border:0;background:none;font-size:24px}
.hero{padding:88px 0 58px;position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;width:680px;height:680px;right:-240px;top:-260px;background:radial-gradient(circle at 35% 35%,rgba(150,180,105,.38),rgba(111,142,74,.15) 38%,transparent 70%);border-radius:50%}
.hero:after{content:"";position:absolute;left:-180px;bottom:-360px;width:560px;height:560px;border:1px solid rgba(47,74,47,.18);border-radius:50%;box-shadow:0 0 0 70px rgba(47,74,47,.035),0 0 0 140px rgba(47,74,47,.025)}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:64px;align-items:center;position:relative;z-index:2}
.eyebrow{display:inline-flex;gap:8px;align-items:center;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:var(--matcha-dark);margin-bottom:16px}
.dot{width:8px;height:8px;border-radius:50%;background:var(--matcha)}
h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(48px,7vw,88px);line-height:.96;letter-spacing:-.05em;margin:0 0 24px;font-weight:500}
.hero p.lead{font-size:20px;max-width:720px;color:#405149;margin:0 0 28px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}
.trust-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.pill{font-size:12px;font-weight:700;border:1px solid rgba(16,32,24,.15);background:rgba(255,255,255,.45);padding:8px 11px;border-radius:999px}
.hero-panel{background:linear-gradient(155deg,#28442e,#15281d);color:white;border-radius:34px;padding:32px;box-shadow:var(--shadow);position:relative;min-height:490px;overflow:hidden}
.hero-panel:before{content:"";position:absolute;right:-80px;top:-100px;width:300px;height:300px;border-radius:50%;background:rgba(178,207,133,.15);box-shadow:0 0 0 60px rgba(178,207,133,.055),0 0 0 120px rgba(178,207,133,.035)}
.panel-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#cfdacb}
.panel-title{font-family:Georgia,"Times New Roman",serif;font-size:38px;line-height:1.05;margin:12px 0 24px}
.data-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:30px}
.data-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:16px;min-height:110px}
.data-card b{display:block;font-size:12px;color:#dbe4d7;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.data-card span{font-size:18px;font-weight:750}
.section{padding:86px 0}.section-tight{padding:58px 0}.section-dark{background:var(--ink);color:white}.section-matcha{background:#e7eddc}
.section-head{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:34px}.section-head h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(36px,5vw,58px);line-height:1.02;letter-spacing:-.035em;margin:0;font-weight:500}.section-head p{max-width:560px;color:var(--muted);margin:0}.section-dark .section-head p{color:#b9c5be}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.card{background:var(--card);border:1px solid rgba(16,32,24,.1);border-radius:var(--radius);padding:26px;box-shadow:0 8px 28px rgba(23,44,30,.035)}
.card h3{margin:8px 0 10px;font-size:20px}.card p{color:var(--muted);margin:0}.card .num{font-family:Georgia,"Times New Roman",serif;font-size:42px;color:var(--matcha)}
.icon{width:42px;height:42px;border-radius:14px;background:var(--matcha-light);display:grid;place-items:center;font-weight:900;color:var(--matcha-dark)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid rgba(255,255,255,.14);border-radius:28px;overflow:hidden}.step{padding:28px;border-right:1px solid rgba(255,255,255,.14)}.step:last-child{border-right:none}.step small{color:#9eb0a5}.step h3{font-size:19px}.step p{color:#b8c4bd}
.grade-card{position:relative;min-height:280px;display:flex;flex-direction:column;justify-content:space-between}.grade-card .tag{align-self:flex-start;border:1px solid rgba(16,32,24,.14);border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.grade-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.grade-meta span{font-size:11px;padding:6px 8px;border-radius:10px;background:#eef1e9;color:#526159}.grade-card h3{font-size:24px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.feature-list{display:grid;gap:12px;margin:22px 0}.feature{display:flex;gap:12px;align-items:flex-start}.check{width:24px;height:24px;border-radius:50%;background:var(--matcha-dark);color:white;display:grid;place-items:center;font-size:12px;flex:0 0 auto;margin-top:2px}.feature b{display:block;margin-bottom:2px}.feature span{color:var(--muted)}
.quote-card{background:var(--matcha-dark);color:white;border-radius:32px;padding:34px}.quote-card blockquote{font-family:Georgia,"Times New Roman",serif;font-size:34px;line-height:1.14;margin:0 0 20px}.quote-card p{color:#cfdbce}
.origins{display:flex;flex-wrap:wrap;gap:10px}.origin-chip{padding:13px 16px;border-radius:16px;background:var(--card);border:1px solid var(--line);font-weight:750}
.cta{background:linear-gradient(120deg,#203828,#4d6840);border-radius:36px;color:white;padding:44px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.cta h2{font-family:Georgia,"Times New Roman",serif;font-size:44px;line-height:1.02;margin:0 0 12px}.cta p{margin:0;color:#d4ded2;max-width:700px}
.form-shell{background:var(--card);border:1px solid var(--line);border-radius:30px;padding:30px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:800;letter-spacing:.04em;color:#4f5e56}.field input,.field select,.field textarea{width:100%;border:1px solid #cfd6cf;border-radius:14px;padding:13px 14px;background:#fff;font-size:15px;color:var(--ink)}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(111,142,74,.25);border-color:var(--matcha)}
.optional{margin:20px 0 0;border-top:1px solid var(--line);padding-top:16px}.optional summary{cursor:pointer;font-weight:800;color:var(--matcha-dark)}.optional .form-grid{margin-top:16px}.micro{font-size:12px;color:var(--muted)}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:22px;background:var(--card)}table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:left;padding:16px 18px;border-bottom:1px solid var(--line);font-size:14px}th{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#f0f2ec}tr:last-child td{border-bottom:none}
.faq{display:grid;gap:10px}.faq details{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px 20px}.faq summary{cursor:pointer;font-weight:800}.faq p{color:var(--muted)}
.breadcrumb{font-size:13px;color:var(--muted);padding-top:24px}.page-hero{padding:68px 0 48px}.page-hero h1{font-size:clamp(44px,6vw,76px)}.page-hero .lead{max-width:800px}
.article{max-width:800px;margin:auto}.article h1{font-size:60px}.article h2{font-family:Georgia,"Times New Roman",serif;font-size:34px;margin-top:46px}.article p,.article li{font-size:17px;color:#34453c}.article .meta{font-size:13px;color:var(--muted);margin:14px 0 28px}.article-callout{border-left:4px solid var(--matcha);padding:18px 20px;background:#edf2e5;border-radius:0 16px 16px 0;margin:26px 0}.article ul{padding-left:22px}
.footer{padding:52px 0 32px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr .8fr;gap:30px}.footer h4{font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 12px}.footer a{display:block;color:var(--muted);margin:8px 0;font-size:14px}.footer small{display:block;color:#78877f;margin-top:28px}.footer-note{font-size:13px;color:var(--muted);max-width:440px;margin-top:14px}
.notice{background:#f0f3eb;border:1px solid var(--line);border-radius:16px;padding:14px 16px;font-size:13px;color:#526159}
.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:40;display:none}
@media(max-width:960px){.nav-links{display:none}.mobile-toggle{display:block}.nav.open .nav-links{display:flex;position:absolute;top:76px;left:0;right:0;background:var(--paper);padding:22px 20px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.hero-grid,.split,.cta{grid-template-columns:1fr}.hero-panel{min-height:410px}.grid-3,.grid-4{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.step:nth-child(2){border-right:none}.step:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.14)}.footer-grid{grid-template-columns:1fr 1fr}.section-head{display:block}.section-head p{margin-top:14px}}
@media(max-width:640px){.container{width:min(100% - 26px,1180px)}.nav-actions .btn-secondary{display:none}.hero{padding-top:54px}.hero p.lead{font-size:17px}.hero-panel{padding:24px}.data-grid,.grid-2,.grid-3,.grid-4,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.steps{grid-template-columns:1fr}.step{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.step:last-child{border-bottom:0}.cta{padding:30px}.cta h2{font-size:36px}.footer-grid{grid-template-columns:1fr}.page-hero{padding-top:44px}.article h1{font-size:44px}}
.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.success-card{max-width:820px;background:var(--card);border:1px solid var(--line);border-radius:32px;padding:42px;box-shadow:var(--shadow);margin:20px auto 40px}
.success-card h1{font-size:clamp(42px,6vw,68px)}
.success-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--matcha-dark);color:#fff;font-size:28px;font-weight:900;margin-bottom:22px}

/* Visual sourcing story */
.visual-story{padding:22px 0 48px;background:var(--bg,#f7f5ef)}
.visual-story-frame{margin:0;border:1px solid rgba(16,32,24,.13);border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 16px 50px rgba(16,32,24,.08)}
.visual-story-frame img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.visual-story-frame figcaption{padding:13px 18px 16px;font-size:12px;line-height:1.55;color:var(--muted,#68746d);letter-spacing:.01em}
@media (max-width:720px){.visual-story{padding:12px 0 34px}.visual-story-frame{border-radius:18px}.visual-story-frame figcaption{font-size:11px;padding:11px 14px 14px}}
