/* R4 visual review: same content, larger navigation and five engineering scenes. */
.site-header>.shell{min-height:98px;max-width:1420px;gap:30px}
.site-header nav{gap:28px;font-size:17px;font-weight:500;letter-spacing:.15px}
.site-header nav a{position:relative;padding:12px 0;transition:color .2s}
.site-header nav a:not(.login):after{content:'';position:absolute;bottom:4px;left:0;right:0;height:2px;background:var(--teal);transform:scaleX(0);transition:transform .2s}
.site-header nav a:hover:after,.site-header nav a[aria-current]:after{transform:scaleX(1)}
.site-header nav .login{font-size:16px;padding:12px 19px;border-radius:5px;font-weight:600;margin-left:4px}
.logo b{font-size:24px}.logo small{font-size:12px}.logo img{width:48px;height:48px}


.hero{min-height:620px;flex:none;isolation:isolate}
.hero-background{background:none;z-index:-3;overflow:hidden}
.hero-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1.2s ease;transform:scale(1.025)}
.hero-frame.is-active{opacity:1;animation:scene-drift 10s linear both}
.hero.motion-paused .hero-frame{animation-play-state:paused}
@keyframes scene-drift{from{transform:scale(1.025)}to{transform:scale(1.065)}}
.hero:after{background:linear-gradient(90deg,rgba(6,23,35,.86),rgba(6,23,35,.67) 32%,rgba(6,23,35,.12) 67%,rgba(6,23,35,.08)),linear-gradient(0deg,rgba(6,23,35,.92),transparent 45%);z-index:-1}
.hero-copy{padding-block:64px 172px;pointer-events:none}.hero-copy a{pointer-events:auto}
.hero h1{font-size:clamp(34px,3.3vw,52px);line-height:1.4;letter-spacing:0}
.hero-description{font-size:17px;max-width:510px;line-height:1.95;margin-top:24px}
.hero .eyebrow{font-size:11px;letter-spacing:2.4px}.primary{font-size:16px;padding:13px 22px}
.scene-annotation{position:absolute;right:6%;top:38%;max-width:330px;color:#e2f3ef;z-index:2;pointer-events:none;text-shadow:0 2px 14px #0c2538}
.scene-annotation:before{content:'';display:block;width:45px;border-top:2px solid #b1dfd2;margin-bottom:14px}
.scene-annotation strong{font-size:27px;font-weight:500;letter-spacing:1px;display:block;line-height:1.45}
.scene-annotation p{margin:12px 0 0;color:#cce0e1;font-size:14px;letter-spacing:.3px;line-height:1.8;max-width:300px}
.hero-controls{position:absolute;bottom:26px;left:0;right:0;z-index:3;color:#fff}
.scene-meta{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}
.scene-loop-note{font-size:13px;letter-spacing:.3px;color:#c1d9d7;margin:0}
.carousel-controls{display:flex;align-items:center;gap:9px;flex-shrink:0}
.carousel-controls button{border:1px solid #ffffff42;background:#09283a60;color:#e5f5f0;cursor:pointer;min-width:38px;height:36px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-size:17px}
.carousel-controls button:hover{background:#b5e3d126;color:#fff}.carousel-controls .rotation{font-size:13px;min-width:86px;gap:8px}
.scene-count{font:12px Arial,sans-serif;color:#b6ccc9;letter-spacing:1.5px;margin-right:8px}
.scene-selectors{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.scene-selectors button{position:relative;border:0;border-top:1px solid #ffffff4d;background:none;color:#b9cdcf;text-align:left;padding:13px 0 0;cursor:pointer;font-size:15px;letter-spacing:.4px;line-height:1.5;transition:color .2s}
.scene-selectors button:before{content:'';position:absolute;left:0;right:0;top:-1px;height:2px;background:#b0e5cd;transform:scaleX(0);transform-origin:left}
.scene-selectors button[aria-pressed=true]{color:#e5fff2;font-weight:600}
.scene-selectors button[aria-pressed=true]:before{transform:scaleX(1)}
.scene-selectors button:hover{color:#fff}.scene-selectors small{font:10px Arial,sans-serif;color:#8dbcb9;display:block;letter-spacing:1.5px;margin-top:5px}
.concept-label{top:18px;bottom:auto;right:24px;color:#aabfc4;background:#0a243448;font-size:10px}
.home-directory a{padding-block:25px}.home-directory a>span{font-size:20px}.home-directory small{font-size:13px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1240px){.site-header>.shell{flex-wrap:wrap;gap:6px;padding-block:17px}.site-header nav{gap:24px;font-size:16px}.site-header nav .login{font-size:15px}.logo b{font-size:22px}.hero-description{max-width:460px}.scene-annotation{right:5%;max-width:260px}.scene-annotation strong{font-size:24px}}
@media(min-width:761px) and (max-width:1050px){.site-header>.shell{justify-content:center}.site-header nav{justify-content:space-between;width:100%}.scene-annotation{top:44%;max-width:235px}.scene-annotation p{font-size:13px}.hero h1{font-size:37px}.hero-description{max-width:430px}}
@media(max-width:760px){.site-header>.shell{padding:18px 0 12px;gap:14px}.logo b{font-size:22px}.logo small{font-size:11px}.logo img{width:42px;height:42px}.site-header nav{display:grid;grid-template-columns:repeat(3,1fr);gap:2px 10px;font-size:15px;align-items:center}.site-header nav a{padding:8px 0;text-align:center}.site-header nav .login{grid-column:1/-1;justify-self:stretch;margin:8px 0 0;font-size:15px;padding:10px}
.hero{display:block;min-height:775px}.hero-copy{padding:40px 0 310px}.hero h1{font-size:clamp(29px,7.2vw,39px)}.hero-description{font-size:15px;max-width:100%;line-height:1.9}.hero:after{background:linear-gradient(180deg,rgba(5,24,40,.83),rgba(5,24,40,.55) 45%,rgba(5,24,40,.86) 78%,#081f2ee8)}.hero-frame{object-position:68% center}.scene-annotation{top:auto;bottom:208px;left:18px;right:18px;max-width:none}.scene-annotation:before{width:28px;margin-bottom:9px}.scene-annotation strong{font-size:22px}.scene-annotation p{font-size:12px;margin-top:7px;max-width:320px}.hero-controls{bottom:20px}.scene-meta{align-items:flex-start;gap:10px;margin-bottom:15px}.scene-loop-note{font-size:11px;max-width:160px;line-height:1.7}.scene-count{display:none}.carousel-controls{gap:6px}.carousel-controls button{min-width:32px;height:32px}.carousel-controls .rotation{min-width:68px;font-size:12px}.scene-selectors{gap:7px}.scene-selectors button{font-size:12px;letter-spacing:0;padding-top:11px}.scene-selectors small{font-size:8px;letter-spacing:.3px;margin-top:7px}.concept-label{font-size:9px;top:12px;right:16px}.hero .eyebrow{font-size:9px;margin-bottom:21px}.home-directory a>span{font-size:18px}.home-directory small{font-size:12px}}
@media(prefers-reduced-motion:reduce){.hero-frame,.hero-frame.is-active{animation:none;transition:none;transform:none}.site-header nav a:after{transition:none}}
