/** Shopify CDN: Minification failed

Line 760:0 Expected "}" to go with "{"

**/
/* ✅ General Page Styling */
.page-width {
    max-width: 1200px;
    margin: 0 auto;
}

/* --- Full-Width Text Sections --- */
/* ✅ These sections stretch the full width of the viewport */
.custom-fw-text, .custom-fw-blue-text, .custom-fw-gray, .custom-fw-blue {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding: 20px 0;
}

/* --- Full-Width Dark Section (White Text) --- */
.custom-fw-dark {
  background-color: #212A35; /* Dark background */
  color: white; /* White text */
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding: 30px 0;
}

.custom-fw-dark .custom-cw {
  max-width: 1200px;
  width: 95%;
  margin: 0 auto;
  text-align: center;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.5;
}

/* ✅ Mobile Padding Adjustment */
@media (max-width: 768px) {
  .fw-dark .cw {
    padding-left: 15px;
    padding-right: 15px;
  }
}


/* ✅ Full-Width Text (Inside Content, Left-Aligned) */
.custom-fw-text .custom-cw {
  max-width: 1200px; /* Keeps content width consistent */
  width: 95%;
  margin: 0 auto;
  text-align: left;
  box-sizing: border-box;
}

/* ✅ Full-Width Blue Section (Centered White Text) */
.custom-fw-blue-text {
  background-color: #2dc2e8; /* Brand blue */
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding: 30px 0;
}

.custom-fw-blue-text .custom-cw {
  max-width: 1200px;
  width: 95%;
  margin: 0 auto;
  text-align: center;
  color: white;
  font-size: 18px;
  line-height: 1.5;
}

/* ✅ Full-Width Gray Section (Centered Blue Text) */
.custom-fw-gray-text {
  background-color: #f0f0f0; /* Light gray */
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding: 30px 0;
}

.custom-fw-gray-text .custom-cw {
  max-width: 1200px;
  width: 95%;
  margin: 0 auto;
  text-align: center;
  color: #2dc2e8; /* Brand blue */
  font-size: 18px;
  line-height: 1.5;
}

/* ✅ Full-Width Gray & Light Blue Backgrounds */
.custom-fw-gray {
  background-color: #f0f0f0;
}

.custom-fw-blue {
  background-color: #eaf8fd;
}

/* ✅ Keeps content inside the normal width */
.custom-fw-gray .custom-cw, .custom-fw-blue .custom-cw, .custom-fw-blue-text .custom-cw {
  max-width: 1200px;
  width: 95%;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}

