*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#0b0b0b}
body{color:#fff;font-family:"Inter",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
.hero{position:relative;min-height:100svh;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto;background:#0b0b0b}

.video-stage{position:absolute;inset:0;z-index:0;overflow:hidden;background:#0b0b0b}
.bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;opacity:0;transition:opacity 1.35s ease;transform:scale(1.012)}
.bg-video.is-active{opacity:1}

.shade{position:absolute;inset:0;z-index:1;background:
  linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.38) 48%,rgba(0,0,0,.16) 100%),
  linear-gradient(0deg,rgba(0,0,0,.46) 0%,rgba(0,0,0,0) 48%)}

.topbar,.content,.footer{position:relative;z-index:2}
.topbar{display:flex;align-items:flex-start;justify-content:space-between;padding:28px 44px 0}
.brand{display:block;width:clamp(92px,8.5vw,145px);line-height:0}
.brand img{display:block;width:100%;height:auto;object-fit:contain}

.lang{appearance:none;border:1px solid rgba(255,255,255,.36);background:rgba(0,0,0,.08);color:#fff;width:44px;height:34px;border-radius:999px;font:inherit;font-size:11px;letter-spacing:.08em;cursor:pointer;backdrop-filter:blur(8px);transition:background .2s ease,border-color .2s ease}
.lang:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.62)}

.content{align-self:center;width:min(780px,calc(100% - 88px));margin-left:44px;padding:54px 0}
.eyebrow{margin:0 0 20px;font-size:11px;letter-spacing:.19em;font-weight:500;opacity:.66}
h1{margin:0;max-width:740px;font-size:clamp(44px,6.6vw,92px);line-height:.96;letter-spacing:-.055em;font-weight:300;text-wrap:balance}
.lead{max-width:590px;margin:28px 0 0;font-size:clamp(15px,1.35vw,19px);line-height:1.55;font-weight:300;color:rgba(255,255,255,.80)}

.contact-feature{display:flex;gap:9px 22px;flex-wrap:wrap;margin-top:27px;font-size:clamp(14px,1.15vw,17px)}
.contact-feature a{text-decoration:none;font-weight:400;border-bottom:1px solid rgba(255,255,255,.38);padding-bottom:3px;transition:border-color .2s ease,opacity .2s ease}
.contact-feature a:hover{border-color:#fff}

.socials{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}
.socials a{display:inline-flex;gap:14px;align-items:center;min-height:42px;padding:0 16px;border:1px solid rgba(255,255,255,.34);border-radius:999px;text-decoration:none;font-size:12px;font-weight:400;backdrop-filter:blur(8px);background:rgba(0,0,0,.12);transition:background .2s ease,color .2s ease,border-color .2s ease}
.socials a:hover{background:#fff;color:#111;border-color:#fff}
.socials span{font-size:13px}

.footer{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;padding:0 44px 30px;font-size:11px;letter-spacing:.03em}
.contact,.meta{display:flex;gap:18px;flex-wrap:wrap}
.contact a{text-decoration:none;opacity:.76}
.contact a:hover{opacity:1}
.meta{justify-content:flex-end;opacity:.52}
[hidden]{display:none!important}

@media(max-width:760px){
  .hero{min-height:100svh}
  .shade{background:
    linear-gradient(90deg,rgba(0,0,0,.69) 0%,rgba(0,0,0,.34) 100%),
    linear-gradient(0deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,0) 62%)}
  .topbar{padding:21px 22px 0}
  .brand{width:clamp(88px,25vw,120px)}
  .content{width:calc(100% - 44px);margin-left:22px;padding:48px 0 38px}
  .eyebrow{margin-bottom:14px}
  h1{font-size:clamp(42px,13vw,64px);line-height:.97}
  .lead{max-width:96%;margin-top:22px;font-size:15px}
  .contact-feature{display:grid;gap:8px;margin-top:22px;font-size:14px}
  .contact-feature a{width:max-content}
  .socials{margin-top:25px}
  .socials a{min-height:40px;padding:0 14px}
  .footer{display:block;padding:0 22px 20px}
  .compact-contact{display:none}
  .meta{justify-content:flex-start;margin-top:0;gap:8px 14px}
}

@media(orientation:portrait){
  .bg-video{object-position:center center}
}

@media(max-height:680px) and (min-width:761px){
  .topbar{padding-top:20px}
  .content{padding:32px 0}
  h1{font-size:clamp(44px,5.7vw,72px)}
  .footer{padding-bottom:20px}
}
