.elementor-kit-15{--e-global-color-primary:#0E004B;--e-global-color-secondary:#CE372F;--e-global-color-text:#000000;--e-global-color-accent:#0E004B;--e-global-color-c38050f:#0E004B;--e-global-color-53a5b1e:#FFFFFF;--e-global-color-7171e18:#CE372F;--e-global-color-22f69d7:#FFFFFF;--e-global-color-295fe17:#00AEEF;--e-global-color-252495f:#00AEEF;--e-global-color-7535a5e:#FFFFFF;--e-global-color-e0d3a3f:#ECECEC;color:var( --e-global-color-text );font-family:"Montserrat", Sans-serif;font-size:1rem;line-height:var(--line-height-normal);}.elementor-kit-15 button,.elementor-kit-15 input[type="button"],.elementor-kit-15 input[type="submit"],.elementor-kit-15 .elementor-button{background-color:var( --e-global-color-primary );font-weight:700;text-transform:capitalize;color:var( --e-global-color-53a5b1e );border-radius:var(--radius-sm) var(--radius-sm) var(--radius-sm) var(--radius-sm);padding:var(--space-lg) var(--space-xl) var(--space-lg) var(--space-xl);}.elementor-kit-15 button:hover,.elementor-kit-15 button:focus,.elementor-kit-15 input[type="button"]:hover,.elementor-kit-15 input[type="button"]:focus,.elementor-kit-15 input[type="submit"]:hover,.elementor-kit-15 input[type="submit"]:focus,.elementor-kit-15 .elementor-button:hover,.elementor-kit-15 .elementor-button:focus{background-color:var( --e-global-color-c38050f );color:var( --e-global-color-53a5b1e );}.elementor-kit-15 e-page-transition{background-color:#FFBC7D;}.elementor-kit-15 a{color:var( --e-global-color-primary );}.elementor-kit-15 a:hover{color:var( --e-global-color-secondary );text-decoration:underline;}.elementor-kit-15 h1{color:var( --e-global-color-accent );font-size:var(--text-3xl);text-transform:capitalize;line-height:var(--line-height-tight);}.elementor-kit-15 h2{color:var( --e-global-color-accent );font-size:var(--text-2xl);text-transform:capitalize;line-height:var(--line-height-tight);}.elementor-kit-15 h3{color:var( --e-global-color-accent );font-size:var(--text-lg);text-transform:capitalize;line-height:var(--line-height-tight);}.elementor-kit-15 h4{color:var( --e-global-color-accent );font-size:var(--text-base);text-transform:capitalize;line-height:var(--line-height-tight);}.elementor-kit-15 h5{color:var( --e-global-color-accent );font-size:var(--text-base);text-transform:capitalize;line-height:var(--line-height-tight);}.elementor-kit-15 h6{color:var( --e-global-color-accent );font-size:var(--text-base);text-transform:capitalize;line-height:var(--line-height-tight);}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-15{line-height:1.2em;}.elementor-kit-15 h1{line-height:1.2em;}.elementor-kit-15 h2{line-height:1.2em;}.elementor-kit-15 h3{line-height:1.2em;}.elementor-kit-15 h4{line-height:1.2em;}.elementor-kit-15 h5{line-height:1.2em;}.elementor-kit-15 h6{line-height:1.2em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-15{line-height:1.2em;}.elementor-kit-15 h1{line-height:1.2em;}.elementor-kit-15 h2{line-height:1.2em;}.elementor-kit-15 h3{line-height:1.2em;}.elementor-kit-15 h4{line-height:1.2em;}.elementor-kit-15 h5{line-height:1.2em;}.elementor-kit-15 h6{line-height:1.2em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ---------- CAMP SCALE DEFINITIONS ---------- */
/* mobile */
:root {
  --camp-space-scale: 1;
  --camp-text-scale: 1;
}
/* tablet */
@media (min-width: 768px) {
  :root {
    --camp-space-scale: 1.1;
    --camp-text-scale: 1.15;
  }
}
/* desktop */
@media (min-width: 1025px) {
  :root {
    --camp-space-scale: 1.2;
    --camp-text-scale: 1.3;
  }
}

/* ---------- TOKENS ---------- */
:root {
  /* spacing */
  --space-xs: calc(0.125rem * var(--camp-space-scale));
  --space-sm: calc(0.25rem * var(--camp-space-scale));
  --space-md: calc(0.5rem * var(--camp-space-scale));
  --space-lg: calc(0.75rem * var(--camp-space-scale));
  --space-xl: calc(1rem * var(--camp-space-scale));
  --space-2xl: calc(1.5rem * var(--camp-space-scale));
  --space-3xl: calc(2rem * var(--camp-space-scale));
  --space-4xl: calc(3rem * var(--camp-space-scale));
  --space-5xl: calc(4rem * var(--camp-space-scale));
  --space-6xl: calc(6rem * var(--camp-space-scale));
  --space-7xl: calc(8rem * var(--camp-space-scale));
  --space-8xl: calc(10rem * var(--camp-space-scale));
  /* font size */
  --text-3xs: calc(0.25rem * var(--camp-text-scale));
  --text-2xs: calc(0.5rem * var(--camp-text-scale));
  --text-xs: calc(0.75rem * var(--camp-text-scale));
  --text-sm: calc(0.875rem * var(--camp-text-scale));
  --text-base: calc(1rem * var(--camp-text-scale));
  --text-lg: calc(1.125rem * var(--camp-text-scale));
  --text-xl: calc(1.25rem * var(--camp-text-scale));
  --text-2xl: calc(1.5rem * var(--camp-text-scale));
  --text-3xl: calc(1.875rem * var(--camp-text-scale));
  --text-4xl: calc(2.25rem * var(--camp-text-scale));
  --text-5xl: calc(3rem * var(--camp-text-scale));
  --text-6xl: calc(3.75rem * var(--camp-text-scale));
  /* line height */
  --line-height-tight: 1.25;
  --line-height-normal: 1.5;
  --line-height-loose: 1.75;
  /* border radius */
  --radius-sm: calc(0.25rem * var(--camp-space-scale));
  --radius-md: calc(0.5rem * var(--camp-space-scale));
  --radius-lg: calc(1rem * var(--camp-space-scale));
  --radius-xl: calc(1.5rem * var(--camp-space-scale));
  --radius-full: 9999px;
  /* shadow */
  --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.3);
  --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.3), 0 2px 4px -2px rgb(0 0 0 / 0.3);
  --shadow-lg:
    0 10px 15px -3px rgb(0 0 0 / 0.3), 0 4px 6px -4px rgb(0 0 0 / 0.3);
  --shadow-xl:
    0 20px 25px -5px rgb(0 0 0 / 0.3), 0 8px 10px -6px rgb(0 0 0 / 0.3);
}

