/* WordPress integration only. No layout system is introduced here; the supplied frontend stylesheet remains authoritative. */
img,video{max-width:100%;}
.admin-bar .site-header{top:32px}
@media screen and (max-width:782px){.admin-bar .site-header{top:46px}}
/* Keep WordPress block/editor markup from creating unexpected horizontal overflow. */
.site-main .wp-block-image img{height:auto;}

/*
 * v7.1 HOME MOBILE FIDELITY
 * The interior pages already match the reference mobile header.
 * The reference homepage uses a substantially taller mobile header and
 * larger logo/menu controls. Scope these rules to the front page only.
 */
@media (max-width: 1024px) {
  body.home .site-header.header-home .header-inner {
    height: 138px;
    padding: 0 1.5rem;
  }
  body.home .site-header.header-home .logo {
    margin-left: 0;
  }
  body.home .site-header.header-home .logo img {
    height: 100px;
    width: auto;
    padding: 0;
  }
  body.home .site-header.header-home .menu-toggle {
    padding: 12px;
    gap: 8px;
  }
  body.home .site-header.header-home .menu-toggle .bar {
    width: 42px;
    height: 3px;
  }
  body.home .site-header.header-home .main-nav {
    padding: 8rem 2rem 2rem;
  }
  body.home .site-header.header-home .nav-link {
    font-size: 40px;
    padding: 0.7rem 0;
  }
  body.home .site-header.header-home .dropdown li a {
    font-size: 26px;
    padding: 7px 0;
  }
}
@media (max-width: 600px) {
  body.home .site-header.header-home .header-inner {
    height: 138px;
    padding: 0 1rem;
  }
  body.home .site-header.header-home .logo img {
    height: 100px;
  }
  body.home .site-header.header-home .menu-toggle .bar {
    width: 40px;
    height: 3px;
  }
  body.home .site-header.header-home .main-nav {
    padding: 8rem 2rem 2rem;
  }
  body.home .site-header.header-home .nav-link {
    font-size: 40px;
    line-height: 1.2;
    padding: 0.7rem 0;
  }
}

