/* V3.6: homepage-only visual rhythm refinements. No identity or structural redesign. */
@media (min-width: 851px) {
  body:has(#home) .section-head { align-items: end; column-gap: clamp(24px,4vw,72px); }
  body:has(#home) .service-grid { align-items: stretch; }
  body:has(#home) .service { display:flex; flex-direction:column; }
  body:has(#home) .service-bottom { margin-top:auto; }
  body:has(#home) .ref-card { display:flex; flex-direction:column; }
  body:has(#home) .ref-card-info { display:flex; flex:1; flex-direction:column; }
  body:has(#home) .ref-card-bottom { margin-top:auto; padding-top:16px; }
}
body:has(#home) .service, body:has(#home) .ref-card, body:has(#home) .detail-card { min-width:0; }
body:has(#home) .service h3, body:has(#home) .ref-card-info h3 { overflow-wrap:anywhere; }
body:has(#home) .project-form input, body:has(#home) .project-form select, body:has(#home) .project-form textarea { max-width:100%; box-sizing:border-box; }
body:has(#home) :is(.btn,.service-bottom,.detail-cta,.ref-card,.nw-all-projects a):focus-visible { outline:2px solid #a99aff; outline-offset:4px; }
@media (max-width: 850px) {
  body:has(#home) .section-head { gap:14px; }
  body:has(#home) .service-grid, body:has(#home) .ref-cards { min-width:0; }
  body:has(#home) .ref-card-visual img { max-width:100%; }
  body:has(#home) .form-grid > label { min-width:0; }
}
@media (prefers-reduced-motion: reduce) {
  body:has(#home) *, body:has(#home) *::before, body:has(#home) *::after { scroll-behavior:auto!important; animation-duration:0.01ms!important; transition-duration:0.01ms!important; }
}