/* ---------- GAP TOKENS ---------- */
:root {
  --section-gap: var(--space-4xl);
  --content-gap: var(--space-2xl);
}

/* ---------- COLOR TOKENS ---------- */
body {
  --primary: var(--e-global-color-primary);
  --primary-hover: var(--e-global-color-c38050f);
  --primary-foreground: var(--e-global-color-53a5b1e);
  --secondary: var(--e-global-color-secondary);
  --secondary-hover: var(--e-global-color-7171e18);
  --secondary-foreground: var(--e-global-color-22f69d7);
  --tertiary: var(--e-global-color-295fe17);
  --tertiary-hover: var(--e-global-color-252495f);
  --tertiary-foreground: var(--e-global-color-7535a5e);
}

/* ---------- UTILITY CLASSES ---------- */
/* colors */
.text-primary * {
  color: var(--primary) !important;
}
.fill-primary * {
  fill: var(--primary) !important;
}
.text-primary-foreground * {
  color: var(--primary-foreground) !important;
}
.fill-primary-foreground * {
  fill: var(--primary-foreground) !important;
}
.text-secondary * {
  color: var(--secondary) !important;
}
.text-secondary-foreground * {
  color: var(--secondary-foreground) !important;
}
.text-tertiary * {
  color: var(--tertiary) !important;
}
.text-tertiary-foreground * {
  color: var(--tertiary-foreground) !important;
}
.bg-primary {
  background-color: var(--primary) !important;
}
.bg-secondary {
  background-color: var(--secondary) !important;
}
.bg-tertiary {
  background-color: var(--tertiary) !important;
}
/* shadows */
.shadow-sm {
  box-shadow: var(--shadow-sm);
}
.shadow-md {
  box-shadow: var(--shadow-md);
}
.shadow-lg {
  box-shadow: var(--shadow-lg);
}
.shadow-xl {
  box-shadow: var(--shadow-xl);
}
/* word-break */
.break-all {
  word-break: break-all;
}
/* text-wrap */
.text-nowrap * {
    text-wrap: nowrap;
}
/* flex-wrap */
.flex-nowrap * {
    flex-wrap: nowrap !important;
}
.flex-wrap * {
    flex-wrap: wrap !important;
}

