/* newways.studios · original products, warm light, generous screens. */
.nw-studios { background: #fff; }
.studios { position: relative; color: var(--text); background: #fff; }
.studios-wrap { width: min(100% - 2 * var(--gutter), 84rem); margin-inline: auto; }
.studios h1, .studios h2 { font-family: var(--font-display); font-stretch: 96%; letter-spacing: -.04em; }
.studios h1 span, .studios h2 span { color: var(--olive-deep); }
.studios a { text-underline-offset: .22em; }
.studios-hero { padding-top: clamp(8.5rem, 11vw, 11rem); overflow: hidden; background: linear-gradient(180deg,#fff 62%,#f4f3ec); }
.studios-hero__copy { position: relative; z-index: 2; text-align: center; }
.studios-wordmark { width: clamp(16rem, 34vw, 28rem); height: auto; max-height: 6.3rem; object-fit: contain; margin: 0 auto 2.5rem; }
.studios-hero h1 { font-size: clamp(3.2rem, 6.7vw, 6.7rem); line-height: 1.01; font-weight: 650; }
.studios-lead { max-width: 38rem; margin: 1.5rem auto 1.2rem; font-size: clamp(1.05rem, 1.8vw, 1.4rem); line-height: 1.5; text-wrap: balance; color: var(--text-muted); }
.studios-link { display: inline-flex; gap: .5em; align-items: center; justify-content: center; min-height: 44px; font-size: 1rem; font-weight: 580; color: var(--olive-deep); text-decoration: none; }
.studios-link span, .studios-button span { font-size: 1.2em; transition: transform .2s ease; }
.studios-link:hover { text-decoration: underline; }
.studios-link:hover span, .studios-button:hover span { transform: translate(2px,-2px); }
.studios-button { display: inline-flex; justify-content: center; align-items: center; gap: .8em; min-height: 48px; padding: .7rem 1.25rem; border-radius: 999px; background: var(--gold); color: var(--ink); text-decoration: none; font-weight: 600; line-height: 1.4; transition: background .2s ease; }
.studios-button:hover { color: var(--ink); background: var(--gold-soft); }
.studios-actions { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: .65rem 1.4rem; margin-top: 1.5rem; }
.studios-hero__visual { position: relative; width: min(100% - 2rem, 75rem); height: clamp(19rem, 49vw, 40rem); margin-top: clamp(2rem,5vw,4rem); isolation: isolate; }
.studios-hero__visual::before { content: ''; position: absolute; inset: 5% -5% 0; z-index: -1; background: radial-gradient(ellipse at 50% 75%,rgba(203,174,21,.16),transparent 66%); }
.studios-hero__desktop { position: absolute; top: 6%; left: 17%; width: 66%; overflow: hidden; border: 6px solid #292c24; border-radius: 1rem; box-shadow: 0 22px 60px -26px rgba(34,37,24,.32); }
.studios-hero__desktop img { width: 100%; }
.studios-hero__phone { position: absolute; top: 14%; width: 18.5%; padding: 4px; border-radius: 1.7rem; overflow: hidden; background: #252920; box-shadow: 0 16px 40px -14px rgba(34,37,24,.3); }
.studios-hero__phone img { border-radius: 1.45rem; }
.studios-hero__phone--left { left: 5%; transform: rotate(-7deg); }
.studios-hero__phone--right { right: 5%; transform: rotate(7deg); }
.studios figcaption { font-size: .74rem; font-weight: 400; line-height: 1.5; color: var(--text-muted); text-align: center; }
.studios-hero__visual figcaption { position: absolute; inset: auto 1rem 1rem; }
.studios-productnav { padding: 1rem 0; border-block: 1px solid #e8e7e0; background: #fff; scroll-margin-top: 6rem; }
.studios-productnav .studios-wrap { display: flex; flex-wrap: wrap; justify-content: center; column-gap: clamp(1rem,3.2vw,3.2rem); row-gap: .25rem; }
.studios-productnav a { display: inline-flex; align-items: center; min-height: 44px; color: var(--text); font-size: .875rem; font-weight: 550; text-decoration: none; }
.studios-productnav a:hover { color: var(--olive); text-decoration: underline; text-underline-offset: .3em; }
.studios-product { padding: clamp(4rem,8vw,7rem) 0 0; scroll-margin-top: 5rem; overflow: hidden; }
.studios-heading { text-align: center; }
.studios-heading > p:not([class]) { max-width: 34rem; margin: 1.4rem auto 0; font-size: clamp(1.05rem,1.45vw,1.25rem); color: var(--text-muted); line-height: 1.55; text-wrap: pretty; }
.studios-heading h2, .studios-origin h2 { font-size: clamp(2.7rem,5.5vw,5.3rem); line-height: 1.04; font-weight: 650; }
.studios-productname { margin-bottom: 1.65rem; font-family: var(--font-display); font-size: 1.8rem; font-weight: 600; letter-spacing: -.06em; color: var(--text-strong); }
.studios-productname > span { color: var(--olive); }
.studios-status { max-width: 40rem; margin: 1.15rem auto 0; font-size: .78rem; line-height: 1.55; color: var(--text-muted); text-wrap: balance; }
.studios-suite { background: #f7f7f3; }
.studios-screen { width: min(100%,69rem); margin: 3.8rem auto 0; }
.studios-screen > img { width: 100%; border: 1px solid rgba(60,68,40,.17); border-radius: 1rem 1rem 0 0; box-shadow: 0 14px 64px -24px rgba(41,46,27,.25); }
.studios-screen figcaption { padding: 1rem; }
.studios-senya { background: #11160d; padding-bottom: 1.5rem; }
.studios-senya h2 span { color: #cdd7bd; }
.studios-senya .studios-link { color: var(--gold-lift); }
.studios-productname--senya { display: flex; justify-content: center; align-items: center; gap: .45rem; font-size: 2.8rem; }
.studios-productname--senya > span { margin-left: -.4rem; color: var(--gold-lift); }
.studios-productname--senya img { width: 2.4rem; height: 2.4rem; margin-right: .35rem; }
.studios-senya__stage { width: min(100%,72rem); position: relative; margin: 4rem auto 0; padding-bottom: 2.25rem; }
.studios-senya__desktop { width: 90%; border: 1px solid #4d5145; border-radius: .8rem; box-shadow: 0 18px 70px -20px #000; }
.studios-senya__phone { position: absolute; width: 20%; right: 0; bottom: 4rem; border: 4px solid #3a3e33; border-radius: 1.5rem; box-shadow: 0 18px 50px -15px #000; }
.studios-senya__stage figcaption { position: absolute; inset: auto 0 0; }
.studios-duo { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 1rem; padding: 1rem; }
.studios-app { display: flex; flex-direction: column; min-width: 0; padding: clamp(3rem,5vw,5rem) clamp(1rem,3vw,3rem) 0; overflow: hidden; scroll-margin-top: 5rem; }
.studios-app .studios-heading { position: relative; z-index: 2; }
.studios-app h2 { font-size: clamp(2rem,3.4vw,3.8rem); }
.studios-app .studios-heading > p:not([class]) { max-width: 27rem; font-size: 1.05rem; }
.studios-appname { display: flex; justify-content: center; align-items: center; gap: .65rem; margin-bottom: 1.7rem; color: var(--text-strong); font-family: var(--font-display); font-size: clamp(1.1rem,1.8vw,1.55rem); font-weight: 600; letter-spacing: -.025em; }
.studios-appname img { width: 2.8rem; height: 2.8rem; object-fit: cover; border-radius: .65rem; }
.studios-mietmoment { background: #edf0e5; }
.studios-leas {
  background: #f4f2fa;
  padding-block: clamp(3rem, 7vw, 6.5rem);
  scroll-margin-top: 6rem;
}
.studios-leas__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .95fr);
  align-items: center;
  gap: clamp(2rem, 6vw, 7rem);
  max-width: 68rem;
}
.studios-leas .studios-heading { text-align: left; }
.studios-leas__brand img {
  width: min(13rem, 76%);
  height: auto;
  margin-bottom: 1.5rem;
}
.studios-leas .studios-heading h2 {
  max-width: 13ch;
  font-size: clamp(2.5rem, 4.7vw, 4.65rem);
  color: #211831;
}
.studios-leas .studios-heading h2 span,
.studios-leas .studios-link { color: #5134bc; }
.studios-leas .studios-heading > p:not([class]) { margin-left: 0; max-width: 34ch; }
.studios-leas .studios-actions { justify-content: flex-start; }
.studios-leas .studios-status { margin: .35rem 0 0; color: #534e63; }
.studios-leas__visual {
  margin: 0;
  padding: clamp(.85rem, 2vw, 1.65rem);
  border-radius: 1.6rem;
  background: #e9e5f5;
}
.studios-leas__visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1.24;
  object-fit: cover;
  object-position: center 29%;
  border-radius: 1rem;
}
.studios-leas__visual figcaption { padding-top: .75rem; color: #514864; }
@media (max-width: 760px) {
  .studios-leas__layout { grid-template-columns: minmax(0, 1fr); gap: 1.7rem; }
  .studios-leas__visual { width: min(100%, 28rem); justify-self: center; }
}
.studios-beachpass { background: #edf5f4; }
.studios-beachpass h2 span { color: #245c60; }
.studios-phone-stage { position: relative; display: flex; align-items: flex-start; justify-content: center; width: 100%; min-height: 33rem; margin: 2.6rem auto 0; padding-bottom: 2.6rem; }
.studios-phone-stage > img { width: min(58%,15rem); height: auto; border: 4px solid #33372f; border-radius: 1.7rem; box-shadow: 0 20px 60px -25px rgba(31,39,27,.4); }
.studios-phone-stage figcaption { position: absolute; inset: auto 0 .8rem; }
.studios-phone-stage--pair { align-items: flex-start; justify-content: flex-start; width: min(100%,29rem); padding-bottom: 4.5rem; }
.studios-phone-stage--pair > img { width: 53%; }
.studios-phone-stage--pair .studios-beachpass__discover { margin-left: 4%; transform: rotate(-6deg); position: relative; z-index: 1; }
.studios-phone-stage--pair .studios-beachpass__pro { position: absolute; right: 1%; top: 2rem; transform: rotate(6deg); }
.studios-towerliving { padding-top: 0; background: #e8e6d7; }
.studios-towerliving__layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.9fr); align-items: center; gap: clamp(2rem,5vw,5rem); }
.studios-towerliving .studios-heading { padding-block: 5rem; text-align: left; }
.studios-towerliving .studios-heading > p:not([class]), .studios-towerliving .studios-status { margin-left: 0; }
.studios-towerliving .studios-appname, .studios-towerliving .studios-actions { justify-content: flex-start; }
.studios-towerliving__visual { width: 100%; max-width: 34rem; padding-top: 3rem; align-self: end; }
.studios-towerliving__visual img { width: 100%; border-radius: 1rem 1rem 0 0; border: 1px solid rgba(25,40,25,.14); box-shadow: 0 12px 50px -18px rgba(30,40,22,.3); }
.studios-towerliving__visual figcaption { padding: .85rem .5rem; }
.studios-content { padding-block: clamp(4rem,7vw,7rem); scroll-margin-top: 5rem; }
.studios-content__layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: clamp(2rem,5vw,5rem); align-items: center; }
.studios-content .studios-heading { text-align: left; }
.studios-content .studios-heading > p:not([class]), .studios-content .studios-status { margin-left: 0; }
.studios-content .studios-actions { justify-content: flex-start; }
.studios-content h2 { font-size: clamp(2.5rem,4.3vw,4.5rem); }
.studios-eyebrow { margin-bottom: 1.4rem; font-size: .78rem; line-height: 1.5; letter-spacing: .08em; color: var(--gold-text); font-weight: 600; }
.studios-productname--content { font-size: 1.35rem; letter-spacing: -.04em; margin-bottom: 1rem; }
.studios-content__visual img { width: 100%; }
.studios-content__visual figcaption { margin-top: .75rem; }
.studios-origin { padding-block: clamp(4.5rem,8vw,8rem); background: #f4f2e9; text-align: center; }
.studios-origin .studios-wrap > p:not([class]) { max-width: 37rem; margin: 1.75rem auto; font-size: 1.15rem; line-height: 1.6; color: var(--text-muted); }
@media (min-width: 1450px) { .studios-duo { padding: 1.25rem; gap: 1.25rem; } .studios-phone-stage { min-height: 36rem; } .studios-phone-stage > img { width: min(58%,16rem); } .studios-phone-stage--pair > img { width: 53%; } }
@media (max-width: 1000px) { .studios-towerliving__layout { grid-template-columns: 1fr 1fr; gap: 2rem; } .studios-phone-stage { min-height: 28rem; } .studios-phone-stage--pair { margin-top: 3.3rem; } .studios-app { padding-inline: 1.5rem; } .studios-content__layout { gap: 2rem; } }
@media (max-width: 760px) {
  .studios-hero { padding-top: 7.5rem; }
  .studios-wordmark { margin-bottom: 1.8rem; }
  .studios-hero h1 { font-size: clamp(2.8rem,8.8vw,4.4rem); }
  .studios-hero__visual { height: 48vw; min-height: 15rem; margin-top: 2rem; }
  .studios-hero__desktop { border-width: 3px; border-radius: .6rem; }
  .studios-hero__phone { padding: 2px; border-radius: .9rem; top: 19%; width: 19%; }
  .studios-hero__phone img { border-radius: .75rem; }
  .studios-hero__visual figcaption { bottom: .7rem; font-size: .64rem; }
  .studios-productnav .studios-wrap { gap: .1rem 1.3rem; }
  .studios-productnav a { font-size: .78rem; }
  .studios-screen { margin-top: 2.4rem; }
  .studios-senya__stage { margin-top: 2.5rem; }
  .studios-senya__phone { border-width: 2px; border-radius: .7rem; bottom: 3rem; }
  .studios-duo { grid-template-columns: 1fr; padding: .65rem; gap: .65rem; }
  .studios-app { padding: 3rem 1.25rem 0; }
  .studios-app h2 { font-size: clamp(2.15rem,7.8vw,3.4rem); }
  .studios-app .studios-heading > p:not([class]) { max-width: 26rem; }
  .studios-phone-stage { min-height: 33rem; width: min(100%,27rem); }
  .studios-phone-stage > img { width: min(58%,15rem); }
  .studios-phone-stage--pair > img { width: 53%; }
  .studios-towerliving__layout { grid-template-columns: 1fr; gap: 0; }
  .studios-towerliving .studios-heading { padding: 3.5rem 0 0; text-align: center; }
  .studios-towerliving .studios-heading > p:not([class]), .studios-towerliving .studios-status { margin-left: auto; }
  .studios-towerliving .studios-appname, .studios-towerliving .studios-actions { justify-content: center; }
  .studios-towerliving__visual { width: min(100%,30rem); margin: 0 auto; padding-top: 2.5rem; }
  .studios-content__layout { grid-template-columns: 1fr; gap: 2rem; }
  .studios-content .studios-heading { text-align: center; }
  .studios-content .studios-heading > p:not([class]), .studios-content .studios-status { margin-left: auto; }
  .studios-content .studios-actions { justify-content: center; }
  .studios-content__visual { width: min(100%,32rem); margin: 0 auto; }
}
@media (max-width: 380px) { .studios-hero h1 { font-size: 2.55rem; } .studios-app { padding-inline: .9rem; } .studios-phone-stage { min-height: 29rem; } .studios-phone-stage--pair { min-height: 30rem; } .studios-heading h2, .studios-origin h2 { font-size: 2.45rem; } .studios-app h2 { font-size: 2rem; } }
@media (prefers-reduced-motion: reduce) { .studios-link span, .studios-button, .studios-button span { transition: none; } }

/* Film-led game chapters: the original trailers are the main visual. */
.studios-game{padding:clamp(3.5rem,7vw,6.5rem) 0 clamp(2rem,5vw,4rem);scroll-margin-top:6rem}
.studios-game--tower{background:linear-gradient(180deg,#eeeee5,#fafaf7)}
.studios-game--copter{background:linear-gradient(180deg,#e9f0f3,#f7f9fa)}
.studios-game--copter h2 span{color:#31555f}
.studios-game__film{width:100%;margin:clamp(2rem,4.8vw,4rem) auto 0;scroll-margin-top:6rem}
.studios-game__film video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#111619;border-radius:clamp(.65rem,1.5vw,1.5rem);box-shadow:0 18px 45px -30px #17232d65}
.studios-game__film figcaption{display:flex;justify-content:space-between;gap:.5rem 2rem;flex-wrap:wrap;text-align:left;padding:1rem .2rem 0;font-size:.8125rem}
.studios-game__film figcaption span:first-child{color:var(--text-strong);font-weight:550}
.studios-game video:focus-visible{outline:3px solid var(--olive);outline-offset:5px}
@media(max-width:760px){.studios-game__film figcaption{display:grid;gap:.3rem}.studios-game .studios-heading>p:not([class]){max-width:30ch}.studios-game .studios-status{max-width:31ch}}
