.nh-portal{background:#151613;color:#fff;padding-block:90px 50px;margin-bottom:48px;overflow:clip}
.nh-portal__heading{max-width:840px}.nh-portal__eyebrow{font-size:13px;letter-spacing:.06em;color:#adada4;margin-bottom:22px!important}.nh-portal__heading h2{font-size:clamp(38px,4.3vw,64px);line-height:1.08}.nh-portal__heading h2 span{display:block}.nh-portal__heading h2 span+span{color:#ff782f}.nh-portal__heading>p:last-child{font-size:18px;color:#b1b2a9;max-width:540px;margin-top:25px;line-height:1.6}
.nh-portal__workspace{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.4fr);align-items:center;gap:32px;margin-top:-160px}.nh-portal__story{position:relative;z-index:1;min-width:0;padding-top:208px}
/* One surface travels between native buttons; labels stay in place. */
.nh-portal__switch{position:relative;isolation:isolate;display:flex;width:max-content;max-width:100%;gap:3px;padding:5px;border:1px solid #45473c;border-radius:99px;background:#ffffff04;box-shadow:inset 0 1px 1px #ffffff05}
.nh-portal__indicator{position:absolute;inset:0 auto auto 0;z-index:-1;border-radius:99px;background:#fffaf1;box-shadow:inset 0 1px 0 #fff,0 3px 12px #0003;pointer-events:none;opacity:0;transition:transform 520ms cubic-bezier(.22,1,.36,1),width 520ms cubic-bezier(.22,1,.36,1),height 520ms cubic-bezier(.22,1,.36,1)}
.nh-portal__switch.is-indicator-ready .nh-portal__indicator{opacity:1}
.nh-portal .nh-portal__switch button{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:46px;padding:11px 14px;border:0;border-radius:99px;background:transparent;color:#b5b6ad;font:inherit;font-size:14px;line-height:1.3;white-space:nowrap;cursor:pointer;transition:color 260ms ease,box-shadow 240ms ease,transform 240ms cubic-bezier(.22,1,.36,1)}
.nh-portal .nh-portal__switch button.is-scene-active{background:#fffaf1;color:#171813}
.nh-portal .nh-portal__switch.is-indicator-ready button.is-scene-active{background:transparent}
.nh-portal .nh-portal__switch button:hover{color:#fffaf1;box-shadow:inset 0 0 0 1px #ffffff24}
.nh-portal .nh-portal__switch button.is-scene-active:hover{color:#171813;box-shadow:none}
.nh-portal .nh-portal__switch button:focus-visible{outline:2px solid #ff8a49;outline-offset:3px}
.nh-portal .nh-portal__switch button:active{transform:scale(.965)}
.nh-portal__tab-icon{width:17px;height:17px;flex:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;transition:transform 450ms cubic-bezier(.22,1,.36,1)}
.nh-portal .nh-portal__switch button.is-scene-active .nh-portal__tab-icon{transform:translateY(-1px)}
.nh-portal__captions{margin-top:30px;position:relative;min-height:210px}.nh-portal__captions article{padding-block:12px 25px}.nh-portal__captions article[hidden]{display:none}.nh-portal__number{display:block;color:#ff782f;font-size:14px;margin-bottom:16px}.nh-portal__captions h3{font-size:28px;line-height:1.25;max-width:370px;letter-spacing:-.035em}.nh-portal__captions p{max-width:350px;font-size:16px;color:#b1b2a9;margin-top:16px;line-height:1.65}
.nh-portal__visual{min-width:0;position:relative}.nh-portal__visual:before{content:'';position:absolute;inset:10%;border-radius:50%;background:radial-gradient(ellipse,#ffffff08,transparent 65%);pointer-events:none}.nh-portal .nh-portal-model{height:545px;overflow:visible}.nh-portal-fallback{perspective:900px}.nh-portal-fallback .nh-browser{transform:scale(1.1) rotateY(-15deg) rotateZ(2deg)}
.nh-portal__invite{display:flex;align-items:center;gap:20px;max-width:650px;border-top:1px solid #3b3d33;padding-top:25px;font-size:14px;line-height:1.7;color:#a1a399}
.nh-portal__invite strong{display:block;font-size:15px;font-weight:500;letter-spacing:-.015em;color:#f2f2ec;margin-bottom:5px}.nh-portal__invite p{font:inherit;line-height:inherit;color:inherit;margin:0}
/* This compact WebGL host shares the studio materials and readiness rules. */
.nh-portal .nh-access-lock{width:98px;height:104px;flex:0 0 98px;margin-block:-7px;overflow:visible}
.nh-access-lock .nh-scene-fallback svg{width:58px;height:74px}
.nh-portal.is-portal-paused .nh-portal__indicator,.nh-portal.is-portal-paused .nh-portal__switch button,.nh-portal.is-portal-paused .nh-portal__tab-icon{transition:none}
@media(min-width:761px) and (max-width:1200px){.nh-portal__workspace{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);margin-top:-20px;gap:15px}.nh-portal__story{padding-top:55px}.nh-portal .nh-portal-model{height:450px}.nh-portal .nh-portal__switch button{font-size:14px;padding-inline:10px}.nh-portal__captions h3{font-size:25px}}
@media(max-width:760px){.nh-portal{padding-block:58px 38px;margin-bottom:24px}.nh-portal__heading h2{font-size:clamp(34px,8.4vw,48px)}.nh-portal__heading>p:last-child{font-size:17px;margin-top:23px}.nh-portal__workspace{grid-template-columns:minmax(0,1fr);margin-top:0;gap:0}.nh-portal__visual{grid-row:1;margin-inline:-10px}.nh-portal .nh-portal-model{height:315px;overflow:clip}.nh-portal__story{padding-top:0}.nh-portal__switch{width:100%;gap:2px;padding:4px}.nh-portal .nh-portal__switch button{flex:1;padding:10px 8px;font-size:14px;gap:5px}.nh-portal__tab-icon{width:15px;height:15px}.nh-portal__captions{margin-top:20px;min-height:220px}.nh-portal__captions h3{font-size:27px}.nh-portal__captions p{font-size:16px;max-width:360px}.nh-portal__invite{font-size:13px;gap:12px}.nh-portal .nh-access-lock{width:84px;height:94px;flex-basis:84px}.nh-portal__invite strong{font-size:14px}.nh-portal-fallback .nh-browser{transform:scale(.73) rotateY(-15deg) rotateZ(2deg)}}
@media(max-width:370px){.nh-portal .nh-portal__switch button{font-size:14px;padding-inline:5px;gap:0}.nh-portal__tab-icon{display:none}}
@media(prefers-reduced-motion:reduce){.nh-portal .nh-portal__indicator,.nh-portal .nh-portal__switch button,.nh-portal .nh-portal__tab-icon{transition:none}}
