/* A centered opening over the silent property film. */
.home-page{--home-header-height:var(--header-content-height,116px)}
.home-page .site-header{height:var(--home-header-height)}
.home-intro{
  position:relative;
  isolation:isolate;
  display:grid;
  align-items:center;
  min-height:calc(100dvh - var(--home-header-height) - var(--safe-top,0px));
  padding:clamp(56px,9svh,100px) 0;
  background:#26312f;
  color:#fff;
}
.home-intro>.hero-photo{
  position:absolute;inset:0;z-index:-1;
  min-height:0;height:100%;border-radius:0;pointer-events:none;
}
.home-intro>.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:center}
.home-intro>.hero-photo>img,.home-intro>.hero-photo>video{filter:saturate(1.1) contrast(1.03)}
.home-intro>.hero-photo::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,#00000000,#00000014 48%,#00000000);
  pointer-events:none;
}
.home-intro .home-hero{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  width:min(460px,calc(100% - 80px));min-height:0;height:auto;
  gap:18px;padding:0;margin-inline:auto;
  transform:translateY(-3svh);
}
.home-intro .hero-copy{
  display:flex;flex-direction:column;align-items:center;
  min-width:0;padding:0;margin:0;text-align:center;
}
.home-intro .hero-copy h1{
  font-family:Georgia,"Times New Roman",serif;font-size:clamp(52px,5.2vw,72px);
  font-weight:400;line-height:1.06;letter-spacing:.055em;text-transform:uppercase;
  color:#fff;margin:0;text-shadow:0 1px 3px #0009,0 2px 12px #0006;
}
.home-intro .hero-copy>p{
  color:#fff;font-size:12px;font-weight:600;
  line-height:1.55;letter-spacing:.09em;text-transform:uppercase;
  text-shadow:0 1px 3px #000a,0 2px 8px #0006;
}
.home-intro .hero-copy .home-credentials{margin:10px 0 0}
.home-intro .hero-copy .home-region{margin:10px 0 0}
.home-intro .home-search{
  display:grid;grid-template-columns:minmax(0,1fr) 110px;
  align-items:stretch;gap:8px;width:100%;margin:0;
}
.home-search-field{
  display:flex;align-items:center;gap:12px;min-width:0;
  padding:0 14px;background:#fff;border:1px solid #fff;
}
.home-search-field>svg{flex-shrink:0;width:18px;height:18px;fill:none;stroke:#909694;stroke-width:1.5;stroke-linecap:round}
.home-search-field:focus-within{outline:2px solid #fff;outline-offset:4px}
.home-search-field input[type=search]{
  width:100%;min-width:0;height:44px;min-height:0;margin:0;padding:0;
  border:0;border-radius:0;background:#fff;box-shadow:none;
  color:var(--ink);font-family:var(--sans);font-size:16px;outline:0;
  -webkit-appearance:none;appearance:none;
}
.home-search-field input::placeholder{color:#737975;opacity:1}
.home-intro .home-search-button{
  min-height:44px;padding:10px 14px;margin:0;
  border:1px solid #fff;border-radius:0;background:#fff;box-shadow:none;
  color:var(--ink);font-size:13px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;
}
.home-intro .home-search-button:hover{background:#eaf0ec;border-color:#eaf0ec}
.home-intro .home-search-button:focus-visible{outline:2px solid #fff;outline-offset:4px}
.home-intro .home-search-button:disabled{opacity:.75;cursor:wait}
html[lang=zh-Hans] .home-intro .hero-copy h1{font-size:clamp(52px,5.2vw,72px);line-height:1.06;letter-spacing:.055em}
@media(max-width:900px){
  .home-intro .home-hero{width:min(460px,calc(100% - 48px))}
  .home-intro .home-search{grid-template-columns:minmax(0,1fr) 110px}
  .home-search-field{gap:12px;padding-inline:18px}
  .home-search-field input[type=search]{font-size:16px}
}
@media(max-width:600px){
  .home-intro{padding-block:56px}
  .home-intro .home-hero{width:min(290px,calc(100% - 40px));gap:18px;transform:translateY(-2svh)}
  .home-intro .hero-copy h1,html[lang=zh-Hans] .home-intro .hero-copy h1{font-size:clamp(42px,13vw,56px);letter-spacing:.025em;line-height:1.08}
  .home-intro .hero-copy>p{font-size:12px;letter-spacing:.07em;line-height:1.6}
  .home-intro .hero-copy .home-credentials{margin-top:10px}
  .home-intro .hero-copy .home-region{margin-top:10px}
  .home-intro .home-search{grid-template-columns:minmax(0,1fr);gap:8px}
  .home-search-field{padding-inline:14px;gap:10px}
  .home-search-field>svg{width:18px;height:18px}
  .home-search-field input[type=search]{height:44px;font-size:16px}
  .home-search-field input[type=search]::placeholder{font-size:clamp(11px,3.4vw,13px)}
  .home-intro .home-search-button{min-height:44px;font-size:14px;padding:10px}
}
@media(max-height:540px) and (min-width:601px){
  .home-intro{padding-block:32px}
  .home-intro .home-hero{gap:18px;transform:none}
  .home-intro .hero-copy h1,html[lang=zh-Hans] .home-intro .hero-copy h1{font-size:44px}
  .home-intro .hero-copy .home-credentials{margin-top:12px}
  .home-intro .hero-copy .home-region{margin-top:10px}
  .home-search-field input[type=search],.home-intro .home-search-button{height:44px;min-height:44px}
}

/* Let the film fill the opening behind the homepage navigation. */
.home-page .home-intro{min-height:100dvh;padding-top:calc(clamp(56px,9svh,100px) + var(--safe-top,0px))}
.home-page .site-header{
  position:fixed;inset:0 0 auto;width:100%;
  transition:transform .24s ease,background-color .2s ease,color .2s ease;
}
.home-page .site-header.home-header-hidden{transform:translateY(-100%);pointer-events:none}
.home-page .site-header.home-header-clear{background:linear-gradient(180deg,#0000001a,#0000000a 72%,#00000000);color:#fff;border:0;box-shadow:none}
.home-page .home-header-clear .brand img{filter:invert(1)}
.home-page .home-header-clear .brand>span,.home-page .home-header-clear #main-nav>a{text-shadow:0 1px 4px #0008}
.home-page .home-header-clear #main-nav{background:transparent;border-color:transparent}
.home-page .home-header-clear #main-nav>a:not(.nav-contact)::after{background:currentColor}
.home-page .home-header-clear #main-nav .nav-contact{border-color:#ffffffa6}
.home-page .home-header-clear #main-nav .nav-contact:hover{background:#ffffff20}
.home-page .home-header-clear .menu-toggle,.home-page .home-header-clear .language-switch,.home-page .home-header-clear .language-switch button{color:#fff}
.home-page .home-header-clear .menu-toggle span{background:#fff}
.home-page .home-header-clear a:focus-visible,.home-page .home-header-clear button:focus-visible{outline-color:#fff}
@media(prefers-reduced-motion:reduce){.home-page .site-header{transition:none}}
