/*
Theme Name: Astra Child
Theme URI: https://premieryardsolutions.com
Description: Child theme for Astra
Author: Rafael Freitas
Template: astra
Version: 1.0.0
*/


/* =====================
   FOOTER
   ===================== */

/* .site-primary-footer-wrap[data-section="section-primary-footer-builder"] { 
	background-color: #1e1e1e;
} */

/* Footer background */
.site-primary-footer-wrap[data-section="section-primary-footer-builder"], .site-below-footer-wrap[data-section="section-below-footer-builder"]  {
  background-color: #0F2A1F;
}

/* Footer text */
.site-primary-footer-wrap,
.site-primary-footer-wrap p,
.site-primary-footer-wrap li,
.site-below-footer-wrap,
.site-below-footer-wrap p{
  color: #C9D1CC;
}

/* Footer headings */
.site-primary-footer-wrap h1,
.site-primary-footer-wrap h2,
.site-primary-footer-wrap h3,
.site-primary-footer-wrap h4,
.site-primary-footer-wrap h5,
.site-primary-footer-wrap h6{
  color: #F2F4F3;
}

/* heading space */
.site-primary-footer-wrap h4,
.site-primary-footer-wrap p{
	margin-bottom: 24px
}

/* Footer links */
.site-primary-footer-wrap a {
  color: #8FD6A5;
  text-decoration: none;
}

/* Footer link hover */
.site-primary-footer-wrap a:hover {
  color: #A8E6BC;
  text-decoration: underline;
}

/* Remove space from list */
.site-primary-footer-wrap ul {
  list-style: none;
  padding: 0;
	margin: 0px 0px 32px 0px;
}

/* Footer Google Map iframe layout fix */
.pys-map{
  width:100%;
  max-width:100%;
  aspect-ratio: 16 / 10;   /* try 1 / 1 if you want a squarer map */
  border-radius: 12px;  /* match your site rounding */
  overflow:hidden;
}

/* Footer custom social icon */
.site-footer a svg {
  color: #FFFFFF;
  transition: color 0.2s ease;
}

.site-footer a:hover svg {
  color: #8FD6A5; /* Spring Moss */
}

.pys-map iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
}

/* =========================================================
   PYS HEADER (Astra Free) – Sticky + Nav Hover/Active + CTA
   Brand Green: #215f35
   ========================================================= */

/* --- Sticky Header --- */
#masthead.site-header{
  position: sticky;
  top: 0;
  z-index: 9999;
  background: #215f35;
  box-shadow: 0 6px 18px rgba(0,0,0,0.08);
}

/* Ensure header bar stays solid on all pages */
#masthead .ast-primary-header-bar{
  background: #215f35 !important;
}

/* WP Admin Bar offset (only when logged in) */
body.admin-bar #masthead.site-header{ top: 32px; }
@media (max-width: 782px){
  body.admin-bar #masthead.site-header{ top: 46px; }
}

/* Prevent parent containers from breaking sticky */
#page, #content, .site{ overflow: visible !important; }

/* --- Primary Nav Links (scoped to header only) --- */
#masthead .main-header-menu a{
  color: rgba(255,255,255,0.70);
  text-decoration: none;
  position: relative;
  transition: color 0.2s ease, opacity 0.2s ease;
  font-weight: 500;
}

/* Hover */
#masthead .main-header-menu a:hover{
  color: #ffffff;
  opacity: 0.1;
}

/* Underline animation (default hidden)
#masthead .main-header-menu a::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  height: 2px;
  background-color: rgba(255,255,255,0.45);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.2s ease, background-color 0.2s ease;
}  */

/* Underline on hover 
#masthead .main-header-menu a:hover::after{
  transform: scaleX(1);
}*/

/* Active/current page */
#masthead .main-header-menu .current-menu-item > a,
#masthead .main-header-menu .current-menu-ancestor > a{
  color: #ffffff;
  font-weight: 600;
}

/* Active underline (always visible, stronger) 
#masthead .main-header-menu .current-menu-item > a::after,
#masthead .main-header-menu .current-menu-ancestor > a::after{
  transform: scaleX(1);
  background-color: rgba(255,255,255,0.75);
}*/

/* --- Header CTA Button (Get a Quote) --- */
#masthead .ast-custom-button{
  background: #ffffff !important;
  color: #215f35 !important;
  border-radius: 8px;
  padding: 10px 16px;
  font-weight: 600;
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

/* CTA hover */
#masthead .ast-custom-button:hover{
  background: rgba(255,255,255,0.92) !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(0,0,0,0.10);
}


/* =========================================================
   HERO
   ========================================================= */


/* HERO OVERLAY — left-anchored readability (best for your layout) */
.hero-overlay{
  position: relative;
  overflow: hidden;
}

