/*
Theme Name: BCD Real Estate 2026
Theme URI: https://bcdrealestate.co.uk/
Author: BCD Real Estate
Description: Bespoke theme for BCD Real Estate, built from the approved 2026 design.
Version: 1.6
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: bcd2026
*/
html{scroll-behavior:smooth}
body{margin:0;background:#1E2533;-webkit-font-smoothing:antialiased}
img{max-width:100%}
.bcd-form .wpcf7 form{display:flex;flex-direction:column;gap:26px}
.bcd-form .wpcf7 form p{margin:0}
.bcd-form label{display:flex;flex-direction:column;gap:8px;font-size:11px;letter-spacing:2px;font-weight:600;color:#55066B}
.bcd-form input[type=text],.bcd-form input[type=email],.bcd-form input[type=tel],.bcd-form textarea{width:100%;box-sizing:border-box;font-family:inherit;font-size:15px;letter-spacing:0;font-weight:400;color:#2E2638;border:0;border-bottom:1px solid #BDB2C6;padding:10px 0;background:transparent;outline:none;border-radius:0}
.bcd-form input:focus,.bcd-form textarea:focus{border-bottom-color:#55066B}
.bcd-form textarea{height:120px;resize:vertical}
.bcd-form input[type=submit]{min-height:50px;padding:0 34px;background:#55066B;color:#fff;border:0;font-family:inherit;font-size:12px;letter-spacing:2.4px;font-weight:600;cursor:pointer}
.bcd-form input[type=submit]:hover{background:#41124F}
.bcd-form .bcd-note{font-size:12px;line-height:1.7;color:#6A5E74;font-weight:400;letter-spacing:0}
.bcd-form .bcd-note a{color:#55066B}
.bcd-form .wpcf7-not-valid-tip{font-size:12px;letter-spacing:0;font-weight:400;margin-top:4px}
.bcd-form .wpcf7-response-output{margin:0!important;font-size:14px;color:#2E2638}
.bcd-form .wpcf7-spinner{vertical-align:middle}
@media (max-width:700px){.nav{gap:14px 20px!important}}

/* Phone menu */
.bcd-menu-btn{display:none;align-items:center;gap:10px;min-height:44px;padding:0 4px;background:none;border:0;color:#FFFFFF;font:inherit;font-family:'Open Sans',system-ui,sans-serif;font-size:11px;letter-spacing:2.4px;font-weight:600;cursor:pointer}
.bcd-menu-btn span{display:block;width:22px;height:1px;background:#FFFFFF;box-shadow:0 -6px 0 #FFFFFF,0 6px 0 #FFFFFF}
.bcd-menu-btn[aria-expanded="true"] span{box-shadow:none}
@media (max-width:820px){
  .bcd-menu-btn{display:inline-flex}
  nav.nav{display:none !important;width:100%;flex-direction:column;gap:0 !important;background:rgba(16,20,32,.92);margin:0 -32px;padding:8px 32px;box-sizing:content-box}
  nav.nav.open{display:flex !important}
  nav.nav a{padding:15px 0 !important;border-bottom:1px solid rgba(255,255,255,.12) !important}
  nav.nav a:last-child{border-bottom:0 !important}
}

/* Phone number in the header, after the menu */
.bcd-tel{order:2;display:inline-flex;align-items:center;min-height:44px;padding-left:28px;border-left:1px solid rgba(255,255,255,.35);color:#FFFFFF;text-decoration:none;font-size:12px;letter-spacing:2.4px;font-weight:600;white-space:nowrap}
.bcd-tel:hover{color:#C7A3D8}
header .nav{order:1;margin-left:auto}
@media (min-width:821px){header .nav{gap:24px !important;flex-wrap:nowrap !important}.bcd-tel{padding-left:24px}}
@media (min-width:821px) and (max-width:1180px){header .nav{gap:16px !important;letter-spacing:1.6px !important}.bcd-tel{padding-left:16px;letter-spacing:1.4px}}
@media (max-width:820px){
  .bcd-tel{order:1;margin-left:auto;padding-left:0;border-left:0;font-size:11px;letter-spacing:1.4px}
  .bcd-menu-btn{order:2}
  header .nav{order:3;margin-left:-32px}
}

/* Subtle parallax on the large photos */
.photo.bcd-plx{overflow:hidden;isolation:isolate;background-image:none !important}
.photo.bcd-plx>.bcd-plx-layer{position:absolute !important;left:0;right:0;top:-32%;bottom:-32%;z-index:-1;background-size:cover;background-repeat:no-repeat;will-change:transform;pointer-events:none}

/* ---------- Motion touches ---------- */
/* 1. Fade-and-rise as content scrolls into view */
.bcd-rv{opacity:0;transform:translateY(10px);transition:opacity .45s ease-out,transform .45s ease-out}
.bcd-rv.in{opacity:1;transform:none}
/* 2. Slow zoom on the home page photo */
@keyframes bcdZoom{from{scale:1}to{scale:1.1}}
.p-home .bcd-plx-layer{animation:bcdZoom 24s ease-out forwards}
/* 3. Photo zoom on hover */
.bcd-zoom{display:block;overflow:hidden;line-height:0}
.bcd-zoom>img{transition:transform 1.1s cubic-bezier(.2,.65,.3,1)}
.bcd-zoom:hover>img{transform:scale(1.06)}
/* 4. Sticky header */
.bcd-sticky{position:fixed;left:0;right:0;top:0;z-index:999;background:rgba(30,37,51,.97);box-shadow:0 1px 0 rgba(255,255,255,.08),0 8px 24px rgba(0,0,0,.25);transform:translateY(-110%);transition:transform .45s cubic-bezier(.2,.65,.3,1);font-family:'Open Sans',system-ui,sans-serif;color:#FFFFFF}
.bcd-sticky.show{transform:none}
.admin-bar .bcd-sticky{top:32px}
@media (max-width:782px){.admin-bar .bcd-sticky{top:46px}}
.bcd-sticky header{padding-top:12px !important;padding-bottom:12px !important}
.bcd-sticky header img{height:40px !important}
.bcd-sticky .nav a{color:#E6EAF1}
/* 5. Smoother hovers */
.nav a{transition:color .3s,border-color .3s}
a[style*="background"],button[style*="background"]{transition:filter .3s,box-shadow .3s}
a[style*="background"]:hover,button[style*="background"]:hover{filter:brightness(1.15);box-shadow:0 6px 18px rgba(85,6,107,.35)}
@media (prefers-reduced-motion:reduce){.bcd-rv{opacity:1;transform:none;transition:none}.p-home .bcd-plx-layer{animation:none}.bcd-zoom>img{transition:none}}
