.elementor-911 .elementor-element.elementor-element-f141138{--display:flex;--min-height:403px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--margin-top:0px;--margin-bottom:37px;--margin-left:0px;--margin-right:0px;}.elementor-911 .elementor-element.elementor-element-f141138:not(.elementor-motion-effects-element-type-background), .elementor-911 .elementor-element.elementor-element-f141138 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F8F8;}.elementor-911 .elementor-element.elementor-element-3d9b76f{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;--margin-top:119px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;}.elementor-911 .elementor-element.elementor-element-d00e8c9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:start;}.elementor-911 .elementor-element.elementor-element-d00e8c9 .elementor-heading-title{font-size:48px;line-height:1.1em;}.elementor-911 .elementor-element.elementor-element-ea6f1b9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 50px) 0px;font-size:18px;}.elementor-911 .elementor-element.elementor-element-01d4298{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-911 .elementor-element.elementor-element-506619f .elementor-button{background-color:var( --e-global-color-blocksy_palette_1 );font-size:15px;border-radius:50px 50px 50px 50px;padding:20px 40px 20px 40px;}.elementor-911 .elementor-element.elementor-element-506619f .elementor-button:hover, .elementor-911 .elementor-element.elementor-element-506619f .elementor-button:focus{background-color:var( --e-global-color-blocksy_palette_2 );}.elementor-911 .elementor-element.elementor-element-cd88b97 .elementor-button{background-color:#02010100;font-size:18px;fill:var( --e-global-color-blocksy_palette_1 );color:var( --e-global-color-blocksy_palette_1 );border-style:solid;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-blocksy_palette_1 );border-radius:50px 50px 50px 50px;padding:18px 40px 18px 40px;}.elementor-911 .elementor-element.elementor-element-cd88b97 .elementor-button:hover, .elementor-911 .elementor-element.elementor-element-cd88b97 .elementor-button:focus{color:var( --e-global-color-blocksy_palette_2 );border-color:var( --e-global-color-blocksy_palette_2 );}.elementor-911 .elementor-element.elementor-element-cd88b97 .elementor-button:hover svg, .elementor-911 .elementor-element.elementor-element-cd88b97 .elementor-button:focus svg{fill:var( --e-global-color-blocksy_palette_2 );}.elementor-911 .elementor-element.elementor-element-1ec4c8d{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-911 .elementor-element.elementor-element-b66ed35{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -100px) 0px;}.elementor-911 .elementor-element.elementor-element-0dfd546{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:-42px;--margin-bottom:40px;--margin-left:0px;--margin-right:0px;}.elementor-911 .elementor-element.elementor-element-a96620e{--display:flex;}.elementor-911 .elementor-element.elementor-element-7d3c604{--display:flex;}.elementor-911 .elementor-element.elementor-element-39b6ae1{--display:flex;}@media(max-width:1024px){.elementor-911 .elementor-element.elementor-element-f141138{--gap:35px 35px;--row-gap:35px;--column-gap:35px;--margin-top:0px;--margin-bottom:70px;--margin-left:0px;--margin-right:0px;}.elementor-911 .elementor-element.elementor-element-d00e8c9 .elementor-heading-title{font-size:40px;}.elementor-911 .elementor-element.elementor-element-b66ed35{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}@media(max-width:767px){.elementor-911 .elementor-element.elementor-element-f141138{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;--padding-top:110px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-911 .elementor-element.elementor-element-d00e8c9{text-align:center;}.elementor-911 .elementor-element.elementor-element-ea6f1b9{text-align:center;}.elementor-911 .elementor-element.elementor-element-01d4298{--justify-content:center;}}@media(min-width:768px){.elementor-911 .elementor-element.elementor-element-3d9b76f{--width:40%;}.elementor-911 .elementor-element.elementor-element-1ec4c8d{--width:60%;}}@media(max-width:1024px) and (min-width:768px){.elementor-911 .elementor-element.elementor-element-3d9b76f{--width:60%;}.elementor-911 .elementor-element.elementor-element-1ec4c8d{--width:40%;}}/* Start custom CSS for html, class: .elementor-element-f6a40fd *//* === Section === */
.vp {
  padding: 70px 0;
  background-color: #fff;
}
.vp-head {
  text-align: center;
  margin-bottom: 50px;
}
.vp-head h2 {
  font-size: clamp(32px, 3vw, 40px);
  color: #000; /* black heading */
  font-weight: 700;
  margin-bottom: 8px;
}
.vp-head p {
  color: #000; /* black subtext */
  font-size: 18px;
  opacity: 0.8;
}

/* === Grid === */
.vp-grid {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(3, 1fr);
  max-width: 1100px;
  margin: 0 auto;
}
@media (max-width: 900px) {
  .vp-grid { grid-template-columns: 1fr; }
}

/* === Card === */
.vp-card {
  background: #fff;
  border-radius: 18px;
  padding: 40px 28px;
  text-align: center;
  border: 1px solid rgba(0,0,0,0.05);
  box-shadow: 0 8px 24px rgba(0,0,0,0.06);
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}
.vp-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #e6f3ea 0%, #f4fdf7 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.vp-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 18px 40px rgba(0,0,0,0.1);
}
.vp-card:hover::before { opacity: 1; }
.vp-card * { position: relative; z-index: 1; }

/* === Icon === */
.vp-icon {
  color: #000; /* black icon color */
  width: 70px;
  height: 70px;
  margin: 0 auto 16px;
  display: grid;
  place-items: center;
  background: #f2f2f2;
  border-radius: 50%;
  box-shadow: 0 6px 12px rgba(0,0,0,0.05);
  transition: all 0.3s ease;
}
.vp-card:hover .vp-icon {
  background: #1f5134;
  color: #fff;
  transform: scale(1.05);
}

/* === Text === */
.vp-card h3 {
  margin: 10px 0 8px;
  font-size: 22px;
  font-weight: 600;
  color: #000; /* black title */
}
.vp-card p {
  margin: 0 auto;
  color: #000; /* black paragraph */
  font-size: 16px;
  line-height: 1.6;
  max-width: 90%;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a96620e *//* === Section Styling === */
.vp {
  padding: 70px 0;
  background: #fff;
}
.vp-head {
  text-align: center;
  margin-bottom: 50px;
}
.vp-head h2 {
  font-size: clamp(32px, 3vw, 40px);
  color: #1f5134;
  font-weight: 700;
  margin-bottom: 8px;
}
.vp-head p {
  color: #4c5a52;
  font-size: 18px;
  opacity: 0.8;
}

/* === Card Grid === */
.vp-grid {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(3, 1fr);
  max-width: 1100px;
  margin: 0 auto;
}
@media (max-width: 900px) {
  .vp-grid { grid-template-columns: 1fr; }
}

/* === Cards === */
.vp-card {
  background: #fff;
  border-radius: 18px;
  padding: 40px 28px;
  text-align: center;
  border: 1px solid rgba(0,0,0,0.05);
  box-shadow: 0 8px 24px rgba(0,0,0,0.06);
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}
.vp-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #e6f3ea 0%, #f4fdf7 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.vp-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 18px 40px rgba(0,0,0,0.1);
}
.vp-card:hover::before { opacity: 1; }
.vp-card * { position: relative; z-index: 1; }

/* === Icon === */
.vp-icon {
  color: #000; /* black icons */
  width: 70px;
  height: 70px;
  margin: 0 auto 16px;
  display: grid;
  place-items: center;
  background: #f2f2f2;
  border-radius: 50%;
  box-shadow: 0 6px 12px rgba(0,0,0,0.05);
  transition: all 0.3s ease;
}
.vp-card:hover .vp-icon {
  background: #1f5134;
  color: #fff;
  transform: scale(1.05);
}

/* === Text === */
.vp-card h3 {
  margin: 10px 0 8px;
  font-size: 22px;
  font-weight: 600;
  color: #1f5134;
}
.vp-card p {
  margin: 0 auto;
  color: #4c5a52;
  font-size: 16px;
  line-height: 1.6;
  max-width: 90%;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7d3c604 *//* Section spacing + heading */
.collect{ padding:48px 0; }
.collect-head{ text-align:center; margin-bottom:24px; }
.collect-head h2{ margin:0 0 8px; font-size:clamp(28px,3vw,40px); line-height:1.2; }
.collect-head p{ margin:0; color:#4c5a52; }

/* Grid: 4 desktop / 2 tablet / 1 mobile */
.collect-grid{
  display:grid;
  gap:22px;
  grid-template-columns:repeat(4,1fr);
}
@media (max-width:1024px){ .collect-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px){ .collect-grid{ grid-template-columns:1fr; } }

/* Card with equal heights + bottom-aligned button */
.collect-card{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  height:100%;
  background:#fff;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.06);
  color:inherit;
  text-decoration:none;
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.collect-card:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 30px rgba(0,0,0,.08);
  border-color:rgba(0,0,0,.1);
}

/* Consistent image frame */
.collect-img{
  aspect-ratio:4 / 3;          /* same height for every card image */
  overflow:hidden;
  border-radius:12px;
  margin:12px 12px 0;
  background:#fff;
}

/* Image fit mode
   - Default: .fit-contain (no crop; good for AI square images)
   - If you want full-bleed crop, change the section class to .fit-cover */
.fit-contain .collect-img img{ object-fit:fit-cover; }
.fit-cover   .collect-img img{ object-fit:cover; object-position:center; }

.collect-img img{
  width:100%;
  height:100%;
  display:block;
  image-rendering:-webkit-optimize-contrast;
}

/* Text spacing */
.collect-card h3,
.collect-card p{ margin-left:16px; margin-right:16px; }
.collect-card h3{ margin-top:14px; margin-bottom:6px; font-size:20px; }
.collect-card p{ margin-bottom:auto; color:#5a6a61; }

/* Button */
.collect-btn{
  display:block;
  margin:16px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid #b7d7c2;
  color:#1f5134;
  font-weight:600;
  text-align:center;
  transition:background .18s ease, color .18s ease, border-color .18s ease;
}
.collect-card:hover .collect-btn{
  background:#e6f3ea;
  border-color:#9fcfb1;
  color:#1b402b;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8e08d58 */:root{
  --tms-text:#000;       /* black text */
  --tms-green:#1f5134;   /* deep green accent */
  --tms-mint:#e6f3ea;    /* soft mint */
}

/* Section */
.tms{ padding:70px 0; background:#fff; }
.tms-head{ text-align:center; margin-bottom:28px; }
.tms-head h2{ margin:0 0 6px; font-size:clamp(28px,3vw,38px); color:var(--tms-text); font-weight:800; }
.tms-head p{ margin:0; color:var(--tms-text); opacity:.85; }

/* Grid */
.tms-grid{
  max-width:1100px; margin:0 auto 22px;
  display:grid; gap:22px; grid-template-columns:repeat(3,1fr);
}
@media (max-width:900px){ .tms-grid{ grid-template-columns:1fr; } }

/* Card */
.tm-card{
  background:#fff; border:1px solid rgba(0,0,0,.06);
  border-radius:16px; padding:22px 20px;
  box-shadow:0 8px 22px rgba(0,0,0,.06);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.tm-card:hover{ transform:translateY(-6px); box-shadow:0 16px 36px rgba(0,0,0,.10); border-color:rgba(0,0,0,.12); }

/* Stars */
.tm-stars{ display:flex; gap:4px; margin-bottom:12px; }
.tm-stars svg{ width:18px; height:18px; fill:var(--tms-green); }

/* Quote */
.tm-quote{ color:var(--tms-text); line-height:1.7; margin:0 0 14px; }

/* User */
.tm-user{ display:flex; align-items:center; gap:12px; }
.tm-user img{
  width:44px; height:44px; border-radius:50%; object-fit:cover;
  background:var(--tms-mint); border:1px solid rgba(0,0,0,.06);
}
.tm-user strong{ color:var(--tms-text); display:block; }
.tm-user span{ color:var(--tms-text); opacity:.75; font-size:13.5px; }

/* CTA */
.tms-cta{ display:flex; gap:12px; justify-content:center; margin-top:8px; }
.tms-btn{
  display:inline-block; padding:12px 18px; border-radius:999px; text-decoration:none;
  font-weight:700; transition:all .18s ease; text-align:center;
}
.tms-btn.primary{ background:var(--tms-green); color:#fff; }
.tms-btn.primary:hover{ filter:brightness(1.05); }
.tms-btn.ghost{ border:1px dashed #b7d7c2; color:var(--tms-green); background:#f8fbf9; }
.tms-btn.ghost:hover{ background:#eef7f1; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-39b6ae1 *//* colors to match your site */
:root{
  --hiw-text:#000;          /* black text */
  --hiw-green:#1f5134;      /* deep green accent */
  --hiw-mint:#e6f3ea;       /* light mint bg for icons */
  --hiw-line:#b7d7c2;       /* timeline line */
}

/* section */
.hiw{ padding:70px 0; background:#fff; }
.hiw-head{ text-align:center; margin-bottom:36px; }
.hiw-head h2{ margin:0 0 8px; font-size:clamp(28px,3vw,40px); color:var(--hiw-text); font-weight:700; }
.hiw-head p{ margin:0; color:var(--hiw-text); opacity:.85; }

/* rail (the thin line behind the icons on desktop) */
.hiw-rail{ position:relative; max-width:1100px; margin:0 auto; }
.hiw-rail::before{
  content:""; position:absolute; left:4%; right:4%; top:38px; height:2px;
  background:var(--hiw-line); border-radius:2px;
}
/* grid */
.hiw-grid{
  display:grid; gap:26px; grid-template-columns:repeat(4,1fr);
}

/* card */
.hiw-step{
  text-align:center; padding:18px; background:#fff; border-radius:16px;
}
.hiw-step h3{ margin:14px 0 6px; color:var(--hiw-text); font-size:18px; font-weight:700; }
.hiw-step p{ margin:0; color:var(--hiw-text); opacity:.9; }

/* icon */
.hiw-icon{
  width:78px; height:78px; margin:0 auto; display:grid; place-items:center;
  background:var(--hiw-mint); color:#000; border-radius:50%;
  box-shadow:0 8px 20px rgba(0,0,0,.06);
  position:relative;
}
.hiw-icon svg{ display:block; }

/* small numbered badge */
.hiw-num{
  position:absolute; top:-8px; right:-8px;
  width:26px; height:26px; display:grid; place-items:center;
  background:#fff; color:var(--hiw-green); border:2px solid var(--hiw-green);
  border-radius:50%; font-size:13px; font-weight:800;
}

/* hover polish */
.hiw-step:hover .hiw-icon{ transform:translateY(-4px); transition:.18s ease; box-shadow:0 12px 28px rgba(0,0,0,.10); }
.hiw-step:hover h3{ color:var(--hiw-green); }

/* RESPONSIVE */
@media (max-width: 1024px){
  .hiw-rail::before{ left:0; right:0; }
  .hiw-grid{ grid-template-columns:repeat(2,1fr); row-gap:36px; }
}
@media (max-width: 767px){
  .hiw-rail::before{ display:none; }        /* hide line on mobile */
  .hiw-grid{ grid-template-columns:1fr; gap:22px; }
  .hiw-icon{ width:70px; height:70px; }
}/* End custom CSS */