/* ✅ Add Mobile Padding to Prevent Edge Touching */
@media (max-width: 768px) {
  .custom-fw-gray .custom-cw, .custom-fw-blue .custom-cw, .custom-fw-blue-text .custom-cw, .custom-fw-text .custom-cw {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/* --- Full-Width Pull Quote (Inside Content Area) --- */
.custom-fw-quote {
  width: 100%;
  padding: 30px 0;
  text-align: left;
  font-size: 24px;
  font-style: italic;
  font-weight: 600;
  border-left: 6px solid #2dc2e8;
  padding-left: 20px;
  line-height: 1.5;
}

.custom-attribution {
  display: block;
  text-align: right;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  margin-top: 10px;
}

/* --- Blog Sections (Left & Right Aligned Images) --- */
.custom-cbr, .custom-cbl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 20px 0; /* ✅ Increased space between text and image */
}

.custom-cbr-t, .custom-cbl-t {
  flex: 1;
  padding: 15px; /* ✅ Adds padding around text */
}

.custom-cbr-i, .custom-cbl-i {
  flex: 0 0 40%;
  padding: 15px; /* ✅ Adds padding around images */
  text-align: center;
}

.custom-cbr-i img, .custom-cbl-i img {
  width: 70%;
}

.custom-cbr-c, .custom-cbl-c {
  margin-top: -8px;
  font-size: 18px;}

/* ✅ Mobile Fix for Blog Sections */
@media (max-width: 768px) {
  .custom-cbr, .custom-cbl {
    flex-direction: column;
  }

  .custom-cbr-i, .custom-cbl-i {
    order: 2;
  }

  .custom-cbr-t, .custom-cbl-t {
    order: 1;
  }
}

/* --- Ordered & Unordered Lists --- */
.custom-ol, .custom-ul {
  list-style: none;
  padding-left: 0;
}

.custom-ol li {
  counter-increment: list-counter;
  margin: 10px 0;
  font-size: 18px;
  padding-left: 35px;
  position: relative;
}

.custom-ol li::before {
  content: counter(list-counter) ".";
  position: absolute;
  left: 0;
  color: #2dc2e8;
  font-weight: bold;
  font-size: 18px;
}

.custom-ul li {
  margin: 10px 0;
  padding-left: 25px;
  position: relative;
}

.custom-ul li::before {
  content: "•";
  position: absolute;
  left: 0;
  color: #2dc2e8;
  font-size: 18px;
  font-weight: bold;
}

/* --- General Multi-Column Layouts --- */
.custom-cols-2, .custom-cols-3, .custom-c2-wn, .custom-c2-nw {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

/* ✅ Two & Three Column Layouts */
.custom-cols-2 .custom-col, .custom-cols-3 .custom-col {
  flex: 1;
}

.custom-cols-2 .custom-col {
  min-width: 200px;
}

.custom-cols-3 .custom-col {
  min-width: 220px;
}

/* ✅ Wide-Narrow & Narrow-Wide Two Column Layouts */
.custom-c2-wn .custom-cw, .custom-c2-nw .custom-cw {
  flex: 2;
  min-width: 60%;
}

.custom-c2-wn .custom-cn, .custom-c2-nw .custom-cn {
  flex: 1;
  min-width: 30%;
}

/* ✅ Stack to single column on mobile (Prevents large gaps) */
@media (max-width: 768px) {
  .custom-cols-2, .custom-cols-3, .custom-c2-wn, .custom-c2-nw {
    flex-direction: column;
    gap: 5px;
  }

  .custom-cols-2 .custom-col, .custom-cols-3 .custom-col, 
  .custom-c2-wn .custom-cw, .custom-c2-wn .custom-cn,
  .custom-c2-nw .custom-cw, .custom-c2-nw .custom-cn {
    min-width: 100%;
  }

  /* ✅ Remove extra bottom margin inside columns */
  .custom-cols-2 .custom-col > *, .custom-cols-3 .custom-col > *, 
  .custom-c2-wn .custom-cw > *, .custom-c2-wn .custom-cn > *,
  .custom-c2-nw .custom-cw > *, .custom-c2-nw .custom-cn > * {
    margin-bottom: 5px;
  }
}


/* ✅ Section Title (Centered) */
.custom-h2 {
  font-size: 3.0rem;
  color: #2dc2e8;
  text-align: center;
  line-height: 1.2;
  margin-bottom: 20px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.custom-cw a {
  color: #2dc2e8;
  text-decoration: none; 
}

.custom-cw a:hover {
    color: #2dc2e8;
  text-decoration: underline; 
}

/* --- General Page Styling --- */
.custom-pw {
  max-width: 1200px;
  width: 95%;
  margin: 0 auto;
}

/* ✅ Two-Column Layout for custom */
.custom-cols-2 {
  display: flex;
  flex-wrap: wrap;
  align-items: center; /* Ensures vertical centering */
  justify-content: center;
  gap: 10px; /* Adds spacing */
}

/* ✅ Individual Columns */
.custom-cols-2 .custom-col {
  flex: 1;
  min-width: 200px;
  display: flex;
  flex-direction: column;
  justify-content: center; /* Vertically centers content */
  align-items: center; /* Centers items */
  text-align: center;
  padding: 20px; /* Adds some spacing */
}

/* ✅ Large, Centered Review Text */
.custom-cols-2 .custom-col p {
  font-size: 3.5rem !important; /* Make text large */
  color: #2dc2e8 !important; /* Brand blue */
  font-weight: 800 !important; /* Maximum bold */
  text-align: center !important; /* Center text */
  line-height: 1.4 !important; /* Improve readability */
  margin-bottom: 5px !important; /* Reduce spacing */
  display: flex;
  align-items: center; /* Ensures true vertical centering */
  height: 100%; /* Helps maintain centering */
}

/* ✅ Image Styling */
.custom-cols-2 .custom-col img {
  max-width: 30%; /* Reduce image size */
  height: auto; /* Keep aspect ratio */
  display: block; /* Prevents extra spacing */
  margin: 0 auto; /* Centers image */
}

/* ✅ Right-Aligned Attribution Text */
.custom-cols-2 .custom-col .custom-attribution-text {
  text-align: right !important; /* Align right */
  font-size: 18px !important; /* Adjust font size */
  font-style: normal !important; /* Remove italics */
  font-weight: 600 !important; /* Slightly bold */
  display: block !important; /* Ensures correct spacing */
  margin-top: 0px !important; /* Remove extra space above */
  width: 90% !important; /* Ensure proper alignment */
}

/* ✅ Mobile Optimization */
@media (max-width: 768px) {
  .custom-cols-2 {
    flex-direction: column;
    gap: 10px; /* Reduce space */
  }

  .custom-cols-2 .custom-col {
    width: 100%;
  }

  .custom-cols-2 .custom-col p {
    font-size: 18px !important; /* Slightly reduce text size */
  }

  .custom-cols-2 .custom-col img {
    max-width: 30%; /* Slightly increase image size */
  }
}

/* ✅ Ensures text is large, blue, bold, and vertically centered */
.custom-c2-wn .custom-cw p {
  font-size: 3.5rem !important; /* Large text */
  color: #2dc2e8 !important; /* Brand blue */
  font-weight: 800 !important; /* Extra bold */
  text-align: center !important; /* Center text */
  line-height: 1.4 !important; /* Improve readability */
  margin-bottom: 5px !important; /* Reduce spacing */
  height: 100%; /* Helps maintain centering */
  display: flex !important;
  align-items: center !important; /* Ensures vertical centering */
  justify-content: center !important; /* Centers horizontally */
}

/* ✅ Attribution Styling - Right-aligned */
.custom-c2-wn .custom-cw .custom-attribution-text {
  text-align: right !important; /* Right align */
  font-size: 18px !important; /* Adjusted font size */
  font-style: normal !important; /* No italics */
  font-weight: 600 !important; /* Slightly bold */
  display: block !important; /* Proper spacing */
  margin-top: 0px !important; /* No extra spacing */
  width: 100% !important; /* Ensures full width */
}

.custom-c2-wn .custom-cw .custom-attribution-text-2 {
  text-align: right !important; /* Right align */
  font-size: 18px !important; /* Adjusted font size */
  font-style: normal !important; /* No italics */
  font-weight: 600 !important; /* Slightly bold */
  display: block !important; /* Proper spacing */
  margin-top: 20px !important; /* No extra spacing */
  width: 100% !important; /* Ensures full width */
}


/* ✅ Image Adjustments */
.custom-c2-wn .custom-cn img {
  max-width: 30% !important; /* Reduce image size */
  height: auto !important; /* Maintain aspect ratio */
  display: block !important; /* Remove spacing issues */
  margin: 0 auto !important; /* Center the image */
}

.custom-c2-wn, .custom-cols-2 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px; /* Ensures proper spacing */
}

.custom-c2-wn .custom-cw,
.custom-c2-wn .custom-cn,
.custom-cols-2 .custom-col {
  flex: 1;
  min-width: 200px;
  display: flex;
  flex-direction: column;
  justify-content: center; /* Ensures vertical alignment */
  align-items: center;
  text-align: center;
}

.custom-c2-wn::after {
  content: "";
  display: block;
  clear: both;
}

/* ✅ New Reversed Review Section */
.custom-cbl-reversed {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin: 20px 0;
}

.custom-cbl-reversed .custom-cbl-i {
  flex: 0 0 40%;
  padding: 15px;
  text-align: center;
}

.custom-cbl-reversed .custom-cbl-i img {
  width: 100%;
  height: auto;
  display: block;
}

.custom-cbl-reversed .custom-cbl-t {
  flex: 1;
  padding: 15px;
}

.custom-cbl-reversed .custom-h2 {
  font-size: 3.0rem;
  color: #2dc2e8;
  text-align: center;
  line-height: 1.2;
  margin-bottom: 20px;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}

.custom-cbl-reversed .custom-p {
  font-size: 18px;
  text-align: left;
  line-height: 1.5;
  max-width: 100%;
  margin-bottom: 10px;
}

.custom-p {
  font-size: 18px;
  text-align: left;
  line-height: 1.5;
  max-width: 100%;
  margin-bottom: 10px;
}

.custom-cbl-reversed .custom-attribution {
  font-size: 18px;
  font-weight: 500;
  text-align: right;
  margin-top: 10px;
}

/* ✅ Mobile Optimization */
@media (max-width: 768px) {
  .custom-cbl-reversed {
    flex-direction: column;
    text-align: center;
  }

  .custom-cbl-reversed .custom-cbl-i,
  .custom-cbl-reversed .custom-cbl-t {
    flex: 1;
    width: 100%;
    padding: 10px;
  }

  .custom-cbl-reversed .custom-h2 {
    font-size: 3.0rem;
  }
}

/* ✅ Boxed Review with Image */
.custom-boxed-image {
  display: flex;
  align-items: center; /* Aligns image and text */
  background-color: #f8f8f8; /* Soft gray background */
  border-left: 5px solid #2dc2e8; /* Brand accent */
  padding: 20px;
  border-radius: 5px; /* Rounded corners */
  max-width: 800px; /* Keeps it nicely contained */
  margin: 20px auto; /* Center it */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Soft shadow for depth */
  gap: 15px; /* Adds spacing between image and text */
}

/* ✅ Image Styling */
.custom-boxed-image img {
  width: 30%; /* Image takes up about 20% */
  height: auto;
  border-radius: 5px; /* Soft rounded corners */
  display: block;
}

/* ✅ Review Text */
.custom-boxed-image .custom-text {
  font-size: 18px;
  color: #2dc2e8;
  font-weight: 500;
  text-align: left;
  line-height: 1.5;
  flex: 1; /* Allows text to fill the rest of the space */
}

/* ✅ Attribution */
.custom-boxed-image .custom-attribution-boxed {
  font-size: 18px;
  text-align: right;
  margin-top: 5px;
  margin-right:15px;
}

/* ✅ Boxed Review with Image on Right */
.custom-boxed-image-right {
  display: flex;
  align-items: center; /* Aligns image and text */
  background-color: #f8f8f8; /* Soft gray background */
  border-right: 5px solid #2dc2e8; /* Brand accent on the right */
  padding: 20px;
  border-radius: 5px; /* Rounded corners */
  max-width: 800px; /* Keeps it nicely contained */
  margin: 20px auto; /* Center it */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Soft shadow for depth */
  gap: 15px; /* Adds spacing between image and text */
  flex-direction: row-reverse; /* Flips image to the right */
}

/* ✅ Image Styling */
.custom-boxed-image-right img {
  width: 30%; /* Image takes up about 30% */
  height: auto;
  border-radius: 5px; /* Soft rounded corners */
  display: block;
}

/* ✅ Review Text */
.custom-boxed-image-right .custom-text {
  font-size: 18px;
  color: #2dc2e8;
  font-weight: 500;
  text-align: left;
  line-height: 1.5;
  flex: 1; /* Allows text to fill the rest of the space */
  margin-left:15px;
}

/* ✅ Attribution */
.custom-boxed-image-right .custom-attribution-boxed {
  font-size: 18px;
  text-align: right;
  margin-top: 5px;
  margin-right: 15px;
}

.custom-col video {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ✅ New Class to Align Image at the Top */
.custom-cbr-top {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start; /* ✅ Ensures everything aligns at the top */
  margin-top: 0 !important; /* ✅ Prevents added space between sections */
}

.custom-cbr-top .custom-cbr-i {
  flex: 0 0 40%;
  padding: 15px;
  text-align: center;
  align-self: flex-start; /* ✅ Ensures the image stays at the top */
}

.custom-cbr-top .custom-cbr-i img {
  width: 70%;
  display: block;
  margin: 0 auto;
}

.custom-cbr-top .custom-cbr-t {
  flex: 1;
  padding: 0 15px 15px 15px !important;
    margin-bottom: -20px;
}

.custom-cbr-top .custom-cbr-t p:first-child {
  margin-top: 0 !important; /* ✅ Removes any extra top margin */
}

/* ✅ Mobile Fix for New Layout */
@media (max-width: 768px) {
  .custom-cbr-top {
    flex-direction: column;
  }

  .custom-cbr-top .custom-cbr-i {
    order: 1;
    align-self: center; /* ✅ Centers the image when stacked */
  }

  .custom-cbr-top .custom-cbr-t {
    order: 2;
  }
}

/* ✅ Hide Guarantee Image on Mobile */
@media (max-width: 768px) {
  .custom-cbr-top .custom-cbr-i {
    display: none; /* ✅ Hides the image container on smaller screens */
  }
}

/* ✅ Remove Extra Space Above Paragraphs */
.custom-cbr-t p:first-child {
  margin-top: 0; /* ✅ Removes space above the first paragraph */
}

.custom-cbr-t {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.custom-cbr-top .custom-cbr-t p:first-child {
  margin-top: 0 !important;
}

.support-help h2,
.support-help h3 {
    font-weight: 900 !important;
}

/* --- Team Bios Layout --- */
.custom-tb {
  max-width: 1000px;
  width: 95%;
  margin: 40px auto;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

/* ✅ Individual Team Member Styling */
.custom-tm {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  max-width: 1000px;
  width: 95%;
  margin: 0 auto;
  min-height: 150px; 
}

/* ✅ Team Member Image */
.custom-tm-img {
  flex: 0 0 25%;
  max-width: 200px;
  min-width: 120px; 
}

.custom-tm-img img {
  width: 100%;
  height: auto;
  border-radius: 50%;
  object-fit: cover;
  aspect-ratio: 1 / 1; 
}

/* ✅ Team Member Text */
.custom-tm-txt {
  flex: 1;
  line-height: 1.6;
  text-align: left;
  min-height: 100px; 
  width: 100%;

}

/* ✅ Team Member Name */
.custom-tm-txt h3 {
  font-weight: 700;
  margin-bottom: 8px;
}

/* ✅ Mobile Optimization */
@media (max-width: 768px) {
  .custom-tb {
    text-align: center;
  }

  .custom-tm {
    flex-direction: column;
    text-align: center;
    min-height: auto; 
  }

  .custom-tm-img {
    width: 120px;
    height: 120px;
    margin-bottom: 10px;
  }


 

