.hero .wrap {position:relative;z-index:1;pointer-events:none;}
.hero .actions a {pointer-events:auto;}
.tower-view {display:none;position:absolute;inset:0 0 0 43%;margin:0;isolation:isolate;background:radial-gradient(ellipse at 62% 40%,#253440,#15191c 55%,#141515 85%);}
.tower-view canvas {display:block;width:100%;height:100%;touch-action:pan-y;cursor:grab;}
.tower-view canvas:active {cursor:grabbing;}
.tower-controls {display:flex;align-items:center;gap:7px;position:absolute;bottom:30px;right:16px;z-index:2;}
.tower-controls button {background:#1b2329;color:#edf5f9;border:1px solid #607582;border-radius:6px;min-width:44px;min-height:44px;}
.tower-controls button:hover {background:#31444f;}
.tower-label {position:absolute;right:16px;top:18px;color:#b5cbd8;font-size:11px;letter-spacing:.08em;pointer-events:none;}
.hero.webgl-ready .tower-view {display:block;}
.hero.webgl-ready:before,.hero.webgl-ready:after {display:none;}
.hero.webgl-ready .credit {bottom:4px;}
.hero.webgl-ready .wrap {width:55%;}
.hero.webgl-ready h1 {font-size:clamp(54px,7.1vw,102px);}
@media(max-width:760px) {
  .hero.webgl-ready {display:flex;flex-direction:column;align-items:stretch;}
  .hero.webgl-ready .wrap {width:100%;padding:42px 0 20px;}
  .hero.webgl-ready h1 {font-size:clamp(46px,10vw,76px);}
  .tower-view {position:relative;inset:auto;height:clamp(320px,56vh,440px);}
  .tower-label {top:7px;}
}
