/* Wide journey: editorial headline above a full-width first-person canvas. */
.hero-layout{display:block;min-height:0;position:relative}
.hero-copy{position:absolute;inset:40px 0 auto;z-index:2;display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:auto auto;gap:0 60px;padding:48px 0 38px;align-items:center;background:linear-gradient(to bottom,#ffffff 0%,#fffffff0 70%,#ffffff00 100%);pointer-events:none}
.hero-copy a{pointer-events:auto}
.hero h1{grid-row:1/3;font-size:clamp(52px,5.2vw,82px);line-height:1.2;letter-spacing:-3px;margin:0}
.hero h1 br{display:none}
.hero-copy p{align-self:end;font-size:15px;line-height:1.9}
.hero-actions{margin-top:22px;align-self:start;gap:28px}
.visual{width:100%;height:clamp(480px,48vw,720px);margin-top:8px}
.label-top{top:250px;left:0}
.label-bottom{bottom:24px;right:0}
.coordinate{right:0;top:auto;bottom:24px;left:0;transform:none;font-size:10px}
.hero-bottom{margin-top:8px}
@media(max-width:1050px){
  .hero-copy{inset:28px 0 auto;grid-template-columns:1.15fr 1fr;gap:0 32px;padding-top:36px}
  .hero h1{font-size:clamp(48px,5.5vw,65px);letter-spacing:-2px}
  .hero h1 br{display:block}
  .hero-copy p{font-size:14px}
  .hero-actions{gap:20px}
  .visual{height:540px}
  .label-top{top:278px}
}
@media(max-width:650px){
  .hero-copy{inset:8px 0 auto;display:block;padding:22px 0 28px;background:linear-gradient(to bottom,#ffffff 0%,#fffffff0 72%,#ffffff00 100%)}
  .hero h1{font-size:clamp(35px,8.2vw,49px);line-height:1.2;margin-bottom:15px;letter-spacing:-1.5px}
  .hero h1 br{display:none}
  .hero-copy p{font-size:14px}
  .hero-actions{margin-top:16px;gap:24px}
  .visual{height:430px;margin-top:0}
  .label-top{top:268px;font-size:9px}
  .label-bottom{bottom:15px;font-size:9px}
  .coordinate{display:none}
  .hero-bottom{margin-top:10px}
}

.language-toggle{font-size:12px;color:var(--blue);border:1px solid var(--line);padding:8px 12px;white-space:nowrap}
html[lang=en] .hero h1{font-size:clamp(38px,4.2vw,66px);letter-spacing:-2px}html[lang=en] .hero h1 br{display:block}html[lang=en] h3{font-size:22px}html[lang=en] .about-layout h2{font-size:clamp(38px,4.2vw,64px)}
@media(max-width:650px){nav{gap:10px}.language-toggle{padding:7px 9px}html[lang=en] .hero h1{font-size:clamp(32px,8vw,46px);letter-spacing:-1px}html[lang=en] .hero-actions{gap:14px}html[lang=en] .hero-actions a{font-size:12px}html[lang=en] .hero-copy p{font-size:13px}html[lang=en] .label-top{top:310px}html[lang=en] .section-heading h2,html[lang=en] .contact-layout h2{font-size:36px}html[lang=en] .principles{flex-wrap:wrap}}

.send-progress{height:4px;background:var(--line);overflow:hidden;margin-top:20px;border-radius:4px}
.send-progress[hidden]{display:none}
.send-progress span{display:block;width:35%;height:100%;background:var(--blue);animation:sending-slide 1.2s ease-in-out infinite}
@keyframes sending-slide{from{transform:translateX(-110%)}to{transform:translateX(390%)}}
button:disabled{opacity:.6;cursor:wait;transform:none!important}
.language-toggle[aria-disabled=true]{opacity:.5;cursor:wait}
@media(prefers-reduced-motion:reduce){.send-progress span{width:100%;animation:none}}
