/*!
Theme Name: all-homes
Theme URI: https://github.com/vishwajeetsinghshrinet
Theme Author: Vishwajeet Singh
Author: The Digital Department
Author URI: https://www.thedigitaldepartment.ie/
Description: The Digital Department is a full-service digital agency based in Cork and for 13 years has, specialised in high-performance website design, eCommerce development, and lead generation for home service and B2B businesses.
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: all-homes
*/

body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

.custom-color span {
  color: var(--e-global-color-accent);
}

.elementor-button svg {
  transform: rotate(-45deg);
  transition: transform 0.3s ease;
}

.elementor-button:hover svg {
  transform: rotate(0deg);
}

.common-banner .common-paragraph li {
  color: #ffffff;
}

.common-paragraph p:first-child {
  margin-top: 0;
}

.white-list.common-paragraph li {
  color: #ffffff;
}

.common-paragraph ul {
  padding: 0 !important;
  margin: 0 !important;
}

.common-paragraph li {
  list-style: none;
  position: relative;
  padding-left: 25px;
  margin-bottom: 15px;
  text-transform: capitalize;
  font-weight: 600 !important;
  color: #000000;
}

.common-paragraph li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  width: 20px;
  height: 20px;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml;utf8,<svg fill='%23058085' viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'><path d='M224.3 273l-136 136c-9.4 9.4-24.6 9.4-33.9 0l-22.6-22.6c-9.4-9.4-9.4-24.6 0-33.9l96.4-96.4-96.4-96.4c-9.4-9.4-9.4-24.6 0-33.9L54.3 103c9.4-9.4 24.6-9.4 33.9 0l136 136c9.5 9.4 9.5 24.6.1 34zm192-34l-136-136c-9.4-9.4-24.6-9.4-33.9 0l-22.6 22.6c-9.4 9.4-9.4 24.6 0 33.9l96.4 96.4-96.4 96.4c-9.4 9.4-9.4 24.6 0 33.9l22.6 22.6c9.4 9.4 24.6 9.4 33.9 0l136-136c9.4-9.2 9.4-24.4 0-33.8z'/></svg>");
}

/* Header */

.header-desktop {
  position: absolute !important;
  width: 100% !important;
  background: rgba(0, 0, 0, 0.15) !important;
  backdrop-filter: blur(25px) !important;
  -webkit-backdrop-filter: blur(25px) !important;
  transition: all 0.3s ease-in-out !important;
  z-index: 9999 !important;
}

.header-desktop.is-sticky {
  position: fixed !important;
  top: 0 !important;
  background: rgba(17, 44, 50, 0.6) !important;
  backdrop-filter: blur(20px) !important;
}

header .header-desktop nav ul li ul {
  border-radius: 10px !important;
}

header .header-desktop nav ul li ul li a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-right: 12px;
  border-radius: 50%;
  background: linear-gradient(153.85deg, #058085 16.37%, #265f6c 85.88%);
  color: #fff;
}

/* Individual icons */
header .header-desktop .icon-box a::before {
  content: "\f466";
  /* box */
}

header .header-desktop .icon-design a::before {
  content: "\f1fc";
  /* paint brush */
}

header .header-desktop .icon-print a::before {
  content: "\f02f";
  /* print */
}

/* Footer */

.newsletter-section {
  background: #ffffff14;
  backdrop-filter: blur(30px);
  -webkit-backdrop-filter: blur(10px);
  padding: 10px;
  border-radius: 40px;
}

.newsletter-section .elementor-field-type-submit {
  display: flex;
  justify-content: center;
  align-items: center;
}

@media (max-width: 1850px) {
  .newsletter-section {
    padding: 5px;
  }

  .common-contact-form .elementor-field-textual.elementor-size-lg {
    min-height: 50px !important;
    padding: 5px 15px !important;
  }

  .elementor-field-group {
    padding-right: calc(15px / 2) !important;
    padding-left: calc(15px / 2) !important;
    margin-bottom: 15px !important;
  }

  .common-paragraph li::before {
    width: 17px;
    height: 17px;
  }
}

@media (max-width: 1023px) {
  header nav ul li a {
    background-color: var(--e-global-color-secondary) !important;
    color: var(--e-global-color-primary) !important;
  }

  header nav ul li ul li a {
    background-color: var(--e-global-color-secondary) !important;
    color: var(--e-global-color-primary) !important;
  }

  header nav ul li ul {
    border-radius: 0 !important;
  }

  header nav ul li ul li a::before {
    display: none;
  }

  header nav ul li a:hover,
  header nav ul li ul li a:hover {
    background-color: var(--e-global-color-primary);
  }
}

