:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-7d2dc27 */.etl-section {
  width: 100%;
  box-sizing: border-box;
  overflow-x: hidden;
}

.etl-section *,
.etl-section *::before,
.etl-section *::after {
  box-sizing: border-box;
}

/* =========================
   GLOBAL CONTAINER
========================= */

.etl-container {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding-left: clamp(1.25rem, 5vw, 5rem);
  padding-right: clamp(1.25rem, 5vw, 5rem);
}

/* =========================
   HERO SECTION
========================= */

.etl-section--hero {
  position: relative;
  background:
    radial-gradient(circle at top right, rgba(184, 134, 11, 0.18), transparent 32%),
    linear-gradient(135deg, #111827 0%, #1a2332 45%, #243447 72%, #2d6a4f 100%);
  color: #e8eef4;
  padding-top: clamp(5rem, 9vw, 8rem);
  padding-bottom: clamp(5rem, 9vw, 8rem);
  min-height: 82vh;
  display: flex;
  align-items: center;
}

/* =========================
   HERO GRID
========================= */

.etl-hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
}

@media (min-width: 900px) {
  .etl-hero-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
  }
}

/* =========================
   HERO CONTENT
========================= */

.etl-hero-content {
  min-width: 0;
  max-width: 760px;
}

.etl-section--hero .etl-eyebrow {
  margin: 0 0 1rem;
  font-size: clamp(0.8rem, 1.1vw, 0.95rem);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #d6b35f;
  line-height: 1.4;
}

.etl-section--hero h1 {
  margin: 0 0 1.35rem;
  font-size: clamp(2.4rem, 5.4vw, 5.4rem);
  line-height: 0.98;
  font-weight: 700;
  color: #ffffff;
  max-width: 11ch;
  letter-spacing: -0.04em;
}

.etl-section--hero .etl-lead {
  margin: 0 0 2.2rem;
  font-size: clamp(1.05rem, 1.45vw, 1.35rem);
  line-height: 1.75;
  color: rgba(232, 238, 244, 0.92);
  max-width: 46rem;
}

.etl-section--hero .etl-lead strong {
  color: #ffffff;
  font-weight: 700;
}

/* =========================
   HERO IMAGE
========================= */

.etl-hero-media {
  margin: 0;
  min-width: 0;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(255, 255, 255, 0.14);
  transform: translateY(0);
}

.etl-hero-img {
  display: block;
  width: 100%;
  height: clamp(320px, 42vw, 620px);
  object-fit: cover;
  object-position: center;
}

/* =========================
   BUTTONS
========================= */

.etl-btn-group {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center !important;
}

.etl-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0.95rem 1.75rem;
  border-radius: 999px;
  font-size: clamp(0.95rem, 1.2vw, 1.05rem);
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  line-height: 1.3;
  transition: 0.25s ease;
  max-width: 100%;
}

.etl-btn--primary {
  background: #d6a72f;
  color: #111827;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.25);
}

.etl-btn--primary:hover,
.etl-btn--primary:focus {
  color: #111827;
  background: #e4b946;
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.32);
}

.etl-btn--secondary {
  background: rgba(255, 255, 255, 0.06);
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.45);
}

.etl-btn--secondary:hover,
.etl-btn--secondary:focus {
  color: #ffffff;
  border-color: #ffffff;
  background: rgba(255, 255, 255, 0.12);
}

/* =========================
   TABLET
========================= */

@media (max-width: 899px) {
  .etl-section--hero {
    min-height: auto;
    padding-top: clamp(4rem, 10vw, 6rem);
    padding-bottom: clamp(4rem, 10vw, 6rem);
  }

  .etl-hero-content {
    max-width: 100%;
    text-align: center;
    margin: 0 auto;
  }

  .etl-section--hero h1 {
    max-width: 12ch;
    margin-left: auto;
    margin-right: auto;
    font-size: clamp(2.6rem, 8vw, 4.3rem);
  }

  .etl-section--hero .etl-lead {
    max-width: 46rem;
    margin-left: auto;
    margin-right: auto;
  }

  .etl-btn-group {
    justify-content: center;
  }

  .etl-hero-media {
    max-width: 760px;
    margin: 0 auto;
  }

  .etl-hero-img {
    height: clamp(300px, 55vw, 460px);
  }
}

