/* =========================================================
   ATS TREE SURVEYS PAGE CSS
   ---------------------------------------------------------
   PURPOSE:
   Styling specific to the Tree Surveys page only.

   INCLUDES:
   - Page-specific layout tweaks
   - Section adjustments unique to this page
   - Component overrides specific to this page

   DOES NOT INCLUDE:
   - Global layout → ats-main.css
   - Hero styles → ats-hero.css
   - Header/footer styles

   NOTES:
   - Keep this file isolated to this page only
   - Avoid duplicating global styles here
   - Remove anything that becomes reusable (move to main)

   WARNING:
   If styles are reused across multiple pages,
   they should be moved into ats-main.css

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


/* =========================================================
   Shared section title + intro rhythm
   Repeated card/section patterns stay page-specific until
   browser inspection confirms safe consolidation.
   ========================================================= */

.ats-services-proof__inner > .elementor-widget-heading,
.ats-survey-outputs__inner > .elementor-widget-heading,
.ats-inspection-proof__inner > .elementor-widget-heading,
.ats-survey-audience > .elementor-widget-heading{
  margin: 0 0 10px;
}

.ats-services-proof__inner > .elementor-widget-heading h1,
.ats-services-proof__inner > .elementor-widget-heading h2,
.ats-services-proof__inner > .elementor-widget-heading h3,
.ats-services-proof__inner > .elementor-widget-heading h4,
.ats-survey-outputs__inner > .elementor-widget-heading h1,
.ats-survey-outputs__inner > .elementor-widget-heading h2,
.ats-survey-outputs__inner > .elementor-widget-heading h3,
.ats-survey-outputs__inner > .elementor-widget-heading h4,
.ats-inspection-proof__inner > .elementor-widget-heading h1,
.ats-inspection-proof__inner > .elementor-widget-heading h2,
.ats-inspection-proof__inner > .elementor-widget-heading h3,
.ats-inspection-proof__inner > .elementor-widget-heading h4,
.ats-survey-audience > .elementor-widget-heading h1,
.ats-survey-audience > .elementor-widget-heading h2,
.ats-survey-audience > .elementor-widget-heading h3,
.ats-survey-audience > .elementor-widget-heading h4{
  margin: 0;
  font-size: 36px;
  line-height: 1.12;
  letter-spacing: -0.02em;
  font-weight: 500;
}

.ats-services-proof__inner > .elementor-widget-text-editor,
.ats-survey-outputs__inner > .elementor-widget-text-editor,
.ats-inspection-proof__inner > .elementor-widget-text-editor,
.ats-survey-audience > .elementor-widget-text-editor{
  max-width: 900px;
  margin: 0 0 24px;
}

.ats-services-proof__inner > .elementor-widget-text-editor .elementor-text-editor,
.ats-survey-outputs__inner > .elementor-widget-text-editor .elementor-text-editor,
.ats-inspection-proof__inner > .elementor-widget-text-editor .elementor-text-editor,
.ats-survey-audience > .elementor-widget-text-editor .elementor-text-editor{
  font-size: 17px;
  line-height: 1.70;
  color: var(--ats-muted, #64748B);
}


/* =========================================================
   1) Survey & reporting services
   ========================================================= */

.ats-services-proof{
  padding: 56px 0 64px;
}

.ats-services-proof__inner{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

.ats-services-proof__grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
  width: 100%;
}

.ats-services-proof__card{
  display: flex;
  flex-direction: column;
  min-height: 100%;
  min-width: 0;
  width: auto;
  max-width: none;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 22px;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.ats-services-proof__card:hover{
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.10);
  border-color: rgba(15, 74, 53, 0.18);
}

.ats-services-proof__card > .elementor-widget-heading{
  padding: 18px 20px 0;
  margin: 0;
}

.ats-services-proof__card > .elementor-widget-text-editor{
  padding: 10px 20px 20px;
  margin: 0;
  flex: 1 1 auto;
}

.ats-services-proof__card h1,
.ats-services-proof__card h2,
.ats-services-proof__card h3,
.ats-services-proof__card h4{
  margin: 0;
  font-size: 21px;
  line-height: 1.22;
}

.ats-services-proof__card .elementor-text-editor{
  font-size: 16px;
  line-height: 1.68;
  color: var(--ats-muted, #64748B);
}


/* =========================================================
   2) Example Survey Outputs
   ========================================================= */

.ats-survey-outputs{
  padding: 56px 0 64px;
}

.ats-survey-outputs__inner{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

.ats-survey-outputs__grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
  width: 100%;
}

.ats-proof-card{
  display: flex;
  flex-direction: column;
  min-height: 100%;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.ats-proof-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.10);
  border-color: rgba(15, 74, 53, 0.18);
}

.ats-proof-card > .elementor-widget-image{
  width: 100%;
  margin: 0 !important;
  padding: 14px 14px 8px;
  background: transparent;
}

.ats-proof-card > .elementor-widget-image .elementor-widget-container{
  width: 100%;
  margin: 0;
}

.ats-proof-card > .elementor-widget-image a{
  display: block;
  width: 100%;
  height: 280px;
  overflow: hidden;
  border-radius: 16px;
}

.ats-proof-card > .elementor-widget-image:not(.elementor-clickable) .elementor-widget-container{
  overflow: hidden;
  border-radius: 16px;
}

.ats-proof-card > .elementor-widget-image img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  transition: transform .25s ease;
}

