/* Refine the existing architectural, monochrome direction. */
body { font-size: 1rem; line-height: 1.65; }
body .header { min-height: 88px; }
body .brand-logo { min-width: 92px; height: auto; }
body .header nav a { font-size: .875rem; }
body .button { min-height: 48px; padding: 13px 22px; font-weight: 600; }
body .button:hover { box-shadow: inset 0 -3px #e82c35; }
body :is(.text-link,.material-paths a,.security-links .text-link):after { content: none; }
body :is(.brand img,.footer-brand img,.value-brand img) { background: #fff!important; }
body .home-cinema { min-height: 630px; height: min(820px,calc(100svh - 88px)); }
body .cinema-copy { max-width: 1440px; width: 100%; padding: 70px 6vw 76px; }
body .cinema-copy h1 { max-width: 880px; font-size: clamp(2.8rem,5.6vw,5.8rem); }
body .cinema-bottom { max-width: 1120px; gap: 30px; }
body .cinema-bottom p { max-width: 570px; font-size: 1.125rem; line-height: 1.65; }
body .hero-secondary { display: inline-block; width: fit-content; margin-top: 24px; padding-bottom: 3px; border-bottom: 1px solid #ffffffb0; font-weight: 500; }
body .mansion-credit { font-size: .8125rem; max-width: 80%; }
body .project-support { padding: 70px 6vw; border-top: 1px solid #ffffff26; border-bottom: 1px solid #ffffff26; }
body .project-support h2 { max-width: 740px; font-size: clamp(2rem,3.1vw,3rem); margin: 0 0 35px; }
body .project-support .eyebrow { margin-bottom: 16px; }
body .support-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 36px; }
body .support-grid article { border-top: 1px solid #ffffff45; padding-top: 22px; min-width: 0; }
body .support-number { display: inline-block; padding: 2px 0 2px 12px; border-left: 3px solid #e82c35; font-size: .875rem; margin-bottom: 15px; }
body .support-grid h3 { font-size: 1.35rem; margin: 0 0 12px; }
body .support-grid p { max-width: 380px; font-size: 1rem; line-height: 1.8; margin: 0; }
body .footer-social { padding: 18px 0; border-top: 1px solid #ffffff26; }
body .footer-linkedin { font-size: .9375rem; text-decoration: underline; text-underline-offset: 5px; }
body .email-address { overflow-wrap: anywhere; }
body .page-heading :is(h1,h2) { overflow-wrap: break-word; }
@media (max-width: 1200px) {
  body .header nav { gap: 12px; }
  body .header-service { display: none; }
}
@media (max-width: 1000px) {
  body .header { flex-wrap: wrap; height: auto; gap: 12px; padding: 14px 24px; }
  body .header nav { order: 3; width: 100%; flex-wrap: wrap; justify-content: center; }
  body .header-actions { margin-left: auto; }
}
@media (max-width: 900px) {
  body .header nav { flex-wrap: nowrap; width: auto; }
}
@media (max-width: 760px) {
  body .header { min-height: 76px; flex-wrap: nowrap; padding: 12px 20px; }
  body .header nav.open { display: flex; flex-direction: column; align-items: stretch; max-height: calc(100svh - 76px); overflow-y: auto; padding: 18px 25px; }
  body .header nav.open a { min-height: 44px; display: flex; align-items: center; font-size: 1rem; }
  body .home-cinema { height: auto; min-height: 650px; max-height: none; }
  body .cinema-copy { padding: 55px 25px 95px; }
  body .cinema-copy h1 { font-size: clamp(2.6rem,10vw,3.5rem); }
  body .cinema-bottom p { font-size: 1rem; }
  body .mansion-credit { left: 25px; right: 25px; bottom: 16px; margin: 0; }
  body .project-support { padding: 45px 25px; }
  body .support-grid { grid-template-columns: 1fr; gap: 28px; }
  body .home-projects-heading { flex-direction: column; align-items: flex-start; }
  body .home-projects-heading > .text-link { white-space: normal; }
}
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior: auto!important; transition: none!important; animation: none!important; } }