.hero-overlay::before{
  content:"";
  position:absolute;
  inset:0;

  background:
    linear-gradient(
      90deg,
     rgba(15, 42, 31, 0.78) 0%,
      rgba(15, 42, 31, 0.65) 28%,
      rgba(15, 42, 31, 0.45) 55%,
      rgba(15, 42, 31, 0.15) 78%,
      rgba(15, 42, 31, 0.00) 100%
    ),
    linear-gradient(
      0deg,
      rgba(15, 42, 31, 0.10) 0%,
      rgba(15, 42, 31, 0.10) 100%
    );

  z-index:1;
  pointer-events:none;
}

.hero-overlay > *{
  position: relative;
  z-index:2;
}

.hero-overlay h1,
.hero-overlay p,
.hero-overlay li{
  text-shadow: 0 2px 10px rgba(0,0,0,0.28);
}

/* =========================================================
   PYS – MOBILE MENU (Astra) – BALANCED + STRONG CTA
   Brand Green: #215f35
   ========================================================= */

/* Mobile menu panel background */
#ast-mobile-header .ast-mobile-header-content{
  background: #1b4f2c !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.35);
  padding: 18px 0 22px !important; /* smaller so it doesn't feel stretched */
}

/* Menu list */
#ast-mobile-header #ast-hf-mobile-menu{
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Each menu row */
#ast-mobile-header #ast-hf-mobile-menu > li{
  border-bottom: 1px solid rgba(255,255,255,0.14) !important;
  background: transparent !important;
}

/* Menu links (reduced size + cleaner spacing) */
#ast-mobile-header #ast-hf-mobile-menu a.menu-link{
  display: block !important;
  padding: 16px 22px !important;     /* reduced spacing */
  font-size: 22px !important;        /* was too big before */
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: rgba(255,255,255,0.92) !important;
  background: transparent !important;
}

/* Tap feedback */
#ast-mobile-header #ast-hf-mobile-menu a.menu-link:active{
  background: rgba(255,255,255,0.10) !important;
}

/* Active page highlight (subtle) */
#ast-mobile-header #ast-hf-mobile-menu .current-menu-item > a{
  background: rgba(255,255,255,0.12) !important;
  color: #ffffff !important;
}

/* CTA section: put it directly under the menu (not far down) */
#ast-mobile-header .ast-header-button-1{
  padding: 18px 22px 0 !important;   /* no huge bottom padding */
  background: transparent !important;
}

/* Make CTA feel big + intentional */
#ast-mobile-header .ast-header-button-1 .ast-custom-button-link{
  display: block !important;
  width: 100% !important;
}

#ast-mobile-header .ast-header-button-1 .ast-custom-button{
  display: block !important;
  width: 100% !important;            /* FULL WIDTH so it doesn't look small */
  text-align: center !important;
  background: #ffffff !important;
  color: #215f35 !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  padding: 14px 18px !important;
  border-radius: 16px !important;
  box-shadow: 0 10px 24px rgba(0,0,0,0.18) !important;
}

/* Hide the duplicate text link Astra outputs under the button */
#ast-mobile-header .ast-header-button-1 a.menu-link{
  display: none !important;
}

/* ===============================
   MOBILE MENU (ASTRA)
   =============================== 

.ast-mobile-header-content a {
	color: #1e1e1e;
	text-decoration: none;
}

.ast-mobile-header-content .current-menu-item > a {
	font-weight: 600;
}*/

/* ===============================
   END MOBILE CUSTOM CSS
   =============================== */



/* =====================================================
   SureForms – Master Styling
   Form ID: 1150
   Scoped to: .srfm-form-container-1150
   ===================================================== */

/* =====================
   INPUTS & TEXTAREA
   ===================== */

.srfm-form-container-1150 input.srfm-input-common,
.srfm-form-container-1150 input.srfm-input-input,
.srfm-form-container-1150 input.srfm-input-email,
.srfm-form-container-1150 textarea.srfm-input-common,
.srfm-form-container-1150 textarea.srfm-input-textarea{
  background-color: #FFFFFF !important;
  color: rgba(20,20,20,0.90) !important;
  border: 1px solid rgba(31,107,58,0.25) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}

/* Remove wrapper tint */
.srfm-form-container-1150 .srfm-block-wrap{
  background: transparent !important;
}

/* =====================
   PLACEHOLDER
   ===================== */

.srfm-form-container-1150 input::placeholder,
.srfm-form-container-1150 textarea::placeholder{
  color: rgba(20,20,20,0.45) !important;
}

/* =====================
   FOCUS STATE
   ===================== */

.srfm-form-container-1150 input:focus,
.srfm-form-container-1150 textarea:focus{
  outline: none !important;
  border-color: rgba(31,107,58,0.60) !important;
  box-shadow: 0 0 0 4px rgba(31,107,58,0.15) !important;
}

/* =====================
   LABELS & DESCRIPTIONS
   ===================== */

