:root{
  --ink:#12231b;
  --muted:#64726b;
  --green:#194f37;
  --green-2:#276b4b;
  --sage:#eef4ef;
  --cream:#fbf8f0;
  --gold:#c4863d;
  --line:#dce6df;
  --white:#fff;
  --shadow:0 22px 50px rgba(18,35,27,.10);
  --soft-shadow:0 14px 28px rgba(18,35,27,.08);
  --radius:26px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(calc(100% - 32px),var(--max));margin:0 auto}.section{padding:82px 0}.section-sm{padding:56px 0}.eyebrow{font-size:.77rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green-2);font-weight:850}.lead{font-size:1.13rem;color:var(--muted);max-width:750px}.muted{color:var(--muted)}h1,h2,h3{line-height:1.12;margin:0 0 16px}h1{font-size:clamp(2.45rem,5.3vw,4.75rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,3.3vw,3.25rem);letter-spacing:-.04em}h3{font-size:1.22rem;letter-spacing:-.02em}.topbar{background:var(--green);color:#fff;font-size:.92rem}.topbar .container{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.header{position:sticky;top:0;z-index:60;background:rgba(251,248,240,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(220,230,223,.78)}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:14px;font-weight:900}.logo{width:54px;height:54px;border-radius:18px;background:#fff;box-shadow:var(--soft-shadow);border:1px solid rgba(18,35,27,.08);overflow:hidden;flex:0 0 auto}.logo img{width:100%;height:100%;object-fit:contain}.wordmark{display:block;font-size:1.08rem;letter-spacing:-.03em}.brand small{display:block;margin-top:3px;color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:0}.navlinks{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.navlinks a{padding:10px 12px;border-radius:999px;color:#50625a;font-size:.94rem;font-weight:750}.navlinks a:hover,.navlinks a.active{color:var(--green);background:rgba(39,107,75,.10)}.menu{display:none;background:none;border:0;font-size:1.65rem;color:var(--green)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:14px 19px;font-weight:850;border:1px solid transparent;transition:.2s ease;cursor:pointer}.btn-primary{background:var(--green);color:#fff;box-shadow:var(--soft-shadow)}.btn-primary:hover{background:#123d2a;transform:translateY(-1px)}.btn-light{background:#fff;color:var(--green);border-color:#fff}.btn-outline{background:transparent;border-color:var(--line);color:var(--green)}.btn-outline:hover{border-color:var(--green);background:#fff}.hero{padding:48px 0 34px}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:30px;align-items:center}.hero-copy{padding:42px 0}.pill-row{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0}.pill{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--green);font-weight:800;font-size:.86rem}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.hero-photo{position:relative;border-radius:34px;overflow:hidden;min-height:590px;background:#ddd;box-shadow:var(--shadow);border:10px solid #fff}.hero-photo img{width:100%;height:100%;min-height:590px;object-fit:cover;object-position:center}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,35,27,0) 50%,rgba(18,35,27,.65))}.hero-card{position:absolute;left:22px;right:22px;bottom:22px;z-index:2;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.7);border-radius:22px;padding:19px 20px;box-shadow:var(--soft-shadow)}.hero-card strong{display:block;color:var(--green);font-size:1.1rem}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}.metric{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--soft-shadow)}.metric strong{display:block;font-size:1.6rem;line-height:1}.photo-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--soft-shadow)}.photo-card .media{height:250px;overflow:hidden;background:#e6eee9}.photo-card .media img{width:100%;height:100%;object-fit:cover}.photo-card .body{padding:23px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.split{display:grid;grid-template-columns:.92fr 1.08fr;gap:28px;align-items:center}.split-photo{border-radius:30px;overflow:hidden;box-shadow:var(--shadow);border:9px solid #fff}.split-photo img{width:100%;height:520px;object-fit:cover}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--soft-shadow)}.dark-band{background:linear-gradient(135deg,#123d2a,#276b4b);color:#fff;border-radius:34px;padding:44px;box-shadow:var(--shadow)}.dark-band .eyebrow{color:#d7e8dd}.dark-band p,.dark-band li{color:rgba(255,255,255,.84)}.list{list-style:none;padding:0;margin:18px 0 0}.list li{padding-left:25px;position:relative;margin:10px 0;color:var(--muted)}.list li:before{content:"";position:absolute;left:0;top:.66em;width:8px;height:8px;border-radius:50%;background:var(--gold)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step{background:#fff;border:1px solid var(--line);border-radius:24px;padding:23px;box-shadow:var(--soft-shadow)}.num{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f6eadc;color:#a86124;font-weight:900;margin-bottom:14px}.product-detail{display:grid;grid-template-columns:1.02fr .98fr;gap:30px;align-items:center}.detail-photo{border-radius:32px;overflow:hidden;box-shadow:var(--shadow);border:10px solid #fff}.detail-photo img{width:100%;height:520px;object-fit:cover}.feature-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px}.feature{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px}.quote{background:#fff;border:1px solid var(--line);border-radius:32px;padding:34px;box-shadow:var(--shadow)}.form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}label{font-weight:800;font-size:.91rem}input,select,textarea{border:1px solid var(--line);border-radius:16px;padding:14px 15px;font:inherit;background:#fff;color:var(--ink)}textarea{min-height:140px;resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid rgba(39,107,75,.15);border-color:var(--green-2)}.footer{padding:54px 0 70px;border-top:1px solid var(--line);background:#f7f3e9}.footer-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;gap:30px}.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}.whatsapp{position:fixed;right:18px;bottom:18px;z-index:80;background:#25D366;color:#fff;padding:13px 16px;border-radius:999px;box-shadow:0 18px 35px rgba(37,211,102,.3);font-weight:900}.breadcrumb{display:flex;gap:8px;flex-wrap:wrap;font-size:.9rem;color:var(--muted);margin-bottom:18px}.breadcrumb a{color:var(--green);font-weight:800}.credits{font-size:.9rem;color:var(--muted)}.page-hero{padding:48px 0 32px}.page-box{background:linear-gradient(135deg,#fff,#f4f8f5);border:1px solid var(--line);border-radius:34px;padding:40px;box-shadow:var(--soft-shadow)}
@media(max-width:980px){.hero-grid,.split,.product-detail,.footer-grid{grid-template-columns:1fr}.grid-3,.steps,.feature-row{grid-template-columns:repeat(2,1fr)}.hero-photo,.hero-photo img{min-height:440px}.split-photo img,.detail-photo img{height:430px}}
@media(max-width:720px){.navlinks{position:absolute;left:16px;right:16px;top:84px;display:none;flex-direction:column;align-items:stretch;padding:12px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.navlinks.open{display:flex}.menu{display:block}.topbar .container{justify-content:center;text-align:center}.hero-copy{padding:14px 0}.hero-photo,.hero-photo img{min-height:380px}.metrics,.grid-3,.grid-2,.steps,.feature-row,.form{grid-template-columns:1fr}.section{padding:60px 0}.dark-band{padding:28px}.page-box{padding:27px}.whatsapp{left:12px;right:12px;justify-content:center;text-align:center}.footer{padding-bottom:100px}}

/*
 * Custom styles for the upgraded theme
 *
 * The following rules add a dropdown menu under the Products link in the
 * navigation bar. On larger screens the dropdown appears on hover, while
 * on smaller screens it can be toggled using JavaScript by adding the
 * `.open` class to the `.has-dropdown` element. Each list item is
 * styled consistently with the rest of the navigation. The menu
 * inherits the theme colours defined at the top of this stylesheet.
 */
.nav-item.has-dropdown { position: relative; }
.nav-item.has-dropdown > a.dropdown-toggle { display: inline-flex; align-items: center; padding: 10px 12px; border-radius: 999px; }
.nav-item.has-dropdown > a.dropdown-toggle:after { content: '▾'; margin-left: 4px; font-size: .8rem; }
.nav-item.has-dropdown .dropdown { display: none; position: absolute; left: 0; top: 100%; background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow); border-radius: 18px; padding: 12px; min-width: 220px; z-index: 100; }
.nav-item.has-dropdown .dropdown li { list-style: none; }
.nav-item.has-dropdown .dropdown li a { display: block; padding: 8px 10px; border-radius: 12px; color: var(--ink); font-size: .92rem; font-weight: 750; }
.nav-item.has-dropdown .dropdown li a:hover { background: rgba(39, 107, 75, .10); color: var(--green); }
.nav-item.has-dropdown:hover > .dropdown,
.nav-item.has-dropdown:focus-within > .dropdown { display: block; }

/* Mobile dropdown styles */
@media(max-width: 720px) {
  .nav-item.has-dropdown { width: 100%; }
  .nav-item.has-dropdown .dropdown { position: static; border: none; box-shadow: none; padding: 0; margin-top: 4px; display: none; }
  .nav-item.has-dropdown.open .dropdown { display: block; }
  .nav-item.has-dropdown .dropdown li a { padding: 10px 12px; }
}

/* Request form notices */
.notice { margin: 16px 0 20px; padding: 14px 16px; border-radius: 16px; font-weight: 750; }
.notice.success { background: #eef7ef; border: 1px solid rgba(39,107,75,.22); color: var(--green); }
.notice.error { background: #fff1ee; border: 1px solid rgba(166,65,43,.22); color: #8a321d; }
