/* Mobile homepage rebuilt from the desktop visual assets. */
html[data-viewport-mode="web"] body.home-page .web-water-normal-canvas{display:none!important}
html[data-viewport-mode="mobile"] body.home-page{
  background:#eeeae2!important;
}
html[data-viewport-mode="mobile"] body.home-page>.home{
  width:min(100%,540px)!important;
  min-height:0!important;
  padding:0 0 74px!important;
  overflow:hidden!important;
  background:#f7f5ef!important;
}
html[data-viewport-mode="mobile"] body.home-page .hero{
  position:relative;
  container-type:size;
  width:100%;
  height:100svh!important;
  min-height:0;
  max-height:none!important;
  overflow:hidden;
  background-color:#f6f3ed!important;
  background-image:none!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:auto 100%!important;
}
html[data-viewport-mode="mobile"] body.home-page .hero::after,
html[data-viewport-mode="mobile"] body.home-page .hero-star-chart,
html[data-viewport-mode="mobile"] body.home-page .hero-logo-glow,
html[data-viewport-mode="mobile"] body.home-page .hero-vertical-logo,
html[data-viewport-mode="mobile"] body.home-page .hero-vertical-motto,
html[data-viewport-mode="mobile"] body.home-page .hero .menu,
html[data-viewport-mode="mobile"] body.home-page>.home>.content{
  display:none!important;
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-background-video{
  position:absolute;
  z-index:0;
  left:50%;
  top:50%;
  display:block;
  width:100svh;
  height:100vw;
  width:100cqh;
  height:100cqw;
  max-width:none;
  max-height:none;
  object-fit:cover;
  object-position:center;
  opacity:.92;
  transform:translate(-50%,-50%) rotate(90deg);
  pointer-events:none;
}
html[data-viewport-mode="mobile"] body.home-page .web-water-normal-canvas{
  display:none!important;
}
html[data-viewport-mode="mobile"] body.home-page .web-hexagram-reveal-layer{
  position:absolute;
  z-index:3;
  inset:0;
  display:block;
  overflow:hidden;
  pointer-events:none;
}
html[data-viewport-mode="mobile"] body.home-page .web-hexagram-reveal{
  position:absolute;
  left:var(--gua-x);
  top:var(--gua-y);
  color:#b58a3f;
  font-family:"Segoe UI Symbol","Noto Sans Symbols 2","Arial Unicode MS",serif;
  font-size:calc(var(--gua-size) * .72);
  font-style:normal;
  font-weight:400;
  line-height:1;
  text-shadow:0 1px 0 rgba(255,255,255,.82),0 0 14px rgba(190,146,69,.2);
  mix-blend-mode:multiply;
  opacity:0;
  filter:blur(5px);
  transform:translate(-50%,24px) scale(.94);
  animation:hexagramFloatReveal var(--gua-duration) cubic-bezier(.2,.62,.28,1) var(--gua-delay) both;
}
html[data-viewport-mode="mobile"] body.home-page .web-hexagram-reveal.is-resetting{visibility:hidden}
html[data-viewport-mode="mobile"] body.home-page .web-hero-composition{
  position:absolute;
  z-index:5;
  inset:0;
  display:block;
  color:#4d5358;
  text-align:center;
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-symbol{display:none!important}
html[data-viewport-mode="mobile"] body.home-page .web-hero-emblem{
  position:absolute;
  left:50%;
  top:13.4%;
  width:48%;
  height:31%;
  object-fit:contain;
  mix-blend-mode:multiply;
  opacity:.94;
  transform:translateX(-50%);
  filter:contrast(1.025) saturate(.92);
  pointer-events:none;
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-copy{
  position:absolute;
  z-index:2;
  left:50%;
  top:44%;
  width:88%;
  transform:translateX(-50%);
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-eyebrow{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin:0;
  color:#af8547;
  font:600 7px/1.2 Georgia,serif!important;
  letter-spacing:1.8px;
  white-space:nowrap;
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-eyebrow i{
  width:30px;
  height:1px;
  background:#c7a66c;
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-copy h1{
  width:67%;
  margin:10px auto 5px;
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-copy h1 img{
  display:block;
  width:100%;
  height:auto;
  mix-blend-mode:multiply;
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-copy h2{
  margin:0;
  color:#555d63;
  font:500 12px/1.65 "Songti SC","Noto Serif SC",serif;
  letter-spacing:1px;
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-description{
  margin:8px auto 0;
  color:#6e7479;
  font-size:8px!important;
  line-height:1.65!important;
  white-space:nowrap;
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-actions{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:15px;
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-actions :where(a,button){
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-width:0;
  width:42%;
  height:43px;
  padding:0 7px;
  border:1px solid rgba(183,148,87,.66);
  border-radius:9px;
  background:rgba(255,255,255,.55);
  color:#9c7439;
  font-size:10px!important;
  text-decoration:none;
  box-shadow:0 6px 18px rgba(94,78,52,.07);
  backdrop-filter:blur(10px);
}
html[data-viewport-mode="mobile"] body.home-page .web-hero-actions span{font-size:15px}
html[data-viewport-mode="mobile"] body.home-page .web-hero-features{
  position:absolute;
  z-index:2;
  left:50%;
  bottom:10.5%;
  display:block;
  width:92%;
  transform:translateX(-50%);
}
html[data-viewport-mode="mobile"] body.home-page .feature-direction{display:none!important}
html[data-viewport-mode="mobile"] body.home-page .web-feature-options{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
}
html[data-viewport-mode="mobile"] body.home-page .web-feature-options a{
  display:block;
  min-width:0;
  padding:3px 7px 5px;
  border-right:1px solid rgba(148,139,123,.24);
  color:#555b61;
  text-align:center;
  text-decoration:none;
}
html[data-viewport-mode="mobile"] body.home-page .web-feature-options a:last-child{border-right:0}
html[data-viewport-mode="mobile"] body.home-page .web-feature-options small{
  display:block;
  margin-bottom:8px;
  color:#af8342;
  font:600 7px/1 Georgia,serif!important;
}
html[data-viewport-mode="mobile"] body.home-page .web-feature-options span{display:block;min-width:0}
html[data-viewport-mode="mobile"] body.home-page .web-feature-options b{
  display:block;
  overflow:hidden;
  color:#50575d;
  font:600 13px/1.25 "Songti SC","Noto Serif SC",serif;
  text-overflow:ellipsis;
  white-space:nowrap;
}
html[data-viewport-mode="mobile"] body.home-page .web-feature-options em{
  display:block;
  overflow:hidden;
  margin-top:6px;
  color:#7c8286;
  font-size:6px;
  font-style:normal;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory{
  position:relative;
  z-index:8;
  display:block;
  width:100%;
  margin:-64px 0 0;
  padding-bottom:6px;
  background:transparent;
}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory summary{
  display:flex;
  height:64px;
  align-items:center;
  justify-content:center;
  gap:12px;
  color:#646a70;
  font-size:12px;
  letter-spacing:3px;
  list-style:none;
  cursor:pointer;
}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory summary::-webkit-details-marker{display:none}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory summary i{
  width:9px;
  height:9px;
  border-right:1.5px solid #a48148;
  border-bottom:1.5px solid #a48148;
  transform:rotate(45deg) translateY(-2px);
  transition:transform .2s;
}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory[open] summary i{transform:rotate(225deg) translate(-2px,-2px)}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel{
  display:none;
  padding:18px 14px 28px;
}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory[open] .web-app-directory-panel{display:block}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel section{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-flow:row;
  gap:8px;
  margin-bottom:20px;
}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel h3{
  grid-column:1/-1;
  margin:0;
  padding:0 2px 8px;
  border-bottom:1px solid rgba(105,116,123,.18);
  color:#92713f;
  font-size:12px;
  letter-spacing:2px;
}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel .catalog-app{
  display:flex;
  aspect-ratio:1/1;
  min-width:0;
  align-items:center;
  justify-content:center;
  padding:12px 6px;
  border:1px solid rgba(255,255,255,.92);
  border-radius:15px;
  background:rgba(255,255,255,.72);
  color:#5b6268;
  text-align:center;
  text-decoration:none;
  box-shadow:0 6px 16px rgba(63,72,80,.08);
}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel .catalog-app-icon{
  display:grid;
  width:40px;
  height:40px;
  flex:0 0 40px;
  place-items:center;
  margin-bottom:7px;
  border-radius:14px;
  background-color:transparent;
  background-image:var(--catalog-icon-image);
  background-position:center;
  background-repeat:no-repeat;
  background-size:cover;
  color:#b17a28;
  font:500 19px/1 "Songti SC","Noto Serif SC",serif;
  text-shadow:0 1px 2px rgba(255,255,255,.96),0 0 5px rgba(255,255,255,.84);
}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel .catalog-open-tag{display:none}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel .catalog-app-copy{
  display:flex;
  width:100%;
  height:100%;
  min-width:0;
  align-items:center;
  flex-direction:column;
  justify-content:center;
}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel b{
  display:block;
  width:100%;
  color:#4f575d;
  font:600 14px/1.35 "Songti SC","Noto Serif SC",serif;
  text-align:center;
  overflow-wrap:anywhere;
}
html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel small{
  display:block;
  width:100%;
  margin-top:7px;
  overflow:visible;
  color:#929b9f;
  font-size:10px;
  line-height:1.55;
  text-align:center;
  white-space:normal;
  overflow-wrap:anywhere;
  -webkit-box-orient:vertical;
}
@media(max-width:360px){
  html[data-viewport-mode="mobile"] body.home-page .web-hero-copy{top:43%}
  html[data-viewport-mode="mobile"] body.home-page .web-hero-copy h1{width:70%}
  html[data-viewport-mode="mobile"] body.home-page .web-feature-options b{font-size:11px}
  html[data-viewport-mode="mobile"] body.home-page .web-hero-description{font-size:7px!important}
  html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel .catalog-app{padding-inline:5px}
  html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel b{font-size:13px}
  html[data-viewport-mode="mobile"] body.home-page .web-app-directory-panel small{margin-top:5px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){
  html[data-viewport-mode="mobile"] body.home-page .web-hero-background-video{display:none}
  html[data-viewport-mode="mobile"] body.home-page .web-hexagram-reveal{animation:none!important;opacity:.14;filter:none;transform:translate(-50%,-50%)}
}
