:root{--brand:#0b6b4f;--brand2:#38c98a;--dark:#123528;--soft:#eef7f1;--ink:#24332c}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{font-family:'Plus Jakarta Sans',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}
h1,h2,h3,h4{color:var(--dark);font-weight:800;line-height:1.15}h1{font-size:clamp(2.2rem,5vw,3.6rem)}h2{font-size:clamp(1.7rem,3vw,2.4rem)}a{color:var(--brand);text-decoration:none}a:hover{color:#084f39}
.logo{display:inline-flex;align-items:center;gap:.55rem;white-space:nowrap;text-decoration:none}
.logo-text{font-family:'Fraunces',serif;font-weight:800;font-size:1.35rem;color:var(--brand);letter-spacing:-.02em;white-space:nowrap}
.logo-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand2));font-size:1.25rem;flex:0 0 auto;box-shadow:0 8px 20px rgba(11,107,79,.25)}
.footer-logo .logo-text{color:#fff}
.site-header{box-shadow:0 4px 24px rgba(18,53,40,.08);z-index:1030}
.navbar{padding:.85rem 0}.nav-link{font-weight:600;color:var(--dark)!important;padding:.55rem .85rem!important;border-radius:999px}
.nav-link:hover,.nav-link.active{background:var(--soft);color:var(--brand)!important}
.btn-brand{background:linear-gradient(135deg,var(--brand),#149a6e);color:#fff!important;border:none;font-weight:700;box-shadow:0 10px 24px rgba(11,107,79,.25)}
.btn-brand:hover{background:linear-gradient(135deg,#084f39,var(--brand));transform:translateY(-2px)}
.btn-outline-brand{border:2px solid var(--brand);color:var(--brand)!important;font-weight:700;background:#fff}.btn-outline-brand:hover{background:var(--soft)}
.btn-danger-soft{background:#fff0f0;color:#b02e3a!important;border:2px solid #f0b8bc;font-weight:700}.btn-danger-soft:hover{background:#ffe3e5}
.hero{background:radial-gradient(800px 400px at 10% 0%,#d8f3df,transparent),radial-gradient(700px 400px at 95% 20%,#d9f7ee,transparent),linear-gradient(180deg,#f4fbf5,#fff);padding:5.5rem 0 4.5rem;position:relative}
.hero-img-wrap{position:relative}.hero-img,.rounded-img{border-radius:28px;box-shadow:0 24px 50px rgba(18,53,40,.16);width:100%}
.floating-card{position:absolute;left:-14px;bottom:22px;background:#fff;border-radius:18px;padding:1rem 1.2rem;box-shadow:0 18px 40px rgba(0,0,0,.14);max-width:260px}
.eyebrow{display:inline-block;background:#dcf2e3;color:var(--brand);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;padding:.45rem .9rem;border-radius:999px;margin-bottom:1rem}
.eyebrow.light{background:rgba(255,255,255,.22);color:#fff}
.grad{background:linear-gradient(90deg,var(--brand),#65c41f);-webkit-background-clip:text;background-clip:text;color:transparent}
.trust-row{display:flex;flex-wrap:wrap;gap:.6rem}.trust-row span{background:#fff;border:1px solid #dcefe2;padding:.5rem .9rem;border-radius:999px;font-weight:700;font-size:.9rem;box-shadow:0 6px 18px rgba(0,0,0,.05)}
.section{padding:5rem 0}.bg-soft{background:var(--soft)}.section-head{max-width:720px}
.service-card,.blog-card,.feature-card,.contact-card{background:#fff;border:1px solid #e2efe6;border-radius:22px;overflow:hidden;transition:.3s;height:100%}
.service-card:hover,.blog-card:hover,.feature-card:hover,.contact-card:hover{transform:translateY(-7px);box-shadow:0 22px 45px rgba(18,53,40,.14)}
.service-card .card-body,.blog-card .card-body{padding:1.5rem}.service-card h3,.blog-card h3{font-size:1.25rem}
.service-card img,.blog-card img{height:210px;object-fit:cover;width:100%}
.blog-card h3 a{color:var(--dark)}.read-more{font-weight:800}
.feature-card,.contact-card{padding:1.7rem}.feature-icon{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,#dcf2e3,#eef9f0);display:flex;align-items:center;justify-content:center;font-size:1.7rem;margin-bottom:1rem}
.value-card{background:#fff;border-left:6px solid var(--brand2);border-radius:16px;padding:1.5rem;box-shadow:0 10px 30px rgba(0,0,0,.06)}
.check-list{list-style:none;padding:0}.check-list li{padding:.45rem 0 .45rem 2rem;position:relative}.check-list li:before{content:"✓";position:absolute;left:0;top:.35rem;width:24px;height:24px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:800}
.badge-soft{background:#e6f4ea;color:var(--brand);padding:.35rem .8rem;border-radius:999px;font-weight:700;font-size:.82rem}
.testimonial-card{max-width:760px;background:#fff;border-radius:26px;padding:2.4rem;text-align:center;box-shadow:0 20px 45px rgba(18,53,40,.12)}
.stars{color:#f5a623;font-size:1.4rem;letter-spacing:.2rem}.testimonial-card p{font-size:1.15rem;line-height:1.7}
.person{display:flex;align-items:center;justify-content:center;gap:.9rem;margin-top:1.4rem;text-align:left}.avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}
.carousel-control-prev-icon,.carousel-control-next-icon{background-color:var(--brand);border-radius:50%;padding:1.2rem}
.faq .accordion-item{border:1px solid #dcefe2;border-radius:16px!important;overflow:hidden;margin-bottom:.9rem}.faq .accordion-button{font-weight:700;color:var(--dark)}.faq .accordion-button:not(.collapsed){background:#eaf6ee;color:var(--brand)}
.page-hero{background:linear-gradient(135deg,var(--brand),#149a6e 55%,#65c41f);color:#fff;padding:4.5rem 0}.page-hero h1,.page-hero p{color:#fff}.page-hero .lead{max-width:720px;opacity:.95}
.unsubscribe-hero{background:linear-gradient(135deg,#7a3b4f,#b05a6b 60%,#d98a7a)}
.cta-section{padding:0 0 5rem}.cta-box{background:linear-gradient(135deg,var(--brand),#1aa574);color:#fff;border-radius:30px;padding:3rem;box-shadow:0 24px 50px rgba(11,107,79,.3)}.cta-box h2,.cta-box p{color:#fff}
.info-banner,.newsletter-strip{background:#fff;border:2px dashed #a9d9bb;border-radius:22px;padding:2rem}
.form-card,.policy-card{background:#fff;border:1px solid #e2efe6;border-radius:26px;padding:2.2rem;box-shadow:0 18px 40px rgba(18,53,40,.08)}
.form-control,.form-select{border-radius:12px;padding:.75rem 1rem}.form-control:focus,.form-select:focus{border-color:var(--brand2);box-shadow:0 0 0 .2rem rgba(56,201,138,.2)}
.visit-card{background:linear-gradient(160deg,var(--brand),#123528);color:#fff;border-radius:26px;padding:2.2rem}.visit-card p{color:#eaf6ee}
.article-body h2{margin-top:2rem;font-size:1.6rem}.article-body p{line-height:1.85;font-size:1.05rem}
.article-cta{background:var(--soft);border-radius:20px;padding:1.8rem}
.policy-card h2{font-size:1.35rem;margin-top:1.8rem}.policy-card h2:first-child{margin-top:0}.policy-card p{line-height:1.8}
.site-footer{background:#0f2e23;color:#d9eee1;padding:4rem 0 1.5rem;margin-top:0}.site-footer h5{color:#fff;margin-bottom:1rem}
.footer-links{list-style:none;padding:0}.footer-links li{margin:.55rem 0}.footer-links a{color:#cfe8d8}.footer-links a:hover{color:#fff;text-decoration:underline}
.footer-text{color:#bcd8c8}.footer-hr{border-color:rgba(255,255,255,.18);margin:2rem 0 1.2rem}
.social{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.12);display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem}
#backToTop{position:fixed;right:22px;bottom:22px;width:48px;height:48px;border-radius:50%;border:none;background:var(--brand);color:#fff;font-size:1.3rem;box-shadow:0 12px 28px rgba(0,0,0,.25);display:none;z-index:999}
.reveal{opacity:0;transform:translateY(22px);transition:.7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:576px){.logo-text{font-size:1.12rem}.floating-card{left:8px}.cta-box{padding:2rem 1.4rem}.section{padding:3.5rem 0}}

/* Real photo presentation */
.hero-img{height:540px;object-fit:cover}
.rounded-img{object-fit:cover}
.section .rounded-img{max-height:520px}
article .rounded-img,.article-body + img{object-fit:cover}
.blog-card img,.service-card img{object-position:center}
@media(max-width:768px){.hero-img{height:340px}.section .rounded-img{max-height:360px}}
