/* Motion is progressive enhancement: content is visible without JavaScript. */
body[data-route] .real-work-card{animation:none}
body[data-route] .real-work-card img{transition:transform .8s cubic-bezier(.22,1,.36,1),filter .5s ease}
body[data-route] .real-work-card figcaption{transition:transform .6s cubic-bezier(.22,1,.36,1)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  body[data-route] .real-work-card:hover img{transform:scale(1.035)}
  body[data-route] .real-work-card:hover figcaption{transform:translateY(-5px)}
  body[data-route] .button b{transition:transform .25s ease}
  body[data-route] .button:hover b{transform:translateX(4px)}
  body[data-route] .path-grid article,body[data-route] .testimonial-card{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
  body[data-route] .path-grid article:hover,body[data-route] .testimonial-card:hover{transform:translateY(-4px);box-shadow:0 16px 32px #11233a12}
}
body[data-route] .testimonials--full{background:#e8eef0;min-height:75vh}
body[data-route] .hall-heading{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.65fr);gap:clamp(32px,6vw,88px);align-items:end;padding-bottom:40px;border-bottom:1px solid #bdcbd0}
body[data-route] .hall-intro h1{font-size:clamp(44px,5.8vw,84px);margin-bottom:24px;line-height:1.03}
body[data-route] .hall-intro h1 em{color:#315b7c;font-style:normal}
body[data-route] .hall-intro .intro{max-width:42ch;margin:0}
body[data-route] .hall-note{border-top:3px solid var(--orange);padding:24px 0 0}
body[data-route] .hall-note p{max-width:34ch;color:#42546a;font-size:16px;line-height:1.65;margin:0 0 22px}
body[data-route] .hall-note .eyebrow{color:#315b7c;margin-bottom:12px}
body[data-route] .testimonials--full .testimonial-rail{margin-top:32px}
body[data-route] .hall-empty{grid-column:1/-1;display:grid;grid-template-columns:80px minmax(0,1fr);gap:28px;align-items:center;padding:clamp(28px,4vw,48px);border:1px solid #bdcbd0;background:#eef2f2;min-height:200px}
body[data-route] .hall-empty-mark{font:600 100px/1 'Fraunces',Georgia,serif;color:#315b7c;align-self:start}
body[data-route] .hall-empty h2{font:600 clamp(27px,3vw,38px)/1.15 'Fraunces',Georgia,serif;letter-spacing:-.04em;margin:0 0 12px}
body[data-route] .hall-empty p{max-width:54ch;color:#42546a;font-size:17px;line-height:1.65;margin:0}
body[data-route] .testimonial-empty{padding:24px;border:1px solid #bdcbd0;background:#eef2f2}
body[data-route] .review-dialog{max-height:calc(100dvh - 32px);overflow:auto}
@media(max-width:700px){body[data-route] .hall-heading{grid-template-columns:1fr;gap:28px;padding-bottom:28px}body[data-route] .hall-note{padding-top:20px}body[data-route] .hall-note p{max-width:none}body[data-route] .hall-empty{grid-template-columns:1fr;gap:8px;padding:26px}body[data-route] .hall-empty-mark{font-size:64px;height:48px}body[data-route] .hall-intro h1{font-size:clamp(40px,10vw,60px)}}
@media(prefers-reduced-motion:reduce){body[data-route] .real-work-card,body[data-route] .real-work-card img,body[data-route] .real-work-card figcaption{animation:none;transition:none;transform:none}}
