/* Consistent sizing without changing the original desktop composition. */
main :is(h1,h2,h3,p,li,dd){overflow-wrap:break-word}
.header .submenu a{white-space:normal!important;line-height:1.6}
@media(max-width:1024px){
 .header .menu{display:block!important;width:44px;height:44px;flex:none}
 .header .header-cta{display:none!important}
 .header .nav{display:none!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;padding:20px 24px 28px!important;background:#080808!important;max-height:calc(100dvh - 80px);overflow-y:auto;flex-direction:column!important;gap:0!important}
 .header .nav.open{display:flex!important}
 .header .nav-item{display:grid;grid-template-columns:minmax(0,1fr) 44px;width:100%;border-bottom:1px solid #ffffff26}
 .header .nav-item>a{font-size:14px!important;min-height:48px;display:flex;align-items:center;white-space:normal!important}
 .header .submenu-toggle{width:44px;height:48px;margin:0}
 .header .submenu{position:static;grid-column:1/-1;display:none!important;width:100%!important;max-width:none!important;transform:none!important;opacity:1;visibility:visible;pointer-events:auto;border:0;box-shadow:none}
 .header .nav-item.open>.submenu{display:block!important}
 .header .submenu:before{display:none}
 .header .submenu a{font-size:13px!important;padding:10px 12px!important;min-height:44px}
}
@media(max-width:767px){
 section.creation-journey .journey-steps{display:flex!important;gap:0!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y}
 section.creation-journey .journey-step,section.creation-journey .journey-step.active{box-sizing:border-box;flex:0 0 100%!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important;padding:0 0 12px!important;margin:0!important;scroll-snap-align:start;scroll-snap-stop:always;opacity:1!important;transform:none!important}
 section.creation-journey .journey-step-media{width:100%;aspect-ratio:4/3;margin:0 0 22px}
 section.creation-journey .journey-step-image{width:100%!important;height:100%!important;object-fit:cover}
 section.creation-journey .journey-step :is(h3,p,small){max-width:100%!important;white-space:normal!important;overflow-wrap:break-word}
 section.creation-journey .journey-step h3{font-size:clamp(26px,7.5vw,34px)!important;line-height:1.2}
 section.creation-journey .journey-step p{font-size:14px!important;line-height:1.8}
 section.creation-journey .journey-mobile-nav{display:grid!important;grid-template-columns:48px 1fr 48px;gap:14px;width:100%;margin:16px 0 0!important;align-items:center}
 section.creation-journey .journey-steps.is-dragging{scroll-snap-type:none!important;scroll-behavior:auto!important;cursor:grabbing;user-select:none}
 .journey-step-image{-webkit-user-drag:none}
 .contact-title-mobile :is(span,em){white-space:normal!important;max-width:100%;text-align:center}
 .contact-title-mobile{width:100%!important;max-width:100%!important}
 main :is(.hero-inner,.heading,.section-head,.story,.project-copy,.contact-inner,.category-heading,.overview-heading){min-width:0;max-width:100%}
 main :is(.hero-inner h1,.heading h2,.section-head h2,.contact h2){max-width:100%!important;white-space:normal!important}
 .category-project-info>div{min-width:0}
 .category-project-facts>div{grid-template-columns:72px minmax(0,1fr)}
 .overview-heading>p,.category-message{font-size:15px;line-height:1.8}
 .modal-card{max-width:100%;max-height:calc(100dvh - 24px);overflow:auto}
 .modal-form{min-width:0}
 .button.dark{padding:16px 20px!important}
 .showreel .showreel-video{width:100%;height:100%;object-fit:cover}
}
@media(prefers-reduced-motion:reduce){section.creation-journey .journey-steps{scroll-behavior:auto!important}}

/* Align the visible footer wordmark with the adjacent column headings. */
@media(min-width:901px){
 footer.footer .footer-grid .footer-logo{
  width:178px!important;height:24px!important;
  margin:0 0 20px!important;padding:0!important;
  background-image:url('top-homes-logo-white.png')!important;
  background-size:430.76px auto!important;
  background-position:center calc(50% + 10.823655px)!important;
  background-repeat:no-repeat!important;
 }
 footer.footer .footer-grid{align-items:start}
}
