/* Private Weather directory only. The reading pages retain their own layout. */
html.pw-index-page { color-scheme: dark; scrollbar-gutter: stable; }
html.pw-index-page,
html.pw-index-page body {
  height: auto;
  min-height: 100%;
  overflow-x: clip;
  overflow-y: auto;
}
.pw-index-page .site-shell,
.pw-index-page .foreground-stage {
  height: auto;
  min-height: 100svh;
  overflow: visible;
}
.pw-index-page .pw-directory-layer {
  position: relative;
  inset: auto;
  height: auto;
  min-height: 100svh;
  padding: clamp(136px, 18svh, 180px) 7vw 64px;
  align-items: flex-start;
  overflow: visible;
}
.pw-index-page .pw-directory { margin-top: 0; }
.pw-index-page .pw-directory .eyebrow {
  margin-bottom: 23px;
  font-size: 12px;
  letter-spacing: .2em;
}
.pw-index-page .pw-introduction { margin-bottom: 28px; }
.pw-index-page .pw-masthead { margin-bottom: 17px; }
.pw-index-page .pw-masthead p { margin: 0; }
.pw-index-page .pw-masthead-line {
  color: var(--bone);
  font: 400 clamp(21px, 1.9vw, 24px)/1.45 var(--reading-font);
}
.pw-index-page .pw-mission {
  color: var(--mist);
  font: italic 400 clamp(21px, 1.9vw, 24px)/1.45 var(--reading-font);
}
.pw-index-page .pw-masthead[lang="zh-Hans"] p {
  font-size: 18px;
  font-style: normal;
  line-height: 1.85;
  letter-spacing: .025em;
}
.pw-index-page .pw-about > summary {
  display: flex;
  align-items: center;
  gap: 15px;
  width: fit-content;
  max-width: 100%;
  min-height: 44px;
  padding: 6px 0;
  list-style: none;
  color: var(--mist);
  cursor: pointer;
  font: 400 17px/1.45 var(--reading-font);
  text-underline-offset: 5px;
}
.pw-index-page .pw-about > summary::-webkit-details-marker { display: none; }
.pw-index-page .pw-about > summary::marker { content: ""; }
.pw-index-page .pw-about > summary:hover { color: var(--bone); }
.pw-index-page .pw-about > summary:focus-visible {
  outline: 1px solid var(--bone);
  outline-offset: 5px;
}
.pw-index-page .pw-about-mark {
  position: relative;
  width: 10px;
  height: 10px;
  flex: none;
}
.pw-index-page .pw-about-mark::before,
.pw-index-page .pw-about-mark::after {
  content: "";
  position: absolute;
  background: currentColor;
}
.pw-index-page .pw-about-mark::before { width: 10px; height: 1px; top: 4px; left: 0; }
.pw-index-page .pw-about-mark::after { width: 1px; height: 10px; left: 4px; top: 0; }
.pw-index-page .pw-about[open] .pw-about-mark::after { display: none; }
.pw-index-page .pw-about-copy {
  max-width: 60ch;
  padding: 19px 0 9px;
  color: var(--bone);
  font: 400 21px/1.6 var(--reading-font);
  overflow-wrap: break-word;
}
.pw-index-page .pw-about-copy p { margin: 0 0 19px; }
.pw-index-page .pw-about-copy p:last-child { margin-bottom: 0; }
.pw-index-page .pw-about-copy[lang="zh-Hans"] {
  font-size: 18px;
  line-height: 1.95;
  letter-spacing: .025em;
}
.pw-index-page .pw-about[open] { padding-bottom: 12px; }
.pw-index-page:not([data-site-language]) [data-language-copy="zh"] { display: none; }
@media (max-width: 960px) {
  .pw-index-page .pw-directory-layer { padding: 132px 28px 48px; }
  .pw-index-page .pw-about-copy { font-size: 20px; line-height: 1.6; }
  .pw-index-page .pw-about-copy[lang="zh-Hans"] { font-size: 17px; line-height: 1.95; }
}
@media (max-width: 360px) {
  .pw-index-page .pw-directory-layer { padding-left: 24px; padding-right: 24px; }
}
@media (max-height: 560px) {
  .pw-index-page .pw-directory-layer { padding-top: 110px; }
}