/* min-width */
.min-w-min {
  min-width: min-content !important;
}
/* position */
.static {
  position: static !important;
}
.fixed {
  position: fixed !important;
}
.absolute {
  position: absolute !important;
}
.relative {
  position: relative !important;
}
.sticky {
  position: sticky !important;
}
.unset {
  position: unset !important;
}

/* ---------- SECTION ---------- */
/* padding */
.camp-section {
  padding-inline: var(--space-xl);
  padding-block: var(--space-4xl);
}
/* gap */
.camp-section:not(.exclude),
.camp-section:not(.exclude) > .e-con-inner,
.camp-section .section-gap {
  gap: var(--section-gap);
}

/* ---------- CONTAINER ---------- */
/* padding reset */
.camp-section :where(.e-con):not(.exclude),
.camp-section :where(.e-con-inner):not(.exclude) {
  padding: 0;
}
/* margins */
.camp-section :not(.exclude) > :not(.exclude) {
  margin: 0;
}
/* gap */
.camp-section .e-con:not(.exclude),
.camp-section .e-con:not(.exclude) > .e-con-inner {
  gap: var(--content-gap);
}

/* ---------- ELEMENT FIXES ---------- */
/* header/navbar */
/* link hover */
.elementor-location-header a:hover {
  text-decoration: none;
}
.elementor-location-header a.elementor-sub-item,
.elementor-location-header a.elementor-sub-item:hover {
  border: none;
}
@media (max-width: 1024px) {
  .elementor-location-header .menu-item:hover svg {
    fill: var(--primary-foreground);
  }
}
@media (min-width: 1025px) {
  /* dropdown */
  .elementor-location-header .elementor-nav-menu--dropdown {
    box-shadow: var(--shadow-md);
  }
  /* layout shifting fix */
  .elementor-location-header .sub-arrow:not(.sub-menu *) {
    position: absolute;
    left: calc(100% - 0.5em);
  }
}
/* desktop menu gap */
.elementor-location-header nav:first-of-type ul {
  column-gap: var(--space-3xl);
  row-gap: var(--space-lg);
}
/* mobile fixes */
@media (max-width: 1024px) {
  .elementor-location-header .elementor-nav-menu--dropdown {
    top: 100% !important;
    left: 0;
  }
}

