/*
Theme Name: Hello Elementor Child
Theme URI: https://example.com/hello-elementor-child
Description: A clean starter child theme for Hello Elementor.
Author: Aamad Chaudhary
Template: hello-elementor
Version: 1.0.0
Text Domain: hello-elementor-child
*/


.elementor-widget-off-canvas {
    --e-off-canvas-animation-duration: 0.5s !important;
}

.grid-icon-box span.elementor-icon {
    background: #CE9F47;
    padding: 10px;
    border-radius: 40px;
}

.elementor-element.animated-hover-bg {
  position: relative;
  overflow: hidden;
}

.elementor-element.animated-hover-bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(206,159,71,0.9), rgba(68,76,92,0.5));
  transform: translateY(-100%);
  transition: transform 0.4s ease-out;
  z-index: 0;
  pointer-events: none;
}

.elementor-element.animated-hover-bg:hover::before {
  transform: translateY(0);
}

.elementor-element.animated-hover-bg > * {
  position: relative;
  z-index: 1;
}

span.practice-span {
    color: #d7dce1;
}

.home-banner{
	background-size: 100%;
}

/* Contact Form Styling */
.wpcf7-form {
    font-family: 'Lato', sans-serif;
}

.wpcf7-form p {
    margin-bottom: 40px;
}

.wpcf7-form label {
    display: block;
    font-size: 18px;
    color: #4a4a4a;
    font-weight: 400;
    margin-bottom: 12px;
}

.wpcf7-form-control-wrap {
    display: block;
}

.wpcf7-form .wpcf7-form-control {
    width: 100%;
    border: none;
    border-bottom: 1px solid #ddd;
    background: transparent;
    padding: 8px 0;
    font-family: 'Lato', sans-serif;
    font-size: 16px;
    color: #333;
    border-radius: 0;
    box-shadow: none;
    outline: none;
    transition: border-color 0.2s ease;
}

.wpcf7-form .wpcf7-form-control:focus {
    border-bottom-color: #999;
}

.wpcf7-form textarea.wpcf7-form-control {
    min-height: 90px;
    resize: vertical;
	height: 150px;
}

/* Submit button */
.wpcf7-form input[type="submit"] {
    background-color: #CE9F47;
    color: #ffffff;
    border: none;
    border-radius: 2px;
    padding: 18px 45px;
    font-family: 'Lato', sans-serif;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.wpcf7-form input[type="submit"]:hover {
    background-color: #CE9F47;
}

.wpcf7-spinner {
    margin-left: 10px;
}

/* 1. Hide the bullet icon when its text span is empty */
.elementor-icon-list-item:has(.elementor-icon-list-text:empty) .elementor-icon-list-icon {
  display: none;
}

/* 2. Hide the whole section if the FIRST list item's text is empty */
.elementor-element-71b06cc:has(
  .elementor-icon-list-item:first-child .elementor-icon-list-text:empty
) {
  display: none;
}

.elementor-element-f70e7af:has(
  .elementor-icon-list-item:first-child .elementor-icon-list-text:empty
) {
  display: none;
}

/* 1. Hide the toggle icon (+/-) when its title text is empty */
.services-template-default .e-n-accordion-item-title-header:has(.e-n-accordion-item-title-text:empty)
  + .e-n-accordion-item-title-icon {
  display: none;
}

/* 2. Hide the whole section if the FIRST accordion item's title is empty */
.services-template-default .elementor-element-ae1870f:has(
  .e-n-accordion-item:first-child .e-n-accordion-item-title-text:empty
) {
  display: none;
}

.services-template-default .elementor-element-d06de86:has(
  .e-con-inner > *:nth-child(2) .elementor-icon-list-text:empty
) {
  display: none !important;
}

.decorate-on-light .elementor-heading-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    -webkit-transform: skewX(18deg);
    -ms-transform: skewX(18deg);
    transform: skewX(18deg);
    -webkit-transform-origin: 0 100%;
    -ms-transform-origin: 0 100%;
    transform-origin: 0 100%;
	background-color: #f5f7f8;
}

.decorate-on-dark .elementor-heading-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    -webkit-transform: skewX(18deg);
    -ms-transform: skewX(18deg);
    transform: skewX(18deg);
    -webkit-transform-origin: 0 100%;
    -ms-transform-origin: 0 100%;
    transform-origin: 0 100%;
	background-color: rgba(245, 247, 248, 0.2);
}

.decorate-on-light, .decorate-on-dark {
	overflow: hidden;
}

.top-box-container:has(p) {
    display: block !important;
}

.elementor-element.top-box-container {
    display: none;
}

.post-type-archive-team .decorate-on-light {
    min-height: 68px;
    padding-right: 50px !important;
	align-content: center;
}

.case-type-accordion ul {
    margin-bottom: 20px;
}

.no-margin p {
    margin: 0;
}