.elementor-6840 .elementor-element.elementor-element-cd74218:not(.elementor-motion-effects-element-type-background), .elementor-6840 .elementor-element.elementor-element-cd74218 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F8F8;}.elementor-6840 .elementor-element.elementor-element-cd74218{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-6840 .elementor-element.elementor-element-cd74218 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-bc-flex-widget .elementor-6840 .elementor-element.elementor-element-784897b.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-6840 .elementor-element.elementor-element-784897b.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-6840 .elementor-element.elementor-element-784897b.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-6840 .elementor-element.elementor-element-08a0057 .elementor-heading-title{color:#0D1E30;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-6840 .elementor-element.elementor-element-3a4b9d4{color:#000000;}.elementor-6840 .elementor-element.elementor-element-b08216f{color:#9EEB53;}.elementor-6840 .elementor-element.elementor-element-dacbf22:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-6840 .elementor-element.elementor-element-dacbf22 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F8F8;}.elementor-bc-flex-widget .elementor-6840 .elementor-element.elementor-element-dacbf22.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-6840 .elementor-element.elementor-element-dacbf22.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-6840 .elementor-element.elementor-element-dacbf22.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-6840 .elementor-element.elementor-element-dacbf22 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-6840 .elementor-element.elementor-element-dacbf22 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-d033a45 *//* ==========================================
   KWIK FIX CONTACT HERO
   Responsive + Animated
========================================== */

.kwik-contact-hero,
.kwik-contact-hero * {
  box-sizing: border-box;
}

.kwik-contact-hero {
  --kch-navy: #102236;
  --kch-green: #c3ff70;
  --kch-accent: #6da34d;
  --kch-text: #637c92;
  --kch-bg: #f4f7f7;

  width: 100%;
  margin: 0;
  overflow: hidden;
  background: var(--kch-bg);
  color: var(--kch-navy);
  font-family: inherit;
}

/* MAIN LAYOUT */

.kch-container {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(40px, 6vw, 78px);

  width: 100%;
  max-width: 1020px;
  margin: 0 auto;
  padding: 62px 24px 70px;
}

/* LEFT CONTENT */

.kch-content {
  min-width: 0;
  animation: kchFadeUp .8s ease both;
}

.kch-eyebrow {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 30px;

  color: #426b78;
  font-size: 9px;
  font-weight: 750;
  letter-spacing: 1.45px;
  line-height: 1.6;
}

.kch-eyebrow > span {
  display: block;
  width: 17px;
  height: 2px;
  flex-shrink: 0;
  background: #62ac49;
}

.kch-content h1 {
  margin: 0 0 20px;
  color: var(--kch-navy);

  font-size: clamp(43px, 4.4vw, 57px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -2.1px;
}

.kch-content h1 > span {
  display: block;
  color: var(--kch-accent);
}

.kch-description {
  max-width: 430px;
  margin: 0 0 25px;
  color: var(--kch-text);

  font-size: 12px;
  line-height: 2.05;
}

/* BUTTONS */

.kch-buttons {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 34px;
}

.kch-primary-btn {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  gap: 15px;

  padding: 0 19px;
  border: 0;
  border-radius: 11px;
  background: var(--kch-green);
  color: var(--kch-navy) !important;

  font-size: 10px;
  font-weight: 750;
  text-decoration: none !important;

  box-shadow: 0 0 0 rgba(195, 255, 112, 0);
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    background-color .25s ease;
}

.kch-primary-btn:hover {
  transform: translateY(-3px);
  background: #b6f65d;
  box-shadow: 0 8px 22px rgba(93, 139, 51, .17);
}

.kch-external {
  font-size: 17px;
  line-height: 1;
  transition: transform .25s ease;
}

.kch-primary-btn:hover .kch-external {
  transform: translate(3px, -3px);
}

.kch-call-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;

  color: var(--kch-navy) !important;
  font-size: 10px;
  font-weight: 700;
  text-decoration: underline !important;
  text-underline-offset: 3px;

  transition: color .25s ease;
}

.kch-call-link:hover {
  color: var(--kch-accent) !important;
}

.kch-call-link svg {
  width: 14px;
  height: 14px;
  fill: currentColor;
  stroke: none;
}

/* BENEFITS */

.kch-benefits {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;

  color: #536d80;
  font-size: 9px;
}

.kch-benefits > span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.kch-benefits i {
  color: #4eaa55;
  font-size: 16px;
  font-style: normal;
  line-height: 1;
}

/* ==========================================
   RIGHT ILLUSTRATION
========================================== */

.kch-visual {
  position: relative;
  isolation: isolate;
  width: 100%;
  aspect-ratio: 1 / 1;
  min-width: 0;

  overflow: hidden;
  border-radius: 22px;
  background: #152e44;
  color: #ffffff;

  box-shadow: 0 20px 45px rgba(16, 34, 54, .08);
  animation: kchVisualIn .9s .12s ease both;
}

/* GRID BACKGROUND */

.kch-grid-bg {
  position: absolute;
  z-index: -2;
  inset: 0;

  background-image:
    linear-gradient(rgba(151, 190, 204, .075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(151, 190, 204, .075) 1px, transparent 1px);

  background-size: 21px 21px;
  animation: kchGridDrift 16s linear infinite;
}

.kch-orbit {
  position: absolute;
  z-index: -1;
  top: 3%;
  left: 6%;
  width: 88%;
  aspect-ratio: 1;
  border: 1px solid rgba(151, 190, 204, .17);
  border-radius: 50%;
  pointer-events: none;
}

.kch-orbit-inner {
  top: 17%;
  left: 20%;
  width: 60%;
  border-color: rgba(151, 190, 204, .10);
  animation: kchOrbitPulse 5s ease-in-out infinite;
}

/* ILLUSTRATION HEADING */

.kch-visual-heading {
  position: absolute;
  z-index: 2;
  top: 12%;
  left: 8%;
  max-width: 75%;
}

.kch-visual-heading > span {
  display: block;
  margin-bottom: 13px;
  color: #a5bdc8;

  font-size: clamp(7px, .7vw, 9px);
  font-weight: 750;
  letter-spacing: 1px;
}

.kch-visual-heading h2 {
  margin: 0;
  color: #ffffff;

  font-size: clamp(18px, 2.05vw, 27px);
  font-weight: 800;
  line-height: 1.18;
  letter-spacing: -.7px;
}

/* PHONE */

.kch-phone {
  position: absolute;
  z-index: 1;
  top: 33%;
  left: 34%;

  width: 37%;
  height: 44%;
  padding: 8px;

  border: 4px solid #66818b;
  border-radius: 25px;
  background: #294954;

  transform: rotate(-8deg);
  animation: kchPhoneFloat 5s ease-in-out infinite;
}

.kch-phone-notch {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 30%;

  width: 40%;
  height: 9px;
  border-radius: 0 0 8px 8px;
  background: #0b1e2b;
}

.kch-phone-screen {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  overflow: hidden;
  border-radius: 17px;
  background: linear-gradient(145deg, #28515a, #102d41);
}

.kch-message-icon {
  display: flex;
  width: 45%;
  aspect-ratio: 1;
  align-items: center;
  justify-content: center;
  margin-bottom: 12%;

  border: 7px solid rgba(195, 255, 112, .16);
  border-radius: 50%;
  background: var(--kch-green);
  color: #122b40;

  animation: kchIconPulse 3s ease-in-out infinite;
}

.kch-message-icon svg {
  display: block;
  width: 65%;
  height: 65%;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.kch-phone-line {
  width: 64%;
  height: 4px;
  margin-bottom: 7px;
  border-radius: 5px;
  background: #9bb4b7;
  opacity: .9;
}

.kch-line-short {
  width: 46%;
  margin-right: 15%;
}

.kch-line-medium {
  width: 54%;
  margin-right: 7%;
}

/* FLOATING WHITE CARDS */

.kch-float-card {
  position: absolute;
  z-index: 3;

  display: flex;
  align-items: center;
  gap: 9px;

  padding: 10px 11px;
  border: 1px solid rgba(18, 43, 64, .04);
  border-radius: 11px;
  background: #ffffff;
  color: var(--kch-navy);

  box-shadow: 0 7px 20px rgba(0, 0, 0, .08);
}

.kch-float-card strong,
.kch-float-card small {
  display: block;
  white-space: nowrap;
}

.kch-float-card strong {
  margin-bottom: 5px;
  font-size: clamp(7px, .65vw, 9px);
  font-weight: 800;
}

.kch-float-card small {
  color: #7b90a5;
  font-size: clamp(6px, .58vw, 8px);
}

.kch-help-card {
  top: 25%;
  right: 5%;

  animation: kchFloatRight 4s ease-in-out infinite;
}

.kch-card-check {
  display: flex;
  width: 29px;
  height: 29px;
  flex: 0 0 29px;
  align-items: center;
  justify-content: center;

  border-radius: 8px;
  background: #e4f4d7;
  color: #6da94e;
  font-size: 20px;
}

.kch-chat-card {
  bottom: 19%;
  left: 5%;

  animation: kchFloatLeft 4.5s ease-in-out infinite;
}

.kch-status-dot {
  position: relative;
  width: 12px;
  height: 12px;
  flex: 0 0 12px;
  border-radius: 50%;
  background: #76be57;
}

.kch-status-dot::after {
  position: absolute;
  inset: -5px;
  border: 1px solid rgba(118, 190, 87, .35);
  border-radius: 50%;
  content: "";
  animation: kchDotPulse 2s ease-out infinite;
}

/* VISUAL FOOTER */

.kch-visual-footer {
  position: absolute;
  right: 5%;
  bottom: 5%;

  color: #7796a8;
  font-size: clamp(6px, .55vw, 8px);
  font-weight: 750;
  letter-spacing: 1px;
  text-align: right;
}

.kch-visual-footer span {
  color: var(--kch-green);
}

/* ==========================================
   BOTTOM GREEN CONTACT BAR
========================================== */

.kch-contact-strip {
  width: 100%;
  background: var(--kch-green);
}

.kch-strip-inner {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));

  width: 100%;
  max-width: 1020px;
  margin: 0 auto;
  padding: 22px 0;
}

.kch-contact-option {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 13px;

  padding: 10px 20px;
  color: var(--kch-navy) !important;
  text-decoration: none !important;

  transition: transform .3s ease;
}

.kch-contact-option + .kch-contact-option {
  border-left: 1px solid rgba(16, 34, 54, .2);
}

.kch-contact-option:hover {
  transform: translateY(-3px);
}

.kch-contact-icon {
  display: flex;
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(16, 34, 54, .2);
  border-radius: 13px;

  transition:
    background-color .3s ease,
    transform .3s ease;
}

.kch-contact-option:hover .kch-contact-icon {
  transform: scale(1.06);
  background: rgba(255, 255, 255, .23);
}

.kch-contact-icon svg {
  display: block;
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.kch-contact-text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
}

.kch-contact-text small {
  margin-bottom: 7px;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 1px;
}

.kch-contact-text strong {
  margin-bottom: 7px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.kch-contact-text em {
  font-size: 9px;
  font-style: normal;
  line-height: 1.5;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* ==========================================
   ANIMATIONS
========================================== */

@keyframes kchFadeUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes kchVisualIn {
  from {
    opacity: 0;
    transform: translateY(18px) scale(.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes kchPhoneFloat {
  0%, 100% {
    transform: rotate(-8deg) translateY(0);
  }
  50% {
    transform: rotate(-6deg) translateY(-7px);
  }
}

@keyframes kchFloatRight {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-6px);
  }
}

@keyframes kchFloatLeft {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(6px);
  }
}

@keyframes kchIconPulse {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(195, 255, 112, .15);
  }
  50% {
    box-shadow: 0 0 0 7px rgba(195, 255, 112, .06);
  }
}

@keyframes kchDotPulse {
  0% {
    transform: scale(.8);
    opacity: .9;
  }
  100% {
    transform: scale(1.7);
    opacity: 0;
  }
}

@keyframes kchOrbitPulse {
  0%, 100% {
    opacity: .45;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.025);
  }
}

@keyframes kchGridDrift {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 21px 21px;
  }
}

/* ==========================================
   TABLET
========================================== */

@media (max-width: 900px) {
  .kch-container {
    gap: 32px;
    padding: 55px 25px 58px;
  }

  .kch-content h1 {
    font-size: clamp(38px, 5vw, 47px);
    letter-spacing: -1.5px;
  }

  .kch-description {
    font-size: 12px;
  }

  .kch-buttons {
    gap: 13px;
  }

  .kch-primary-btn {
    min-height: 46px;
    padding: 0 14px;
  }

  .kch-benefits {
    gap: 10px;
    font-size: 8px;
  }

  .kch-strip-inner {
    padding: 16px 12px;
  }

  .kch-contact-option {
    gap: 9px;
    padding: 10px 12px;
  }

  .kch-contact-icon {
    width: 37px;
    height: 37px;
    flex-basis: 37px;
  }

  .kch-contact-text strong {
    font-size: 11px;
  }
}

/* ==========================================
   MOBILE
========================================== */

@media (max-width: 600px) {
  .kch-container {
    grid-template-columns: minmax(0, 1fr);
    gap: 35px;
    padding: 42px 20px 38px;
  }

  .kch-content {
    width: 100%;
  }

  .kch-eyebrow {
    margin-bottom: 22px;
    font-size: 9px;
  }

  .kch-content h1 {
    margin-bottom: 18px;
    font-size: clamp(40px, 10vw, 53px);
    line-height: 1.12;
    letter-spacing: -1.7px;
  }

  .kch-description {
    max-width: 440px;
    margin-bottom: 23px;
    font-size: 13px;
    line-height: 1.9;
  }

  .kch-buttons {
    gap: 16px;
    margin-bottom: 25px;
  }

  .kch-primary-btn {
    min-height: 49px;
    padding: 0 16px;
    font-size: 10px;
  }

  .kch-call-link {
    font-size: 10px;
  }

  .kch-benefits {
    gap: 12px;
    font-size: 9px;
  }

  .kch-visual {
    width: 100%;
    max-width: 440px;
    margin: 0 auto;
    border-radius: 19px;
  }

  .kch-visual-heading h2 {
    font-size: clamp(20px, 5vw, 26px);
  }

  .kch-visual-heading > span {
    font-size: 7px;
  }

  .kch-float-card {
    padding: 8px;
    gap: 7px;
    border-radius: 9px;
  }

  .kch-float-card strong {
    font-size: 7px;
  }

  .kch-float-card small {
    font-size: 6px;
  }

  .kch-card-check {
    width: 24px;
    height: 24px;
    flex-basis: 24px;
    font-size: 17px;
  }

  .kch-contact-strip {
    padding: 8px 20px;
  }

  .kch-strip-inner {
    grid-template-columns: minmax(0, 1fr);
    max-width: 440px;
    padding: 5px 0;
  }

  .kch-contact-option {
    gap: 14px;
    padding: 17px 4px;
  }

  .kch-contact-option + .kch-contact-option {
    border-top: 1px solid rgba(16, 34, 54, .2);
    border-left: 0;
  }

  .kch-contact-icon {
    width: 43px;
    height: 43px;
    flex-basis: 43px;
    border-radius: 12px;
  }

  .kch-contact-text small {
    font-size: 8px;
  }

  .kch-contact-text strong {
    font-size: 12px;
  }

  .kch-contact-text em {
    font-size: 9px;
  }
}

/* ==========================================
   SMALL PHONES
========================================== */

@media (max-width: 360px) {
  .kch-container {
    padding: 35px 16px 32px;
    gap: 28px;
  }

  .kch-content h1 {
    font-size: 38px;
    letter-spacing: -1.3px;
  }

  .kch-buttons {
    align-items: flex-start;
    flex-direction: column;
    gap: 17px;
  }

  .kch-benefits {
    gap: 8px;
    font-size: 8px;
  }

  .kch-visual-heading h2 {
    font-size: 18px;
  }

  .kch-contact-strip {
    padding-right: 16px;
    padding-left: 16px;
  }
}

/* ACCESSIBILITY */

@media (prefers-reduced-motion: reduce) {
  .kwik-contact-hero *,
  .kwik-contact-hero *::before,
  .kwik-contact-hero *::after {
    animation: none !important;
    transition: none !important;
  }
}/* End custom CSS */