/* lists */
.camp-section ul,
.camp-section ol {
  column-gap: var(--space-4xl) !important;
}
/* grids */
.camp-section .elementor-grid {
  gap: var(--content-gap);
}
/* section gap */
.camp-section .section-gap {
  gap: var(--section-gap) !important;
}
/* buttons */
.elementor-button {
  white-space: nowrap;
  min-width: min-content;
}
.elementor-button {
  text-decoration: none !important;
}
.elementor-widget-button {
  min-width: min-content !important;
}
.elementor-button-content-wrapper {
  gap: 0.5em;
  align-items: flex-start;
}
/* images */
.camp-section .elementor-widget-image:not(.exclude) {
  width: 100%;
  min-width: min-content !important;
}
/* icons */
.elementor-icon-wrapper {
  line-height: 0;
}
/* wpforms */
.camp-section .wpforms-field-container > * {
  padding: 0 !important;
}
.camp-section .wpforms-field-container {
  display: flex;
  flex-direction: column;
  gap: var(--content-gap);
}
.wpforms-submit-container {
    display: flex;
    justify-content: center;
}
/* headings */
.camp-section
  :not(.exclude)
  > :is(h1, h2, h3, h4, h5, h6, label):not(:last-child):not(.exclude) {
  margin-block-end: 0.4em;
}
.camp-section :is(.exclude) > :is(.elementor-widget-heading):not(:last-child) :is(h1, h2, h3, h4, h5, h6, label) {
    margin-bottom: .4em;
}
.camp-section .elementor-heading-title {
    line-height: var(--line-height-tight);
}
/* body text */
.camp-section :not(.exclude) > :is(p, ul, ol):not(:last-child):not(.exclude) {
  margin-block-end: 1.5em !important;
}
/* atcap offers */
/* container */
.atc-offers-container {
  gap: var(--content-gap);
}
.atc-offers-container * {
  font-size: 1rem;
}
/* paddings */
.atc-coupon-content-container,
.atc-coupon-price-container,
.atc-coupon-title-container,
.atc-coupon-action-container,
.atc-coupon-footer-container {
  padding-inline: 20px !important;
  padding-block: 10px !important;
}
.atc-coupon-content-details {
  width: 100% !important;
}
/* price */
.atc-coupon-price-container {
  gap: 1rem;
}
.atc-coupon-price-container * {
  line-height: 1 !important;
}
/* CTA button */
.atc-coupon-action-text {
  border-radius: var(--radius-md) !important;
}
.atc-coupon-action-text:hover {
  background-color: black;
}
.atc-coupon-action-text a {
  color: var(--primary-foreground);
}
.atc-coupon-action-text a:hover {
  color: var(--primary-foreground) !important;
}
/* disclaimer */
.atc-coupon-disclaimer-details {
  padding-inline: 0 !important;
}
.atc-coupon-footer-container button {
  margin-bottom: 0.4em !important;
}
/* trustindex */
.ti-widget {
  min-height: 117px;
}
.ti-widget-container {
  margin: 0 !important;
}

/* ---------- COMPONENTS ---------- */
/* secondary button */
.button-secondary a {
  background-color: var(--secondary) !important;
  fill: var(--secondary-foreground) !important;
  color: var(--secondary-foreground) !important;
}
.button-secondary:hover a {
  background-color: var(--secondary-hover) !important;
}
/* tertiary button */
.button-tertiary a {
  background-color: var(--tertiary) !important;
  fill: var(--tertiary-foreground) !important;
  color: var(--tertiary-foreground) !important;
}
.button-tertiary:hover a {
  background-color: var(--tertiary-hover) !important;
}
/* container */
.camp-container {
  padding: var(--space-2xl) !important;
  border-radius: var(--radius-lg);
}
/* banner */
.banner {
    padding-top: var(--space-2xl);
    padding-bottom: var(--space-2xl);
}

/* emergency service card */
.emergency-service-card {
  box-shadow: var(--shadow-md) !important;
  min-width: 8rem;
  max-width: 12rem;
}
.emergency-service-card * {
  transition:
    color 0.2s,
    fill 0.2s;
}
.emergency-service-card:hover * {
  color: var(--primary-foreground);
  fill: var(--primary-foreground);
}

/* faq accordion */
.faq-accordion {
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.faq-question {
  width: 100%;
  text-align: left;
  text-wrap: auto;
  line-height: var(--line-height-normal);
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  border: none;
}
.faq-question .icon {
    margin-left: var(--content-gap) !important;
}
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition:
    max-height,
    padding 0.3s cubic-bezier(0, 0, 0.45, 1.63);
  padding-inline: var(--space-md);
}
.faq-item.active .faq-answer {
  height: 100%;
  max-height: 500px; /* Adjust based on content length */
  padding-block: var(--space-md);
}
.faq-item.active .icon {
  transform: rotate(45deg);
}

