:root{
  --green:#2f713e;
  --green-dark:#22582e;
  --yellow:#ffdb59;
  --cream:#fffaf0;
  --ink:#20251f;
  --muted:#6a716b;
  --line:#e7ebe4;
}
*{box-sizing:border-box;scroll-behavior:smooth}
html{scroll-padding-top:96px}
body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:#fff}
h1,h2,h3{font-family:"Playfair Display",serif}
a{text-decoration:none}
.container-xl{max-width:1320px}

/* TOPBAR */
.topbar{background:var(--yellow);font-size:11px;font-weight:700;color:#293028;height:32px;display:flex;align-items:center}
.topbar-grid{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center}
.topbar-center{text-align:center}
.topbar-right{display:flex;justify-content:flex-end;align-items:center;gap:12px}
.topbar a{color:#293028}

/* NAVBAR */
.main-nav{background:#fff;min-height:88px;border-bottom:1px solid #eceeea;z-index:1030}
.navbar-brand{padding:0;margin-right:28px;display:flex;align-items:center}
.navbar-brand img{width:170px;height:72px;object-fit:contain;object-position:center}
.nav-link{font-size:11px;font-weight:800;color:#20251f!important;padding:34px 12px 31px!important;white-space:nowrap}
.nav-link:hover,.nav-link.active{color:var(--green)!important}
.nav-link.active{position:relative}
.nav-link.active:after{content:"";position:absolute;left:12px;right:12px;bottom:19px;height:2px;background:var(--green)}
.dropdown-menu{border-radius:8px;padding:8px;min-width:175px}
.dropdown-item{font-size:11px;font-weight:600;padding:8px 11px;border-radius:5px}
.dropdown-item:hover{background:#edf5e9;color:var(--green)}
.nav-actions{display:flex;align-items:center;gap:17px;margin-left:18px}
.icon-btn{border:0;background:transparent;color:#111;font-size:21px;line-height:1;padding:5px;transition:.2s}
.icon-btn:hover{color:var(--green)}
.bag-btn span{position:absolute;top:-3px;right:-8px;width:18px;height:18px;background:var(--yellow);border-radius:50%;display:grid;place-items:center;font-size:9px;font-weight:900}

/* HERO */
.hero{background:#fbfaf2;padding:18px 0 0}
.hero-box{display:grid;grid-template-columns:49% 51%;min-height:465px;overflow:hidden;background:linear-gradient(105deg,#fffdf4 0%,#fff8df 50%,#e9efdf 100%);border-radius:0}
.hero-copy{padding:62px 48px 45px 76px;display:flex;flex-direction:column;justify-content:center}
.eyebrow{font-size:15px;letter-spacing:2px;font-weight:900}
.hero h1{font-size:76px;line-height:.82;color:var(--green);margin:13px 0 17px;text-shadow:2px 3px 0 rgba(255,255,255,.9)}
.hero h1 span{font-size:1.02em}
.tagline{font-size:13px;font-weight:700;margin-bottom:0}
.hero-features{display:flex;flex-wrap:wrap;gap:20px;margin:23px 0}
.hero-feature{display:flex;align-items:center;gap:8px;min-width:105px}
.hero-feature i{font-size:22px;color:var(--green)}
.hero-feature span{display:flex;flex-direction:column}
.hero-feature b{font-size:10px;line-height:1.2}
.hero-feature small{font-size:9px;color:var(--muted);margin-top:2px}
.hero-cta{display:flex;gap:9px}
.btn-green,.btn-outline-green,.btn-light-green{border-radius:5px;font-size:11px;font-weight:900;padding:12px 18px}
.btn-green{background:var(--green);color:#fff;border:1px solid var(--green)}
.btn-green:hover{background:var(--green-dark);border-color:var(--green-dark);color:#fff}
.btn-outline-green{background:#fff;color:var(--green);border:1px solid var(--green)}
.btn-outline-green:hover{background:var(--green);color:#fff}
.btn-light-green{background:#e8f1dc;color:var(--green-dark);border:0}
.hero-art{min-height:465px;overflow:hidden;background:#f1e8ca}
.hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.96)}
/* TRUST */
.trust-strip{background:#fff;padding:15px 0}
.trust-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #eceee9;box-shadow:0 5px 22px rgba(35,77,43,.08);border-radius:9px;overflow:hidden}
.trust-grid>div{display:flex;align-items:center;gap:10px;padding:15px 17px;border-right:1px solid #eee}
.trust-grid>div:last-child{border-right:0}
.trust-grid i{width:35px;height:35px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center}
.trust-grid b,.trust-grid small{display:block}
.trust-grid b{font-size:10px}
.trust-grid small{font-size:9px;color:var(--muted)}

/* SECTIONS */
.section{padding:72px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}
.kicker{font-size:10px;letter-spacing:1.4px;color:var(--green);font-weight:900}
.section-head h2,.about-section h2,.package-box h2,.contact-box h2{font-size:40px;margin:4px 0}
.section-head h2 em,.about-section h2 em,.package-box h2 em,.contact-box h2 em{font-style:normal;color:var(--green)}
.section-head p,.section-sub{font-size:13px;color:var(--muted);margin:0}
.product-search{width:250px;border:1px solid #ddd;border-radius:6px;padding:9px 12px;display:flex;gap:7px;background:#fff}
.product-search input{border:0;outline:0;width:100%;font-size:12px}

/* PRODUCTS */
.category-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:25px}
.category-tabs button{border:1px solid #d9ded8;background:#fff;border-radius:20px;padding:7px 15px;font-size:11px;font-weight:800;color:#4e574f}
.category-tabs button.active,.category-tabs button:hover{background:var(--green);color:#fff;border-color:var(--green)}
.product-card{height:100%;border:1px solid #e9ece7;border-radius:9px;overflow:hidden;background:#fff;transition:.2s}
.product-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(36,76,44,.08)}
.product-image{height:215px;background:#f8f5ea;overflow:hidden;display:flex;align-items:center;justify-content:center}
.product-image img{width:100%;height:100%;object-fit:contain;padding:10px}
.product-body{padding:14px}
.product-body .tag{font-size:9px;color:var(--green);font-weight:900}
.product-body h3{font-family:"DM Sans";font-size:14px;font-weight:800;line-height:1.35;margin:5px 0;min-height:38px}
.price{color:var(--green);font-size:15px;font-weight:900}
.rating{color:#f4b51d;font-size:12px}
.product-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.add-cart{border:0;background:var(--green);color:#fff;width:32px;height:32px;border-radius:5px}
.add-cart:hover{background:var(--green-dark)}

/* ABOUT */
.about-section{background:var(--cream)}
.about-photo{position:relative;border-radius:15px;overflow:hidden;background:#f4ecd6}
.about-photo img{width:100%;height:380px;object-fit:cover}
.badge-tradisi{position:absolute;left:18px;bottom:18px;background:#fff;border-radius:10px;padding:13px 17px;display:flex;align-items:center;gap:9px;box-shadow:0 10px 25px rgba(0,0,0,.12)}
.badge-tradisi strong{font-size:24px;color:var(--green)}
.badge-tradisi span{font-size:9px;font-weight:800}
.about-section .lead{font-size:16px;font-weight:600;line-height:1.7}
.about-section p:not(.lead){font-size:13px;color:var(--muted);line-height:1.8}
.about-points{display:grid;gap:9px;font-size:12px;font-weight:800}
.about-points i{color:var(--green);margin-right:7px}

/* PACKAGE */
.package-box{min-height:300px;border-radius:15px;padding:42px 7%;background:linear-gradient(120deg,#fff7d7,#e8f0dc);display:flex;justify-content:space-between;align-items:center;overflow:hidden}
.package-box p{font-size:13px;color:var(--muted);max-width:500px}
.package-visual{width:390px;height:230px}
.package-visual img{width:100%;height:100%;object-fit:cover;border-radius:12px}

/* OTHER SECTIONS */
.article-section{background:#fff}
.article-card{height:100%;padding:24px;border:1px solid var(--line);border-radius:11px;background:#fff}
.article-icon{width:48px;height:48px;border-radius:50%;background:#eaf3e7;color:var(--green);display:grid;place-items:center;font-size:20px;margin-bottom:15px}
.article-card>span{font-size:9px;color:var(--green);font-weight:900}
.article-card h3{font-family:"DM Sans";font-size:18px;font-weight:800;margin:7px 0}
.article-card p{font-size:12px;color:var(--muted);line-height:1.7}
.article-card a{font-size:11px;font-weight:800;color:var(--green)}
.testimonial-section{background:var(--cream)}
.testimonial{height:100%;background:#fff;border:1px solid var(--line);border-radius:11px;padding:25px;text-align:center}
.stars{color:#f4b51d;letter-spacing:2px}
.testimonial p{font-size:13px;line-height:1.8;color:var(--muted);font-style:italic}
.testimonial b,.testimonial small{display:block}
.testimonial b{font-size:11px}
.testimonial small{font-size:9px;color:#888}
.contact-box{padding:32px 42px;background:#eaf3e7;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.contact-box p{font-size:13px;color:var(--muted)}

/* FOOTER */
footer{background:#1f3021;color:#bdc9be;padding:50px 0 20px}
.footer-logo{width:170px;height:72px;object-fit:contain;filter:brightness(0) invert(1)}
footer p,footer a{font-size:11px;color:#b9c5ba;display:block;margin:9px 0}
footer h5{font-family:"DM Sans";font-size:13px;color:#fff;font-weight:800}
.social{display:flex;gap:8px}
.social a{width:30px;height:30px;border-radius:50%;border:1px solid #4b5e4d;display:grid;place-items:center;color:#fff}
.copyright{font-size:10px}

/* FLOATING + MODALS */
.floating-wa{position:fixed;right:22px;bottom:22px;z-index:1050}
.floating-wa a{width:54px;height:54px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-size:25px;box-shadow:0 10px 25px rgba(0,0,0,.2)}
.search-large{border:1px solid #ddd;border-radius:7px;padding:11px 13px;display:flex;gap:8px}
.search-large input{border:0;outline:0;width:100%}
.cart-line{display:flex;gap:10px;border-bottom:1px solid #eee;padding:12px 0}
.cart-line img{width:60px;height:60px;border-radius:7px;object-fit:contain;background:#f7f4ea}
.cart-line b{font-size:11px}
.cart-line small{font-size:10px;color:#777}
.cart-total{border-top:1px solid #eee;margin-top:12px;padding-top:15px;display:flex;justify-content:space-between}

/* RESPONSIVE */
@media(max-width:1199px){
  .nav-link{padding-left:9px!important;padding-right:9px!important}
  .navbar-brand{margin-right:12px}
  .nav-actions{gap:11px;margin-left:8px}
  .hero-copy{padding-left:52px}
}
@media(max-width:991px){
  .topbar{height:auto;padding:7px 0}
  .topbar-grid{display:block;text-align:center}
  .topbar-center,.topbar-right{display:none}
  .navbar-brand img{width:155px;height:68px}
  .main-nav{min-height:76px}
  .nav-link{padding:12px 0!important}
  .nav-link.active:after{display:none}
  .nav-actions{padding:10px 0 15px}
  .hero{padding-top:0}
  .hero-box{display:block}
  .hero-copy{padding:48px 30px 40px}
  .hero-art{height:340px;min-height:0}
  .hero-art img{object-fit:cover}
  .trust-grid{grid-template-columns:1fr 1fr}
  .trust-grid>div{border-bottom:1px solid #eee}
  .section-head{display:block}
  .product-search{width:100%;margin-top:14px}
  .package-box{display:block}
  .package-visual{width:100%;margin-top:25px}
  .contact-box{display:block}
}
@media(max-width:575px){
  .container-xl{padding-left:16px;padding-right:16px}
  .hero h1{font-size:58px}
  .hero-copy{padding:42px 20px 35px}
  .hero-features{gap:12px}
  .hero-feature{min-width:135px}
  .hero-art{height:280px}
  .trust-grid{grid-template-columns:1fr}
  .trust-grid>div{border-right:0}
  .section{padding:55px 0}
  .section-head h2,.about-section h2,.package-box h2,.contact-box h2{font-size:31px}
  .product-image{height:190px}
  .hero-cta .btn{padding:10px 12px;font-size:9px}
  .package-visual{height:190px}
}
