/* ---------- NAV: hamburger alignment + compact bar ---------- */
@media (max-width:1100px){
  .nav-toggle{top:50% !important; transform:translateY(-50%) !important;}
}
@media (max-width:640px){
  .nav{gap:12px !important;}
  .nav .brand img{height:34px !important; max-width:48vw !important;}
  .nav .cta{padding:10px 14px !important; letter-spacing:.12em !important; min-height:44px !important; display:inline-flex !important; align-items:center !important;}
  .lang a{min-height:44px !important; display:inline-flex !important; align-items:center !important;}
}
/* ---------- Overflow guard + iOS input zoom + touch targets ---------- */
@media (max-width:768px){
  html, body{overflow-x:hidden !important;}
  input, select, textarea{font-size:16px !important;}
  .chip, .pill, .filterbar .pill, .rv-filter .chip, .ah-filter .chip{min-height:44px !important; display:inline-flex !important; align-items:center !important;}
  .filterbar{position:static !important;}
  .page-foot .nums a{width:44px !important; height:44px !important;}
}
/* ---------- Inline-styled grids that never collapse (reviews platforms,
     warranty CTA pair, cost-guide pull quote, design-range EN twocol) ---------- */
@media (max-width:760px){
  [style*="grid-template-columns: 1fr 1fr"],
  [style*="grid-template-columns:1fr 1fr"],
  [style*="repeat(3, 1fr)"],
  [style*="repeat(3,1fr)"]{grid-template-columns:1fr !important;}
}
/* ---------- Headline caps missed by the earlier global layer ---------- */
@media (max-width:600px){
  .rv-head h1, .cg-hero h1, .ns-hero h1{font-size:clamp(1.85rem,8vw,2.55rem) !important;}
  .jh h1{font-size:clamp(2.375rem,10vw,3.5rem) !important;}
  .jh-meta{flex-wrap:wrap !important; gap:8px !important;}
  .section-head{grid-template-columns:1fr !important; gap:8px !important;}
}
/* ---------- Homepage / Inicio ---------- */
@media (max-width:600px){
  .founder-creds{grid-template-columns:1fr !important; gap:14px !important;}
  .guide-mock{aspect-ratio:auto !important; padding:32px 24px !important;}
  .guide-mock h3{font-size:32px !important;}
  .lot-overlay{font-size:96px !important;}
  .featured .stats{gap:20px !important;}
  .featured .image{padding:32px !important;}
  .cta-band .spaced{letter-spacing:.2em !important; white-space:normal !important;}
}
/* ---------- Bicentennial (900 South) hero ---------- */
@media (max-width:768px){
  .ns-hero, .ns-hero .inner{min-height:auto !important;}
  .ns-hero .inner{padding-top:72px !important;}
}
/* ---------- Pecan Heights ---------- */
@media (max-width:600px){
  .ph-plan-tabs{flex-wrap:nowrap !important; overflow-x:auto !important; -webkit-overflow-scrolling:touch; scrollbar-width:none;}
  .ph-plan-tabs::-webkit-scrollbar{display:none;}
  .ph-plan-tabs button{min-width:auto !important; flex:0 0 auto !important;}
  .ph-plan-vis{min-height:240px !important;}
  .ph-intro .lead::first-letter{font-size:44px !important;}
}
/* ---------- Floor Plans / Planos ---------- */
@media (max-width:600px){
  .group-title{grid-template-columns:40px 1fr !important;}
  .group-title .note{display:none !important;}
}
@media (max-width:480px){
  .plan-card .specs{grid-template-columns:repeat(2,1fr) !important;}
}
/* ---------- Available Homes / Casas Disponibles ---------- */
@media (max-width:760px){
  .status-row > *:last-child:nth-child(odd){grid-column:1 / -1 !important;}
}
@media (max-width:480px){
  .lot-table .specs{white-space:normal !important;}
}
/* ---------- Warranty coverage table → swipeable ---------- */
@media (max-width:640px){
  .cov-table{display:block !important; overflow-x:auto !important; -webkit-overflow-scrolling:touch;}
  .cov-table th, .cov-table td{white-space:nowrap !important;}
}
/* ---------- Design Range / Diseños ---------- */
@media (max-width:600px){
  .dr-num-row{grid-template-columns:1fr !important;}
}
/* ---------- Team & Founder portraits (crop fix) ---------- */
@media (max-width:880px){
  .portrait-wrap{aspect-ratio:4/3 !important;}
}
/* ---------- Portfolio chapters ---------- */
@media (max-width:600px){
  .pf2-chapter{padding:56px 20px !important;}
}
/* ---------- Contact ---------- */
@media (max-width:600px){
  .box-list.grid-2x2 li{gap:14px !important; padding:20px !important;}
}
/* ---------- Financing calculator sliders ---------- */
@media (max-width:600px){
  input[type="range"]::-webkit-slider-thumb{width:32px !important; height:32px !important;}
  input[type="range"]{min-height:32px !important;}
}
/* ---------- Cost-guide Mailchimp form ---------- */
@media (max-width:768px){
  .cg-hero .mc_input, .mc_signup_form .mc_input{width:100% !important; font-size:16px !important; min-height:44px !important; box-sizing:border-box !important;}
  .mc_signup_form input[type="submit"], .mc_signup_submit_button{width:100% !important; min-height:48px !important;}
}
/* ---------- Journal legacy footer ---------- */
@media (max-width:600px){
  footer .foot-grid{grid-template-columns:1fr !important;}
  .foot-brand img{height:60px !important;}
}
/* ---------- Process step list ---------- */
@media (max-width:480px){
  .step-list .step{grid-template-columns:40px 1fr !important; gap:14px !important; padding:20px !important;}
}
/* ---------- Mobile action bar (markup injected below) + clearance ---------- */
.mobile-action-bar .btn{min-height:48px; text-decoration:none;}
.mobile-action-bar .btn.mab-call{background:#111; color:#fff;}
.mobile-action-bar .btn.mab-wa{background:#fff; color:#111; border:1px solid #111;}
@media (max-width:767px){
  .site-footer{padding-bottom:96px !important;}
  .wa-float{bottom:calc(84px + env(safe-area-inset-bottom)) !important;}
}