/* related services buttons */
.related-services-button-wrapper {
    display: flex;
    gap: var(--content-gap);
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
}

/* old CSS */

/* RElated Service Section Styling */
.related-services {
  padding: 20px !important;
  background-color: var(--e-global-color-primary);
  border-radius: 20px;
}
.related-services .elementor-icon-list-icon i {
  color: var(--e-global-color-secondary);
}

/* OFFER INJECTION CSS SETTINGS */
/* General Styles */
.v4-price-container > div {
  text-align: center;
}
.atc-offers-container {
  padding: 0 !important;
}

.atc-coupon-container,
.atc-coupon-image-container,
.atc-offers-container .atc-coupon-action-container {
  border-radius: 25px;
}

.atc-offers-container .atc-coupon-container {
  outline: none;
  box-shadow: 0 0 8px gray;
  max-width: 407px;
}

.atc-coupon-container .atc-coupon-price-container,
.atc-coupon-container .atc-coupon-title-container,
.atc-coupon-container .atc-coupon-action-text,
.atc-coupon-container .atc-coupon-action-container {
  max-width: 100%;
  width: 100%;
  padding: 10px;
}

/* Image Container */
.atc-coupon-container .atc-coupon-image-container {
  height: 200px;
  width: 100%;
  background-size: cover !important;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.atc-coupon-image-container iframe {
  height: 100%;
  border-top-right-radius: 25px;
  border-top-left-radius: 25px;
}

/* Offer Price Container */
.atc-offers-container .atc-coupon-price-data {
  font-size: 2.2rem;
  line-height: var(--e-global-typography-accent-line-height);
  color: #388e3c;
}

.atc-coupon-container .atc-coupon-price-container {
  height: auto;
  padding: 15px;
}

.atc-coupon-container .atc-coupon-price-original {
  font-size: 1rem;
  color: #ff0000;
}

/* Offer Title Container */
.atc-coupon-container .atc-coupon-title-label {
  font-weight: var(--e-global-typography-389e283-font-weight);
  font-size: var(--e-global-typography-389e283-font-size);
}

.atc-coupon-container .atc-coupon-title-container {
  position: relative;
}

.atc-coupon-title-container:after,
.atc-coupon-title-container:before {
  content: "";
  width: 100%;
  height: 1px;
  background: rgba(0, 0, 0, 0.2);
  position: absolute;
  left: 0;
}

.atc-coupon-title-container:after {
  bottom: 0;
}

.atc-coupon-title-container:before {
  top: 0;
}

/* Offer Content Container */
.atc-coupon-container .atc-coupon-content-container {
  height: auto;
}

.atc-coupon-container .atc-coupon-content-details {
  line-height: var(--e-global-typography-text-line-height);
}

/* Offer Schedule Button */
.atc-offers-container .atc-coupon-action-container {
  height: auto;
  padding: 15px;
}

.atc-coupon-container .atc-coupon-action-text {
  padding: 12px 0;
  border-radius: 25px;
  font-size: var(--e-global-typography-7da7877-font-size);
  font-weight: var(--e-global-typography-7da7877-font-weight);
  background: var(--e-global-color-primary);
  height: auto;
}

.atc-coupon-action-text a {
  color: var(--e-global-color-22f69d7);
}

.atc-coupon-container .atc-coupon-action-text a:hover {
  color: var(--e-global-color-secondary);
}

/* Service Page Offer Box Styles */
.offer-price.discounted {
    font-size: var(--text-xl);
    line-height: 1.5;
    text-decoration: line-through;
}
span:has(> .discounted) {
    display: flex;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Montserrat';
	font-display: auto;
	src: url('https://offers.simpsonheating.com/wp-content/uploads/2026/03/Montserrat-VariableFont_wght.ttf') format('truetype');
}
/* End Custom Fonts CSS */