@media (max-width: 767px) {
  .newsletter-section {
    border-radius: 10px;
    background: none;
  }

  .newsletter-section #form-field-email {
    border-radius: 15px;
    background: #ffffff14;
    border: 1px soild #fff;
  }

  .common-paragraph li::before {
    width: 16px;
    height: 16px;
  }

  .project-cta .elementor-cta {
    flex-direction: column !important;
    gap: 15px;
  }

  .elementor-cta__content {
    padding: 0 !important;
    gap: 15px !important;
  }

  /* .step-card::after {
    display: none;
  } */

  @media (max-width: 767px) {
    .step-card::after {
      top: auto !important;
      bottom: -25px !important;
      right: 50% !important;
      left: auto !important;
      transform: translateX(50%) !important;
      transform: translateX(50%) rotate(90deg) !important;
    }
  }
}

/* ==========================================================================  */

.elementor-button {
  cursor: pointer !important;
}

.project-loop .elementor-cta__content {
  justify-content: space-between;
  gap: 30px;
  padding: 0px 30px;
}

.step-card {
  position: relative;
}

.step-card::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -25px;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background: url("https://allhomes.demotoday.info/wp-content/uploads/2026/04/before-icon.webp") no-repeat center;
  background-size: contain;
  z-index: 2;
}

.step-card:last-child::after {
  display: none;
}

/* FAQ  */

body .e-n-accordion>.e-n-accordion-item[open]>.e-n-accordion-item-title {
  --n-accordion-border-radius: 10px 10px 0 0 !important;
}

.list-item .elementor-icon-list-text {
  font-weight: 700 !important;
}

.box-heading .elementor-heading-title {
  font-weight: 600 !important;
}

.paragraph-text p {
  margin-top: 0;
}

.paragraph-text p:last-child {
  margin-bottom: 0;
}

.small-heading span {
  text-transform: uppercase;
}

.contact-anchor p a {
  color: var(--e-global-color-text);
}

.elementor-field-group .elementor-field-textual:focus {
  box-shadow: none !important;
}

.image-box-paragraph .elementor-widget-image-box {
  display: flex;
  justify-content: center;
  align-items: center;
}

.elementor-nav-menu a .sub-arrow svg {
  transition: transform 0.3s ease;
  transform: rotate(0deg);
}

.elementor-nav-menu a:hover .sub-arrow svg {
  transform: rotate(180deg);
}

/* Force autofill to look exactly like normal inputs */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-text-fill-color: inherit !important;
  font: inherit !important;

  background-color: transparent !important;
  box-shadow: 0 0 0px 1000px transparent inset !important;

  border: inherit !important;
  caret-color: inherit !important;

  transition: background-color 9999s ease-in-out 0s !important;
}

/* Table Pricing */

.custom-price-table {
  width: 100%;
  border-collapse: collapse;
  font-family: inherit;
  border: 1px solid #dedede;
}

.custom-price-table thead th {
  background-color: var(--e-global-color-secondary);
  color: var(--e-global-color-primary);
  text-align: left;
  padding: 14px 20px;
  font-weight: var(--e-global-typography-ef9a0b4-font-size);
  font-size: var(--e-global-typography-ef9a0b4-font-size);
  font-family: var(--e-global-typography-ef9a0b4-font-family);
  line-height: var(--e-global-typography-ef9a0b4-font-size);
  border-right: 1px solid #dedede;
}

.custom-price-table thead th:last-child {
  border-right: none;
}

.custom-price-table tbody td {
  padding: 14px 20px;
  color: #333;
  font-size: var(--e-global-typography-text-font-size);
  font-family: var(--e-global-typography-text-font-family);
  font-weight: var(--e-global-typography-text-font-size);
  border-top: 1px solid #dedede;
  border-right: 1px solid #dedede;
}

.custom-price-table tbody td:last-child {
  border-right: none;
}

.custom-price-table tbody tr:nth-child(even) {
  background-color: #f7f7f7;
}

.trusted-grid img {
  filter: grayscale(100%);
  transition: filter 0.3s ease;
}

.trusted-grid img:hover {
  filter: grayscale(0%);
}

.newsletter-section .elementor-field-group {
  margin: auto !important;
}

@media (max-width: 767px) {
  .newsletter-section #form-field-email {
    border-radius: 30px;
    margin-bottom: 15px !important;
  }
}