/* =========================
   MOBILE
========================= */

@media (max-width: 600px) {
  .etl-section--hero {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .etl-container {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .etl-hero-grid {
    gap: 2rem;
  }

  .etl-hero-content,
  .etl-hero-content .etl-eyebrow,
  .etl-hero-content h1,
  .etl-hero-content .etl-lead,
  .etl-hero-content p {
    text-align: center !important;
  }

  .etl-section--hero h1 {
    max-width: 100%;
    font-size: clamp(2.15rem, 12vw, 3rem);
    line-height: 1.05;
  }

  .etl-section--hero .etl-lead {
    font-size: 1rem;
    line-height: 1.7;
    margin-bottom: 1.75rem;
  }

  .etl-btn-group {
    flex-direction: column;
    align-items: stretch !important;
    gap: 0.85rem;
  }

  .etl-btn {
    width: 100%;
  }

  .etl-hero-media {
    border-radius: 16px;
  }

  .etl-hero-img {
    height: clamp(230px, 68vw, 330px);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-613c363 *//* ----- Section 2: Trust bar ----- */
.etl-section--trust {
  background: #ffffff;
  border-bottom: 1px solid #e2e0db;
  padding-top: clamp(1.25rem, 4vw, 1.75rem);
  padding-bottom: clamp(1.25rem, 4vw, 1.75rem);
}

.etl-trust-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: clamp(1rem, 3vw, 1.5rem);
  grid-template-columns: 1fr;
}

@media (min-width: 480px) {
  .etl-trust-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 900px) {
  .etl-trust-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem 2rem;
  }
}

.etl-trust-item {
  margin: 0;
  padding: clamp(0.75rem, 2vw, 1rem) clamp(0.5rem, 2vw, 0.75rem);
  text-align: center;
  min-width: 0;
}

@media (min-width: 900px) {
  .etl-trust-item {
    text-align: left;
    padding-left: 0;
    padding-right: 0;
  }

  .etl-trust-item:not(:last-child) {
    border-right: 1px solid #e2e0db;
    padding-right: clamp(1rem, 2vw, 1.5rem);
  }

  .etl-trust-item:not(:first-child) {
    padding-left: clamp(1rem, 2vw, 1.5rem);
  }
}

.etl-trust-label {
  display: block;
  font-weight: 700;
  font-size: clamp(0.9375rem, 2vw, 1rem);
  color: #1a2332;
  line-height: 1.3;
  margin-bottom: 0.25rem;
}

.etl-trust-detail {
  display: block;
  font-size: clamp(0.8125rem, 2vw, 0.9rem);
  color: #3d4f66;
  line-height: 1.45;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a3a3863 *//* ==========================================
   SERVICES SECTION
========================================== */

.etl-section--services{
    background:#f8f6f2;
    padding:110px 0;
}

.etl-section--services .etl-container{
    max-width:1450px;
    margin:0 auto;
    padding:0 clamp(1.5rem,5vw,4rem);
}

/* ==========================================
   HEADING
========================================== */

.etl-section--services h2{
    text-align:center;
    font-size:clamp(2.3rem,4vw,3.8rem);
    line-height:1.1;
    color:#16253b;
    margin-bottom:25px;
    font-weight:700;
}

.etl-intro1{
    max-width:900px;
    margin:0 auto 70px;
    text-align:center;
    font-size:1.15rem;
    line-height:1.9;
    color: #111 !important;
}

.etl-intro {
    color: #e4b946 !important;
}

/* ==========================================
   GRID
========================================== */

.etl-card-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:35px;

    align-items:stretch;

}

/* ==========================================
   CARD
========================================== */

.etl-card{

    background:#ffffff;

    border-radius:18px;

    padding:40px 34px;

    display:flex;

    flex-direction:column;

    position:relative;

    overflow:hidden;

    border:1px solid #ece7dd;

    transition:.35s ease;

    box-shadow:
    0 8px 25px rgba(0,0,0,.05);

}

.etl-card::before{

    content:"";

    position:absolute;

    left:0;
    top:0;

    width:100%;

    height:5px;

    background:#b8860b;

}

.etl-card:hover{

    transform:translateY(-10px);

    box-shadow:
    0 25px 60px rgba(0,0,0,.12);

}

/* ==========================================
   TITLE
========================================== */

.etl-card-title{

    margin-bottom:22px;

    font-size:1.9rem;

    line-height:1.2;

}

.etl-card-title a{

    color:#16253b;

    text-decoration:none;

    transition:.3s;

}

.etl-card:hover .etl-card-title a{

    color:#b8860b;

}

/* ==========================================
   TEXT
========================================== */

.etl-card p{

    color:#555;

    line-height:1.8;

    margin-bottom:30px;

    flex-grow:1;

}

/* ==========================================
   LIST
========================================== */

.etl-card-list{

    list-style:none;

    margin:0 0 35px;

    padding:0;

}

.etl-card-list li{

    position:relative;

    padding-left:28px;

    margin-bottom:14px;

    color:#444;

    line-height:1.6;

}

.etl-card-list li::before{

    content:"✓";

    position:absolute;

    left:0;

    top:0;

    color:#b8860b;

    font-weight:700;

}

/* ==========================================
   BUTTON
========================================== */

.etl-btn--text{

    margin-top:auto;

    display:inline-flex;

    align-items:center;

    font-weight:700;

    text-decoration:none;

    color:#16253b;

    transition:.3s;

}

.etl-btn--text::after{

    content:"→";

    margin-left:10px;

    transition:.3s;

}

.etl-btn--text:hover{

    color:#b8860b;

}

.etl-btn--text:hover::after{

    transform:translateX(6px);

}

/* ==========================================
   FOOT NOTE
========================================== */

.etl-note{

    margin:70px auto 0;

    max-width:850px;

    text-align:center;

    color:#666;

    font-size:1.05rem;

    line-height:1.9;

}

.etl-note a{

    color:#16253b;

    font-weight:700;

}

.etl-note a:hover{

    color:#b8860b;

}

/* ==========================================
   LARGE TABLETS
========================================== */

@media (max-width:1200px){

.etl-card-grid{

    grid-template-columns:repeat(2,1fr);

    gap:30px;

}

}

/* ==========================================
   TABLETS
========================================== */

@media (max-width:768px){

.etl-section--services{

    padding:80px 0;

}

.etl-intro{

    margin-bottom:50px;

}

.etl-card{

    padding:34px 28px;

}

.etl-card-title{

    font-size:1.7rem;

}

}

/* ==========================================
   MOBILE
========================================== */

@media (max-width:640px){

.etl-card-grid{

    grid-template-columns:1fr;

}

.etl-section--services{

    padding:60px 0;

}

.etl-section--services h2{

    font-size:2.2rem;

}

.etl-intro{

    font-size:1rem;

}

.etl-card{

    padding:30px 24px;

    border-radius:14px;

}

.etl-card-title{

    font-size:1.55rem;

}

.etl-card p{

    font-size:.98rem;

}

.etl-note{

    margin-top:50px;

    font-size:1rem;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a27e1d1 *//* ----- Section 4: Areas served ----- */
.etl-section--areas {
  background: #ffffff;
  border-top: 1px solid #e2e0db;
  border-bottom: 1px solid #e2e0db;
  padding-top: clamp(2.5rem, 6vw, 4rem);
  padding-bottom: clamp(2.5rem, 6vw, 4rem);
}

.etl-split {
  display: grid;
  gap: clamp(1.75rem, 4vw, 2.5rem);
  align-items: start;
}

@media (min-width: 768px) {
  .etl-split {
    grid-template-columns: 1fr minmax(280px, 38%);
    gap: clamp(2rem, 5vw, 3rem);
    align-items: stretch;
  }
}

.etl-split-main {
  min-width: 0;
}

.etl-section--areas h2 {
  margin: 0 0 1rem;
  font-size: clamp(1.5rem, 4vw, 2rem);
  line-height: 1.25;
  font-weight: 700;
  color: #1a2332;
}

.etl-split-main p {
  margin: 0 0 1rem;
  font-size: clamp(1rem, 2.5vw, 1.0625rem);
  line-height: 1.65;
  color: #3d4f66;
}

.etl-split-main p strong {
  color: #1a2332;
  font-weight: 600;
}

.etl-split-main p:last-of-type {
  margin-bottom: 0;
}

.etl-split-main a {
  color: #2d6a4f;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.etl-split-main a:hover,
.etl-split-main a:focus {
  color: #40916c;
}

/* Location tags */
.etl-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0 0 1.25rem !important;
  padding: 0;
}

.etl-tag {
  display: inline-block;
  background: #d8f3dc;
  color: #2d6a4f;
  font-size: clamp(0.75rem, 2vw, 0.8125rem);
  font-weight: 600;
  padding: 0.4rem 0.85rem;
  border-radius: 999px;
  line-height: 1.3;
  white-space: nowrap;
}

/* Highlight box */
.etl-highlight-box {
  margin: 0;
  background: #d8f3dc;
  border-radius: 12px;
  padding: clamp(1.5rem, 4vw, 2rem);
  border-left: 4px solid #2d6a4f;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.etl-highlight-box h3 {
  margin: 0 0 0.75rem;
  font-size: clamp(1.125rem, 2.5vw, 1.25rem);
  line-height: 1.3;
  font-weight: 700;
  color: #1a2332;
}

.etl-highlight-box p {
  margin: 0 0 1.25rem;
  font-size: clamp(0.9375rem, 2vw, 1rem);
  line-height: 1.6;
  color: #3d4f66;
  flex-grow: 1;
}

/* Primary button on light background (Section 4+) */
.etl-btn--on-light.etl-btn--primary {
  background: #2d6a4f;
  color: #ffffff;
  box-shadow: 0 4px 14px rgba(45, 106, 79, 0.25);
  align-self: flex-start;
  width: auto;
  max-width: 100%;
}

.etl-btn--on-light.etl-btn--primary:hover,
.etl-btn--on-light.etl-btn--primary:focus {
  color: #ffffff;
  background: #40916c;
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(45, 106, 79, 0.3);
}

@media (max-width: 480px) {
  .etl-highlight-box .etl-btn--on-light.etl-btn--primary {
    width: 100%;
    text-align: center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4d27396 *//* ----- Section 7: FAQ ----- */
.etl-section--faq {
  background: #faf8f4;
  padding-top: clamp(2.5rem, 6vw, 4rem);
  padding-bottom: clamp(2.5rem, 6vw, 4rem);
}

.etl-faq-header {
  margin-bottom: clamp(1.75rem, 4vw, 2.5rem);
  max-width: 52rem;
}

.etl-section--faq h2 {
  margin: 0 0 1rem;
  font-size: clamp(1.5rem, 4vw, 2rem);
  line-height: 1.25;
  font-weight: 700;
  color: #1a2332;
}

.etl-faq-header .etl-intro2 {
  margin: 0;
  font-size: clamp(1rem, 2.5vw, 1.0625rem);
  line-height: 1.65;
  color: #3d4f66;
}

.etl-faq-header .etl-intro a {
  color: #2d6a4f;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.etl-faq-header .etl-intro a:hover,
.etl-faq-header .etl-intro a:focus {
  color: #40916c;
}

.etl-faq-list {
  max-width: 52rem;
}

.etl-faq-item {
  background: #ffffff;
  border: 1px solid #e2e0db;
  border-radius: 12px;
  margin-bottom: 0.75rem;
  padding: 0;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(26, 35, 50, 0.04);
}

.etl-faq-item:last-child {
  margin-bottom: 0;
}

.etl-faq-item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: clamp(1rem, 3vw, 1.25rem) clamp(1.125rem, 3vw, 1.5rem);
  font-size: clamp(0.9375rem, 2.5vw, 1.0625rem);
  font-weight: 600;
  color: #1a2332;
  line-height: 1.4;
  cursor: pointer;
  list-style: none;
  min-width: 0;
}

.etl-faq-item summary::-webkit-details-marker {
  display: none;
}

.etl-faq-item summary::after {
  content: "+";
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #d8f3dc;
  color: #2d6a4f;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  transition: transform 0.2s ease, background 0.2s ease;
}

.etl-faq-item[open] summary::after {
  content: "−";
  background: #2d6a4f;
  color: #ffffff;
}

.etl-faq-item summary:hover,
.etl-faq-item summary:focus {
  color: #2d6a4f;
  outline: none;
}

.etl-faq-answer {
  padding: 0 clamp(1.125rem, 3vw, 1.5rem) clamp(1rem, 3vw, 1.25rem);
  border-top: 1px solid #e2e0db;
}

.etl-faq-answer p {
  margin: clamp(0.75rem, 2vw, 1rem) 0 0;
  font-size: clamp(0.9375rem, 2vw, 1rem);
  line-height: 1.65;
  color: #3d4f66;
}

.etl-faq-answer a {
  color: #2d6a4f;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  word-break: break-word;
}

.etl-faq-answer a:hover,
.etl-faq-answer a:focus {
  color: #40916c;
}
@media (max-width:1024px){

    .etl-faq-header{
        max-width:100%;
        margin:0 auto 2rem;
        text-align:center;
    }

    .etl-section--faq h2{
        text-align:center;
    }

    .etl-faq-header .etl-intro{
        max-width:100%;
        margin:0 auto;
        text-align:center;
    }

    .etl-faq-list{
        max-width:100%;
        margin:0 auto;
    }

    .etl-faq-item{
        margin-left:auto;
        margin-right:auto;
    }

    .etl-faq-item summary{
        position:relative;
        justify-content:center;
        text-align:center;
        padding:1.2rem 3.5rem 1.2rem 1.5rem;
    }

    .etl-faq-item summary::after{
        position:absolute;
        right:1.25rem;
        top:50%;
        transform:translateY(-50%);
    }

    .etl-faq-item[open] summary::after{
        transform:translateY(-50%);
    }

    .etl-faq-answer{
        text-align:center;
    }

    .etl-faq-answer p{
        text-align:center;
        max-width:90%;
        margin:1rem auto 0;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a3a7cff *//* ===================================================
   FINAL CTA
=================================================== */

.etl-section--cta{

    background:linear-gradient(135deg,#16253b,#243447);

}

.etl-section--cta .etl-container{

    max-width:1450px;

    margin:auto;

    padding:110px clamp(1.5rem,5vw,4rem);

}

.etl-cta-box{

    max-width:900px;

    margin:auto;

    padding:70px 60px;

    text-align:center;

    border-radius:28px;

    background:rgba(255,255,255,.06);

    border:1px solid rgba(255,255,255,.12);

    backdrop-filter:blur(10px);

}

.etl-section--cta .etl-section-label{

    display:inline-block;

    color:#d4af37;

    text-transform:uppercase;

    letter-spacing:2px;

    font-weight:700;

    margin-bottom:20px;

}

.etl-section--cta h2{

    color:#fff;

    margin-bottom:28px;

    font-size:clamp(2.5rem,4vw,4.5rem);

    line-height:1.08;

}

.etl-cta-lead{

    color:rgba(255,255,255,.88);

    max-width:760px;

    margin:auto;

    font-size:1.15rem;

    line-height:1.9;

}

.etl-cta-buttons{

    display:flex;

    justify-content:center;

    gap:18px;

    flex-wrap:wrap;

    margin-top:45px;

}

.etl-cta-email{

    margin-top:35px;

    color:rgba(255,255,255,.8);

    font-size:1rem;

}

.etl-cta-email a{

    color:#d4af37;

    text-decoration:none;

    font-weight:700;

}

.etl-cta-email a:hover{

    text-decoration:underline;

}

/* ========================================
   LARGE TABLET
======================================== */

@media(max-width:1200px){

.etl-section--cta .etl-container{

    padding:90px 2.5rem;

}

.etl-cta-box{

    padding:60px 45px;

}

}

/* ========================================
   SMALL TABLET
======================================== */

@media(max-width:900px){

.etl-section--cta .etl-container{

    padding:75px 2rem;

}

.etl-cta-box{

    padding:50px 40px;

}

.etl-section--cta h2{

    font-size:3rem;

}

}

/* ========================================
   MOBILE
======================================== */

@media(max-width:600px){

.etl-section--cta .etl-container{

    padding:60px 1.25rem;

}

.etl-cta-box{

    padding:35px 22px;

}

.etl-section--cta h2{

    font-size:2.2rem;

}

.etl-cta-lead{

    font-size:1rem;

}

.etl-cta-buttons{

    flex-direction:column;

}

.etl-cta-buttons .etl-btn{

    width:100%;

}

.etl-cta-email{

    margin-top:25px;

    line-height:1.7;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-18aae63 *//* ===================================================
   REVIEWS SECTION
=================================================== */

.etl-section--reviews{

    position:relative;
    overflow:hidden;

    background:
    radial-gradient(circle at top right,
    rgba(184,134,11,.12),
    transparent 42%),

    linear-gradient(
    135deg,
    #101a28 0%,
    #16253b 55%,
    #243447 100%);

}

/* ==========================================
CONTAINER
========================================== */

.etl-section--reviews .etl-container{

    max-width:1450px;

    margin:0 auto;

    padding:110px clamp(1.5rem,5vw,4rem);

}

/* ==========================================
HEADER
========================================== */

.etl-reviews-header{

    max-width:900px;

    margin:0 auto 70px;

    text-align:center;

}

.etl-section-label{

    display:inline-block;

    color:#d4af37;

    text-transform:uppercase;

    letter-spacing:2px;

    font-weight:700;

    font-size:.9rem;

    margin-bottom:18px;

}

.etl-reviews-header h2{

    margin:0 0 24px;

    color:#ffffff;

    font-size:clamp(2.8rem,4vw,4.6rem);

    line-height:1.08;

}

.etl-intro{

    color:rgba(255,255,255,.84) !important;

    font-size:1.08rem;

    line-height:1.9;

}

/* ==========================================
FULL WIDTH MARQUEE
========================================== */

.etl-reviews-marquee{

    position:relative;

    overflow:hidden;

    width:100vw;

    left:50%;

    right:50%;

    margin-left:-50vw;

    margin-right:-50vw;

    margin-top:25px;

}

/* ==========================================
EDGE FADES
========================================== */

.etl-reviews-marquee:before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:220px;

    height:100%;

    z-index:100;

    pointer-events:none;

    background:linear-gradient(
    to right,
    #16253b 0%,
    rgba(22,37,59,.96) 22%,
    rgba(22,37,59,.55) 55%,
    transparent 100%);

}

.etl-reviews-marquee:after{

    content:"";

    position:absolute;

    right:0;

    top:0;

    width:220px;

    height:100%;

    z-index:100;

    pointer-events:none;

    background:linear-gradient(
    to left,
    #16253b 0%,
    rgba(22,37,59,.96) 22%,
    rgba(22,37,59,.55) 55%,
    transparent 100%);

}

/* ==========================================
TRACK
========================================== */

.etl-reviews-track{

    display:flex;

    align-items:stretch;

    gap:34px;

    width:max-content;

    padding:25px 70px;

    animation:reviewLoop 95s linear infinite;

    will-change:transform;

}

.etl-reviews-marquee:hover .etl-reviews-track{

    animation-play-state:paused;

}

/* ==========================================
CARD
========================================== */

.etl-review-card{

    width:380px;

    display:flex;

    flex-direction:column;

    justify-content:flex-start;

    flex-shrink:0;

    background:#ffffff;

    border-radius:24px;

    padding:34px;

    border:1px solid rgba(0,0,0,.05);

    box-shadow:

    0 20px 50px rgba(0,0,0,.20);

    transition:

    transform .35s ease,

    box-shadow .35s ease;

}

.etl-review-card:hover{

    transform:translateY(-8px);

    box-shadow:

    0 30px 70px rgba(0,0,0,.30);

}

/* ==========================================
TOP
========================================== */

.etl-review-top{

    display:flex;

    align-items:center;

    gap:18px;

    margin-bottom:22px;

}

/* ==========================================
AVATAR
========================================== */

.etl-review-avatar{

    width:70px;

    height:70px;

    border-radius:50%;

    background:linear-gradient(
    135deg,
    #16253b,
    #243447);

    color:#d4af37;

    display:flex;

    justify-content:center;

    align-items:center;

    font-weight:700;

    font-size:1.15rem;

    flex-shrink:0;

    box-shadow:

    0 10px 25px rgba(0,0,0,.20);

}

/* ==========================================
TEXT
========================================== */

.etl-review-top h3{

    margin:0;

    color:#16253b;

    font-size:1.18rem;

}

.etl-review-top span{

    display:block;

    margin-top:6px;

    color:#8c8c8c;

    font-size:.92rem;

}

.etl-stars{

    color:#d4af37;

    font-size:1.12rem;

    letter-spacing:4px;

    margin-bottom:18px;

}

.etl-review-card p{

    margin:0;

    color:#555;

    line-height:1.9;

    font-size:1rem;

}

/* ==========================================
ANIMATION
========================================== */

@keyframes reviewLoop{

    from{

        transform:translateX(0);

    }

    to{

        transform:translateX(-50%);

    }

}


/* ===================================================
   LARGE DESKTOP
=================================================== */

@media (min-width:1600px){

    .etl-review-card{

        width:400px;

    }

}

/* ===================================================
   LARGE TABLET
=================================================== */

@media (max-width:1200px){

    .etl-section--reviews .etl-container{

        padding:90px 2.5rem;

    }

    .etl-reviews-header{

        margin-bottom:60px;

    }

    .etl-review-card{

        width:340px;

        padding:30px;

    }

    .etl-reviews-track{

        gap:28px;

        padding:22px 40px;

        animation-duration:85s;

    }

    .etl-reviews-marquee::before,

    .etl-reviews-marquee::after{

        width:120px;

    }

}

/* ===================================================
   SMALL TABLET
=================================================== */

@media (max-width:900px){

    .etl-section--reviews .etl-container{

        padding:75px 2rem;

    }

    .etl-reviews-header{

        margin-bottom:50px;

    }

    .etl-reviews-header h2{

        font-size:2.8rem;

    }

    .etl-intro{

        font-size:1rem;

    }

    .etl-review-card{

        width:315px;

        padding:28px;

    }

    .etl-review-avatar{

        width:62px;

        height:62px;

        font-size:1rem;

    }

    .etl-review-top{

        gap:15px;

    }

    .etl-review-top h3{

        font-size:1.05rem;

    }

    .etl-review-top span{

        font-size:.85rem;

    }

    .etl-review-card p{

        font-size:.95rem;

        line-height:1.8;

    }

    .etl-reviews-track{

        gap:24px;

        padding:18px 25px;

        animation-duration:80s;

    }

    .etl-reviews-marquee::before,

    .etl-reviews-marquee::after{

        width:80px;

    }

}

/* ===================================================
   MOBILE
=================================================== */

@media (max-width:600px){

    .etl-section--reviews .etl-container{

        padding:60px 1.25rem;

    }

    .etl-reviews-header{

        margin-bottom:40px;

    }

    .etl-reviews-header h2{

        font-size:2.15rem;

        line-height:1.15;

    }

    .etl-intro{

        font-size:.98rem;

        line-height:1.8;

    }

    .etl-review-card{

        width:285px;

        padding:24px;

        border-radius:20px;

    }

    .etl-review-avatar{

        width:56px;

        height:56px;

        font-size:.95rem;

    }

    .etl-review-top{

        gap:14px;

        margin-bottom:18px;

    }

    .etl-review-top h3{

        font-size:1rem;

    }

    .etl-review-top span{

        font-size:.8rem;

    }

    .etl-stars{

        font-size:1rem;

        letter-spacing:3px;

        margin-bottom:16px;

    }

    .etl-review-card p{

        font-size:.92rem;

        line-height:1.75;

    }

    .etl-reviews-track{

        gap:18px;

        padding:15px 15px;

        animation-duration:75s;

    }

    .etl-reviews-marquee::before,

    .etl-reviews-marquee::after{

        width:40px;

    }

}

/* ===================================================
   VERY SMALL PHONES
=================================================== */

@media (max-width:380px){

    .etl-review-card{

        width:260px;

        padding:20px;

    }

    .etl-review-avatar{

        width:50px;

        height:50px;

    }

    .etl-reviews-track{

        gap:15px;

        animation-duration:70s;

    }

    .etl-reviews-marquee::before,

    .etl-reviews-marquee::after{

        width:25px;

    }

}/* End custom CSS */