/*
Theme Name: Wakefield Residential
Description: Wakefield Residential flip theme — standalone rebrand of the denstock build. Brand kit: BRIEF-Wakefield.md §2-§3.
Author: Resident360
Version: 1.0.1
Text Domain: wakefield
*/
/*
PARENT style.css RULES PRESERVED — the standalone fork replaced denstock's style.css wholesale;
these are its only functional rules (senior audit finding: /about/ slide_item_3/4 regression).
*/
img{
    max-width:100%;
    height:auto;
}
.big_slider_content_item.slide_item_3,.big_slider_content_item.slide_item_4{
    background-position:bottom !important;
}
.whiteText a{
    color:#fff;
}

/*
WAKEFIELD RESIDENTIAL BRAND KIT (derived from R360_Wakefield Residential_StyleGuide.pdf — see BRIEF-Wakefield.md §2-§3)

Typeface: Gotham Light (print guide). Web kit = Montserrat (300 display / 400 body / 500 UI);
"Gotham" entries activate only if licensed webfonts are ever added. One family, no serifs.

Palette (approved hexes, roles are a build-time derivation — designer-reversible):
  --wf-dark   #283e4c  primary dark (7546 C)  — headings, body links, dark surfaces
  --wf-rust   #af6145  accent (4014 C)        — CTAs white-on-rust, accent labels on light
  --wf-steel  #4c7285  secondary (5405 C)     — secondary buttons/surfaces
  --wf-tint   #acc6cb  light tint (5513 C)    — light surfaces; accent on dark (never white text on tint)
  --wf-greige #d7d2c4  warm neutral (7527 C)  — alt backgrounds, borders

Contrast guards: rust text passes AA on white only (4.55:1) — never rust on greige/tint;
on dark surfaces the accent is tint; on tint surfaces text is primary-dark.
Each override below swaps the parent's Denstock color for its role-equivalent (parent selector preserved).
*/

:root{
  --wf-dark:#283e4c;
  --wf-rust:#af6145;
  --wf-rust-deep:#8f4e37;
  --wf-steel:#4c7285;
  --wf-tint:#acc6cb;
  --wf-greige:#d7d2c4;
  --wf-font:"Gotham A","Gotham B","Gotham","Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

/* ---- Typography (kit) ---- */
body{
  font-family:var(--wf-font);
  font-weight:400;
  color:var(--wf-dark);
}
h1,h2,h3,h4,h5,h6{
  font-family:var(--wf-font);
  font-weight:300; /* faithful to "Gotham Light"; bump only as a recorded deviation */
}
p,li,figcaption,blockquote{
  font-family:var(--wf-font);
}

/* ---- Generic links (bootstrap blue is off-brand) ---- */
a{ color:var(--wf-dark); }
a:hover{ color:var(--wf-rust); }

/* ---- Parent palette swaps: golds → rust, slate → primary dark, light blue → tint ---- */
.text_box_inner p a{
  color:var(--wf-rust);
  font-weight:500;
}
.text_box_with_bg_text p a{
  background:var(--wf-rust);
}
.text_box_with_bg_text p a:hover,
.testimonial_section_content_inner p a:hover,
.featured_properties_btn a:hover,
.team_member_bio_btn:hover{
  background:var(--wf-dark);
}
body.home section#section_1::after{
  background:var(--wf-rust);
}
.section_title{
  color:var(--wf-dark);
}
.section_title h3{
  color:var(--wf-rust);
  font-weight:500;
}
.featured_properties_item_content::before{
  background:var(--wf-tint);
}
.featured_properties_item_content_btn{
  color:var(--wf-tint); /* sits on the dark gradient band — tint on black passes; the earlier primary-dark choice was invisible */
  font-weight:500;
}
.featured_properties_btn a{
  background:var(--wf-rust); /* was tint+white (contrast fail); CTA role = white-on-rust */
  color:#fff;
}
.testimonial_section_content_inner h4{
  color:var(--wf-rust);
}
.footer_container_inner{
  color:var(--wf-dark);
}
.footer ul li a{
  color:var(--wf-dark);
}
.innerpageheader .header_navigation ul li a{
  color:var(--wf-dark);
}
.innerpageheader .header_content{
  background:rgba(40,62,76,.95); /* was rgb(59 69 91 / 95%) */
}
.innerpageheader .header_content h3{
  color:var(--wf-tint); /* accent-on-dark = tint (rust on dark fails contrast) */
}
.big_slider_content_title .section_title h3,
.blog_post_list_title .section_title h3{
  color:var(--wf-rust);
}
.big_slider_content_contents{
  color:var(--wf-tint);
}
.team_member_details{
  background:var(--wf-tint);
  color:var(--wf-dark); /* was tint+white (contrast fail) */
}
.team_member_bio_btn{
  background:var(--wf-steel);
}
.fullscreenmodal{
  background:var(--wf-dark);
}
.fullscreenmodal button.close{
  color:var(--wf-tint);
}
.carousel-indicators li.active{
  background-color:var(--wf-rust);
}

/* ---- Mobile menu swaps (responsive.css equivalents) ---- */
.mobile_menu_trigger.active span.close_btn{
  color:var(--wf-tint);
}
.innerpageheadermobile.mobile_menu_trigger span{
  background:var(--wf-dark);
}

/* ---- Featured properties grid (7 items, col-md-6): uniform height + equal gaps ----
   Horizontal gutter is Bootstrap's 15px+15px = 30px; vertical gap was 0 on desktop
   (row pitch = card height). Put the rhythm on the column so both axes are 30px. */
