html, body {
  overflow-x: hidden;
  width: 100%;
  max-width: 100vw;
}
.hero-dark-green {
  background: #161f15;
  position: relative;
  width: 100vw;
  min-height: 88vh;
  display: flex;
  align-items: center;
  overflow: hidden;
  z-index: 1;
}
.hero-dark-accent {
  position: absolute;
  left: -12vw; top: 0;
  width: 55vw; height: 110%;
  background: linear-gradient(120deg, #9de84a 50%, #1c2e1d 100%);
  opacity: 0.16;
  border-radius: 0 30vw 60vw 0;
  z-index: 1;
  pointer-events: none;
}
.hero-dark-container {
  display: flex;
  max-width: 1480px;
  width: 100%;
  margin: 0 auto;
  padding: 75px 5vw 60px 5vw;
  align-items: center;
  z-index: 2;
  position: relative;
}
.hero-dark-img {
  flex: 1 1 45%;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}
.hero-dark-img img {
  max-width: 380px;
  width: 100%;
  border-radius: 0 24px 60px 0;
  background: #181d14;
  border: 4px solid #222;
  /* No shadow! */
}
.hero-dark-content {
  flex: 1 1 55%;
  margin-left: 4vw;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.hero-dark-content h1 {
  font-size: 2.7rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.13;
  margin-bottom: 16px;
  letter-spacing: 0.5px;
}
.hero-dark-green-highlight {
  color: #b7f469;
  background: linear-gradient(90deg, #b7f469 60%, #5dbd19 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}
.hero-dark-sub {
  color: #c0f1a2;
  font-size: 1.12rem;
  margin-bottom: 36px;
  margin-top: 0;
  max-width: 430px;
  line-height: 1.45;
  font-weight: 400;
}
.hero-dark-sub .brand-green {
  color: #9de84a;
  font-weight: 600;
  letter-spacing: 0.01em;
  display: inline-block;
}
.hero-dark-features {
  display: flex;
  gap: 44px;
  margin-bottom: 37px;
}
.hero-dark-features > div {
  display: flex;
  align-items: center;
  gap: 11px;
  font-size: 1.04rem;
  font-weight: 600;
  color: #fff;
  flex-direction: row;
}
.hero-dark-features i {
  font-size: 2rem;
  color: #b7f469;
  background: #273a17;
  border-radius: 50%;
  padding: 12px;
}
.hero-dark-features span {
  display: block;
  color: #fff;
  font-size: 1.17rem;
  font-weight: 700;
  line-height: 1.13;
}
.hero-dark-features small {
  font-size: 0.91em;
  font-weight: 400;
  color: #b7f469;
  display: block;
  letter-spacing: 0.05em;
}
.hero-dark-btn {
  margin-top: 4px;
  background: #b7f469;
  color: #181f13;
  font-size: 1.15rem;
  font-weight: 700;
  padding: 14px 36px;
  border-radius: 40px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: none;
  outline: none;
  transition: background 0.14s, color 0.15s, transform 0.13s;
}
.hero-dark-btn i {
  font-size: 1.13rem;
}
.hero-dark-btn:hover {
  background: #97d844;
  color: #222;
  transform: translateY(-2px) scale(1.04);
}

@media (max-width: 980px) {
  .hero-dark-container { flex-direction: column; align-items: center; text-align: center; }
  .hero-dark-content { align-items: center; margin-left: 0; }
  .hero-dark-content h1 { text-align: center; }
  .hero-dark-sub { text-align: center; }
  .hero-dark-features { justify-content: center; }
  .hero-dark-img { justify-content: center; margin-bottom: 28px; }
}
@media (max-width: 700px) {
  .hero-dark-content h1 { font-size: 1.2rem; }
  .hero-dark-btn { padding: 10px 15px; font-size: 1rem; }
  .hero-dark-features i { font-size: 1.1rem; padding: 7px;}
  .hero-dark-features span { font-size: 0.98rem;}
  .hero-dark-img img { max-width: 150px; }
}
.pricing-clean-section {
  background: #fcfefd;
  padding: 70px 0 80px 0;
}
.pricing-clean-header {
  text-align: center;
  margin-bottom: 40px;
}
.pricing-clean-label {
  color: #111;
  letter-spacing: 0.16em;
  font-size: 1.14rem;
  opacity: 0.75;
  margin-bottom: 6px;
}
.pricing-clean-header h2 {
  font-size: 3rem;
  color: #181f13;
  font-weight: 800;
  margin: 0 0 4px 0;
  letter-spacing: 1.3px;
}

.pricing-clean-table {
  max-width: 1500px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.pricing-clean-row {
  display: flex;
  align-items: stretch;
  background: #f4faf2;
  border-radius: 12px;
  border: none;
  box-shadow: none;
  padding: 36px 0 36px 0;
  box-sizing: border-box;
  transition: background 0.15s;
  border: 1.5px solid #eef7e3;
}
.pricing-clean-row.featured {
  background: linear-gradient(90deg,#b7f46925 65%,#f4faf2 100%);
  border: 2.2px solid #b7f469;
}
.pricing-clean-col {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 32px;
}
.col-title {
  min-width: 230px;
  align-items: flex-start;
  justify-content: center;
  border-right: 1.2px solid #e6eedd;
}
.plan-title {
  font-size: 1.38rem;
  font-weight: 700;
  color: #181f13;
  margin-bottom: 10px;
}
.plan-price {
  font-size: 2.7rem;
  font-weight: 800;
  color: #111;
}
.plan-price .per-unit {
  font-size: 1.05rem;
  color: #516927;
  margin-left: 8px;
  font-weight: 400;
}
.col-features {
  flex: 2;
  min-width: 240px;
  list-style: none;
  margin: 0;
  padding: 0 36px;
  font-size: 1.14rem;
  color: #222;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  gap: 13px;
  justify-content: center;
  border-right: 1.2px solid #e6eedd;
}
.col-features i {
  color: #5dbd19;
  font-size: 1.06em;
  margin-right: 11px;
}
.col-btn {
  min-width: 210px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.get-plan-btn {
  background: #b7f469;
  color: #222;
  border-radius: 25px;
  font-size: 1.09rem;
  font-weight: 700;
  padding: 13px 28px 13px 26px;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  border: none;
  gap: 12px;
  transition: background 0.14s, color 0.14s, transform 0.13s;
  letter-spacing: 0.01em;
  outline: none;
  position: relative;
  box-shadow: none;
}
.get-plan-btn .arrow {
  background: #181f13;
  color: #b7f469;
  border-radius: 50%;
  padding: 7px 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
  margin-left: 8px;
  transition: background 0.13s, color 0.13s, transform 0.13s;
}
.get-plan-btn:hover {
  background: #8dbe30;
  color: #fff;
  transform: translateY(-2px) scale(1.04);
}
.get-plan-btn:hover .arrow {
  background: #fff;
  color: #8dbe30;
  transform: scale(1.10) rotate(22deg);
}
.get-plan-btn.featured {
  background: #181f13;
  color: #fff;
  font-weight: 700;
}
.get-plan-btn.featured .arrow {
  background: #b7f469;
  color: #222;
}
.get-plan-btn.featured:hover {
  background: #b7f469;
  color: #222;
}
.get-plan-btn.featured:hover .arrow {
  background: #222;
  color: #b7f469;
}

@media (max-width: 1050px) {
  .pricing-clean-row, .pricing-clean-table { flex-direction: column; }
  .pricing-clean-row { padding: 18px 0; }
  .col-title, .col-features, .col-btn {
    padding: 18px 18px;
    border: none;
    min-width: 0;
    align-items: center;
    text-align: center;
  }
  .col-title { border-bottom: 1.2px solid #e6eedd; }
  .col-features { border-bottom: 1.2px solid #e6eedd; }
}
@media (max-width: 600px) {
  .pricing-clean-header h2 { font-size: 2rem; }
  .plan-title { font-size: 1.02rem; }
  .plan-price { font-size: 1.42rem; }
  .col-features { font-size: 1rem; padding: 12px 4px; }
  .col-title, .col-btn { padding: 11px 2vw; }
}
.solar-products-section {
  background: #fff;
  padding: 65px 0 70px 0;
}
.solar-products-header {
  text-align: center;
  margin-bottom: 24px;
  font-family: 'Poppins', Arial, sans-serif;
}
.solar-products-header span {
  color: #232d20;
  font-size: 1.1rem;
  letter-spacing: 0.11em;
  opacity: 0.7;
  display: block;
  margin-bottom: 7px;
}
.solar-products-header h2 {
  font-size: 2.7rem;
  color: #181f13;
  font-weight: 800;
  margin: 0;
  letter-spacing: 1.1px;
}
.solar-products-carousel {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1650px;
  margin: 0 auto;
  gap: 12px;
}
.solar-products-list {
  display: flex;
  gap: 36px;
  overflow-x: auto;
  scroll-behavior: smooth;
  padding: 0 42px;
  scrollbar-width: none;       /* Firefox */
  -ms-overflow-style: none;    /* IE 10+ */
}
.solar-products-list::-webkit-scrollbar {
  display: none;               /* Chrome/Safari/Opera */
}
.solar-product-card {
  background: #f5fbf5;
  border-radius: 20px;
  padding: 24px 24px 22px 24px;
  min-width: 320px;
  max-width: 340px;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: transform 0.16s;
  position: relative;
}
.solar-product-card:hover {
  transform: translateY(-9px) scale(1.03);
  background: #f2fae8;
}
.product-labels {
  display: flex;
  gap: 9px;
  position: absolute;
  left: 14px;
  top: 14px;
  z-index: 2;
  flex-direction: column;
  align-items: flex-start;
}
.label {
  display: inline-block;
  font-size: 0.96rem;
  font-weight: 700;
  padding: 3px 13px 2px 13px;
  border-radius: 6px;
  color: #fff;
  background: #222;
  margin-bottom: 3px;
}
.label.sale {
  background: #be3232;
}
.label.sale.green {
  background: #b7f469;
  color: #232d20;
}
.label.new {
  background: #000;
}
.solar-product-card img {
  width: 170px;
  height: 170px;
  object-fit: contain;
  margin: 40px 0 18px 0;
  background: none;
}
.product-title {
  font-size: 1.22rem;
  font-weight: 700;
  color: #232d20;
  margin: 15px 0 7px 0;
  text-align: center;
}
.product-prices {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 1.1rem;
  margin-bottom: 12px;
}
.old-price {
  color: #9ea89c;
  text-decoration: line-through;
  font-size: 1.01rem;
  font-weight: 500;
}
.new-price {
  color: #232d20;
  font-weight: 700;
  font-size: 1.09rem;
}
.product-stars {
  display: flex;
  gap: 2px;
  margin: 0 auto;
}
.product-stars i {
  color: #ffb12b;
  font-size: 1.09rem;
}
.carousel-arrow {
  background: #111;
  color: #fff;
  border: none;
  outline: none;
  border-radius: 50%;
  font-size: 2.2rem;
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 2;
  transition: background 0.16s, color 0.14s;
}
.carousel-arrow:hover {
  background: #b7f469;
  color: #222;
}
.carousel-arrow.left { margin-right: 0;}
.carousel-arrow.right { margin-left: 0;}
@media (max-width: 1350px) {
  .solar-products-list {
    gap: 22px;
    padding: 0 10px;
  }
  .solar-product-card { min-width: 260px; max-width: 270px; }
}
@media (max-width: 900px) {
  .solar-products-list {
    gap: 10px;
    padding: 0 2px;
  }
  .solar-product-card { min-width: 170px; max-width: 190px; padding: 15px 5px;}
  .solar-product-card img { width: 80px; height: 80px; }
  .product-title { font-size: 0.97rem;}
}
@media (max-width: 600px) {
  .solar-products-header h2 { font-size: 1.2rem;}
  .solar-product-card { min-width: 160px; max-width: 160px;}
  .solar-product-card img { width: 66px; height: 66px;}
}
.product-category-section {
  background: #fafefb;
  padding: 64px 0 68px 0;
  font-family: 'Poppins', Arial, sans-serif;
}
.category-header {
  text-align: center;
  margin-bottom: 36px;
}
.category-header span {
  color: #b7f469;
  font-size: 1rem;
  letter-spacing: 0.13em;
  opacity: 0.85;
  display: block;
  margin-bottom: 7px;
}
.category-header h2 {
  font-size: 2.1rem;
  font-weight: 800;
  color: #181f13;
  margin-bottom: 10px;
  letter-spacing: 1px;
}
.category-header p {
  color: #4d573a;
  font-size: 1.04rem;
  margin: 0 auto;
  max-width: 550px;
  opacity: 0.85;
}
.category-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 30px;
  max-width: 1160px;
  margin: 0 auto;
}
.category-card {
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 2px 18px #d7efd35c;
  padding: 38px 0 30px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: transform 0.17s, box-shadow 0.15s, background 0.14s;
  cursor: pointer;
  border: 1.5px solid #e6eed6;
}
.category-card:hover {
  background: #f4fbee;
  box-shadow: 0 6px 32px #b7f4693a;
  border-color: #b7f469;
  transform: translateY(-7px) scale(1.03);
}
.category-icon {
  font-size: 2.7rem;
  color: #b7f469;
  margin-bottom: 14px;
  transition: color 0.13s;
}
.category-card:hover .category-icon {
  color: #7bb32a;
}
.category-name {
  font-size: 1.14rem;
  color: #232d20;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media (max-width: 700px) {
  .category-header h2 { font-size: 1.19rem;}
  .category-card { padding: 23px 0 18px 0; border-radius: 14px;}
  .category-icon { font-size: 2rem;}
  .category-name { font-size: 1.02rem;}
  .category-header p { font-size: 0.93rem;}
}

.reviews-reels-section {
  background: #f9fcf6;
  padding: 66px 0 74px 0;
  font-family: 'Poppins', Arial, sans-serif;
  border-top: 1px solid #e8f3df;
}
.reviews-reels-header {
  text-align: center;
  margin-bottom: 34px;
}
.reviews-reels-header span {
  color: #6dc632;
  font-size: 1.02rem;
  letter-spacing: 0.12em;
  font-weight: 600;
  display: block;
  margin-bottom: 5px;
}
.reviews-reels-header h2 {
  font-size: 2rem;
  color: #191f15;
  font-weight: 800;
  margin-bottom: 10px;
}
.reviews-reels-header p {
  color: #516443;
  font-size: 1.01rem;
  margin: 0 auto;
  max-width: 420px;
  opacity: 0.85;
}
.reviews-reels-slider {
  display: flex;
  gap: 28px;
  overflow-x: auto;
  scroll-behavior: smooth;
  padding: 0 26px 10px 26px;
  max-width: 1180px;
  margin: 0 auto 8px auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.reviews-reels-slider::-webkit-scrollbar { display: none; }
.reviews-reel-card {
  background: #fff;
  border-radius: 24px;
  border: 1.5px solid #e3f6df;
  min-width: 315px;
  max-width: 340px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  transition: border-color 0.16s, transform 0.14s;
  margin-bottom: 2px;
  position: relative;
  box-shadow: 0 0.5px 8px #d4efd51c;
}
.reviews-reel-card:hover {
  border-color: #6dc632;
  transform: translateY(-7px) scale(1.025);
}
.reel-video {
  width: 100%;
  height: 390px;
  background: #f5fff2;
  border-radius: 20px 20px 0 0;
  overflow: hidden;
  border-bottom: 1px solid #e3f6df;
  display: flex;
  align-items: center;
  justify-content: center;
}
.reel-video iframe {
  width: 100%;
  height: 100%;
  min-height: 260px;
  max-height: 100%;
  aspect-ratio: 9/16;
  background: #000;
  border: none;
  border-radius: 16px;
}
.reel-meta {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 20px 22px 17px 22px;
  border-radius: 0 0 24px 24px;
  background: #fff;
}
.reel-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #f7faf6;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #b7f469;
  flex-shrink: 0;
  overflow: hidden;
}
.reel-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.reel-name {
  color: #222c16;
  font-size: 1.09rem;
  font-weight: 700;
  margin-bottom: 2px;
  letter-spacing: 0.02em;
}
.reel-quote {
  color: #5e6851;
  font-size: 0.98rem;
  font-weight: 500;
  opacity: 0.87;
  line-height: 1.3;
}
.reviews-reels-controls {
  text-align: center;
  margin-top: 13px;
}
.reviews-reels-controls button {
  background: #6dc632;
  color: #fff;
  border: none;
  border-radius: 50%;
  width: 39px;
  height: 39px;
  font-size: 1.13rem;
  margin: 0 8px;
  cursor: pointer;
  transition: background 0.12s, color 0.11s, transform 0.11s;
  outline: none;
  border: 1.3px solid #e3f6df;
}
.reviews-reels-controls button:hover {
  background: #222c16;
  color: #6dc632;
  border-color: #6dc632;
  transform: scale(1.14);
}
@media (max-width: 900px) {
  .reviews-reels-slider { gap: 10px; padding: 0 3vw;}
  .reviews-reel-card { min-width: 200px; max-width: 210px;}
  .reel-video { height: 160px;}
  .reel-avatar { width: 33px; height: 33px;}
  .reviews-reels-header h2 { font-size: 1.07rem;}
}
@media (max-width: 600px) {
  .reel-meta { padding: 10px 6px;}
  .reel-video { height: 67vw; min-height: 110px;}
}

.cta-banner {
  width: 100vw;
  background: linear-gradient(90deg, #b7f469 55%, #6dc632 100%);
  padding: 54px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 70px 0 0 0;
  font-family: 'Poppins', Arial, sans-serif;
}
.cta-banner-inner {
  width: 100%;
  max-width: 1050px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 38px;
  flex-wrap: wrap;
  padding: 0 6vw;
}
.cta-banner-content h2 {
  font-size: 2.2rem;
  font-weight: 800;
  color: #253311;
  margin-bottom: 11px;
  line-height: 1.18;
  letter-spacing: 0.01em;
}
.cta-banner-content .cta-highlight {
  color: #fff;
  background: #6dc632;
  border-radius: 8px;
  padding: 4px 12px 2px 12px;
  margin-left: 5px;
  font-size: 2.18rem;
  font-weight: 900;
  display: inline-block;
  box-shadow: 0 2px 10px #86d84c44;
}
.cta-banner-content p {
  color: #314018;
  font-size: 1.18rem;
  font-weight: 500;
  opacity: 0.85;
  margin: 0;
}
.cta-banner-btn {
  background: #222c16;
  color: #fff;
  border-radius: 30px;
  font-size: 1.18rem;
  font-weight: 700;
  padding: 18px 44px 16px 33px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  border: none;
  outline: none;
  box-shadow: 0 2px 16px #25331132;
  transition: background 0.15s, color 0.15s, transform 0.12s;
  margin-top: 15px;
  letter-spacing: 0.02em;
}
.cta-banner-btn i {
  font-size: 1.13rem;
  background: #b7f469;
  color: #222c16;
  border-radius: 50%;
  padding: 7px 11px;
  margin-left: 8px;
  transition: background 0.13s, color 0.13s, transform 0.13s;
}
.cta-banner-btn:hover, .cta-banner-btn:focus {
  background: #314018;
  color: #b7f469;
  transform: translateY(-3px) scale(1.05);
}
.cta-banner-btn:hover i, .cta-banner-btn:focus i {
  background: #222c16;
  color: #b7f469;
  transform: scale(1.08) rotate(19deg);
}
@media (max-width: 900px) {
  .cta-banner-inner {
    flex-direction: column;
    gap: 25px;
    text-align: center;
    padding: 0 4vw;
  }
  .cta-banner-content h2 { font-size: 1.3rem; }
  .cta-banner-content .cta-highlight { font-size: 1.3rem; }
  .cta-banner-btn { font-size: 1rem; padding: 13px 25px 13px 17px;}
}

.solar-process-inline {
  background: #fcfefd;
  padding: 66px 0 40px 0;
  font-family: 'Poppins', Arial, sans-serif;
}
.solar-process-inline-header {
  text-align: center;
  margin-bottom: 30px;
}
.solar-process-inline-header span {
  color: #6dc632;
  font-size: 1.03rem;
  letter-spacing: 0.11em;
  font-weight: 600;
  display: block;
  margin-bottom: 5px;
}
.solar-process-inline-header h2 {
  font-size: 2rem;
  color: #191f15;
  font-weight: 800;
  margin-bottom: 0;
}
.solar-process-inline-row {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 0;
  flex-wrap: wrap;
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}
.solar-process-inline-step {
  background: #fff;
  border-radius: 18px;
  border: 1.5px solid #e5f4e2;
  padding: 28px 24px 20px 24px;
  margin: 0 0 0 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 170px;
  max-width: 200px;
  box-shadow: 0 1px 12px #e7fae429;
  transition: border-color 0.15s, transform 0.15s;
  position: relative;
}
.solar-process-inline-step:hover {
  border-color: #b7f469;
  transform: translateY(-5px) scale(1.045);
  z-index: 2;
}
.step-icon {
  background: #b7f469;
  color: #222c16;
  border-radius: 50%;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.53rem;
  margin-bottom: 12px;
  box-shadow: 0 2px 7px #b7f46924;
  border: 2px solid #fff;
  transition: background 0.13s, color 0.13s;
}
.solar-process-inline-step:hover .step-icon {
  background: #6dc632;
  color: #fff;
}
.step-title {
  font-size: 1.06rem;
  font-weight: 700;
  color: #191f15;
  margin-bottom: 4px;
  text-align: center;
}
.step-desc {
  font-size: 0.97rem;
  color: #566c52;
  text-align: center;
  opacity: 0.95;
}
.step-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 5px;
  font-size: 2rem;
  color: #b7f469;
  height: 100%;
  transition: color 0.13s;
}
.solar-process-inline-step:hover ~ .step-arrow,
.step-arrow:hover {
  color: #6dc632;
}
@media (max-width: 1000px) {
  .solar-process-inline-row {
    flex-wrap: wrap;
    gap: 13px;
  }
  .solar-process-inline-step { min-width: 140px; max-width: 160px; padding: 15px 7px 14px 7px;}
  .step-arrow { font-size: 1.6rem;}
}
@media (max-width: 650px) {
  .solar-process-inline-header h2 { font-size: 1.1rem;}
  .solar-process-inline-row {
    flex-direction: column;
    align-items: center;
    gap: 0;
  }
  .step-arrow { transform: rotate(90deg); margin: 0;}
}

.partners-simple-section {
  background: #fcfefd;
  padding: 56px 0 36px 0;
  font-family: 'Poppins', Arial, sans-serif;
}
.partners-simple-header {
  text-align: center;
  margin-bottom: 28px;
}
.partners-simple-header span {
  color: #6dc632;
  font-size: 1.04rem;
  letter-spacing: 0.11em;
  font-weight: 600;
  display: block;
  margin-bottom: 5px;
}
.partners-simple-header h2 {
  font-size: 2rem;
  color: #232d20;
  font-weight: 800;
  margin: 0;
}
.partners-simple-logos {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-end;
  gap: 42px 64px;
  margin-top: 8px;
  padding: 0 8vw;
}
.partner-simple-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  min-width: 105px;
  max-width: 145px;
  opacity: 0.94;
  transition: transform 0.14s, opacity 0.13s;
  cursor: pointer;
}
.partner-simple-item:hover {
  transform: translateY(-7px) scale(1.08);
  opacity: 1;
}
.partner-round-img {
  width: 88px;
  height: 88px;
  background: linear-gradient(120deg,#d4f6b1 30%,#b7f469 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 1px 18px #a7e48822;
  border: 3px solid #e8f7e4;
  transition: box-shadow 0.16s, border-color 0.13s, background 0.13s;
  overflow: hidden;
  position: relative;
}
.partner-simple-item:hover .partner-round-img {
  border-color: #b7f469;
  background: linear-gradient(120deg,#b7f469 70%,#d4f6b1 100%);
  box-shadow: 0 8px 26px #b7f46933;
}
.partner-round-img img {
  width: 68px;
  height: 68px;
  object-fit: cover;
  border-radius: 50%;
  filter: grayscale(0.12) brightness(1);
  transition: filter 0.16s;
  background: #fff;
}
.partner-simple-item:hover .partner-round-img img {
  filter: grayscale(0) brightness(1.13) drop-shadow(0 2px 10px #b7f46925);
}
.partner-simple-name {
  color: #232d20;
  font-size: 1.05rem;
  text-align: center;
  font-weight: 600;
  opacity: 0.85;
  letter-spacing: 0.01em;
  margin-top: 4px;
}
@media (max-width: 900px) {
  .partners-simple-logos { gap: 25px 22px; padding: 0 2vw;}
  .partner-round-img { width: 60px; height: 60px;}
  .partner-round-img img { width: 44px; height: 44px;}
}
@media (max-width: 600px) {
  .partners-simple-header h2 { font-size: 1.13rem;}
  .partners-simple-logos { gap: 11px 6px;}
  .partner-round-img { width: 44px; height: 44px;}
  .partner-round-img img { width: 30px; height: 30px;}
  .partner-simple-name { font-size: 0.92rem;}
}

.why-choose-trendy {
  background: linear-gradient(120deg, #eefaf0 65%, #d3f9af 100%);
  padding: 72px 0 60px 0;
  font-family: 'Poppins', Arial, sans-serif;
  position: relative;
  z-index: 1;
}
.why-choose-trendy-header {
  text-align: center;
  margin-bottom: 36px;
  z-index: 2;
  position: relative;
}
.why-choose-trendy-header span {
  color: #77c31a;
  font-size: 1rem;
  letter-spacing: 0.14em;
  font-weight: 600;
  display: block;
  margin-bottom: 6px;
  text-transform: uppercase;
  opacity: 0.84;
}
.why-choose-trendy-header h2 {
  font-size: 2.25rem;
  color: #171f0f;
  font-weight: 800;
  margin: 0;
  letter-spacing: 0.04em;
}
.why-choose-trendy-list {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 40px;
  flex-wrap: wrap;
  max-width: 1200px;
  margin: 0 auto;
  z-index: 2;
  position: relative;
}
.why-choose-trendy-item {
  background: rgba(255,255,255,0.84);
  border-radius: 22px;
  box-shadow: 0 10px 34px #b7f46933, 0 1px 3px #7ed95711;
  padding: 42px 28px 34px 28px;
  min-width: 250px;
  max-width: 265px;
  flex: 1 1 220px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  border: 1.7px solid #d9efbd;
  overflow: hidden;
  transition: box-shadow 0.17s, border 0.15s, transform 0.15s;
  cursor: pointer;
}
.why-choose-trendy-item:before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 5px;
  background: linear-gradient(90deg,#b7f469 0%, #7ed957 100%);
  border-radius: 0 0 10px 10px;
  opacity: 0.7;
  z-index: 1;
}
.why-choose-trendy-item:hover {
  box-shadow: 0 14px 38px #b7f46944, 0 1px 14px #d3f9af33;
  border-color: #8ed957;
  transform: translateY(-10px) scale(1.04);
}
.trendy-icon {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: linear-gradient(135deg,#b7f469 40%,#77c31a 100%);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.45rem;
  box-shadow: 0 4px 22px #a3e8833a;
  margin-bottom: 18px;
  z-index: 2;
  border: 2.5px solid #fff;
  transition: background 0.13s, color 0.13s, box-shadow 0.14s;
}
.why-choose-trendy-item:hover .trendy-icon {
  background: linear-gradient(135deg,#77c31a 30%,#b7f469 100%);
  color: #232d20;
  box-shadow: 0 7px 24px #b7f46955;
}
.trendy-title {
  color: #171f0f;
  font-size: 1.22rem;
  font-weight: 700;
  margin-bottom: 7px;
  text-align: center;
  letter-spacing: 0.01em;
  z-index: 2;
}
.trendy-desc {
  color: #5a7824;
  font-size: 1.04rem;
  text-align: center;
  opacity: 0.96;
  font-weight: 500;
  z-index: 2;
}
@media (max-width: 1100px) {
  .why-choose-trendy-list { gap: 20px 7px;}
  .why-choose-trendy-item { min-width: 170px; max-width: 200px; padding: 20px 7px;}
  .trendy-icon { width: 46px; height: 46px; font-size: 1.19rem;}
}
@media (max-width: 600px) {
  .why-choose-trendy-list {
    flex-direction: column;
    align-items: center;
    gap: 16px;
  }
  .why-choose-trendy-header h2 { font-size: 1rem;}
}

.blog-knowledge-section {
  background: #fcfefd;
  padding: 65px 0 70px 0;
  font-family: 'Poppins', Arial, sans-serif;
}
.blog-knowledge-header {
  text-align: center;
  margin-bottom: 28px;
}
.blog-knowledge-header span {
  color: #8ec53c;
  font-size: 1.08rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  display: block;
  margin-bottom: 6px;
  opacity: 0.8;
}
.blog-knowledge-header h2 {
  font-size: 2rem;
  font-weight: 800;
  margin: 0 0 6px 0;
  color: #202a13;
}
.blog-knowledge-header p {
  color: #6e9331;
  opacity: 0.92;
  margin: 0;
}
.blog-knowledge-list {
  display: flex;
  gap: 32px;
  max-width: 1200px;
  margin: 0 auto;
  flex-wrap: wrap;
  justify-content: center;
}
.blog-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 6px 26px #b7f46919;
  transition: box-shadow 0.15s, transform 0.15s;
  width: 340px;
  display: flex;
  flex-direction: column;
  border: 1.3px solid #e9f4d5;
}
.blog-card:hover {
  box-shadow: 0 14px 38px #b7f46934;
  transform: translateY(-7px) scale(1.04);
  border-color: #b7f469;
}
.blog-card img {
  width: 100%;
  height: 170px;
  object-fit: cover;
  border-bottom: 1.5px solid #e4f1cc;
}
.blog-card-content {
  padding: 22px 22px 14px 22px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.blog-tag {
  background: #e9f7cc;
  color: #82b327;
  font-size: 0.85rem;
  font-weight: 700;
  border-radius: 11px;
  padding: 3px 12px 3px 12px;
  margin-bottom: 3px;
  display: inline-block;
  letter-spacing: 0.03em;
}
.blog-card-content h3 {
  font-size: 1.16rem;
  margin: 0 0 0 0;
  color: #131e0d;
  font-weight: 700;
  line-height: 1.3;
}
.blog-card-content h3 a {
  color: inherit;
  text-decoration: none;
  transition: color 0.12s;
}
.blog-card-content h3 a:hover {
  color: #b7f469;
}
.blog-card-content p {
  color: #5a7824;
  font-size: 1.01rem;
  margin: 2px 0 0 0;
  opacity: 0.92;
  min-height: 48px;
}
.blog-read-link {
  color: #8ec53c;
  font-weight: 600;
  text-decoration: none;
  font-size: 1.01rem;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 6px;
  transition: color 0.15s;
}
.blog-read-link i {
  font-size: 1.13rem;
  margin-left: 2px;
}
.blog-read-link:hover {
  color: #181f13;
}
@media (max-width: 1100px) {
  .blog-knowledge-list { gap: 18px;}
  .blog-card { width: 99vw; max-width: 350px;}
}
@media (max-width: 600px) {
  .blog-card { width: 97vw; }
  .blog-knowledge-header h2 { font-size: 1.08rem;}
}
.contactus-modern-section {
  background: #fcfefd;
  padding: 72px 0 78px 0;
  font-family: 'Poppins', Arial, sans-serif;
}
.contactus-modern-container {
  display: flex;
  align-items: stretch;
  gap: 54px;
  max-width: 1250px;
  margin: 0 auto;
  background: #fff;
  border-radius: 30px;
  box-shadow: 0 6px 36px #e3edda45;
  overflow: hidden;
  padding: 0;
}
.contactus-modern-content {
  flex: 1 1 55%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 44px 46px 44px 46px;
}
.contactus-modern-label {
  color: #8ec53c;
  font-size: 1.08rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  margin-bottom: 8px;
  opacity: 0.88;
}
.contactus-modern-content h2 {
  font-size: 2rem;
  color: #181f13;
  font-weight: 800;
  margin: 0 0 7px 0;
}
.contactus-modern-content p {
  color: #65823e;
  margin-bottom: 22px;
  font-size: 1.04rem;
  opacity: 0.93;
}
.contactus-modern-form {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.contactus-modern-row {
  display: flex;
  gap: 13px;
}
.contactus-modern-form input,
.contactus-modern-form select,
.contactus-modern-form textarea {
  font-size: 1.06rem;
  padding: 13px 19px;
  border-radius: 18px;
  border: 1.6px solid #e3eec7;
  outline: none;
  background: #fcfefd;
  color: #232d20;
  font-weight: 500;
  transition: border 0.16s, box-shadow 0.13s;
  margin-bottom: 0;
  font-family: inherit;
}
.contactus-modern-form input:focus,
.contactus-modern-form select:focus,
.contactus-modern-form textarea:focus {
  border: 1.5px solid #8ec53c;
  background: #f6faed;
  box-shadow: 0 2px 8px #d7f4a054;
}
.contactus-modern-form textarea {
  resize: vertical;
  min-height: 70px;
}
.contactus-modern-form button {
  background: #8ec53c;
  color: #fff;
  font-size: 1.16rem;
  font-weight: 700;
  border: none;
  border-radius: 30px;
  padding: 14px 36px 14px 25px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  transition: background 0.14s, color 0.13s, transform 0.13s;
  margin-top: 8px;
  align-self: flex-start;
}
.contactus-modern-form button i {
  background: #fff;
  color: #8ec53c;
  font-size: 1.13rem;
  border-radius: 50%;
  padding: 7px 10px;
  margin-left: 7px;
  transition: background 0.14s, color 0.14s;
}
.contactus-modern-form button:hover, .contactus-modern-form button:focus {
  background: #232d20;
  color: #b7f469;
}
.contactus-modern-form button:hover i, .contactus-modern-form button:focus i {
  background: #b7f469;
  color: #232d20;
}
.contactus-modern-img {
  flex: 1 1 45%;
  display: flex;
  align-items: stretch;
  justify-content: center;
  overflow: hidden;
  min-width: 200px;
  background: #fcfefd;
}
.contactus-modern-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  min-height: 340px;
}
@media (max-width: 950px) {
  .contactus-modern-container { flex-direction: column; gap: 0;}
  .contactus-modern-content { padding: 32px 7vw;}
  .contactus-modern-img { min-height: 180px;}
}
@media (max-width: 650px) {
  .contactus-modern-content h2 { font-size: 1.15rem;}
  .contactus-modern-label { font-size: 0.98rem;}
  .contactus-modern-content p { font-size: 0.95rem;}
  .contactus-modern-content { padding: 19px 2vw;}
}

/* FAQ Section Styles */
.faq-section {
  background: #fcfefd;
  padding: 68px 0 50px 0;
  font-family: 'Poppins', Arial, sans-serif;
}
.faq-header {
  text-align: center;
  margin-bottom: 32px;
}
.faq-header span {
  color: #6dc632;
  font-size: 1.03rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  display: block;
  margin-bottom: 7px;
  opacity: 0.82;
}
.faq-header h2 {
  font-size: 2rem;
  color: #181f13;
  font-weight: 800;
  margin: 0 0 8px 0;
}
.faq-header p {
  color: #4d573a;
  font-size: 1.03rem;
  opacity: 0.85;
}
.faq-list {
  max-width: 700px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.faq-item {
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 3px 20px #b7f46917;
  border: 1.5px solid #e5f7df;
  overflow: hidden;
}
.faq-question {
  background: none;
  border: none;
  width: 100%;
  text-align: left;
  font-size: 1.14rem;
  font-weight: 700;
  color: #232d20;
  padding: 22px 32px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: background 0.11s;
  outline: none;
}
.faq-question:hover, .faq-item.open .faq-question {
  background: #f4fbee;
}
.faq-answer {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  font-size: 1.03rem;
  color: #65823e;
  padding: 0 32px;
  transition: all 0.23s cubic-bezier(.49,1.41,.53,1.25);
}
.faq-item.open .faq-answer {
  padding: 12px 32px 22px 32px;
  max-height: 250px;
  opacity: 1;
}
.faq-question i {
  margin-left: 18px;
  font-size: 1.02em;
  color: #b7f469;
  transition: transform 0.17s;
}
.faq-item.open .faq-question i {
  transform: rotate(180deg);
}
@media (max-width:600px) {
  .faq-header h2 { font-size: 1.08rem; }
  .faq-header p { font-size: 0.97rem; }
  .faq-question, .faq-answer { padding-left: 11px; padding-right: 11px; font-size: 0.97rem; }
}
body { background: #f9fbf7; font-family: 'Poppins', Arial, sans-serif; margin:0; }
a { text-decoration:none; }
:root {
  --green: #6dc632;
  --dark: #222c16;
  --brand: #b7f469;
  --muted: #f9fbf7;
}
.container { max-width:1200px; margin:0 auto; padding:0 20px; }
/* HERO BANNER */
.shop-hero-section {
  background: linear-gradient(120deg, #e9ffd7 40%, #b7f469 100%);
  padding: 80px 0 60px 0;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.shop-hero-content {
  max-width: 950px; margin: 0 auto; position: relative; z-index: 2;
}
.shop-hero-content h1 {
  font-size: 3.1rem; font-weight: 900; color: #222c16; margin-bottom: 16px; letter-spacing: 1.5px;
}
.shop-hero-content p { color: #3a5418; font-size: 1.25rem; margin-bottom: 36px; opacity: 0.92; }
.shop-hero-searchbar {
  width: 100%; max-width: 540px; margin: 0 auto 28px auto;
  display: flex; align-items: center; box-shadow: 0 4px 24px #b7f4692c;
  background: #fff; border-radius: 50px; overflow: hidden;
  border: 2.2px solid #b7f469;
  transition: box-shadow .14s, border .14s;
}
.shop-hero-searchbar input[type="text"] {
  flex: 1; padding: 20px 28px; border: none; outline: none;
  font-size: 1.23rem; background: none;
  color: #273619; font-weight: 500;
}
.shop-hero-searchbar button {
  background: #222c16; color: #fff; border: none;
  padding: 0 38px; font-size: 3.30rem; height: 100%; cursor: pointer;
  border-radius: 0 50px 50px 0;
  font-weight: 700; letter-spacing: .03em;
  transition: background .16s, color .16s;
}
.shop-hero-searchbar button:hover { background: #6dc632; color: #fff; }
.shop-hero-btn {
  display: inline-block; background: #6dc632; color: #fff;
  padding: 18px 48px; border-radius: 44px; font-size: 1.23rem; font-weight: 700;
  text-decoration: none; margin-top: 18px; transition: background .15s, color .14s, transform .11s;
}
.shop-hero-btn:hover { background: #222c16; color: #b7f469; transform: scale(1.04);}
@media (max-width: 650px) {
  .shop-hero-content h1 { font-size: 1.45rem;}
  .shop-hero-searchbar input { font-size: 1.01rem;}
  .shop-hero-btn { font-size: .95rem; padding: 12px 18px;}
}
/* TRUST BAR */
.trust-bar {
  background: #fff; border-radius: 14px; box-shadow: 0 4px 18px #b7f46919;
  margin: -32px auto 48px; padding: 26px 10px; display: flex; justify-content: center; gap:48px; max-width: 1000px; position: relative; z-index: 5;
}
.trust-bar-item {
  display: flex; align-items: center; gap: 13px;
  color: #365219; font-size: 1.09rem; font-weight: 600;
}
.trust-bar-item i { color: #6dc632; font-size: 1.5em;}
@media (max-width: 800px) { .trust-bar { flex-direction:column; gap:15px;} }
/* BRANDS CAROUSEL */
.brands-section { background:#fcfefd; padding:40px 0 24px; }
.brand-logos { display:flex; gap:44px; overflow-x:auto; justify-content:center; align-items:center; }
.brand-logos img { height:50px; filter: grayscale(0.85) brightness(1.12); opacity:0.8; transition:filter 0.2s; }
.brand-logos img:hover { filter:grayscale(0) brightness(1.18); opacity:1; }
@media (max-width:700px){ .brand-logos{gap:18px;} .brands-section{padding:20px 0 12px;} }
/* HOW IT WORKS */
.how-works-section { background:var(--muted); padding: 58px 0 40px; }
.how-works-steps { display:flex; gap:44px; justify-content:center; align-items:flex-start; max-width:950px; margin:0 auto; }
.how-works-step {
  background:#fff; border-radius:22px; box-shadow:0 4px 14px #b7f46919;
  padding:28px 28px 22px; text-align:center; flex:1;
}
.how-works-step i { color:var(--green); font-size:2.2em; margin-bottom:10px;}
.how-works-step h4 { margin:10px 0 8px; color:var(--dark); font-weight:800;}
.how-works-step p { color:#64812b; font-size:1.08rem;}
@media(max-width:900px){.how-works-steps{flex-direction:column; gap:19px;}}
/* CATEGORIES SECTION */
.shop-categories-section { background: #fcfefd; padding: 75px 0 52px 0;}
.shop-categories-header {
  text-align: center; margin-bottom: 38px;
}
.shop-categories-header h2 {
  font-size: 2.3rem; font-weight: 900; color: #253311; margin-bottom: 7px;
}
.shop-categories-header p {
  color: #5a7824; opacity: .85; font-size: 1.13rem;
}
.shop-categories-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(195px, 1fr));
  gap: 48px 44px; max-width: 1240px; margin: 0 auto;
}
.shop-category-card {
  background: #fff; border-radius: 30px; box-shadow: 0 8px 34px #b7f46915;
  padding: 40px 12px 25px 12px; text-align: center; display: flex; flex-direction: column; align-items: center;
  transition: box-shadow .17s, transform .14s, border .13s; text-decoration: none; border: 2.2px solid #e6eed6; cursor: pointer; position: relative;
}
.shop-category-card:hover {
  box-shadow: 0 16px 56px #b7f4692d; border-color: #b7f469; transform: translateY(-7px) scale(1.045); z-index: 2;
}
.shop-category-img {
  width: 102px; height: 102px; border-radius: 50%; background: linear-gradient(120deg,#d4f6b1 30%,#b7f469 100%);
  margin-bottom: 19px; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 18px #b7f46921; border: 3px solid #fff; overflow: hidden;
}
.shop-category-img img {
  width: 76px; height: 76px; object-fit: contain; border-radius: 50%; filter: grayscale(.07) brightness(1.08); transition: filter .13s;
}
.shop-category-card:hover .shop-category-img img {
  filter: grayscale(0) brightness(1.16) drop-shadow(0 4px 12px #b7f46933);
}
.shop-category-label {
  font-size: 1.19rem; color: #232d20; font-weight: 700; letter-spacing: .03em; margin-top: 4px;
}
@media (max-width: 900px) {
  .shop-categories-grid { gap: 19px 6px;}
  .shop-categories-header h2 { font-size: 1.15rem;}
  .shop-category-img { width: 64px; height: 64px;}
  .shop-category-img img { width: 44px; height: 44px;}
}
/* PRODUCTS SECTION */
.shop-products-section { background: #fff; padding: 80px 0 60px 0;}
.shop-products-header {
  text-align: center; margin-bottom: 40px;
}
.shop-products-header h2 {
  font-size: 2.7rem; color: #253311; font-weight: 900; letter-spacing: .7px;
}
.shop-products-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(340px,1fr)); gap: 45px; max-width: 1420px; margin: 0 auto;
}
.shop-product-card {
  background: #f9fbf7; border-radius: 30px; padding: 38px 20px 26px 20px;
  border: 2.5px solid #e6eed6; display: flex; flex-direction: column; align-items: center;
  box-shadow: 0 4px 28px #b7f46919; position: relative; min-height: 530px;
  transition: box-shadow .18s, border .13s, transform .13s; cursor: pointer;
}
.shop-product-card:hover {
  border-color: #b7f469; background: #f2ffe8;
  transform: translateY(-10px) scale(1.018); box-shadow: 0 18px 46px #b7f46928;
}
.shop-product-img-wrap {
  width: 280px; height: 280px; background: #fff; border-radius: 18px;
  display: flex; align-items: center; justify-content: center;
  overflow: hidden; box-shadow: 0 2px 18px #b7f46914; margin-bottom: 22px;
}
.shop-product-img-wrap img {
  width: 90%; height: 90%; object-fit: contain; transition: transform .18s;
}
.shop-product-card:hover .shop-product-img-wrap img { transform: scale(1.03);}
.shop-product-title {
  font-size: 1.35rem; font-weight: 800; color: #232d20;
  margin-bottom: 8px; text-align: center; letter-spacing: .01em;
}
.shop-product-price {
  color: #6dc632; font-size: 1.25rem; font-weight: 800; margin-bottom: 15px;
  letter-spacing: .03em; text-align: center;
}
.shop-product-desc {
  color: #496a24; font-size: 1.07rem; margin-bottom: 18px; opacity: .92;
  min-height: 48px; text-align: center;
}
.shop-product-btn {
  background: #6dc632; color: #fff; border-radius: 22px;
  font-size: 1.13rem; font-weight: 700; padding: 15px 38px; border: none;
  margin-top: 16px; cursor: pointer; transition: background .14s, color .14s;
}
.shop-product-btn:hover { background: #222c16; color: #b7f469; }
@media (max-width: 1000px) {
  .shop-products-grid { gap: 17px; }
  .shop-product-card { min-height: 360px; }
  .shop-product-img-wrap { width: 160px; height: 160px; }
}
@media (max-width: 600px) {
  .shop-products-header h2 { font-size: 1.25rem;}
  .shop-product-card { padding: 12px 5px 18px 5px; border-radius: 15px; }
  .shop-product-img-wrap { width: 100px; height: 100px;}
  .shop-product-title { font-size: .99rem;}
  .shop-product-price { font-size: .98rem;}
}
/* FLASH SALES */
.flash-sales-section { max-width: 1200px; margin: 70px auto 70px; padding: 0 20px;}
.flash-sales-section h2 { font-weight: 800; font-size: 2.4rem; color: #294109; margin-bottom: 36px; text-align: center;}
.flash-sales-grid { display: flex; gap: 28px; flex-wrap: wrap; justify-content: center;}
.deal-card {
  background: #f4fbe6; border-radius: 20px; box-shadow: 0 6px 26px #a8d15055; width: 320px; overflow: hidden;
  transition: box-shadow 0.25s ease, transform 0.25s ease; cursor: pointer; display: flex; flex-direction: column;
}
.deal-card:hover { box-shadow: 0 18px 46px #b7f469bb; transform: translateY(-8px);}
.deal-card img { width: 100%; height: 230px; object-fit: cover; transition: transform 0.3s ease;}
.deal-card:hover img { transform: scale(1.07);}
.deal-info { padding: 22px 20px 30px; display: flex; flex-direction: column; gap: 10px;}
.deal-info h3 { color: #395917; font-weight: 700; font-size: 1.28rem; margin: 0;}
.price { display: flex; gap: 12px; align-items: center;}
.old-price { text-decoration: line-through; color: #7d8c57; font-weight: 500; font-size: 1.05rem;}
.new-price { color: #294109; font-weight: 700; font-size: 1.3rem;}
.countdown { font-weight: 700; font-size: 1.1rem; color: #437e16; background: #d9f1a6; padding: 7px 14px; border-radius: 22px; text-align: center; user-select: none;}
.buy-now-btn { margin-top: 10px; background: #6dbc2e; color: white; border: none; border-radius: 30px; padding: 14px 25px; font-weight: 700; font-size: 1.12rem; text-align: center; text-decoration: none; transition: background-color 0.3s ease;}
.buy-now-btn:hover { background: #4d7b1a; color: #d9f1a6;}
@media (max-width: 900px) {
  .flash-sales-grid { gap: 18px; justify-content: center;}
  .deal-card { width: 280px;}
}
@media (max-width: 600px) {
  .deal-card { width: 95vw; max-width: 320px;}
}
/* TESTIMONIALS */
.testimonials-section { background:var(--muted); padding:64px 0; }
.testimonials-header { text-align:center; margin-bottom:32px;}
.testimonials-header h2 { font-size:2.1rem; color:var(--dark); font-weight:800;}
.testimonials-grid { display:flex; gap:36px; justify-content:center; flex-wrap:wrap;}
.testimonial-card {
  background:#fff; border-radius:22px; box-shadow:0 4px 16px #b7f46913; padding:32px 20px;
  max-width:370px; text-align:center; flex:1; min-width:270px;
}
.testimonial-avatar {
  width:62px; height:62px; border-radius:50%; object-fit:cover; margin-bottom:13px; border:2px solid #b7f469;
}
.testimonial-text { font-size:1.07rem; color:#627d34; margin-bottom:11px;}
.testimonial-name { font-weight:700; color:var(--green);}
.testimonial-stars { color:goldenrod; margin-bottom:7px;}
@media(max-width:900px){.testimonials-grid{gap:17px;} .testimonial-card{max-width:95vw;} }
/* FAQ */
.faq-section { background:#fff; padding:70px 0 50px;}
.faq-header { text-align:center; margin-bottom:38px;}
.faq-header h2 { font-size:2rem; color:var(--dark); font-weight:900;}
.faq-list { max-width:750px; margin:0 auto;}
.faq-item { border-bottom:1.2px solid #e5edc4; margin-bottom:21px; }
.faq-q {
  font-weight:700; font-size:1.15rem; color:#364b18; cursor:pointer; display:flex; justify-content:space-between; align-items:center; padding:12px 0;
  transition:color .18s;
}
.faq-q:hover { color:var(--green);}
.faq-a {
  color:#5e8031; font-size:1.08rem; padding:0 0 14px 0; display:none; animation:fadein 0.3s;
}
.faq-q.active + .faq-a { display:block; }
@keyframes fadein { from { opacity:0; } to { opacity:1; } }
@media(max-width:700px){.faq-list{padding:0 6px;}}

/* ====== TOP CATEGORIES WIDE SECTION (EXTRA SECTION) ====== */
.most-selling-categories {
  background: #f5f7ed;
  padding: 70px 0 50px 0;
  font-family: 'Poppins', Arial, sans-serif;
}
.most-selling-categories-header {
  text-align: center;
  margin-bottom: 44px;
}
.most-selling-categories-header h2 {
  font-size: 2.7rem;
  font-weight: 900;
  color: #232d20;
  margin-bottom: 8px;
  letter-spacing: .8px;
}
.most-selling-categories-header p {
  color: #749239;
  font-size: 1.16rem;
  font-weight: 500;
  opacity: 0.89;
  margin: 0;
}
.most-selling-categories-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 36px 44px;
  max-width: 1100px;
  margin: 0 auto;
}
.category-big-card {
  position: relative;
  border-radius: 34px;
  overflow: hidden;
  display: block;
  height: 320px;
  box-shadow: 0 8px 36px #b7f46933;
  transition: box-shadow .17s, transform .14s;
  cursor: pointer;
  background: #e8f9ce;
}
.category-big-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .28s cubic-bezier(.4,.9,.25,1.1);
}
.category-big-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg,rgba(36,59,8,0.54) 50%,rgba(60,118,12,0.18) 100%);
  z-index: 2;
  transition: background .18s;
}
.category-big-title {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  z-index: 3;
  color: #fff;
  font-size: 2.2rem;
  font-weight: 900;
  text-align: left;
  padding: 36px 34px 32px 34px;
  letter-spacing: 1.2px;
  text-shadow: 0 6px 28px #25331166, 0 2px 6px #25331122;
  background: linear-gradient(0deg,rgba(36,59,8,0.82) 45%,rgba(60,118,12,0.00) 100%);
  border-radius: 0 0 34px 34px;
}
.category-big-card:hover img {
  transform: scale(1.08);
}
.category-big-card:hover {
  box-shadow: 0 18px 48px #b7f4696b;
}
@media (max-width: 900px) {
  .most-selling-categories-grid {
    grid-template-columns: 1fr;
    gap: 22px;
    max-width: 96vw;
  }
  .category-big-card { height: 210px; border-radius: 17px;}
  .category-big-title { font-size: 1.2rem; padding: 13px 13px 12px 19px; border-radius: 0 0 17px 17px; }
}

    .single-product-main {
  display: flex;
  gap: 38px;
  max-width: 1150px;
  margin: 38px auto 0 auto;
  padding: 0 15px;
  background: #fff;
  border-radius: 28px;
  box-shadow: 0 4px 28px #b7f46918;
  flex-wrap: wrap;
}

.single-product-gallery {
  flex: 1 1 330px;
  min-width: 270px;
  max-width: 410px;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 30px 0 18px 0;
  gap: 17px;
}
.gallery-main-img {
  background: #f7fbf4;
  border-radius: 16px;
  box-shadow: 0 2px 15px #b7f46921;
  width: 320px; height: 320px;
  display: flex; align-items: center; justify-content: center;
}
.gallery-main-img img {
  width: 92%; height: 92%; object-fit: contain;
  border-radius: 16px;
}
.gallery-thumbs {
  display: flex;
  gap: 8px;
  margin-top: 8px;
}
.gallery-thumbs img {
  width: 54px; height: 54px;
  object-fit: contain;
  background: #f4fbee;
  border-radius: 11px;
  border: 2px solid #e6eed6;
  cursor: pointer;
  opacity: .8;
  transition: border .14s, opacity .13s;
}
.gallery-thumbs img.active, .gallery-thumbs img:hover {
  border-color: #b7f469;
  opacity: 1;
}

.single-product-info {
  flex: 2 1 420px;
  min-width: 270px;
  padding: 32px 0 24px 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 10px;
}
.product-badges { margin-bottom: 9px; }
.badge {
  display: inline-block;
  font-size: .91rem;
  font-weight: 700;
  border-radius: 8px;
  padding: 3px 14px 2px 14px;
  margin-right: 6px;
  background: #b7f469;
  color: #232d20;
  opacity: .85;
}
.badge-best { background: #6dc632; color: #fff;}
.badge-green { background: #b7f469; color: #222c16;}
.product-title {
  font-size: 2.15rem;
  color: #222c16;
  font-weight: 900;
  margin-bottom: 3px;
  letter-spacing: 0.03em;
}
.product-brand {
  font-size: 1.06rem;
  color: #6dc632;
  font-weight: 600;
  margin-bottom: 8px;
}
.product-rating {
  color: #ffc107;
  font-size: 1.05rem;
  font-weight: 700;
  margin-bottom: 11px;
}
.product-rating .rating-num { color: #253311; font-weight: 700; margin-left: 6px;}
.product-rating .rating-count { color: #90a060; margin-left: 7px; font-weight: 400;}
.product-price {
  color: #294109;
  font-size: 1.63rem;
  font-weight: 800;
  margin-bottom: 13px;
}
.variant-group {
  margin: 12px 0 18px 0;
}
.variant-group label {
  font-size: 1.04rem;
  color: #253311;
  font-weight: 700;
  margin-right: 14px;
}
.variant-btn {
  background: #f7fbf4;
  color: #232d20;
  border: 1.5px solid #e6eed6;
  border-radius: 8px;
  padding: 7px 22px;
  font-size: 1.03rem;
  font-weight: 600;
  margin-right: 10px;
  cursor: pointer;
  transition: border .13s, background .13s, color .13s;
}
.variant-btn.active, .variant-btn:hover {
  border-color: #b7f469;
  background: #b7f469;
  color: #232d20;
}
.product-quick-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  color: #627d34;
  font-size: 1.04rem;
  margin-bottom: 18px;
}
.product-quick-meta i { color: #6dc632; margin-right: 6px;}
.buy-actions {
  display: flex;
  gap: 11px;
  align-items: center;
  margin-top: 7px;
}
.qty-input {
  width: 64px;
  border-radius: 8px;
  border: 1.3px solid #e6eed6;
  padding: 7px 10px;
  font-size: 1.08rem;
  font-weight: 700;
  background: #fafefb;
  color: #253311;
  margin-right: 2px;
}
.add-cart-btn, .buy-now-btn {
  background: #6dc632;
  color: #fff;
  border: none;
  border-radius: 20px;
  font-size: 1.04rem;
  font-weight: 700;
  padding: 12px 30px;
  margin-right: 5px;
  cursor: pointer;
  transition: background .13s, color .13s;
  display: flex;
  align-items: center;
  gap: 8px;
}
.add-cart-btn:hover, .buy-now-btn:hover { background: #b7f469; color: #253311;}
.buy-now-btn { background: #222c16; color: #fff; }
.buy-now-btn:hover { background: #6dc632; color: #fff;}

@media (max-width: 900px) {
  .single-product-main { flex-direction: column; gap: 20px; padding: 10px 0;}
  .single-product-gallery, .single-product-info { max-width: 98vw;}
  .gallery-main-img, .gallery-main-img img { width: 230px; height: 230px;}
}
@media (max-width: 600px) {
  .single-product-main { border-radius: 13px; box-shadow: none; padding: 0 0;}
  .single-product-info { padding: 11px 0 8px 0;}
  .product-title { font-size: 1.23rem;}
  .product-brand, .product-price, .product-rating { font-size: .99rem;}
  .gallery-main-img, .gallery-main-img img { width: 130px; height: 130px;}
  .gallery-thumbs img { width: 38px; height: 38px;}
  .add-cart-btn, .buy-now-btn { font-size: .91rem; padding: 8px 16px;}
}

/* PRODUCT TABS */
.product-tabs-wrap {
  max-width: 950px;
  margin: 35px auto 28px auto;
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 2px 18px #b7f46913;
  padding: 0 14px 22px 14px;
}
.product-tabs {
  display: flex;
  border-bottom: 2px solid #e6eed6;
  gap: 0;
  margin-bottom: 0;
  padding-top: 17px;
}
.tab-btn {
  flex: 1 1 0;
  background: none;
  border: none;
  font-size: 1.17rem;
  font-weight: 700;
  padding: 14px 0;
  color: #294109;
  cursor: pointer;
  border-bottom: 2.5px solid transparent;
  transition: border .16s, color .13s, background .12s;
  outline: none;
}
.tab-btn.active, .tab-btn:hover {
  border-bottom: 2.5px solid #b7f469;
  color: #6dc632;
  background: #f7fbf4;
}
.tab-content {
  display: none;
  padding: 23px 0 0 0;
  animation: fadein 0.3s;
}
.tab-content.active { display: block;}
@keyframes fadein { from { opacity:0; } to { opacity:1; } }

.desc-list {
  margin: 0 0 0 12px; padding: 0 0 0 14px;
  color: #354b15;
  font-size: 1.12rem;
}
.specs-table {
  width: 100%; max-width: 550px; border-collapse: collapse;
  margin-top: 10px;
}
.specs-table th, .specs-table td {
  text-align: left;
  padding: 7px 10px;
  font-size: 1.06rem;
}
.specs-table th { width: 135px; color: #6dc632; font-weight: 700;}
.specs-table tr:nth-child(even) { background: #f9fbf7;}
.review-star { color: #ffc107; font-size: 1.07rem; margin-left: 7px;}
.review-list { margin-top: 17px;}
.review-item {
  display: flex;
  align-items: flex-start;
  gap: 17px;
  background: #f7fbf4;
  border-radius: 13px;
  padding: 17px 14px 13px 14px;
  margin-bottom: 12px;
  box-shadow: 0 2px 10px #b7f46911;
}
.reviewer {
  display: flex; align-items: center; gap: 11px;
}
.review-avatar {
  width: 41px; height: 41px; border-radius: 50%; object-fit: cover; border: 2px solid #b7f469;
}
.review-stars { color: #ffc107; font-size: 1.02rem; margin-top: 2px; }
.review-text {
  color: #486b19;
  font-size: 1.04rem;
  margin-top: 3px;
  flex: 1;
}
@media (max-width: 600px) {
  .product-tabs-wrap { border-radius: 7px; box-shadow: none; padding: 0 1vw 9px 1vw;}
  .tab-btn { font-size: .96rem; padding: 9px 0;}
  .desc-list, .specs-table th, .specs-table td, .review-text { font-size: .91rem;}
  .review-item { padding: 8px 5px 8px 5px; }
  .review-avatar { width: 30px; height: 30px; }
}



    /* HERO */
    .solar-vibe-hero {
      background: linear-gradient(110deg, #fcfff4 67%, #b7f469 120%);
      padding: 84px 0 48px 0;
      text-align: center;
      position: relative;
      border-radius: 0 0 70px 70px;
      overflow: hidden;
    }
    .solar-vibe-hero-badge {
      display: inline-block;
      background: linear-gradient(90deg, #b7f469 60%, #6dc632 100%);
      color: #314018;
      font-weight: 800;
      letter-spacing: 0.13em;
      font-size: 1.07rem;
      border-radius: 14px;
      padding: 8px 19px 7px 19px;
      margin-bottom: 23px;
      box-shadow: 0 2px 12px #b7f46933;
      text-transform: uppercase;
    }
    .solar-vibe-hero-title {
      font-size: 3.3rem;
      color: #253311;
      font-weight: 900;
      margin-bottom: 13px;
      letter-spacing: 1.3px;
      position: relative;
      z-index: 2;
      text-shadow: 0 2px 14px #b7f46913;
      line-height: 1.12;
    }
    .solar-vibe-hero-desc {
      color: #5e7e1b;
      font-size: 1.34rem;
      font-weight: 500;
      opacity: .94;
      margin-bottom: 30px;
      z-index: 2;
      max-width: 560px;
      margin-left: auto;
      margin-right: auto;
    }
    .solar-vibe-hero-cta {
      display: inline-block;
      background: #222c16;
      color: #fff;
      border-radius: 24px;
      font-size: 1.16rem;
      font-weight: 700;
      padding: 16px 46px;
      margin-top: 15px;
      transition: background 0.17s, color 0.13s, transform 0.13s;
      box-shadow: 0 3px 18px #b7f46933;
      letter-spacing: 0.04em;
    }
    .solar-vibe-hero-cta i {
      margin-left: 11px;
      font-size: 1.16em;
    }
    .solar-vibe-hero-cta:hover {
      background: #b7f469;
      color: #233311;
      transform: scale(1.05);
    }
    .solar-vibe-hero-icon {
      position: absolute;
      right: 4vw;
      bottom: 13px;
      font-size: 6.2rem;
      color: #b7f46930;
      pointer-events: none;
      z-index: 1;
      animation: hero-icon-float 2.8s infinite ease-in-out alternate;
    }
    @keyframes hero-icon-float {
      0% { transform: translateY(0);}
      100% { transform: translateY(-16px);}
    }

    /* CATEGORY GRID */
    .solar-vibe-section {
      padding: 54px 0 56px 0;
    }
    .solar-vibe-cats-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 54px 44px;
      max-width: 1140px;
      margin: 0 auto;
      padding: 0 10px;
      position: relative;
    }
    .solar-vibe-cat-card {
      background: linear-gradient(120deg,#f6faee 70%,#b7f4692c 100%);
      border-radius: 38px;
      box-shadow: 0 10px 40px #b7f46922, 0 1px 6px #7ed95713;
      border: 2.4px solid #e6eed6;
      display: flex;
      align-items: stretch;
      min-height: 310px;
      overflow: hidden;
      position: relative;
      cursor: pointer;
      transition: box-shadow 0.19s, border 0.15s, transform 0.16s;
      will-change: box-shadow, transform;
    }
    .solar-vibe-cat-card:hover {
      box-shadow: 0 26px 85px #b7f46939, 0 1px 15px #d3f9af15;
      border-color: #b7f469;
      transform: translateY(-9px) scale(1.019);
      z-index: 5;
    }
    .solar-vibe-cat-imgwrap {
      width: 50%; min-width: 180px;
      background: linear-gradient(120deg,#d6f7b1 40%,#b7f469 100%);
      display: flex; align-items: center; justify-content: center;
      border-radius: 38px 0 0 38px;
    }
    .solar-vibe-cat-img {
      width: 90%; max-width: 210px; height: 170px;
      object-fit: contain;
      border-radius: 20px;
      background: #fff;
      transition: transform 0.16s, filter 0.13s;
      box-shadow: 0 2px 13px #b7f46915;
    }
    .solar-vibe-cat-card:hover .solar-vibe-cat-img {
      transform: scale(1.11) rotate(-1deg);
      filter: drop-shadow(0 9px 22px #b7f46970);
    }
    .solar-vibe-cat-content {
      flex: 1;
      padding: 43px 33px 17px 33px;
      display: flex;
      flex-direction: column;
      justify-content: center;
    }
    .solar-vibe-cat-title {
      font-size: 2.08rem;
      font-weight: 900;
      color: #223b11;
      margin-bottom: 8px;
      letter-spacing: .04em;
      text-shadow: 0 1.5px 9px #b7f4690c;
    }
    .solar-vibe-cat-desc {
      color: #497a18;
      font-size: 1.17rem;
      font-weight: 500;
      margin-bottom: 18px;
      opacity: .93;
    }
    .solar-vibe-cat-link {
      background: linear-gradient(90deg,#b7f469 70%,#6dc632 100%);
      color: #223b11;
      border-radius: 15px;
      padding: 11px 34px;
      font-size: 1.11rem;
      font-weight: 800;
      box-shadow: 0 1.5px 13px #b7f46917;
      transition: background .13s, color .13s, transform .12s;
      border: none;
      display: inline-block;
      margin-top: 7px;
    }
    .solar-vibe-cat-card:hover .solar-vibe-cat-link {
      background: #223b11;
      color: #b7f469;
      transform: scale(1.09);
    }

    @media (max-width: 1050px) {
      .solar-vibe-cats-grid { gap: 23px 7px; }
      .solar-vibe-cat-card { min-height: 140px; }
      .solar-vibe-cat-imgwrap { min-width: 110px;}
      .solar-vibe-cat-title { font-size: 1.18rem;}
    }
    @media (max-width: 900px) {
      .solar-vibe-cats-grid { grid-template-columns: 1fr; gap: 22px;}
      .solar-vibe-cat-card { flex-direction: column; min-height: 110px; border-radius: 16px;}
      .solar-vibe-cat-imgwrap { width: 100%; border-radius: 16px 16px 0 0; min-width: 0; height: 100px;}
      .solar-vibe-cat-content { padding: 13px 8px 10px 17px;}
      .solar-vibe-cat-title { font-size: 1.04rem;}
    }
    @media (max-width: 600px) {
      .solar-vibe-hero-title { font-size: 1.08rem;}
      .solar-vibe-hero { padding: 31px 0 10px 0; border-radius: 0 0 17px 17px;}
      .solar-vibe-cat-title { font-size: .97rem;}
      .solar-vibe-cat-desc { font-size: .85rem;}
      .solar-vibe-cat-link { font-size: .89rem; padding: 7px 11px;}
      .solar-vibe-section { padding: 11px 0 19px 0;}
    }

    /* HOW IT WORKS STEPS */
    .solar-vibe-how-section {
      background: #fcfefd;
      padding: 54px 0 39px 0;
      margin-top: 27px;
    }
    .solar-vibe-how-title {
      text-align: center;
      font-size: 1.68rem;
      font-weight: 800;
      margin-bottom: 35px;
      color: #26370f;
    }
    .solar-vibe-how-steps {
      display: flex;
      justify-content: center;
      gap: 32px;
      flex-wrap: wrap;
      max-width: 890px;
      margin: 0 auto;
    }
    .solar-vibe-how-step {
      background: #fff;
      border-radius: 21px;
      box-shadow: 0 3px 15px #b7f46915;
      padding: 33px 28px 22px 28px;
      text-align: center;
      flex: 1;
      min-width: 180px;
      max-width: 270px;
      transition: box-shadow 0.16s, transform 0.12s;
    }
    .solar-vibe-how-step:hover {
      box-shadow: 0 10px 32px #b7f46939;
      transform: translateY(-7px) scale(1.04);
    }
    .solar-vibe-how-step i {
      color: #b7f469;
      font-size: 2.35em;
      margin-bottom: 12px;
      background: #f4fae9;
      border-radius: 50%;
      padding: 13px;
      display: inline-block;
      box-shadow: 0 2px 9px #b7f4691a;
    }
    .solar-vibe-how-step-title {
      margin: 13px 0 7px 0;
      color: #223b11;
      font-weight: 800;
      font-size: 1.13rem;
    }
    .solar-vibe-how-step-desc {
      color: #64812b;
      font-size: .99rem;
    }

    /* PARTNERS */
    .solar-vibe-partner-section {
      background: #fcfefd;
      padding: 44px 0 30px 0;
      text-align: center;
    }
    .solar-vibe-partner-title {
      font-size: 1.23rem;
      color: #4b751c;
      font-weight: 800;
      margin-bottom: 23px;
    }
    .solar-vibe-partner-logos {
      display: flex;
      gap: 44px;
      justify-content: center;
      flex-wrap: wrap;
      align-items: center;
    }
    .solar-vibe-partner-logos img {
      height: 56px;
      filter: grayscale(.85) brightness(1.12);
      opacity: .84;
      transition: filter 0.2s;
      border-radius: 50%;
      background: #f4fae9;
      box-shadow: 0 2px 13px #b7f46917;
      padding: 8px;
    }
    .solar-vibe-partner-logos img:hover {
      filter: grayscale(0) brightness(1.15);
      opacity: 1;
    }

    /* REVIEWS */
    .solar-vibe-reviews-section {
      background: #f9fcf6;
      padding: 64px 0 46px 0;
      text-align: center;
    }
    .solar-vibe-reviews-title {
      font-size: 1.44rem;
      color: #253311;
      font-weight: 800;
      margin-bottom: 32px;
    }
    .solar-vibe-reviews-grid {
      display: flex;
      gap: 31px;
      justify-content: center;
      flex-wrap: wrap;
      max-width: 1040px;
      margin: 0 auto;
    }
    .solar-vibe-review-card {
      background: #fff;
      border-radius: 23px;
      box-shadow: 0 3px 19px #b7f46911;
      padding: 33px 23px 19px 23px;
      max-width: 340px;
      min-width: 210px;
      flex: 1;
      text-align: left;
      border: 1.8px solid #e4f7c9;
    }
    .solar-vibe-review-user {
      display: flex;
      align-items: center;
      margin-bottom: 13px;
      gap: 11px;
    }
    .solar-vibe-review-avatar {
      width: 47px;
      height: 47px;
      border-radius: 50%;
      background: #f4fae9;
      border: 2px solid #b7f469;
      object-fit: cover;
    }
    .solar-vibe-review-name {
      font-weight: 700;
      color: #223b11;
      font-size: 1.07rem;
    }
    .solar-vibe-review-stars {
      color: #ffb700;
      margin-bottom: 5px;
      font-size: 1.09rem;
    }
    .solar-vibe-review-text {
      color: #597d2e;
      font-size: 1.02rem;
      margin-bottom: 0;
      min-height: 35px;
    }
    @media (max-width: 900px) {
      .solar-vibe-reviews-grid { gap: 12px;}
      .solar-vibe-review-card { min-width: 120px; padding: 14px 7px;}
    }

    /* FAQ */
    .solar-vibe-faq-section {
      background: #fff;
      border-radius: 21px;
      box-shadow: 0 2px 16px #b7f46913;
      max-width: 930px;
      margin: 41px auto 25px auto;
      padding: 41px 17px 25px 17px;
    }
    .solar-vibe-faq-title {
      font-size: 1.22rem;
      color: #233210;
      font-weight: 800;
      margin-bottom: 13px;
      text-align: center;
    }
    .solar-vibe-faq-list {
      margin: 0 auto;
      max-width: 680px;
    }
    .solar-vibe-faq-item {
      border-bottom: 1.2px solid #e5edc4;
      margin-bottom: 17px;
      padding-bottom: 10px;
      cursor: pointer;
      transition: color .18s;
    }
    .solar-vibe-faq-q {
      font-weight: 700;
      font-size: 1.11rem;
      color: #364b18;
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 8px 0;
    }
    .solar-vibe-faq-q:hover { color: #6dc632;}
    .solar-vibe-faq-a {
      color: #5e8031;
      font-size: .99rem;
      padding: 0 0 9px 0;
      display: none;
      animation: fadein 0.25s;
    }
    .solar-vibe-faq-q.active + .solar-vibe-faq-a { display: block;}
    @keyframes fadein { from { opacity:0; } to { opacity:1; } }
    @media (max-width: 700px) {
      .solar-vibe-faq-section { padding: 19px 2vw;}
      .solar-vibe-section { padding: 13px 0 19px 0;}
    }
