
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.hero{background:radial-gradient(circle at 75% 20%,#dcfce9 0,transparent 34%),linear-gradient(180deg,#f7fff9 0,#fff 100%)}
.topbar{letter-spacing:.01em}.navlink{color:#385047;transition:.2s}.navlink:hover{color:#07834e}
.logo-mark{width:42px;height:42px;border-radius:13px;background:#0a8f55;color:#fff;display:grid;place-items:center;font-size:23px;box-shadow:0 8px 20px #0a8f5530}.logo-mark.dark{background:#0a8f55}
.phone-mini{width:42px;height:42px;border:1px solid #d6eee2;border-radius:12px;display:grid;place-items:center;color:#075e3b}
.btn-primary,.btn-secondary,.btn-wa,.btn-light,.btn-outline-light{border-radius:14px;padding:14px 20px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.2s}
.btn-primary{background:#087443;color:#fff;box-shadow:0 12px 25px #08744325}.btn-primary:hover{transform:translateY(-2px);background:#075e3b}
.btn-secondary{background:#fff;border:1px solid #cfe7dc;color:#075e3b}.btn-secondary:hover{background:#f1faf5}
.btn-wa{background:#e8f9ef;color:#087443;border:1px solid #bdebd1}.eyebrow{display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:900;color:#07834e}.eyebrow span{width:24px;height:2px;background:#8bdc4d}.eyebrow.light{color:#b7f34a}.hero h1{color:#10231b}.trust-chip{background:#fff;border:1px solid #e3f0e9;border-radius:13px;padding:10px 8px;display:flex;align-items:center;gap:7px;font-size:11px;font-weight:800;color:#087443;box-shadow:0 5px 18px #163e2a08}.trust-chip span{color:#52655d;font-weight:700}
.hero-art{min-height:470px;border-radius:34px;background:linear-gradient(145deg,#0a8f55,#075e3b);position:relative;overflow:hidden;box-shadow:0 30px 70px #075e3b30}.sun{position:absolute;width:250px;height:250px;border-radius:50%;background:#b7f34a;right:-40px;top:-60px;opacity:.9}.hero-bin{position:absolute;left:50%;top:115px;transform:translateX(-50%);width:210px;text-align:center}.bin-lid{height:30px;border-radius:16px 16px 6px 6px;background:#10231b;box-shadow:0 8px 0 #071d13}.bin-body{margin:7px auto 0;width:165px;height:220px;border-radius:20px 20px 34px 34px;background:linear-gradient(135deg,#f6fff9,#bfe9d2);color:#087443;font-size:70px;display:grid;place-items:center;box-shadow:inset -18px 0 35px #08744320,0 30px 30px #032e1d40}.material{position:absolute;background:#fff;border-radius:12px;padding:11px 15px;font-weight:900;font-size:10px;box-shadow:0 10px 25px #001d1230;transform:rotate(-8deg)}.m1{left:10%;top:28%}.m2{right:10%;top:45%;transform:rotate(7deg)}.m3{left:15%;bottom:24%;transform:rotate(5deg)}.leaf{position:absolute;color:#b7f34a;font-size:28px;opacity:.7}.l1{left:13%;top:12%}.l2{right:17%;bottom:15%}.l3{right:8%;top:65%}.pickup-card{position:absolute;left:8%;right:8%;bottom:28px;background:#fff;border-radius:18px;padding:17px;color:#10231b;box-shadow:0 15px 35px #001d1230}.status-dot{font-size:9px;font-weight:900;color:#087443;background:#e9faef;padding:5px 8px;border-radius:999px}.mini-bars{display:flex;gap:4px;align-items:end}.mini-bars i{display:block;width:6px;background:#0a8f55;border-radius:5px}.mini-bars i:nth-child(1){height:12px}.mini-bars i:nth-child(2){height:19px}.mini-bars i:nth-child(3){height:28px}.mini-bars i:nth-child(4){height:38px}
.booking-card{background:#fff;border:1px solid #dceee5;border-radius:25px;padding:24px;box-shadow:0 20px 65px #0a8f5515}.field{display:grid;gap:7px}.field span{font-size:11px;font-weight:900;color:#53665e;text-transform:uppercase;letter-spacing:.06em}.field input,.field select{width:100%;border:1px solid #d8e9e1;border-radius:12px;padding:12px 13px;outline:none;background:#fbfefc;font-size:14px}.field input:focus,.field select:focus{border-color:#55b983;box-shadow:0 0 0 3px #0a8f5510}
.section{padding:90px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-head h2,.section h2{font-size:clamp(2rem,4vw,3rem);font-weight:950;letter-spacing:-.04em;line-height:1.05}.section-head p{margin-top:10px;color:#64756e}
.rate-card{border:1px solid #e1eee8;border-radius:18px;padding:20px;background:#fff;display:flex;flex-direction:column;gap:8px;box-shadow:0 8px 25px #163e2a08;transition:.2s}.rate-card:hover{transform:translateY(-3px);box-shadow:0 15px 35px #163e2a12}.rate-card.featured{border-color:#8ed5a8;background:#f4fff8}.rate-icon{font-size:25px}.rate-card span:not(.rate-icon){font-size:13px;color:#60736b;font-weight:700}.rate-card strong{font-size:24px;color:#075e3b}.rate-card strong span{font-size:11px;font-weight:700}.notice{background:#fff8df;border:1px solid #f0dda0;color:#705b17;border-radius:14px;padding:14px 16px;font-size:12px;line-height:1.6}
.category-card{background:#fff;border:1px solid #dceee5;border-radius:20px;padding:25px;min-height:185px;transition:.2s}.category-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #0a8f5512}.cat-icon{width:52px;height:52px;background:#eaf9f0;border-radius:15px;display:grid;place-items:center;font-size:25px}.category-card h3{font-size:18px;font-weight:900;margin-top:18px}.category-card p{font-size:13px;line-height:1.6;color:#66776f;margin-top:6px}.compliance{font-size:11px;color:#687a72}
.steps{display:grid;grid-template-columns:repeat(4,1fr);position:relative}.steps:before{content:"";height:2px;background:#cce9d8;position:absolute;left:9%;right:9%;top:45px}.step{position:relative;text-align:center;padding:0 15px}.step>span{position:relative;z-index:2;background:#fff;color:#07834e;border:2px solid #a9dfbe;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;margin:auto;font-size:12px;font-weight:950}.step-icon{font-size:26px;margin-top:22px}.step h3{font-size:17px;font-weight:900;margin-top:12px}.step p{font-size:13px;color:#687a72;line-height:1.6;margin-top:5px}
.benefit{background:#ffffff12;border:1px solid #ffffff18;border-radius:17px;padding:17px;display:flex;gap:12px;font-size:22px}.benefit b{display:block;font-size:14px}.benefit small{display:block;color:#ffffffa8;font-size:11px;margin-top:4px}
.receipt{border:1px solid #dceee5;border-radius:24px;background:#fff;padding:26px;box-shadow:0 20px 55px #0a8f5510}.receipt small{display:block;color:#74847e;font-size:10px;font-weight:500;margin-top:3px}.receipt-row{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px dashed #dce9e2;font-size:14px}.receipt strong{color:#087443}
.business-panel{background:#fff;border:1px solid #d9eee2;border-radius:30px;padding:35px;display:grid;grid-template-columns:1fr .8fr;gap:40px;align-items:center;box-shadow:0 15px 45px #0a8f550b}.b2b-art{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.b2b-art div{min-height:90px;border-radius:17px;background:#0a8f55;color:#fff;display:grid;place-items:center;font-size:11px;font-weight:950;letter-spacing:.1em}.b2b-art div:nth-child(2n){background:#b7f34a;color:#163d2c}
.location-card{border-radius:20px;background:#fff;border:1px solid #dceee5;padding:25px;box-shadow:0 8px 25px #163e2a08}.location-card span{font-size:11px;font-weight:900;color:#07834e}.location-card h3{font-size:22px;font-weight:950;margin-top:20px}.location-card p{font-size:13px;color:#6b7c75;margin-top:5px}.map-art{height:260px;border-radius:25px;background:#e8f5ed;position:relative;overflow:hidden;border:1px solid #d4eadc}.map-art:before,.map-art:after{content:"";position:absolute;border:2px solid #c5dfd0;border-radius:50%;width:420px;height:170px;left:15%;top:35px;transform:rotate(-13deg)}.map-art:after{width:520px;height:100px;left:30%;top:130px;transform:rotate(15deg)}.map-line{position:absolute;height:3px;background:#9acdaf;transform-origin:left center;border-radius:10px}.map-line.a{width:40%;left:20%;top:45%;transform:rotate(20deg)}.map-line.b{width:35%;left:47%;top:56%;transform:rotate(-25deg)}.map-pin{position:absolute;width:36px;height:36px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#087443;color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 6px 12px #075e3b33}.map-pin:after{content:"";transform:rotate(45deg)}.p1{left:23%;top:31%}.p2{left:54%;top:58%}.p3{right:19%;top:35%;background:#b7f34a}.map-label{position:absolute;font-size:11px;font-weight:900;color:#325b48}.l1{left:19%;top:54%}.l2{left:50%;top:73%}.l3{right:13%;top:57%}.map-note{position:absolute;right:14px;bottom:12px;font-size:9px;color:#70857b}
.testimonial{background:#fff;border:1px solid #dceee5;border-radius:20px;padding:24px}.stars{color:#f2ad23;letter-spacing:3px}.testimonial p{color:#52665e;font-size:14px;line-height:1.7;margin:14px 0}.testimonial b{display:block;font-size:13px}.testimonial small{color:#82928b}
.faq{border:1px solid #dceee5;border-radius:15px;overflow:hidden}.faq button{width:100%;padding:19px 20px;display:flex;justify-content:space-between;text-align:left;font-weight:850;background:#fff}.faq button span{font-size:20px;color:#07834e}.faq>div{display:none;padding:0 20px 19px;color:#66776f;font-size:13px;line-height:1.7}.faq.open>div{display:block}.faq.open button span{transform:rotate(45deg)}
.cta-section{background:linear-gradient(135deg,#075e3b,#0a8f55);padding:95px 0;color:#fff}.cta-section h2{font-size:clamp(2.3rem,5vw,4rem);font-weight:950;letter-spacing:-.05em;margin-top:18px}.cta-section p{font-size:18px;color:#d9f5e4;margin-top:10px}.cta-badge{display:inline-block;background:#ffffff15;border:1px solid #ffffff22;border-radius:999px;padding:9px 14px;font-size:11px;font-weight:800}.btn-light{background:#fff;color:#075e3b}.btn-outline-light{border:1px solid #ffffff55;color:#fff}
.footer{background:#10231b;color:#fff}.footer h3{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#b7f34a;margin-bottom:16px}.footer-links{display:grid;gap:10px;color:#ffffff9c;font-size:13px}.footer-links a:hover{color:#fff}.social{width:34px;height:34px;border-radius:10px;background:#ffffff10;display:grid;place-items:center;font-size:12px;font-weight:900;color:#fff}.float-wa{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#20c76b;color:#fff;display:grid;place-items:center;font-weight:950;z-index:60;box-shadow:0 15px 35px #0b5f352f}.top-btn{position:fixed;right:24px;bottom:92px;width:38px;height:38px;border-radius:12px;background:#fff;border:1px solid #dceee5;color:#075e3b;z-index:55;display:none}.mobile-bar{position:fixed;bottom:0;left:0;right:0;height:62px;background:#fff;border-top:1px solid #d9e9e1;z-index:70;display:grid;grid-template-columns:repeat(3,1fr);box-shadow:0 -8px 25px #0b302015}.mobile-bar a{display:flex;align-items:center;justify-content:center;gap:5px;font-size:11px;font-weight:900;color:#075e3b;flex-direction:column}.modal{position:fixed;inset:0;background:#062f1dcc;display:grid;place-items:center;z-index:100;padding:20px}.modal.hidden{display:none}.modal-box{position:relative;background:#fff;border-radius:25px;padding:35px;max-width:430px;width:100%;text-align:center}.modal-box h2{font-size:25px;font-weight:950;margin-top:15px}.modal-box p{color:#687a72;font-size:14px;line-height:1.6}.modal-close{position:absolute;right:15px;top:12px;font-size:25px;color:#708078}.success-icon{width:58px;height:58px;background:#e5faed;color:#087443;border-radius:50%;display:grid;place-items:center;margin:auto;font-size:28px;font-weight:900}
.reveal{opacity:0;transform:translateY(18px);transition:.65s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}
@media(max-width:900px){.steps{grid-template-columns:repeat(2,1fr);gap:35px}.steps:before{display:none}.business-panel{grid-template-columns:1fr}}
@media(max-width:640px){.section{padding:65px 0}.hero-art{min-height:390px}.hero-bin{top:80px}.bin-body{width:135px;height:180px}.pickup-card{bottom:20px}.section-head{align-items:start;flex-direction:column}.float-wa{bottom:76px;right:14px}.top-btn{bottom:145px;right:14px}.business-panel{padding:24px}.map-art{height:230px}}

/* ===== Mobile-first hardening ===== */
*{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto}
button,a,input,select{max-width:100%}
@media (max-width: 1023px){
  #navMenu{display:none!important}
  .hero{overflow:hidden}
  .hero-art{width:100%;min-height:390px}
}
@media (max-width: 767px){
  .topbar{font-size:10px}
  .topbar>div{padding-left:10px;padding-right:10px}
  header nav{height:68px;padding-left:14px;padding-right:14px}
  .logo-mark{width:38px;height:38px;border-radius:11px;font-size:20px}
  header .text-lg{font-size:15px}
  header .text-\[10px\]{font-size:9px}
  #menuBtn{width:44px;height:44px;padding:0;display:grid;place-items:center;font-size:20px}

  .hero .max-w-7xl{padding-top:36px;padding-bottom:34px}
  .hero h1{font-size:clamp(2.25rem,11vw,3.35rem);line-height:.99;letter-spacing:-.055em}
  .hero p{font-size:14px;line-height:1.75;margin-top:18px}
  .hero .flex.flex-col.sm\:flex-row{gap:9px;margin-top:22px}
  .hero .btn-primary,.hero .btn-secondary{width:100%;min-height:50px}
  .hero .flex.flex-wrap{margin-top:14px;gap:9px;font-size:13px}
  .trust-chip{padding:9px 7px;font-size:9px;min-height:48px}
  .trust-chip span{line-height:1.25}

  .hero-art{min-height:330px;border-radius:25px;margin-top:4px}
  .sun{width:175px;height:175px;right:-55px;top:-55px}
  .hero-bin{top:73px;width:160px}
  .bin-lid{height:23px}
  .bin-body{width:120px;height:155px;font-size:48px;border-radius:16px 16px 26px 26px}
  .material{padding:8px 10px;font-size:8px}
  .m1{left:6%;top:28%}.m2{right:5%;top:44%}.m3{left:9%;bottom:23%}
  .pickup-card{left:5%;right:5%;bottom:15px;padding:12px;border-radius:15px}
  .pickup-card .text-2xl{font-size:19px}

  #booking{margin-top:0;padding-left:12px;padding-right:12px}
  .booking-card{padding:17px;border-radius:20px}
  .booking-card .grid{grid-template-columns:1fr!important}
  .booking-card .sm\:col-span-2{grid-column:auto!important}
  .booking-card .lg\:col-span-4{grid-column:auto!important}
  .booking-card .btn-primary,.booking-card .btn-wa{width:100%;min-height:50px}
  .booking-card form>div:last-child{display:grid;grid-template-columns:1fr;gap:10px}
  .booking-card form>div:last-child p{margin:2px 0 0}
  .field input,.field select{min-height:48px;font-size:16px}

  .section{padding:58px 0}
  .section .max-w-7xl,.section .max-w-4xl{padding-left:15px;padding-right:15px}
  .section-head{display:block;margin-bottom:24px}
  .section-head h2,.section h2{font-size:clamp(2rem,9vw,2.65rem);line-height:1.04}
  .section-head p{font-size:13px;line-height:1.6}
  .rate-card{padding:16px;min-height:142px}
  .rate-card strong{font-size:21px}
  .rate-icon{font-size:21px}
  .notice{font-size:11px}

  .category-card{min-height:0;padding:19px}
  .category-card p{font-size:12px}
  .steps{grid-template-columns:1fr!important;gap:22px;margin-top:30px}
  .step{text-align:left;padding:0 4px 0 76px;min-height:76px}
  .step>span{position:absolute;left:0;top:0;width:54px;height:54px;margin:0}
  .step-icon{position:absolute;left:18px;top:57px;margin:0;font-size:17px;display:none}
  .step h3{margin-top:0;font-size:16px}
  .step p{font-size:12px;margin-top:5px}

  .benefit{padding:14px;font-size:19px}
  .benefit b{font-size:13px}
  .benefit small{font-size:10px}
  .receipt{padding:19px;border-radius:20px}
  .receipt-row{font-size:13px}

  .business-panel{display:block;padding:21px;border-radius:22px}
  .business-panel h2{font-size:2rem}
  .business-panel .grid{grid-template-columns:1fr}
  .b2b-art{margin-top:25px;grid-template-columns:repeat(2,1fr)}
  .b2b-art div{min-height:70px;font-size:9px}

  .location-card{padding:19px}
  .location-card h3{font-size:19px;margin-top:12px}
  .map-art{height:205px;border-radius:20px}
  .map-art:before{width:300px;height:120px;left:4%;top:35px}
  .map-art:after{width:340px;height:75px;left:22%;top:115px}
  .map-label{font-size:9px}
  .map-note{font-size:8px}

  .testimonial{padding:19px}
  .faq button{padding:16px;font-size:14px}
  .faq>div{font-size:12px;padding:0 16px 16px}

  .cta-section{padding:65px 15px 85px}
  .cta-section h2{font-size:clamp(2.25rem,10vw,3rem)}
  .cta-section p{font-size:15px}
  .btn-light,.btn-outline-light{width:100%;min-height:50px}

  .footer{padding-bottom:70px}
  .footer>div{padding-top:45px;padding-bottom:25px}
  .footer .grid{grid-template-columns:1fr 1fr}
  .footer .grid>div:first-child,.footer .grid>div:last-child{grid-column:1/-1}
  .footer h3{font-size:10px}
  .footer-links{font-size:11px}

  .float-wa{width:52px;height:52px;right:13px;bottom:77px;font-size:12px}
  .top-btn{right:14px;bottom:136px}
  .mobile-bar{height:64px}
  .mobile-bar a{font-size:10px}
}
@media (max-width: 380px){
  .hero h1{font-size:2.18rem}
  .hero-art{min-height:305px}
  .hero-bin{top:62px}
  .booking-card{padding:14px}
  .rate-card{padding:13px}
  .rate-card strong{font-size:19px}
  .footer .grid{grid-template-columns:1fr}
  .footer .grid>div{grid-column:auto!important}
}