/* v7.3 service fidelity: original .service-card CSS is authoritative. */
.blog-single-banner{min-height:500px;display:flex;align-items:center;justify-content:center;padding:8rem 0 5rem}.blog-single-wrap{padding:6rem 0}.blog-single-content{max-width:900px;margin:0 auto}.blog-featured-image{margin:0 0 3rem;border-radius:12px;overflow:hidden}.blog-featured-image img{width:100%;height:auto;display:block}.blog-entry-content{max-width:760px;margin:0 auto;font-size:17px;line-height:1.9;color:var(--color-black50)}.blog-entry-content h2,.blog-entry-content h3{color:var(--color-black);margin:2.5rem 0 1rem}.blog-entry-content p{font-size:17px;line-height:1.9;margin-bottom:1.4rem}.blog-entry-content ul,.blog-entry-content ol{margin:1rem 0 1.5rem 1.5rem}.blog-single-footer{display:flex;gap:12px;margin-top:3rem;justify-content:center}
.blog-card .image-zoom img{width:100%;height:100%;object-fit:cover;display:block}.blog-card .image-zoom:has(img){background:#eee}
@media(max-width:767px){.service-grid{grid-template-columns:1fr}.service-card-image{height:210px}.blog-single-banner{min-height:420px}.blog-single-wrap{padding:3.5rem 0}.blog-entry-content,.blog-entry-content p{font-size:16px}.blog-single-footer{flex-direction:column}.blog-single-footer .btn{text-align:center}}


/* v8.1 launch polish: prevent accidental image overflow and keep media visually stable. */
img { max-width: 100%; }
.select-card-img { background: #161616; }
@media (max-width: 600px) {
  .hero { min-height: 88svh; }
  .hero-content { padding: 1.5rem 1rem; }
  .hero h1 { font-size: clamp(2rem, 8vw, 2.7rem); line-height: 1.08; }
  .hero-subtitle { font-size: 15px; line-height: 1.6; margin-bottom: 2rem; }
}

/* v1.0.3 HOMEPAGE HERO POLISH — scoped to the homepage hero only. */
.hero-actions{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin:0 auto 1.75rem;
}
.hero-actions .btn{
  min-width:172px;
  text-align:center;
  text-decoration:none;
}
.hero-actions .hero-primary-cta{
  box-shadow:0 8px 24px rgba(0,0,0,.16);
}
.hero-actions .hero-secondary-cta{
  color:var(--color-white)!important;
  background:rgba(0,0,0,.16)!important;
  border:1px solid rgba(255,255,255,.65)!important;
}
.hero-actions .hero-secondary-cta:hover{
  color:var(--color-dark)!important;
  background:var(--color-white)!important;
  border-color:var(--color-white)!important;
}
@media (min-width:1025px){
  .hero{min-height:calc(100vh - 96px);}
  .hero-content{max-width:920px;padding:2.5rem 2rem 3rem;}
  .hero h1{font-size:clamp(3.8rem,5.7vw,5.8rem);line-height:1.04;max-width:1000px;margin-left:auto;margin-right:auto;}
  .hero-subtitle{max-width:680px;margin-bottom:1.75rem;}
}
@media (max-width:1024px){
  .hero-actions{margin-bottom:1.25rem;}
}
@media (max-width:600px){
  .hero{min-height:calc(100svh - 138px);}
  .hero-content{padding:1.25rem 1rem 2rem;}
  .hero-eyebrow{font-size:10px;letter-spacing:1.6px;margin-bottom:.9rem;}
  .hero h1{font-size:clamp(2.25rem,9.8vw,3.05rem);line-height:1.04;margin-bottom:1.15rem;}
  .hero-subtitle{font-size:14px;line-height:1.55;max-width:340px;margin-bottom:1.35rem;}
  .hero-actions{width:100%;gap:9px;margin-bottom:1rem;}
  .hero-actions .btn{width:100%;max-width:280px;min-width:0;padding:.85rem 1rem;font-size:11px;}
  .scroll-down-btn{width:42px;height:42px;}
}



/* v1.0.4 HOMEPAGE INTRO POLISH — scoped only to the Building Better Spaces section. */
.section-intro .intro-copy-enhanced{position:relative;}
.section-intro .intro-eyebrow{
  margin:0 0 14px;
  color:var(--color-copper);
  font-size:10px;
  font-weight:700;
  letter-spacing:2px;
  line-height:1.4;
  text-transform:uppercase;
}
.section-intro .col-text h2{margin-bottom:18px;}
.section-intro .feature-list{
  margin-top:20px;
  margin-bottom:20px;
}
.section-intro .feature-list li{position:relative;padding-left:24px;}
.section-intro .feature-list li::before{left:0;top:.62em;width:6px;height:6px;}
.section-intro .intro-project-cta{margin-top:4px;display:inline-flex;align-items:center;gap:9px;}
.section-intro .intro-project-cta span{font-size:15px;line-height:1;transition:transform .2s ease;}
.section-intro .intro-project-cta:hover span{transform:translateX(3px);}
.section-intro .intro-slideshow{box-shadow:0 14px 38px rgba(0,0,0,.10);border-radius:8px;overflow:hidden;}
@media(min-width:1025px){
  .section-intro .two-col{align-items:center;gap:78px;}
  .section-intro .col-text{padding-right:8px;}
  .section-intro .col-image{padding-top:12px;}
}
@media(max-width:767px){
  .section-intro .intro-eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:10px;}
  .section-intro .col-text h2{font-size:clamp(2rem,8.5vw,2.55rem);line-height:1.05;margin-bottom:14px;}
  .section-intro .feature-list{margin-top:16px;margin-bottom:18px;padding-left:0;}
  .section-intro .feature-list li{padding-left:22px;}
  .section-intro .feature-list li{font-size:13px;line-height:1.55;margin-bottom:5px;}
  .section-intro .intro-project-cta{width:auto;max-width:100%;padding:.78rem 1rem;font-size:10px;}
  .section-intro .intro-slideshow{box-shadow:0 8px 24px rgba(0,0,0,.08);}
}