.featured_properties_items .col-md-6{
  margin-bottom:30px;
}
.featured_properties_item{
  margin-bottom:0;        /* parent sets 30px on the item at mobile — single source on the column instead */
  height:700px;
  min-height:700px;       /* uniform default min height; cards are background-image panels */
}
@media all and (max-width:767px){
  .featured_properties_item{
    height:300px;         /* parent's mobile height */
    min-height:300px;
  }
}

/* ---- Communities page (sections/communities.php): featured-style cards, uniform size ----
   Cards list the 7 real communities from the community CPT; map markers read each post's
   lat_lng ACF field. Details overlay the image bottom on a gradient (featured look),
   uniform image height + the parent's 30px card margin matches the 30px column gutter. */
.communities_list .community_card{
  position:relative;
  margin-bottom:30px;
}
.community_card_image{
  height:420px;
}
.community_card_image span{
  color:var(--wf-tint); /* VIEW ON MAP label on the dark hover overlay */
}
.community_card_details{
  position:absolute;
  left:0; right:0; bottom:0;
  margin-top:0;
  padding:60px 40px 25px;
  background:linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,.85));
  color:#fff;
}
.community_card_details h3,
.community_card_details p,
.community_card_details p span{
  color:#fff;
}
.community_card_details .website_link a,
.community_card_details p span.website_link a{
  color:var(--wf-tint); /* parent's higher-specificity rule needed matching */
}

/* ---- Senior-audit sweep: remaining parent selectors still carrying Denstock colors ---- */
.contact_field_submit input{
  background:var(--wf-rust);
  color:#fff;
}
.contact_field_submit input:hover{
  background:var(--wf-rust-deep);
}
body.home section#section_2::after{
  background:var(--wf-rust);
}
.big_slider_content_item_content_inner{
  background:rgba(40,62,76,.95); /* was rgba(59,69,91,.95) */
}
.big_slider_content_item_content_number{
  color:var(--wf-tint);
}
.simple_text_box_section::before{
  background:var(--wf-rust);
}
.additional_content ul li{
  background:var(--wf-dark);
}
.footer_company_name{
  color:var(--wf-dark);
  font-weight:500;
}
.community_card_details h3{
  font-weight:500;
}
.header.innerpageheader .header_navigation ul li a::after{
  background:var(--wf-dark);
}
.footer ul li a:hover{
  color:var(--wf-rust);
}
.modal_form input.wpcf7-submit{
  background:var(--wf-rust);
  color:#fff;
}
/* mobile (responsive.css equivalents) */
.mobile_menu,.mobile_menu.active{
  background:var(--wf-dark);
}
.mobile_menu ul::before,.mobile_menu ul::after{
  background:var(--wf-tint);
}
.big_slider_content_item_nav_mobile{
  background:rgba(40,62,76,.95);
}
@media all and (max-width:767px){
  .home .text_box_with_bg_text,.text_box_with_bg_text div{
    background:var(--wf-dark);
  }
}

/* ---- Odd last item in a 2-up grid: center it (featured properties + communities) ----
   Fires only when the last child sits on an odd nth position (7th of 7) — pairs stay paired. */
.featured_properties_items .row > .col-md-6:last-child:nth-child(odd),
.communities_list_inner .row > .col-md-6:last-child:nth-child(odd),
.blog_post_list_items .row > .col-md-6:last-child:nth-child(odd){
  margin-left:auto;
  margin-right:auto;
}

/* ---- Featured cards: force cover ----
   Parent main.css sets background-size:100% !important on .featured_properties_item, which
   out-cascades the .cover class (equal specificity, later position) — images letterboxed at
   natural aspect instead of filling the card, so photo areas looked unequal between cards.
   Same-specificity !important, declared later (wp_head) -> this wins. */
.featured_properties_item{
  background-size:cover !important;
  background-position:center !important;
}

/* ---- Communities cards: hover interplay (senior-audit + Paul fix) ----
   The dark sweep + VIEW ON MAP label now own the hover state; the details band fades out
   on hover (it sat inside the sweep's path and fought the animation). */
.community_card_details{
  z-index:25;                      /* band above the ::before sweep (z-20) */
  transition:opacity .3s ease;
}
.community_card:hover .community_card_details{
  opacity:0;                       /* fade the band away on hover */
}
.community_card_image span{
  top:50%;                         /* centered, not 80% (overlapped the band) */
  opacity:0;
  z-index:30;                      /* label above the sweep */
  transition:opacity .3s ease;
}

/* ---- Featured cards: smooth the hover band ---- */
.featured_properties_item_content{
  transition:padding .3s ease;     /* parent jumps 40px->70px instantly */
}

/* ---- Home hero: black tint overlay for text readability ----
   Same tint as the community-card overlay (rgba(0,0,0,.4), Paul's reference).
   Scoped to home hero slides; nav and content sit above the tint. */
body.home .header:not(.innerpageheader){
  position:relative;
}
body.home .header:not(.innerpageheader)::before{
  content:"";
  position:absolute;
  top:0; left:0; right:0; bottom:0;
  background:rgba(0,0,0,.4);
  z-index:0;
}
body.home .header:not(.innerpageheader) .header_inner{
  position:relative;
  z-index:1;
}

/* ---- Featured cards: img-based cover + smooth GPU zoom ----
   The inline-background + 100%->130% hover replaced by a real <img> (object-fit cover at
   every aspect — no letterboxing) with a transform zoom on hover. The old bg rules are
   neutralised (the div carries no background anymore). */
.featured_properties_item{
  position:relative;
  overflow:hidden;
  background:none !important;
}
.featured_properties_item_bg{
  position:absolute;
  top:0; left:0;
  width:100%; height:100%;
  object-fit:cover;
  object-position:center;
  z-index:0;
  transition:transform .3s ease;
}
.featured_properties_item:hover .featured_properties_item_bg{
  transform:scale(1.3);
}
.featured_properties_item_content{
  position:relative;
  z-index:1;
}
