/* Opening only. Header retains the approved official logo and navigation. */
header .logo img{width:154px;height:52px;object-fit:contain;display:block}
.hero{--progress:0;--rx:0deg;--ry:0deg;--px:0px;--py:0px;--depth:-1.5px;isolation:isolate;min-height:720px;padding-top:clamp(116px,13.5svh,148px)}
.hero .meta{flex:none}
.hero .meta>span:first-child{display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:.09em}
.hero .hero-dot{width:5px;height:5px;border-radius:50%;background:#9b7c22;flex:none}
.hero .hero-brand{position:relative;z-index:2;font-size:clamp(68px,7.35vw,140px);font-weight:500;letter-spacing:-.075em;line-height:1.04;margin:clamp(28px,4svh,44px) 0 0;flex:none}
.hero .hero-line{display:block;overflow:hidden;padding:.06em .08em .08em 0;margin:-.06em -.08em -.08em 0}
.hero .hero-line>span,.hero .hero-line>em{display:block;animation:bn-title 1.3s cubic-bezier(.16,1,.3,1) both}
.hero .hero-line>em{animation-delay:.17s}
.hero .art{left:54%;top:18%;width:43%;height:54%;perspective:1100px}
.hero .hero-scroll,.hero .hero-intro{position:absolute;inset:0;transform-style:preserve-3d}
.hero .hero-scroll{transform:translateY(calc(var(--progress)*42px))}
.hero .hero-intro{animation:bn-arrive 2.5s cubic-bezier(.16,1,.3,1) both}
.hero .hero-object{position:absolute;left:2%;top:32%;width:96%;aspect-ratio:716/238;transform-style:preserve-3d;transform:translate(var(--px),var(--py)) rotateX(calc(32deg + var(--rx) - var(--progress)*16deg)) rotateY(calc(-18deg + var(--ry) + var(--progress)*20deg)) rotateZ(calc(-24deg + var(--progress)*12deg))}
.hero .hero-object img,.hero .hero-object i{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.hero .hero-object i{background:linear-gradient(125deg,#b8bec6,#68717c 40%,#353e49 70%,#a1a9b3);-webkit-mask:url(assets/bridgenex-symbol.svg) center/contain no-repeat;mask:url(assets/bridgenex-symbol.svg) center/contain no-repeat;transform:translateZ(calc(var(--z)*(var(--depth) - var(--progress)*.35px)));animation:bn-assemble 2s .1s cubic-bezier(.16,1,.3,1) backwards}
.hero .hero-object img{transform:translateZ(1px);animation:bn-face 2s .1s cubic-bezier(.16,1,.3,1) backwards}
.hero .hero-shadow{position:absolute;left:16%;top:67%;width:73%;height:10%;border-radius:50%;background:radial-gradient(ellipse,#24272c28,transparent 70%);filter:blur(10px);transform:translateY(calc(var(--progress)*20px)) rotate(-12deg);animation:bn-copy 1.8s both}
.hero .art small{right:10%;bottom:0;color:#68717c;font:9px/1.9 monospace;letter-spacing:.04em}
.hero .hero-bottom{display:flex;gap:30px;align-items:end;margin-top:clamp(22px,3.3svh,38px);margin-bottom:30px;flex:none}
.hero .hero-copy{width:48%;max-width:560px;animation:bn-copy 1s .3s both}
.hero h1{position:static;margin:0;font-size:clamp(16px,1.3vw,19px);font-weight:500;letter-spacing:-.018em;line-height:1.5}
.hero .hero-copy>p{font-size:13px;line-height:1.8;margin-top:12px;max-width:510px;color:#58616c}
.hero .art .hero-note{display:block;margin-top:22px;font:9px/1.9 Manrope,Arial,sans-serif;letter-spacing:.04em}
.hero .hero-actions{display:flex;align-items:center;gap:28px;margin-top:22px}
.hero .solid{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:48px;transition:background .4s,transform .4s,box-shadow .4s;white-space:nowrap}
.hero .solid:hover{background:#515a65;transform:translateY(-2px);box-shadow:0 7px 16px #24272c15}
.hero .solid .arrow-icon{font-size:15px;transition:transform .35s}
.hero .solid:hover .arrow-icon{transform:translate(2px,-2px)}
.hero .discover{display:inline-flex;align-items:center;gap:20px;width:max-content;position:relative;min-height:44px;margin-top:0;white-space:nowrap}
.hero .discover:after{content:'';position:absolute;left:0;right:30px;bottom:8px;height:1px;background:#9b7c22;transform:scaleX(.15);transform-origin:left;transition:transform .4s}
.hero .discover:hover:after,.hero .discover:focus-visible:after{transform:scaleX(1)}
.hero .discover .arrow-icon{font-size:14px;transition:transform .4s}
.hero .discover:hover .arrow-icon{transform:translateY(3px)}
.hero .index{margin-top:auto;flex:none}
.hero .index a{display:flex;align-items:center;gap:12px;position:relative;animation:bn-service .9s .65s cubic-bezier(.2,.7,.2,1) both;transition:color .3s}
.hero .index small{margin-right:0}
.hero .index .arrow-icon{margin-left:auto;font-size:14px;transition:transform .4s}
.hero .index a:nth-child(2){animation-delay:.8s}.hero .index a:nth-child(3){animation-delay:.95s}.hero .index a:nth-child(4){animation-delay:1.1s}
.hero .index a:before{content:'';position:absolute;left:0;right:0;top:-1px;height:2px;background:#d4af37;transform:scaleX(0);transform-origin:left;transition:transform .45s}
.hero .index a:hover,.hero .index a:focus-visible{background:transparent;color:#4c5662}
.hero .index a:hover:before,.hero .index a:focus-visible:before{transform:scaleX(1)}
.hero .index a:hover .arrow-icon,.hero .index a:focus-visible .arrow-icon{transform:translate(2px,-2px)}
@keyframes bn-title{from{transform:translateY(115%) rotate(2deg)}to{transform:translateY(0) rotate(0)}}
@keyframes bn-arrive{0%{opacity:.15;transform:translate3d(18px,22px,-90px) rotateY(-14deg)}25%{opacity:1}100%{opacity:1;transform:translate3d(0,0,0) rotateY(0)}}
@keyframes bn-assemble{from{transform:translateZ(calc(var(--z)*var(--depth)*2.5))}}
@keyframes bn-face{from{transform:translateZ(18px)}}
@keyframes bn-copy{from{opacity:0}to{opacity:1}}
@keyframes bn-service{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(min-width:801px) and (max-width:1100px){.hero .hero-copy{width:54%}.hero .index a{font-size:11px;gap:8px}.hero .hero-actions{gap:20px}.hero .art{left:56%;width:41%}}
@media(min-width:801px) and (max-width:1000px){header .logo img{width:136px;height:46px}}
@media(min-width:801px) and (max-height:750px){.hero{padding-top:114px;min-height:700px}.hero .hero-brand{font-size:clamp(64px,6.9vw,100px);margin-top:24px}.hero .hero-bottom{margin-top:20px;margin-bottom:24px}.hero .hero-copy>p{margin-top:9px}.hero .hero-actions{margin-top:17px}.hero .index a{padding-top:24px;padding-bottom:24px}}
@media(max-width:800px){
  header .logo img{width:120px;height:41px}
  .hero{--depth:-.9px;height:auto;min-height:100svh;max-height:none;padding-top:104px}
  .hero .meta{order:1}
  .hero .meta>span:first-child{font-size:8px;letter-spacing:.07em;gap:8px}
  .hero .hero-brand{order:2;font-size:12.3vw;margin-top:27px;line-height:1.04}
  .hero .hero-bottom{order:3;display:block;margin:21px 0 0}
  .hero .hero-copy{width:100%;max-width:520px}
  .hero h1{font-size:16px;line-height:1.5;letter-spacing:-.02em;max-width:520px}
  .hero .hero-copy>p{font-size:12px;line-height:1.75;margin-top:12px;max-width:470px}
  .hero .hero-actions{gap:24px;margin-top:20px}
  .hero .solid{min-height:46px;gap:24px;padding:14px 19px}
  .hero .discover{font-size:11px;gap:17px;min-height:44px}
  .hero .art{order:4;position:relative;left:auto;top:auto;width:100%;height:195px;flex:none;margin:12px 0 14px;perspective:850px}
  .hero .hero-object{left:8%;top:24%;width:87%;transform:rotateX(calc(22deg - var(--progress)*9deg)) rotateY(calc(-12deg + var(--progress)*12deg)) rotateZ(calc(-17deg + var(--progress)*8deg))}
  .hero .hero-scroll{transform:translateY(calc(var(--progress)*12px))}
  .hero .art small{font-size:7px;right:5%;bottom:3%;line-height:1.8}
  .hero .art .hero-note{display:none}
  .hero .hero-shadow{filter:blur(6px);top:66%;left:20%;width:70%}
  .hero .index{order:5}
  .hero .index a{min-height:58px;gap:8px;font-size:10px;padding:18px 7px}
  .hero .index .arrow-icon{font-size:12px}
}
@media(min-width:600px) and (max-width:800px){.hero .hero-brand{font-size:10.2vw}.hero .art{width:70%;height:230px;margin-left:auto}.hero .hero-copy{max-width:540px}.hero .index a{font-size:12px}}
@media(max-width:370px){.hero .hero-actions{gap:18px}.hero .solid{gap:16px;padding:14px 17px}.hero .discover{gap:12px;font-size:10px}.hero .index a{font-size:9px;gap:6px}}
@media(prefers-reduced-motion:reduce){.hero *{animation:none!important;transition:none!important}.hero .hero-scroll{transform:none}.hero .hero-object{transform:rotateX(18deg) rotateY(-8deg) rotateZ(-15deg)}.hero .solid:hover{transform:none}}
