/* Leave more of the moving plate visible beside the copy. */
.hero { min-height: 700px; }
.hero-inner { margin-left: 6%; padding: clamp(180px,24vh,250px) 0 155px; max-width: 530px; width: 43%; }
.hero h1 { font-size: clamp(54px,5.2vw,74px); line-height: .99; letter-spacing: -.015em; margin: 25px 0 24px; max-width: 100%; }
.hero .eyebrow { font-size: 10px; letter-spacing: 1.5px; }
.hero-description { max-width: 410px; font-size: 15px; line-height: 1.85; color: #dce5e9; }
.hero-description br { display: none; }
.hero-shade { background: linear-gradient(90deg,rgba(3,9,14,.86) 0%,rgba(3,9,14,.69) 26%,rgba(3,9,14,.19) 55%,rgba(3,9,14,.03) 78%),linear-gradient(0deg,rgba(6,12,16,.74),transparent 28%),linear-gradient(180deg,rgba(3,9,14,.32),transparent 20%); }
.hero-actions { gap: 22px; margin-top: 28px; }
.hero-actions .primary-link { font-size: 12px; padding: 15px 19px; gap: 25px; }
.hero-actions .secondary-link { font-size: 12px; gap: 10px; }
.hero .concept-caption { opacity: .85; }
.case-copy h3 { font-size: clamp(32px,3vw,44px); }
.case-copy>p:not(.eyebrow) { max-width: 510px; }
.case-image img { transform: none; }
.case-image:hover img { transform: scale(1.015); }

/* Introduce the people behind the work before delivery and enquiries. */
.studio-team { background: #14232c; border-top: 1px solid #2a3d48; border-bottom: 1px solid #2a3d48; }
.studio-team-layout { display: grid; grid-template-columns: 1fr 1.55fr; gap: 8%; align-items: center; }
.studio-team-copy h2 { font-size: clamp(44px,4.7vw,70px); line-height: 1.04; margin: 0 0 26px; }
.studio-team-copy>p { color: #b5c8d3; font-size: 14px; line-height: 1.85; max-width: 370px; margin: 0; }
.studio-team-copy .text-link { margin-top: 25px; }
.team-portraits { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 26px; width: 100%; max-width: 680px; }
.team-portrait { margin: 0; min-width: 0; }
.team-portrait img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; object-position: 50% 20%; border: 1px solid #45606e; background: #25333d; }
.team-portrait figcaption { padding-top: 17px; }
.team-portrait strong { display: block; font-size: 17px; line-height: 1.5; font-weight: 600; color: #f0f5f7; }
.team-portrait figcaption span { display: block; font-size: 11px; line-height: 1.6; color: #9fb9c7; margin-top: 4px; }
.contact { align-items: start; column-gap: 7%; }
.contact h2 { font-size: clamp(49px,4.6vw,72px); margin: 23px 0; }
.contact-copy>p:not(.eyebrow) { max-width: 470px; }
.contact .contact-note { margin-top: 20px; }
.contact .contact-email { font-size: clamp(17px,1.6vw,23px); }
@media (max-width:900px) {
  .studio-team-layout { grid-template-columns: 1fr; gap: 35px; }
  .studio-team-copy>p { max-width: 550px; }
}
@media (min-width:768px) and (max-width:1050px) {
  .hero-inner { width: 49%; max-width: 480px; }
  .hero h1 { font-size: clamp(54px,6.4vw,68px); }
  .hero-description { max-width: 355px; font-size: 14px; }
  .hero-actions { gap: 15px; }
}
@media (max-width:767px) {
  .hero { height: 100svh; min-height: 690px; }
  .hero-inner { margin-left: 6%; width: 88%; max-width: 510px; padding: 155px 0 150px; }
  .hero h1 { font-size: clamp(40px,10.4vw,66px); line-height: 1.02; margin: 22px 0 20px; }
  .hero .eyebrow { font-size: 8px; letter-spacing: 1px; }
  .hero-description { max-width: 370px; font-size: 13px; line-height: 1.8; }
  .hero-shade { background: linear-gradient(90deg,rgba(3,9,14,.74),rgba(3,9,14,.3) 88%),linear-gradient(0deg,rgba(6,12,16,.78),transparent 40%); }
  .hero-actions { margin-top: 25px; gap: 12px; }
  .hero-actions .primary-link { padding: 14px 18px; }
  .contact h2 { font-size: clamp(46px,11vw,65px); }
  .team-portraits { gap: 15px; }
  .team-portrait strong { font-size: 14px; }
  .team-portrait figcaption { padding-top: 12px; }
  .studio-team-copy h2 { font-size: clamp(40px,8vw,55px); margin-bottom: 20px; }
  .studio-team-copy>p { font-size: 13px; }
  .contact-copy { padding-bottom: 8px; }
}
@media (prefers-reduced-motion:reduce) { .case-image:hover img { transform: none; } }
