/* Boot: full-screen frosted veil — no strips, no curtain */
.boot{
  position:fixed;inset:0;z-index:9999;pointer-events:none;
  overflow:hidden;
}
.boot.done{visibility:hidden}

.boot-veil{
  position:absolute;inset:0;
  background:rgba(245,247,250,.58);
  backdrop-filter:blur(32px) saturate(1.05);
  -webkit-backdrop-filter:blur(32px) saturate(1.05);
  opacity:1;
  transition:
    opacity 1.35s cubic-bezier(.16,1,.3,1),
    backdrop-filter 1.35s ease,
    -webkit-backdrop-filter 1.35s ease,
    background 1.35s ease;
}
.boot.exit .boot-veil{
  opacity:0;
  background:rgba(245,247,250,0);
  backdrop-filter:blur(0);
  -webkit-backdrop-filter:blur(0);
}

.boot-stamp{
  position:absolute;inset:0;z-index:2;
  display:grid;place-items:center;text-align:center;
  pointer-events:none;
  transition:opacity .7s ease, filter .8s ease, transform .85s cubic-bezier(.16,1,.3,1);
}
.boot.exit .boot-stamp{
  opacity:0;
  filter:blur(6px);
  transform:scale(1.02);
}

.boot-word{
  display:flex;justify-content:center;gap:.06em;
  font-family:Inter,system-ui,sans-serif;font-weight:700;
  font-size:clamp(1.7rem,4.2vw,2.6rem);letter-spacing:.38em;
  color:#111;
  text-indent:.38em;overflow:hidden;line-height:1.1;
}
.boot-word span{
  display:inline-block;opacity:0;
  transition:opacity .4s ease;
}
.boot.show .boot-word span{opacity:1}
.boot.show .boot-word span:nth-child(1){transition-delay:20ms}
.boot.show .boot-word span:nth-child(2){transition-delay:50ms}
.boot.show .boot-word span:nth-child(3){transition-delay:80ms}
.boot.show .boot-word span:nth-child(4){transition-delay:110ms}
.boot.show .boot-word span:nth-child(5){transition-delay:140ms}

.boot-meta{
  margin-top:14px;font-size:.62rem;letter-spacing:.34em;text-transform:uppercase;
  color:rgba(17,17,17,.5);opacity:0;
  transition:opacity .4s ease .18s;
}
.boot.show .boot-meta{opacity:1}

@media (prefers-reduced-motion:reduce){
  .boot-veil,.boot-word span,.boot-meta,.boot-stamp{transition:none!important}
}

/* Hero entrance: fade only — no upward "curtain" */
.hero-section .reveal,
.hero-section .reveal-left,
.hero-section .reveal-right{
  transform:none !important;
  filter:none !important;
}
.hero-section .hero-title{
  opacity:0;
}

/* Lang switch */
.lang-switch{
  display:inline-flex;align-items:center;border:1px solid rgba(0,0,0,.14);
  border-radius:999px;overflow:hidden;background:#fff;
}
.lang-btn{
  border:0;background:transparent;padding:7px 11px;font-size:.72rem;font-weight:700;
  letter-spacing:.08em;color:#777;cursor:pointer;font-family:Inter,system-ui,sans-serif;
  transition:background .2s, color .2s;
}
.lang-btn.is-active{background:#111;color:#fff}
.lang-btn:not(.is-active):hover{color:#111}
.mobile-menu .lang-switch{margin:18px 0 0;align-self:flex-start}
