/* Peachtree Movers — child overrides (pass 2 per Edric's mockup review 11/2) */

/* ---------- global type: kickers golden, section titles black ---------- */
.pre-title.text-gray-700,.pre-title.text-gray-900{color:#D89A4C}
h2.text-primary,.prose h2{color:#231F20}
/* h3 and below inside content run golden */
.prose h3,.prose h4,.prose h5,.prose h6{color:#D89A4C}
/* block subtitles (the text-gray-900 font-serif line under titles) golden */
.text-gray-900.font-serif.font-semibold{color:#D89A4C}

/* ---------- header: white bar, full-height logo, orange gradient on the
   right ~60% of the CTA bar fading to white toward the middle ---------- */
.site-header{background-color:#fff;box-shadow:0 4px 14px rgba(35,31,32,.08)}
.site-header .title-area a>div{max-width:230px}
@media (min-width:1024px){.site-header .title-area a>div{max-width:300px}}
/* desktop-only header layout: the parent hides .header-right below lg and runs
   the logo + hamburger row — unscoped overrides forced the desktop nav onto
   mobile and crushed the logo */
@media (min-width:1024px){
.site-header .wrap{padding-top:0;padding-bottom:0;align-items:center}
.site-header .nav-areas{flex:1;display:flex;align-items:center;padding:.5rem 0 .5rem}
.site-header .header-right{display:flex;flex-direction:column;gap:0}
}
.header-ctas{background:linear-gradient(to right,rgba(231,176,102,0) 0,rgba(231,176,102,.6) 14%,#E7B066 32%,#D89A4C 100%);margin-right:calc(50% - 50vw);padding:.65rem 2rem .65rem calc(4rem + 10vw);padding-right:calc(50vw - 50% + 2rem)}
.header-ctas .btn--solid{background:#43A854;border-color:#43A854;color:#fff}
.header-ctas .btn--outline,.header-ctas a[href^="tel:"]{background:#fff;border:2px solid #43A854;color:#231F20}
/* nav links black, centered in the white strip under the gradient bar */
.site-header .nav-areas .menu{align-items:center}
.site-header .nav-areas .menu>li{display:flex;align-items:center}
.site-header .nav-areas .menu>li>a{color:#231F20;font-weight:400}
.site-header .nav-areas .menu>li>a:hover{color:#43A854}

/* ---------- hero: no card background, black submit ---------- */
/* hero only: transparent card + white text; standalone sm-content-form cards keep the theme's peach card */
.sm-hero .quote-form-card{background:transparent;box-shadow:none;padding-left:0;padding-right:0}
.sm-hero .quote-form-card .gform_title,.sm-hero .quote-form-card .gform_wrapper .gform_title,.sm-hero .quote-form-card h2,.sm-hero .quote-form-card h3,.sm-hero .quote-form-card .font-serif{color:#fff}
.sm-hero .quote-form-card .gf_step_label{color:#fff}
.quote-form-card input[type=submit],.quote-form-card .gform_next_button,.quote-form-card .gform_previous_button{background:#231F20;border-color:#231F20;color:#fff}
/* GF Orbital buttons style via theme vars; plain selectors lose (newsletter gotcha) */
.quote-form-card .gform_wrapper{--gf-ctrl-btn-bg-color-primary:#231F20;--gf-ctrl-btn-border-color-primary:#231F20;--gf-ctrl-btn-color-primary:#fff;--gf-ctrl-btn-bg-color-hover-primary:#000;--gf-ctrl-btn-border-color-hover-primary:#000;--gf-ctrl-btn-color-hover-primary:#fff}

/* ---------- services: contained grid-style slider, white boxed cards on gray,
   black card titles ---------- */
.sm-services-slider{background-color:#F7F9F8}
.sm-services-slider .sm-edge-fade{display:none}
.sm-services-slider .sm-edge-slider{max-width:1156px;width:90%;margin-left:auto;margin-right:auto}
/* static contained grid instead of the edge-bleed slider (WPP recipe) */
.sm-services-slider .js-sm-cards-slider{width:100% !important;margin-left:0 !important}
.sm-services-slider .swiper-wrapper{display:grid;grid-template-columns:1fr;gap:1.5rem;transform:none !important}
@media (min-width:640px){.sm-services-slider .swiper-wrapper{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.sm-services-slider .swiper-wrapper{grid-template-columns:repeat(3,1fr)}}
.sm-services-slider .swiper-slide{width:auto !important;margin:0 !important}
.sm-services-slider .sm-arrow{display:none}
/* mockup cards: square corners, image flush to the card edges, left-aligned text */
.sm-services-slider .swiper-slide>a{background:#fff;border-radius:2px;padding:0;box-shadow:0 8px 20px rgba(0,0,0,.08);display:flex;flex-direction:column}
.sm-services-slider .swiper-slide>a>div:first-child{border-radius:0}
.sm-services-slider .swiper-slide>a .text-center{text-align:left;margin-top:0;padding:1.15rem 1.35rem 1.6rem}
.sm-services-slider .swiper-slide>a .font-serif{font-family:inherit;text-transform:uppercase;font-size:1.02rem;font-weight:600;letter-spacing:.01em}
.sm-services-slider .ptm-svc-accent{color:#D89A4C}
.sm-services-slider .text-primary.font-serif,.sm-sub-services .text-primary.font-serif{color:#231F20}

/* ---------- content + image: cream/gray accent block behind the image like WPP,
   square-ish image ---------- */
.sm-content-image{overflow:clip}
.sm-content-image .flex>div:last-child{position:relative}
.sm-content-image .flex>div:last-child::before{content:"";position:absolute;top:50%;left:10%;right:10%;height:calc(100% + 4.5rem);transform:translateY(-50%);background:#E7B066;opacity:.35}
.sm-content-image .rounded-xl{position:relative;z-index:1}
.sm-content-image .text-gray-900.font-serif{color:#D89A4C}

/* ---------- process steps: gray band, dark text, golden kicker, uniform icons,
   no connector arrows ---------- */
.sm-steps{background-color:#F7F9F8}
.sm-steps .pre-title{color:#D89A4C}
.sm-steps .text-cream{color:#231F20}
.sm-steps .text-cream.opacity-80{color:#4a4a4a;opacity:1}
.sm-steps__arrow{display:none}
.sm-steps__step .bg-white{width:170px;height:170px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(0,0,0,.06)}
.sm-steps__step .bg-white img{max-height:120px;width:auto;margin:0 auto}
.sm-steps .btn{background:#231F20;border-color:#231F20;color:#fff}

/* ---------- service areas / locations band: single tone, no dual-tone callout ---------- */
.sm-locations-map{background:var(--color-cream)}

/* ---------- newsletter: dark submit (GF theme framework uses its own button vars) ---------- */
.newsletter-band [type=submit],.newsletter-band .gform-theme-button,.newsletter-band .gform_button{background:#231F20 !important;border-color:#231F20 !important;color:#fff !important;--gf-ctrl-btn-bg-color-primary:#231F20;--gf-ctrl-btn-border-color-primary:#231F20}

/* ---------- footer (WPP layout, PTM green): location + socials sit in a
   column to the RIGHT of the logo/description area. The left block's DOM
   order is logo, description, socials, locations grid; regrid it at lg. ---------- */
@media (min-width:1024px){
.site-footer .footer-columns>div:first-child{display:grid;grid-template-columns:1.1fr .9fr;column-gap:2.5rem;row-gap:1.5rem;align-content:start;width:52%}
.site-footer .footer-columns>div:last-child{width:48%;border-left:0;padding-left:0}
.site-footer .footer-columns>div:first-child>*{margin-top:0 !important}
.site-footer .footer-columns>div:first-child>div:nth-child(1){grid-column:1;grid-row:1}
.site-footer .footer-columns>div:first-child>div:nth-child(2){grid-column:1;grid-row:2}
.site-footer .footer-columns>div:first-child>.footer-socials{grid-column:2;grid-row:2;align-self:start}
}
/* white social icons (all breakpoints) */
.site-footer .footer-socials,.site-footer .footer-socials a{color:#fff}
.site-footer .footer-socials a:hover{color:#E7B066}
@media (min-width:1024px){
.site-footer .footer-columns>div:first-child>div:nth-child(4){grid-column:2;grid-row:1;grid-template-columns:1fr;padding-top:0}
}

/* Rubik ligature guard carried from the JT build (fi/fl cramped at display sizes). */
body{font-variant-ligatures:none}

/* ---------- mockup section backgrounds (Edric 11/2): services/process/reviews
   = #F7F9F8, badge (family logo) slider = #F4F4F2 ---------- */
.reviews-masonry{background-color:#F7F9F8}
.sm-logo-slider{background-color:#F4F4F2}

/* hero form: date field keeps a visible label (white) above the datepicker;
   every other field carries its name as placeholder */
.quote-form-card .gform_wrapper .gfield--type-date .gfield_label,.quote-form-card .gform_wrapper.gravity-theme .gfield--type-date .gfield_label{display:block;color:#101010;font-size:.875rem;font-weight:600;margin-bottom:.375rem;text-align:left}
.sm-hero .quote-form-card .gform_wrapper .gfield--type-date .gfield_label,.sm-hero .quote-form-card .gform_wrapper.gravity-theme .gfield--type-date .gfield_label{color:#fff}

/* ---------- sidebar CTA card (WPP pattern, PTM colors) ---------- */
.ptm-side-cta{background:#43A854;border-radius:.5rem;padding:2rem 1.6rem;text-align:center;position:sticky;top:calc(var(--sm-header-h,140px) + 16px)}
.ptm-side-cta__kicker{color:#231F20;font-weight:700;text-transform:uppercase;font-size:.72rem;letter-spacing:.12em}
.ptm-side-cta__title{color:#fff;font-weight:600;font-size:1.5rem;margin:.6rem 0 0}
.ptm-side-cta p{color:#eef7ef;font-size:.9rem;margin:.75rem 0 1.25rem}
.ptm-side-cta__btn{display:block;background:#E7B066;color:#231F20;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;padding:.8rem 1rem;text-align:center;border-radius:.375rem}
.ptm-side-cta__btn:hover{background:#D89A4C;color:#231F20;text-decoration:none}
.ptm-side-cta a.ptm-side-cta__tel{display:block;color:#fff;font-weight:700;margin-top:.9rem}
.ptm-side-cta a.ptm-side-cta__tel:hover{color:#E7B066}

/* FAQ answers run the full width of the accordion panel (typography plugin caps .prose at 65ch) */
.faq-answer .prose{max-width:none}

/* hero h1: open the leading so descenders clear the next line */
.sm-hero h1{line-height:1.2}
/* interior banner h1s get the same leading */
.page-banner h1{line-height:1.2}

/* content links: brand green, darkened to #2F7A3C for WCAG AA on white (pure
   #43A854 is only ~3:1); hover brightens to the true brand green */
.sm-content-image .prose a:not(.btn),.sm-content .prose a:not(.btn),.sm-content-form .prose a:not(.btn){color:#2F7A3C;text-decoration:underline}
.sm-content-image .prose a:not(.btn):hover,.sm-content .prose a:not(.btn):hover,.sm-content-form .prose a:not(.btn):hover{color:#43A854}

/* service-area pages: tighten the gap under the banner (main margin + first
   section padding stacked to 128px) and the rhythm between sections */
.single-service_area main.content{margin-top:0}
.single-service_area .entry-content>.sm-content:first-child,.single-service_area .entry-content>.sm-content-image:first-child{padding-top:2.5rem}
.single-service_area :is(.sm-content,.sm-content-image)+:is(.sm-content,.sm-content-image){padding-top:2rem}