.ats-proof-card:hover > .elementor-widget-image img{
  transform: scale(1.02);
}

.ats-proof-card > .elementor-widget-heading{
  padding: 20px 22px 0;
  margin: 0;
}

.ats-proof-card > .elementor-widget-text-editor{
  padding: 8px 22px 0;
  margin: 0;
  flex: 1 1 auto;
}

.ats-proof-card > .elementor-widget-button{
  padding: 16px 22px 22px;
  margin-top: auto;
}

.ats-proof-card h1,
.ats-proof-card h2,
.ats-proof-card h3,
.ats-proof-card h4{
  margin: 0;
  font-size: 24px;
  line-height: 1.22;
}

.ats-proof-card .elementor-text-editor{
  font-size: 17px;
  line-height: 1.70;
  color: var(--ats-muted, #64748B);
}

.ats-proof-card .elementor-button-wrapper{
  display: flex;
}

.ats-proof-card .elementor-button{
  width: auto;
}


/* =========================================================
   3) Real-world inspection, not box-ticking
   ========================================================= */

.ats-inspection-proof{
  padding: 56px 0 64px;
}

.ats-inspection-proof__inner{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

/* holding row inside the inner wrapper */
.ats-inspection-proof__inner > .elementor-element[data-element_type="container"]:last-child{
  display: flex;
  flex-wrap: wrap;
  gap: 28px;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
  min-width: 0;
}

.ats-inspection-proof__card{
  flex: 0 0 calc((100% - 56px) / 3);
  max-width: calc((100% - 56px) / 3);
  min-width: 0;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.ats-inspection-proof__card:hover{
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.10);
  border-color: rgba(15, 74, 53, 0.18);
}

.ats-inspection-proof__image{
  margin: 0 !important;
  padding: 14px 14px 8px;
}

.ats-inspection-proof__image .elementor-widget-container{
  overflow: hidden;
  border-radius: 18px;
}

.ats-inspection-proof__image img{
  display: block;
  width: 100%;
  height: 240px;
  object-fit: cover;
  object-position: center;
  border: 0;
  border-radius: 18px;
  box-shadow: none;
  transition: transform .25s ease;
}

.ats-inspection-proof__card:hover .ats-inspection-proof__image img{
  transform: scale(1.02);
}

.ats-inspection-proof__card > .elementor-widget-heading{
  padding: 4px 22px 0;
  margin: 0;
}

.ats-inspection-proof__card > .elementor-widget-text-editor{
  padding: 8px 22px 20px;
  margin: 0;
  flex: 1 1 auto;
}

.ats-inspection-proof__card h1,
.ats-inspection-proof__card h2,
.ats-inspection-proof__card h3,
.ats-inspection-proof__card h4{
  margin: 0;
  font-size: 22px;
  line-height: 1.20;
}

.ats-inspection-proof__card .elementor-text-editor{
  font-size: 16px;
  line-height: 1.70;
  color: var(--ats-muted, #64748B);
}


/* =========================================================
   4) Who we work with
   ========================================================= */

.elementor .ats-survey-audience.e-con{
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.ats-survey-audience{
  padding: 52px 24px 36px;
}

.ats-survey-audience__row{
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  align-items: stretch;
}

.ats-survey-audience-card{
  width: calc(50% - 12px);
  padding: 22px 22px 20px;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 20px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}

.ats-survey-audience-card > .elementor-widget-heading{
  margin: 0 0 10px;
}

.ats-survey-audience-card > .elementor-widget-heading h1,
.ats-survey-audience-card > .elementor-widget-heading h2,
.ats-survey-audience-card > .elementor-widget-heading h3,
.ats-survey-audience-card > .elementor-widget-heading h4{
  margin: 0;
  font-size: 20px;
  line-height: 1.25;
}

.ats-survey-audience-card > .elementor-widget-text-editor{
  margin: 0;
}

.ats-survey-audience-card > .elementor-widget-text-editor .elementor-text-editor{
  font-size: 17px;
  line-height: 1.70;
  color: var(--ats-muted, #64748B);
}


/* =========================================================
   5) Final CTA
   CTA button rules remain page-specific until consolidation is tested.
   ========================================================= */

.elementor .ats-survey-cta.e-con{
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.ats-survey-cta{
  padding: 28px 24px 56px;
}

.ats-survey-cta__card{
  padding: 28px 30px 26px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbf9 100%);
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 22px;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05);
}

.ats-survey-cta__card > .elementor-widget-heading{
  margin: 0 0 8px;
}

.ats-survey-cta__card > .elementor-widget-heading h1,
.ats-survey-cta__card > .elementor-widget-heading h2,
.ats-survey-cta__card > .elementor-widget-heading h3,
.ats-survey-cta__card > .elementor-widget-heading h4{
  margin: 0;
  font-size: 32px;
  line-height: 1.12;
  letter-spacing: -0.02em;
  font-weight: 700;
}

.ats-survey-cta__card > .elementor-widget-text-editor{
  max-width: 880px;
  margin: 0 0 16px;
}

.ats-survey-cta__card > .elementor-widget-text-editor .elementor-text-editor{
  font-size: 17px;
  line-height: 1.70;
  color: var(--ats-muted, #64748B);
}

.ats-survey-cta__actions{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.ats-survey-cta__actions .elementor-widget-button{
  margin: 0;
}

.ats-survey-cta__actions .elementor-button-wrapper{
  display: flex;
}


/* =========================================================
   Responsive
   ========================================================= */

@media (max-width: 1024px){
  .ats-survey-outputs__grid{
    grid-template-columns: 1fr;
  }

  .ats-proof-card h1,
  .ats-proof-card h2,
  .ats-proof-card h3,
  .ats-proof-card h4{
    font-size: 22px;
  }

  .ats-inspection-proof__inner > .elementor-element[data-element_type="container"]:last-child{
    gap: 24px;
  }

  .ats-inspection-proof__card{
    flex: 0 0 calc((100% - 24px) / 2);
    max-width: calc((100% - 24px) / 2);
  }

  .ats-inspection-proof__image img{
    height: 220px;
  }
}

@media (max-width: 767px){

  /* Hide outputs on mobile for stability */
  .ats-survey-outputs{
    display: none !important;
  }

  /* Hero tidy */
  .ats-service-hero{
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }

  .ats-hero__buttons{
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
  }

  .ats-hero__buttons > .elementor-element,
  .ats-hero__buttons .elementor-widget-button,
  .ats-hero__buttons .elementor-button-wrapper{
    margin: 0 !important;
  }

  /* Shared gutters */
  .ats-services-proof__inner,
  .ats-inspection-proof__inner{
    padding: 0 18px;
  }

  .ats-survey-audience,
  .ats-survey-cta{
    padding-left: 18px;
    padding-right: 18px;
  }

  /* Section rhythm */
  .ats-services-proof{
    padding-top: 20px;
    padding-bottom: 10px;
  }

  .ats-inspection-proof{
    padding-top: 10px;
    padding-bottom: 18px;
  }

  .ats-survey-audience{
    padding-top: 18px;
    padding-bottom: 12px;
  }

  .ats-survey-cta{
    padding-top: 12px;
    padding-bottom: 28px;
  }

  /* Titles */
  .ats-services-proof__inner > .elementor-widget-heading h1,
  .ats-services-proof__inner > .elementor-widget-heading h2,
  .ats-services-proof__inner > .elementor-widget-heading h3,
  .ats-services-proof__inner > .elementor-widget-heading h4,
  .ats-inspection-proof__inner > .elementor-widget-heading h1,
  .ats-inspection-proof__inner > .elementor-widget-heading h2,
  .ats-inspection-proof__inner > .elementor-widget-heading h3,
  .ats-inspection-proof__inner > .elementor-widget-heading h4,
  .ats-survey-audience > .elementor-widget-heading h1,
  .ats-survey-audience > .elementor-widget-heading h2,
  .ats-survey-audience > .elementor-widget-heading h3,
  .ats-survey-audience > .elementor-widget-heading h4{
    font-size: 30px;
    line-height: 1.08;
  }

  .ats-survey-cta__card > .elementor-widget-heading h1,
  .ats-survey-cta__card > .elementor-widget-heading h2,
  .ats-survey-cta__card > .elementor-widget-heading h3,
  .ats-survey-cta__card > .elementor-widget-heading h4{
    font-size: 28px;
    line-height: 1.08;
  }

  /* Intro text */
  .ats-services-proof__inner > .elementor-widget-text-editor,
  .ats-inspection-proof__inner > .elementor-widget-text-editor,
  .ats-survey-audience > .elementor-widget-text-editor,
  .ats-survey-cta__card > .elementor-widget-text-editor{
    margin: 0 0 14px;
  }

  .ats-services-proof__inner > .elementor-widget-text-editor .elementor-text-editor,
  .ats-inspection-proof__inner > .elementor-widget-text-editor .elementor-text-editor,
  .ats-survey-audience > .elementor-widget-text-editor .elementor-text-editor,
  .ats-survey-audience-card > .elementor-widget-text-editor .elementor-text-editor,
  .ats-survey-cta__card > .elementor-widget-text-editor .elementor-text-editor{
    font-size: 16px;
    line-height: 1.65;
  }

  /* Services */
  .ats-services-proof__grid{
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .ats-services-proof__card > .elementor-widget-heading{
    padding: 16px 18px 0;
  }

  .ats-services-proof__card > .elementor-widget-text-editor{
    padding: 8px 18px 18px;
  }

  .ats-services-proof__card h1,
  .ats-services-proof__card h2,
  .ats-services-proof__card h3,
  .ats-services-proof__card h4{
    font-size: 21px;
  }

  /* Inspection */
  .ats-inspection-proof__inner > .elementor-element[data-element_type="container"]:last-child{
    gap: 16px;
  }

  .ats-inspection-proof__card{
    flex: 0 0 100%;
    max-width: 100%;
  }

  .ats-inspection-proof__image{
    padding: 12px 12px 8px;
  }

  .ats-inspection-proof__image img{
    height: 220px;
  }

  .ats-inspection-proof__card > .elementor-widget-heading{
    padding: 4px 20px 0;
  }

  .ats-inspection-proof__card > .elementor-widget-text-editor{
    padding: 8px 20px 20px;
  }

  .ats-inspection-proof__card h1,
  .ats-inspection-proof__card h2,
  .ats-inspection-proof__card h3,
  .ats-inspection-proof__card h4{
    font-size: 21px;
  }

  /* Audience */
  .elementor .ats-survey-audience.e-con,
  .elementor .ats-survey-cta.e-con{
    max-width: 100% !important;
  }

  .ats-survey-audience__row{
    gap: 12px;
  }

  .ats-survey-audience-card{
    width: 100%;
    padding: 18px 18px 16px;
  }

  .ats-survey-audience-card > .elementor-widget-heading h1,
  .ats-survey-audience-card > .elementor-widget-heading h2,
  .ats-survey-audience-card > .elementor-widget-heading h3,
  .ats-survey-audience-card > .elementor-widget-heading h4{
    font-size: 18px;
    line-height: 1.24;
  }

  /* CTA */
  .ats-survey-cta__card{
    padding: 20px 18px 18px;
    border-radius: 18px;
  }

  .ats-survey-cta__actions{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
}

@media (max-width: 389px){
  .ats-hero__buttons,
  .ats-survey-cta__actions{
    flex-direction: column;
  }

  .ats-hero__buttons .elementor-button,
  .ats-survey-cta__actions .elementor-button{
    width: 100%;
  }
}