.srfm-form-container-1150 .srfm-block-label{
  color: rgba(20,20,20,0.85) !important;
  font-weight: 600 !important;
}

.srfm-form-container-1150 .srfm-description{
  color: rgba(20,20,20,0.60) !important;
}


/* =====================================================
   SureForms – SUCCESS (Form 1150) – SIMPLE + RELIABLE
   ===================================================== */

/* Make the success box behave like the form area */
.srfm-form-container-1150 .srfm-single-form.srfm-success-box.in-page.srfm-active{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  max-width: none !important;

  /* This creates “form-like” breathing room */
  padding: 48px 32px !important;
  box-sizing: border-box !important;

  /* Optional: helps it feel like it fills the form card */
  min-height: 420px;
}

/* The actual success message wrapper */
.srfm-form-container-1150 #srfm-success-message-page-1150{
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 auto !important;

  text-align: center !important;

  /* Prevent weird vertical/skinny wrapping */
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

/* Mobile */
@media (max-width: 782px){
  .srfm-form-container-1150 .srfm-single-form.srfm-success-box.in-page.srfm-active{
    padding: 40px 18px !important;
    min-height: 360px;
  }
  .srfm-form-container-1150 #srfm-success-message-page-1150{
    max-width: 92vw !important;
  }
}

/* ==========================================
   Contact block: vertically center the whole green+white section after submission
   (Spectra container id: 0859ac85)
   ========================================== */

.wp-block-spectra-container[data-spectra-id="0859ac85"]{
  min-height: calc(100vh - 120px) !important; /* 120px ~ sticky header space */
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important; /* vertical centering */
}

/* Optional: if it still feels slightly high/low, tweak these */
.wp-block-spectra-container[data-spectra-id="0859ac85"]{
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}


/* =====================
   SUBMIT BUTTON
   ===================== */

.srfm-form-container-1150 .srfm-submit-button{
  background: #1F6B3A !important;
  color: #FFFFFF !important;
  border-radius: 10px !important;
  padding: 12px 18px !important;
  font-weight: 600 !important;
  border: none !important;
  transition: all 0.2s ease-in-out;
}

.srfm-form-container-1150 .srfm-submit-button:hover{
  filter: brightness(0.95);
}

.srfm-form-container-1150 .srfm-submit-button:focus{
  outline: none !important;
  box-shadow: 0 0 0 4px rgba(31,107,58,0.18) !important;
}


/* =====================
   ERRORS (Form 1150)
   ===================== */

/* Error message text */
.srfm-form-container-1150 .srfm-error-message{
  color: #A12B1F !important; /* warmer, calmer red */
  font-size: 14px !important;
  line-height: 20px !important;
  margin-top: 8px !important;
  font-weight: 500 !important;
}

/* Error border */
.srfm-form-container-1150 input.srfm-input-common.srfm-error,
.srfm-form-container-1150 textarea.srfm-input-common.srfm-error{
  border-color: rgba(161,43,31,0.55) !important;
}

/* Subtle background tint for invalid field (very refined) */
.srfm-form-container-1150 input.srfm-input-common.srfm-error,
.srfm-form-container-1150 textarea.srfm-input-common.srfm-error{
  background-color: #FFF7F5 !important;
}

.srfm-form-container-1150 {
  background: transparent !important;
}


/* =====================
   BODY
   ===================== */

/* FORCE white page background on tablet/mobile (Astra separate container) */
@media (max-width: 921px){
  html, body,
  body.ast-separate-container,
  body.ast-separate-container #page,
  body.ast-separate-container .site,
  body.ast-separate-container .site-content,
  body.ast-separate-container .ast-container{
    background-color: #fff !important;
    background-image: none !important;
  }
}


/* =========================================
   PYS – Text CTA Link (designed underline)-
   Use class: .pys-text-link
   ========================================= */

.pys-text-link a{
  color: #1F6B3A;
  /*font-weight: 700;*/
  text-decoration: none;

  display: inline-block;
  /*margin-top: 8px;*/

  /* custom underline */
  background-image: linear-gradient(currentColor, currentColor);
  background-size: 100% 1px;
  background-position: 0 100%;
  background-repeat: no-repeat;
  /*padding-bottom: 4px;*/

  transition: color 0.2s ease, background-size 0.2s ease;
}

.pys-text-link a:hover{
  color: 0f2b1f;
  background-size: 100% 2px;
	font-weight: 700;
}

.pys-text-link a:focus-visible{
  outline: 3px solid rgba(31,107,58,0.35);
  outline-offset: 4px;
  border-radius: 4px;
}


/* =========================================
   Testimonial Cards
   ========================================= */

.testimonial-card, .pys-shadow {
  box-shadow: 0 8px 24px rgba(33, 95, 53, 0.06);
  border-radius: 18px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.testimonial-card:hover, .pys-shadow:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 40px rgba(33, 95, 53, 0.12);
}