@font-face {
  font-family: "GenRyuMin TW";
  src: url('../fonts/GenRyuMin2TW-H.otf') format('opentype');
  font-style: normal;
  font-weight: 700 900;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans TC";
  src: url('../fonts/NotoSansTC-Variable.ttf') format('truetype-variations');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: "HM Cover Serif";
  src: url('../fonts/HMCoverSerif-v2.woff2') format('woff2');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
@font-face {
  font-family: "Iansui Hero Quote";
  src: url('../fonts/Iansui-Hero-Quote.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

:root {
  color-scheme: dark;
  --black: #050505;
  --black-2: #090a0b;
  --panel: #0d0e10;
  --silver-1: #eef0f3;
  --silver-2: rgba(245,245,245,.94);
  --silver-3: rgba(215,218,222,.68);
  --silver-4: rgba(190,195,202,.48);
  --hairline: rgba(184, 191, 195, .18);
  --energy: #fdf7dd;
  --energy-soft: rgba(182, 122, 50, .36);
  --font-display: "GenRyuMin TW", "Noto Serif TC", "Source Han Serif TC", "Songti TC", PMingLiU, serif;
  --font-body: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
  --fs-page-title: clamp(34px, 10vw, 42px);
  --fs-section-title: clamp(24px, 7vw, 30px);
  --fs-card-title: clamp(18px, 5vw, 22px);
  --fs-body-lg: clamp(16px, 4.5vw, 18px);
  --fs-body: clamp(14px, 4vw, 16px);
  --fs-meta: clamp(11px, 3.2vw, 13px);
  --lh-title: 1.25;
  --lh-body: 1.75;
  --tracking-title: .04em;
  --tracking-body: .035em;
  --text-primary: #e7e9ea;
  --text-secondary: #abb1b4;
  --text-muted: #858d90;
  --page-max-width: 1280px;
  --content-max-width: 1180px;
  --page-padding-desktop: 32px;
  --page-padding-mobile: 20px;
  --section-gap-desktop: 64px;
  --section-gap-mobile: 44px;
  --page: var(--page-padding-mobile);
  --header-h: 60px;
  --nav-h: 70px;
  --serif: "GenRyuMin TW", "Noto Serif TC", "Source Han Serif TC", "Songti TC", PMingLiU, serif;
  --sans: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
}

* { box-sizing: border-box; }
html { background: var(--black); scroll-behavior: smooth; }
body { margin: 0; background: var(--black); color: var(--silver-2); font-family: var(--sans); font-size: 14px; -webkit-font-smoothing: antialiased; }
html:not(.hm-home-light-restored) body.home:not(.hm-home-is-lit) { overflow:hidden; overscroll-behavior:none; }
h1, h2, h3, h4, h5, h6 { font-family: var(--serif) !important; }
p, blockquote, li, dt, dd, small, time, label, .hm-page-copy, .hm-prologue-copy > strong { font-family: var(--sans) !important; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img, video { display:block; width:100%; max-width:100%; -webkit-user-drag:none; -webkit-touch-callout:none; user-select:none; }
button { color: inherit; }
.screen-reader-text { position: absolute; clip: rect(1px,1px,1px,1px); width: 1px; height: 1px; overflow: hidden; }

/* Immersive three-knock entrance */
html.hm-door-entry-pending { overflow: hidden; background: #000; }
html.hm-door-entry-pending .hm-app-shell { visibility: hidden; }
.hm-door-entry[hidden] { display: none; }
.hm-door-entry { position: fixed; z-index: 2147483647; inset: 0; overflow: hidden; background: #000; opacity: 0; cursor: default; user-select: none; touch-action: manipulation; transition: opacity .9s ease; }
.hm-door-entry.is-visible { opacity: 1; }
.hm-door-entry::before { content: ""; position: absolute; z-index: 4; inset: 0; pointer-events: none; background: radial-gradient(ellipse at 50% 44%,transparent 34%,rgba(0,0,0,.12) 65%,rgba(0,0,0,.6) 100%); box-shadow:inset 0 0 clamp(54px,13vw,145px) clamp(12px,3vw,40px) rgba(0,0,0,.84); }
.hm-door-layout { position: relative; display: grid; grid-template-rows: auto minmax(0,1fr); width: 100%; min-height: 100svh; padding: max(22px,env(safe-area-inset-top)) 18px max(8px,env(safe-area-inset-bottom)); overflow: hidden; background: radial-gradient(circle at 50% 42%,rgba(255,255,255,.014),transparent 40%),#000; }
.hm-door-copy { position: relative; z-index: 7; display: grid; justify-items:center; gap: 2px; width: min(100%,350px); margin: 0 auto 6px; color: rgba(215,215,212,.72); font: 400 clamp(12px,3.45vw,14px)/1.42 var(--sans); letter-spacing: .055em; text-align:center; }
.hm-door-title { margin:0 0 8px; color:rgba(225,225,221,.84); font:700 clamp(25px,7.2vw,34px)/1.14 var(--serif) !important; letter-spacing:.18em; opacity:0; filter:blur(8px); transform:translateY(8px) scale(.985); animation:hm-door-title-reveal 1.35s cubic-bezier(.18,.72,.2,1) .38s forwards; }
.hm-door-copy p { justify-self: center; width: 0; max-width: 100%; margin: 0; overflow: hidden; border-right: 1px solid transparent; white-space: nowrap; font-family: var(--sans) !important; animation: hm-door-type-line var(--duration) steps(var(--chars),end) var(--delay) forwards,hm-door-caret-in .01s linear var(--delay) forwards,hm-door-caret-out .22s ease var(--finish) forwards; }
.hm-door-copy p:nth-of-type(1) { --chars:13; --delay:2.05s; --duration:1.26s; --finish:3.31s; --typed-width:14.6em; }
.hm-door-copy p:nth-of-type(2) { --chars:17; --delay:3.7s; --duration:1.68s; --finish:5.38s; --typed-width:19.2em; }
.hm-door-copy p:nth-of-type(3) { --chars:16; --delay:5.77s; --duration:1.58s; --finish:7.35s; --typed-width:18.2em; animation:hm-door-type-line var(--duration) steps(var(--chars),end) var(--delay) forwards,hm-door-caret-in .01s linear var(--delay) forwards,hm-door-caret-blink .86s step-end var(--finish) infinite; }
.hm-door-frame { position: relative; top:-18px; z-index: 1; align-self: center; justify-self: center; width: min(calc(100vw - 36px),calc((100svh - 170px)*.66191)); aspect-ratio: 1020 / 1541; overflow: hidden; cursor: pointer; opacity: 0; filter: brightness(.1); transform: scale(1.025); animation: hm-door-emerge 1.65s cubic-bezier(.2,.7,.2,1) .08s forwards; }
.hm-door-visual { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: center; filter:brightness(.86) contrast(1.04); pointer-events: none; }
.hm-door-open { z-index: 1; }
.hm-door-closed { z-index: 2; }
.hm-door-motion { z-index:3; opacity:1; will-change:transform; }
.hm-door-entry.is-open .hm-door-closed { opacity:0; }
.hm-door-entry.is-open .hm-door-motion { opacity:1; }
.hm-door-handle { position: absolute; z-index: 6; left: 70%; top: 40%; width: 20%; height: 20%; border: 0; border-radius: 45%; padding: 0; color: transparent; background: transparent; cursor: grab; }
.hm-door-handle::before { content: none; }
.hm-door-handle:focus { outline: none; }
.hm-door-handle:focus-visible { outline: 1px solid rgba(228,232,228,.55); outline-offset: 4px; }
.hm-door-entry.is-handle-jammed .hm-door-layout { animation: hm-door-lock-screen-shake .42s linear both; }
.hm-door-entry.is-entering { pointer-events: none; animation: hm-door-leave .9s cubic-bezier(.6,0,.9,.4) forwards; }
@keyframes hm-door-emerge { 0% { opacity:0; filter:brightness(.1); transform:scale(1.025); } 100% { opacity:1; filter:brightness(.96); transform:scale(1); } }
@keyframes hm-door-title-reveal { 0% { opacity:0; filter:blur(8px); transform:translateY(8px) scale(.985); letter-spacing:.34em; } 100% { opacity:1; filter:blur(0); transform:none; letter-spacing:.18em; } }
@keyframes hm-door-type-line { to { width:var(--typed-width); } }
@keyframes hm-door-caret-in { to { border-right-color:rgba(224,224,218,.62); } }
@keyframes hm-door-caret-out { to { border-right-color:transparent; } }
@keyframes hm-door-caret-blink { 0%,48% { border-right-color:rgba(224,224,218,.72); } 49%,100% { border-right-color:transparent; } }
@keyframes hm-door-lock-screen-shake { 0%,100% { transform:translate(0,0); } 16% { transform:translate(-2px,1px); } 32% { transform:translate(2px,-1px); } 48% { transform:translate(-1.5px,-.5px); } 64% { transform:translate(1.2px,.7px); } 80% { transform:translate(-.6px,0); } }
@keyframes hm-door-leave { 0%,58% { opacity:1; } 100% { opacity:0; } }
@media (min-width:768px) {
  .hm-door-layout { grid-template-columns:minmax(0,58fr) minmax(360px,42fr); grid-template-rows:1fr; gap:clamp(28px,4vw,76px); align-items:center; padding:clamp(24px,3.1vw,56px) clamp(38px,5vw,96px) clamp(24px,3.1vw,56px) clamp(18px,2.2vw,42px); }
  .hm-door-frame { grid-column:1; grid-row:1; top:0; align-self:center; justify-self:start; width:min(100%,calc(92svh*.66191)); }
  .hm-door-copy { grid-column:2; grid-row:1; justify-items:start; gap:clamp(21px,2.5vw,42px); align-self:center; width:min(100%,510px); margin:0; font-size:clamp(16px,1.35vw,22px); line-height:1.65; letter-spacing:.085em; text-align:left; }
  .hm-door-copy p { justify-self:start; }
  .hm-door-title { margin-bottom:clamp(12px,1.4vw,24px); font-size:clamp(34px,3.2vw,52px) !important; }
  .hm-door-copy p:nth-of-type(1) { --typed-width:13.5em; }
  .hm-door-copy p:nth-of-type(2) { --typed-width:18.2em; }
  .hm-door-copy p:nth-of-type(3) { --typed-width:17.2em; }
}
@media (prefers-reduced-motion:reduce) { .hm-door-frame { animation-duration:.01ms; animation-delay:0s; } .hm-door-title { opacity:1; filter:none; transform:none; animation:none; } .hm-door-entry.is-open .hm-door-closed { opacity:0; animation:none; } .hm-door-entry.is-open .hm-door-motion { display:none; animation:none; } .hm-door-copy p { width:var(--typed-width); border-right-color:transparent; animation:none; } }

.hm-app-shell { width: min(100%, 760px); min-height: 100dvh; margin: 0 auto; background: var(--black); position: relative; overflow-x: clip; }
.hm-main { min-height: 100dvh; padding-top: var(--header-h); padding-bottom: env(safe-area-inset-bottom); }
.hm-header { position: fixed; z-index: 80; top: 0; left: 50%; width: min(100%, 760px); height: var(--header-h); transform: translateX(-50%); display: flex; align-items: center; justify-content: space-between; padding: 11px 18px 9px; background: linear-gradient(180deg, rgba(5,5,5,.98), rgba(5,5,5,.9) 66%, rgba(5,5,5,.68)); }
.hm-wordmark { width:142px; color:#eef0f1; line-height:0; }
.hm-wordmark-number { margin-left:.16em; font:inherit; font-weight:400; letter-spacing:-.06em; opacity:.95; }
.hm-wordmark svg { display:block; width:100%; height:auto; overflow:visible; }
.hm-desktop-header-nav { display:none; }
.hm-header-actions { display: flex; align-items: center; gap: 12px; }
.hm-header-actions > a { color: #dce0e2; font: 600 10px/1 var(--sans); text-transform: uppercase; opacity: .92; }
.hm-menu-toggle, .hm-menu-close { border: 0; background: transparent; padding: 6px 0 6px 4px; font-size: 23px; line-height: 1; cursor: pointer; }
.hm-menu { position:fixed; inset:0 max(0px,calc((100vw - 760px)/2)); z-index:100; overflow-y:auto; padding:88px 24px 40px; background:radial-gradient(circle at 76% 16%,rgba(171,191,204,.075),transparent 27%),linear-gradient(160deg,rgba(8,9,10,.985),rgba(3,4,5,.99) 58%,rgba(7,8,9,.985)); -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); }
.hm-menu-close { position: absolute; right: 20px; top: 16px; font-size: 32px; font-weight: 200; }
.hm-menu-primary { width:min(100%,420px); margin-inline:auto; }
.hm-menu ul { margin:0; padding:0; list-style:none; }
.hm-menu li a { position:relative; min-height:52px; display:flex; align-items:center; padding:14px 30px 14px 2px; color:#aeb5b8; font:400 clamp(16px,1.6vw,18px)/1.3 var(--serif); letter-spacing:.16em; text-shadow:0 0 10px rgba(203,218,226,.04); transition:color .28s ease,text-shadow .28s ease,background-color .28s ease; }
.hm-menu li a::before { content:""; position:absolute; right:0; bottom:0; left:0; height:.5px; background:linear-gradient(90deg,transparent,rgba(193,205,211,.2) 18% 82%,transparent); }
.hm-menu li a::after { content:""; position:absolute; top:50%; right:8px; width:3px; height:3px; border-radius:50%; background:#b7c2c8; box-shadow:0 0 7px rgba(190,213,226,.5); opacity:.18; transform:translateY(-50%); transition:opacity .28s ease,box-shadow .28s ease; }
.hm-menu li a:hover,.hm-menu li a:focus-visible,.hm-menu li a[aria-current="page"] { color:#e0e5e7; background:linear-gradient(90deg,transparent,rgba(189,207,217,.035),transparent); text-shadow:0 0 12px rgba(195,218,230,.14); }
.hm-menu li a:hover::after,.hm-menu li a:focus-visible::after,.hm-menu li a[aria-current="page"]::after { opacity:.88; box-shadow:0 0 4px rgba(230,240,245,.8),0 0 11px rgba(166,199,216,.42); }
.hm-admin-menu { display: grid; gap: 10px; margin-top: 38px; padding: 18px; border: 1px solid rgba(182,122,50,.3); background: rgba(182,122,50,.04); }
.hm-admin-menu span, .hm-admin-strip span { color: var(--energy); font-size: 10px; letter-spacing: .18em; }
.hm-admin-actions { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; }
.hm-admin-actions a,.hm-admin-actions button { min-height:38px; display:grid; place-items:center; border:1px solid rgba(200,205,210,.2); color:#d8dddf; background:#0b0d0e; font-size:11px; }
.hm-admin-actions button:disabled { color:#626a6d; }
.hm-admin-menu small { color:#6d7779; font-size:8px; letter-spacing:.08em; }

.hm-section { padding: 48px var(--page); }
.hm-section-heading { margin-bottom: 18px; }
.hm-section-heading h2, .hm-selection h2 { margin: 0; color: #dfe3e5; font: 700 25px/1.35 var(--serif); letter-spacing: .01em; text-shadow: 0 0 18px rgba(226,231,234,.1); }

/* Hero */
.hm-hero { position: relative; isolation:isolate; min-height: calc(100svh - var(--header-h)); display: flex; align-items: center; padding: 34px clamp(28px,7vw,54px) 40px; overflow: hidden; background:#0b0b0b; }
.hm-hero-media { position: absolute; inset: 0; }
.hm-hero-media picture { position:absolute; inset:0; display:block; width:100%; height:100%; transition:opacity 1.05s ease; }
.hm-hero-picture-off { opacity:1; }
.hm-hero-picture-lit { opacity:0; }
.hm-hero-media img { width: 100%; height: 100%; object-fit: cover; object-position:center; filter:brightness(.62) saturate(.78); transform:scale(1.012); transition:filter 1.1s ease,transform 1.6s cubic-bezier(.2,.72,.2,1); }
.hm-hero-media:empty { background: radial-gradient(circle at 78% 28%, #3e4142 0, #161819 30%, #080909 64%, #050505 100%); }
.hm-hero-shade { position: absolute; inset: 0; z-index:1; background:linear-gradient(90deg,rgba(11,11,11,.94) 0%,rgba(11,11,11,.68) 37%,rgba(11,11,11,.08) 72%),linear-gradient(0deg,#0b0b0b 0%,rgba(11,11,11,.12) 42%); transition:opacity 1s ease; }
.hm-hero::after { content:""; position:absolute; z-index:1; inset:0; pointer-events:none; opacity:0; background:radial-gradient(circle at 66% 42%,rgba(255,255,255,.15) 0,rgba(230,230,230,.08) 8%,transparent 29%); transition:opacity 1.3s ease; }
.hm-hero.is-lit .hm-hero-picture-off { opacity:0; }
.hm-hero.is-lit .hm-hero-picture-lit { opacity:1; }
.hm-hero.is-lit .hm-hero-media img { filter:brightness(1) saturate(1); transform:scale(1); }
.hm-hero.is-lit .hm-hero-shade { opacity:.28; }
.hm-hero.is-lit::after { opacity:1; animation:hm-hero-light-breathe 3.6s ease-in-out infinite; }
html.hm-home-light-restored .home .hm-hero-picture-off { opacity:0; }
html.hm-home-light-restored .home .hm-hero-picture-lit { opacity:1; }
html.hm-home-light-restored .home .hm-hero-media img { filter:brightness(1) saturate(1); transform:scale(1); }
html.hm-home-light-restored .home .hm-hero-shade { opacity:.28; }
html.hm-home-light-restored .home .hm-hero::after { opacity:1; animation:hm-hero-light-breathe 3.6s ease-in-out infinite; }
@keyframes hm-hero-light-breathe { 0%,100%{opacity:.66} 50%{opacity:1} }
.hm-hero-content { position: relative; z-index:3; width:390px; }
.hm-hero-title { width:max-content; margin:0 0 18px; color:#e6e6e6; font:500 clamp(38px,4.4vw,44px)/1.18 var(--serif) !important; letter-spacing:.045em; text-shadow:0 0 24px rgba(255,255,255,.15); opacity:.48; transform:translateY(8px); transition:opacity .9s ease .12s,transform .9s cubic-bezier(.2,.72,.2,1) .12s; }
.hm-hero.is-lit .hm-hero-title { opacity:1; transform:none; }
html.hm-home-light-restored .home .hm-hero-title { opacity:1; transform:none; }
.hm-hero-candle-hit { position:absolute; z-index:2; left:55%; top:30%; width:24%; height:53%; border:0; padding:0; background:transparent; cursor:pointer; }
.hm-hero-ignite { position:relative; width:96px; min-width:96px; min-height:40px; overflow:hidden; border:0; border-radius:3px; padding:0 17px; clip-path:polygon(5px 0,calc(100% - 5px) 0,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0 calc(100% - 5px),0 5px); color:#c8ced1; background:linear-gradient(112deg,rgba(255,255,255,.04),transparent 26% 74%,rgba(255,255,255,.025)),rgba(8,8,8,.55); box-shadow:none; font:400 14px/1 var(--serif); letter-spacing:.28em; cursor:pointer; transition:background-color .45s ease,color .32s ease; }
.hm-hero-ignite::before { content:""; position:absolute; z-index:2; inset:0; padding:1px; clip-path:inherit; background:linear-gradient(105deg,transparent 28%,rgba(232,239,242,.08) 41%,rgba(238,244,246,.76) 50%,rgba(232,239,242,.08) 59%,transparent 72%); opacity:0; transform:translateX(-115%); pointer-events:none; -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; }
.hm-hero-ignite-frame { position:absolute; z-index:1; inset:0; display:block; width:100%; height:100%; overflow:visible; opacity:.9; pointer-events:none; transition:opacity .32s ease; }
.hm-hero-ignite-frame-outer { fill:none; stroke:url(#hm-ignite-frame-silver); stroke-width:1.1; vector-effect:non-scaling-stroke; }
.hm-hero-ignite-frame-inner { fill:none; stroke:rgba(12,14,15,.9); stroke-width:.65; vector-effect:non-scaling-stroke; }
.hm-hero-ignite span { position:relative; z-index:3; display:block; padding-left:.28em; opacity:1; visibility:visible; color:inherit; transition:color .32s ease; }
.hm-hero.is-igniting .hm-hero-ignite::before { animation:hm-hero-ignite-sweep .9s cubic-bezier(.32,.02,.2,1) 1; }
.hm-hero.is-lit .hm-hero-ignite { color:#9aa1a4; background:linear-gradient(112deg,rgba(255,255,255,.022),transparent 26% 74%,rgba(255,255,255,.015)),rgba(6,6,6,.5); box-shadow:none; cursor:pointer; }
.hm-hero.is-lit .hm-hero-ignite-frame { opacity:.58; }
@keyframes hm-hero-ignite-sweep { 0%{opacity:0;transform:translateX(-115%)} 15%{opacity:1} 85%{opacity:1} 100%{opacity:0;transform:translateX(115%)} }
.hm-hero-lock-hint { width:max-content; max-width:290px; margin:11px 0 0; border-left:2px solid rgba(207,215,219,.64); padding:7px 10px; color:#dde2e4; background:rgba(8,8,8,.8); box-shadow:0 7px 20px rgba(0,0,0,.3); font:400 12px/1.55 var(--sans) !important; letter-spacing:.055em; }
.hm-hero.is-lock-warning .hm-hero-ignite { animation:hm-hero-ignite-warning .72s ease-in-out 3; }
.hm-hero.is-lock-warning .hm-hero-ignite-frame { animation:hm-hero-ignite-border-warning .72s ease-in-out 3; }
.hm-hero.is-lock-warning .hm-hero-lock-hint { animation:hm-hero-lock-hint-in .28s ease both; }
@keyframes hm-hero-ignite-warning { 0%,100%{background-color:rgba(8,8,8,.55);color:#c8ced1} 50%{background-color:rgba(18,19,20,.76);color:#edf0f1} }
@keyframes hm-hero-ignite-border-warning { 0%,100%{opacity:.9} 50%{opacity:1} }
@keyframes hm-hero-lock-hint-in { from{opacity:0;transform:translateY(-3px)} to{opacity:1;transform:none} }
.hm-brand-title { position: relative; width: 270px; margin: 0 0 4px; overflow: hidden; }
.hm-brand-title img, .hm-brand-title svg { width: 100%; height: auto; display: block; }
.hm-brand-title::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(112deg,transparent 36%,rgba(255,255,255,.18) 43%,rgba(255,255,255,.98) 49%,rgba(196,218,232,.36) 55%,transparent 63%); -webkit-mask:url('../images/hmulan-wordmark.svg') center/contain no-repeat; mask:url('../images/hmulan-wordmark.svg') center/contain no-repeat; animation:hm-wordmark-sweep 3s cubic-bezier(.32,.02,.2,1) infinite; }
@keyframes hm-wordmark-sweep { 0%{opacity:0;transform:translate(-115%,28%)} 3%{opacity:1} 26.66%{opacity:1;transform:translate(115%,-28%)} 27%,100%{opacity:0;transform:translate(115%,-28%)} }
.hm-role { display:flex; align-items:center; margin: 0 0 14px; color: transparent; background:linear-gradient(90deg,#f4f5f5 0%,#a8aaab 52%,#050505 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; font: italic 200 25px/1.3 var(--serif); opacity: .6; }
.hm-role { font-family: var(--serif) !important; }
.hm-role span { color: inherit; -webkit-text-fill-color:transparent; }
.hm-role-line { flex:0 0 52px; width:52px; height:1px; margin:0 6px 0 0; overflow:hidden; background:rgba(214,219,221,.78); }
.hm-role-line path { display:none; }
.hm-hero blockquote { width:max-content; margin:0 0 22px; border-top:1px solid rgba(184,184,184,.34); padding-top:16px; color:#b8b8b8; font:400 15px/1.8 var(--sans) !important; letter-spacing:.075em; text-shadow:0 0 7px rgba(255,255,255,.1); opacity:.38; transform:translateY(8px); transition:opacity .9s ease .28s,transform .9s cubic-bezier(.2,.72,.2,1) .28s; }
.hm-hero.is-lit blockquote { opacity:1; transform:none; }
html.hm-home-light-restored .home .hm-hero blockquote { opacity:1; transform:none; }
.hm-home-overview { position:absolute; z-index:4; right:0; bottom:0; left:0; display:grid; grid-template-columns:minmax(300px,25%) minmax(150px,12.5%) minmax(0,1fr); border:0; background:linear-gradient(180deg,transparent 0%,rgba(5,5,5,.75) 58%,#070707 100%); }
.home:not(.hm-home-is-lit) .hm-home-overview { filter:brightness(.42) saturate(.4); opacity:.5; }
html.hm-home-light-restored .home .hm-home-overview { filter:none; opacity:1; }
.hm-home-overview { transition:filter 1.05s ease,opacity 1.05s ease; }
.home:not(.hm-home-is-lit) .hm-main > .hm-section,
.home:not(.hm-home-is-lit) .hm-main > .hm-site-footer { filter:brightness(.16) saturate(.35); opacity:.34; pointer-events:none; }
html.hm-home-light-restored .home .hm-main > .hm-section,
html.hm-home-light-restored .home .hm-main > .hm-site-footer { filter:none; opacity:1; pointer-events:auto; }
.home .hm-main > .hm-section,
.home .hm-main > .hm-site-footer { transition:filter 1.05s ease,opacity 1.05s ease; }
.hm-profile-stats { width:auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; margin:0; font-family:var(--sans); }
.hm-profile-stats a { position:relative; min-width:0; min-height:110px; display:grid; grid-template-rows:30px 14px; align-content:center; justify-items:center; row-gap:7px; text-align:center; }
.hm-profile-stats a + a::before,
.hm-home-mvp-board::before { content:""; position:absolute; top:50%; left:0; width:.5px; height:44px; background:linear-gradient(180deg,transparent,rgba(202,209,212,.42) 24% 76%,transparent); transform:translate(-50%,-50%); }
.hm-profile-stats a > span { grid-row:2; margin:0; color:#969da0; font:400 11px/14px var(--sans); letter-spacing:.08em; }
.hm-profile-stats a > strong { grid-row:1; align-self:end; margin:0; color:#dfe3e4; font:400 28px/30px var(--serif); letter-spacing:.1em; white-space:nowrap; }
.hm-profile-stats a { transition:color .22s ease,background-color .22s ease; }
.hm-profile-stats a:hover,.hm-profile-stats a:focus-visible { background:rgba(255,255,255,.022); outline:0; }
.hm-mvp-pk-trigger { border:0; padding:0; color:#fdf7dd; background:transparent; font:inherit; white-space:nowrap; text-shadow:0 0 7px rgba(214,169,77,.24); cursor:pointer; }
.hm-mvp-pk-trigger::after { content:""; width:18px; height:4px; display:inline-block; margin:0 0 2px 6px; background:radial-gradient(circle at 2px 2px,#d7a94d 0 1.5px,transparent 1.8px),radial-gradient(circle at 9px 2px,#d7a94d 0 1.5px,transparent 1.8px),radial-gradient(circle at 16px 2px,#d7a94d 0 1.5px,transparent 1.8px); filter:drop-shadow(0 0 3px rgba(215,169,77,.7)); animation:hm-mvp-pk-pulse 1.8s ease-in-out infinite; }
.hm-mvp-pk-modal[hidden] { display:none; }
.hm-mvp-pk-modal { position:fixed; z-index:150; inset:0; display:grid; place-items:end center; }
.hm-mvp-pk-backdrop { position:absolute; inset:0; border:0; background:rgba(0,0,0,.78); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
.hm-mvp-pk-modal > section { position:relative; width:min(100%,620px); max-height:min(82svh,720px); overflow:auto; border:1px solid rgba(203,214,217,.3); border-bottom:0; border-radius:20px 20px 0 0; padding:24px var(--page) calc(28px + env(safe-area-inset-bottom)); color:#dfe3e5; background:linear-gradient(150deg,#16191a,#070809 58%,#101213); box-shadow:0 -22px 60px rgba(0,0,0,.7),inset 0 1px rgba(255,255,255,.05); }
.hm-mvp-pk-close { position:absolute; top:13px; right:16px; width:34px; height:34px; border:1px solid rgba(201,208,211,.24); border-radius:50%; color:#bec5c7; background:rgba(3,4,5,.54); font-size:21px; line-height:1; }
.hm-mvp-pk-modal h2 { margin:6px 0 5px; color:#e5e8e9; font:700 28px/1.25 var(--serif); }
.hm-mvp-pk-modal section > p { margin:0; color:#8f989b; font-size:12px; line-height:1.7; }
.hm-mvp-pk-action-row { display:grid; grid-template-columns:minmax(0,1fr) 82px; gap:15px; align-items:center; margin:19px 0 14px; border-top:.5px solid rgba(215,222,224,.36); border-bottom:.5px solid rgba(215,222,224,.16); padding:10px 0; }
.hm-mvp-pk-timer { display:grid; gap:4px; margin:0; }
.hm-mvp-pk-timer small { color:#849093; font-size:9px; letter-spacing:.12em; }
.hm-mvp-pk-timer time { color:#fdf7dd; font:700 35px/1 var(--serif); letter-spacing:.08em; text-shadow:0 0 9px rgba(220,193,122,.2); }
.hm-mvp-pk-support { width:82px; grid-template-columns:82px; gap:4px; justify-self:end; padding:0; }
.hm-mvp-pk-support .hm-star-button { width:72px; height:72px; }
.hm-mvp-pk-support .hm-star-svg { width:58px; height:58px; }
.hm-mvp-pk-support > small { color:#e2e6e8; font-family:var(--serif) !important; font-size:12.5px; font-weight:700; line-height:1.2; letter-spacing:.025em; white-space:nowrap; }
.hm-payment-page { min-height:calc(100svh - 130px); display:grid; align-content:center; padding-top:80px; padding-bottom:110px; }
.hm-payment-page header { display:grid; gap:8px; }
.hm-payment-page h1 { margin:0; color:#e5e8e9; font:700 34px/1.25 var(--serif); }
.hm-payment-page p { margin:0; color:#929a9d; font-size:13px; line-height:1.8; }
.hm-payment-placeholder { display:grid; gap:12px; margin-top:28px; border-top:.5px solid rgba(215,222,224,.32); padding-top:20px; }
.hm-payment-placeholder strong { color:#fdf7dd; font:700 21px/1.3 var(--serif); }
.hm-payment-placeholder span { color:#818a8d; font-size:11px; }
.hm-payment-placeholder a { width:max-content; border-bottom:1px solid rgba(203,211,214,.35); padding:4px 0; color:#cbd1d3; font:700 13px/1.3 var(--serif); }
.hm-mvp-pk-modal ol { display:grid; gap:7px; margin:0; padding:0; list-style:none; }
.hm-mvp-pk-modal li { min-height:48px; display:flex; align-items:center; justify-content:space-between; gap:15px; border:1px solid rgba(192,200,203,.14); padding:8px 11px; background:rgba(255,255,255,.018); }
.hm-mvp-pk-modal li span { display:grid; gap:2px; }
.hm-mvp-pk-modal li strong { color:#dce1e2; font:700 15px/1.2 var(--serif); }
.hm-mvp-pk-modal li small { width:max-content; color:#fdf7dd; font-size:8px; letter-spacing:.12em; }
.hm-mvp-pk-modal li b { color:#b4bdc0; font-size:11px; white-space:nowrap; }
.hm-mvp-pk-rule { display:block; margin-top:13px; color:#747e81; font-size:9px; line-height:1.65; }
@keyframes hm-mvp-pk-pulse { 0%,100%{opacity:.45;transform:scale(.82)} 50%{opacity:1;transform:scale(1.08)} }
.hm-metal-cta { min-height: 52px; border: 1px solid rgba(230,233,235,.62); border-radius: 2px; padding: 0 14px; color: #121416; background: linear-gradient(112deg,#747b7f 0%,#b8bdc0 22%,#dadddf 39%,#969c9f 63%,#c9ced0 82%,#858c90 100%); box-shadow: inset 0 1px rgba(255,255,255,.38), inset 0 -1px rgba(0,0,0,.32), 0 5px 16px rgba(0,0,0,.24); font-weight: 600; letter-spacing: .04em; cursor: pointer; transition: transform .12s, filter .12s; }
.hm-metal-cta:active { transform: translateY(2px) scale(.99); filter: brightness(.86); box-shadow: inset 0 2px 5px rgba(0,0,0,.42); }
.hm-home-utility-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.hm-home-utility-nav a { min-width:0; min-height:96px; display:flex; align-items:center; justify-content:center; gap:11px; border:0; color:#b8bec1; transition:color .22s ease,background-color .22s ease; }
.hm-home-utility-nav a:hover { color:#e0e4e6; background:rgba(255,255,255,.025); }
.hm-home-utility-nav strong { font:400 16px/1.25 var(--serif); letter-spacing:.055em; white-space:nowrap; }
.hm-home-nav-orb { flex:0 0 9px; width:9px; height:9px; border:1px solid rgba(215,221,224,.42); border-radius:50%; background:radial-gradient(circle at 32% 27%,#f1f3f4 0 8%,#adb4b7 22%,#596165 58%,#111315 100%); box-shadow:inset -1px -1px 2px rgba(0,0,0,.72),0 0 2px rgba(229,235,238,.2); }
.hm-home-mvp-board { position:relative; min-width:0; min-height:110px; display:grid; grid-template-rows:30px 14px; align-content:center; justify-items:center; gap:7px; margin:0; border:0; padding:0; background:transparent; box-shadow:none; }
.hm-home-mvp-heading { min-width:0; }
.hm-home-mvp-heading { grid-row:2; }
.hm-home-mvp-heading h2 { margin:0; color:#969da0; font:400 11px/14px var(--sans); font-family:var(--sans) !important; letter-spacing:.08em; white-space:nowrap; }
.hm-home-mvp-mark { color:#aeb5b8; font:400 8px/1 var(--sans); }
.hm-home-mvp-crown { fill:none; stroke:currentColor; stroke-width:1.1; stroke-linecap:round; stroke-linejoin:round; }
.hm-home-mvp-board ol { grid-row:1; min-width:0; align-self:center; margin:0; padding:0; list-style:none; }
.hm-home-mvp-board li { min-width:0; height:30px; display:flex; align-items:center; justify-content:center; gap:7px; color:#dfe3e4; }
.hm-home-mvp-avatar { position:relative; width:32px; height:32px; overflow:hidden; border:1px solid rgba(198,205,208,.2); border-radius:50%; background:radial-gradient(circle at 50% 36%,rgba(136,143,146,.42) 0 15%,transparent 16%),radial-gradient(ellipse at 50% 102%,rgba(91,99,103,.52) 0 38%,transparent 39%),linear-gradient(145deg,#292e30,#090b0c 68%); box-shadow:inset 0 0 10px rgba(0,0,0,.72); }
.hm-home-mvp-board li:nth-child(1) .hm-home-mvp-avatar,.hm-home-mvp-board li:nth-child(3) .hm-home-mvp-avatar { filter:brightness(.82); }
.hm-home-mvp-board li.is-winner { position:relative; color:#dfe3e4; }
.hm-home-mvp-board li.is-winner .hm-home-mvp-avatar { flex:0 0 28px; width:28px; height:28px; border-color:rgba(208,215,218,.36); box-shadow:inset 0 0 9px rgba(0,0,0,.68); filter:brightness(1); }
.hm-home-mvp-crown { width:10px; height:8px; margin-bottom:-1px; color:#aeb5b8; }
.hm-home-mvp-board li > strong { overflow:hidden; max-width:100%; color:inherit; font:400 28px/30px var(--serif); letter-spacing:.1em; text-overflow:ellipsis; white-space:nowrap; }
.hm-home-mvp-more { justify-self:end; border:0; padding:3px 0; color:#969da0; background:transparent; font:400 10px/1.2 var(--serif); letter-spacing:.06em; white-space:nowrap; }
.hm-home-mvp-board button.hm-home-mvp-more { cursor:pointer; }
.hm-home-mvp-more-mobile { display:none; }
.hm-home-entry-choice[hidden] { display:none; }
.hm-home-entry-choice { position:fixed; z-index:145; inset:0; display:grid; place-items:center; padding:24px; }
.hm-home-entry-choice-backdrop { position:absolute; inset:0; background:rgba(2,3,4,.72); -webkit-backdrop-filter:blur(7px); backdrop-filter:blur(7px); animation:hm-home-entry-backdrop-in .42s ease both; }
.hm-home-entry-choice > section { position:relative; width:min(100%,430px); display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:17px; border:.75px solid rgba(220,226,229,.62); padding:28px 30px; background:linear-gradient(145deg,rgba(12,13,14,.78),rgba(4,5,6,.7)); box-shadow:inset 0 0 0 .5px rgba(255,255,255,.035),0 24px 70px rgba(0,0,0,.48); animation:hm-home-entry-dialog-in .5s cubic-bezier(.2,.72,.2,1) both; }
.hm-home-entry-action { position:relative; min-width:0; overflow:hidden; }
.hm-home-entry-choice button { width:100%; min-height:45px; border:0; border-top:.5px solid rgba(205,213,217,.28); border-bottom:.5px solid rgba(205,213,217,.28); padding:0 8px; color:#cbd1d4; background:rgba(4,5,6,.2); font:400 14px/1 var(--serif); letter-spacing:.12em; cursor:pointer; transition:color .24s ease,background-color .24s ease,border-color .24s ease; }
.hm-home-entry-choice button:hover,.hm-home-entry-choice button:focus-visible { color:#eef1f2; border-color:rgba(229,235,238,.62); background:rgba(198,212,220,.045); outline:0; }
.hm-home-entry-or { color:rgba(177,187,192,.52); font:400 8px/1 var(--sans); letter-spacing:.18em; }
.hm-home-entry-choice .hm-auth-google-overlay { inset:0; }
.hm-home-entry-choice.is-authenticating { z-index:9999; padding:0; background:#020202; }
.hm-home-entry-choice.is-authenticating .hm-home-entry-choice-backdrop {
  background:radial-gradient(circle at 50% 42%,#090a0b 0%,#030303 45%,#000 100%);
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  animation:hm-home-auth-black-in .58s ease both;
}
.hm-home-entry-choice.is-authenticating > section { visibility:hidden; pointer-events:none; animation:none; }
@keyframes hm-home-auth-black-in { from{opacity:.72} to{opacity:1} }
@keyframes hm-home-entry-backdrop-in { from{opacity:0} to{opacity:1} }
@keyframes hm-home-entry-dialog-in { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:none} }
.hm-round-telegram { display:grid; place-items:center; border:1px solid rgba(221,226,228,.55); border-radius:50%; }
.hm-telegram-icon { width:13px; height:13px; fill:currentColor; transform:translate(-1px,1px); }
.hm-round-telegram .hm-telegram-icon { width:16px; height:16px; }
.hm-text-link { border: 0; background: transparent; padding: 4px 0; color: #c9ced0; font-size: 11px; cursor: pointer; }

/* Prologue */
.hm-prologue { padding-top: 54px; }
.hm-prologue-gallery { position:relative; display:block; overflow:hidden; }
.hm-prologue-gallery::after { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,rgba(1,3,4,.42) 0%,rgba(1,3,4,.1) 4%,transparent 9%,transparent 91%,rgba(1,3,4,.1) 96%,rgba(1,3,4,.42) 100%),linear-gradient(180deg,rgba(1,3,4,.38) 0%,rgba(1,3,4,.08) 5%,transparent 11%,transparent 89%,rgba(1,3,4,.12) 95%,rgba(1,3,4,.48) 100%); box-shadow:inset 0 0 22px rgba(0,4,6,.24); }
.hm-prologue-gallery::-webkit-scrollbar { display: none; }
.hm-prologue-image { aspect-ratio:16/9; }
.hm-prologue-gallery img.hm-prologue-image { width:100%; height:100%; object-fit:cover; background:#080909; }
.hm-prologue-gallery img.hm-prologue-image, .hm-selection-image img { -webkit-touch-callout:none; -webkit-user-select:none; user-select:none; -webkit-user-drag:none; pointer-events:none; }
.hm-prologue-dots { display: none; }
.hm-prologue-content { padding-top:18px; }
.hm-placeholder-image { display: grid; place-items: center; background: radial-gradient(circle at 25% 20%, #4a4d4f 0, #26292b 26%, #111315 70%); border: 1px solid rgba(210,216,219,.08); color: rgba(235,239,240,.4); font: 500 9px/1 var(--sans); letter-spacing: .16em; }
.hm-prologue .hm-section-heading h2 { color:#e2e4e6; font-weight:600; }
.hm-prologue-copy { padding:18px 0 0; color:#a8adb2; font-size:13px; font-weight:400; line-height:1.9; }
.hm-prologue-copy > strong { color:#cfd2d5; font-family:var(--serif); font-weight:500; }
.hm-prologue-copy p { font-weight:400; }

/* Shared media */
.hm-media-frame { position: relative; overflow: hidden; background: #0d1012; }
.hm-media-frame > img { width: 100%; height: 100%; object-fit: contain; object-position: center; }
.hm-media-placeholder { width: 100%; height: 100%; background: radial-gradient(circle at 18% 22%, #35383a, #121416 35%, #080a0b 78%); }
.hm-media-overlay { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(2,3,3,.82) 0%, rgba(3,4,4,.42) 38%, rgba(3,4,4,.03) 76%), linear-gradient(0deg, rgba(2,3,3,.72), transparent 50%); }
.is-locked .hm-media-frame > img, .hm-media-frame.is-locked > img, .hm-detail-media.is-locked > img { filter:blur(3px); transform:scale(1.012); }
.hm-feature-story { display:block; }
.hm-feature-media { aspect-ratio: 16/9; }
.home .hm-latest .hm-feature-media::after { content:""; position:absolute; z-index:1; left:0; right:0; bottom:0; height:24px; pointer-events:none; background:linear-gradient(to bottom,transparent,#050505); }
.hm-feature-kicker { position:absolute; z-index:3; left:15px; top:14px; color:#e1e5e6; font-size:13px; line-height:1.35; text-shadow:0 1px 4px rgba(0,0,0,.92); }
.hm-feature-copy { position: absolute; inset: auto 15px 14px; z-index: 2; display: grid; gap: 5px; }
.hm-feature-copy strong { color: #f0f2f2; font: 700 23px/1.25 var(--serif); }
.hm-feature-copy em { color: #9da4a7; font-size: 11px; font-style: normal; }
.hm-feature-lock { position:absolute; z-index:4; top:50%; left:50%; width:46px; height:46px; display:grid; place-items:center; border:1px solid rgba(235,240,243,.78); border-radius:50%; color:#edf2f4; background:rgba(3,4,5,.16); box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 0 5px rgba(223,234,240,.22),0 0 12px rgba(187,209,222,.1); backdrop-filter:blur(1.5px); transform:translate(-50%,-50%); }
.hm-feature-lock svg { width:23px; height:23px; overflow:visible; filter:drop-shadow(0 0 2px rgba(238,246,250,.64)) drop-shadow(0 0 5px rgba(190,216,230,.28)); }
.hm-feature-lock path, .hm-feature-lock rect { stroke:currentColor; stroke-width:1.05; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }

/* Energy */
.hm-energy-panel { position:relative; margin-top:2px; padding:8px 0; background:transparent; border:0; overflow:visible; }
.home .hm-latest .hm-feature-story + .hm-energy-panel { margin-top:0; }
.hm-energy-main { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1fr) 78px; gap:8px; align-items:center; }
.hm-energy-info { display:grid; grid-template-columns:34px minmax(0,1fr); grid-template-areas:"mark copy" "progress progress"; gap:7.5px 8px; min-width:0; }
.hm-energy-mark { grid-area:mark; z-index:2; display:grid; place-items:center; color:transparent; background:conic-gradient(from -18deg at 50% 52%,#faf8ef 0 10%,#8f8878 10% 20%,#ded9ce 20% 30%,#696355 30% 40%,#c8c1b1 40% 50%,#fffdf6 50% 60%,#817968 60% 70%,#d9d3c6 70% 80%,#6d6658 80% 90%,#eee9de 90% 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; -webkit-text-stroke:.35px rgba(245,241,229,.62); font-size:18px; filter:drop-shadow(0 0 1px rgba(255,253,246,.76)) drop-shadow(0 1px 1px rgba(0,0,0,.72)); }
.hm-energy-copy { grid-area:copy; display:grid; gap:3.5px; min-width:0; }
.hm-energy-copy strong { color:#fdf7dd; font:700 13px/1.2 var(--serif); letter-spacing:.035em; white-space:nowrap; }
.hm-energy-copy span { overflow:hidden; color:#8f979a; font-size:9px; line-height:1.25; white-space:nowrap; text-overflow:ellipsis; }
.hm-energy-copy b { color:#cbd1d3; font-size:11px; line-height:1.15; font-weight:500; white-space:nowrap; }
.hm-progress-row { grid-area:progress; position:relative; width:100%; height:2px; }
.hm-progress { width:100%; height:2px; margin:0; background:rgba(116,130,132,.2); overflow:hidden; }
.hm-progress i { display:block; height:100%; background:#fdf7dd; box-shadow:0 0 3px rgba(182,122,50,.24); }
.hm-progress-value { position:absolute; right:0; bottom:5px; color:#fdf7dd; font-size:9px; line-height:1; font-variant-numeric:tabular-nums; }
.hm-energy-control { display:grid; grid-template-columns:70px; justify-items:center; gap:5.5px; width:70px; padding-top:8px; }
.hm-star-button { position:relative; isolation:isolate; width:78px; height:78px; padding:0; display:grid; place-items:center; border:1px solid #c5c9cc; border-radius:50%; background:radial-gradient(circle at 28% 18%,rgba(251,253,254,.42) 0 1.5%,transparent 18%),linear-gradient(145deg,rgba(240,244,246,.17) 0 15%,transparent 43%,rgba(0,0,0,.52) 79%),radial-gradient(circle at 50% 54%,#41474b 0 43%,#1b2023 63%,#07090a 70%); box-shadow:inset 0 0 0 1px rgba(250,252,253,.94),inset 0 0 0 3px #747c81,inset 0 0 0 6px #111619,inset 1px 1px 3px rgba(230,235,238,.13),inset -1px -2px 5px rgba(0,0,0,.66),0 2px 2px rgba(0,0,0,.38); overflow:hidden; cursor:pointer; }
.hm-star-button::before { content:""; position:absolute; inset:6px; border:1px solid rgba(215,222,226,.4); border-radius:50%; background:repeating-conic-gradient(from 4deg,rgba(238,241,243,.055) 0deg,rgba(13,16,18,.04) .45deg,rgba(209,214,217,.05) .9deg); }
.hm-star-button::after { content:""; position:absolute; z-index:1; left:50%; top:50%; width:46px; height:46px; border-radius:50%; pointer-events:none; opacity:0; background:radial-gradient(circle,rgba(255,247,215,.24) 0 24%,rgba(255,229,161,.18) 42%,rgba(224,177,72,.08) 65%,transparent 100%); filter:blur(3px); transform:translate(-50%,-50%) scale(.72); animation:hm-star-button-aura 4.2s ease-in-out infinite; }
.hm-star-svg { position:relative; z-index:2; width:62px; height:62px; overflow:visible; }
.hm-star-shadow { fill:none; stroke:#171a1c; stroke-width:3.2; stroke-linejoin:miter; opacity:.72; animation:hm-star-shadow 4.2s ease-in-out infinite; }
.hm-star-base { fill:none; stroke:url(#hm-star-metal); stroke-width:2.15; stroke-linejoin:miter; filter:drop-shadow(0 .4px .25px rgba(0,0,0,.72)); animation:hm-star-response 4.2s ease-in-out infinite; }
.hm-star-charge { fill:url(#hm-star-charge); opacity:0; transform-origin:center; animation:hm-star-charge 4.2s ease-in-out infinite; }
.hm-star-halo { fill:none; stroke:#e9ca7e; stroke-width:1.15; stroke-linejoin:miter; opacity:0; animation:hm-star-halo 4.2s ease-in-out infinite; }
.hm-star-button:active { transform:translateY(2px); box-shadow:inset 0 0 0 1px rgba(239,242,244,.72),inset 0 0 0 3px #6f777c,inset 0 0 0 6px #101416,inset 1px 1px 4px rgba(0,0,0,.32),inset -1px -1px 3px rgba(0,0,0,.64); }
.hm-star-button:active .hm-star-svg { transform:translateY(2px); filter:brightness(.86); }
.hm-energy-control > small { color:#838a8d; font-family:var(--serif) !important; font-size:8px; text-align:center; animation:hm-label-response 4.2s ease-in-out infinite; }
.hm-energy-flow { position:absolute; z-index:1; inset:0; pointer-events:none; overflow:visible; }
.hm-energy-lane { position:absolute; left:0; top:50%; width:calc(100% - 78px); height:10px; overflow:hidden; transform:translateY(-50%); }
.hm-energy-lane::before { content:""; position:absolute; left:0; right:0; top:4px; height:2px; opacity:.76; background:transparent; }
.hm-energy-beam { position:absolute; left:0; top:2.5px; width:84px; height:5px; background:linear-gradient(90deg,transparent 0%,rgba(169,118,52,.08) 20%,rgba(220,185,103,.32) 58%,rgba(255,249,230,.96) 88%,rgba(230,203,138,.72) 100%); clip-path:polygon(0 47%,58% 38%,100% 18%,100% 82%,58% 62%,0 53%); filter:blur(.12px); transform-origin:100%; animation:hm-energy-travel 4.2s cubic-bezier(.34,.06,.22,1) infinite; -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.22) 24%,#000 68% 100%); mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.22) 24%,#000 68% 100%); }
@keyframes hm-energy-travel { 0%,5%{left:0;opacity:0;transform:translateX(-100%) scaleX(.74)} 10%{opacity:.82} 35%{left:calc(100% - 84px);opacity:.92;transform:translateX(0) scaleX(1)} 38%,100%{left:calc(100% - 84px);opacity:0;transform:translateX(0) scaleX(.55)} }
@keyframes hm-label-response { 0%,35%,47%,100%{filter:brightness(1);text-shadow:none} 41%{filter:brightness(1.42);text-shadow:0 0 4px rgba(255,248,218,.98),0 0 9px rgba(239,211,133,.86),0 0 16px rgba(211,164,60,.52)} }
@keyframes hm-star-response { 0%,43%,84%,100%{opacity:1;filter:brightness(1)} 55%,70%{opacity:0;filter:brightness(1.22) drop-shadow(0 0 1px rgba(248,226,168,.68))} }
@keyframes hm-star-button-aura { 0%,43%,84%,100%{opacity:0;transform:translate(-50%,-50%) scale(.72)} 55%,70%{opacity:.96;transform:translate(-50%,-50%) scale(1.18)} }
@keyframes hm-star-charge { 0%,43%,84%,100%{opacity:0;filter:brightness(1)} 55%,70%{opacity:1;filter:brightness(1.45)} }
@keyframes hm-star-shadow { 0%,43%,84%,100%{opacity:.72;stroke:#171a1c;filter:blur(0) drop-shadow(0 0 0 rgba(248,226,168,0))} 55%,70%{opacity:0;stroke:rgba(224,172,52,0);filter:none} }
@keyframes hm-star-halo { 0%,43%,84%,100%{opacity:0;filter:none} 55%,70%{opacity:0;filter:none} }
.hm-history-row { display: grid; grid-template-columns: minmax(0,126px) minmax(0,126px) minmax(65px,1fr); gap: 9px; margin-top: 18px; align-items: start; }
.hm-history-card .hm-media-frame { aspect-ratio: 16/9; }
.hm-history-card > span { display: block; margin-top: 6px; color: #838b8e; font-size: 9px; }
.hm-history-card > strong { display: block; margin-top: 2px; color: #d5dadc; font: 600 12px/1.35 var(--serif); }
.hm-more-stories { align-self: center; display: grid; gap: 3px; padding-left: 4px; color: #b4bbbd; }
.hm-more-stories b { font-size: 9px; white-space: nowrap; }
.hm-more-stories span { color: #727a7d; font-size: 8px; }
.hm-donation-wall { margin-top: 20px; border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); background: linear-gradient(90deg, transparent, rgba(140,148,152,.06), transparent); }
.hm-donation-wall p { display: grid; grid-template-columns: 1fr auto auto; gap: 6px; align-items: baseline; margin: 0; padding: 9px 4px; border-bottom: 1px solid rgba(184,191,195,.08); color: #929a9d; font-size: 9px; }
.hm-donation-wall strong { color: #d7dddf; font-size: 13px; }
.hm-donation-item:nth-child(n+4) { display: none; }
.hm-donation-star { display: none; }

/* Selection + footer */
.hm-selection { display: grid; grid-template-columns: 54% 1fr; gap: 18px; align-items: center; }
.hm-selection-image { aspect-ratio: 4/3; }
.hm-selection p { color: #969da0; font-size: 11px; line-height: 1.6; }
.hm-selection button { min-width: 76px; height: 36px; border: 1px solid rgba(221,226,228,.5); color: #17191a; background: linear-gradient(112deg,#767d80,#d2d6d8 42%,#858c90); }
.hm-selection small { display: block; margin-top: 5px; color: #62696c; font-size: 8px; }
.hm-site-footer { padding: 26px var(--page) 36px; border-top: 1px solid var(--hairline); color: #727a7d; font-size: 9px; line-height: 1.8; text-align:center; }
.hm-site-footer a, .hm-site-footer span { display: block; }

/* Archive */
.hm-story-archive { padding-top: 0; }
.hm-story-cover { position:relative; aspect-ratio:1; margin:0 calc(var(--page) * -1); overflow:hidden; background:#050505; }
.hm-stories-hero { position:absolute; inset:0; overflow:hidden; }
.hm-stories-hero img { width:100%; height:100%; object-fit:contain; object-position:center top; filter:none!important; }
.hm-story-cover > .hm-stories-hero::after { content:""; position:absolute; z-index:1; right:0; bottom:43.75%; left:0; height:clamp(120px,22%,160px); pointer-events:none; background:linear-gradient(to top,#050505 0%,rgba(5,5,5,.46) 42%,rgba(5,5,5,0) 100%); }
.hm-cover-label-svg { position:absolute; z-index:1; inset:0; display:block; width:100%; height:100%; overflow:visible; pointer-events:none; }
.hm-cover-label-title,.hm-cover-label-subtitle { font-family:"HM Cover Serif","Noto Serif TC","Source Han Serif TC","Songti TC",PMingLiU,serif; font-style:normal; font-variant:normal; font-weight:500; text-rendering:geometricPrecision; }
.hm-cover-label-title { font-size:102px; letter-spacing:0; }
.hm-cover-label-subtitle { font-size:38px; letter-spacing:6.25px; }
.hm-cover-label-divider { fill:none; stroke:rgba(145,145,145,.59); stroke-width:1.25; vector-effect:non-scaling-stroke; shape-rendering:geometricPrecision; }
.hm-story-cover .hm-media-overlay { background:linear-gradient(180deg,rgba(2,3,4,.3) 0%,transparent 30%,transparent 62%,rgba(5,5,5,.55) 82%,#050505 100%); }
.hm-story-cover-content { position:absolute; z-index:2; inset:0; display:flex; flex-direction:column; padding:34px var(--page) 0; }
.hm-archive-top, .hm-detail-actions { display: flex; align-items: center; justify-content: space-between; min-height: 45px; }
.hm-archive-top h1 { margin:0; color:transparent; background:linear-gradient(180deg,#fff 0%,#969a9c 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; font:700 40px/1 var(--serif); }
.hm-archive-top > div, .hm-detail-actions > div { display: flex; gap: 8px; align-items: center; }
.hm-round-telegram { width: 38px; height: 38px; font-size: 13px; background: rgba(8,10,11,.44); }
.hm-archive-top .hm-metal-cta, .hm-detail-actions .hm-metal-cta { min-height: 36px; height: 36px; padding-inline: 9px; }
.hm-archive-top .hm-follow { font-family:var(--serif); }
.hm-archive-subtitle { margin:4px 0 0; color:#b6bbbd; font-size:14px !important; }
.hm-admin-strip { display: flex; align-items: center; gap: 10px; margin: 14px 0; padding: 9px 10px; border: 1px solid rgba(182,122,50,.28); background: rgba(182,122,50,.04); }
.hm-admin-strip a { color: #d4dadd; font-size: 10px; }
.hm-draft-section { margin:18px 0 26px; }
.hm-draft-section > header { display:flex; justify-content:space-between; margin-bottom:9px; color:#fdf7dd; font-size:9px; letter-spacing:.12em; }
.hm-draft-section > header b { color:#757d80; font-weight:400; letter-spacing:0; }
.hm-draft-rail { display:flex; gap:10px; overflow-x:auto; overflow-y:hidden; padding-bottom:8px; scroll-snap-type:x proximity; scrollbar-width:none; }
.hm-draft-rail::-webkit-scrollbar { display:none; }
.hm-draft-card { flex:0 0 168px; padding:0; border:0; scroll-snap-align:start; }
.hm-draft-card .hm-media-frame { aspect-ratio:16/9; }
.hm-draft-card > span,.hm-draft-card > small { display:block; margin-top:6px; color:#7f888b; font-size:9px; }
.hm-draft-card strong { display:block; margin-top:3px; color:#d7dcde; font:600 13px/1.35 var(--serif); }
.hm-story-archive .hm-draft-section { position:relative; z-index:3; margin:-85px 0 26px; padding-bottom:24px; border-bottom:0; }
.hm-story-archive .hm-draft-section > header { margin-bottom:12px; color:#8d9497; font-size:12px; letter-spacing:0; }
.hm-story-archive .hm-draft-rail { gap:12px; padding-bottom:10px; }
.hm-draft-card .hm-media-frame { position:relative; }
.hm-draft-card .hm-draft-badge { position:absolute; z-index:4; right:8px; top:8px; margin:0; color:#d5dadd; font-size:9px; }
.hm-draft-card .hm-draft-badge { right:8px; padding:4px 7px; border:1px solid rgba(217,223,226,.34); border-radius:12px; background:rgba(8,10,11,.48); }
.hm-draft-card .hm-grid-card-meta { max-width:calc(100% - 64px); }
.hm-draft-empty { flex:0 0 100%; min-height:76px; display:grid; place-items:center; margin:0; color:#666e71; font-size:11px; }
.hm-story-controls { position:absolute; left:var(--page); right:var(--page); top:182.0805px; display:grid; grid-template-columns:.25fr repeat(3,minmax(0,1fr)) .25fr; gap:14px 8px; margin:0; padding:0 0 48px; border-bottom:1px solid rgba(188,194,197,.16); transform:none; }
.hm-story-archive.has-draft-rail .hm-story-controls { border-bottom:0; }
.hm-story-archive:not(.has-draft-rail) .hm-story-collection { margin-top:-85px; }
.hm-story-archive:not(.has-draft-rail) .hm-story-collection.is-list { padding-top:22px; }
.hm-search { grid-column: 1/-1; position: relative; }
.hm-search input { width:100%; height:44px; border:1px solid rgba(200,205,210,.2); border-radius:22px; padding:0 18px 0 62px; color:#92999c; background:rgba(3,3,3,.16); outline:0; font-size:14px; }
.hm-search input::placeholder { color:#767d80; opacity:1; }
.hm-search i { position:absolute; left:20px; top:50%; width:18px; height:18px; color:#767d80; transform:translateY(-50%); }
.hm-search i svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; }
.hm-story-controls label:not(.hm-search) { min-width:0; display:flex; align-items:center; justify-content:center; color:#767d80; font-size:12px; white-space:nowrap; }
.hm-story-controls > label:nth-of-type(2) { grid-column:2; }
.hm-story-controls > label:last-child { justify-content:center; }
.hm-story-controls select { min-width:0; max-width:100%; border:0; padding:0; color:#92999c; background:transparent; outline:0; font-size:12px; appearance:none; -webkit-appearance:none; }
.hm-story-card { position: relative; padding: 22px 0; border-bottom: 1px solid var(--hairline); }
.hm-story-meta { display: flex; justify-content: space-between; margin-bottom: 10px; color: #969ea1; font-size: 10px; }
.hm-story-media .hm-media-frame { aspect-ratio: 16/9; }
.hm-state-icon { position:absolute; z-index:3; left:50%; top:50%; width:46px; height:46px; transform:translate(-50%,-50%); display:grid; place-items:center; border:.8px solid rgba(239,244,247,.88); border-radius:50%; color:#f1f5f7; background:rgba(2,3,4,.16); box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 0 4px rgba(231,240,245,.24),0 0 10px rgba(188,211,224,.12); -webkit-backdrop-filter:blur(1px); backdrop-filter:blur(1px); }
.hm-state-icon svg,.hm-lock-action span svg { width:20px; height:20px; overflow:visible; fill:none; filter:drop-shadow(0 0 2px rgba(239,247,250,.7)) drop-shadow(0 0 5px rgba(190,216,229,.3)); }
.hm-state-icon svg path,.hm-state-icon svg rect,.hm-lock-action span svg path,.hm-lock-action span svg rect { fill:none; stroke:currentColor; stroke-width:1.05; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.hm-story-media h2 { margin:14px 0 1px; display:-webkit-box; overflow:hidden; -webkit-line-clamp:2; -webkit-box-orient:vertical; color:#e7e9ea; font:700 27px/1.25 var(--serif); }
.hm-story-media p { margin:0; overflow:hidden; color:#abb1b4; font:400 13px/1.75 var(--serif); white-space:nowrap; text-overflow:ellipsis; }
.hm-card-actions { display: flex; align-items: center; gap: 10px; margin-top: 12px; color: #899194; font-size: 10px; }
.hm-card-actions span { margin-right: auto; }
.hm-card-actions button, .hm-detail-buttons button { min-height: 39px; border: 1px solid rgba(171,177,180,.22); padding: 0 12px; color: #cbd0d2; background: rgba(11,13,14,.38); cursor: pointer; }
.hm-edit-chip { position: absolute; z-index: 4; right: 8px; top: 64px; padding: 6px 9px; border: 1px solid var(--energy-soft); color: #dfe8e8; background: rgba(5,13,13,.78); font-size: 9px; }
.hm-story-collection .hm-story-meta,.hm-story-collection .hm-card-actions { display:none; }
.hm-story-collection .hm-story-card .hm-media-frame::after,.hm-draft-card .hm-media-frame::after,.hm-detail-media::after { content:""; position:absolute; z-index:2; left:0; right:0; top:0; height:30%; pointer-events:none; background:linear-gradient(180deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.48) 46%,rgba(0,0,0,0) 100%); }
.hm-grid-card-meta { position:absolute; z-index:3; left:9px; top:3px; display:flex; max-width:calc(100% - 18px); overflow:hidden; color:#e2e5e6; font-size:10px; line-height:1.3; white-space:nowrap; text-overflow:ellipsis; text-shadow:0 1px 4px rgba(0,0,0,.92); }
.hm-grid-card-meta span,.hm-grid-card-meta b { overflow:hidden; text-overflow:ellipsis; }
.hm-grid-card-meta span { flex:0 0 auto; }
.hm-grid-card-meta b { color:inherit; font-weight:400; text-shadow:inherit; }
.hm-grid-card-actions { min-height:25px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:8px; margin-top:10px; color:#858d90; }
.hm-story-collection.is-list .hm-story-card { padding:0 0 42px; border-bottom:0; }
.hm-story-collection.is-list .hm-grid-card-meta { font-size:17px; }
.hm-story-collection.is-list .hm-grid-card-actions { min-height:34px; align-items:start; }
.hm-story-collection.is-list .hm-grid-card-facts { min-height:34px; display:flex; flex-wrap:nowrap; align-items:flex-start; gap:9px; font-size:13px; white-space:nowrap; }
.hm-story-collection.is-list .hm-grid-card-tools { height:34px; }
.hm-story-collection.is-list .hm-grid-preview { width:48px; height:34px; font-size:13px; }
.hm-story-collection.is-list .hm-grid-bookmark { width:auto; height:34px; display:flex; gap:7px; border:1px solid rgba(171,177,180,.22); padding:0 9px; color:#cbd0d2; background:rgba(11,13,14,.38); }
.hm-story-collection.is-list .hm-grid-bookmark svg { width:20px; height:25px; }
.hm-story-collection.is-list .hm-grid-bookmark span { display:inline; font-size:14px; white-space:nowrap; }
.hm-story-collection.is-list .hm-state-icon { width:58px; height:58px; }
.hm-story-collection.is-list .hm-state-icon svg { width:24px; height:24px; }
.hm-draft-rail.is-list .hm-draft-card { flex-basis:100%; }
.hm-draft-rail.is-list .hm-state-icon { width:58px; height:58px; }
.hm-draft-rail.is-list .hm-state-icon svg { width:24px; height:24px; }
.hm-story-collection.is-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:12px; row-gap:28px; padding-top:20px; }
.hm-story-collection.is-grid .hm-story-card { padding:0; border-bottom:0; }
.hm-story-collection.is-grid .hm-story-media h2,.hm-draft-rail.is-grid .hm-story-media h2 { min-height:2.5em; margin-top:11px; font-size:18px; }
.hm-story-collection.is-grid .hm-story-media p,.hm-draft-rail.is-grid .hm-story-media p { color:#92999c; font-size:11px; line-height:1.65; }
.hm-grid-card-facts { min-width:0; min-height:25px; display:grid; align-content:center; gap:1px; font-size:9px; line-height:1.3; }
.hm-grid-card-facts span { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.hm-grid-card-tools { height:25px; display:flex; align-items:center; gap:9px; }
.hm-grid-preview { width:42px; height:25px; min-height:0; border:1px solid rgba(171,177,180,.22); border-radius:0; padding:0 6px; color:#cbd0d2; background:rgba(11,13,14,.38); box-shadow:none; -webkit-backdrop-filter:none; backdrop-filter:none; font-size:12px; font-weight:400; line-height:1; text-shadow:none; cursor:pointer; }
.hm-grid-preview:disabled { color:#cbd0d2; cursor:default; }
.hm-grid-bookmark { width:22px; height:25px; display:grid; place-items:center; border:0; padding:0; color:#b6bdc0; background:transparent; cursor:pointer; }
.hm-grid-bookmark svg,.hm-detail-bookmark svg { overflow:visible; fill:transparent; stroke:currentColor; stroke-width:1.15; stroke-linejoin:round; transition:fill .2s ease,color .2s ease,filter .2s ease,transform .2s ease; }
.hm-grid-bookmark svg { width:17px; height:21px; }
.hm-grid-bookmark > span { display:none; }
.hm-detail-bookmark { display:flex; align-items:center; gap:7px; }
.hm-detail-bookmark svg { width:15px; height:19px; }
.hm-grid-bookmark.is-saved,.hm-detail-bookmark.is-saved { color:#f2f5f6; filter:drop-shadow(0 0 1.6px rgba(245,250,252,.48)); }
.hm-grid-bookmark.is-saved svg,.hm-detail-bookmark.is-saved svg { fill:currentColor; transform:scale(1.025); }
.hm-grid-bookmark.is-just-saved,.hm-detail-bookmark.is-just-saved { animation:hm-bookmark-flash .42s ease-out; }
@keyframes hm-bookmark-flash { 0%{filter:drop-shadow(0 0 0 rgba(245,250,252,0))} 42%{filter:drop-shadow(0 0 3px rgba(245,250,252,.82))} 100%{filter:drop-shadow(0 0 1.6px rgba(245,250,252,.48))} }

/* Q&A */
@property --hm-qa-border-angle { syntax:"<angle>"; inherits:false; initial-value:-103deg; }
.hm-qa-search-controls { border-bottom:0; }
.hm-qa-search-controls .hm-qa-search-spacer { grid-column:1/-1; height:32px; }
.hm-qa-explorer { position:relative; z-index:3; margin:-146px 0 0; padding-bottom:34px; }
.hm-qa-rail-heading { min-height:42px; display:flex; align-items:center; margin:0; color:#d9dddf; font:700 23px/1.3 var(--serif); letter-spacing:.02em; }
.hm-qa-rail { display:flex; gap:14px; overflow-x:auto; overflow-y:hidden; margin:0; padding:16px 4px 3px; scroll-snap-type:x proximity; scrollbar-width:none; }
.hm-qa-rail::-webkit-scrollbar { display:none; }
.hm-qa-card { flex:0 0 142px; min-width:0; border:0; padding:0; color:#dce1e3; background:transparent; text-align:left; scroll-snap-align:start; cursor:pointer; transition:transform .28s ease,filter .32s ease,opacity .28s ease; }
.hm-qa-card-stage { position:relative; display:block; width:100%; aspect-ratio:3/4; perspective:850px; }
.hm-qa-card-stage::before { content:""; position:absolute; z-index:2; inset:0; padding:1px; pointer-events:none; opacity:0; background:rgba(226,235,238,.55); filter:drop-shadow(0 0 2px rgba(221,235,239,.3)); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; }
.hm-qa-card-stage::after { content:""; position:absolute; z-index:3; inset:0; padding:1px; pointer-events:none; opacity:0; background:conic-gradient(from var(--hm-qa-border-angle),transparent 0 77%,rgba(221,231,234,.08) 82%,rgba(243,247,248,.94) 89%,rgba(211,226,231,.2) 95%,transparent 100%); filter:drop-shadow(0 0 3px rgba(221,235,239,.55)); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; }
.hm-qa-card-inner { position:absolute; inset:0; display:block; transform-style:preserve-3d; transition:transform .32s cubic-bezier(.2,.72,.2,1),box-shadow .28s ease; }
.hm-qa-card-face { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; overflow:hidden; border:1px solid rgba(194,202,205,.22); padding:14px 13px; background-color:#080a0b; background-image:url('../images/qa-card-final.jpg'); background-position:center; background-size:cover; text-align:center; backface-visibility:hidden; -webkit-backface-visibility:hidden; transition:opacity 0s .29s; }
.hm-qa-card-face::before { content:""; position:absolute; inset:0; pointer-events:none; background:none; }
.hm-qa-card-face b { position:relative; z-index:1; color:#e3e7e8; opacity:.62; font:600 18px/1.2 var(--serif); text-shadow:0 1px 8px rgba(0,0,0,.95); }
.hm-qa-card-front { opacity:1; }
.hm-qa-card-back { opacity:0; transform:rotateY(180deg); border-color:rgba(216,225,229,.48); background-color:#090b0c; background-image:url('../images/qa-card-final.jpg'); }
.hm-qa-card-title { display:block; overflow:hidden; margin-top:10px; color:#c9ced0; font:600 14px/1.35 var(--serif); white-space:nowrap; text-overflow:ellipsis; }
.hm-qa-explorer.has-active-card .hm-qa-card:not(.is-active) { opacity:.42; }
.hm-qa-card.is-active { z-index:2; transform:translateY(-2px) scale(1.045); }
.hm-qa-card.is-active .hm-qa-card-stage::before { animation:hm-qa-card-frame-pulse 1.55s ease-in-out 1.18s infinite; }
.hm-qa-card.is-active .hm-qa-card-stage::after { opacity:1; animation:hm-qa-card-border-flow 1.18s linear 1 forwards,hm-qa-card-border-hide 0s linear 1.18s forwards; }
.hm-qa-card.is-active .hm-qa-card-inner { transform:rotateY(180deg); box-shadow:none; }
.hm-qa-card.is-active .hm-qa-card-front { opacity:0; }
.hm-qa-card.is-active .hm-qa-card-back { opacity:1; }
.hm-qa-card.is-active .hm-qa-card-face { background-image:url('../images/qa-card-final.jpg'); }
.hm-qa-card.is-active .hm-qa-card-face::before { background:none; }
.hm-qa-card.is-active .hm-qa-card-title { padding-left:10px; color:#edf2f3; text-shadow:none; }
.hm-qa-page .hm-qa-card-title { width:100%; font-size:15px; text-align:center; }
.hm-qa-page .hm-qa-card.is-active .hm-qa-card-title { padding-left:0; }
.hm-qa-guide { position:absolute; z-index:4; top:var(--hm-qa-guide-y,0); left:var(--hm-qa-guide-x,0); display:block; width:1px; height:var(--hm-qa-guide-height,30px); overflow:hidden; margin:0; opacity:0; transform-origin:top; background:linear-gradient(180deg,rgba(188,198,202,.15),rgba(238,243,245,.94) 82%,rgba(207,220,224,.24)); box-shadow:0 0 4px rgba(220,232,236,.42); animation:hm-qa-guide-once .62s cubic-bezier(.22,.72,.22,1) .18s both; }
.hm-qa-guide[hidden] { display:none; }
.hm-qa-guide::after { content:none; }
.hm-qa-detail { margin-top:10px; border-top:0; padding:6px 0 8px; }
.hm-qa-detail > span { color:#70787b; font-size:8px; letter-spacing:.18em; will-change:opacity; animation:hm-qa-detail-body-in .14s cubic-bezier(.22,.61,.36,1) .2s both; }
.hm-qa-detail h2 { margin:9px 0 8px; color:#e1e5e6; font:700 23px/1.3 var(--serif); will-change:opacity; animation:hm-qa-detail-body-in .14s cubic-bezier(.22,.61,.36,1) .2s both; }
.hm-qa-detail p { margin:0; color:#a3aaad; font:400 13px/1.85 var(--serif); will-change:opacity; animation:hm-qa-detail-body-in .08s cubic-bezier(.22,.61,.36,1) .15s both; }
.hm-qa-page .hm-qa-detail p strong { color:#d8dcdd; }
.hm-qa-telegram-tutorial { position:relative; isolation:isolate; margin-top:54px; padding-top:18px; border-top:0; scroll-margin-top:18px; }
.hm-qa-telegram-title-line { position:relative; z-index:7; width:max-content; }
.hm-qa-telegram-tutorial h2 { position:relative; width:max-content; margin:0; color:#e1e5e6; font:700 23px/1.3 var(--serif); }
.hm-qa-telegram-tutorial p { margin:0; }
.hm-qa-telegram-intro { position:relative; isolation:isolate; margin-top:-18px; padding-top:18px; }
.hm-qa-telegram-intro::before { content:none; }
.hm-qa-telegram-intro::after { content:none; }
.hm-qa-telegram-intro > * { position:relative; z-index:2; }
.hm-qa-telegram-guide { margin-top:8px; color:#a3aaad; font:400 13px/1.85 var(--serif); }
.hm-qa-telegram-items { margin-top:28px; }
.hm-qa-telegram-item + .hm-qa-telegram-item { margin-top:8px; }
.hm-qa-telegram-item summary { position:relative; list-style:none; padding:6px 28px 6px 0; color:#d9ddde; font:700 17px/1.45 var(--serif); cursor:pointer; }
.hm-qa-telegram-item summary::-webkit-details-marker { display:none; }
.hm-qa-telegram-item summary::after { content:'＋'; position:absolute; right:1px; top:50%; color:#8e9699; font:400 15px/1 var(--sans); transform:translateY(-50%); }
.hm-qa-telegram-item[open] summary::after { content:'−'; color:#c4cbcd; }
.hm-qa-telegram-guide-body { padding:5px 0 12px; }
.hm-qa-telegram-guide p + p { margin-top:5px; }
.hm-qa-telegram-guide ol { margin:0; padding-left:1.55em; }
.hm-qa-telegram-guide li + li { margin-top:3px; }
.hm-qa-telegram-guide a { color:#cfecea; text-decoration:underline; text-decoration-color:rgba(220,226,228,.42); text-underline-offset:3px; }
.hm-qa-telegram-guide strong { color:#c9ced0; font-weight:600; }
.hm-qa-empty { margin:16px 0 0; color:#777f82; font-size:12px; }
@keyframes hm-qa-detail-in { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes hm-qa-detail-body-in { from { opacity:0; } to { opacity:1; } }
@keyframes hm-qa-guide-once { 0% { opacity:0; clip-path:inset(0 0 100% 0); } 1% { opacity:1; clip-path:inset(0 0 100% 0); } 84% { opacity:1; clip-path:inset(0); } 100% { opacity:0; clip-path:inset(0); } }
@keyframes hm-qa-card-border-flow { to { --hm-qa-border-angle:257deg; } }
@keyframes hm-qa-card-border-hide { to { opacity:0; } }
@keyframes hm-qa-card-frame-pulse { 0%,100% { opacity:.32; filter:drop-shadow(0 0 2px rgba(221,235,239,.24)); } 50% { opacity:.72; filter:drop-shadow(0 0 4px rgba(221,235,239,.5)); } }
@media (prefers-reduced-motion:reduce) { .hm-qa-card,.hm-qa-card-inner,.hm-qa-card-face { transition:none; } .hm-qa-card.is-active .hm-qa-card-stage::before,.hm-qa-card.is-active .hm-qa-card-stage::after,.hm-qa-guide,.hm-qa-detail > span,.hm-qa-detail h2,.hm-qa-detail p { animation:none; } .hm-qa-card.is-active .hm-qa-card-stage::before { opacity:.55; } .hm-qa-card.is-active .hm-qa-card-stage::after,.hm-qa-guide { opacity:0; } }

/* Detail */
.hm-story-detail { padding-top: 13px; }
.hm-detail-sticky { display:contents; }
.hm-back { flex:0 0 44px; width:44px; min-width:44px; height:44px; min-height:44px; display:grid; place-items:center; border:1px solid rgba(184,191,195,.14); border-radius:50%; padding:0; color:#d9dddf; background:rgba(224,229,231,.02); font-size:30px; font-weight:200; line-height:1; }
.hm-detail-back svg { display:block; width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.45; stroke-linecap:round; stroke-linejoin:round; }
.hm-detail-media { position:sticky; z-index:90; top:0; aspect-ratio:16/9; margin:16px calc(var(--page) * -1) 0; overflow:hidden; background:#0d1012; box-shadow:0 12px 18px rgba(5,5,5,.94); }
.hm-detail-media > img, .hm-detail-media video { width: 100%; height: 100%; object-fit: contain; }
.hm-detail-media > [hidden] { display:none; }
.hm-detail-media-meta { max-width:calc(100% - 18px); font-size:12px; }
.hm-detail-state-action { position:absolute; z-index:3; left:50%; top:50%; width:58px; height:58px; transform:translate(-50%,-50%); display:grid; place-items:center; border:.8px solid rgba(239,244,247,.88); border-radius:50%; padding:0; color:#f1f5f7; background:rgba(2,3,4,.16); box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 0 4px rgba(231,240,245,.24),0 0 10px rgba(188,211,224,.12); -webkit-backdrop-filter:blur(1px); backdrop-filter:blur(1px); }
.hm-detail-state-action[hidden] { display:none; }
.hm-detail-state-action svg { width:24px; height:24px; overflow:visible; fill:none; filter:drop-shadow(0 0 2px rgba(239,247,250,.7)) drop-shadow(0 0 5px rgba(190,216,229,.3)); }
.hm-detail-state-action svg path,.hm-detail-state-action svg rect { fill:none; stroke:currentColor; stroke-width:1.05; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.hm-video-tools { position:absolute; z-index:5; right:8px; bottom:8px; display:flex; gap:6px; }
.hm-video-tools[hidden] { display:none; }
.hm-video-tool { width:30px; height:30px; display:grid; place-items:center; border:.8px solid rgba(239,244,247,.72); border-radius:50%; padding:0; color:#eef2f4; background:rgba(2,3,4,.18); box-shadow:inset 0 0 5px rgba(233,240,244,.035),0 0 4px rgba(231,240,245,.16); -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px); }
.hm-video-tool svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.25; stroke-linecap:round; stroke-linejoin:round; }
.hm-video-share.is-confirmed { color:#fff; box-shadow:inset 0 0 7px rgba(237,243,246,.08),0 0 6px rgba(231,240,245,.34); }
.hm-lock-action { position: absolute; inset: 0; z-index: 4; display: grid; place-content: center; justify-items: center; gap: 7px; border: 0; color: #e6e9ea; background: transparent; cursor: pointer; }
.hm-lock-action span { width:48px; height:48px; display:grid; place-items:center; border:.8px solid rgba(239,244,247,.88); border-radius:50%; color:#f1f5f7; background:rgba(2,3,4,.16); box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 0 4px rgba(231,240,245,.24),0 0 10px rgba(188,211,224,.12); -webkit-backdrop-filter:blur(1px); backdrop-filter:blur(1px); }
.hm-lock-action b { font-size: 12px; }
.hm-detail-info { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:12px; align-items:end; }
.hm-detail-heading { display:contents; }
.hm-detail-heading h1 { grid-column:1/-1; margin:13px 0 10px; color:#e4e7e8; font:700 30px/1.18 var(--serif); }
.hm-detail-heading > .hm-detail-facts { display:grid; grid-template-columns:max-content max-content; align-items:end; gap:4px 12px; color:#959da0; font-size:11px; line-height:1.35; }
.hm-detail-heading > .hm-detail-facts > :last-child { grid-column:1/-1; }
.hm-detail-buttons { display:flex; justify-content:flex-end; align-items:center; align-self:end; gap:9px; margin-top:0; }
.hm-detail-buttons .hm-grid-preview { width:48px; height:34px; min-height:34px; border:1px solid rgba(171,177,180,.22); border-radius:0; padding:0 8px; font-size:13px; }
.hm-detail-buttons .hm-detail-bookmark { min-height:34px; height:34px; padding:0 9px; }
.hm-detail-buttons .hm-detail-bookmark svg { width:20px; height:25px; }
.hm-story-description { margin-top:28px; }
.hm-story-description h2, .hm-related h2 { margin:0 0 6px; color:#dfe3e4; font:700 22px/1.35 var(--serif); }
.hm-clamped-copy { color:#b6bdc0; font-size:13px; line-height:1.75; display:-webkit-box; overflow:hidden; -webkit-line-clamp:3; -webkit-box-orient:vertical; }
.hm-clamped-copy p { margin:0 0 9px; }
.hm-clamped-copy.is-open { display: block; }
.hm-expand { display:block; margin-left:auto; border:0; padding:4px 0; color:#c4cacc; background:transparent; font-size:11px; }
.hm-taxonomy { margin-top:4px; color:#747c7f; font-size:11px; }
.hm-taxonomy p { margin:4px 0 0; }
.hm-taxonomy a { color: inherit; }
.hm-detail-support { margin-top:0; border-top:0; }
.hm-donation-message { min-height:1em; margin:0; color:#929a9d; font:400 11px/1.4 var(--serif); }
.hm-related { margin-top:44px; padding-top:20px; border-top:0; }
.hm-related h2 { margin-bottom:16px; }
.hm-related a { display:grid; grid-template-columns:minmax(0,1fr) 96px; gap:12px; align-items:center; padding:0; border-top:0; }
.hm-related a + a { margin-top:10px; }
.hm-related-copy { min-width:0; display:grid; gap:5px; }
.hm-related-copy > span { color:#777f82; font-size:9px; }
.hm-related strong { overflow:hidden; color:#d6dbdd; font:600 15px/1.4 var(--serif); white-space:nowrap; text-overflow:ellipsis; }
.hm-related-thumb { width:96px; aspect-ratio:16/9; display:block; overflow:hidden; background:#0d1012; }
.hm-related-thumb img,.hm-related-thumb .hm-media-placeholder { width:100%; height:100%; display:block; object-fit:contain; }

/* Sheets / preview */
.hm-sheet[hidden], .hm-preview-player[hidden] { display: none; }
.hm-sheet { position: fixed; z-index: 120; inset: 0; }
.hm-sheet-backdrop { position: absolute; inset: 0; width: 100%; border: 0; background: rgba(0,0,0,.62); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); animation: hm-sheet-backdrop-in .28s ease-out both; }
.hm-sheet-panel { position: absolute; left: 50%; bottom: 0; width: min(100%,760px); transform: translateX(-50%); padding: 14px 22px calc(28px + env(safe-area-inset-bottom)); border-top: 1px solid rgba(210,216,218,.24); background: linear-gradient(180deg,#171a1c,#070808 36%); text-align: center; box-shadow: 0 -24px 60px rgba(0,0,0,.62); }
.hm-sheet-handle { display: block; width: 38px; height: 3px; margin: 0 auto 20px; border-radius: 5px; background: #747c7f; }
.hm-sheet-star { display: block; color: #dfe6e7; font-size: 42px; text-shadow: 0 0 18px var(--energy-soft); }
.hm-standard-page { min-height: calc(100svh - 122px); padding-top: 30px; }
.hm-standard-page .hm-kicker { margin: 34px 0 10px; color: #747c80; font-size: 9px; letter-spacing: .2em; }
.hm-standard-page h1 { margin: 0 0 24px; color: #eef0f2; font: 700 34px/1.18 var(--serif); letter-spacing: .03em; }
.hm-page-copy { color: #aeb4b7; font: 400 14px/1.9 var(--serif); }
.hm-page-copy > *:first-child { margin-top: 0; }
.hm-sheet-panel h2 { margin: 8px 0; font: 700 25px/1.3 var(--serif); }
.hm-sheet-panel p { color: #969da0; line-height: 1.7; }
.hm-sheet-panel > button:not(.hm-sheet-backdrop), .hm-amounts button { min-height: 42px; border: 1px solid rgba(194,201,204,.26); color: #cfd4d6; background: #0e1011; }
.hm-amounts { display: grid; grid-template-columns: repeat(4,1fr); gap: 7px; margin: 20px 0; }
.hm-sheet-panel > .hm-metal-cta { width: 100%; color: #121416; }
.hm-donation-guide { isolation:isolate; overflow:hidden; padding:10px 20px calc(26px + env(safe-area-inset-bottom)); border:1px solid rgba(167,177,183,.34); border-bottom:0; border-radius:24px 24px 0 0; color:#dfe3e5; background-color:#050607; background-image:radial-gradient(circle at 18% 24%,rgba(255,255,255,.72) 0 1px,transparent 1.8px),radial-gradient(circle at 72% 18%,rgba(215,169,77,.55) 0 1px,transparent 1.8px),radial-gradient(circle at 84% 66%,rgba(255,255,255,.55) 0 1px,transparent 1.7px),radial-gradient(circle at 38% 79%,rgba(182,122,50,.42) 0 1px,transparent 1.8px),linear-gradient(rgba(3,5,7,.62),rgba(3,5,7,.84)); box-shadow:0 -14px 42px rgba(0,0,0,.72),inset 0 0 34px rgba(111,69,31,.06); animation:hm-sheet-rise .42s cubic-bezier(.2,.78,.2,1) both; }
.hm-donation-guide::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.65; background-image:radial-gradient(circle at 9% 71%,rgba(255,255,255,.55) 0 1px,transparent 1.6px),radial-gradient(circle at 63% 38%,rgba(182,122,50,.52) 0 1px,transparent 1.8px),radial-gradient(circle at 91% 25%,rgba(255,255,255,.42) 0 1px,transparent 1.6px); animation:hm-tip-stars 2.8s ease-in-out infinite; }
.hm-donation-guide > * { position:relative; z-index:2; }
.hm-donation-guide .hm-sheet-handle { width:42px; height:5px; margin:0 auto 13px; background:#7b858a; }
.hm-donation-guide-header { display:grid; gap:4px; margin:0 0 14px; text-align:left; }
.hm-donation-guide-header h2 { margin:0; color:#e8ebec; font:700 20px/1.3 var(--serif); letter-spacing:.025em; }
.hm-donation-guide-header p { margin:0; color:#9ca4a8; font-size:13px; line-height:1.4; }
.hm-tip-sheet { isolation:isolate; position:relative; display:grid; gap:13px; text-align:center; }
.hm-tip-sheet > :not(.hm-meteor-shower) { position:relative; z-index:2; }
.hm-tip-star { width:42px; height:42px; margin:auto; overflow:visible; color:transparent; background:conic-gradient(from -18deg at 50% 52%,#faf8ef 0 10%,#8f8878 10% 20%,#ded9ce 20% 30%,#696355 30% 40%,#c8c1b1 40% 50%,#fffdf6 50% 60%,#817968 60% 70%,#d9d3c6 70% 80%,#6d6658 80% 90%,#eee9de 90% 100%); clip-path:polygon(50% 4%,61% 35%,95% 35%,68% 55%,79% 89%,50% 69%,21% 89%,32% 55%,5% 35%,39% 35%); transform-origin:50%; animation:hm-premium-star-glint 2.5s ease-in-out infinite; }
.hm-tip-star path { fill:transparent; }
.hm-tip-sheet > b { color:#edf0f1; font:700 19px/1.2 var(--sans); letter-spacing:.02em; }
.hm-tip-progress { width:100%; height:7px; overflow:hidden; background:#33383a; }
.hm-tip-progress i { display:block; width:0; height:100%; background:#fdf7dd; box-shadow:inset 0 1px rgba(246,225,166,.56),0 0 4px rgba(182,122,50,.2); transition:width .3s; }
.hm-tip-sheet > p { margin:0; color:#aeb6ba; font-size:14px; line-height:1.5; }
.hm-donation-cta { width:82%; min-height:43px; margin:0 auto; padding:0 12px; border:1px solid #fdf7dd; color:#e2e7e7; background:rgba(8,5,3,.78); box-shadow:inset 0 0 8px rgba(182,122,50,.11),0 0 5px rgba(182,122,50,.09); }
.hm-donation-cta span { color:#e8eded; font:700 16px/1.2 var(--serif); letter-spacing:.02em; }
.hm-meteor-shower { position:absolute!important; z-index:1!important; inset:-118px -28px -44px!important; pointer-events:none!important; overflow:hidden!important; }
.hm-meteor-shower i { --angle:-17deg; --peak:.72; --end-x:calc(100vw + 210px); --end-y:-155px; position:absolute; left:-180px; bottom:-3%; width:74px; height:1px; opacity:0; background:linear-gradient(90deg,transparent 0%,rgba(182,122,50,.06) 18%,rgba(240,213,140,.58) 66%,rgba(250,235,195,.92) 88%,transparent 100%); box-shadow:0 0 2px rgba(240,213,140,.5); animation:hm-premium-meteor-sequence 3s linear infinite; }
.hm-meteor-shower i:nth-child(2) { --angle:-22deg; --peak:.88; --end-x:calc(100vw + 285px); --end-y:-195px; width:126px; animation-delay:.32s; bottom:4%; }
.hm-meteor-shower i:nth-child(3) { --angle:-14deg; --peak:.64; --end-x:calc(100vw + 190px); --end-y:-132px; width:58px; animation-delay:.64s; bottom:12%; }
.hm-meteor-shower i:nth-child(4) { --angle:-25deg; --peak:.82; --end-x:calc(100vw + 320px); --end-y:-215px; width:142px; animation-delay:.96s; bottom:1%; }
.hm-meteor-shower i:nth-child(5) { --angle:-19deg; --peak:.7; --end-x:calc(100vw + 245px); --end-y:-172px; width:91px; animation-delay:1.28s; bottom:20%; }
.hm-meteor-shower i:nth-child(6) { --angle:-15deg; --peak:.77; --end-x:calc(100vw + 205px); --end-y:-140px; width:68px; animation-delay:1.6s; bottom:8%; }
.hm-meteor-shower i:nth-child(7) { --angle:-23deg; --peak:.9; --end-x:calc(100vw + 300px); --end-y:-205px; width:134px; animation-delay:1.92s; bottom:27%; }
.hm-meteor-shower i:nth-child(8) { --angle:-18deg; --peak:.68; --end-x:calc(100vw + 230px); --end-y:-162px; width:84px; animation-delay:2.24s; bottom:15%; }
.hm-meteor-shower i:nth-child(9) { --angle:-26deg; --peak:.84; --end-x:calc(100vw + 335px); --end-y:-225px; width:116px; animation-delay:2.56s; bottom:23%; }
@keyframes hm-sheet-backdrop-in { from { opacity:0; } to { opacity:1; } }
@keyframes hm-sheet-rise { from { opacity:.7; transform:translate(-50%,36px); } to { opacity:1; transform:translate(-50%,0); } }
@keyframes hm-tip-stars { 0%,100% { opacity:.35; } 50% { opacity:.88; } }
@keyframes hm-premium-star-glint { 0%,100% { opacity:.88; filter:drop-shadow(0 0 2px rgba(246,243,232,.55)) drop-shadow(0 0 5px rgba(154,146,126,.22)); transform:scale(.98); } 50% { opacity:1; filter:drop-shadow(0 0 3px rgba(250,248,239,.9)) drop-shadow(0 0 8px rgba(154,146,126,.44)); transform:scale(1.025); } }
@keyframes hm-premium-meteor-sequence { 0% { opacity:0; transform:translate3d(-130px,70px,0) rotate(var(--angle)); } 2% { opacity:.12; } 5%,14% { opacity:var(--peak); } 20%,100% { opacity:0; transform:translate3d(var(--end-x),var(--end-y),0) rotate(var(--angle)); } }
.hm-preview-player { position: fixed; z-index: 130; inset: 0; display: grid; place-items: center; padding: 56px 20px 90px; background: rgba(2,3,3,.95); }
.hm-preview-player video { width: min(100%,390px); max-height: 68dvh; aspect-ratio: 9/16; object-fit: contain; background: #000; }
.hm-preview-player > button { position: absolute; right: 20px; top: 18px; border: 0; color: #d9dddf; background: transparent; font-size: 30px; }
.hm-preview-player > span { position: absolute; top: 28px; left: 20px; color: #b3b9bc; font-size: 11px; letter-spacing: .15em; }
.hm-preview-player.is-direct-preview { padding:0; background:#000; }
.hm-preview-player.is-direct-preview video { width:100%; height:100%; max-height:none; aspect-ratio:auto; }
.hm-preview-player.is-direct-preview > button,.hm-preview-player.is-direct-preview > span { display:none; }

/* Fixed navigation */
.hm-up { position: fixed; z-index: 18; right: max(14px, calc((100vw - 760px)/2 + 14px)); bottom: calc(13px + env(safe-area-inset-bottom)); width: 38px; height: 38px; display: grid; place-items: center; padding: 0; border: .8px solid rgba(237,242,245,.58); border-radius: 50%; color: #edf2f4; background: rgba(2,3,4,.16); box-shadow: inset 0 0 0 1px rgba(255,255,255,.025), 0 0 4px rgba(231,240,245,.22), 0 0 10px rgba(188,211,224,.1); opacity: 1; -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); }
.hm-up svg { width: 16px; height: 16px; overflow: visible; filter: drop-shadow(0 0 2px rgba(239,247,250,.7)) drop-shadow(0 0 5px rgba(190,216,229,.28)); }
.hm-up path { fill: none; stroke: currentColor; stroke-width: 1.05; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.hm-bottom-nav { position: fixed; z-index: 20; bottom: 0; left: 50%; width: min(100%,760px); height: calc(var(--nav-h) + env(safe-area-inset-bottom)); transform: translateX(-50%); display: grid; grid-template-columns: repeat(5,1fr); padding-bottom: env(safe-area-inset-bottom); border-top: 1px solid rgba(195,202,205,.13); background: rgba(5,5,5,.82); backdrop-filter: blur(15px) saturate(120%); }
.hm-bottom-nav a { min-width: 0; display: grid; place-content: center; justify-items: center; gap: 3px; color: #747c7f; }
.hm-bottom-nav a > span { font-size: 21px; line-height: 1; }
.hm-bottom-nav small { font-size: 9px; }
.hm-bottom-nav a[aria-current="page"], .home .hm-nav-home, .post-type-archive-hm_story .hm-bottom-nav a:nth-child(2), .single-hm_story .hm-bottom-nav a:nth-child(2) { color: #e2e6e7; text-shadow: 0 0 8px rgba(229,233,235,.5); }
.hm-butterfly { width:28px; height:24px; display:grid; place-items:center; overflow:hidden; }
.hm-butterfly img { width:28px; height:24px; object-fit:cover; }
.hm-butterfly img { mix-blend-mode:screen; }
.home .hm-butterfly img { animation:hm-home-glow 2.8s ease-in-out infinite; }
@keyframes hm-home-glow { 0%,100% { filter:drop-shadow(0 0 4px rgba(255,255,255,.9)) drop-shadow(0 0 10px rgba(220,225,230,.55)) drop-shadow(0 0 18px rgba(200,205,215,.25)); opacity:.82; } 50% { filter:drop-shadow(0 0 5px rgba(255,255,255,1)) drop-shadow(0 0 12px rgba(220,225,230,.7)) drop-shadow(0 0 20px rgba(200,205,215,.34)); opacity:1; } }

.hm-empty-state, .hm-empty-panel { padding: 80px var(--page); text-align: center; color: #91999c; }
.hm-empty-state h1 { font: 700 30px var(--serif); color: #e0e4e5; }
.hm-draft-center { padding-top:14px; }
.hm-draft-center > h1 { margin:26px 0 6px; color:#e3e7e8; font:700 30px/1.2 var(--serif); }
.hm-draft-center > p { color:#848c8f; line-height:1.7; }
.hm-draft-center > h2 { margin-top:34px; color:#dbe0e2; font:700 20px/1.3 var(--serif); }
.hm-draft-center .hm-detail-actions > span { color:#fdf7dd; font-size:9px; letter-spacing:.14em; }
.hm-draft-published { display:grid; gap:0; border-top:1px solid var(--hairline); }
.hm-draft-published a { display:grid; gap:4px; padding:13px 0; border-bottom:1px solid var(--hairline); }
.hm-draft-published span { color:#737c7f; font-size:9px; }
.hm-draft-published strong { color:#d7dcde; font:600 14px/1.4 var(--serif); }

@media (max-width: 599px) {
  .hm-hero { min-height:calc(100svh - var(--header-h) - 28px); align-items:flex-start; padding:44px var(--page) 154px; }
  .hm-hero-media { inset:0 0 auto; height:calc(100svh - var(--header-h) - 28px); min-height:500px; }
  .home .hm-hero-media img,
  .home .hm-hero.is-lit .hm-hero-media img,
  html.hm-home-light-restored .home .hm-hero-media img { object-position:center bottom; transform:translate(4%,7%) scale(1.16); transform-origin:center; }
  .hm-hero-shade { background:linear-gradient(90deg,rgba(11,11,11,.86) 0%,rgba(11,11,11,.5) 46%,rgba(11,11,11,.04) 78%),linear-gradient(0deg,#0b0b0b 0%,rgba(11,11,11,.08) 50%); }
  .hm-hero::after { background:radial-gradient(circle at 54% 24%,rgba(255,255,255,.15) 0,rgba(230,230,230,.08) 8%,transparent 25%); }
  .hm-hero-title { margin-bottom:16px; font-size:38px !important; line-height:1.12; }
  .hm-hero-candle-hit { left:34%; top:28svh; width:35%; height:50svh; }
  .hm-hero-ignite { width:96px; min-width:96px; min-height:40px; padding-inline:17px; font-size:14px; }
  .hm-hero-lock-hint { max-width:218px; }
  .hm-hero-content, .hm-brand-title { width:218px; }
  .home .hm-hero-content { transform:translateY(-10px); }
  .hm-follow { padding-inline:4px; white-space:nowrap; }
  .hm-hero blockquote { margin:0 0 18px; padding-top:14px; font-size:14px; }
  .hm-home-overview { grid-template-columns:minmax(0,2fr) minmax(0,1fr); }
  .hm-profile-stats a { min-height:80px; grid-template-rows:28px 14px; row-gap:5px; }
  .hm-profile-stats a > strong { min-height:28px; display:flex; align-items:baseline; justify-content:center; font-size:25px; line-height:28px; }
  .hm-profile-stats a > span { font-size:11px; line-height:14px; }
  .hm-home-mvp-board { min-height:80px; grid-template-rows:28px 14px; grid-template-columns:1fr; gap:5px; margin:0; padding:0; }
  .hm-home-mvp-heading { grid-row:2; grid-column:1; }
  .hm-home-mvp-heading h2 { font-size:11px; line-height:14px; }
  .hm-home-mvp-board ol { grid-row:1; grid-column:1; align-self:center; justify-self:center; }
  .hm-home-mvp-board li { height:28px; gap:5px; }
  .hm-home-mvp-board li.is-winner .hm-home-mvp-avatar { flex-basis:26px; width:26px; height:26px; }
  .hm-home-mvp-board li > strong { font-size:25px; line-height:28px; }
  .hm-home-mvp-more-desktop { display:none; }
  .hm-home-mvp-more-mobile { display:inline; }
  .hm-home-entry-choice { padding:22px; }
  .hm-home-entry-choice > section { width:min(100%,330px); grid-template-columns:1fr; gap:12px; padding:25px 23px; }
  .hm-home-entry-or { text-align:center; }
  .hm-prologue { padding-top: 74px; padding-bottom: 26px; }
  .hm-prologue .hm-section-heading, .hm-latest .hm-section-heading { margin-bottom: 18px !important; }
  .hm-prologue .hm-section-heading h2 { font-size: 24px; line-height: 1.35; }
  .hm-prologue-gallery { width:100%; aspect-ratio:16/9; }
  .hm-prologue-image { scroll-snap-stop: always; }
  .hm-prologue-dots { height: 18px; display: flex; align-items: center; justify-content: center; gap: 2px; margin-top: 18px !important; margin-bottom: 22px; }
  .hm-latest .hm-feature-story + .hm-energy-panel { margin-top: 0 !important; }
  .hm-prologue-dots button { width: 13px; height: 18px; display: grid; place-items: center; border: 0; padding: 0; background: transparent; cursor: pointer; }
  .hm-prologue-dots button::before { content: ""; width: 4px; height: 4px; border-radius: 50%; background: #696d70; }
  .hm-prologue-dots button.is-active::before { background: #e6e8e9; filter: drop-shadow(0 0 4px rgba(235,239,242,.55)); }
  .hm-prologue-copy { padding-top: 0; font-size: 13px; line-height: 1.72; }
  .hm-prologue-copy strong { display: block; margin: 0 0 4px; font-size: 14px; line-height: 1.55; }
  .hm-prologue-copy p { margin: 0 0 6px; font-size: 13px; line-height: 1.72; }
  .hm-prologue-copy .hm-text-link { display: block; margin-left: auto; }
  .hm-energy-main { grid-template-columns: 260px 70px; justify-content: start; column-gap: 15px; }
  .hm-energy-info { grid-template-columns: 34px minmax(0,1fr); gap: 7.5px 8px; width: 260px; }
  .hm-energy-copy strong { font-size: 15px; }
  .hm-energy-copy span { font-size: 10.5px; }
  .hm-energy-copy b { font-size: 13px; }
  .hm-progress-row { width: 248px; transform: translateY(9px); }
  .hm-energy-lane { top: 101px; width: 264px; }
  .hm-star-button { width: 72px; height: 72px; }
  .hm-star-svg { width: 58px; height: 58px; }
  .hm-energy-control > small { font: 600 12.5px/1.2 var(--serif); color: #e2e6e8; white-space: nowrap; }
  .hm-history-row { grid-template-columns: 120px 120px minmax(0,1fr); gap: 8px; margin-top: 8px; align-items: stretch; overflow: hidden; }
  .hm-history-card { position: relative; width: 100%; min-width: 0; height: 190px; display: block; padding: 0; border: 0; color: inherit; background: #050505; text-align: left; overflow: hidden; }
  .hm-history-card .hm-media-frame { position: absolute; inset: 0; aspect-ratio: auto; }
  .hm-history-card .hm-media-frame > img { object-fit: cover; }
  .hm-history-card > span, .hm-history-card > strong, .hm-history-card > small { position: absolute; z-index: 3; left: 8px; right: 8px; margin: 0; }
  .hm-history-card > span { top: 8px; overflow: hidden; color: #d7dcde; font-size: 10px; white-space: nowrap; text-overflow: ellipsis; }
  .hm-history-card > strong { bottom: 27px; height: 16px; display: block; overflow: hidden; color: #e4e7e8; font: 400 11px/1.45 var(--sans); white-space: nowrap; text-overflow: ellipsis; }
  .hm-history-card > small { bottom: 8px; overflow: hidden; color: #c3c8ca; font-size: 11px; white-space: nowrap; text-overflow: ellipsis; }
  .hm-history-play { position: absolute; z-index: 4; top: 50%; left: 50%; width: 32px; height: 32px; display: grid; place-items: center; border: .8px solid rgba(239,244,247,.88); border-radius: 50%; color: #f1f5f7; background: rgba(2,3,4,.16); box-shadow: inset 0 0 0 1px rgba(255,255,255,.025), 0 0 4px rgba(231,240,245,.24), 0 0 10px rgba(188,211,224,.12); backdrop-filter: blur(1px); transform: translate(-50%,-50%); }
  .hm-history-play svg { width: 15px; height: 15px; overflow: visible; filter: drop-shadow(0 0 2px rgba(239,247,250,.7)) drop-shadow(0 0 5px rgba(190,216,229,.3)); }
  .hm-history-play path { stroke: currentColor; stroke-width: 1.05; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
  .hm-more-stories { min-height: 190px; align-self: stretch; align-content: center; justify-items: center; gap: 4px; padding: 4px 0; font-family: var(--sans); line-height: 1.2; }
  .hm-more-stories b { color: #cbd0d2; font-size: 14px; line-height: 1.15; }
  .hm-more-stories span { color: rgba(174,180,183,.72); font-size: 12px; line-height: 1.2; }
  .hm-donation-wall { aspect-ratio: 2; margin-top: 18px; padding: 8px 12px 18px; border: 0; background: linear-gradient(rgba(220,225,229,.07) 0%,rgba(178,184,190,.04) 32%,rgba(70,74,78,.02) 62%,transparent 100%); overflow: hidden; -webkit-mask-image: linear-gradient(#000 0% 66%,rgba(0,0,0,.76) 80%,rgba(0,0,0,.28) 92%,transparent 100%); mask-image: linear-gradient(#000 0% 66%,rgba(0,0,0,.76) 80%,rgba(0,0,0,.28) 92%,transparent 100%); font-family: var(--sans); }
  .hm-donation-stack { position: relative; }
  .hm-donation-item, .hm-donation-item:nth-child(n+4) { --donation-opacity: 1; --donation-y: -7px; --donation-blur: 0px; height: 27px; display: flex; align-items: center; gap: 8px; color: #a9adb0; opacity: var(--donation-opacity); will-change: transform,opacity,filter; }
  .hm-donation-item:nth-child(2) { --donation-opacity: .8; }
  .hm-donation-item:nth-child(3) { --donation-opacity: .66; }
  .hm-donation-item:nth-child(4) { --donation-opacity: .52; }
  .hm-donation-item:nth-child(5) { --donation-opacity: .38; }
  .hm-donation-item:nth-child(6) { --donation-opacity: .24; }
  .hm-donation-star { position:relative; left:3px; flex: 0 0 19px; width: 19px; height: 19px; display: grid; place-items: center; color:transparent; background:conic-gradient(from -18deg at 50% 52%,#faf8ef 0 10%,#8f8878 10% 20%,#ded9ce 20% 30%,#696355 30% 40%,#c8c1b1 40% 50%,#fffdf6 50% 60%,#817968 60% 70%,#d9d3c6 70% 80%,#6d6658 80% 90%,#eee9de 90% 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; -webkit-text-stroke:.3px rgba(245,241,229,.58); font-size:13px; filter:drop-shadow(0 0 1px rgba(255,253,246,.72)) drop-shadow(0 1px 1px rgba(0,0,0,.7)); }
  .hm-donation-item p { display: block; min-width: 0; margin: 0; padding: 0; border: 0; color: inherit; font-size: 12px; letter-spacing: .01em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .hm-donation-item b { color: #e1e3e4; font-weight: 500; }
  .hm-donation-item strong { color: #e1e3e4; font-size: inherit; font-weight: 700; }
  .hm-donation-item.is-new { --donation-y: -22px; --donation-blur: 5px; color: #d6d8da; }
  .hm-donation-stack.is-refreshing .hm-donation-item { animation: hm-donation-enter .42s cubic-bezier(.2,.72,.2,1) both; }
  .hm-donation-stack.is-refreshing .hm-donation-item:first-child { animation-duration: .56s; }
  .hm-donation-stack.is-refreshing .hm-donation-item:nth-child(2) { animation-delay: 18ms; }
  .hm-donation-stack.is-refreshing .hm-donation-item:nth-child(3) { animation-delay: 36ms; }
  .hm-donation-stack.is-refreshing .hm-donation-item:nth-child(4) { animation-delay: 54ms; }
  .hm-donation-stack.is-refreshing .hm-donation-item:nth-child(5) { animation-delay: 72ms; }
  .hm-donation-stack.is-refreshing .hm-donation-item:nth-child(6) { animation-delay: 90ms; }
  .hm-donation-item.is-new .hm-donation-star { animation: hm-donation-star-glow 1.15s ease-out both; }
  .hm-latest { padding-bottom: 8px; }
  .hm-selection { grid-template-columns: 46% minmax(0,1fr); gap: 18px; align-items: stretch; padding-top: 16px; padding-bottom: 18px; overflow: hidden; }
  .hm-selection-image { width: 100%; aspect-ratio: 4/3; overflow: hidden; }
  .hm-selection-image img { width: 100%; height: 100%; object-fit: cover; }
  .hm-selection > div:last-child { min-width: 0; height: 100%; display: grid; grid-template-rows: auto auto 1fr auto; align-items: start; }
  .hm-selection h2 { align-self: start; font-size: 20px; line-height: 1.25; white-space: nowrap; }
  .hm-selection p { margin: 2px 0 0; font-size: 11.5px; line-height: 1.45; white-space: nowrap; }
  .hm-selection button { align-self: end; justify-self: start; width: 76px; min-width: 76px; height: 42px; padding: 0 10px; font: 700 13px/1 var(--serif); }
  .hm-selection small { align-self: end; margin-top: 5px; font-size: 8px; line-height: 1.35; white-space: nowrap; }
  .hm-site-footer { padding-top: 14px; padding-bottom: 14px; }
  .hm-site-footer a { color: #aeb6b9; }
}

@keyframes hm-donation-enter {
  from { opacity: 0; transform: translateY(var(--donation-y)); filter: blur(var(--donation-blur)); }
  to { opacity: var(--donation-opacity); transform: translateY(0); filter: blur(0); }
}

@keyframes hm-donation-star-glow {
  0% { opacity: 0; transform: scale(.45); }
  35% { opacity: 1; transform: scale(1.45); filter:drop-shadow(0 0 5px rgba(250,248,239,.95)) drop-shadow(0 0 10px rgba(154,146,126,.55)); }
  100% { opacity: .9; transform: scale(1); }
}

@media (min-width: 600px) {
  :root { --page: var(--page-padding-desktop); }
  .hm-hero-content { width: 390px; }
  .hm-story-collection.is-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (min-width: 900px) {
  :root {
    --fs-page-title: clamp(54px, 4.3vw, 58px);
    --fs-section-title: clamp(38px, 3vw, 42px);
    --fs-card-title: clamp(28px, 2.2vw, 32px);
    --fs-body-lg: clamp(18px, 1.05vw, 20px);
    --fs-body: clamp(16.5px, 1.2vw, 18px);
    --fs-meta: clamp(13px, .78vw, 15px);
  }
  .hm-app-shell { width:min(100%,var(--page-max-width)); }
  .hm-header { width:min(100%,var(--page-max-width)); padding-inline:var(--page-padding-desktop); }
  .hm-desktop-header-nav {
    position:absolute;
    top:50%;
    left:50%;
    display:flex;
    align-items:center;
    gap:clamp(24px,3vw,46px);
    transform:translate(-50%,-50%);
  }
  .hm-desktop-header-nav a {
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:rgba(203,208,210,.76);
    font:400 14px/1 var(--serif);
    letter-spacing:.12em;
    white-space:nowrap;
    transition:color .22s ease,text-shadow .22s ease;
  }
  .hm-desktop-header-nav a:hover,
  .hm-desktop-header-nav a:focus-visible,
  .hm-desktop-header-nav a[aria-current="page"] {
    color:#eef0f1;
    text-shadow:0 0 9px rgba(195,218,230,.2);
  }
  .hm-menu { inset:0 max(0px,calc((100vw - 1280px)/2)); }
  .home .hm-hero { min-height:620px; height:min(720px,calc(100svh - var(--header-h))); padding-inline:72px; }
  .home .hm-main > .hm-section,
  .home .hm-main > .hm-site-footer { width:min(100%,760px); margin-inline:auto; }
}

/* Final home identity, follow states and fixed navigation */
.hm-header { border-bottom:0; background: linear-gradient(180deg,rgba(5,5,5,.82),rgba(5,5,5,.62)); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }
.hm-header-actions { gap: 10px; }
.hm-header-actions > a { display: grid; place-items: center; color: #d8dcde; opacity: .94; }
.hm-header-actions > a svg { width: 13px; height: 13px; overflow: visible; }
.hm-header-actions > a svg > :not(.is-filled), .hm-menu-toggle svg path { fill: none; stroke: currentColor; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.hm-header-actions .is-filled { fill: currentColor; stroke: none; }
.hm-menu-toggle { display: grid; place-items: center; padding-left: 5px; }
.hm-menu-toggle svg { width: 23px; height: 23px; }
.hm-brand-title::after { display: none; }
.hm-brand-title img, .hm-brand-title svg { will-change: filter; }
.hm-follow { isolation: isolate; position: relative; overflow: hidden; border: .5px solid rgba(221,225,227,.7); background: linear-gradient(112deg,#777c80 0%,#b7bbbe 22%,#d6dadc 39%,#969b9e 63%,#c8ccce 82%,#858a8e 100%); box-shadow: inset 0 1px rgba(255,255,255,.38),inset 0 -1px rgba(35,39,41,.36); transition: filter .24s,background .24s,border-color .24s,box-shadow .24s; }
.hm-follow::before { content:""; position:absolute; z-index:0; inset:0; pointer-events:none; background:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,rgba(0,0,0,.02) 1px 2px),linear-gradient(108deg,transparent 20%,rgba(255,255,255,.16) 43%,transparent 58%); transform:translateX(-115%); animation:hm-matte-silver-pass 8s ease-in-out infinite; }
.hm-follow.is-complete::after { content:""; position:absolute; z-index:2; inset:0; pointer-events:none; background:linear-gradient(108deg,transparent 38%,rgba(255,255,255,.18) 44%,rgba(255,255,255,.92) 50%,rgba(218,229,234,.32) 56%,transparent 62%); transform:translateX(-55%); animation:hm-follow-instant-sweep .68s cubic-bezier(.28,.02,.2,1) both; }
.hm-follow { min-height:48px; height:48px; }
.hm-follow span { position:relative; z-index:1; color:#25282a; font:700 22px/1 var(--serif); letter-spacing:.02em; text-shadow:0 -.5px rgba(25,28,30,.58),0 .5px rgba(245,248,249,.48); }
.hm-follow.is-complete { filter:saturate(.72) brightness(.88); border-color:rgba(164,170,173,.48); background:linear-gradient(112deg,#4d5255 0%,#777d80 24%,#9da2a4 43%,#666c6f 67%,#858a8c 84%,#4b5053 100%); box-shadow:inset 0 1px rgba(255,255,255,.2),inset 0 -1px rgba(0,0,0,.5); animation:hm-follow-confirm .42s cubic-bezier(.2,.76,.2,1); }
.hm-follow.is-complete span { color:#25282a; text-shadow:none; }
.hm-header .hm-header-auth.hm-follow { width:auto; min-width:0; min-height:0; height:auto; overflow:visible; border:0; padding:7px 0; color:#cbd0d2; background:transparent; box-shadow:none; filter:none; animation:none; cursor:pointer; }
.hm-header .hm-header-auth.hm-follow::before,.hm-header .hm-header-auth.hm-follow::after { content:none; }
.hm-header .hm-header-auth.hm-follow span { color:inherit; font:400 12px/1 var(--serif); letter-spacing:.07em; text-shadow:none; white-space:nowrap; }
.hm-header .hm-auth-button-shell { align-items:center; }
.hm-auth-button-shell { position:relative; display:inline-grid; max-width:100%; }
.hm-auth-button-shell > .hm-follow { grid-area:1/1; width:100%; }
.hm-auth-google-overlay { position:absolute; z-index:4; inset:0; display:block; overflow:hidden; opacity:.01; cursor:pointer; }
.hm-auth-google-overlay > div { width:100% !important; height:100% !important; }
.hm-auth-google-overlay iframe { display:block; min-width:200px; height:100% !important; }
.hm-follow-note { white-space: normal; font-family: var(--serif); font-size: 11px; line-height: 1.55; }
.hm-hero .hm-follow span { font-size:18px; }
.hm-hero .hm-telegram-cta { font-size:18px; }
.hm-follow-note a { display:block; width:max-content; max-width:100%; margin-top:4px; color:#cbd1d3; border-bottom:0; }
.hm-telegram-bind-link,.hm-telegram-bind-visual { min-height:48px; height:48px; display:grid; place-items:center; padding:0 8px; cursor:pointer; }
.hm-telegram-metal { isolation:isolate; position:relative; overflow:hidden; border:.5px solid rgba(221,225,227,.7); border-radius:0; background:linear-gradient(112deg,#777c80 0%,#b7bbbe 22%,#d6dadc 39%,#969b9e 63%,#c8ccce 82%,#858a8e 100%); box-shadow:inset 0 1px rgba(255,255,255,.38),inset 0 -1px rgba(35,39,41,.36); transition:filter .24s,background .24s,border-color .24s,box-shadow .24s; }
.hm-telegram-metal::before { content:""; position:absolute; z-index:0; inset:0; pointer-events:none; background:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,rgba(0,0,0,.02) 1px 2px),linear-gradient(108deg,transparent 20%,rgba(255,255,255,.16) 43%,transparent 58%); transform:translateX(-115%); animation:hm-matte-silver-pass 8s ease-in-out infinite; }
.hm-telegram-metal > span { position:relative; z-index:1; color:#25282a; font:700 18px/1 var(--serif); letter-spacing:.02em; text-shadow:0 -.5px rgba(25,28,30,.58),0 .5px rgba(245,248,249,.48); }
.hm-telegram-metal.is-bound { filter:saturate(.72) brightness(.88); border-color:rgba(164,170,173,.48); background:linear-gradient(112deg,#4d5255 0%,#777d80 24%,#9da2a4 43%,#666c6f 67%,#858a8c 84%,#4b5053 100%); box-shadow:inset 0 1px rgba(255,255,255,.2),inset 0 -1px rgba(0,0,0,.5); }
.hm-telegram-metal.is-bound::after { content:""; position:absolute; z-index:2; inset:0; pointer-events:none; background:linear-gradient(108deg,transparent 38%,rgba(255,255,255,.18) 44%,rgba(255,255,255,.92) 50%,rgba(218,229,234,.32) 56%,transparent 62%); transform:translateX(-55%); animation:hm-follow-instant-sweep .68s cubic-bezier(.28,.02,.2,1) both; }
.hm-telegram-metal.is-bound > span { color:#25282a; text-shadow:none; }
.hm-qa-telegram-download .hm-telegram-bind-link { width:max-content; max-width:100%; min-height:38px; height:38px; margin:11px 0 0; }
.hm-qa-telegram-download .hm-telegram-bind-link > span { font-size:13px; }
.hm-bottom-nav { --hm-nav-symbol-size:25px; --hm-nav-symbol-active-size:30px; height:calc(70px + env(safe-area-inset-bottom)); border-top:1px solid rgba(160,165,168,.17); background:rgba(5,5,5,.78); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); }
.hm-bottom-nav a { position:relative; gap:5px; color:#7f8588; transition:color .22s,opacity .22s; }
.hm-bottom-nav a > span { width:var(--hm-nav-symbol-size); height:var(--hm-nav-symbol-size); display:grid; place-items:center; transform-origin:50%; transition:width .22s,height .22s,transform .22s,filter .22s,color .22s; }
.hm-bottom-nav a > .hm-nav-symbol svg { width:var(--hm-nav-symbol-size); height:var(--hm-nav-symbol-size); overflow:visible; transition:width .22s,height .22s,filter .22s; }
.hm-bottom-nav a svg path, .hm-bottom-nav a svg circle, .hm-bottom-nav a svg rect { fill:none; stroke:currentColor; stroke-width:1.15; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.hm-bottom-nav .hm-nav-telegram { width:25px; height:25px; border:1px solid currentColor; border-radius:50%; }
.hm-bottom-nav .hm-nav-telegram .hm-telegram-icon { width:13px; height:13px; fill:currentColor; stroke:none; transform:translate(-1px,1px); }
.hm-bottom-nav .hm-nav-telegram .hm-telegram-icon path { fill:currentColor; stroke:none; }
.hm-bottom-nav a svg .is-soft { opacity:.42; }
.hm-bottom-nav small { font-size:10px; }
.hm-bottom-nav a[aria-current="page"] > span { width:var(--hm-nav-symbol-active-size); height:var(--hm-nav-symbol-active-size); }
.hm-bottom-nav a[aria-current="page"] > span:not(.hm-butterfly) { color:#f0f2f3; filter:drop-shadow(0 0 1px rgba(255,255,255,.95)) drop-shadow(0 0 4px rgba(226,235,241,.82)) drop-shadow(0 0 8px rgba(200,218,230,.46)); transform:none; }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-symbol svg { width:var(--hm-nav-symbol-active-size); height:var(--hm-nav-symbol-active-size); }
.hm-bottom-nav .hm-nav-play path, .hm-bottom-nav .hm-nav-shop-body, .hm-bottom-nav .hm-nav-account-head { transition:fill .22s; }
.hm-bottom-nav .hm-nav-account-body-outline, .hm-bottom-nav .hm-nav-account-body-fill { transition:opacity .22s; }
.hm-bottom-nav .hm-nav-account-body-fill { fill:currentColor; stroke:none; opacity:0; }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-play path, .hm-bottom-nav a[aria-current="page"] > .hm-nav-shop .hm-nav-shop-body, .hm-bottom-nav a[aria-current="page"] > .hm-nav-account .hm-nav-account-head { fill:currentColor; }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-account .hm-nav-account-body-outline { opacity:0; }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-account .hm-nav-account-body-fill { opacity:1; }
.hm-bottom-nav a[aria-current="page"] small { color:#e9ecee; text-shadow:0 0 5px rgba(220,226,230,.18); }
.hm-bottom-nav .hm-nav-play { position:relative; border-radius:50%; }
.hm-bottom-nav .hm-nav-play img { grid-area:1/1; display:block; width:var(--hm-nav-symbol-size); height:var(--hm-nav-symbol-size); object-fit:contain; clip-path:circle(49.5% at 50% 50%); transition:width .22s,height .22s; }
.hm-bottom-nav .hm-nav-play img.hm-nav-play-active { display:none; }
.hm-bottom-nav a[aria-current="page"] > span.hm-nav-play { filter:none; box-shadow:0 0 1px rgba(255,255,255,.95),0 0 4px rgba(226,235,241,.82),0 0 8px rgba(200,218,230,.46); }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-play img { width:var(--hm-nav-symbol-active-size); height:var(--hm-nav-symbol-active-size); }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-play .hm-nav-play-default { display:none; }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-play .hm-nav-play-active { display:block; }
.hm-bottom-nav .hm-nav-story { position:relative; width:25px; height:25px; border-radius:50%; filter:none; transform:none; }
.hm-bottom-nav .hm-nav-story img { grid-area:1/1; display:block; width:var(--hm-nav-symbol-size); height:var(--hm-nav-symbol-size); object-fit:contain; clip-path:circle(49.5% at 50% 50%); transition:width .22s,height .22s; }
.hm-bottom-nav .hm-nav-story img.hm-nav-question-active { display:none; }
.hm-bottom-nav a[aria-current="page"] > span.hm-nav-story { width:30px; height:30px; color:#f0f2f3; filter:none; box-shadow:0 0 1px rgba(255,255,255,.95),0 0 4px rgba(226,235,241,.82),0 0 8px rgba(200,218,230,.46); }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-story img { width:var(--hm-nav-symbol-active-size); height:var(--hm-nav-symbol-active-size); }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-story .hm-nav-question-default { display:none; }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-story .hm-nav-question-active { display:block; }
.hm-bottom-nav .hm-nav-shop { position:relative; border-radius:50%; }
.hm-bottom-nav .hm-nav-shop img { grid-area:1/1; display:block; width:var(--hm-nav-symbol-size); height:var(--hm-nav-symbol-size); object-fit:contain; clip-path:circle(49.5% at 50% 50%); transition:width .22s,height .22s; }
.hm-bottom-nav .hm-nav-shop img.hm-nav-shop-active { display:none; }
.hm-bottom-nav a[aria-current="page"] > span.hm-nav-shop { filter:none; box-shadow:0 0 1px rgba(255,255,255,.95),0 0 4px rgba(226,235,241,.82),0 0 8px rgba(200,218,230,.46); }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-shop img { width:var(--hm-nav-symbol-active-size); height:var(--hm-nav-symbol-active-size); }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-shop .hm-nav-shop-default { display:none; }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-shop .hm-nav-shop-active { display:block; }
.hm-bottom-nav .hm-nav-account { position:relative; border-radius:50%; }
.hm-bottom-nav .hm-nav-account img { grid-area:1/1; display:block; width:var(--hm-nav-symbol-size); height:var(--hm-nav-symbol-size); object-fit:contain; clip-path:circle(49.5% at 50% 50%); transition:width .22s,height .22s; }
.hm-bottom-nav .hm-nav-account img.hm-nav-account-active { display:none; }
.hm-bottom-nav a[aria-current="page"] > span.hm-nav-account { filter:none; box-shadow:0 0 1px rgba(255,255,255,.95),0 0 4px rgba(226,235,241,.82),0 0 8px rgba(200,218,230,.46); }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-account img { width:var(--hm-nav-symbol-active-size); height:var(--hm-nav-symbol-active-size); }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-account .hm-nav-account-default { display:none; }
.hm-bottom-nav a[aria-current="page"] > .hm-nav-account .hm-nav-account-active { display:block; }
.hm-bottom-nav .hm-butterfly { position:relative; width:32px; height:32px; overflow:visible; }
.hm-butterfly img { width:32px; height:32px; object-fit:contain; transition:width .22s,height .22s,filter .22s,opacity .22s; }
.hm-nav-home:not([aria-current="page"]) .hm-butterfly img { width:32px; height:32px; opacity:1; filter:none; transform:none; }
.home .hm-nav-home { color:#edf0f1; }
.home .hm-nav-home > .hm-butterfly { width:36px; height:36px; }
.home .hm-nav-home .hm-butterfly img { position:relative; width:36px; height:36px; opacity:1; filter:drop-shadow(0 0 1px rgba(255,255,255,.95)) drop-shadow(0 0 4px rgba(226,235,241,.82)) drop-shadow(0 0 8px rgba(200,218,230,.46)); transform:none; animation:none; }
.home .hm-nav-home small { color:#f5f5f5; text-shadow:0 0 5px rgba(220,226,230,.18); }

/* Member account */
.hm-account-page { padding-bottom:34px; }
.hm-account-page .hm-story-cover { aspect-ratio:16/9; }
.hm-account-page .hm-stories-hero img { object-fit:contain; object-position:center top; filter:none!important; }
.hm-account-page .hm-story-cover > .hm-stories-hero::after { bottom:0; }
.hm-account-mirror-effect { --hm-account-glow-size:210px; position:absolute; z-index:2; overflow:hidden; border-radius:50%; pointer-events:auto; touch-action:none; -webkit-mask-image:radial-gradient(ellipse 49% 50% at 51% 49%,#000 0 86%,rgba(0,0,0,.88) 91%,rgba(0,0,0,.35) 96%,transparent 100%); mask-image:radial-gradient(ellipse 49% 50% at 51% 49%,#000 0 86%,rgba(0,0,0,.88) 91%,rgba(0,0,0,.35) 96%,transparent 100%); -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; mix-blend-mode:screen; }
.hm-account-mirror-glow { position:absolute; left:50%; top:50%; width:var(--hm-account-glow-size); height:var(--hm-account-glow-size); border-radius:50%; opacity:0; background:radial-gradient(circle,rgba(231,240,245,.82) 0%,rgba(211,225,233,.5) 22%,rgba(181,204,217,.24) 45%,rgba(154,181,196,.08) 66%,transparent 88%); filter:blur(3px); transform:translate(-50%,-50%); transition:opacity .18s ease; will-change:left,top,opacity; }
.hm-account-mirror-glow,.hm-account-mirror-spark { pointer-events:none; }
.hm-account-mirror-effect:not(.is-active) .hm-account-mirror-glow { opacity:0!important; }
.hm-account-mirror-effect.is-active .hm-account-mirror-glow { opacity:.64!important; }
.hm-account-mirror-spark { position:absolute; width:var(--hm-account-spark-size,2px); height:var(--hm-account-spark-size,2px); border-radius:50%; opacity:0; background:rgba(230,238,243,.9); box-shadow:0 0 4px rgba(211,226,235,.7); transform:translate(-50%,-50%) scale(.3); animation:hm-account-mirror-spark var(--hm-account-spark-life,700ms) ease-out forwards; will-change:transform,opacity; }
@keyframes hm-account-mirror-spark { 0%{opacity:0;transform:translate(-50%,-50%) scale(.3)} 18%{opacity:var(--hm-account-spark-opacity,.68);transform:translate(-50%,-50%) scale(1)} 100%{opacity:0;transform:translate(calc(-50% + var(--hm-account-spark-drift-x,0px)),calc(-50% + var(--hm-account-spark-drift-y,-5px))) scale(.12)} }
.hm-account-page .hm-archive-top { align-items:flex-start; }
.hm-account-page.is-member-complete .hm-account-hub { margin-top:-64px; }
.hm-account-cover-title { display:grid !important; align-content:start; gap:0 !important; }
.hm-account-cover-title p { margin:8px 0 0; color:rgba(183,190,192,.38); font:600 11px/1.4 var(--serif); letter-spacing:.04em; }
.hm-account-cover-rank { position:relative; isolation:isolate; width:max-content; min-width:68px; overflow:hidden; margin-top:2px; border:0; padding:2px 10px 3px 0; color:rgba(220,232,232,.58); background:transparent; box-shadow:none; font:700 27px/1 var(--serif); text-shadow:none; }
.hm-account-cover-rank::before,.hm-account-cover-rank::after { display:none; }
.hm-account-cover-rank > span,.hm-account-cover-rank > b { position:relative; z-index:1; }
.hm-account-cover-rank > span { margin-right:3px; color:rgba(183,194,196,.52); font-size:16px; }
.hm-account-cover-rank > b { display:inline-block; color:inherit; font:inherit; text-shadow:0 0 5px rgba(220,235,237,.2); }
.hm-account-cover-rank > b.is-rank-first { color:#fdf7dd; text-shadow:0 0 4px rgba(250,235,195,.9),0 0 10px rgba(240,213,140,.7),0 0 18px rgba(215,169,77,.4); }
.hm-account-cover-rank > b.is-rank-up { animation:hm-account-rank-up .5s ease; }
.hm-account-cover-rank > b.is-rank-down { animation:hm-account-rank-down .5s ease; }
@keyframes hm-account-rank-up { 0%{transform:translateY(0);opacity:1} 42%{transform:translateY(-9px);opacity:0} 43%{transform:translateY(9px);opacity:0} 100%{transform:translateY(0);opacity:1} }
@keyframes hm-account-rank-down { 0%{transform:translateY(0);opacity:1} 42%{transform:translateY(9px);opacity:0} 43%{transform:translateY(-9px);opacity:0} 100%{transform:translateY(0);opacity:1} }
.hm-account-hub { position:relative; z-index:3; display:flex; flex-direction:column; margin:-22px 0 0; padding:0 0 20px; }
.hm-account-kicker { color:#7f898d; font-size:9px; font-weight:700; letter-spacing:.2em; }
.hm-first-login-alert { display:inline-block; margin-left:10px; color:#ff2f2f; font:700 12px/1.4 var(--sans); letter-spacing:.02em; text-shadow:0 0 8px rgba(255,35,35,.34); }
.hm-account-auth-card,.hm-account-setup-card,.hm-account-identity,.hm-account-dashboard { border:1px solid rgba(187,195,199,.18); background:linear-gradient(145deg,rgba(18,20,21,.96),rgba(7,8,9,.98) 62%,rgba(14,16,17,.95)); box-shadow:inset 0 1px rgba(255,255,255,.035),0 18px 46px rgba(0,0,0,.32); }
.hm-account-auth-card,.hm-account-setup-card { padding:22px 18px; }
.hm-account-auth-card h2,.hm-account-setup-card h2,.hm-account-dashboard > header h2 { margin:5px 0 8px; color:#e3e6e7; font:700 25px/1.25 var(--serif); }
.hm-account-auth-card > p,.hm-account-setup-card > p { margin:0; color:#92999c; font-size:12px; line-height:1.8; }
.hm-google-login { display:grid; justify-items:center; gap:9px; margin:20px 0 0; }
.hm-google-login > div { width:100%; min-height:44px; overflow:hidden; }
.hm-google-login-shell { position:relative; width:min(100%,235px) !important; height:52px; min-height:52px !important; overflow:hidden; }
.hm-google-login-visual { position:absolute; z-index:1; inset:0; display:flex; align-items:center; justify-content:center; gap:10px; pointer-events:none; font:700 17px/1.2 var(--serif); white-space:nowrap; }
.hm-google-login-mark { width:25px; height:25px; display:grid; place-items:center; border-radius:50%; color:#bac0c3; background:#292c2e; font:800 15px/1 var(--sans); }
.hm-google-login-shell [data-google-button] { position:absolute; z-index:2; inset:0; width:100%; height:52px; opacity:.01; overflow:hidden; }
.hm-google-login-shell iframe { display:block; width:100% !important; max-width:100%; height:52px !important; margin-inline:auto; }
.hm-google-login > button { width:min(100%,235px); min-height:52px; opacity:1; cursor:default; font:600 17px/1.2 var(--serif); white-space:nowrap; }
.hm-google-login > button span { display:inline-grid; width:23px; height:23px; margin-right:8px; place-items:center; border-radius:50%; color:#bac0c3; background:#292c2e; font-weight:800; }
.hm-google-login small { color:#676f72; font-size:9px; line-height:1.6; text-align:center; }
.hm-account-auth-message,.hm-account-form-message { min-height:18px; margin:8px 0 0 !important; color:#c9d0d2 !important; font-size:10px !important; text-align:center; }
.hm-account-auth-message.is-error,.hm-account-form-message.is-error { color:#d0a3a3 !important; }
.hm-account-donation-rule { display:grid; gap:3px; margin-top:14px; padding:12px 13px; border-left:2px solid rgba(220,225,228,.55); background:rgba(255,255,255,.025); }
.hm-account-donation-rule strong { color:#d9dddf; font:700 13px/1.4 var(--serif); }
.hm-account-donation-rule span { color:#8d9598; font-size:10px; line-height:1.6; }
.hm-account-setup-card form { display:grid; gap:17px; margin-top:20px; }
.hm-account-field { display:grid; gap:7px; margin:0; padding:0; border:0; }
.hm-account-field > span,.hm-account-field legend { color:#d5dadd; font-size:12px; font-weight:600; }
.hm-account-field b { margin-left:4px; color:#929a9d; font-size:8px; letter-spacing:.08em; }
.hm-account-field input[type="text"],.hm-account-field select { width:100%; height:44px; min-width:0; border:1px solid rgba(192,199,202,.22); border-radius:0; padding:0 12px; color:#e0e4e5; background:#090b0c; outline:0; }
.hm-account-field input:focus,.hm-account-field select:focus { border-color:rgba(222,228,230,.54); box-shadow:0 0 0 2px rgba(225,231,233,.04); }
.hm-account-field select:invalid { color:#747c7f; }
.hm-account-field > small { color:#747c7f; font-size:9px; line-height:1.55; }
.hm-account-field > small i { color:#c4cacc; font-style:normal; }
.hm-member-name-rules { display:grid; gap:5px; margin:2px 0 0; padding:0; list-style:none; }
.hm-member-name-rules li { position:relative; padding-left:14px; color:#d85d63; font-size:10px; line-height:1.5; transition:color .2s,text-shadow .2s; }
.hm-member-name-rules li::before { content:"×"; position:absolute; left:0; top:0; font-weight:800; }
.hm-member-name-rules li.is-valid { color:#65d39a; text-shadow:0 0 7px rgba(70,210,140,.18); }
.hm-member-name-rules li.is-valid::before { content:"✓"; }
.hm-member-name-rules li.is-checking { color:#aeb6b9; text-shadow:none; }
.hm-member-name-rules li.is-checking::before { content:"…"; }
.hm-account-demographics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-items:start; }
.hm-account-lock-note { margin-bottom:-8px; padding:0; border:0; color:#fdf7dd; background:transparent; text-align:center; }
.hm-account-lock-note strong { color:#fdf7dd; font:700 13px/1.6 var(--serif); }
.hm-account-primary { height:46px; border:1px solid rgba(232,236,238,.72); border-radius:1px; color:#17191a; background:linear-gradient(112deg,#747a7d,#d8dcde 39%,#949a9d 67%,#c8ccce); font-weight:700; cursor:pointer; }
.hm-account-primary:disabled { opacity:.45; cursor:wait; }
.hm-account-identity { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px; align-items:center; padding:17px; }
.hm-account-identity > div { display:flex; align-items:center; gap:11px; min-width:0; }
.hm-account-avatar { flex:0 0 44px; width:44px; height:44px; display:grid; place-items:center; border:1px solid rgba(223,229,231,.55); border-radius:50%; color:#e2e6e7; background:radial-gradient(circle at 35% 24%,#565c60,#151718 67%); font:700 20px/1 var(--serif); }
.hm-account-identity p { display:grid; gap:2px; min-width:0; margin:0; }
.hm-account-identity p small { color:#727a7d; font-size:8px; letter-spacing:.16em; }
.hm-account-identity p strong { overflow:hidden; color:#e1e5e6; font:700 21px/1.2 var(--serif); text-overflow:ellipsis; white-space:nowrap; }
.hm-account-identity p em { color:#777f82; font-size:8px; font-style:normal; }
.hm-account-identity dl { display:none; margin:0; }
.hm-account-identity-actions { grid-column:2; grid-row:1; display:flex; align-items:center; gap:10px; }
.hm-account-identity-actions > a { flex:0 0 auto; border-bottom:1px solid rgba(198,204,207,.32); padding:4px 0; color:#929a9d; font-size:9px; }
.hm-member-weekly-rank { position:relative; isolation:isolate; min-width:104px; overflow:hidden; display:grid; grid-template-columns:1fr auto; gap:2px 9px; border:.5px solid rgba(213,220,223,.38); padding:8px 10px; background:linear-gradient(110deg,rgba(19,22,23,.94),rgba(43,48,51,.72) 48%,rgba(12,14,15,.94)); box-shadow:inset 0 1px rgba(255,255,255,.07),0 0 12px rgba(202,155,71,.08); }
.hm-member-weekly-rank::before { content:""; position:absolute; z-index:-1; inset:-40% auto -40% -45%; width:42%; background:linear-gradient(90deg,transparent,rgba(240,213,140,.26),transparent); transform:skewX(-18deg); animation:hm-member-rank-sweep 4.2s ease-in-out infinite; }
.hm-member-weekly-rank span { color:#818b8f; font-size:8px; letter-spacing:.08em; }
.hm-member-weekly-rank strong { grid-column:2; grid-row:1/3; align-self:center; color:#fdf7dd; font:700 20px/1 var(--serif); text-shadow:0 0 8px rgba(231,202,125,.28); animation:hm-member-rank-glow 2.8s ease-in-out infinite; }
.hm-member-weekly-rank small { color:#a5adaf; font-size:8px; }
.hm-account-dashboard { margin-top:0; overflow:visible; border:0; background:transparent; box-shadow:none; }
.hm-account-dashboard > header { display:flex; align-items:end; justify-content:space-between; padding:18px 17px 12px; }
.hm-account-dashboard > header h2 { margin-bottom:0; }
.hm-account-dashboard > header > small { color:#6f787b; font-size:10px; }
.hm-account-tabs { display:flex; gap:0; overflow-x:auto; border-top:1px solid rgba(184,191,195,.11); border-bottom:1px solid rgba(184,191,195,.15); scrollbar-width:none; }
.hm-account-tabs::-webkit-scrollbar { display:none; }
.hm-account-tabs button { flex:0 0 auto; min-width:82px; height:50px; display:grid; place-content:center; gap:3px; border:0; border-right:1px solid rgba(184,191,195,.1); padding:0 11px; color:#747c7f; background:#090a0b; font-size:12px; white-space:nowrap; cursor:pointer; }
.hm-account-tabs button small { color:#596164; font-size:9px; letter-spacing:.04em; }
.hm-account-tabs button.is-active { color:#e1e5e6; background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.018)); box-shadow:inset 0 -1px #d6dbdd; }
.hm-account-tabs button.is-active small { color:#aeb5b8; }
.hm-account-panel { min-height:230px; padding:17px; }
.hm-account-panel-heading { display:flex; align-items:start; justify-content:space-between; gap:15px; margin-bottom:15px; }
.hm-account-panel-heading h3 { margin:0 0 4px; color:#dce1e2; font:700 20px/1.3 var(--serif); }
.hm-account-panel-heading p { margin:0; color:#7f878a; font-size:11px; line-height:1.55; }
.hm-account-panel-heading > span { flex:0 0 auto; margin-top:2px; border:1px solid rgba(185,192,195,.18); padding:4px 7px; color:#959da0; font-size:10px; white-space:nowrap; }
.hm-account-notice-preview { display:flex; flex-wrap:wrap; gap:6px; }
.hm-account-notice-preview span { border:1px solid rgba(190,197,200,.15); padding:7px 9px; color:#a0a7aa; background:rgba(255,255,255,.018); font-size:11px; }
.hm-account-empty { margin:16px 0 0; padding:24px 12px; border:1px dashed rgba(181,189,192,.14); color:#687174; font-size:12px; line-height:1.65; text-align:center; }
.hm-account-list { display:grid; gap:8px; }
.hm-account-notice,.hm-account-row { border:1px solid rgba(184,191,195,.13); padding:12px; background:rgba(255,255,255,.015); }
.hm-account-notice { display:grid; grid-template-columns:1fr auto; gap:5px 10px; }
.hm-account-notice > span,.hm-account-notice time { color:#737c7f; font-size:10px; }
.hm-account-notice h4 { grid-column:1/-1; margin:2px 0 0; color:#d5dadd; font:700 16px/1.4 var(--serif); }
.hm-account-notice > div { grid-column:1/-1; color:#8e9699; font-size:12px; line-height:1.65; }
.hm-account-notice > div p { margin:0; }
.hm-account-notice button { grid-column:1/-1; justify-self:start; border:0; border-bottom:1px solid rgba(195,201,204,.28); padding:3px 0; color:#aab1b4; background:transparent; font-size:10px; }
.hm-account-notice.is-read { opacity:.58; }
.hm-account-row { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.hm-account-row > div { display:grid; gap:3px; min-width:0; }
.hm-account-row strong { color:#d4d9db; font-size:13px; }
.hm-account-row small { color:#747c7f; font-size:10px; }
.hm-account-row p { margin:3px 0 0; color:#8c9497; font-size:11px; line-height:1.55; }
.hm-account-row > b,.hm-account-row > a { flex:0 0 auto; color:#bec4c6; font-size:11px; }
.hm-account-progress-card { display:grid; grid-template-columns:minmax(0,1fr) 96px; gap:12px; align-items:center; color:inherit; }
.hm-account-progress-copy { min-width:0; display:grid; gap:5px; }
.hm-account-progress-copy strong { overflow:hidden; color:#d6dbdd; font:600 15px/1.4 var(--serif); white-space:nowrap; text-overflow:ellipsis; }
.hm-account-progress-copy small { color:#777f82; font-size:10px; }
.hm-account-progress-thumb { position:relative; width:96px; aspect-ratio:16/9; display:block; overflow:hidden; background:#0d1012; }
.hm-account-progress-thumb img,.hm-account-progress-thumb .hm-media-placeholder { width:100%; height:100%; display:block; object-fit:contain; }
.hm-account-progress-thumb::before,.hm-account-progress-thumb::after { content:none; display:none; }
.hm-account-progress-thumb .hm-media-overlay { display:none; }
.hm-account-progress-thumb .hm-grid-card-meta { left:5px; top:3px; max-width:calc(100% - 10px); font-size:7px; }
.hm-account-progress-thumb .hm-state-icon { width:32px; height:32px; }
.hm-account-progress-thumb .hm-state-icon svg { width:14px; height:14px; }
.hm-account-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.hm-account-card-grid a { min-height:112px; display:flex; flex-direction:column; justify-content:end; border:1px solid rgba(184,191,195,.15); padding:11px; background:linear-gradient(180deg,rgba(255,255,255,.015),rgba(255,255,255,.04)); }
.hm-account-card-grid span,.hm-account-card-grid small { color:#737c7f; font-size:10px; }
.hm-account-card-grid strong { margin:4px 0 10px; color:#d9dddf; font:700 16px/1.4 var(--serif); }
.hm-account-bookmark-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 10px; }
.hm-account-bookmark-card { min-width:0; padding:0; border:0; }
.hm-account-bookmark-card .hm-media-frame { border:0; box-shadow:none; }
.hm-account-bookmark-card .hm-media-frame::before,.hm-account-bookmark-card .hm-media-frame::after { content:none; display:none; }
.hm-account-bookmark-card .hm-media-overlay { display:none; }
.hm-account-bookmark-card .hm-story-media h2 { min-height:2.5em; margin-top:11px; font-size:18px; }
.hm-account-ranking { margin:0; padding:0; list-style:none; }
.hm-account-ranking li { display:grid; grid-template-columns:27px minmax(0,1fr) auto; gap:8px; align-items:center; min-height:43px; border-bottom:1px solid rgba(184,191,195,.12); }
.hm-account-ranking li > span { color:#727a7d; font:700 12px/1 var(--serif); }
.hm-account-ranking li strong { color:#d1d6d8; font-size:13px; }
.hm-account-ranking li b { color:#9ca4a7; font-size:11px; }
.hm-account-order-preview { display:grid; gap:8px; }
.hm-account-order-preview article { display:grid; grid-template-columns:28px 1fr; gap:3px 9px; border:1px solid rgba(184,191,195,.13); padding:12px; background:rgba(255,255,255,.014); }
.hm-account-order-preview article > span { grid-row:1/3; color:#697275; font:700 11px/1 var(--serif); }
.hm-account-order-preview strong { color:#d2d7d9; font-size:13px; }
.hm-account-order-preview p { margin:0; color:#7d8588; font-size:11px; line-height:1.5; }
.hm-account-prepay { display:grid; gap:3px; margin-top:10px; padding:12px; border:1px solid rgba(211,216,219,.2); background:linear-gradient(90deg,rgba(255,255,255,.04),transparent); }
.hm-account-prepay strong { color:#d9dddf; font:700 14px/1.4 var(--serif); }
.hm-account-prepay span { color:#8d9598; font-size:11px; line-height:1.55; }
.hm-account-security-body.hm-account-delete-body { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.hm-account-delete-body p { max-width:330px; }
.hm-account-delete-body > button { width:max-content; flex:0 0 auto; border:1px solid rgba(195,106,110,.5); padding:8px 11px; color:#d79598; background:rgba(78,21,24,.18); font:700 11px/1 var(--serif); }
.hm-account-delete-confirm[hidden] { display:none; }
.hm-account-delete-confirm { position:fixed; z-index:125; inset:0; display:grid; place-items:center; padding:24px; }
.hm-account-delete-backdrop { position:absolute; inset:0; border:0; background:rgba(0,0,0,.82); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
.hm-account-delete-confirm > section { position:relative; width:min(100%,360px); border:1px solid rgba(204,210,213,.3); padding:23px; background:linear-gradient(145deg,#151719,#070809 72%); box-shadow:0 22px 60px rgba(0,0,0,.72); }
.hm-account-delete-confirm [data-account-delete-step] > span { color:#a96e71; font-size:8px; letter-spacing:.16em; }
.hm-account-delete-confirm h2 { margin:6px 0 8px; color:#e2e5e6; font:700 23px/1.3 var(--serif); }
.hm-account-delete-confirm p { margin:0 0 16px; color:#8e9699; font-size:11px; line-height:1.65; }
.hm-account-delete-confirm input { width:100%; height:44px; border:1px solid rgba(204,210,213,.3); padding:0 12px; color:#e4e7e8; background:#080a0b; outline:0; }
.hm-account-delete-confirm [data-account-delete-step] > div:last-child { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:16px; }
.hm-account-delete-confirm [data-account-delete-step] > div:last-child button { min-height:43px; border:1px solid rgba(195,201,204,.3); color:#b8bec0; background:#0a0c0d; font:700 12px/1 var(--serif); }
.hm-account-delete-confirm [data-account-delete-cancel] { border-color:rgba(226,232,234,.72) !important; color:#17191a !important; background:linear-gradient(112deg,#777c80,#d6dadc 44%,#8e9497) !important; }
.hm-account-delete-confirm [data-account-delete-submit] { border-color:rgba(196,84,89,.58) !important; color:#e3a1a4 !important; background:rgba(88,18,22,.28) !important; }
.hm-account-delete-confirm [data-account-delete-submit]:disabled { opacity:.35; }
.hm-account-delete-message { min-height:17px; margin:8px 0 0 !important; color:#d79598 !important; }
.hm-account-auth-card { order:-2; margin-bottom:34px; border:0; padding-inline:0; background:transparent; box-shadow:none; }
.hm-account-auth-card h2,.hm-account-auth-card > .hm-account-auth-copy { text-align:center; }
.hm-account-setup-card { order:-2; margin-bottom:14px; border:0; background:transparent; box-shadow:none; }
.hm-account-auth-card h2 { margin-bottom:0; }
.hm-account-auth-card .hm-google-login { margin-top:15px; }
.hm-account-auth-card > .hm-account-auth-copy { margin-top:0; }
.hm-account-auth-message:empty { display:none; }
.hm-account-support-zone { order:-1; margin:0 0 14px; padding:0; border:0; background:transparent; box-shadow:none; overflow:visible; }
.hm-account-support-zone.is-member-complete { order:1; margin:44px 0 0; }
.hm-account-donation-note { position:relative; isolation:isolate; overflow:visible; display:grid; gap:0; margin:0; padding:24px 0 12px; text-align:center; }
.hm-account-donation-note::before { content:none; position:absolute; z-index:1; top:0; right:calc(var(--page) * -1); left:calc(var(--page) * -1); height:.5px; background:linear-gradient(90deg,rgba(213,219,222,.35),rgba(241,244,245,.9) 50%,rgba(213,219,222,.35)); box-shadow:0 0 4px rgba(229,234,236,.48); pointer-events:none; }
.hm-account-donation-note::after { content:""; position:absolute; z-index:0; inset:0 calc(var(--page) * -1); background:linear-gradient(rgba(220,225,229,.14) 0%,rgba(178,184,190,.085) 30%,rgba(70,74,78,.035) 58%,transparent 82%); pointer-events:none; }
.hm-account-donation-note > * { position:relative; z-index:2; }
.hm-account-donation-note strong { color:#e3e6e7; font:700 25px/1.25 var(--serif); }
.hm-account-donation-note span { margin-top:2px; color:#92999c; font-size:12px; line-height:1.8; }
.hm-account-support-zone .hm-donation-wall { margin-top:6px; border:0; background:none; }
.hm-auth-confirm[hidden] { display:none; }
.hm-auth-confirm { position:fixed; z-index:145; inset:0; display:grid; place-items:center; padding:24px; }
.hm-auth-confirm-backdrop { position:absolute; inset:0; border:0; background:rgba(2,3,4,.72); -webkit-backdrop-filter:blur(7px); backdrop-filter:blur(7px); animation:hm-home-entry-backdrop-in .42s ease both; }
.hm-auth-confirm > section { position:relative; width:min(100%,430px); border:.75px solid rgba(220,226,229,.62); padding:28px 30px; background:linear-gradient(145deg,rgba(12,13,14,.78),rgba(4,5,6,.7)); box-shadow:inset 0 0 0 .5px rgba(255,255,255,.035),0 24px 70px rgba(0,0,0,.48); text-align:center; animation:hm-home-entry-dialog-in .5s cubic-bezier(.2,.72,.2,1) both; }
.hm-auth-confirm h2 { margin:0 0 20px; color:#cbd1d4; font:400 16px/1.25 var(--serif); letter-spacing:.12em; }
.hm-auth-confirm section > div { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:17px; }
.hm-auth-confirm section button { width:100%; min-height:45px; border:0; border-top:.5px solid rgba(205,213,217,.28); border-bottom:.5px solid rgba(205,213,217,.28); padding:0 8px; color:#cbd1d4; background:rgba(4,5,6,.2); box-shadow:none; filter:none; font:400 14px/1 var(--serif); letter-spacing:.12em; cursor:pointer; transition:color .24s ease,background-color .24s ease,border-color .24s ease; }
.hm-auth-confirm section button:hover,.hm-auth-confirm section button:focus-visible { color:#eef1f2; border-color:rgba(229,235,238,.62); background:rgba(198,212,220,.045); outline:0; }
.hm-auth-confirm-or { color:rgba(177,187,192,.52); font:400 8px/1 var(--sans); letter-spacing:.18em; }
@media (max-width:599px) {
  .hm-auth-confirm { padding:22px; }
  .hm-auth-confirm > section { width:min(100%,330px); padding:25px 23px; }
  .hm-auth-confirm section > div { grid-template-columns:1fr; gap:12px; }
  .hm-auth-confirm-or { text-align:center; }
}
@media (min-width:600px) {
  .hm-account-hub { margin-top:-34px; }
  .hm-account-auth-card { padding:28px 0; }
  .hm-account-setup-card { padding:28px; }
  .hm-account-identity { grid-template-columns:minmax(0,1fr) auto auto; padding:20px 22px; }
  .hm-account-identity dl { display:flex; gap:8px; }
  .hm-account-identity dl div { min-width:92px; border-left:1px solid rgba(184,191,195,.14); padding-left:12px; }
  .hm-account-identity dt { color:#737c7f; font-size:8px; }
  .hm-account-identity dd { margin:3px 0 0; color:#bfc5c7; font-size:10px; }
  .hm-account-identity-actions { grid-column:3; }
  .hm-account-panel { padding:21px 22px; }
  .hm-account-order-preview { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .hm-account-order-preview article { grid-template-columns:1fr; }
  .hm-account-order-preview article > span { grid-row:auto; }
  .hm-account-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

/* Half-screen cinematic menu and latest-story type hierarchy. */
.hm-menu-backdrop {
  position:fixed;
  z-index:99;
  inset:0;
  border:0;
  padding:0;
  background:rgba(0,0,0,.2);
  opacity:0;
  -webkit-backdrop-filter:blur(11px) saturate(.72);
  backdrop-filter:blur(11px) saturate(.72);
  transition:opacity 420ms ease;
}
.hm-menu-backdrop[hidden] { display:none; }
.hm-menu-backdrop.is-open { opacity:1; }
.hm-menu {
  inset:0 auto 0 auto;
  right:max(0px,calc((100vw - 1280px) / 2));
  width:min(50vw,640px);
  box-sizing:border-box;
  padding:92px 38px 40px;
  background:linear-gradient(90deg,rgba(0,0,0,.5),rgba(0,0,0,.3));
  box-shadow:-18px 0 54px rgba(0,0,0,.38);
  -webkit-backdrop-filter:blur(20px);
  backdrop-filter:blur(20px);
  transform:translate3d(100%,0,0);
  transition:transform 520ms cubic-bezier(.22,.78,.2,1);
  will-change:transform;
}
.hm-menu.is-open { transform:translate3d(0,0,0); }
.hm-menu-primary { width:min(100%,430px); }
.hm-menu-primary li a,
.hm-menu-primary li a:hover,
.hm-menu-primary li a:focus-visible,
.hm-menu-primary li a[aria-current="page"] {
  min-height:64px;
  display:grid;
  grid-template-columns:6px minmax(0,1fr);
  align-items:center;
  column-gap:14px;
  padding:15px 2px;
  background:none;
  font-size:clamp(19px,1.7vw,22px);
}
.hm-menu-primary li a::before,
.hm-menu-primary li a::after { display:none; }
.hm-menu-copy {
  min-width:0;
  display:flex;
  align-items:baseline;
  gap:10px;
}
.hm-menu-copy > span { color:inherit; }
.hm-menu-copy > small {
  color:rgba(183,194,200,.52);
  font:400 9px/1 var(--sans);
  letter-spacing:.2em;
  white-space:nowrap;
}
.hm-menu-glow-point {
  width:4px;
  height:4px;
  display:block;
  border-radius:50%;
  background:#e8eef1;
  box-shadow:0 0 4px rgba(241,247,250,.96),0 0 10px rgba(184,210,224,.72),0 0 18px rgba(145,183,203,.34);
  animation:hm-menu-point-breathe 2.1s ease-in-out infinite;
}
@keyframes hm-menu-point-breathe {
  0%,100% { opacity:.48; transform:scale(.78); filter:brightness(.86); }
  50% { opacity:1; transform:scale(1.18); filter:brightness(1.3); }
}
@media (max-width:599px) {
  .hm-menu {
    right:0;
    width:70vw;
    padding:84px 18px 34px;
  }
  .hm-menu-close { right:16px; top:14px; }
  .hm-menu-primary li a,
  .hm-menu-primary li a:hover,
  .hm-menu-primary li a:focus-visible,
  .hm-menu-primary li a[aria-current="page"] {
    min-height:62px;
    column-gap:11px;
    padding-block:14px;
    font-size:19px;
  }
  .hm-menu-copy { gap:7px; }
  .hm-menu-copy > small { font-size:7.5px; letter-spacing:.14em; }
}

@media (prefers-reduced-motion:reduce) {
  .hm-menu-glow-point { animation:none; }
  .hm-menu,
  .hm-menu-backdrop { transition-duration:1ms; }
}
@keyframes hm-matte-silver-pass { 0%,72%,100% { transform:translateX(-115%); opacity:0; } 78% { opacity:.82; } 90% { transform:translateX(115%); opacity:.55; } 94% { opacity:0; } }
@keyframes hm-follow-confirm { 0% { transform:scale(.985); filter:saturate(.72) brightness(.78); } 55% { transform:scale(1.008); filter:saturate(.72) brightness(.98); } 100% { transform:scale(1); filter:saturate(.72) brightness(.88); } }
@keyframes hm-follow-instant-sweep { 0% { opacity:1; transform:translateX(-55%); } 82% { opacity:1; } 100% { opacity:0; transform:translateX(55%); } }
@keyframes hm-member-rank-sweep { 0%,62%,100% { left:-45%; opacity:0; } 70% { opacity:.9; } 88% { left:115%; opacity:.45; } 94% { opacity:0; } }
@keyframes hm-member-rank-glow { 0%,100% { filter:brightness(.88); } 50% { filter:brightness(1.18); } }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

.hm-tg-bind-modal[hidden] { display:none; }
.hm-tg-bind-modal { position:fixed; z-index:132; inset:0; display:grid; place-items:center; padding:24px; }
.hm-tg-bind-backdrop { position:absolute; inset:0; border:0; background:rgba(0,0,0,.84); -webkit-backdrop-filter:blur(7px); backdrop-filter:blur(7px); }
.hm-tg-bind-modal > section { position:relative; width:min(100%,390px); border:1px solid rgba(218,185,103,.28); padding:25px 22px 22px; background:linear-gradient(145deg,#14191a,#060809 72%); box-shadow:0 24px 70px rgba(0,0,0,.75),0 0 24px rgba(182,122,50,.08); }
.hm-tg-bind-modal h2 { margin:7px 0 10px; color:#e4e8e9; font:700 24px/1.3 var(--serif); }
.hm-tg-bind-modal p { margin:0 0 19px; color:#929b9e; font-size:11px; line-height:1.8; }
.hm-tg-bind-modal > section > a,.hm-telegram-group-entry { min-height:44px; display:grid; place-items:center; border:1px solid rgba(218,185,103,.42); color:#fdf7dd; background:linear-gradient(135deg,rgba(145,94,35,.3),rgba(31,22,13,.84)); font:700 13px/1 var(--serif); }
.hm-tg-bind-close { position:absolute; top:9px; right:10px; width:34px; height:34px; border:0; color:#9ba5a8; background:transparent; font-size:24px; }
.hm-account-telegram-panel { min-height:330px; }
.hm-telegram-benefits { border:1px solid rgba(205,169,87,.18); padding:15px; background:linear-gradient(135deg,rgba(83,57,27,.18),rgba(255,255,255,.012)); }
.hm-telegram-benefits > strong { color:#fdf7dd; font:700 14px/1.4 var(--serif); }
.hm-telegram-benefits ul { display:grid; gap:7px; margin:11px 0 0; padding-left:19px; color:#8f999b; font-size:10px; line-height:1.65; }
.hm-telegram-bound-card { display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:11px; margin-top:14px; border:1px solid rgba(205,169,87,.22); padding:13px; background:#080b0c; }
.hm-telegram-bound-card > span { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; color:#e7ca7d; background:#3f2c18; }
.hm-telegram-bound-card svg { width:20px; height:20px; fill:currentColor; }
.hm-telegram-bound-card div { display:grid; gap:3px; }
.hm-telegram-bound-card small { color:#687376; font-size:9px; }
.hm-telegram-bound-card strong { overflow:hidden; color:#dce5e5; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
.hm-telegram-bound-card > b { color:#fdf7dd; font-size:10px; }
.hm-telegram-login-widget { position:relative; width:min(calc(100% - 20px),300px); min-height:42px; display:grid; margin:15px auto 0; overflow:hidden; }
.hm-telegram-login-widget .hm-telegram-bind-visual { grid-area:1/1; width:100%; }
.hm-telegram-login-widget iframe { position:absolute !important; z-index:2; inset:0; width:100% !important; height:100% !important; opacity:.01; cursor:pointer; }
.hm-telegram-bind-visual { width:min(calc(100% - 20px),300px); margin-inline:auto; }
.hm-telegram-bind-visual:disabled { opacity:1; cursor:not-allowed; }
.hm-telegram-bind-link.is-bound,.hm-telegram-bind-visual.is-bound { cursor:default; }
.hm-telegram-benefits-action { margin-top:14px; border-top:1px solid rgba(171,177,180,.16); padding-top:14px; }
.hm-telegram-benefits-action .hm-telegram-login-widget { margin-top:0; }
.hm-account-optional-telegram { display:grid; gap:9px; border-top:1px solid rgba(184,191,195,.15); border-bottom:1px solid rgba(184,191,195,.1); padding:14px 0; }
.hm-account-optional-telegram > div:first-child { display:flex; align-items:baseline; justify-content:space-between; gap:10px; }
.hm-account-optional-telegram > div:first-child strong { color:#d6dcde; font:700 14px/1.4 var(--serif); }
.hm-account-optional-telegram > div:first-child small,.hm-account-optional-telegram > small { color:#747d80; font-size:9px; line-height:1.55; }
.hm-account-optional-telegram .hm-telegram-login-widget { margin-top:0; }
.hm-telegram-bind-note { display:block; margin-top:8px; color:#727d80; font-size:9px; line-height:1.6; }
.hm-telegram-bind-message { margin:13px 0 0; border:1px solid rgba(205,169,87,.2); padding:9px 11px; font-size:10px; }
.hm-telegram-bind-message.is-success { color:#fdf7dd; background:rgba(133,84,32,.12); }
.hm-telegram-bind-message.is-error { color:#dc9296; background:rgba(133,54,58,.12); }
.hm-telegram-group-entry { margin-top:12px; }
.hm-account-security-item { border-top:1px solid rgba(184,191,195,.15); }
.hm-account-security-item:last-child { border-bottom:1px solid rgba(184,191,195,.1); }
.hm-account-security-item > summary { min-height:52px; display:flex; align-items:center; justify-content:space-between; gap:14px; color:#d6dbdd; cursor:pointer; list-style:none; font:700 15px/1.4 var(--serif); }
.hm-account-security-item > summary::-webkit-details-marker { display:none; }
.hm-account-security-item > summary::after { content:"＋"; flex:0 0 auto; color:#929a9d; font:400 18px/1 var(--serif); }
.hm-account-security-item[open] > summary::after { content:"－"; }
.hm-account-security-body { display:grid; gap:14px; padding:0 0 16px; }
.hm-account-security-body > p,.hm-account-telegram-change p { margin:0; color:#81898c; font-size:10px; line-height:1.65; }
.hm-account-telegram-change strong { color:#d6dbdd; font:700 15px/1.4 var(--serif); }
.hm-account-telegram-change form { display:grid; gap:9px; }
.hm-account-telegram-change label { color:#b8bec0; font:700 11px/1.4 var(--serif); }
.hm-account-telegram-change textarea { min-height:86px; resize:vertical; border:1px solid rgba(190,198,201,.2); border-radius:0; padding:10px; color:#d8dcde; background:rgba(2,3,4,.48); outline:0; font:400 12px/1.65 var(--serif); }
.hm-account-telegram-change textarea:focus { border-color:rgba(207,216,219,.5); box-shadow:0 0 7px rgba(226,233,236,.08); }
.hm-account-telegram-change form .hm-account-primary { width:max-content; min-width:150px; height:38px; padding:0 18px; font:700 13px/1 var(--serif); }
.hm-account-telegram-change form > p { min-height:17px; }
.hm-account-telegram-change-pending { display:grid; gap:5px; border:1px solid rgba(184,191,195,.16); padding:12px; background:rgba(255,255,255,.018); }

/* v1.3.99 requested page interactions */
.hm-story-cover-content { z-index:4; pointer-events:none; }
.hm-story-cover-content a,.hm-story-cover-content button,.hm-story-cover-content form,.hm-story-cover-content label,.hm-story-cover-content input,.hm-story-cover-content select { pointer-events:auto; }
.hm-story-cover-content .hm-archive-top,.hm-story-cover-content .hm-story-controls { position:relative; z-index:4; }
.hm-story-cover-content .hm-story-controls { position:absolute; }
.hm-story-cover-content .hm-story-controls { pointer-events:none; }
.hm-story-cover-content .hm-story-controls > * { pointer-events:auto; }
.hm-story-book-ink-zone { position:absolute; z-index:2; left:9%; right:5%; top:8%; bottom:calc(100% - 181.5px); overflow:hidden; border:0; padding:0; color:transparent; background:transparent; clip-path:polygon(0 18%,42% 0,100% 8%,98% 100%,50% 95%,8% 88%); cursor:crosshair; }
.hm-story-book-ink-zone:focus { outline:none; }
.hm-story-book-ink-zone:focus-visible { outline:1px solid rgba(218,224,226,.22); outline-offset:-5px; }
.hm-story-book-ink-zone > span { position:absolute; inset:0; pointer-events:none; }
.hm-story-ink { position:absolute; width:54px; height:45px; margin:-22px 0 0 -27px; border-radius:47% 53% 42% 58% / 55% 39% 61% 45%; opacity:0; background:radial-gradient(ellipse at 47% 51%,rgba(0,0,0,.94) 0 18%,rgba(1,1,1,.82) 32%,rgba(3,3,3,.58) 48%,rgba(2,2,2,.18) 66%,transparent 72%); filter:blur(.35px); mix-blend-mode:multiply; transform:scale(.18) rotate(var(--ink-rotation,0deg)); animation:hm-story-ink-fade 1.35s ease-out forwards; }
.hm-story-ink::before,.hm-story-ink::after { content:""; position:absolute; border-radius:50%; background:#020202; opacity:.72; }
.hm-story-ink::before { width:7px; height:5px; left:-7px; top:8px; box-shadow:46px 34px 0 -1px rgba(0,0,0,.72),58px 17px 0 -2px rgba(0,0,0,.7),17px -8px 0 -2px rgba(0,0,0,.66); }
.hm-story-ink::after { width:3px; height:11px; left:38px; top:37px; transform:rotate(18deg); }
@keyframes hm-story-ink-fade { 0%{opacity:0;transform:scale(.18) rotate(var(--ink-rotation,0deg))} 16%{opacity:.92;transform:scale(1.08) rotate(var(--ink-rotation,0deg))} 45%{opacity:.72;transform:scale(1) rotate(var(--ink-rotation,0deg))} 100%{opacity:0;transform:scale(1.14) rotate(var(--ink-rotation,0deg));filter:blur(1.1px)} }

.home .hm-latest { padding-bottom:38px; }
.home .hm-prologue { padding-bottom:16px; }
.home .hm-prologue-dots { margin-top:10px !important; margin-bottom:12px; }
.home .hm-prologue-copy > strong { margin-bottom:12px; }
.home .hm-prologue-final { font-size:clamp(11px,3.33vw,13px); }
.home .hm-prologue-final-line { display:block; white-space:nowrap; }
.home .hm-prologue-final strong { display:inline; margin:0; color:#d8dbde; font-size:inherit; font-weight:600; line-height:inherit; }

/* Homepage latest stories: one continuous editorial composition */
.home .hm-latest { background:linear-gradient(180deg,#050505 0%,#080808 48%,#050505 100%); }
.hm-story-dynamic { overflow:hidden; background:linear-gradient(180deg,transparent 0%,rgba(7,7,7,.52) 58%,#070707 100%); }
.hm-story-dynamic-grid { display:grid; grid-template-columns:minmax(0,1.85fr) minmax(330px,1fr); align-items:stretch; gap:44px; }
.hm-story-dynamic-feature { min-width:0; }
.hm-story-dynamic-feature .hm-feature-media { width:100%; height:auto; min-height:0; aspect-ratio:16/9; border:0; background:#080808; box-shadow:none; }
.hm-story-dynamic-feature .hm-feature-media > img { object-fit:cover; }
.hm-story-dynamic-feature .hm-feature-media::after { height:52%; background:linear-gradient(180deg,transparent,rgba(2,3,4,.72)); }
.hm-story-dynamic-feature .hm-media-overlay { background:linear-gradient(180deg,rgba(0,0,0,.04) 42%,rgba(0,0,0,.62) 100%); }
.hm-story-feature-label { position:absolute; z-index:4; right:30px; bottom:28px; left:30px; color:#e1e3e5; font:500 38px/1.25 var(--serif); letter-spacing:.055em; text-shadow:0 2px 14px rgba(0,0,0,.72); }
.hm-story-unlock-meta b,.hm-story-previous a > b { border:1px solid rgba(210,215,220,.2); border-radius:2px; padding:4px 8px; color:#9da2a7; font:400 15px/1.15 var(--sans); letter-spacing:.08em; }
.hm-story-dynamic-side { min-width:0; display:block; border:0; }
.hm-story-unlock { position:relative; height:100%; display:grid; align-content:center; gap:16px; border:0; padding:24px 0; background:transparent; }
.hm-story-unlock-meta { display:flex; align-items:center; gap:14px; color:#b9bec3; font:400 16px/1.3 var(--serif); letter-spacing:.085em; }
.hm-story-unlock h3 { margin:0; color:#d6d9dc; font:500 31px/1.4 var(--serif); letter-spacing:.04em; }
.hm-story-unlock > p.hm-story-unlock-note { margin:0 0 4px; color:#a6abb0; font-size:16px; font-weight:400; line-height:1.7; letter-spacing:.04em; }
.hm-story-unlock-progress-copy { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:2px; color:#b6bbc0; font-size:17px; line-height:1.35; letter-spacing:.03em; }
.hm-story-unlock-progress-copy b { color:#b6bbc0; font-weight:400; }
.hm-story-unlock-progress { height:2px; overflow:hidden; border-radius:0; background:rgba(255,255,255,.08); }
.hm-story-unlock-progress i { display:block; height:100%; background:#aeb4b9; box-shadow:none; }
.hm-story-unlock-cta,.hm-story-support-cta { width:176px; min-height:49px; display:grid; grid-template-columns:1fr; align-items:center; justify-self:start; gap:0; margin-top:4px; border:1px solid rgba(215,220,225,.42); border-radius:2px; padding:0 15px; color:#d9dcdf; background:rgba(12,12,13,.55); font:400 18px/1.2 var(--serif); letter-spacing:.08em; cursor:pointer; transition:border-color .22s ease,color .22s ease,background-color .22s ease; }
.hm-story-unlock-cta { width:100%; }
.hm-story-unlock-cta:hover,.hm-story-unlock-cta:focus-visible,.hm-story-support-cta:hover,.hm-story-support-cta:focus-visible { border-color:rgba(225,228,232,.62); color:#e1e3e5; background-color:rgba(16,16,17,.62); outline:0; }
.hm-story-unlock-cta:disabled,.hm-story-support-cta:disabled { cursor:wait; opacity:.58; }
.hm-story-unlock-cta span,.hm-story-support-cta span { text-align:center; }
.hm-story-action-message { min-height:16px; margin:0; color:#858b91; font-size:14px; line-height:1.4; }
.hm-story-action-message:empty { display:none; }
.hm-story-previous { position:relative; display:grid; align-content:stretch; padding:32px 0 20px; }
.hm-story-previous a:not(.hm-story-view-all) { display:grid; grid-template-columns:76px 118px minmax(0,1fr); grid-template-areas:"number status title"; align-items:center; gap:8px 0; min-height:64px; border-bottom:1px solid rgba(255,255,255,.07); padding:0 130px 0 10px; background:transparent; transition:color .22s ease; }
.hm-story-previous a:not(.hm-story-view-all):hover,.hm-story-previous a:not(.hm-story-view-all):focus-visible { outline:0; }
.hm-story-previous a:not(.hm-story-view-all):hover > span,.hm-story-previous a:not(.hm-story-view-all):hover > b,.hm-story-previous a:not(.hm-story-view-all):hover > strong,.hm-story-previous a:not(.hm-story-view-all):focus-visible > span,.hm-story-previous a:not(.hm-story-view-all):focus-visible > b,.hm-story-previous a:not(.hm-story-view-all):focus-visible > strong { color:#d5d8db; }
.hm-story-previous a > span { grid-area:number; color:#989ea4; font:400 16px/1.2 var(--serif); letter-spacing:.08em; }
.hm-story-previous a > b { grid-area:status; justify-self:start; }
.hm-story-previous a > strong { grid-area:title; overflow:hidden; color:#cfd2d5; font:500 21px/1.4 var(--serif); letter-spacing:.035em; text-overflow:ellipsis; white-space:nowrap; }
.hm-story-view-all { position:absolute; right:10px; bottom:33px; color:#989ea4; font:400 16px/1.4 var(--serif); letter-spacing:.08em; transition:color .22s ease; }
.hm-story-view-all:hover,.hm-story-view-all:focus-visible { color:#d5d8db; outline:0; }
.hm-story-support { position:relative; isolation:isolate; min-height:190px; display:grid; grid-template-columns:minmax(250px,1fr) 190px; align-items:center; gap:32px; margin-top:0; border:0; padding:36px 20px; overflow:hidden; background:none; }
.hm-story-support::after { content:none; }
.hm-story-support-intro { min-width:0; display:grid; gap:4px; }
.hm-story-support-intro h3 { margin:0 0 5px; color:#d6d9dc; font:500 22px/1.35 var(--serif); letter-spacing:.06em; }
.hm-story-support-intro h3::after { content:none; }
.hm-story-support-intro p { margin:0; color:#8e949a; font-size:14px; line-height:1.65; letter-spacing:.035em; }
.hm-story-support-amounts { display:flex; flex-wrap:wrap; gap:8px; }
.hm-story-support-amounts button { min-width:88px; height:44px; border:1px solid rgba(210,215,220,.3); border-radius:2px; padding:0 11px; color:#bfc3c7; background:rgba(8,8,8,.35); font:400 16px/1 var(--serif); cursor:pointer; transition:border-color .2s ease,color .2s ease,background-color .2s ease; }
.hm-story-support-amounts button:hover,.hm-story-support-amounts button:focus-visible { border-color:rgba(225,228,232,.6); color:#d9dcdf; background:rgba(255,255,255,.035); outline:0; }
.hm-story-support-amounts button.is-selected { border-color:rgba(225,228,232,.52); color:#e0e2e4; background:rgba(255,255,255,.05); }
.hm-story-support-cta { width:190px; min-width:0; margin:0; }
.hm-story-support > .hm-story-action-message { display:none; }

@media (max-width:599px) {
  .hm-home-overview { grid-template-columns:minmax(0,3fr) minmax(0,2fr); }
  .home .hm-prologue-copy { color:#adb1b6; }
  .home .hm-prologue-copy > strong { color:#d0d3d6; font-weight:500; }
  .home .hm-prologue-final strong { color:#e0e2e4; font-weight:600; }
  .home .hm-latest { padding:28px var(--page) 30px; }
  .hm-story-dynamic-grid { display:flex; flex-direction:column; gap:0; }
  .hm-story-dynamic-feature .hm-feature-media { width:100%; height:auto; min-height:0; aspect-ratio:16/9; }
  .hm-story-feature-label { right:18px; bottom:17px; left:18px; font-size:30px; line-height:1.25; letter-spacing:.07em; }
  .hm-story-dynamic-side { border-top:0; border-left:0; }
  .hm-story-unlock { height:auto; gap:14px; padding:28px 12px 30px; }
  .hm-story-unlock-meta { font-size:15px; }
  .hm-story-unlock h3 { font-size:24px; }
  .hm-story-unlock > p.hm-story-unlock-note { margin:1px 0 5px; font-size:16px; }
  .hm-story-unlock-progress-copy { font-size:15px; }
  .hm-story-unlock-cta { width:100%; min-height:51px; }
  .hm-story-previous { padding:2px 12px 20px; }
  .hm-story-previous a:not(.hm-story-view-all) { grid-template-columns:48px 70px minmax(0,1fr); grid-template-areas:"number status title"; gap:0 8px; min-height:62px; padding:18px 0; }
  .hm-story-previous a > span,.hm-story-previous a > b { font-size:14px; }
  .hm-story-previous a > strong { font-size:18px; }
  .hm-story-view-all { position:static; justify-self:end; margin-top:12px; font-size:14px; }
  .hm-story-support { min-height:0; grid-template-columns:1fr; gap:20px; padding:30px 12px 28px; background:none; }
  .hm-story-support-intro h3 { font-size:22px; }
  .hm-story-support-intro h3::after { content:none; }
  .hm-story-support-intro p { font-size:14px; }
  .hm-story-support-amounts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
  .hm-story-support-amounts button { min-width:0; height:48px; font-size:16px; }
  .hm-story-support-cta { width:100%; min-width:0; min-height:51px; }
  .hm-story-support > .hm-story-action-message { display:block; }
}
@media (min-width:900px) {
  .home .hm-main > .hm-latest { width:min(100%,1180px); padding:64px clamp(36px,4.5vw,62px) 56px; }
  .home .hm-main > .hm-prologue { width:100%; display:grid; grid-template-columns:minmax(0,3fr) minmax(360px,2fr); align-items:stretch; padding-inline:0; }
  .home .hm-prologue-gallery { width:100%; aspect-ratio:16/9; align-self:center; }
  .home .hm-prologue-content { display:flex; flex-direction:column; justify-content:center; min-width:0; padding:clamp(26px,3.5vw,58px) clamp(32px,4.5vw,72px); }
  .home .hm-prologue .hm-section-heading,
  .home .hm-prologue .hm-prologue-copy { width:100%; margin-inline:0; }
}

.home .hm-site-footer { padding-top:8px; padding-bottom:8px; }
.home .hm-site-footer strong { color:#858d90; font-weight:600; }
.home .hm-site-footer p { margin:0; }
.home .hm-site-footer > * + * { margin-top:0; }

.hm-qa-page .hm-story-controls { z-index:6; }
.hm-qa-page .hm-qa-explorer { margin:-165px 0 0; }
.hm-qa-candle-scene { position:absolute; z-index:3; inset:0; overflow:hidden; pointer-events:none; touch-action:none; }
.hm-qa-candle-scene > img,.hm-qa-candle-drag { position:absolute; margin:0; }
.hm-qa-ecup-reveal { position:absolute; z-index:4; display:block; opacity:0; object-fit:contain; pointer-events:none; filter:contrast(1.12); transition:opacity .12s ease; }
.hm-qa-candle-light { position:absolute; z-index:2; inset:0; opacity:0; pointer-events:none; background:radial-gradient(circle var(--hm-qa-light-radius,112px) at var(--hm-qa-light-x,10%) var(--hm-qa-light-y,48%),rgba(255,237,196,.56) 0%,rgba(238,207,151,.32) 28%,rgba(174,134,78,.14) 53%,transparent 80%); mix-blend-mode:screen; filter:saturate(1.08); transition:opacity .18s ease; }
.hm-qa-candle-drag { z-index:3; border:0; padding:0; background:transparent; cursor:grab; pointer-events:auto; touch-action:none; }
.hm-qa-candle-drag img { display:block; width:100%; height:100%; opacity:0; object-fit:fill; pointer-events:none; }
.hm-qa-candle-scene.is-ready .hm-qa-candle-drag img { opacity:1; }
.hm-qa-candle-scene.is-dragging .hm-qa-candle-light { opacity:1; }
.hm-qa-candle-scene.is-dragging .hm-qa-candle-drag { cursor:grabbing; }
.hm-qa-candle-scene.is-returning .hm-qa-candle-drag { transition:left .46s cubic-bezier(.2,.72,.2,1),top .46s cubic-bezier(.2,.72,.2,1); }

.hm-shop-explorer { margin:-185px 0 0; padding-bottom:42px; }
.hm-shop-explorer .hm-qa-rail { justify-content:center; overflow:visible; }
.hm-shop-explorer .hm-qa-card { flex-basis:162px; }
.hm-shop-explorer .hm-qa-card-title { overflow:visible; text-align:center; white-space:normal; }
.hm-shop-explorer .hm-qa-detail { max-width:360px; margin-inline:auto; }

@media (prefers-reduced-motion:reduce) {
  .hm-story-ink { animation-duration:.35s; }
}

/* Homepage story editorial block: visually continuous with the cover and preface. */
.hm-header-auth-status { display:inline-flex; align-items:center; min-height:36px; padding:7px 0; color:#cbd0d2; font:400 12px/1 var(--serif); letter-spacing:.07em; white-space:nowrap; }
.home .hm-latest { color:#a8adb2; background:#050505; }
.home .hm-story-dynamic { overflow:visible; background:transparent; }
.home .hm-story-dynamic-grid { gap:clamp(30px,3.2vw,44px); }
.home .hm-story-dynamic-feature .hm-feature-media { border:0; }
.home .hm-story-feature-label { color:#e2e4e6; font-weight:600; text-shadow:0 2px 16px rgba(0,0,0,.78); }
.home .hm-story-unlock { gap:14px; color:#a8adb2; }
.home .hm-story-unlock-meta { color:#b9bec3; font-family:var(--serif); }
.home .hm-story-unlock-meta b,
.home .hm-story-previous a > b { border-color:rgba(210,215,220,.28); border-radius:3px; color:#a8adb2; background:transparent; font-family:var(--serif); font-weight:400; }
.home .hm-story-unlock h3 { color:#e2e4e6; font-weight:600; }
.home .hm-story-unlock > p.hm-story-unlock-note,
.home .hm-story-support-intro p { color:#a8adb2; font-family:var(--sans); font-weight:400; line-height:1.9; }
.home .hm-story-unlock-progress-copy { color:#b9bec3; font-family:var(--serif); }
.home .hm-story-unlock-progress-copy b { color:#b9bec3; font-family:inherit; }
.home .hm-story-unlock-progress { height:3px; background:rgba(255,255,255,.1); }
.home .hm-story-unlock-progress i { background:#c4c9cc; }
.home .hm-story-support-amounts { gap:9px; }
.home .hm-story-support-amounts button,
.home .hm-story-unlock-cta,
.home .hm-story-support-cta { border:1px solid rgba(215,220,225,.38); border-radius:2px; color:#d3d6d9; background:rgba(5,5,5,.34); box-shadow:none; font-family:var(--serif); font-weight:400; }
.home .hm-story-unlock-meta b,
.home .hm-story-previous a > b,
.home .hm-story-support-amounts button,
.home .hm-story-view-all { font-family:var(--sans) !important; }
.home .hm-story-support-amounts button:hover,
.home .hm-story-support-amounts button:focus-visible,
.home .hm-story-support-amounts button.is-selected,
.home .hm-story-unlock-cta:hover,
.home .hm-story-unlock-cta:focus-visible,
.home .hm-story-support-cta:hover,
.home .hm-story-support-cta:focus-visible { border-color:rgba(232,235,237,.62); color:#eef0f1; background:rgba(255,255,255,.035); outline:0; }
.home .hm-story-previous { gap:0; border-top:0; padding:14px 0 12px; background:linear-gradient(180deg,rgba(215,220,224,.026),rgba(215,220,224,.009) 58%,transparent 100%); }
.home .hm-story-previous a:not(.hm-story-view-all) { min-height:52px; border-bottom:0; }
.home .hm-story-previous a:not(.hm-story-view-all):first-child { opacity:.82; }
.home .hm-story-previous a:not(.hm-story-view-all):nth-child(2) { opacity:.62; }
.home .hm-story-previous a > span,
.home .hm-story-view-all { color:#a8adb2; }
.home .hm-story-previous a > strong { color:#d2d5d8; font-weight:500; }
.home .hm-story-support { border-top:0; border-bottom:1px solid rgba(255,255,255,.08); }
.home .hm-story-support-intro h3 { color:#e2e4e6; font-size:25px; font-weight:600; }

@media (min-width:900px) {
  .home .hm-main > .hm-latest { width:100%; padding:64px 32px 56px; }
  .home .hm-story-unlock { padding-block:18px; }
  .home .hm-story-support { padding-inline:18px; }
}

@media (max-width:599px) {
  .home .hm-latest { padding:38px var(--page) 30px; }
  .home .hm-story-dynamic-grid { gap:0; }
  .home .hm-story-dynamic-feature { display:block; line-height:0; }
  .home .hm-story-dynamic-feature .hm-feature-media { border:0; }
  .home .hm-story-feature-label { font-size:29px; }
  .home .hm-story-unlock { gap:10px; padding:14px 10px 20px; }
  .home .hm-story-unlock h3 { font-size:24px; line-height:1.3; }
  .home .hm-story-unlock > p.hm-story-unlock-note { margin:0 0 2px; font-size:13px; line-height:1.55; }
  .home .hm-story-unlock-progress-copy { font-size:13px; }
  .home .hm-story-support-amounts button,
  .home .hm-story-unlock-cta,
  .home .hm-story-support-cta { font-size:15px; }
  .home .hm-story-previous { gap:0; border-top:0; padding:0 10px 10px; background:linear-gradient(180deg,rgba(215,220,224,.026),rgba(215,220,224,.009) 58%,transparent 100%); }
  .home .hm-story-previous a:not(.hm-story-view-all) { min-height:46px; border-bottom:0; padding:8px 0; }
  .home .hm-story-previous a:not(.hm-story-view-all):first-child { opacity:.78; }
  .home .hm-story-previous a:not(.hm-story-view-all):nth-child(2) { opacity:.56; }
  .home .hm-story-previous a > span,
  .home .hm-story-previous a > b { color:#92979b; }
  .home .hm-story-previous a > strong { color:#b9bdc0; font-size:17px; }
  .home .hm-story-view-all { margin-top:2px; padding:7px 0 2px; color:#92979b; opacity:.68; }
  .home .hm-story-support { gap:18px; padding:28px 0; }
  .home .hm-story-support-intro h3 { font-size:24px; }
  .home .hm-story-support-intro p { font-size:13px; line-height:1.55; }
}

/* Homepage story preface: cinematic editorial card. */
.home .hm-main > .hm-prologue {
  position:relative;
  isolation:isolate;
  display:block;
  width:calc(100% - 40px);
  margin:48px auto 28px;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(224,225,221,.28);
  border-radius:0 0 10px 10px;
  background:#050505;
}
.home .hm-prologue-gallery {
  position:relative;
  width:100%;
  aspect-ratio:4 / 3;
  overflow:hidden;
}
.home .hm-prologue-gallery::after {
  position:absolute;
  inset:0;
  content:"";
  pointer-events:none;
  background:
    linear-gradient(180deg,#050505 0%,rgba(5,5,5,.05) 15%,transparent 36%,rgba(5,5,5,.3) 68%,#050505 100%),
    linear-gradient(90deg,rgba(5,5,5,.15),transparent 18% 82%,rgba(5,5,5,.15));
  box-shadow:none;
}
.home .hm-prologue-gallery img.hm-prologue-image {
  width:100%;
  height:100%;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:center;
  background:#050505;
}
.home .hm-prologue-content {
  position:relative;
  z-index:2;
  display:block;
  margin-top:-82px;
  padding:0 26px 24px;
  background:linear-gradient(180deg,transparent 0,#050505 82px,#050505 100%);
}
.home .hm-prologue .hm-section-heading,
.home .hm-prologue .hm-prologue-copy {
  width:100%;
  margin-inline:0;
}
.home .hm-prologue .hm-section-heading {
  display:block;
  margin:0 0 28px;
}
.home .hm-prologue .hm-section-heading::after { display:none; }
.home .hm-prologue .hm-section-heading h2 {
  margin:0;
  color:#e7e3dd;
  font-family:var(--serif);
  font-size:clamp(32px,9.2vw,39px);
  font-weight:500;
  line-height:1.2;
  letter-spacing:.07em;
  text-shadow:0 2px 18px rgba(0,0,0,.85);
}
.home .hm-prologue .hm-section-heading h2 span { display:block; }
.home .hm-prologue-copy {
  padding:0;
  color:rgba(235,232,226,.78);
  font-family:var(--sans);
  font-size:13.5px;
  font-weight:400;
  line-height:1.72;
  letter-spacing:.035em;
}
.home .hm-prologue-copy > .hm-prologue-opening {
  display:block;
  margin:0 0 16px;
  color:rgba(235,232,226,.84);
  font-family:var(--sans);
  font-size:14.5px;
  font-weight:400;
  line-height:1.72;
}
.home .hm-prologue-term {
  display:grid;
  grid-template-columns:80px minmax(0,1fr);
  align-items:center;
  margin:0 0 16px;
  padding:9px 10px;
  border:1px solid rgba(224,225,221,.27);
  border-radius:6px;
  color:rgba(235,232,226,.78);
}
.home .hm-prologue-term > div {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:42px;
  border-right:1px solid rgba(224,225,221,.24);
}
.home .hm-prologue-term strong {
  color:#e7e3dd;
  font-family:var(--serif);
  font-size:20px;
  font-weight:500;
  line-height:1.1;
  letter-spacing:.08em;
}
.home .hm-prologue-term small {
  margin-top:4px;
  color:rgba(235,232,226,.64);
  font-family:var(--sans);
  font-size:8px;
  line-height:1;
  letter-spacing:.2em;
}
.home .hm-prologue-term p {
  margin:0;
  padding-left:13px;
  font-size:12px;
  line-height:1.58;
}
.home .hm-prologue-copy > p { margin:0 0 13px; }
.home .hm-prologue-copy > .hm-prologue-final { margin-bottom:4px; }
.home .hm-prologue-ellipsis {
  display:flex;
  justify-content:center;
  gap:8px;
  margin:2px 0 5px;
}
.home .hm-prologue-ellipsis i {
  width:3px;
  height:3px;
  border-radius:50%;
  background:#e7e3dd;
}
.home .hm-prologue-copy > .hm-prologue-signoff {
  position:relative;
  margin:0;
  padding:4px 0 12px;
  color:#e7e3dd;
  font-family:var(--serif);
  font-size:14px;
  font-weight:500;
  text-align:center;
  letter-spacing:.12em;
}
.home .hm-prologue-signoff::before {
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  height:1px;
  content:"";
  background:linear-gradient(90deg,transparent,rgba(231,227,221,.18) 12%,rgba(231,227,221,.5) 50%,rgba(231,227,221,.18) 88%,transparent);
}
.home .hm-prologue-signoff::after {
  position:absolute;
  bottom:-4px;
  left:50%;
  width:9px;
  height:9px;
  content:"";
  background:#e7e3dd;
  box-shadow:0 0 8px rgba(238,207,158,.55);
  transform:translateX(-50%) rotate(45deg) scale(.48);
}

@media (min-width:900px) {
  .home .hm-main > .hm-prologue {
    width:100%;
    min-height:690px;
    margin:38px auto 28px;
    border-radius:0 0 10px 10px;
  }
  .home .hm-prologue-gallery {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    aspect-ratio:auto;
  }
  .home .hm-prologue-gallery::after {
    background:
      linear-gradient(180deg,#050505 0%,rgba(5,5,5,.02) 15%,transparent 40%,rgba(5,5,5,.2) 76%,#050505 100%),
      linear-gradient(90deg,rgba(5,5,5,.7) 0%,rgba(5,5,5,.42) 42%,rgba(5,5,5,.08) 72%,rgba(5,5,5,.04) 100%);
  }
  .home .hm-prologue-content {
    width:min(54%,640px);
    min-height:690px;
    margin:0;
    padding:170px 0 30px clamp(36px,3.8vw,56px);
    background:none;
  }
  .home .hm-prologue .hm-section-heading { margin-bottom:30px; }
  .home .hm-prologue .hm-section-heading h2 {
    font-size:clamp(38px,3.25vw,48px);
    line-height:1.15;
  }
  .home .hm-prologue-copy {
    max-width:570px;
    font-size:15px;
    line-height:1.7;
  }
  .home .hm-prologue-copy > .hm-prologue-opening {
    margin-bottom:16px;
    font-size:16px;
    line-height:1.65;
  }
  .home .hm-prologue-term {
    grid-template-columns:110px minmax(0,1fr);
    margin-bottom:16px;
    padding:10px 12px;
  }
  .home .hm-prologue-term strong { font-size:22px; }
  .home .hm-prologue-term p {
    padding-left:18px;
    font-size:14px;
    line-height:1.55;
  }
  .home .hm-prologue-copy > p { margin-bottom:12px; }
  .home .hm-prologue-copy > .hm-prologue-signoff {
    padding-bottom:13px;
    font-size:15px;
  }
}

/* Homepage support banner plaque placement. */
.home .hm-site-footer-banner-stage {
  width:100%;
  display:grid;
  flex:0 0 auto;
  align-items:center;
}
.home .hm-site-footer-banner-stage > .hm-site-footer-banner,
.home .hm-site-footer-banner-stage > .support-plaque-button { grid-area:1 / 1; }
.home .hm-site-footer-banner-stage > .support-plaque-button {
  z-index:2;
  justify-self:end;
  margin-right:clamp(52px,10vw,210px);
  top:-14px;
}

/* =========================================================
   HMULAN — 懸浮式冷銀金屬銘牌 CTA
   黑銀精品 / 電影感 / 煙燻冷銀 / 拉絲金屬
   ========================================================= */

.support-plaque-button {
  --plaque-w: 300px;
  --plaque-h: 58px;
  --plaque-radius: 5px;

  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: var(--plaque-w);
  height: var(--plaque-h);

  padding: 0 30px;
  border-radius: var(--plaque-radius);
  border: 1px solid rgba(220, 224, 226, 0.20);

  appearance: none;
  -webkit-appearance: none;

  overflow: hidden;
  isolation: isolate;

  cursor: pointer;
  user-select: none;
  -webkit-tap-highlight-color: transparent;

  /* 煙燻冷銀金屬 */
  background:
    linear-gradient(
      135deg,
      #313131 0%,
      #424041 18%,
      #767371 38%,
      #ada9a7 47%,
      #d9d7d8 50%,
      #f3f1f2 51%,
      #ada9a7 55%,
      #767371 68%,
      #424041 84%,
      #313131 100%
    );

  /* 金屬本體＋懸浮陰影 */
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    inset 0 -1px 0 rgba(0, 0, 0, 0.28),
    0 8px 22px rgba(0, 0, 0, 0.30);

  transform: translateY(0);
  filter: brightness(0.97);

  transition:
    transform 220ms cubic-bezier(.2, .7, .2, 1),
    filter 220ms ease,
    box-shadow 220ms ease,
    border-color 220ms ease;
}


/* =========================================================
   拉絲金屬紋理
   ========================================================= */

.support-plaque-button::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;

  border-radius: inherit;
  pointer-events: none;

  background:
    repeating-linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.004) 0px,
      rgba(255, 255, 255, 0.004) 1px,
      rgba(0, 0, 0, 0.003) 2px,
      rgba(0, 0, 0, 0.003) 3px
    );

  opacity: 0.18;
  filter: blur(1.2px);
  transform: scale(1.02);
}


/* =========================================================
   電影式冷白掃光
   ========================================================= */

.support-plaque-button::after {
  content: "";
  position: absolute;
  top: -20%;
  bottom: -20%;
  left: -45%;

  z-index: 1;

  width: 36%;
  pointer-events: none;

  background:
    linear-gradient(
      115deg,
      transparent 0%,
      rgba(255, 255, 255, 0.00) 30%,
      rgba(255, 255, 255, 0.04) 44%,
      rgba(255, 255, 255, 0.14) 50%,
      rgba(255, 255, 255, 0.04) 56%,
      rgba(255, 255, 255, 0.00) 70%,
      transparent 100%
    );

  filter: blur(2px);
  opacity: 0;

  transform: skewX(-14deg) translateX(-170%);
}


/* =========================================================
   文字
   ========================================================= */

.support-plaque-button__text {
  position: relative;
  z-index: 2;

  color: #121212;

  font-family: var(--serif);

  font-size: 30px;
  font-weight: 700;
  line-height: 1;

  letter-spacing: 0.06em;

  text-shadow:
    0 1px 0 rgba(255, 255, 255, 0.14),
    0 -1px 0 rgba(0, 0, 0, 0.18);

  transform: translateX(0.03em);
}


/* =========================================================
   Hover
   不整塊變白，只做非常克制的金屬反射
   ========================================================= */

@media (hover: hover) and (pointer: fine) {

  .support-plaque-button:hover {
    transform: translateY(0);
    filter: brightness(1);
  }

  .support-plaque-button:hover::after {
    opacity: 0.38;

    animation:
      hmulan-plaque-shine
      950ms
      cubic-bezier(.2, .7, .2, 1)
      forwards;
  }
}


/* =========================================================
   點擊
   像實體薄金屬牌被輕壓
   ========================================================= */

.support-plaque-button:active {
  transform: translateY(0) scale(0.985);
  filter: brightness(0.95);
}


/* =========================================================
   Keyboard focus
   ========================================================= */

.support-plaque-button:focus {
  outline: none;
}

.support-plaque-button:focus-visible {
  outline: none;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    inset 0 -1px 0 rgba(0, 0, 0, 0.28),
    0 8px 22px rgba(0, 0, 0, 0.30);
}


/* =========================================================
   掃光動畫
   ========================================================= */

@keyframes hmulan-plaque-shine {
  0% {
    transform: skewX(-14deg) translateX(-170%);
  }

  100% {
    transform: skewX(-14deg) translateX(520%);
  }
}


/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 768px) {

  .support-plaque-button {
    --plaque-w: 136px;
    --plaque-h: 36px;
    --plaque-radius: 4px;

    padding: 0 12px;

    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.22),
      inset 0 -1px 0 rgba(0, 0, 0, 0.28),
      0 8px 22px rgba(0, 0, 0, 0.30);
  }

  .support-plaque-button__text {
    font-size: 17px;
    letter-spacing: 0.06em;
  }
}


/* =========================================================
   小型手機
   ========================================================= */

@media (max-width: 390px) {

  .support-plaque-button {
    --plaque-w: 136px;
    --plaque-h: 36px;
  }

  .support-plaque-button__text {
    font-size: 17px;
  }
}


/* =========================================================
   Reduced motion
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .support-plaque-button {
    transition:
      filter 120ms ease,
      box-shadow 120ms ease;
  }

  .support-plaque-button:hover {
    transform: none;
  }

  .support-plaque-button::after {
    display: none;
  }
}

@media (max-width:768px) {
  .home .hm-site-footer-banner-stage > .support-plaque-button {
    margin-right:clamp(14px,5vw,28px);
    top:-7px;
  }
}

@media (max-width:389px) {
  .home .hm-main > .hm-prologue { width:calc(100% - 28px); }
  .home .hm-prologue-content { padding-inline:20px; }
  .home .hm-prologue-term { grid-template-columns:70px minmax(0,1fr); padding-inline:8px; }
  .home .hm-prologue-term p { padding-left:10px; font-size:11.5px; }
}

/* Homepage story preface refinements: open frame, silver dust and full-width closing light. */
.home .hm-main > .hm-prologue {
  border:0;
  border-radius:0;
}
.home .hm-main > .hm-prologue::after {
  position:absolute;
  z-index:3;
  right:-1%;
  bottom:3%;
  width:42%;
  height:54%;
  content:"";
  pointer-events:none;
  opacity:.78;
  background:
    radial-gradient(circle at 88% 3%,rgba(250,252,253,.72) 0 .6px,transparent 1.45px),
    radial-gradient(circle at 70% 7%,rgba(221,230,237,.4) 0 .45px,transparent 1.15px),
    radial-gradient(circle at 97% 12%,rgba(244,248,250,.62) 0 .55px,transparent 1.35px),
    radial-gradient(circle at 57% 16%,rgba(218,228,235,.36) 0 .4px,transparent 1.1px),
    radial-gradient(circle at 76% 23%,rgba(250,252,253,.68) 0 .65px,transparent 1.5px),
    radial-gradient(circle at 99% 29%,rgba(224,233,239,.44) 0 .45px,transparent 1.2px),
    radial-gradient(circle at 64% 32%,rgba(245,249,251,.58) 0 .55px,transparent 1.35px),
    radial-gradient(circle at 82% 46%,rgba(220,230,237,.42) 0 .45px,transparent 1.15px),
    radial-gradient(circle at 95% 55%,rgba(250,252,253,.7) 0 .65px,transparent 1.5px),
    radial-gradient(circle at 69% 63%,rgba(222,231,238,.4) 0 .45px,transparent 1.15px),
    radial-gradient(circle at 87% 70%,rgba(246,250,252,.6) 0 .55px,transparent 1.35px),
    radial-gradient(circle at 56% 81%,rgba(219,229,236,.36) 0 .4px,transparent 1.1px),
    radial-gradient(circle at 98% 89%,rgba(250,252,253,.68) 0 .6px,transparent 1.45px),
    radial-gradient(circle at 66% 99%,rgba(224,233,239,.42) 0 .45px,transparent 1.15px),
    radial-gradient(circle at 80% 5%,rgba(242,246,249,.55) 0 .55px,transparent 1.4px),
    radial-gradient(circle at 62% 11%,rgba(221,230,237,.42) 0 .45px,transparent 1.2px),
    radial-gradient(circle at 83% 18%,rgba(242,246,249,.5) 0 .5px,transparent 1.3px),
    radial-gradient(circle at 54% 24%,rgba(221,230,237,.38) 0 .45px,transparent 1.15px),
    radial-gradient(circle at 72% 35%,rgba(242,246,249,.52) 0 .55px,transparent 1.35px),
    radial-gradient(circle at 93% 40%,rgba(221,230,237,.45) 0 .5px,transparent 1.25px),
    radial-gradient(circle at 63% 49%,rgba(242,246,249,.48) 0 .5px,transparent 1.3px),
    radial-gradient(circle at 81% 57%,rgba(221,230,237,.42) 0 .45px,transparent 1.2px),
    radial-gradient(circle at 60% 73%,rgba(242,246,249,.5) 0 .55px,transparent 1.35px),
    radial-gradient(circle at 92% 82%,rgba(221,230,237,.46) 0 .5px,transparent 1.25px),
    radial-gradient(circle at 75% 92%,rgba(242,246,249,.5) 0 .5px,transparent 1.3px),
    radial-gradient(circle at 91% 8%,rgba(255,255,255,.92) 0 1px,rgba(219,227,234,.25) 1.5px,transparent 3px),
    radial-gradient(circle at 75% 14%,rgba(236,242,247,.78) 0 .7px,transparent 2px),
    radial-gradient(circle at 96% 22%,rgba(255,255,255,.82) 0 .8px,transparent 2.5px),
    radial-gradient(circle at 67% 28%,rgba(225,233,240,.7) 0 .7px,transparent 2px),
    radial-gradient(circle at 86% 34%,rgba(255,255,255,.86) 0 1px,rgba(222,231,238,.22) 1.5px,transparent 3px),
    radial-gradient(circle at 58% 42%,rgba(234,240,245,.68) 0 .65px,transparent 2px),
    radial-gradient(circle at 98% 48%,rgba(255,255,255,.9) 0 .9px,transparent 2.6px),
    radial-gradient(circle at 73% 53%,rgba(225,234,241,.8) 0 .75px,transparent 2.2px),
    radial-gradient(circle at 89% 61%,rgba(255,255,255,.92) 0 1px,rgba(225,234,241,.2) 1.5px,transparent 3px),
    radial-gradient(circle at 50% 66%,rgba(229,237,243,.62) 0 .65px,transparent 2px),
    radial-gradient(circle at 96% 73%,rgba(255,255,255,.82) 0 .8px,transparent 2.3px),
    radial-gradient(circle at 70% 79%,rgba(225,234,241,.72) 0 .7px,transparent 2px),
    radial-gradient(circle at 84% 88%,rgba(255,255,255,.9) 0 .9px,rgba(225,234,241,.2) 1.5px,transparent 3px),
    radial-gradient(circle at 99% 94%,rgba(234,240,245,.72) 0 .7px,transparent 2.2px),
    radial-gradient(circle at 61% 96%,rgba(255,255,255,.78) 0 .8px,transparent 2.3px);
  filter:drop-shadow(0 0 4px rgba(224,233,240,.38));
  -webkit-mask-image:radial-gradient(ellipse at 100% 68%,#000 0,rgba(0,0,0,.9) 32%,rgba(0,0,0,.42) 63%,transparent 88%);
  mask-image:radial-gradient(ellipse at 100% 68%,#000 0,rgba(0,0,0,.9) 32%,rgba(0,0,0,.42) 63%,transparent 88%);
}
.home .hm-prologue-term small { display:none; }
.home .hm-prologue-term > div { min-height:42px; }
.home .hm-prologue-ellipsis {
  position:relative;
  z-index:2;
  gap:11px;
  margin:3px 0 5px;
}
.home .hm-prologue-ellipsis i {
  width:4px;
  height:4px;
  background:#f1f3f4;
  box-shadow:0 0 5px rgba(224,233,240,.72);
}
.home .hm-prologue-copy > .hm-prologue-signoff {
  z-index:2;
  padding:7px 0 23px;
  font-size:17px;
  letter-spacing:.13em;
  text-shadow:0 0 5px rgba(225,233,239,.34),0 0 14px rgba(225,233,239,.16);
}
.home .hm-prologue-signoff::before {
  bottom:6px;
  height:1px;
  background:linear-gradient(90deg,transparent 0,rgba(210,220,228,.12) 4%,rgba(225,233,238,.46) 42%,#f5f7f8 50%,rgba(225,232,238,.46) 58%,rgba(210,220,228,.12) 96%,transparent 100%);
  box-shadow:0 0 4px rgba(225,234,241,.25);
}
.home .hm-prologue-signoff::after {
  bottom:-6px;
  width:25px;
  height:25px;
  background:linear-gradient(90deg,transparent 43%,rgba(245,248,250,.92) 48%,#fff 50%,rgba(245,248,250,.92) 52%,transparent 57%),linear-gradient(0deg,transparent 43%,rgba(245,248,250,.92) 48%,#fff 50%,rgba(245,248,250,.92) 52%,transparent 57%);
  box-shadow:none;
  filter:drop-shadow(0 0 4px rgba(232,239,244,.9)) drop-shadow(0 0 11px rgba(213,226,235,.58));
  transform:translateX(-50%);
}

@media (min-width:900px) {
  .home .hm-main > .hm-prologue { min-height:690px; }
  .home .hm-prologue-content {
    width:100%;
    min-height:690px;
    padding:150px clamp(38px,4vw,60px) 28px;
  }
  .home .hm-prologue .hm-section-heading {
    width:47%;
    max-width:570px;
    margin-bottom:25px;
  }
  .home .hm-prologue .hm-section-heading h2 {
    font-size:clamp(36px,2.8vw,43px);
    line-height:1.16;
  }
  .home .hm-prologue .hm-prologue-copy {
    width:100%;
    max-width:none;
    font-size:13.5px;
    line-height:1.62;
  }
  .home .hm-prologue-copy > .hm-prologue-opening,
  .home .hm-prologue-copy > .hm-prologue-term,
  .home .hm-prologue-copy > p:not(.hm-prologue-signoff) {
    width:47%;
    max-width:570px;
  }
  .home .hm-prologue-copy > .hm-prologue-opening {
    margin-bottom:13px;
    font-size:14px;
    line-height:1.58;
  }
  .home .hm-prologue-term {
    grid-template-columns:102px minmax(0,1fr);
    margin-bottom:13px;
    padding:8px 11px;
  }
  .home .hm-prologue-term strong { font-size:20px; }
  .home .hm-prologue-term p {
    padding-left:16px;
    font-size:12.5px;
    line-height:1.5;
  }
  .home .hm-prologue-copy > p { margin-bottom:9px; }
  .home .hm-prologue-copy > .hm-prologue-final { margin-bottom:2px; }
  .home .hm-prologue-ellipsis {
    width:100%;
    margin-top:2px;
  }
  .home .hm-prologue-copy > .hm-prologue-signoff {
    width:100%;
    max-width:none;
    padding-top:5px;
    font-size:17px;
  }
}

@media (max-width:899px) {
  .home .hm-main > .hm-prologue::after {
    right:-4%;
    bottom:4%;
    width:52%;
    height:43%;
    opacity:.68;
  }
  .home .hm-prologue-content { padding-bottom:27px; }
}

/* Homepage story preface placement and original-ratio image. */
.home .hm-prologue .hm-section-heading::after {
  display:block;
  width:145.131px;
  height:1px;
  margin-top:16px;
  content:"";
  background:rgba(184,184,184,.34);
  box-shadow:0 0 7px rgba(235,239,242,.08);
}
.home .hm-prologue-copy > .hm-prologue-signoff {
  padding:0;
  color:#e7e3dd;
  font-family:var(--serif) !important;
  font-weight:500;
  text-shadow:0 0 5px rgba(225,233,239,.34),0 0 14px rgba(225,233,239,.16);
}
.home .hm-prologue-signoff::before,
.home .hm-prologue-signoff::after { display:none; }
.home .hm-prologue-signoff > span {
  display:block;
  line-height:1.35;
}
.home .hm-prologue-signoff > img {
  display:block;
  width:100%;
  height:64px;
  margin:-5px 0 0;
  object-fit:fill;
  pointer-events:none;
  user-select:none;
}
.home .hm-prologue-ellipsis { display:none; }

@media (max-width:899px) {
  .home .hm-main > .hm-prologue { width:calc(100% - (var(--page) * 2)); }
  .home .hm-prologue-gallery {
    width:100%;
    height:auto;
    aspect-ratio:auto;
  }
  .home .hm-prologue-gallery img.hm-prologue-image {
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:auto;
    object-fit:contain;
    object-position:center;
  }
  .home .hm-prologue-content {
    margin-top:clamp(-82px,-15vw,-58px);
    padding-right:0;
    padding-left:0;
  }
  .home .hm-prologue .hm-section-heading { margin-bottom:20px; }
  .home .hm-prologue .hm-section-heading h2 { font-size:30px; }
  .home .hm-prologue-copy > .hm-prologue-signoff { font-size:17px; }
  .home .hm-prologue-signoff > img { height:58px; }
}

@media (min-width:900px) {
  .home .hm-main > .hm-prologue { min-height:0; }
  .home .hm-prologue-gallery {
    position:relative;
    inset:auto;
    width:100%;
    height:auto;
    aspect-ratio:16 / 9;
  }
  .home .hm-prologue-gallery img.hm-prologue-image {
    width:100%;
    height:100%;
    object-fit:cover;
  }
  .home .hm-prologue-content {
    width:100%;
    min-height:0;
    margin-top:clamp(-410px,-31vw,-330px);
    padding:0 clamp(38px,4vw,60px) 24px;
    background:linear-gradient(180deg,transparent 0,rgba(5,5,5,.16) 26%,#050505 92%);
  }
  .home .hm-prologue .hm-section-heading { margin-bottom:20px; }
  .home .hm-prologue .hm-section-heading h2 { font-size:clamp(38px,3.8vw,42px); }
  .home .hm-prologue .hm-section-heading::after { width:145.131px; }
  .home .hm-prologue-copy > .hm-prologue-signoff { margin-top:3px; }
  .home .hm-prologue-signoff > img { height:70px; }
}

/* Homepage preface final alignment, restrained tones and extracted cover sparkles. */
.home .hm-main > .hm-prologue::after {
  z-index:3;
  right:-2%;
  bottom:1%;
  width:48%;
  height:62%;
  opacity:.58;
  background:url('../images/prologue-cover-sparkles-v1.png') right bottom/contain no-repeat;
  filter:grayscale(1) saturate(0) brightness(1.12) contrast(1.04);
  mix-blend-mode:screen;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 18%,#000 88%,transparent 100%);
  mask-image:linear-gradient(180deg,transparent 0,#000 18%,#000 88%,transparent 100%);
}
.home .hm-prologue .hm-section-heading h2 {
  color:#d6d3ce;
  white-space:nowrap;
  text-shadow:0 2px 18px rgba(0,0,0,.82),0 0 13px rgba(212,218,221,.08);
}
.home .hm-prologue-copy {
  color:rgba(214,212,207,.76);
}
.home .hm-prologue-copy > .hm-prologue-opening {
  color:rgba(218,216,211,.8);
}
.home .hm-prologue-term {
  color:rgba(214,212,207,.76);
  border:1px solid transparent;
  background:
    linear-gradient(108deg,rgba(5,5,5,.9),rgba(9,10,11,.82) 48%,rgba(5,5,5,.92)) padding-box,
    linear-gradient(112deg,rgba(128,136,142,.34) 0%,rgba(221,228,232,.62) 18%,rgba(112,120,126,.3) 42%,rgba(231,237,240,.54) 67%,rgba(104,112,118,.28) 84%,rgba(196,204,209,.46) 100%) border-box;
  box-shadow:inset 0 1px rgba(241,245,247,.035),inset 0 -1px rgba(0,0,0,.72),0 0 10px rgba(198,209,216,.035);
}
.home .hm-prologue-term > div {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  align-self:stretch;
  gap:2px;
  min-height:42px;
  padding:0;
  text-align:center;
}
.home .hm-prologue-term strong {
  display:block;
  width:100%;
  margin:0;
  color:#d6d3ce;
  line-height:1;
  letter-spacing:0;
  text-align:center;
}
.home .hm-prologue-term small {
  display:block;
  width:100%;
  margin:0;
  color:rgba(190,196,199,.62);
  font-family:var(--sans);
  font-size:8px;
  line-height:1;
  letter-spacing:.2em;
  text-align:center;
}
.home .hm-prologue-copy > .hm-prologue-signoff {
  color:#d6d3ce;
}
.home .hm-hero-ignite {
  width:124px;
  min-width:124px;
}

@media (max-width:899px) {
  .home .hm-main > .hm-prologue {
    width:100%;
    margin-right:0;
    margin-left:0;
  }
  .home .hm-prologue-content {
    margin-top:-24px;
    padding-right:var(--page);
    padding-left:var(--page);
  }
  .home .hm-prologue .hm-section-heading h2 {
    font-size:clamp(24px,7.7vw,30px);
    line-height:1.2;
    letter-spacing:.025em;
  }
  .home .hm-prologue-copy > .hm-prologue-signoff {
    margin-top:30px;
  }
  .home .hm-main > .hm-prologue::after {
    right:-7%;
    bottom:0;
    width:62%;
    height:56%;
    opacity:.54;
  }
}

@media (min-width:900px) {
  body { font-size:17px; }
  .hm-main p,
  .hm-main blockquote,
  .hm-main li,
  .hm-main dt,
  .hm-main dd,
  .hm-main label,
  .hm-main time { font-size:16px; }
  .hm-main small { font-size:13px; }
  .home .hm-prologue-content {
    margin-top:-64px;
  }
  .home .hm-prologue-term > div { gap:6px; }
  .home .hm-prologue .hm-section-heading {
    width:100%;
    max-width:none;
  }
  .home .hm-prologue .hm-section-heading h2 {
    font-size:38px;
    line-height:1.2;
    letter-spacing:.035em;
  }
  .home .hm-prologue .hm-prologue-copy {
    font-size:16.5px;
    line-height:1.72;
  }
  .home .hm-prologue-copy > .hm-prologue-opening {
    font-size:16.5px;
    line-height:1.65;
  }
  .home .hm-prologue-copy > p:not(.hm-prologue-signoff) {
    font-size:16.5px;
  }
  .home .hm-prologue-copy > .hm-prologue-wide-copy {
    width:100%;
    max-width:none;
    white-space:nowrap;
  }
  .home .hm-prologue-term p {
    font-size:16.5px;
    line-height:1.6;
  }
  .home .hm-prologue-copy > .hm-prologue-signoff {
    margin-top:18px;
    font-size:18px;
  }
  .home .hm-story-unlock > p.hm-story-unlock-note,
  .home .hm-story-support-intro p { font-size:16px; }
  .home .hm-story-unlock-progress-copy { font-size:15px; }
}

/* Sparkle overlay intentionally deferred. */
.home .hm-main > .hm-prologue::after { display:none; }
.home .hm-prologue-copy > .hm-prologue-signoff { font-size:20px; }

/* Keep the story activity, unlock and support content on the prologue type scale. */
.home .hm-story-feature-label,
.home .hm-story-unlock h3,
.home .hm-story-support-intro h3 {
  font-size:30px;
  line-height:1.2;
}
.home .hm-story-unlock-meta,
.home .hm-story-unlock > p.hm-story-unlock-note,
.home .hm-story-unlock-progress-copy,
.home .hm-story-previous a > span,
.home .hm-story-previous a > b,
.home .hm-story-previous a > strong,
.home .hm-story-view-all,
.home .hm-story-support-intro p,
.home .hm-story-unlock-cta,
.home .hm-story-support-cta,
.home .hm-story-action-message {
  font-size:13.5px;
}

@media (min-width:900px) {
  .home .hm-story-feature-label,
  .home .hm-story-unlock h3,
  .home .hm-story-support-intro h3 {
    font-size:38px;
  }
  .home .hm-story-unlock-meta,
  .home .hm-story-unlock > p.hm-story-unlock-note,
  .home .hm-story-unlock-progress-copy,
  .home .hm-story-previous a > span,
  .home .hm-story-previous a > b,
  .home .hm-story-previous a > strong,
  .home .hm-story-view-all,
  .home .hm-story-support-intro p,
  .home .hm-story-unlock-cta,
  .home .hm-story-support-cta,
  .home .hm-story-action-message {
    font-size:16.5px;
  }
}

/* Homepage story transition and media presentation. */
.home .hm-main > .hm-prologue { margin-bottom:16px; }
.home .hm-latest { padding-top:28px; }
.home .hm-story-dynamic-feature .hm-feature-media::after { content:none; }
.home .hm-story-dynamic-feature .hm-media-overlay {
  z-index:2;
  background:linear-gradient(180deg,#050505 0%,rgba(5,5,5,.05) 15%,transparent 36%,rgba(5,5,5,.3) 68%,#050505 100%);
}
.home .hm-story-feature-label {
  top:18px;
  right:18px;
  bottom:auto;
  left:18px;
}
.home .hm-story-previous { background:none; }

@media (max-width:599px) {
  .home .hm-story-dynamic-feature { margin-inline:calc(var(--page) * -1); }
}

@media (min-width:900px) {
  .home .hm-main > .hm-latest { padding-top:48px; }
  .home .hm-story-feature-label {
    top:28px;
    right:30px;
    left:30px;
  }
}

/* Homepage story list refinements and archive link. */
.home .hm-main > .hm-prologue { margin-bottom:8px; }
.home .hm-latest { padding-top:20px; }
.home .hm-story-unlock-meta > span,
.home .hm-story-unlock-meta > b,
.home .hm-story-previous a:not(.hm-story-view-all) > span,
.home .hm-story-previous a:not(.hm-story-view-all) > b {
  font-family:var(--sans) !important;
}
.home .hm-story-unlock-meta > b,
.home .hm-story-previous a:not(.hm-story-view-all) > b {
  border:0;
  border-radius:999px;
  padding:4px 9px;
  color:#aeb3b7;
  background:rgba(174,181,186,.14);
}
.home .hm-story-previous { padding:6px 0 4px; }
.home .hm-story-previous a:not(.hm-story-view-all) {
  min-height:44px;
  padding-block:3px;
}
.home .hm-story-previous a:not(.hm-story-view-all) > span,
.home .hm-story-previous a:not(.hm-story-view-all) > b,
.home .hm-story-previous a:not(.hm-story-view-all) > strong {
  line-height:1.25;
}
.home .hm-story-view-all {
  position:static;
  right:auto;
  bottom:auto;
  display:block;
  width:100%;
  justify-self:stretch;
  margin:12px 0 0;
  padding:0;
  color:#d6d3ce;
  font-family:var(--serif) !important;
  font-size:20px;
  font-weight:500;
  line-height:1.35;
  letter-spacing:.13em;
  text-align:center;
  text-shadow:0 0 5px rgba(225,233,239,.34),0 0 14px rgba(225,233,239,.16);
  opacity:1;
}
.home .hm-story-view-all > span {
  display:block;
  color:inherit;
  font:inherit;
  letter-spacing:inherit;
}
.home .hm-story-view-all > img {
  display:block;
  width:100%;
  height:58px;
  margin:-5px 0 0;
  object-fit:fill;
  pointer-events:none;
  user-select:none;
}

@media (max-width:599px) {
  .home .hm-story-previous { padding:0 10px 4px; }
  .home .hm-story-previous a:not(.hm-story-view-all) {
    min-height:40px;
    padding-block:2px;
  }
}

@media (min-width:900px) {
  .home .hm-main > .hm-latest { padding-top:32px; }
  .home .hm-story-view-all > img { height:70px; }
}

/* Homepage latest story composition. */
.home .hm-story-feature-label {
  top:auto;
  right:18px;
  bottom:18px;
  left:18px;
  display:block;
  max-width:calc(100% - 36px);
  color:#d6d3ce;
  font-weight:500;
  white-space:normal;
  overflow-wrap:anywhere;
}
.home .hm-story-unlock {
  align-content:center;
  gap:8px;
  padding-block:10px;
}
.home .hm-story-unlock h3 {
  color:#d6d3ce;
  font-weight:500;
  letter-spacing:.035em;
}
.home .hm-story-unlock-meta,
.home .hm-story-unlock-progress-copy {
  color:rgba(214,212,207,.76);
}
.home .hm-story-unlock-meta > b,
.home .hm-story-previous a:not(.hm-story-view-all) > b {
  padding:2px 6px;
  color:rgba(202,205,207,.72);
  background:rgba(174,181,186,.07);
}
.home .hm-story-unlock-rule {
  display:block;
  width:145.131px;
  height:1px;
  margin:2px 0 4px;
  background:rgba(184,184,184,.34);
  box-shadow:0 0 7px rgba(235,239,242,.08);
}
.home .hm-story-unlock > p.hm-story-unlock-note {
  color:rgba(214,212,207,.76);
}
.home .hm-story-unlock .hm-story-previous {
  padding:4px 0 0;
}
.home .hm-story-unlock .hm-story-previous a:not(.hm-story-view-all) {
  grid-template-columns:54px 72px minmax(0,1fr);
  min-height:38px;
  gap:0 7px;
  padding:2px 0;
}
.home .hm-story-unlock .hm-story-previous a > span {
  color:rgba(190,196,199,.68);
}
.home .hm-story-unlock .hm-story-previous a > strong {
  color:rgba(214,212,207,.82);
}
.home .hm-story-section-divider {
  width:100%;
  margin:40px 0 0;
}
.home .hm-story-section-divider > img {
  display:block;
  width:100%;
  height:70px;
  margin:0;
  object-fit:fill;
  pointer-events:none;
  user-select:none;
}

@media (max-width:599px) {
  .home .hm-main > .hm-prologue { margin-bottom:4px; }
  .home .hm-latest { padding-top:12px; }
  .home .hm-story-unlock {
    gap:10px;
    padding:18px 0 10px;
  }
  .home .hm-story-unlock .hm-story-previous {
    padding:4px 0 0;
  }
  .home .hm-story-unlock .hm-story-previous a:not(.hm-story-view-all) {
    grid-template-columns:48px 64px minmax(0,1fr);
    min-height:36px;
    gap:0 7px;
    padding:2px 0;
  }
  .home .hm-story-section-divider {
    margin-top:16px;
  }
  .home .hm-story-section-divider > img { height:58px; }
}

@media (min-width:900px) {
  .home .hm-story-feature-label {
    right:30px;
    bottom:28px;
    left:30px;
    max-width:calc(100% - 60px);
  }
}

/* Homepage latest story spacing, metadata and unlock action. */
.home .hm-story-unlock-heading {
  min-width:0;
}
.home .hm-story-unlock-heading h3 { min-width:0; display:flex; align-items:center; gap:9px; }
.home .hm-story-unlock-heading > .hm-story-unlock-rule { margin:16px 0 0; }
.home .hm-story-unlock-preview-play {
  flex:0 0 32px;
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border:.8px solid rgba(239,244,247,.88);
  border-radius:50%;
  padding:0;
  color:#f1f5f7;
  background:rgba(2,3,4,.16);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 0 4px rgba(231,240,245,.24),0 0 10px rgba(188,211,224,.12);
  -webkit-backdrop-filter:blur(1px);
  backdrop-filter:blur(1px);
  cursor:pointer;
}
.home .hm-story-unlock-preview-play:hover,.home .hm-story-unlock-preview-play:focus-visible { color:#fff; box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 0 5px rgba(231,240,245,.36),0 0 12px rgba(188,211,224,.2); outline:0; }
.home .hm-story-unlock-preview-play svg { width:15px; height:15px; overflow:visible; fill:none; filter:drop-shadow(0 0 2px rgba(239,247,250,.7)) drop-shadow(0 0 5px rgba(190,216,229,.3)); }
.home .hm-story-unlock-preview-play svg path { fill:none; stroke:currentColor; stroke-width:1.05; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.home .hm-story-current-row { min-width:0; display:flex; align-items:center; gap:8px; }
.home .hm-story-current-row .hm-story-unlock-meta { flex:0 0 auto; }
.home .hm-story-current-row .hm-story-current-title { flex:1 1 auto; }
.home .hm-story-previous a:not(.hm-story-view-all) {
  grid-template-columns:max-content max-content minmax(0,1fr);
  column-gap:5px;
}
.home .hm-story-unlock .hm-story-previous { margin-top:14px; }
.home .hm-story-unlock-meta > b,
.home .hm-story-previous a:not(.hm-story-view-all) > b {
  color:#34383a;
  background:linear-gradient(135deg,rgba(240,243,244,.92),rgba(174,181,186,.84));
  box-shadow:inset 0 1px rgba(255,255,255,.38),inset 0 -1px rgba(69,75,79,.24),0 0 5px rgba(222,230,235,.3);
}
.home .hm-story-section-divider { margin-top:64px; }
.home .hm-story-unlock-cta {
  position:relative;
  overflow:hidden;
  border:0;
  border-radius:3px;
  clip-path:polygon(5px 0,calc(100% - 5px) 0,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0 calc(100% - 5px),0 5px);
  color:#c8ced1;
  background:linear-gradient(112deg,rgba(255,255,255,.04),transparent 26% 74%,rgba(255,255,255,.025)),rgba(8,8,8,.55);
  box-shadow:none;
  font-size:15px;
  letter-spacing:.22em;
}
.home .hm-story-unlock-cta::before {
  position:absolute;
  z-index:2;
  inset:0;
  padding:1px;
  clip-path:inherit;
  content:"";
  background:linear-gradient(105deg,transparent 28%,rgba(232,239,242,.08) 41%,rgba(238,244,246,.76) 50%,rgba(232,239,242,.08) 59%,transparent 72%);
  opacity:0;
  transform:translateX(-115%);
  pointer-events:none;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
}
.home .hm-story-unlock-cta:hover,
.home .hm-story-unlock-cta:focus-visible {
  border:0;
  color:#dbe0e2;
  background:linear-gradient(112deg,rgba(255,255,255,.055),transparent 26% 74%,rgba(255,255,255,.035)),rgba(10,10,10,.6);
}
.home .hm-story-unlock-cta:hover::before,
.home .hm-story-unlock-cta:focus-visible::before {
  animation:hm-hero-ignite-sweep .9s cubic-bezier(.32,.02,.2,1) 1;
}
.home .hm-story-unlock-cta-frame-outer {
  fill:none;
  stroke:url(#hm-unlock-frame-silver);
  stroke-width:1.1;
  vector-effect:non-scaling-stroke;
}
.home .hm-story-unlock-cta-frame-inner {
  fill:none;
  stroke:rgba(12,14,15,.9);
  stroke-width:.65;
  vector-effect:non-scaling-stroke;
}
.home .hm-story-unlock-cta > span {
  position:relative;
  z-index:3;
  padding-left:.22em;
}

@media (max-width:599px) {
  .home .hm-story-unlock .hm-story-previous { margin-top:14px; }
  .home .hm-story-section-divider { margin-top:43px; }
}

@media (min-width:900px) {
  .home .hm-story-unlock-cta { font-size:17px; }
}

/* Homepage latest story title and grouped metadata. */
.home .hm-story-feature-label { display:none; }
.home .hm-story-current-title {
  display:block;
  min-width:0;
  overflow:hidden;
  color:rgba(214,212,207,.84);
  font-family:var(--serif);
  font-size:20px;
  font-weight:500;
  line-height:1.35;
  letter-spacing:.035em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.home .hm-story-unlock-meta,
.home .hm-story-previous-meta {
  display:grid;
  grid-template-columns:max-content max-content;
  align-items:center;
  gap:0;
  border:1px solid transparent;
  border-radius:6px;
  padding:3px 6px;
  color:rgba(214,212,207,.76);
  background:
    linear-gradient(108deg,rgba(5,5,5,.9),rgba(9,10,11,.82) 48%,rgba(5,5,5,.92)) padding-box,
    linear-gradient(112deg,rgba(128,136,142,.34) 0%,rgba(221,228,232,.62) 18%,rgba(112,120,126,.3) 42%,rgba(231,237,240,.54) 67%,rgba(104,112,118,.28) 84%,rgba(196,204,209,.46) 100%) border-box;
  box-shadow:inset 0 1px rgba(241,245,247,.035),inset 0 -1px rgba(0,0,0,.72),0 0 10px rgba(198,209,216,.035);
}
.home .hm-story-unlock-meta > span,
.home .hm-story-unlock-meta > b,
.home .hm-story-previous-meta > span,
.home .hm-story-previous-meta > b {
  color:inherit;
  font-family:var(--sans) !important;
  font-size:inherit;
  font-weight:400;
  line-height:1.15;
}
.home .hm-story-unlock-meta > b,
.home .hm-story-previous-meta > b {
  margin-left:6px;
  border:0;
  border-left:1px solid rgba(224,225,221,.24);
  border-radius:0;
  padding:0 0 0 6px;
  background:none;
  box-shadow:none;
}
.home .hm-story-unlock .hm-story-previous a:not(.hm-story-view-all) {
  grid-template-columns:max-content minmax(0,1fr);
  grid-template-areas:"meta title";
  column-gap:6px;
}
.home .hm-story-previous a > span.hm-story-previous-meta {
  grid-area:meta;
}

@media (min-width:900px) {
  .home .hm-story-current-title { font-size:22px; }
}

/* Homepage story metadata hierarchy. */
.home .hm-story-unlock-meta > b { font-size:12px; }
.home .hm-story-previous a > span.hm-story-previous-meta {
  border-radius:5px;
  padding:2px 5px;
  font-size:11.5px;
}
.home .hm-story-previous-meta > b {
  margin-left:5px;
  padding-left:5px;
  font-size:10.5px;
}
.home .hm-story-unlock .hm-story-previous a > strong {
  width:100%;
  justify-self:start;
  text-align:left;
}

@media (min-width:900px) {
  .home .hm-story-unlock-meta > b { font-size:14.5px; }
  .home .hm-story-previous a > span.hm-story-previous-meta { font-size:13px; }
  .home .hm-story-previous-meta > b { font-size:11.5px; }
}

/* Homepage story CTAs: restrained black-silver material and one-shot interactions. */
.home .hm-story-unlock-cta,
.home .hm-story-support-cta {
  --hm-story-cta-surface:
    radial-gradient(circle at 8% 18%,rgba(210,216,221,.09),transparent 30%),
    radial-gradient(circle at 92% 82%,rgba(220,224,228,.08),transparent 32%),
    linear-gradient(115deg,#060708 0%,#0d0e10 42%,#08090a 68%,#101113 100%);
  --hm-story-cta-pressed:
    radial-gradient(circle at 8% 18%,rgba(210,216,221,.065),transparent 30%),
    radial-gradient(circle at 92% 82%,rgba(220,224,228,.055),transparent 32%),
    linear-gradient(115deg,#040506 0%,#090a0c 42%,#060708 68%,#0b0c0e 100%);
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:1px solid rgba(221,225,229,.68);
  border-radius:12px;
  clip-path:none;
  color:#e8e6e2;
  background:var(--hm-story-cta-surface);
  font-family:var(--serif);
  font-size:17.5px;
  font-weight:400;
  letter-spacing:.14em;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    inset 0 -1px 0 rgba(255,255,255,.035),
    0 10px 28px rgba(0,0,0,.38);
  transition:
    color 350ms ease,
    border-color 400ms ease,
    letter-spacing 450ms ease,
    background 450ms ease,
    box-shadow 450ms ease,
    transform 120ms ease-out;
  -webkit-tap-highlight-color:transparent;
}
.home .hm-story-unlock-cta::before,
.home .hm-story-support-cta::before {
  position:absolute;
  z-index:1;
  top:-40%;
  bottom:-40%;
  left:-35%;
  width:26%;
  padding:0;
  border:0;
  border-radius:0;
  content:"";
  opacity:0;
  background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.015) 34%,rgba(230,235,240,.12) 48%,rgba(255,255,255,.035) 58%,transparent 72%);
  transform:skewX(-18deg) translateX(0);
  pointer-events:none;
  -webkit-mask:none;
  mask:none;
}
.home .hm-story-unlock-cta > span,
.home .hm-story-support-cta > span {
  position:relative;
  z-index:2;
  color:inherit;
}
.home .hm-story-unlock-cta-frame {
  opacity:0;
}
.home .hm-story-unlock-cta:hover,
.home .hm-story-support-cta:hover {
  border-color:rgba(240,242,244,.9);
  color:#f3f2ef;
  background:var(--hm-story-cta-surface);
  letter-spacing:.16em;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.11),
    0 0 18px rgba(225,230,235,.06),
    0 10px 30px rgba(0,0,0,.42);
}
.home .hm-story-unlock-cta:hover::before,
.home .hm-story-support-cta:hover::before {
  animation:hm-story-cta-sweep 700ms cubic-bezier(.22,.61,.36,1) 1;
}
.home .hm-story-unlock-cta:active,
.home .hm-story-support-cta:active {
  transform:scale(.992);
  background:var(--hm-story-cta-pressed);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    inset 0 -1px 0 rgba(255,255,255,.018),
    0 4px 12px rgba(0,0,0,.3);
}
.home .hm-story-unlock-cta:focus-visible,
.home .hm-story-support-cta:focus-visible {
  outline:none;
  background:var(--hm-story-cta-surface);
  box-shadow:
    0 0 0 1px rgba(230,233,236,.65),
    0 0 0 4px rgba(230,233,236,.07),
    inset 0 1px 0 rgba(255,255,255,.08),
    inset 0 -1px 0 rgba(255,255,255,.035),
    0 10px 28px rgba(0,0,0,.38);
}
.home .hm-story-unlock-cta:focus-visible,
.home .hm-story-support-cta:focus-visible { border-color:rgba(221,225,229,.68); color:#e8e6e2; }
.home .hm-story-unlock-cta:focus-visible::before,
.home .hm-story-support-cta:focus-visible::before { animation:none; }
.home .hm-story-unlock-cta:disabled,
.home .hm-story-support-cta:disabled {
  transform:none;
}
@keyframes hm-story-cta-sweep {
  0% { opacity:0; transform:skewX(-18deg) translateX(0); }
  16% { opacity:1; }
  82% { opacity:1; }
  100% { opacity:0; transform:skewX(-18deg) translateX(560%); }
}
@media (hover:none) {
  .home .hm-story-unlock-cta:active,
  .home .hm-story-support-cta:active { border-color:rgba(240,242,244,.9); }
}
@media (prefers-reduced-motion:reduce) {
  .home .hm-story-unlock-cta,
  .home .hm-story-support-cta { transition:none; }
  .home .hm-story-unlock-cta:hover::before,
  .home .hm-story-support-cta:hover::before { animation:none; }
}

/* Keep the prologue closing copy with the final paragraph; the light remains full-width below. */
.home .hm-prologue-final-callout {
  display:block;
  margin-top:8px;
  color:#d6d3ce;
  font-family:var(--serif);
  font-size:20px;
  font-weight:500;
  line-height:1.35;
  letter-spacing:.12em;
  text-shadow:0 0 5px rgba(225,233,239,.34),0 0 14px rgba(225,233,239,.16);
}
.home .hm-prologue-copy > .hm-prologue-signoff {
  margin-top:28px;
}
.home .hm-main > .hm-prologue { margin-bottom:0; }
.home .hm-main > .hm-latest { padding-top:0; }

@media (min-width:900px) {
  .home .hm-story-unlock-cta,
  .home .hm-story-support-cta { font-size:18.5px; }
}

/* Homepage footer: quiet, left-aligned legal and contact details. */
.home .hm-site-footer {
  border-top:0;
  padding-bottom:calc(8px + 1.65em);
  text-align:left;
}
.home .hm-site-footer p,
.home .hm-site-footer span,
.home .hm-site-footer a {
  text-align:left;
}

@media (min-width:900px) {
  .home .hm-main > .hm-site-footer {
    width:min(100%,1280px);
    margin-inline:auto;
    font-size:8px;
    line-height:1.65;
  }
  .home .hm-site-footer p { font-size:11px; line-height:1.65; }
  .home .hm-site-footer span,
  .home .hm-site-footer a { font-size:8px; line-height:1.65; }
}

/* Homepage story CTAs: solid black-silver metal and glass surface. */
.home .hm-story-unlock-cta,
.home .hm-story-support-cta {
  border:1px solid rgba(220,224,228,.42);
  border-radius:4px;
  color:#eceae6;
  background-image:
    radial-gradient(ellipse at 12% 0%,rgba(235,238,240,.16) 0%,rgba(180,187,193,.07) 20%,transparent 42%),
    radial-gradient(ellipse at 90% 100%,rgba(220,225,229,.12) 0%,transparent 38%),
    linear-gradient(112deg,#151719 0%,#090a0b 22%,#202326 48%,#090a0b 72%,#181a1c 100%);
  background-position:left top,right bottom,0% 50%;
  background-size:135% 135%,135% 135%,180% 100%;
  filter:brightness(1);
  font-size:17px;
  font-weight:500;
  letter-spacing:.16em;
  text-shadow:0 1px 0 rgba(255,255,255,.08),0 0 10px rgba(255,255,255,.06);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -1px 0 rgba(0,0,0,.75),
    0 8px 20px rgba(0,0,0,.38);
  transition:
    background-position 650ms cubic-bezier(.22,.61,.36,1),
    color 320ms ease,
    filter 500ms ease,
    text-shadow 320ms ease,
    box-shadow 400ms ease,
    transform 180ms ease-out;
}
.home .hm-story-unlock-cta::before,
.home .hm-story-support-cta::before {
  position:absolute;
  z-index:1;
  inset:0;
  width:auto;
  padding:0;
  border:0;
  content:"";
  opacity:.55;
  background:
    radial-gradient(ellipse at 0% 50%,rgba(224,229,233,.15),transparent 34%),
    radial-gradient(ellipse at 100% 50%,rgba(224,229,233,.15),transparent 34%),
    linear-gradient(120deg,transparent 0%,rgba(255,255,255,.025) 28%,rgba(230,235,239,.09) 43%,rgba(255,255,255,.025) 55%,transparent 72%);
  background-position:left center,right center,0% 50%;
  background-size:100% 100%,100% 100%,170% 100%;
  transform:none;
  animation:none;
  transition:opacity 500ms ease,background-position 650ms cubic-bezier(.22,.61,.36,1);
  pointer-events:none;
}
.home .hm-story-unlock-cta::after,
.home .hm-story-support-cta::after {
  position:absolute;
  z-index:1;
  top:-45%;
  bottom:-45%;
  left:-40%;
  width:30%;
  content:"";
  opacity:0;
  background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.04) 38%,rgba(245,247,248,.22) 49%,rgba(255,255,255,.055) 57%,transparent 72%);
  transform:skewX(-16deg);
  pointer-events:none;
}
.home .hm-story-unlock-cta:hover,
.home .hm-story-support-cta:hover {
  border-color:rgba(220,224,228,.42);
  color:#fff;
  background-image:
    radial-gradient(ellipse at 12% 0%,rgba(235,238,240,.16) 0%,rgba(180,187,193,.07) 20%,transparent 42%),
    radial-gradient(ellipse at 90% 100%,rgba(220,225,229,.12) 0%,transparent 38%),
    linear-gradient(112deg,#151719 0%,#090a0b 22%,#202326 48%,#090a0b 72%,#181a1c 100%);
  background-position:right top,left bottom,100% 50%;
  filter:brightness(1.12);
  letter-spacing:.16em;
  text-shadow:0 0 12px rgba(255,255,255,.13);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.11),
    0 0 18px rgba(225,230,235,.06),
    0 10px 30px rgba(0,0,0,.42);
}
.home .hm-story-unlock-cta:hover::before,
.home .hm-story-support-cta:hover::before {
  opacity:1;
  background-position:right center,left center,100% 50%;
  animation:none;
}
.home .hm-story-unlock-cta:hover::after,
.home .hm-story-support-cta:hover::after {
  animation:hm-story-cta-metal-sweep 660ms cubic-bezier(.22,.61,.36,1) 1;
}
.home .hm-story-unlock-cta:active,
.home .hm-story-support-cta:active {
  background-image:
    radial-gradient(ellipse at 12% 0%,rgba(235,238,240,.16) 0%,rgba(180,187,193,.07) 20%,transparent 42%),
    radial-gradient(ellipse at 90% 100%,rgba(220,225,229,.12) 0%,transparent 38%),
    linear-gradient(112deg,#151719 0%,#090a0b 22%,#202326 48%,#090a0b 72%,#181a1c 100%);
  filter:brightness(.88);
  transform:scale(.985);
  box-shadow:inset 0 2px 8px rgba(0,0,0,.55),0 3px 10px rgba(0,0,0,.3);
  transition:filter 100ms ease-out,box-shadow 100ms ease-out,transform 100ms ease-out;
}
.home .hm-story-unlock-cta:focus-visible,
.home .hm-story-support-cta:focus-visible {
  border-color:rgba(220,224,228,.42);
  color:#eceae6;
  background-image:
    radial-gradient(ellipse at 12% 0%,rgba(235,238,240,.16) 0%,rgba(180,187,193,.07) 20%,transparent 42%),
    radial-gradient(ellipse at 90% 100%,rgba(220,225,229,.12) 0%,transparent 38%),
    linear-gradient(112deg,#151719 0%,#090a0b 22%,#202326 48%,#090a0b 72%,#181a1c 100%);
  box-shadow:
    0 0 0 1px rgba(230,233,236,.58),
    0 0 0 4px rgba(230,233,236,.055),
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -1px 0 rgba(0,0,0,.75),
    0 8px 20px rgba(0,0,0,.38);
}
.home .hm-story-unlock-cta:disabled,
.home .hm-story-support-cta:disabled { opacity:1; }
@keyframes hm-story-cta-metal-sweep {
  0% { left:-40%; opacity:0; }
  14% { opacity:1; }
  84% { opacity:1; }
  100% { left:120%; opacity:0; }
}
@media (hover:none) {
  .home .hm-story-unlock-cta:hover,
  .home .hm-story-support-cta:hover {
    color:#eceae6;
    background-position:left top,right bottom,0% 50%;
    filter:brightness(1);
    text-shadow:0 1px 0 rgba(255,255,255,.08),0 0 10px rgba(255,255,255,.06);
  }
  .home .hm-story-unlock-cta:hover::before,
  .home .hm-story-support-cta:hover::before {
    opacity:.55;
    background-position:left center,right center,0% 50%;
  }
  .home .hm-story-unlock-cta:hover::after,
  .home .hm-story-support-cta:hover::after { animation:none; }
  .home .hm-story-unlock-cta.is-touch-flashing,
  .home .hm-story-support-cta.is-touch-flashing { filter:brightness(1.1); }
  .home .hm-story-unlock-cta.is-touch-flashing::after,
  .home .hm-story-support-cta.is-touch-flashing::after {
    animation:hm-story-cta-metal-sweep 460ms cubic-bezier(.22,.61,.36,1) 1;
  }
}
@media (prefers-reduced-motion:reduce) {
  .home .hm-story-unlock-cta,
  .home .hm-story-support-cta,
  .home .hm-story-unlock-cta::before,
  .home .hm-story-support-cta::before { transition:none; }
  .home .hm-story-unlock-cta:hover::after,
  .home .hm-story-support-cta:hover::after,
  .home .hm-story-unlock-cta.is-touch-flashing::after,
  .home .hm-story-support-cta.is-touch-flashing::after { animation:none; }
}

/* Homepage story CTAs: match the Q&A Telegram bind button. */
.home .hm-story-unlock-cta,
.home .hm-story-support-cta,
.home .hm-story-unlock-cta:hover,
.home .hm-story-support-cta:hover,
.home .hm-story-unlock-cta:active,
.home .hm-story-support-cta:active,
.home .hm-story-unlock-cta:focus-visible,
.home .hm-story-support-cta:focus-visible {
  overflow:hidden;
  border:.5px solid rgba(221,225,227,.7);
  border-radius:0;
  color:#25282a;
  background:linear-gradient(112deg,#777c80 0%,#b7bbbe 22%,#d6dadc 39%,#969b9e 63%,#c8ccce 82%,#858a8e 100%);
  filter:none;
  transform:none;
  text-shadow:none;
  box-shadow:inset 0 1px rgba(255,255,255,.38),inset 0 -1px rgba(35,39,41,.36);
  transition:filter .24s,background .24s,border-color .24s,box-shadow .24s;
}
.home .hm-story-unlock-cta::before,
.home .hm-story-support-cta::before,
.home .hm-story-unlock-cta:hover::before,
.home .hm-story-support-cta:hover::before,
.home .hm-story-unlock-cta:active::before,
.home .hm-story-support-cta:active::before,
.home .hm-story-unlock-cta:focus-visible::before,
.home .hm-story-support-cta:focus-visible::before {
  display:block;
  position:absolute;
  z-index:0;
  inset:0;
  width:auto;
  content:"";
  opacity:1;
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,rgba(0,0,0,.02) 1px 2px),linear-gradient(108deg,transparent 20%,rgba(255,255,255,.16) 43%,transparent 58%);
  transform:translateX(-115%);
  animation:hm-matte-silver-pass 8s ease-in-out infinite;
  pointer-events:none;
}
.home .hm-story-unlock-cta::after,
.home .hm-story-support-cta::after,
.home .hm-story-unlock-cta:hover::after,
.home .hm-story-support-cta:hover::after,
.home .hm-story-unlock-cta:active::after,
.home .hm-story-support-cta:active::after,
.home .hm-story-unlock-cta.is-touch-flashing::after,
.home .hm-story-support-cta.is-touch-flashing::after {
  display:none;
  animation:none;
}
.home .hm-story-unlock-cta > span,
.home .hm-story-support-cta > span {
  position:relative;
  z-index:1;
  color:#25282a;
  font:700 18px/1 var(--serif);
  letter-spacing:.02em;
  text-shadow:0 -.5px rgba(25,28,30,.58),0 .5px rgba(245,248,249,.48);
  white-space:nowrap;
}

/* Immediate visual acknowledgement while the payment URL is prepared. */
.home .hm-story-unlock-cta.is-payment-starting,
.home .hm-story-support-cta.is-payment-starting,
.home .hm-story-unlock-cta.is-payment-starting:hover,
.home .hm-story-support-cta.is-payment-starting:hover {
  border-color:rgba(164,170,173,.48);
  color:#25282a;
  background:linear-gradient(112deg,#4d5255 0%,#777d80 24%,#9da2a4 43%,#666c6f 67%,#858a8c 84%,#4b5053 100%);
  filter:saturate(.72) brightness(.88);
  transform:none;
  box-shadow:inset 0 1px rgba(255,255,255,.2),inset 0 -1px rgba(0,0,0,.5);
}
.home .hm-story-unlock-cta.is-payment-starting > span,
.home .hm-story-support-cta.is-payment-starting > span {
  color:#25282a;
  text-shadow:none;
}
.home .hm-story-unlock-cta.is-payment-starting::after,
.home .hm-story-support-cta.is-payment-starting::after {
  display:block;
  position:absolute;
  z-index:2;
  inset:0;
  width:auto;
  content:"";
  opacity:1;
  background:linear-gradient(108deg,transparent 38%,rgba(255,255,255,.18) 44%,rgba(255,255,255,.92) 50%,rgba(218,229,234,.32) 56%,transparent 62%);
  transform:translateX(-55%);
  animation:hm-follow-instant-sweep .68s cubic-bezier(.28,.02,.2,1) both;
  pointer-events:none;
}

/* Header status label keeps the body typeface while IN/OUT retains its existing display face. */
.hm-header-auth-status { gap:6px; }
.hm-header-auth-label {
  color:rgba(203,208,210,.78);
  font-family:var(--sans);
  font-size:11px;
  font-weight:400;
  letter-spacing:.035em;
}

/* Match the support copy colors to the homepage prologue. */
.home .hm-story-support-intro h3 { color:#e7e3dd; }
.home .hm-story-support-intro p { color:rgba(235,232,226,.78); }

/* Scale the global page-up control for desktop proportions. */
@media (min-width:900px) {
  .hm-up { right:24px; bottom:24px; width:50px; height:50px; }
  .hm-up svg { width:20px; height:20px; }
  .hm-story-cover { aspect-ratio:16/9; }
  .hm-account-page .hm-story-cover { aspect-ratio:16/9; }
  .hm-story-cover > .hm-stories-hero::after { bottom:0; }
  .hm-story-cover-content .hm-story-controls { top:42%; }
  .hm-account-mirror-effect { --hm-account-glow-size:320px; }
}

/* Keep desktop content placement and typography consistent across the site. */
@media (min-width:900px) {
  .home .hm-hero-content,
  .home .hm-home-overview > * {
    transform:translateY(-15px);
  }
  .home .hm-hero-content { transform:translate(-14px,-70px); }

  .home .hm-hero-title {
    margin-bottom:22px;
    font-size:60px !important;
  }
  .home .hm-hero blockquote {
    margin-bottom:26px;
    font-size:18px !important;
    line-height:1.75;
  }
  .home .hm-hero-ignite {
    width:148px;
    min-width:148px;
    min-height:48px;
    padding-inline:20px;
    font-size:17px;
  }

  body:not(.home) .hm-main .hm-archive-top h1,
  body:not(.home) .hm-main > .hm-standard-page > h1,
  body:not(.home) .hm-main .hm-payment-page h1,
  body:not(.home) .hm-main .hm-draft-center > h1 {
    font-family:var(--font-display) !important;
    font-size:var(--fs-page-title);
    line-height:var(--lh-title);
    letter-spacing:var(--tracking-title);
  }
  body:not(.home) .hm-main .hm-archive-subtitle {
    margin-top:8px;
    font-size:var(--fs-body-lg) !important;
    line-height:var(--lh-body);
  }

  body:not(.home) .hm-main .hm-section-heading h2,
  body:not(.home) .hm-main .hm-selection h2,
  body:not(.home) .hm-main .hm-qa-rail-heading,
  body:not(.home) .hm-main .hm-qa-detail h2,
  body:not(.home) .hm-main .hm-qa-telegram-tutorial h2,
  body:not(.home) .hm-main .hm-account-auth-card h2,
  body:not(.home) .hm-main .hm-account-setup-card h2,
  body:not(.home) .hm-main .hm-account-dashboard > header h2,
  body:not(.home) .hm-main .hm-account-donation-note strong {
    font-family:var(--font-display) !important;
    font-size:var(--fs-section-title);
    line-height:var(--lh-title);
    letter-spacing:var(--tracking-title);
  }

  body:not(.home) .hm-main .hm-detail-heading h1,
  body:not(.home) .hm-main .hm-account-panel-heading h3,
  body:not(.home) .hm-main .hm-draft-center > h2 {
    font-family:var(--font-display) !important;
    font-size:var(--fs-card-title);
    line-height:var(--lh-title);
    letter-spacing:var(--tracking-title);
  }
  body:not(.home) .hm-main .hm-story-media h2,
  body:not(.home) .hm-main .hm-story-collection.is-grid .hm-story-media h2,
  body:not(.home) .hm-main .hm-draft-rail.is-grid .hm-story-media h2,
  body:not(.home) .hm-main .hm-account-bookmark-card .hm-story-media h2,
  body:not(.home) .hm-main .hm-qa-card-face b {
    font-family:var(--font-display) !important;
    font-size:var(--fs-card-title);
    line-height:var(--lh-title);
  }

  body:not(.home) .hm-main p,
  body:not(.home) .hm-main blockquote,
  body:not(.home) .hm-main li,
  body:not(.home) .hm-main dt,
  body:not(.home) .hm-main dd {
    font-family:var(--font-body) !important;
    font-size:var(--fs-body) !important;
    line-height:var(--lh-body);
    letter-spacing:var(--tracking-body);
  }
  body:not(.home) .hm-main button,
  body:not(.home) .hm-main input,
  body:not(.home) .hm-main select,
  body:not(.home) .hm-main textarea,
  body:not(.home) .hm-main label,
  body:not(.home) .hm-main summary,
  body:not(.home) .hm-main .hm-qa-card-title {
    font-size:var(--fs-body);
  }
  body:not(.home) .hm-main small,
  body:not(.home) .hm-main time {
    font-size:var(--fs-meta);
  }
}

/* Homepage latest-story vertical rhythm. */
.home .hm-story-unlock-rule {
  margin-top:6px;
}
.home .hm-story-unlock > p.hm-story-unlock-note {
  margin-bottom:0;
}
.home .hm-story-unlock-progress-copy {
  margin-top:-2px;
}
.home .hm-story-unlock .hm-story-previous {
  margin-top:10px;
}

/* Homepage unlock progress indicator. */
.home .hm-story-unlock-progress {
  position:relative;
  overflow:visible;
  border-radius:999px;
}
.home .hm-story-unlock-progress i {
  position:relative;
  border-radius:inherit;
}
.home .hm-story-unlock-progress i::after {
  content:"";
  position:absolute;
  top:50%;
  right:0;
  width:13px;
  height:13px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.96) 0%,rgba(237,243,246,.8) 18%,rgba(214,226,233,.42) 40%,rgba(194,211,221,.14) 60%,transparent 76%);
  box-shadow:0 0 7px rgba(232,241,246,.54),0 0 14px rgba(190,209,220,.25);
  filter:blur(.15px);
  transform:translate(50%,-50%);
}
.home .hm-story-unlock-progress-copy.is-funded,
.home .hm-story-unlock-progress-copy.is-funded b {
  color:#e3e7e9;
  text-shadow:0 0 7px rgba(225,233,238,.22);
}

/* Homepage authentication ticket. */
.home .hm-hero-ignite,
.home .hm-hero.is-lit .hm-hero-ignite {
  --hm-ticket-main-width:75%;
  --hm-ticket-notch:14.5px;
  --hm-ticket-notch-clear:13.7px;
  position:relative;
  width:280px;
  min-width:280px;
  min-height:80px;
  aspect-ratio:3.5/1;
  display:grid;
  grid-template-columns:var(--hm-ticket-main-width) calc(100% - var(--hm-ticket-main-width));
  grid-template-rows:1fr;
  align-items:stretch;
  overflow:visible;
  border:0;
  border-radius:0;
  padding:0;
  clip-path:none;
  color:#b9bec1;
  background:transparent;
  box-shadow:none;
  filter:none;
  font-family:var(--serif);
  cursor:pointer;
  transition:transform 100ms ease-out,filter 220ms ease,border-color 220ms ease;
}
.home .hm-hero-ignite::before,
.home .hm-hero-ignite::after {
  display:none;
}
.home .hm-ticket-main,
.home .hm-ticket-stub {
  position:relative;
  z-index:1;
  min-width:0;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  color:inherit;
  background:
    linear-gradient(112deg,rgba(255,255,255,.035),transparent 25% 74%,rgba(255,255,255,.02)),
    linear-gradient(145deg,#0d0e10,#08090a 62%,#0c0d0f);
  border:0;
  box-shadow:
    inset 0 1px rgba(255,255,255,.035),
    inset 0 -1px rgba(132,140,145,.16);
  opacity:1;
  visibility:visible;
  transition:color 240ms ease,border-color 240ms ease,box-shadow 240ms ease,background-color 240ms ease,clip-path 560ms cubic-bezier(.64,.02,.88,.38),transform 560ms cubic-bezier(.64,.02,.88,.38),opacity 180ms ease;
}
.home .hm-ticket-main {
  grid-column:1;
  overflow:hidden;
  border-radius:9px 0 0 9px;
  background:
    linear-gradient(90deg,rgba(226,232,235,.075),rgba(226,232,235,.018) 7%,transparent 16%),
    linear-gradient(112deg,rgba(255,255,255,.035),transparent 25% 74%,rgba(255,255,255,.02)),
    linear-gradient(145deg,#0d0e10,#08090a 62%,#0c0d0f);
  -webkit-mask-image:radial-gradient(circle var(--hm-ticket-notch) at 0 50%,transparent var(--hm-ticket-notch-clear),#000 var(--hm-ticket-notch));
  -webkit-mask-repeat:no-repeat;
  -webkit-mask-size:100% 100%;
  mask-image:radial-gradient(circle var(--hm-ticket-notch) at 0 50%,transparent var(--hm-ticket-notch-clear),#000 var(--hm-ticket-notch));
  mask-repeat:no-repeat;
  mask-size:100% 100%;
  clip-path:none;
  box-shadow:inset 0 1px rgba(255,255,255,.035),inset 0 -1px rgba(132,140,145,.16);
  filter:none;
}
.home .hm-ticket-stub {
  grid-column:2;
  overflow:hidden;
  flex-direction:row;
  gap:4px;
  border-radius:0 9px 9px 0;
  -webkit-mask-image:radial-gradient(circle var(--hm-ticket-notch) at 100% 50%,transparent var(--hm-ticket-notch-clear),#000 var(--hm-ticket-notch));
  -webkit-mask-repeat:no-repeat;
  -webkit-mask-size:100% 100%;
  mask-image:radial-gradient(circle var(--hm-ticket-notch) at 100% 50%,transparent var(--hm-ticket-notch-clear),#000 var(--hm-ticket-notch));
  mask-repeat:no-repeat;
  mask-size:100% 100%;
  clip-path:none;
  box-shadow:inset 0 1px rgba(255,255,255,.035),inset 0 -1px rgba(132,140,145,.16);
  transform-origin:left top;
}
.home .hm-ticket-main::before {
  position:absolute;
  z-index:2;
  top:1px;
  bottom:1px;
  left:0;
  width:24%;
  content:"";
  opacity:0;
  background:linear-gradient(90deg,transparent,rgba(235,240,242,.04) 22%,rgba(245,248,249,.38) 50%,rgba(229,235,238,.05) 78%,transparent);
  transform:translateX(-100%);
  pointer-events:none;
}
.home .hm-ticket-inner-frame {
  position:absolute;
  z-index:2;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
  color:rgba(139,147,152,.38);
  pointer-events:none;
}
.home .hm-ticket-frame-outer,
.home .hm-ticket-frame-inner {
  fill:none;
  vector-effect:non-scaling-stroke;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.home .hm-ticket-frame-outer {
  stroke:rgba(184,191,195,.58);
  stroke-width:1.1;
  filter:drop-shadow(0 1px .7px rgba(0,0,0,.85)) drop-shadow(0 0 .6px rgba(230,235,238,.12));
  transition:stroke 240ms ease,filter 240ms ease;
}
.home .hm-ticket-frame-inner {
  stroke:currentColor;
  stroke-width:.7;
}
.home .hm-ticket-main::after,
.home .hm-ticket-stub::before {
  position:absolute;
  z-index:2;
  top:7px;
  bottom:7px;
  width:2px;
  content:"";
  opacity:0;
  background:linear-gradient(180deg,rgba(205,210,212,.12),rgba(225,229,231,.42) 50%,rgba(196,202,205,.1));
  transition:opacity 180ms ease;
  pointer-events:none;
}
.home .hm-ticket-main::after { right:0; }
.home .hm-ticket-stub::before { left:0; }
.home .hm-ticket-label {
  position:relative;
  z-index:3;
  display:block;
  padding:0 0 0 .22em;
  color:#c1c5c7;
  font:500 27px/1 var(--serif);
  letter-spacing:.1em;
  text-shadow:0 0 10px rgba(224,230,233,.045);
  opacity:1;
  transform-origin:center;
  transition:color 240ms ease,opacity 140ms ease,text-shadow 240ms ease,transform 240ms ease;
}
.home .hm-ticket-stub > span,
.home .hm-ticket-stub > small {
  display:block;
  width:auto;
  padding:0;
  color:rgba(190,196,199,.58);
  font-family:var(--sans);
  font-weight:400;
  line-height:1;
  writing-mode:vertical-rl;
  text-orientation:mixed;
  transform:rotate(180deg);
  transition:color 240ms ease,opacity 240ms ease;
}
.home .hm-ticket-stub > span { font-size:8.5px; letter-spacing:.16em; }
.home .hm-ticket-stub > small { font-size:6.4px; letter-spacing:.1em; }
.home .hm-ticket-tear {
  position:absolute;
  z-index:4;
  top:9px;
  bottom:9px;
  left:var(--hm-ticket-main-width);
  display:block;
  width:2px;
  padding:0;
  border:0;
  background:repeating-linear-gradient(to bottom,rgba(203,210,214,.72) 0 4px,transparent 4px 8px);
  opacity:1;
  pointer-events:none;
  transition:opacity 200ms ease,box-shadow 180ms ease;
}
.home .hm-hero-ignite:not(.is-authenticated):not(.is-ticket-rejoining):hover {
  color:#d1d5d7;
  filter:brightness(1.1);
  transform:translateY(-1px);
}
.home .hm-hero-ignite:not(.is-authenticated):not(.is-ticket-rejoining):hover .hm-ticket-main::before {
  animation:hm-home-ticket-silver-sweep 460ms cubic-bezier(.22,.61,.36,1) 1;
}
.home .hm-hero-ignite:not(.is-authenticated):hover .hm-ticket-label {
  color:#dce0e2;
  text-shadow:0 0 9px rgba(232,238,241,.1);
}
.home .hm-hero-ignite:not(.is-authenticated):hover .hm-ticket-tear { background:repeating-linear-gradient(to bottom,rgba(230,235,238,.9) 0 4px,transparent 4px 8px); }
.home .hm-hero-ignite:not(.is-authenticated):hover .hm-ticket-stub > span,
.home .hm-hero-ignite:not(.is-authenticated):hover .hm-ticket-stub > small {
  color:rgba(211,217,220,.72);
  transition-delay:100ms;
}
.home .hm-hero-ignite:not(.is-authenticated):hover .hm-ticket-frame-outer { stroke:rgba(199,205,208,.72); }
.home .hm-hero-ignite:active { transform:translateY(1px); }
.home .hm-hero-ignite:focus-visible {
  outline:1px solid rgba(218,224,227,.7);
  outline-offset:4px;
  box-shadow:0 0 0 3px rgba(218,224,227,.055);
}
.home .hm-hero-ignite.is-ticket-igniting .hm-ticket-main,
.home .hm-hero-ignite.is-ticket-igniting .hm-ticket-stub {
  animation:hm-home-ticket-edge-ignite 720ms ease 1;
}
.home .hm-hero-ignite.is-ticket-igniting .hm-ticket-main::before {
  animation:hm-home-ticket-silver-sweep 560ms cubic-bezier(.22,.61,.36,1) 1;
}
.home .hm-hero-ignite.is-ticket-igniting .hm-ticket-tear {
  background:repeating-linear-gradient(to bottom,rgba(224,207,189,.9) 0 4px,transparent 4px 8px);
  box-shadow:0 0 3px rgba(190,153,120,.22);
}
.home .hm-hero-ignite.is-ticket-igniting:not(.is-authenticated) .hm-ticket-frame-outer {
  stroke:rgba(226,215,204,.9);
  filter:drop-shadow(0 0 2px rgba(238,227,216,.48)) drop-shadow(0 0 6px rgba(194,160,130,.24));
}
.home .hm-hero-ignite.is-ticket-igniting:not(.is-authenticated) .hm-ticket-frame-inner {
  stroke:rgba(198,179,160,.7);
  filter:drop-shadow(0 0 2px rgba(190,153,120,.16));
}
.home .hm-hero-ignite.is-ticket-igniting:not(.is-authenticated) .hm-ticket-label {
  color:rgba(229,218,207,.94);
  text-shadow:0 0 3px rgba(241,231,222,.42),0 0 8px rgba(194,160,130,.26);
  transform:scale(1.025);
}
.home .hm-hero-ignite.is-ticket-tear-start .hm-ticket-stub {
  transform:translate(2px,1px) rotate(-1deg);
  transition-duration:170ms;
  transition-timing-function:cubic-bezier(.2,.72,.2,1);
}
.home .hm-hero-ignite.is-authenticated .hm-ticket-main,
.home .hm-hero-ignite.is-ticket-preview-torn .hm-ticket-main,
html.hm-home-login-resuming .home .hm-hero-ignite .hm-ticket-main {
  clip-path:polygon(0 0,100% 0,98.7% 8%,100% 15%,98.4% 23%,100% 31%,98.5% 40%,100% 49%,98.2% 58%,100% 67%,98.5% 76%,100% 85%,98.7% 92%,100% 100%,0 100%);
}
.home .hm-hero-ignite.is-authenticated .hm-ticket-stub,
.home .hm-hero-ignite.is-ticket-preview-torn .hm-ticket-stub,
html.hm-home-login-resuming .home .hm-hero-ignite .hm-ticket-stub {
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%,1.3% 92%,0 84%,1.6% 76%,0 67%,1.5% 58%,0 49%,1.8% 40%,0 31%,1.5% 23%,0 15%,1.3% 8%);
  transform:translate(9px,5px) rotate(1.2deg);
}
.home .hm-hero-ignite.is-authenticated .hm-ticket-tear,
.home .hm-hero-ignite.is-ticket-preview-torn .hm-ticket-tear,
html.hm-home-login-resuming .home .hm-hero-ignite .hm-ticket-tear { opacity:0; }
.home .hm-hero-ignite.is-authenticated .hm-ticket-main::after,
.home .hm-hero-ignite.is-authenticated .hm-ticket-stub::before,
.home .hm-hero-ignite.is-ticket-preview-torn .hm-ticket-main::after,
.home .hm-hero-ignite.is-ticket-preview-torn .hm-ticket-stub::before,
html.hm-home-login-resuming .home .hm-hero-ignite .hm-ticket-main::after,
html.hm-home-login-resuming .home .hm-hero-ignite .hm-ticket-stub::before { opacity:.34; }
.home .hm-hero-ignite.is-authenticated .hm-ticket-main,
.home .hm-hero-ignite.is-authenticated .hm-ticket-stub {
  color:rgba(190,195,198,.72);
  background:
    linear-gradient(112deg,rgba(255,255,255,.018),transparent 25% 74%,rgba(255,255,255,.01)),
    linear-gradient(145deg,rgba(13,14,16,.8),rgba(8,9,10,.8) 62%,rgba(12,13,15,.8));
  border-color:rgba(184,191,195,.4);
}
.home .hm-hero-ignite.is-authenticated .hm-ticket-main {
  box-shadow:inset 1px 0 rgba(132,140,145,.14),inset 0 1px rgba(255,255,255,.025),inset 0 -1px rgba(132,140,145,.11);
}
.home .hm-hero-ignite.is-authenticated .hm-ticket-stub {
  box-shadow:inset -1px 0 rgba(132,140,145,.14),inset 0 1px rgba(255,255,255,.025),inset 0 -1px rgba(132,140,145,.11);
}
.home .hm-hero-ignite.is-authenticated .hm-ticket-frame-outer { stroke:rgba(184,191,195,.4); }
.home .hm-hero-ignite.is-authenticated .hm-ticket-label { color:rgba(199,204,206,.46); }
.home .hm-hero-ignite.is-authenticated .hm-ticket-stub > span,
.home .hm-hero-ignite.is-authenticated .hm-ticket-stub > small { color:rgba(190,196,199,.36); }
.home .hm-hero-ignite.is-authenticated:hover .hm-ticket-main,
.home .hm-hero-ignite.is-authenticated:hover .hm-ticket-stub { border-color:rgba(199,205,208,.46); }
.home .hm-hero-ignite.is-authenticated:hover .hm-ticket-frame-outer { stroke:rgba(199,205,208,.46); }
.home .hm-hero-ignite.is-authenticated:hover .hm-ticket-label { color:rgba(222,226,228,.84); }
.home .hm-hero-ignite.is-authenticated:hover .hm-ticket-main::after,
.home .hm-hero-ignite.is-authenticated:hover .hm-ticket-stub::before { opacity:.5; }
.home .hm-hero-ignite.is-ticket-rejoining .hm-ticket-stub { transition-duration:650ms; transition-timing-function:cubic-bezier(.18,.72,.28,1); }
.home .hm-hero-ignite.is-ticket-label-changing .hm-ticket-label { opacity:0; }
.home .hm-hero.is-lock-warning .hm-hero-ignite {
  animation:hm-home-ticket-hint-glow 1.05s ease-in-out 2;
}
.home .hm-hero.is-lock-warning .hm-ticket-main,
.home .hm-hero.is-lock-warning .hm-ticket-stub {
  border-color:rgba(216,223,226,.78);
  filter:brightness(1.08) drop-shadow(0 0 5px rgba(211,221,226,.18));
}
.home .hm-hero.is-lock-warning .hm-ticket-frame-outer { stroke:rgba(216,223,226,.78); }
@keyframes hm-home-ticket-silver-sweep {
  0% { opacity:0; transform:translateX(-120%); }
  18% { opacity:.72; }
  82% { opacity:.72; }
  100% { opacity:0; transform:translateX(410%); }
}
@keyframes hm-home-ticket-warm-trace {
  0% { opacity:0; transform:translateX(-120%); }
  16% { opacity:.75; }
  84% { opacity:.75; }
  100% { opacity:0; transform:translateX(420%); }
}
@keyframes hm-home-ticket-edge-ignite {
  0%,100% { border-color:rgba(184,191,195,.58); filter:brightness(1) drop-shadow(0 0 0 transparent); }
  58% { border-color:rgba(222,210,198,.8); filter:brightness(1.05) drop-shadow(0 0 6px rgba(194,160,130,.22)); }
}
@keyframes hm-home-ticket-hint-glow {
  0%,100% { filter:brightness(1); }
  50% { filter:brightness(1.13) drop-shadow(0 0 5px rgba(218,226,230,.16)); }
}
@media (max-width:599px) {
  .home .hm-hero-ignite,
  .home .hm-hero.is-lit .hm-hero-ignite {
    --hm-ticket-main-width:75%;
    --hm-ticket-notch:8px;
    --hm-ticket-notch-clear:7.4px;
    width:154px;
    min-width:154px;
    min-height:44px;
    aspect-ratio:3.5/1;
  }
  .home .hm-ticket-label { font-size:19px; letter-spacing:.1em; }
  .home .hm-ticket-stub { gap:2px; }
  .home .hm-ticket-main {
    border-left:0;
    border-radius:5px 0 0 5px;
    box-shadow:inset 0 1px rgba(255,255,255,.035),inset 0 -1px rgba(132,140,145,.16);
  }
  .home .hm-ticket-stub {
    border-right:0;
    border-radius:0 5px 5px 0;
    box-shadow:inset 0 1px rgba(255,255,255,.035),inset 0 -1px rgba(132,140,145,.16);
  }
  .home .hm-ticket-stub > span { font-size:4.7px; letter-spacing:.16em; }
  .home .hm-ticket-stub > small { font-size:3.5px; letter-spacing:.1em; }
  .home .hm-ticket-tear,
  .home .hm-hero-ignite:not(.is-authenticated):hover .hm-ticket-tear {
    top:5px;
    bottom:5px;
    width:1px;
    background:repeating-linear-gradient(to bottom,rgba(203,210,214,.74) 0 2px,transparent 2px 4px);
  }
  .home .hm-hero-ignite.is-ticket-igniting .hm-ticket-tear {
    background:repeating-linear-gradient(to bottom,rgba(224,207,189,.88) 0 2px,transparent 2px 4px);
  }
  .home .hm-ticket-main::before { display:none; }
}
@media (hover:none) {
  .home .hm-hero-ignite:hover { filter:none; transform:none; }
  .home .hm-hero-ignite:hover .hm-ticket-main::before { animation:none; }
}
@media (prefers-reduced-motion:reduce) {
  .home .hm-hero-ignite,
  .home .hm-ticket-main,
  .home .hm-ticket-stub,
  .home .hm-ticket-label,
  .home .hm-ticket-tear { transition-duration:120ms; }
  .home .hm-ticket-main::before,
  .home .hm-hero-ignite.is-ticket-igniting .hm-ticket-main,
  .home .hm-hero-ignite.is-ticket-igniting .hm-ticket-stub { animation:none; }
}

html.hm-home-auth-returning .home .hm-hero-media picture,
html.hm-home-auth-returning .home .hm-hero-media img,
html.hm-home-auth-returning .home .hm-hero-shade,
html.hm-home-auth-returning .home .hm-hero-title,
html.hm-home-auth-returning .home .hm-hero blockquote,
html.hm-home-auth-returning .home .hm-ticket-main,
html.hm-home-auth-returning .home .hm-ticket-stub,
html.hm-home-auth-returning .home .hm-ticket-label,
html.hm-home-auth-returning .home .hm-ticket-tear {
  transition:none !important;
  animation:none !important;
}
html.hm-home-auth-returning { background:#000; }
html.hm-home-auth-returning body::after {
  position:fixed;
  z-index:9999;
  inset:0;
  content:"";
  background:radial-gradient(circle at 50% 42%,#090a0b 0%,#030303 45%,#000 100%);
  opacity:1;
  pointer-events:none;
  transition:opacity .78s ease;
}
html.hm-home-auth-returning.hm-home-auth-revealing body::after { opacity:0; }

/* Homepage entry choice and logout confirmation: two halves of one cinema ticket. */
.hm-home-entry-choice > section,
.hm-auth-confirm > section {
  position:relative;
  isolation:isolate;
  width:min(100%,430px);
  aspect-ratio:430/236;
  min-height:0;
  overflow:visible;
  border:0;
  padding:12px 36px;
  background:linear-gradient(145deg,rgba(11,12,13,.97),rgba(5,6,7,.97));
  box-shadow:inset 0 1px rgba(255,255,255,.025),inset 0 -1px rgba(132,140,145,.14),0 24px 70px rgba(0,0,0,.48);
}
.hm-home-entry-choice > section {
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:1fr 1fr;
  gap:0;
}
.hm-choice-ticket-frame {
  position:absolute;
  z-index:1;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
  pointer-events:none;
}
.hm-choice-ticket-frame-upper { clip-path:inset(-18px -18px 50% -18px); }
.hm-choice-ticket-frame-lower { clip-path:inset(50% -18px -18px -18px); }
.hm-choice-ticket-frame-outer,
.hm-choice-ticket-frame-inner {
  fill:none;
  vector-effect:non-scaling-stroke;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:stroke .18s ease,filter .18s ease,opacity .18s ease;
}
.hm-choice-ticket-frame-outer {
  stroke:rgba(190,197,201,.66);
  stroke-width:1.1;
  filter:drop-shadow(0 1px .7px rgba(0,0,0,.88)) drop-shadow(0 0 .7px rgba(230,235,238,.15));
}
.hm-choice-ticket-frame-inner { stroke:rgba(137,146,151,.42); stroke-width:.7; }
.hm-choice-ticket-tear {
  position:absolute;
  z-index:3;
  top:50%;
  right:20px;
  left:20px;
  height:1px;
  background:repeating-linear-gradient(to right,rgba(203,210,214,.75) 0 7px,transparent 7px 12px);
  transform:translateY(-.5px);
  transition:filter .18s ease,opacity .18s ease;
  pointer-events:none;
}
.hm-home-entry-action,
.hm-home-entry-choice > section > [data-home-entry-guest] {
  position:relative;
  z-index:4;
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  min-width:0;
  overflow:hidden;
}
.hm-home-entry-action { grid-row:1; }
.hm-home-entry-choice > section > [data-home-entry-guest] { grid-row:2; }
.hm-home-entry-choice button,
.hm-auth-confirm section button {
  min-height:0;
  border:0;
  padding:0 10px;
  color:#d2d6d8;
  background:transparent;
  box-shadow:none;
  font-size:19px;
  font-weight:500;
  letter-spacing:.14em;
  text-shadow:0 0 9px rgba(224,230,233,.06);
  transition:color .18s ease,opacity .18s ease,text-shadow .18s ease,transform .18s ease;
}
.hm-home-entry-choice button:hover,
.hm-home-entry-choice button:focus-visible,
.hm-auth-confirm section button:hover,
.hm-auth-confirm section button:focus-visible {
  border:0;
  color:#d2d6d8;
  background:transparent;
  outline:0;
}
.hm-home-entry-choice .hm-auth-google-overlay { opacity:0; }
.hm-home-entry-or,
.hm-auth-confirm-or {
  position:absolute;
  z-index:6;
  top:50%;
  left:50%;
  display:block;
  padding:3px 8px;
  background:#08090a;
  text-align:center;
  transform:translate(-50%,-50%);
}
.hm-auth-confirm h2 {
  position:absolute;
  z-index:6;
  top:17px;
  right:34px;
  left:34px;
  margin:0;
  color:rgba(176,183,187,.62);
  font-size:10px;
  letter-spacing:.16em;
  pointer-events:none;
}
.hm-auth-confirm section > div {
  position:absolute;
  z-index:4;
  inset:12px 36px;
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:1fr 1fr;
  gap:0;
}
.hm-auth-confirm section > div > [data-logout-yes] { grid-row:1; }
.hm-auth-confirm section > div > [data-logout-no] { grid-row:2; }
.hm-home-entry-choice.is-upper-selected .hm-choice-ticket-frame-upper,
.hm-home-entry-choice.is-upper-selected .hm-choice-ticket-upper,
.hm-auth-confirm.is-upper-selected .hm-choice-ticket-frame-upper,
.hm-auth-confirm.is-upper-selected .hm-choice-ticket-upper {
  animation:hm-choice-ticket-tear-up .44s cubic-bezier(.2,.72,.2,1) both;
}
.hm-home-entry-choice.is-lower-selected .hm-choice-ticket-frame-lower,
.hm-home-entry-choice.is-lower-selected .hm-choice-ticket-lower,
.hm-auth-confirm.is-lower-selected .hm-choice-ticket-frame-lower,
.hm-auth-confirm.is-lower-selected .hm-choice-ticket-lower {
  animation:hm-choice-ticket-tear-down .44s cubic-bezier(.2,.72,.2,1) both;
}
.hm-home-entry-choice.is-upper-selected .hm-choice-ticket-frame-upper .hm-choice-ticket-frame-outer,
.hm-home-entry-choice.is-lower-selected .hm-choice-ticket-frame-lower .hm-choice-ticket-frame-outer,
.hm-auth-confirm.is-upper-selected .hm-choice-ticket-frame-upper .hm-choice-ticket-frame-outer,
.hm-auth-confirm.is-lower-selected .hm-choice-ticket-frame-lower .hm-choice-ticket-frame-outer {
  stroke:rgba(226,215,204,.9);
  filter:drop-shadow(0 0 2px rgba(238,227,216,.46)) drop-shadow(0 0 6px rgba(194,160,130,.23));
}
.hm-home-entry-choice.is-upper-selected [data-home-entry-login],
.hm-home-entry-choice.is-lower-selected [data-home-entry-guest],
.hm-auth-confirm.is-upper-selected [data-logout-yes],
.hm-auth-confirm.is-lower-selected [data-logout-no] {
  color:rgba(229,218,207,.94);
  text-shadow:0 0 3px rgba(241,231,222,.4),0 0 8px rgba(194,160,130,.25);
  transform:scale(1.025);
}
.hm-home-entry-choice.is-upper-selected [data-home-entry-guest],
.hm-home-entry-choice.is-lower-selected [data-home-entry-login],
.hm-auth-confirm.is-upper-selected [data-logout-no],
.hm-auth-confirm.is-lower-selected [data-logout-yes] { color:rgba(145,151,154,.3); opacity:.42; }
.hm-home-entry-choice.is-choice-animating .hm-choice-ticket-tear,
.hm-auth-confirm.is-choice-animating .hm-choice-ticket-tear {
  filter:drop-shadow(0 0 3px rgba(190,153,120,.2));
}
@keyframes hm-choice-ticket-tear-up {
  0%,100% { transform:none; }
  45% { transform:translateY(-5px) rotate(-.12deg); }
}
@keyframes hm-choice-ticket-tear-down {
  0%,100% { transform:none; }
  45% { transform:translateY(5px) rotate(.12deg); }
}
@media (max-width:599px) {
  .hm-home-entry-choice > section,
  .hm-auth-confirm > section { width:min(100%,330px); padding:10px 27px; }
  .hm-auth-confirm section > div { inset:10px 27px; }
  .hm-home-entry-choice button,
  .hm-auth-confirm section button { font-size:17px; }
  .hm-choice-ticket-tear { right:16px; left:16px; background-size:auto 1px; }
  .hm-auth-confirm h2 { top:13px; font-size:9px; }
}

/* Homepage support artwork and compact legal footer. */
.home .hm-story-support {
  border-bottom:0;
  width:calc(100% + var(--page) + var(--page));
  margin-inline:calc(0px - var(--page));
  padding-inline:var(--page);
  background:#050505;
}
.home .hm-story-support-cover {
  position:relative;
  display:block;
  width:calc(100% + var(--page) + var(--page));
  margin-inline:calc(0px - var(--page));
  overflow:hidden;
}
.home .hm-story-support-cover > img {
  display:block;
  width:100%;
  height:auto;
}
.home .hm-story-support-cover::after {
  position:absolute;
  inset:0;
  content:"";
  pointer-events:none;
  background:linear-gradient(180deg,#050505 0%,rgba(5,5,5,.05) 15%,transparent 36%,rgba(5,5,5,.3) 68%,#050505 100%);
  box-shadow:none;
}
.home .hm-hero-media::after {
  position:absolute;
  z-index:2;
  inset:0;
  content:"";
  pointer-events:none;
  background:linear-gradient(180deg,transparent 40%,rgba(5,5,5,.2) 76%,#050505 100%);
}
.home .hm-hero { background:#050505; }
.home .hm-home-overview {
  background:linear-gradient(180deg,transparent 0%,rgba(5,5,5,.75) 58%,#050505 100%);
  box-shadow:inset 0 -2px 0 #050505;
}
@media (min-width:900px) {
  .home .hm-story-dynamic-feature {
    width:calc(100% + 32px);
    margin-left:-32px;
  }
  .home .hm-story-dynamic-feature .hm-media-overlay {
    background:
      linear-gradient(90deg,transparent 0%,transparent 62%,rgba(5,5,5,.08) 76%,rgba(5,5,5,.42) 90%,#050505 100%),
      linear-gradient(180deg,#050505 0%,rgba(5,5,5,.02) 15%,transparent 40%,rgba(5,5,5,.2) 76%,#050505 100%);
  }
  .home .hm-story-support {
    width:calc(100% + 64px);
    margin-inline:-32px;
    padding-inline:50px;
  }
  .home .hm-story-support-cover {
    width:calc(100% + 64px);
    margin-inline:-32px;
  }
  .home .hm-story-support-cover::after {
    background:linear-gradient(180deg,#050505 0%,rgba(5,5,5,.02) 15%,transparent 40%,rgba(5,5,5,.2) 76%,#050505 100%);
  }
}
.home .hm-main > .hm-latest { padding-bottom:12px; }
.home .hm-site-footer {
  padding-top:4px;
  padding-bottom:12px;
  line-height:1.45;
}
.home .hm-site-footer p,
.home .hm-site-footer span,
.home .hm-site-footer a { line-height:1.45; }

@media (max-width:599px) {
  .home .hm-main > .hm-latest { padding-bottom:8px; }
  .home .hm-site-footer { padding-top:2px; }
}

/* Homepage cinematic divider: style 05 perforations. */
.home .hm-home-divider {
  position:relative;
  width:min(calc(100% - 40px),1180px);
  height:54px;
  margin-inline:auto;
  overflow:hidden;
  background:transparent;
  pointer-events:none;
}
.home .hm-home-divider--perforation {
  background:none;
}
.home .hm-home-divider__light-row {
  position:absolute;
  top:50%;
  right:0;
  left:0;
  display:flex;
  justify-content:space-between;
  transform:translateY(-50%);
  -webkit-mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.65) 10%,#000 44%,#000 56%,rgba(0,0,0,.65) 90%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.65) 10%,#000 44%,#000 56%,rgba(0,0,0,.65) 90%,transparent 100%);
}
.home .hm-home-divider__light-row > i {
  width:3px;
  height:3px;
  flex:0 0 3px;
  background:#a8a8a8;
  box-shadow:0 0 0 transparent;
  opacity:.16;
  transition:background-color 240ms ease,box-shadow 280ms ease,opacity 240ms ease;
}
.home .hm-home-divider__light-row > i.is-lit {
  background:#dfe1e1;
  box-shadow:0 0 2px rgba(232,235,235,.42),0 0 5px rgba(218,223,224,.16);
  opacity:.72;
}
.home .hm-main > .hm-prologue { margin-bottom:0; }
.home .hm-home-divider--cover-prologue + .hm-prologue { margin-top:0; padding-top:0; }
.home .hm-main > .hm-latest { padding-top:0; }
.home .hm-prologue-content { padding-bottom:0; }
.home .hm-prologue-copy > .hm-prologue-final { margin-bottom:0; }
.home .hm-home-divider--cover-prologue,
.home .hm-home-divider--between-sections,
.home .hm-story-section-divider {
  height:112px;
  margin:0 auto;
}
.home .hm-story-section-divider {
  width:100%;
}
.home .hm-main > .hm-latest { padding-bottom:0; }
.home .hm-site-footer { padding-top:112px; }

@media (max-width:599px) {
  .home .hm-home-divider { width:calc(100% - 40px); height:46px; }
  .home .hm-home-divider--cover-prologue,
  .home .hm-home-divider--between-sections,
  .home .hm-story-section-divider { height:96px; margin:0 auto; }
  .home .hm-story-section-divider { width:100%; }
  .home .hm-main > .hm-latest { padding-bottom:0; }
  .home .hm-site-footer { padding-top:96px; }
}

@media (prefers-reduced-motion:reduce) {
  .home .hm-home-divider,
  .home .hm-home-divider__light-row > i { animation:none !important; transition:none !important; }
}

/* Homepage latest and previous stories: text hierarchy. */
.home .hm-story-current-row {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:start;
  gap:8px;
}
.home .hm-story-current-row .hm-story-unlock-meta {
  width:max-content;
  display:flex;
  align-items:center;
  gap:10px;
  border:0;
  border-radius:0;
  padding:0;
  color:rgba(214,212,207,.76);
  background:none;
  box-shadow:none;
}
.home .hm-story-current-row .hm-story-unlock-meta > span {
  color:rgba(202,205,207,.72);
  font-family:var(--serif) !important;
  font-size:18px;
  font-weight:400;
  line-height:1.2;
  letter-spacing:.08em;
}
.home .hm-story-current-row .hm-story-unlock-meta > b,
.home .hm-story-history-item > b {
  min-width:76px;
  display:inline-grid;
  place-items:center;
  box-sizing:border-box;
  margin:0;
  border:1px solid transparent;
  border-radius:6px;
  padding:3px 6px;
  color:rgba(214,212,207,.76);
  background:
    linear-gradient(108deg,rgba(5,5,5,.9),rgba(9,10,11,.82) 48%,rgba(5,5,5,.92)) padding-box,
    linear-gradient(112deg,rgba(128,136,142,.34) 0%,rgba(221,228,232,.62) 18%,rgba(112,120,126,.3) 42%,rgba(231,237,240,.54) 67%,rgba(104,112,118,.28) 84%,rgba(196,204,209,.46) 100%) border-box;
  box-shadow:inset 0 1px rgba(241,245,247,.035),inset 0 -1px rgba(0,0,0,.72),0 0 10px rgba(198,209,216,.035);
  font-family:var(--sans) !important;
  font-size:12px;
  font-weight:400;
  line-height:1.2;
  letter-spacing:.05em;
  text-align:center;
}
.home .hm-story-current-row .hm-story-current-title {
  width:100%;
  font-size:22px;
  white-space:normal;
}
.home .hm-story-unlock-rule {
  width:50%;
  margin:6px 0 32px;
  background:rgba(184,184,184,.34);
  box-shadow:0 0 7px rgba(235,239,242,.08);
}
.home .hm-story-unlock > p.hm-story-unlock-note { margin-top:0; }
.home .hm-story-history {
  position:relative;
  box-sizing:border-box;
  width:100%;
  margin-top:32px;
}
.home .hm-story-history-list {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:0;
}
.home .hm-story-history-item {
  min-width:0;
  display:grid;
  grid-template-columns:max-content 76px minmax(0,1fr);
  align-items:center;
  column-gap:10px;
  min-height:52px;
  padding:10px 18px;
  color:inherit;
}
.home .hm-story-history-number {
  color:rgba(202,205,207,.72);
  font:400 18px/1.2 var(--serif);
  letter-spacing:.08em;
}
.home .hm-story-history-item > strong {
  display:block;
  overflow:hidden;
  color:rgba(214,212,207,.84);
  font:500 19px/1.45 var(--serif);
  letter-spacing:.035em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.home .hm-story-history-more {
  display:block;
  width:max-content;
  margin:22px 0 0 auto;
  color:rgba(214,212,207,.76);
  font:400 20px/1.2 var(--serif);
  letter-spacing:.12em;
  transition:color .22s ease;
}
.home .hm-story-history-more:hover,
.home .hm-story-history-more:focus-visible { color:#eef0f1; outline:0; }

@media (min-width:900px) {
  .home .hm-story-current-row .hm-story-unlock-meta > span { font-size:21.5px; }
  .home .hm-story-current-row .hm-story-unlock-meta > b {
    width:81.4px;
    min-width:81.4px;
    height:33.4px;
    padding:0;
    font-size:16.5px;
    line-height:1;
    text-indent:.05em;
  }
  .home .hm-story-history {
    width:calc(100% + 32px);
    margin-top:-10px;
    margin-left:-32px;
    padding-right:0;
  }
  .home .hm-story-history-item {
    grid-template-columns:max-content 80px minmax(0,1fr);
    column-gap:10px;
    min-height:62px;
    padding-top:7px;
    padding-bottom:7px;
  }
  .home .hm-story-history-number,
  .home .hm-story-history-item > strong { font-size:16.5px; }
  .home .hm-story-history-item > b {
    width:80px;
    min-width:80px;
    height:27.4px;
    padding:0;
    font-size:13.5px;
    line-height:1;
    text-indent:.05em;
  }
  .home .hm-story-history-more {
    position:absolute;
    top:50%;
    right:0;
    margin:0;
    font-size:22px;
    transform:translateY(-50%);
  }
}

@media (max-width:599px) {
  .home .hm-story-current-row { gap:7px; }
  .home .hm-story-current-row .hm-story-unlock-meta > span { font-size:18.5px; }
  .home .hm-story-current-row .hm-story-unlock-meta > b {
    width:76px;
    min-width:76px;
    height:30px;
    padding:0;
    font-size:13.5px;
    line-height:1;
    text-indent:.05em;
  }
  .home .hm-story-history-item > b {
    width:72px;
    min-width:72px;
    height:24px;
    padding:0;
    font-size:11.5px;
    line-height:1;
    text-indent:.05em;
  }
  .home .hm-story-current-row .hm-story-current-title { font-size:20px; }
  .home .hm-story-unlock-rule { width:50%; margin:6px 0 32px; }
  .home .hm-story-history {
    width:calc(100% + var(--page));
    margin-top:28px;
    margin-left:calc(0px - var(--page));
  }
  .home .hm-story-history-list { grid-template-columns:minmax(0,1fr); gap:0; }
  .home .hm-story-history-item {
    grid-template-columns:max-content 72px minmax(0,1fr);
    column-gap:8px;
    min-height:42px;
    padding:5px var(--page);
  }
  .home .hm-story-history-number { font-size:13.5px; }
  .home .hm-story-history-item > strong { font-size:13.5px; line-height:1.4; }
  .home .hm-story-history-more {
    position:relative;
    left:calc(var(--page) / 2);
    margin:18px auto 0;
    font-size:19px;
  }
}

/* Homepage latest-story column placement. */
@media (min-width:900px) {
  .home .hm-story-unlock {
    grid-template-areas:
      "heading"
      "current"
      "."
      "note"
      "progress-copy"
      "progress"
      "cta"
      "message";
    grid-template-rows:auto auto minmax(20px,1fr) auto auto auto auto auto;
    align-content:stretch;
    gap:10px;
    padding:12px 0 28px;
  }
  .home .hm-story-unlock-heading { grid-area:heading; margin-bottom:10px; }
  .home .hm-story-current-row { grid-area:current; margin-bottom:-2px; }
  .home .hm-story-unlock > p.hm-story-unlock-note { grid-area:note; }
  .home .hm-story-unlock-progress-copy { grid-area:progress-copy; }
  .home .hm-story-unlock-progress { grid-area:progress; }
  .home .hm-story-unlock-cta { grid-area:cta; }
  .home .hm-story-unlock > .hm-story-action-message { grid-area:message; }
}

/* Homepage hover cues: preserve every original surface and frame. */
.home { --hm-home-hover-text-color:#eef0f1; }
.home .hm-home-mvp-board {
  color:inherit;
  text-decoration:none;
  cursor:pointer;
}
.home .hm-menu-primary a::before,
.home .hm-menu-primary a::after {
  display:none;
}
.home .hm-menu-primary a,
.home .hm-menu-primary a:hover,
.home .hm-menu-primary a:focus-visible,
.home .hm-menu-primary a[aria-current="page"] {
  background:none;
}
.home .hm-menu-toggle,
.home .hm-menu-close,
.home .hm-profile-stats a,
.home .hm-home-mvp-board,
.home .hm-menu-primary a,
.home .hm-story-current-title,
.home .hm-story-unlock-preview-play,
.home .hm-story-unlock-cta,
.home .hm-story-support-cta,
.home .hm-story-history-more {
  transition:color 220ms ease,text-shadow 220ms ease,filter 220ms ease,transform 220ms ease;
}
.home .hm-menu-primary a { transform-origin:left center; }
.home .hm-story-current-title { transform-origin:left center; }
.home .hm-story-unlock-preview-play svg {
  transform:scale(1);
  transform-origin:center;
  transition:transform 220ms ease;
}

@media (hover:hover) and (pointer:fine) {
  .home .hm-profile-stats a:hover {
    background:transparent;
  }
  .home .hm-story-unlock-preview-play:hover {
    border-color:rgba(247,249,250,.96);
    color:#050607;
    background:linear-gradient(145deg,#f7f8f8,#c9ced1 72%,#aeb5b8);
    box-shadow:inset 0 1px rgba(255,255,255,.82),inset 0 -1px rgba(71,78,82,.28),0 0 7px rgba(236,243,247,.62),0 0 18px rgba(188,211,224,.34);
    filter:drop-shadow(0 0 5px rgba(231,240,245,.48));
    transform:scale(1.14);
  }
  .home .hm-story-unlock-preview-play:hover svg {
    filter:none;
    transform:scale(1.18);
  }
  .home .hm-story-unlock-preview-play:hover svg path {
    fill:#050607;
    stroke:#050607;
  }
  .home .hm-menu-toggle:hover,
  .home .hm-menu-close:hover,
  .home .hm-profile-stats a:hover,
  .home .hm-home-mvp-board:hover,
  .home .hm-menu-primary a:hover,
  .home .hm-story-current-title:hover {
    filter:drop-shadow(0 0 4px rgba(231,240,245,.32)) drop-shadow(0 0 9px rgba(188,211,224,.17));
    transform:scale(1.025);
  }
  .home .hm-profile-stats a:hover {
    transform:translateY(15px) scale(1.025);
  }
  .home .hm-menu-toggle:hover,
  .home .hm-menu-close:hover,
  .home .hm-profile-stats a:hover,
  .home .hm-home-mvp-board:hover,
  .home .hm-menu-primary a:hover,
  .home .hm-story-current-title:hover,
  .home .hm-story-history-more:hover {
    text-shadow:0 0 7px rgba(235,242,246,.3),0 0 13px rgba(190,214,226,.14);
  }
  .home .hm-story-history-more:hover {
    color:var(--hm-home-hover-text-color);
    filter:drop-shadow(0 0 4px rgba(231,240,245,.32)) drop-shadow(0 0 9px rgba(188,211,224,.17));
    transform:scale(1.025);
  }
  .home .hm-story-current-title:hover {
    color:var(--hm-home-hover-text-color);
  }
  .home .hm-story-unlock-cta:hover::before,
  .home .hm-story-support-cta:hover::before {
    animation:none;
  }
  .home .hm-story-unlock-cta:not(.is-payment-starting):hover::after,
  .home .hm-story-support-cta:not(.is-payment-starting):hover::after {
    display:block;
    position:absolute;
    z-index:2;
    top:-42%;
    bottom:-42%;
    left:-34%;
    width:28%;
    content:"";
    opacity:0;
    background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.08) 34%,rgba(250,252,253,.82) 49%,rgba(220,229,234,.28) 58%,transparent 74%);
    transform:skewX(-17deg) translateX(0);
    animation:hm-story-cta-hover-beam 720ms cubic-bezier(.22,.61,.36,1) 1;
    pointer-events:none;
  }
}

@keyframes hm-story-cta-hover-beam {
  0% { opacity:0; transform:skewX(-17deg) translateX(0); }
  16% { opacity:.9; }
  82% { opacity:.86; }
  100% { opacity:0; transform:skewX(-17deg) translateX(600%); }
}

.home .hm-site-footer-contact {
  display:block;
  width:max-content;
  max-width:100%;
  margin:0;
  border:0;
  padding:0;
  color:inherit;
  background:none;
  font:inherit;
  line-height:inherit;
  text-align:left;
  cursor:copy;
  appearance:none;
}
.home .hm-site-footer-contact:hover,
.home .hm-site-footer-contact:focus-visible {
  color:inherit;
  background:none;
  box-shadow:none;
  filter:none;
  text-shadow:none;
  transform:none;
}

@media (min-width:900px) {
  .home .hm-site-footer-contact { font-size:8px; line-height:1.65; }
}

@media (min-width:900px) and (hover:hover) and (pointer:fine) {
  .home .hm-story-history-more:hover { transform:translateY(-50%) scale(1.025); }
}

@media (prefers-reduced-motion:reduce) {
  .home .hm-menu-toggle,
  .home .hm-menu-close,
  .home .hm-profile-stats a,
  .home .hm-home-mvp-board,
  .home .hm-menu-primary a,
  .home .hm-story-current-title,
  .home .hm-story-unlock-preview-play,
  .home .hm-story-unlock-preview-play svg,
  .home .hm-story-unlock-cta,
  .home .hm-story-support-cta,
  .home .hm-story-history-more { transition:none; }
  .home .hm-story-unlock-cta:hover::after,
  .home .hm-story-support-cta:hover::after { animation:none; }
}

/* Continuous viewport vignette below each page hero. */
.home .hm-home-cinematic-vignette,
body:not(.home) .hm-page-cinematic-vignette {
  --hm-home-vignette-start:100dvh;
  --hm-home-vignette-blend:clamp(56px,8dvh,104px);
  position:fixed;
  z-index:12;
  inset:0 max(0px,calc((100vw - 1280px) / 2));
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.34) 6%,rgba(0,0,0,.12) 18%,transparent 34%,transparent 66%,rgba(0,0,0,.11) 82%,rgba(0,0,0,.32) 94%,rgba(0,0,0,.56) 100%),
    linear-gradient(180deg,rgba(0,0,0,.26) 0%,rgba(0,0,0,.075) 11%,transparent 25%,transparent 71%,rgba(0,0,0,.095) 87%,rgba(0,0,0,.34) 100%),
    linear-gradient(132deg,rgba(0,0,0,.12) 0%,transparent 28%,transparent 72%,rgba(0,0,0,.11) 100%);
  background-position:center;
  background-repeat:no-repeat;
  background-size:100% 100%;
  -webkit-mask-image:
    linear-gradient(to bottom,transparent 0,transparent var(--hm-home-vignette-start),#000 calc(var(--hm-home-vignette-start) + var(--hm-home-vignette-blend))),
    linear-gradient(to right,transparent 0,#000 12px,#000 calc(100% - 12px),transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:
    linear-gradient(to bottom,transparent 0,transparent var(--hm-home-vignette-start),#000 calc(var(--hm-home-vignette-start) + var(--hm-home-vignette-blend))),
    linear-gradient(to right,transparent 0,#000 12px,#000 calc(100% - 12px),transparent 100%);
  mask-composite:intersect;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
}
body:not(.home) .hm-page-cinematic-vignette { opacity:0; }
body:not(.home) .hm-page-cinematic-vignette.is-ready { opacity:1; }

@media (min-width:600px) {
  .home .hm-app-shell {
    box-shadow:none;
  }
  .home .hm-main {
    border-left:0;
    border-right:0;
  }
  .home .hm-header::after {
    position:absolute;
    right:-2px;
    bottom:-18px;
    left:-2px;
    height:18px;
    content:"";
    pointer-events:none;
    background:linear-gradient(180deg,rgba(5,5,5,.62) 0%,rgba(5,5,5,.42) 35%,rgba(5,5,5,.16) 70%,transparent 100%);
  }
  .home .hm-story-dynamic-feature .hm-feature-media::before {
    position:absolute;
    z-index:3;
    top:0;
    bottom:0;
    left:0;
    width:clamp(56px,4.6vw,70px);
    content:"";
    pointer-events:none;
    background:linear-gradient(90deg,#050505 0 12px,rgba(5,5,5,.98) 20px,rgba(5,5,5,.74) 38px,rgba(5,5,5,.24) 76%,transparent 100%);
  }
}

/* Latest story state and title sizing. */
.home .hm-story-unlock-rule { width:145.131px; }
.home .hm-story-current-row .hm-story-unlock-meta > b {
  width:72px;
  min-width:72px;
  height:28px;
  font-size:14px;
}
.home .hm-story-current-row .hm-story-current-title { font-size:28px; }

@media (max-width:599px) {
  .home .hm-story-current-row .hm-story-unlock-meta > b {
    width:68px;
    min-width:68px;
    height:26px;
    font-size:12px;
  }
  .home .hm-story-current-row .hm-story-current-title { font-size:24px; }
}

/* Homepage payment actions: solid silver tickets without a tear-away state. */
.home .hm-story-ticket,
.home .hm-story-ticket:hover,
.home .hm-story-ticket:active,
.home .hm-story-ticket:focus-visible,
.home .hm-story-ticket.is-payment-starting,
.home .hm-story-ticket.is-payment-starting:hover {
  --hm-ticket-main-width:75%;
  --hm-ticket-notch:14.5px;
  --hm-ticket-notch-clear:13.7px;
  position:relative;
  width:280px;
  min-width:280px;
  min-height:80px;
  aspect-ratio:3.5/1;
  display:grid;
  grid-template-columns:var(--hm-ticket-main-width) calc(100% - var(--hm-ticket-main-width));
  align-items:stretch;
  justify-self:start;
  overflow:visible;
  border:0;
  border-radius:0;
  padding:0;
  clip-path:none;
  color:#171a1c;
  background:transparent;
  box-shadow:none;
  font-family:var(--serif);
  filter:none;
  transform:none;
  transition:transform 100ms ease-out,filter 220ms ease;
  -webkit-tap-highlight-color:transparent;
}
.home .hm-story-ticket::before,
.home .hm-story-ticket::after,
.home .hm-story-ticket:hover::before,
.home .hm-story-ticket:hover::after,
.home .hm-story-ticket:active::before,
.home .hm-story-ticket:active::after,
.home .hm-story-ticket:focus-visible::before,
.home .hm-story-ticket:focus-visible::after,
.home .hm-story-ticket.is-payment-starting::before,
.home .hm-story-ticket.is-payment-starting::after {
  display:none !important;
  content:none !important;
  animation:none !important;
}
.home .hm-story-ticket > .hm-ticket-main,
.home .hm-story-ticket > .hm-ticket-stub {
  color:#171a1c;
  background:
    linear-gradient(180deg,rgba(255,255,255,.72) 0,rgba(255,255,255,.2) 18%,transparent 44%,rgba(43,49,53,.3) 100%),
    linear-gradient(112deg,rgba(255,255,255,.3),transparent 27% 70%,rgba(255,255,255,.12)),
    linear-gradient(145deg,#e2e5e7 0%,#c1c6c9 52%,#969ea2 100%);
  box-shadow:inset 0 2px 1px rgba(255,255,255,.9),inset 0 -3px 3px rgba(40,46,50,.56),inset 1px 0 rgba(255,255,255,.26),0 7px 20px rgba(0,0,0,.42);
  opacity:1;
  filter:none;
}
.home .hm-story-ticket > .hm-ticket-main {
  grid-row:1;
  border-radius:9px 0 0 9px;
  transform:none;
  clip-path:none;
}
.home .hm-story-ticket > .hm-ticket-stub {
  grid-row:1;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:0 9px 9px 0;
  transform:none;
  clip-path:none;
}
.home .hm-story-ticket .hm-ticket-frame-outer {
  stroke:rgba(92,99,103,.46);
  filter:drop-shadow(0 -1px .55px rgba(255,255,255,.52)) drop-shadow(0 1.1px .75px rgba(38,44,47,.72)) drop-shadow(0 0 1.2px rgba(92,99,103,.18));
}
.home .hm-story-ticket .hm-ticket-frame-inner {
  color:rgba(78,84,88,.78);
  filter:drop-shadow(0 1px .45px rgba(255,255,255,.34));
}
.home .hm-story-ticket .hm-ticket-label {
  color:#171a1c;
  font-size:27px;
  font-weight:600;
  letter-spacing:.1em;
  text-shadow:0 1px rgba(255,255,255,.62),0 -1px rgba(72,78,82,.24);
}
.home .hm-story-ticket .hm-ticket-stub > span {
  position:absolute;
  top:50%;
  left:50%;
  color:rgba(35,40,43,.72);
  font-size:8.5px;
  letter-spacing:.13em;
  text-align:center;
  transform:translate(-50%,-50%) rotate(180deg);
}
.home .hm-story-ticket > .hm-ticket-main::after,
.home .hm-story-ticket > .hm-ticket-stub::before { display:none; opacity:0; }
.home .hm-story-ticket > .hm-ticket-tear {
  position:absolute;
  z-index:4;
  top:9px;
  bottom:9px;
  left:var(--hm-ticket-main-width);
  display:block;
  width:2px;
  padding:0;
  border:0;
  background:repeating-linear-gradient(to bottom,rgba(53,60,64,.58) 0 4px,transparent 4px 8px);
  box-shadow:none;
  filter:drop-shadow(-1px 0 rgba(255,255,255,.2)) drop-shadow(1px 0 rgba(35,40,43,.32));
  opacity:1;
  pointer-events:none;
}
.home .hm-story-ticket > .hm-ticket-main::before {
  display:block;
  width:30%;
  background:linear-gradient(90deg,transparent,rgba(245,248,249,.1) 18%,rgba(255,255,255,.62) 50%,rgba(241,246,248,.12) 82%,transparent);
  filter:drop-shadow(0 0 3px rgba(255,255,255,.24));
  animation:hm-story-ticket-idle-sweep 4.8s cubic-bezier(.22,.61,.36,1) infinite;
}
.home .hm-story-ticket:hover {
  filter:none;
  transform:scale(1.035);
}
.home .hm-story-ticket.is-payment-starting > .hm-ticket-main::before {
  animation:hm-home-ticket-silver-sweep 560ms cubic-bezier(.22,.61,.36,1) 1;
}
@media (hover:hover) and (min-width:600px) {
  .home .hm-story-ticket > .hm-ticket-main::before {
    width:32%;
    background:linear-gradient(90deg,transparent,rgba(245,248,249,.14) 18%,rgba(255,255,255,.82) 50%,rgba(241,246,248,.16) 82%,transparent);
    filter:drop-shadow(0 0 4px rgba(255,255,255,.32));
  }
}
.home .hm-story-ticket:hover .hm-ticket-label {
  color:#171a1c;
  text-shadow:0 1px rgba(255,255,255,.62),0 -1px rgba(72,78,82,.24);
}
.home .hm-story-ticket:active { filter:brightness(.96); transform:translateY(1px); }
.home .hm-story-ticket:focus-visible {
  outline:1px solid rgba(235,241,244,.8);
  outline-offset:4px;
}
.home .hm-story-ticket:disabled { cursor:wait; opacity:1; }
.home .hm-story-ticket.is-payment-starting {
  filter:brightness(1.08) drop-shadow(0 0 8px rgba(225,235,240,.34));
}
.home .hm-story-ticket.is-payment-starting > .hm-ticket-main,
.home .hm-story-ticket.is-payment-starting > .hm-ticket-stub {
  color:#171a1c;
  transform:none !important;
  clip-path:none !important;
  animation:hm-home-ticket-edge-ignite 720ms ease 1;
}
.home .hm-story-ticket.is-payment-starting .hm-ticket-frame-outer {
  stroke:rgba(226,215,204,.9);
  filter:drop-shadow(0 0 2px rgba(238,227,216,.48)) drop-shadow(0 0 6px rgba(194,160,130,.24));
}
.home .hm-story-ticket.is-payment-starting .hm-ticket-frame-inner {
  stroke:rgba(54,60,64,.84);
  filter:drop-shadow(0 0 2px rgba(190,153,120,.2));
}
.home .hm-story-ticket.is-payment-starting > .hm-ticket-tear {
  background:repeating-linear-gradient(to bottom,rgba(224,207,189,.9) 0 4px,transparent 4px 8px);
  box-shadow:0 0 3px rgba(190,153,120,.22);
  opacity:1;
}

@media (min-width:600px) {
  .home .hm-story-support { grid-template-columns:minmax(250px,1fr) 280px; }
}

@media (max-width:599px) {
  .home .hm-story-ticket,
  .home .hm-story-ticket:hover,
  .home .hm-story-ticket:active,
  .home .hm-story-ticket:focus-visible,
  .home .hm-story-ticket.is-payment-starting,
  .home .hm-story-ticket.is-payment-starting:hover {
    --hm-ticket-notch:8px;
    --hm-ticket-notch-clear:7.4px;
    width:154px;
    min-width:154px;
    min-height:44px;
  }
  .home .hm-story-ticket > .hm-ticket-main { border-radius:5px 0 0 5px; }
  .home .hm-story-ticket > .hm-ticket-stub { border-radius:0 5px 5px 0; }
  .home .hm-story-ticket .hm-ticket-label { font-size:19px; }
  .home .hm-story-ticket .hm-ticket-stub > span { font-size:4.7px; }
  .home .hm-story-ticket > .hm-ticket-tear {
    top:5px;
    bottom:5px;
    width:1px;
    background:repeating-linear-gradient(to bottom,rgba(53,60,64,.62) 0 2px,transparent 2px 4px);
  }
}

@media (hover:none) {
  .home .hm-story-ticket:hover { filter:none; transform:none; }
  .home .hm-story-ticket.is-touch-flashing,
  .home .hm-story-ticket.is-touch-flashing:hover {
    filter:brightness(1.22) drop-shadow(0 0 12px rgba(232,240,244,.48));
    transform:scale(1.045);
  }
  .home .hm-story-ticket.is-touch-flashing > .hm-ticket-main::before {
    width:38%;
    background:linear-gradient(90deg,transparent,rgba(247,250,251,.18) 16%,rgba(255,255,255,.9) 50%,rgba(241,246,248,.2) 84%,transparent);
    filter:drop-shadow(0 0 5px rgba(255,255,255,.4));
    animation:hm-story-ticket-mobile-tap-sweep 480ms cubic-bezier(.22,.61,.36,1) 1;
  }
  .home .hm-story-ticket.is-touch-flashing .hm-ticket-frame-outer {
    stroke:rgba(241,246,248,.94);
    filter:drop-shadow(0 0 4px rgba(240,247,250,.56));
  }
  .home .hm-story-ticket.is-touch-flashing .hm-ticket-label {
    text-shadow:0 1px rgba(255,255,255,.88),0 0 8px rgba(255,255,255,.52);
  }
}

@keyframes hm-story-ticket-idle-sweep {
  0%,70% { opacity:0; transform:translateX(0); }
  74% { opacity:.74; }
  90% { opacity:.74; }
  96%,100% { opacity:0; transform:translateX(315%); }
}
@keyframes hm-story-ticket-mobile-tap-sweep {
  0% { opacity:0; transform:translateX(0); }
  14% { opacity:1; }
  82% { opacity:1; }
  100% { opacity:0; transform:translateX(265%); }
}

@media (prefers-reduced-motion:reduce) {
  .home .hm-story-ticket,
  .home .hm-story-ticket > .hm-ticket-main,
  .home .hm-story-ticket > .hm-ticket-stub { transition:none; }
  .home .hm-story-ticket > .hm-ticket-main::before,
  .home .hm-story-ticket:hover > .hm-ticket-main::before,
  .home .hm-story-ticket.is-touch-flashing > .hm-ticket-main::before,
  .home .hm-story-ticket.is-payment-starting > .hm-ticket-main::before,
  .home .hm-story-ticket.is-payment-starting > .hm-ticket-main,
  .home .hm-story-ticket.is-payment-starting > .hm-ticket-stub { animation:none; }
}

/* Homepage previous stories: two-card horizontal rail ending at More. */
.home .hm-story-history.hm-story-history--rail {
  width:100%;
  margin:42px 0 0;
  padding:0;
}
.home .hm-story-history-viewport {
  --hm-story-history-gap:18px;
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  cursor:grab;
  touch-action:pan-x pan-y;
  -webkit-overflow-scrolling:touch;
}
.home .hm-story-history-viewport::-webkit-scrollbar { display:none; }
.home .hm-story-history-viewport:focus-visible {
  outline:1px solid rgba(210,218,222,.28);
  outline-offset:5px;
}
.home .hm-story-history-viewport.is-dragging {
  scroll-behavior:auto;
  scroll-snap-type:none;
  cursor:grabbing;
  user-select:none;
}
.home .hm-story-history-track {
  width:100%;
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:calc((100% - var(--hm-story-history-gap)) / 2);
  gap:var(--hm-story-history-gap);
  align-items:stretch;
}
.home .hm-story-history-card {
  min-width:0;
  display:grid;
  align-content:start;
  gap:10px;
  color:inherit;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  -webkit-user-drag:none;
}
.home .hm-story-history-cover {
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#08090a;
}
.home .hm-story-history-cover > img,
.home .hm-story-history-cover > .hm-media-placeholder {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.72;
  filter:saturate(.7) contrast(.92) brightness(.82);
  transition:opacity 220ms ease,filter 220ms ease,transform 260ms ease;
}
.home .hm-story-history-cover > i {
  position:absolute;
  inset:0;
  display:block;
  pointer-events:none;
  background:linear-gradient(to bottom,rgba(0,0,0,.66) 0,rgba(0,0,0,.14) 30%,transparent 47%,rgba(0,0,0,.12) 67%,rgba(0,0,0,.76) 100%);
}
.home .hm-story-history-copy {
  min-width:0;
  display:grid;
  gap:6px;
}
.home .hm-story-history-meta {
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
}
.home .hm-story-history-meta > span {
  color:rgba(202,205,207,.48);
  font:400 16px/1.15 var(--serif);
  letter-spacing:.08em;
}
.home .hm-story-history-meta > b {
  min-width:58px;
  display:inline-grid;
  place-items:center;
  box-sizing:border-box;
  height:23px;
  border:1px solid rgba(164,172,177,.24);
  border-radius:5px;
  padding:0 7px;
  color:rgba(202,205,207,.48);
  background:rgba(7,8,9,.2);
  font:400 11px/1 var(--sans);
  letter-spacing:.04em;
  white-space:nowrap;
}
.home .hm-story-history-copy > strong {
  min-width:0;
  display:block;
  overflow:hidden;
  color:rgba(214,212,207,.58);
  font:500 18px/1.35 var(--serif);
  letter-spacing:.035em;
  text-overflow:ellipsis;
  white-space:nowrap;
  transition:color 220ms ease,text-shadow 220ms ease;
}
.home .hm-story-history--rail .hm-story-history-more {
  position:relative;
  inset:auto;
  width:auto;
  min-width:0;
  height:auto;
  display:grid;
  place-items:center;
  margin:0;
  padding:0;
  color:rgba(214,212,207,.62);
  font:400 22px/1.2 var(--serif);
  letter-spacing:.12em;
  transform:none;
  scroll-snap-align:end;
  scroll-snap-stop:always;
}
.home .hm-story-history--rail .hm-story-history-more:hover,
.home .hm-story-history--rail .hm-story-history-more:focus-visible {
  color:var(--hm-home-hover-text-color);
  text-shadow:0 0 7px rgba(235,242,246,.3),0 0 13px rgba(190,214,226,.14);
  filter:drop-shadow(0 0 4px rgba(231,240,245,.32)) drop-shadow(0 0 9px rgba(188,211,224,.17));
  outline:0;
  transform:scale(1.025);
}
@media (hover:hover) and (pointer:fine) {
  .home .hm-story-history-card:hover .hm-story-history-cover > img,
  .home .hm-story-history-card:hover .hm-story-history-cover > .hm-media-placeholder {
    opacity:.8;
    filter:saturate(.76) contrast(.96) brightness(.88);
    transform:scale(1.012);
  }
  .home .hm-story-history-card:hover .hm-story-history-copy > strong {
    color:rgba(236,235,231,.72);
    text-shadow:0 0 7px rgba(235,242,246,.16);
  }
}
@media (min-width:600px) {
  .home .hm-story-unlock > p.hm-story-unlock-note,
  .home .hm-story-unlock-progress-copy,
  .home .hm-story-unlock-progress,
  .home .hm-story-unlock-cta,
  .home .hm-story-unlock > .hm-story-action-message {
    position:relative;
    top:20px;
  }
}
@media (max-width:599px) {
  .home .hm-story-history.hm-story-history--rail { margin-top:24px; }
  .home .hm-story-history-viewport { --hm-story-history-gap:10px; }
  .home .hm-story-history-card { gap:8px; }
  .home .hm-story-history-copy { gap:5px; }
  .home .hm-story-history-meta { gap:6px; }
  .home .hm-story-history-meta > span { font-size:13px; }
  .home .hm-story-history-meta > b {
    min-width:48px;
    height:20px;
    border-radius:4px;
    padding:0 5px;
    font-size:9px;
  }
  .home .hm-story-history-copy > strong { font-size:14px; }
  .home .hm-story-history--rail .hm-story-history-more { font-size:19px; }
}
@media (prefers-reduced-motion:reduce) {
  .home .hm-story-history-viewport { scroll-behavior:auto; }
  .home .hm-story-history-cover > img,
  .home .hm-story-history-cover > .hm-media-placeholder,
  .home .hm-story-history-copy > strong,
  .home .hm-story-history--rail .hm-story-history-more { transition:none; }
}

/* Homepage progress, payment reflections and compact previous-story list. */
.home .hm-story-unlock-progress-panel {
  display:grid;
  gap:8px;
  min-width:0;
  width:100%;
  justify-self:stretch;
}
.home .hm-story-unlock-progress-panel .hm-story-unlock-progress-copy {
  grid-area:auto;
  position:static;
  top:auto;
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) max-content;
  grid-template-areas:
    ". percent"
    "current target";
  align-items:end;
  gap:2px 20px;
  margin:0;
  color:#c2c6c9;
  font-family:var(--serif);
}
.home .hm-story-unlock-progress-copy > b {
  display:contents;
  font-weight:400;
  color:#c2c6c9;
}
.home .hm-story-unlock-progress-label {
  grid-area:auto;
  display:block;
  align-self:end;
  margin:0;
  color:rgba(194,199,202,.76);
  font:400 16.5px/1.6 var(--sans);
  letter-spacing:.04em;
}
.home .hm-story-unlock-progress-current,
.home .hm-story-unlock-progress-copy > b > small {
  color:#c9cdd0;
  font:400 16px/1.6 var(--sans);
  font-family:var(--sans) !important;
  letter-spacing:.04em;
  white-space:nowrap;
}
.home .hm-story-unlock-progress-current { grid-area:current; }
.home .hm-story-unlock-progress-copy > b > small {
  grid-area:target;
  justify-self:end;
}
.home .hm-story-unlock-progress-copy > b > strong {
  color:#d0d3d5;
  font:400 29px/1.1 var(--serif);
  letter-spacing:.055em;
  white-space:nowrap;
}
.home .hm-story-unlock-progress-copy > b > strong {
  grid-area:percent;
  align-self:end;
  justify-self:end;
}
.home .hm-story-unlock-progress-panel .hm-story-unlock-progress {
  grid-area:auto;
  position:relative;
  top:auto;
  width:100%;
  height:2px;
  margin-top:1px;
  background:rgba(255,255,255,.16);
  box-shadow:0 1px 0 rgba(0,0,0,.72);
}

.home .hm-story-ticket-stage {
  position:relative;
  isolation:isolate;
  width:280px;
  min-width:280px;
  display:grid;
  grid-template-rows:auto auto;
  row-gap:0;
  padding-bottom:14px;
  justify-items:stretch;
  align-content:start;
  overflow:visible;
}
.home .hm-story-ticket-stage::after {
  position:absolute;
  z-index:1;
  top:calc(100% - 54px);
  right:4%;
  left:4%;
  height:54px;
  content:"";
  pointer-events:none;
  background:
    radial-gradient(ellipse 86% 44% at 50% 0,rgba(210,218,222,.132),rgba(174,185,191,.074) 48%,transparent 84%),
    radial-gradient(ellipse 92% 74% at 50% 0,rgba(174,185,191,.076),rgba(130,143,149,.044) 58%,transparent 88%),
    radial-gradient(ellipse 98% 100% at 50% 0,rgba(126,139,146,.044),rgba(91,104,111,.025) 64%,transparent 94%);
  filter:blur(3.2px);
  opacity:.88;
}
.home .hm-story-ticket-stage > .hm-story-ticket { z-index:2; grid-area:auto; top:auto; }
.home .hm-story-ticket-reflection {
  position:relative;
  z-index:2;
  isolation:isolate;
  width:280px;
  height:46px;
  display:grid;
  grid-template-columns:75% 25%;
  margin-top:0;
  opacity:1;
  filter:none;
  pointer-events:none;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.94) 0,rgba(0,0,0,.86) 28%,rgba(0,0,0,.62) 58%,rgba(0,0,0,.3) 80%,rgba(0,0,0,.1) 93%,transparent 100%);
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.94) 0,rgba(0,0,0,.86) 28%,rgba(0,0,0,.62) 58%,rgba(0,0,0,.3) 80%,rgba(0,0,0,.1) 93%,transparent 100%);
}
.home .hm-story-ticket-reflection::before {
  position:absolute;
  z-index:3;
  top:-1px;
  right:-2px;
  left:-2px;
  height:13px;
  content:"";
  background:
    radial-gradient(ellipse 20% 52% at 50% 0,rgba(14,17,19,.72) 0 24%,rgba(75,83,88,.22) 55%,transparent 90%),
    radial-gradient(ellipse 10% 49% at 75% 0,rgba(13,16,18,.74) 0 23%,rgba(73,81,86,.2) 54%,transparent 89%),
    radial-gradient(ellipse 31% 118% at 11% 0,rgba(18,21,23,.66) 0 24%,rgba(78,87,92,.2) 60%,transparent 94%),
    radial-gradient(ellipse 27% 110% at 34% 0,rgba(20,23,25,.62) 0 24%,rgba(82,91,96,.18) 61%,transparent 94%),
    radial-gradient(ellipse 25% 108% at 63% 0,rgba(20,23,25,.62) 0 24%,rgba(82,91,96,.18) 61%,transparent 94%),
    radial-gradient(ellipse 30% 118% at 90% 0,rgba(18,21,23,.66) 0 24%,rgba(78,87,92,.2) 60%,transparent 94%),
    linear-gradient(180deg,rgba(17,20,22,.48) 0,rgba(83,92,97,.16) 46%,transparent 92%);
  filter:blur(2.2px);
  mix-blend-mode:normal;
  opacity:.64;
}
.home .hm-story-ticket-reflection::after {
  position:absolute;
  z-index:4;
  top:0;
  bottom:14px;
  left:75%;
  width:2px;
  content:"";
  background:repeating-linear-gradient(to bottom,rgba(49,55,59,.58) 0 3px,transparent 3px 7px);
  box-shadow:-1px 0 rgba(239,243,245,.08),1px 0 rgba(0,0,0,.12);
  filter:blur(.45px);
  opacity:.66;
  transform:translateX(-1px);
}
.home .hm-story-ticket-reflection > i,
.home .hm-story-ticket-reflection > b {
  position:relative;
  z-index:1;
  display:block;
  min-width:0;
  background:linear-gradient(180deg,rgba(224,229,232,.305) 0%,rgba(202,209,213,.255) 27%,rgba(169,179,184,.185) 54%,rgba(130,142,148,.103) 77%,rgba(94,107,114,.032) 100%);
  box-shadow:0 6px 12px rgba(215,224,228,.12),0 17px 27px rgba(158,170,176,.08),0 31px 42px rgba(100,112,119,.044);
  filter:blur(1.9px);
}
.home .hm-story-ticket-reflection > i {
  border-radius:9px 0 0 9px;
  clip-path:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.5) 6%,#000 17%);
  mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.5) 6%,#000 17%);
}
.home .hm-story-ticket-reflection > b {
  border-radius:0 9px 9px 0;
  clip-path:none;
  -webkit-mask-image:linear-gradient(90deg,#000 0 82%,rgba(0,0,0,.5) 94%,transparent 100%);
  mask-image:linear-gradient(90deg,#000 0 82%,rgba(0,0,0,.5) 94%,transparent 100%);
}
.home .hm-story-unlock > .hm-story-ticket-stage { justify-self:start; }
.home .hm-story-support > .hm-story-ticket-stage { justify-self:center; }

.home .hm-story-history.hm-story-history--list {
  position:relative;
  box-sizing:border-box;
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1.85fr) minmax(330px,1fr);
  column-gap:clamp(30px,3.2vw,44px);
  align-items:stretch;
  margin:24px 0 0;
  padding:0;
}
.home .hm-story-history--list .hm-story-history-list {
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:0;
  padding-right:0;
}
.home .hm-story-history--list .hm-story-history-item {
  min-width:0;
  min-height:48px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 34px;
  align-items:center;
  column-gap:10px;
  border:0;
  padding:3px 0;
  color:inherit;
  background:none;
}
.home .hm-story-history-story-link {
  min-width:0;
  display:grid;
  grid-template-columns:max-content 45px 78px minmax(0,1fr);
  align-items:center;
  column-gap:10px;
  color:inherit;
  transform-origin:left center;
  transition:filter 220ms ease,transform 220ms ease;
}
.home .hm-story-history-kicker {
  color:rgba(214,212,207,.76);
  font:500 18px/1.2 var(--serif);
  letter-spacing:.08em;
  white-space:nowrap;
}
.home .hm-story-history--list .hm-story-history-number {
  width:45px;
  color:rgba(202,205,207,.5);
  font:400 16px/1.2 var(--serif);
  letter-spacing:.08em;
  text-align:center;
}
.home .hm-story-history--list .hm-story-history-story-link > b {
  width:78px;
  min-width:78px;
  display:inline-grid;
  place-items:center;
  box-sizing:border-box;
  height:27px;
  margin:0;
  padding:0;
  border:1px solid rgba(184,191,196,.36);
  border-radius:6px;
  color:rgba(214,218,220,.66);
  background:
    linear-gradient(108deg,rgba(5,5,5,.9),rgba(9,10,11,.82) 48%,rgba(5,5,5,.92)) padding-box,
    linear-gradient(112deg,rgba(128,136,142,.34) 0%,rgba(221,228,232,.62) 18%,rgba(112,120,126,.3) 42%,rgba(231,237,240,.54) 67%,rgba(104,112,118,.28) 84%,rgba(196,204,209,.46) 100%) border-box;
  box-shadow:inset 0 1px rgba(241,245,247,.035),inset 0 -1px rgba(0,0,0,.72),0 0 10px rgba(198,209,216,.035);
  font-family:var(--sans) !important;
  font-size:12px;
  font-weight:400;
  line-height:1;
  letter-spacing:.05em;
  text-align:center;
}
.home .hm-story-history-title {
  min-width:0;
  display:block;
  overflow:hidden;
  margin-left:14px;
  color:rgba(214,212,207,.62);
  font:500 16px/1.4 var(--serif);
  letter-spacing:.035em;
  text-overflow:ellipsis;
  white-space:nowrap;
  transform-origin:left center;
  transition:color 220ms ease,text-shadow 220ms ease,filter 220ms ease,transform 220ms ease;
}
.home .hm-story-history-play {
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:1px solid rgba(202,209,212,.48);
  border-radius:50%;
  padding:0;
  color:rgba(214,220,223,.64);
  background:transparent;
  box-shadow:0 0 8px rgba(205,218,225,.08);
  cursor:pointer;
  transition:color 220ms ease,border-color 220ms ease,box-shadow 220ms ease,transform 220ms ease;
}
.home .hm-story-history-play.is-disabled { cursor:default; opacity:.42; }
.home .hm-story-history-play svg { width:11px; height:11px; fill:currentColor; }
.home .hm-story-history-play svg {
  overflow:visible;
  fill:none;
  transform:scale(1);
  transform-origin:center;
  transition:transform 220ms ease;
}
.home .hm-story-history-play svg path {
  fill:none;
  stroke:currentColor;
  stroke-width:1.05;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.home .hm-story-history--list .hm-story-history-more {
  position:relative;
  inset:auto;
  width:auto;
  min-width:0;
  height:auto;
  display:grid;
  place-items:center start;
  margin:0;
  padding:0;
  color:rgba(214,212,207,.62);
  font:400 22px/1.2 var(--serif);
  letter-spacing:.12em;
  transform:none;
}
.home .hm-story-history--list .hm-story-history-more::before {
  content:"";
  position:absolute;
  top:50%;
  left:calc(clamp(30px,3.2vw,44px) / -2);
  width:.5px;
  height:96px;
  background:linear-gradient(180deg,transparent,rgba(202,209,212,.42) 24% 76%,transparent);
  transform:translate(-50%,-50%);
}
.home .hm-story-history--list .hm-story-history-more:hover,
.home .hm-story-history--list .hm-story-history-more:focus-visible {
  color:var(--hm-home-hover-text-color);
  text-shadow:0 0 7px rgba(235,242,246,.3),0 0 13px rgba(190,214,226,.14);
  filter:drop-shadow(0 0 4px rgba(231,240,245,.32)) drop-shadow(0 0 9px rgba(188,211,224,.17));
  outline:0;
  transform:scale(1.025);
}
@media (hover:hover) and (pointer:fine) {
  .home .hm-story-history-play:hover {
    border-color:rgba(247,249,250,.96);
    color:#050607;
    background:linear-gradient(145deg,#f7f8f8,#c9ced1 72%,#aeb5b8);
    box-shadow:inset 0 1px rgba(255,255,255,.82),inset 0 -1px rgba(71,78,82,.28),0 0 7px rgba(236,243,247,.62),0 0 18px rgba(188,211,224,.34);
    filter:drop-shadow(0 0 5px rgba(231,240,245,.48));
    transform:scale(1.14);
  }
  .home .hm-story-history-play:hover svg { filter:none; transform:scale(1.18); }
  .home .hm-story-history-play:hover svg path { fill:#050607; stroke:#050607; }
}
@media (min-width:900px) {
  .home .hm-story-history-story-link:hover,
  .home .hm-story-history-story-link:focus-visible {
    filter:drop-shadow(0 0 4px rgba(231,240,245,.32)) drop-shadow(0 0 9px rgba(188,211,224,.17));
    outline:0;
    transform:scale(1.025);
  }
  .home .hm-story-history-story-link:hover .hm-story-history-kicker,
  .home .hm-story-history-story-link:hover .hm-story-history-number,
  .home .hm-story-history-story-link:hover > b,
  .home .hm-story-history-story-link:hover .hm-story-history-title,
  .home .hm-story-history-story-link:focus-visible .hm-story-history-kicker,
  .home .hm-story-history-story-link:focus-visible .hm-story-history-number,
  .home .hm-story-history-story-link:focus-visible > b,
  .home .hm-story-history-story-link:focus-visible .hm-story-history-title {
    color:#eef0f1;
    text-shadow:0 0 7px rgba(235,242,246,.3),0 0 13px rgba(190,214,226,.14);
  }
  .home .hm-story-history-story-link:hover > b,
  .home .hm-story-history-story-link:focus-visible > b {
    border-color:rgba(238,240,241,.5);
    box-shadow:inset 0 1px rgba(241,245,247,.08),inset 0 -1px rgba(0,0,0,.64),0 0 10px rgba(231,240,245,.12);
  }
}
.home .hm-story-history-play:active,
.home .hm-story-history-play.is-touch-flashing {
  border-color:rgba(247,249,250,.96);
  color:#050607;
  background:linear-gradient(145deg,#f7f8f8,#c9ced1 72%,#aeb5b8);
  box-shadow:inset 0 1px rgba(255,255,255,.82),inset 0 -1px rgba(71,78,82,.28),0 0 7px rgba(236,243,247,.62),0 0 18px rgba(188,211,224,.34);
  filter:drop-shadow(0 0 5px rgba(231,240,245,.48));
  transform:scale(1.14);
}
.home .hm-story-history-play:active svg,
.home .hm-story-history-play.is-touch-flashing svg { filter:none; transform:scale(1.18); }
.home .hm-story-history-play:active svg path,
.home .hm-story-history-play.is-touch-flashing svg path { fill:#050607; stroke:#050607; }
.home .hm-story-unlock-preview-play:active,
.home .hm-story-unlock-preview-play.is-touch-flashing {
  border-color:rgba(247,249,250,.96);
  color:#050607;
  background:linear-gradient(145deg,#f7f8f8,#c9ced1 72%,#aeb5b8);
  box-shadow:inset 0 1px rgba(255,255,255,.82),inset 0 -1px rgba(71,78,82,.28),0 0 7px rgba(236,243,247,.62),0 0 18px rgba(188,211,224,.34);
  filter:drop-shadow(0 0 5px rgba(231,240,245,.48));
  transform:scale(1.14);
}
.home .hm-story-unlock-preview-play:active svg,
.home .hm-story-unlock-preview-play.is-touch-flashing svg { filter:none; transform:scale(1.18); }
.home .hm-story-unlock-preview-play:active svg path,
.home .hm-story-unlock-preview-play.is-touch-flashing svg path { fill:#050607; stroke:#050607; }

@media (min-width:900px) {
  .home .hm-story-unlock {
    grid-template-areas:
      "heading"
      "current"
      "label"
      "."
      "progress-panel"
      "cta"
      "message";
    grid-template-rows:auto auto auto minmax(20px,1fr) auto auto auto;
  }
  .home .hm-story-unlock > .hm-story-unlock-progress-label { grid-area:label; }
  .home .hm-story-unlock-progress-panel { grid-area:progress-panel; }
  .home .hm-story-unlock > .hm-story-ticket-stage { grid-area:cta; }
  .home .hm-story-unlock > .hm-story-action-message { position:static; grid-area:message; }
  .home .hm-story-unlock-progress-panel,
  .home .hm-story-unlock > .hm-story-ticket-stage {
    position:relative;
    top:30px;
  }
}

@media (max-width:599px) {
  .home .hm-story-unlock-heading { margin-bottom:8px; }
  .home .hm-story-current-row { margin-bottom:-3px; }
  .home .hm-profile-stats a:hover,
  .home .hm-profile-stats a:active,
  .home .hm-profile-stats a.is-touch-flashing {
    background:transparent;
    box-shadow:none;
    filter:none;
    text-shadow:0 0 7px rgba(235,242,246,.3),0 0 13px rgba(190,214,226,.14);
    transform:scale(1.025);
  }
  .home .hm-profile-stats a:hover > strong,
  .home .hm-profile-stats a:hover > span,
  .home .hm-profile-stats a:active > strong,
  .home .hm-profile-stats a:active > span,
  .home .hm-profile-stats a.is-touch-flashing > strong,
  .home .hm-profile-stats a.is-touch-flashing > span {
    color:var(--hm-home-hover-text-color);
    text-shadow:0 0 7px rgba(235,242,246,.3),0 0 13px rgba(190,214,226,.14);
  }
  .home .hm-home-mvp-board:hover,
  .home .hm-home-mvp-board:active,
  .home .hm-home-mvp-board.is-touch-flashing {
    background:transparent;
    box-shadow:none;
    filter:none;
    text-shadow:0 0 7px rgba(235,242,246,.3),0 0 13px rgba(190,214,226,.14);
    transform:scale(1.025);
  }
  .home .hm-home-mvp-board:hover .hm-home-mvp-heading h2,
  .home .hm-home-mvp-board:active .hm-home-mvp-heading h2,
  .home .hm-home-mvp-board.is-touch-flashing .hm-home-mvp-heading h2,
  .home .hm-home-mvp-board:hover li > strong,
  .home .hm-home-mvp-board:active li > strong,
  .home .hm-home-mvp-board.is-touch-flashing li > strong {
    color:var(--hm-home-hover-text-color);
    text-shadow:0 0 7px rgba(235,242,246,.3),0 0 13px rgba(190,214,226,.14);
    filter:drop-shadow(0 0 3px rgba(231,240,245,.24));
  }
  .home .hm-story-unlock-progress-panel { gap:8px; margin-top:-2px; }
  .home .hm-story-unlock-progress-label { font-size:13px; }
  .home .hm-story-unlock-rule { margin-bottom:0; }
  .home .hm-story-unlock-progress-current,
  .home .hm-story-unlock-progress-copy > b > small { font-size:15px; }
  .home .hm-story-unlock-progress-copy > b > strong { font-size:32px; }
  .home .hm-story-ticket,
  .home .hm-story-ticket:hover,
  .home .hm-story-ticket:active,
  .home .hm-story-ticket:focus-visible,
  .home .hm-story-ticket.is-payment-starting,
  .home .hm-story-ticket.is-payment-starting:hover {
    --hm-ticket-notch:14.5px;
    --hm-ticket-notch-clear:13.7px;
    width:280px;
    min-width:280px;
    min-height:80px;
  }
  .home .hm-story-ticket > .hm-ticket-main { border-radius:9px 0 0 9px; }
  .home .hm-story-ticket > .hm-ticket-stub { border-radius:0 9px 9px 0; }
  .home .hm-story-ticket .hm-ticket-label { font-size:27px; }
  .home .hm-story-ticket .hm-ticket-stub > span { font-size:8.5px; }
  .home .hm-story-ticket > .hm-ticket-tear {
    top:9px;
    bottom:9px;
    width:2px;
    background:repeating-linear-gradient(to bottom,rgba(53,60,64,.58) 0 4px,transparent 4px 8px);
  }
  .home .hm-story-ticket-stage {
    width:280px;
    min-width:280px;
    justify-self:center;
  }
  .home .hm-story-unlock > .hm-story-ticket-stage { justify-self:center; margin-top:4px; }
  .home .hm-story-ticket:hover:not(.is-payment-starting) {
    filter:none !important;
    transform:none !important;
  }
  .home .hm-story-ticket:hover:not(.is-payment-starting) > .hm-ticket-main::before {
    opacity:initial;
    animation:hm-story-ticket-idle-sweep 4.8s cubic-bezier(.22,.61,.36,1) infinite;
  }
  .home .hm-story-ticket:hover:not(.is-payment-starting) .hm-ticket-frame-outer {
    stroke:rgba(92,99,103,.46) !important;
    filter:drop-shadow(0 -1px .55px rgba(255,255,255,.52)) drop-shadow(0 1.1px .75px rgba(38,44,47,.72)) drop-shadow(0 0 1.2px rgba(92,99,103,.18)) !important;
  }
  .home .hm-story-ticket:hover:not(.is-payment-starting) .hm-ticket-label {
    color:#171a1c;
    text-shadow:0 1px rgba(255,255,255,.62),0 -1px rgba(72,78,82,.24) !important;
  }
  .home .hm-story-history.hm-story-history--list {
    display:none;
  }
  .home .hm-story-history--list .hm-story-history-list { display:none; padding:0; }
  .home .hm-story-history--list .hm-story-history-item {
    grid-template-columns:minmax(0,1fr) 28px;
    column-gap:8px;
    min-height:44px;
    border:0;
    padding:2px 0;
    background:none;
  }
  .home .hm-story-history-story-link {
    grid-template-columns:32px 52px minmax(0,1fr);
    column-gap:0;
  }
  .home .hm-story-history-kicker { display:none; }
  .home .hm-story-history--list .hm-story-history-number { width:32px; font-size:15px; }
  .home .hm-story-history--list .hm-story-history-story-link > b {
    width:52px;
    min-width:52px;
    height:22px;
    font-size:10.5px;
  }
  .home .hm-story-history-title { margin-left:10px; font-size:15px; }
  .home .hm-story-history-play { width:28px; height:28px; }
  .home .hm-story-history--list .hm-story-history-more {
    position:relative;
    inset:auto;
    width:max-content;
    justify-self:start;
    margin:14px 0 0;
    padding:0;
    font-size:21px;
    transform:none;
  }
  .home .hm-story-history--list .hm-story-history-more::before { content:none; display:none; }
}

@media (prefers-reduced-motion:reduce) {
  .home .hm-story-history-title,
  .home .hm-story-history-play,
  .home .hm-story-history--list .hm-story-history-more { transition:none; }
}

/* Homepage page navigation replacing the former support and archive rows. */
.home .hm-home-page-nav {
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(28px,3vw,42px) clamp(14px,2vw,24px);
  margin:0;
  padding:0;
}
.home .hm-home-page-nav-card {
  position:relative;
  min-width:0;
  display:block;
  padding-top:18px;
  color:#aeb5b8;
  text-decoration:none;
}
.home .hm-home-page-nav-title {
  position:absolute;
  z-index:3;
  top:0;
  left:8px;
  min-width:0;
  display:flex;
  align-items:baseline;
  gap:7px;
  font-family:var(--serif);
  line-height:1.3;
  letter-spacing:.1em;
  transition:color .28s ease,text-shadow .28s ease;
}
.home .hm-home-page-nav-title > i {
  width:3px;
  height:3px;
  flex:0 0 3px;
  align-self:center;
  border-radius:50%;
  background:#b7c2c8;
  box-shadow:0 0 7px rgba(190,213,226,.5);
  opacity:.36;
}
.home .hm-home-page-nav-title > strong {
  color:inherit;
  font-size:19px;
  font-weight:400;
}
@media (min-width:900px) {
  .home .hm-home-page-nav-title > strong { font-size:28px; }
}
.home .hm-home-page-nav-title > small {
  color:inherit;
  font:400 8.5px/1.3 var(--sans);
  letter-spacing:.14em;
}
.home .hm-home-page-nav-cover {
  position:relative;
  aspect-ratio:16/9;
  display:block;
  overflow:hidden;
  background:#050505;
}
.home .hm-home-page-nav-cover::after {
  position:absolute;
  inset:0;
  content:"";
  pointer-events:none;
  background:linear-gradient(180deg,#050505 0%,rgba(5,5,5,.08) 18%,transparent 40%,transparent 60%,rgba(5,5,5,.18) 82%,#050505 100%);
}
.home .hm-home-page-nav-cover > img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  user-select:none;
  pointer-events:none;
  transition:transform .34s ease,filter .34s ease;
}
@media (hover:hover) and (min-width:600px) {
  .home .hm-home-page-nav-card:hover .hm-home-page-nav-title,
  .home .hm-home-page-nav-card:focus-visible .hm-home-page-nav-title {
    color:#eef0f1;
    text-shadow:0 0 12px rgba(195,218,230,.14);
  }
  .home .hm-home-page-nav-card:hover .hm-home-page-nav-title > i,
  .home .hm-home-page-nav-card:focus-visible .hm-home-page-nav-title > i { opacity:.88; }
  .home .hm-home-page-nav-card:hover .hm-home-page-nav-cover > img,
  .home .hm-home-page-nav-card:focus-visible .hm-home-page-nav-cover > img {
    filter:brightness(1.05);
    transform:scale(1.015);
  }
  .home .hm-home-page-nav-card:focus-visible { outline:0; }
}
@media (max-width:599px) {
  .home .hm-home-page-nav {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:26px 12px;
  }
  .home .hm-home-page-nav-card { padding-top:17px; }
  .home .hm-home-page-nav-title > strong { font-size:18px; }
  .hm-story-cover .hm-cover-label-svg {
    transform:scale(1.24);
    transform-origin:5.1% 6.5%;
  }
  .hm-story-cover-content .hm-archive-top h1 { font-size:48px; }
}
@media (prefers-reduced-motion:reduce) {
  .home .hm-home-page-nav-title,
  .home .hm-home-page-nav-cover > img { transition:none; }
}

/* Homepage bottom banner with centered legal details. */
.home .hm-main > .hm-site-footer {
  position:relative;
  isolation:isolate;
  width:100%;
  max-width:none;
  display:flex;
  flex-direction:column;
  align-items:center;
  margin:0;
  padding:0;
  overflow:visible;
  border:0;
  background:transparent;
  text-align:center;
}
.home .hm-site-footer-banner,
.home .hm-site-footer-content { flex:0 0 auto; }
.home .hm-site-footer-banner {
  position:relative;
  z-index:0;
  width:100%;
  display:block;
  pointer-events:none;
}
.home .hm-site-footer-banner::after {
  position:absolute;
  inset:0;
  content:"";
  background:linear-gradient(180deg,#050505 0%,rgba(5,5,5,.58) 2%,rgba(5,5,5,.16) 6%,transparent 11%,transparent 92%,rgba(5,5,5,.16) 96%,#050505 100%);
}
.home .hm-site-footer-banner > img {
  width:100%;
  height:auto;
  display:block;
  user-select:none;
}
.home .hm-site-footer-content {
  position:relative;
  z-index:1;
  width:min(84%,960px);
  display:grid;
  justify-items:center;
  gap:0;
  padding:18px 0 22px;
  color:rgba(162,166,168,.68);
  background:transparent;
  font-family:var(--serif);
  text-align:center;
  text-shadow:0 1px 5px rgba(0,0,0,.88);
}
.home .hm-site-footer-content p,
.home .hm-site-footer-content span,
.home .hm-site-footer-content a { text-align:center; }
.home .hm-site-footer-content p {
  margin:0;
  color:rgba(160,164,166,.68);
  font:400 13.5px/1.4 var(--serif);
  letter-spacing:.06em;
}
.home .hm-site-footer-legal-mobile { display:none; }
.home .hm-site-footer-rule {
  width:72%;
  height:1px;
  margin:7px 0 5px;
  background:linear-gradient(90deg,transparent,rgba(172,176,178,.24) 12% 88%,transparent);
}
.home .hm-site-footer-copyright {
  color:rgba(145,149,151,.62);
  font:400 11.5px/1.35 var(--serif);
  letter-spacing:.09em;
}
.home .hm-site-footer-contact {
  position:static;
  z-index:2;
  width:auto;
  height:auto;
  margin:2px 0 0;
  color:rgba(145,149,151,.62);
  font:400 11.5px/1.35 var(--serif);
  letter-spacing:.09em;
  text-align:center;
  text-shadow:0 1px 5px rgba(0,0,0,.88);
  transform:none;
}
.home .hm-site-footer-contact:hover,
.home .hm-site-footer-contact:focus-visible {
  color:#eef0f1;
  text-shadow:0 0 7px rgba(238,240,241,.36),0 1px 5px rgba(0,0,0,.88);
  transform:none;
}
@media (min-width:600px) {
  .home .hm-site-footer-banner {
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 .8%,#000 99.2%,transparent 100%);
    mask-image:linear-gradient(90deg,transparent 0,#000 .8%,#000 99.2%,transparent 100%);
  }
}
@media (max-width:599px) {
  .home .hm-main > .hm-site-footer {
    margin-top:0;
    padding:0;
    overflow:visible;
  }
  .home .hm-site-footer-banner,
  .home .hm-site-footer-banner > img {
    width:100%;
    max-height:none;
  }
  .home .hm-site-footer-banner {
    height:auto;
    aspect-ratio:3 / 1;
    overflow:hidden;
  }
  .home .hm-site-footer-banner > img {
    height:100%;
    object-fit:cover;
    object-position:25% center;
  }
  .home .hm-site-footer-content { width:86%; padding:14px 0 18px; }
  .home .hm-site-footer-legal-desktop { display:none; }
  .home .hm-site-footer-legal-mobile { display:block; }
  .home .hm-site-footer-content p {
    font-size:9.2px;
    line-height:1.35;
    letter-spacing:.025em;
  }
  .home .hm-site-footer-rule { width:76%; margin:4px 0 3px; }
  .home .hm-site-footer-copyright { font-size:8.2px; line-height:1.25; }
  .home .hm-site-footer-contact {
    margin-top:1px;
    font-size:8.2px;
    line-height:1.25;
    letter-spacing:.04em;
  }
}

/* Preserve the supplied plaque type scale against the existing footer text rules. */
.home .hm-site-footer .support-plaque-button__text {
  color:#121212;
  font-family:var(--serif);
  font-size:30px;
  font-weight:700;
  line-height:1;
  letter-spacing:.06em;
  text-align:center;
}
@media (max-width:768px) {
  .home .hm-site-footer .support-plaque-button__text { font-size:17px; }
}
@media (max-width:390px) {
  .home .hm-site-footer .support-plaque-button__text { font-size:17px; }
}

/* Shared inner-page typography: story, Q&A and shop all consume the homepage-aligned tokens. */
.hm-story-archive,
.hm-story-detail,
.hm-qa-explorer,
.hm-shop-explorer { font-family:var(--font-body); }
.hm-archive-top h1 {
  color:var(--text-primary);
  font-family:var(--font-display) !important;
  font-size:var(--fs-page-title);
  line-height:var(--lh-title);
  letter-spacing:var(--tracking-title);
}
.hm-archive-subtitle {
  color:var(--text-secondary);
  font-family:var(--font-body) !important;
  font-size:var(--fs-body-lg) !important;
  line-height:var(--lh-body);
  letter-spacing:var(--tracking-body);
}
.hm-qa-rail-heading,
.hm-qa-detail h2,
.hm-qa-telegram-tutorial h2,
.hm-story-description h2,
.hm-related h2 {
  color:var(--text-primary);
  font-family:var(--font-display) !important;
  font-size:var(--fs-section-title);
  line-height:var(--lh-title);
  letter-spacing:var(--tracking-title);
}
.hm-detail-heading h1,
.hm-qa-card-face b,
.hm-qa-card-title,
.hm-related strong {
  font-family:var(--font-display) !important;
  font-size:var(--fs-card-title);
  line-height:var(--lh-title);
  letter-spacing:var(--tracking-title);
}
.hm-qa-detail p,
.hm-qa-telegram-guide,
.hm-clamped-copy {
  color:var(--text-secondary);
  font-family:var(--font-body) !important;
  font-size:var(--fs-body);
  line-height:var(--lh-body);
  letter-spacing:var(--tracking-body);
}
.hm-qa-telegram-item summary { font-size:var(--fs-body-lg); }
.hm-qa-detail > span,
.hm-taxonomy,
.hm-related-copy > span { color:var(--text-muted); font-size:var(--fs-meta); }

/* Story archive: one fixed horizontal layout and compact third-column search. */
.hm-story-archive { position:relative; }
.hm-story-archive .hm-story-controls {
  position:absolute;
  z-index:4;
  left:var(--page);
  right:var(--page);
  top:240.0805px;
  grid-template-columns:minmax(0,20fr) minmax(0,20fr) minmax(0,60fr);
  align-items:center;
  gap:0 8px;
  border-bottom:0;
  padding-bottom:0;
}
.hm-story-archive .hm-story-controls > label,
.hm-story-archive .hm-story-controls > label:nth-of-type(2),
.hm-story-archive .hm-story-controls > label:last-child {
  grid-column:auto;
  justify-content:center;
  font-size:var(--fs-meta);
}
.hm-story-archive .hm-story-controls select { font-size:var(--fs-meta); }
.hm-story-sort-select {
  position:relative;
  min-width:24px;
  min-height:28px;
  display:inline-grid;
  place-items:center;
}
.hm-story-sort-select > span { color:#92999c; }
.hm-story-sort-select > select {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  cursor:pointer;
}
.hm-story-filter-menu { display:none; }
.hm-story-archive .hm-search-inline {
  position:relative;
  min-width:0;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:flex-start !important;
  box-sizing:border-box;
  border:1px solid rgba(200,205,210,.2);
  border-radius:18px;
  padding:0 12px;
  background:rgba(3,3,3,.16);
}
.hm-story-archive .hm-search-inline i {
  position:static;
  flex:0 0 15px;
  width:15px;
  height:15px;
  margin-right:5px;
  transform:none;
}
.hm-story-archive .hm-search-inline input {
  flex:1 1 auto;
  width:100%;
  min-width:0;
  max-width:none;
  height:34px;
  border:0;
  border-radius:0;
  padding:0;
  color:#92999c;
  background:transparent;
  font-size:12px;
}
.hm-story-archive .hm-search-inline:focus-within { border-color:rgba(220,225,228,.38); }

.hm-story-collection.is-fixed-list {
  display:flex;
  flex-direction:column;
  gap:10px;
  padding-top:20px;
}
.hm-story-collection.is-fixed-list .hm-story-card {
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,42%) minmax(0,1fr);
  align-items:stretch;
  gap:12px;
  padding:16px 0;
  border-bottom:0;
}
.hm-story-collection.is-fixed-list .hm-story-media {
  min-width:0;
  height:auto;
  display:block;
}
.hm-story-collection.is-fixed-list .hm-story-media .hm-media-frame {
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:16/9;
  background:#050505;
}
.hm-story-collection.is-fixed-list .hm-story-media .hm-media-frame > img {
  width:100%;
  height:100%;
  object-fit:contain;
}
.hm-story-cover-meta {
  position:absolute;
  z-index:4;
  top:8px;
  right:7px;
  left:7px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:6px;
  overflow:hidden;
  color:rgba(226,229,230,.9);
  text-shadow:0 1px 4px rgba(0,0,0,.92);
  white-space:nowrap;
}
.hm-story-cover-meta > span {
  flex:0 0 auto;
  width:auto;
  min-width:0;
  height:22px;
  display:grid;
  place-items:center start;
  overflow:hidden;
  color:rgba(226,229,230,.9);
  font:400 14px/1 var(--serif);
  letter-spacing:.035em;
  text-overflow:ellipsis;
}
.hm-story-cover-meta > b,
.hm-story-card-meta > b {
  flex:0 0 64px;
  width:64px;
  min-width:64px;
  height:22px;
  display:inline-grid;
  place-items:center;
  overflow:hidden;
  box-sizing:border-box;
  border:1px solid rgba(221,226,228,.55);
  border-radius:5px;
  padding:0 6px;
  color:rgba(202,205,207,.76);
  background:rgba(8,10,11,.44);
  box-shadow:inset 0 1px rgba(248,251,252,.055),0 0 9px rgba(198,213,221,.08);
  -webkit-backdrop-filter:blur(7px) saturate(.86);
  backdrop-filter:blur(7px) saturate(.86);
  font:400 9px/1 var(--sans);
  letter-spacing:.025em;
  text-overflow:ellipsis;
}
.hm-story-cover-meta > b.is-published,
.hm-story-card-meta > b.is-published { background:rgba(8,10,11,.34); }
.hm-story-card-meta-row { display:none; }
.hm-story-card-meta {
  min-width:0;
  display:flex;
  align-items:center;
  gap:6px;
  color:rgba(226,229,230,.9);
  white-space:nowrap;
}
.hm-story-card-meta > span {
  height:22px;
  display:grid;
  place-items:center start;
  color:rgba(226,229,230,.9);
  font:400 14px/1 var(--font-display);
  letter-spacing:.035em;
}
.hm-story-collection.is-fixed-list .hm-state-icon { width:40px; height:40px; }
.hm-story-collection.is-fixed-list .hm-state-icon svg { width:17px; height:17px; }
.hm-story-card-copy {
  min-width:0;
  align-self:stretch;
  display:flex;
  flex-direction:column;
  padding:0;
}
.hm-story-copy-link { min-width:0; display:block; }
.hm-story-copy-link h2 {
  min-height:0;
  display:-webkit-box;
  overflow:hidden;
  margin:0 0 3px;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  color:var(--text-primary);
  font:700 var(--fs-card-title)/var(--lh-title) var(--font-display);
}
.hm-story-copy-link p {
  overflow:hidden;
  margin:0;
  color:var(--text-secondary);
  font:400 var(--fs-meta)/var(--lh-body) var(--font-body) !important;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.hm-story-collection.is-fixed-list .hm-grid-card-actions {
  min-height:0;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:6px;
  margin-top:auto;
}
.hm-story-collection.is-fixed-list .hm-grid-card-facts {
  min-height:0;
  align-content:end;
  gap:5px;
  color:var(--text-muted);
  font-size:var(--fs-meta);
  line-height:1.25;
}
.hm-story-collection.is-fixed-list .hm-grid-card-facts time,
.hm-story-collection.is-fixed-list .hm-grid-card-facts span { font-size:var(--fs-meta); }
.hm-story-collection.is-fixed-list .hm-grid-card-tools {
  width:28px;
  height:auto;
  display:flex;
  align-items:center;
  gap:8px;
}
.hm-story-collection.is-fixed-list .hm-grid-preview,
.hm-story-collection.is-fixed-list .hm-grid-bookmark {
  width:28px;
  height:28px;
  min-height:0;
  display:grid;
  place-items:center;
  border:0;
  padding:0;
  color:#b6bdc0;
  background:transparent;
  transform:translateY(4px);
}
.hm-story-collection.is-fixed-list .hm-grid-preview:disabled { opacity:.42; }
.hm-story-collection.is-fixed-list .hm-grid-bookmark > .hm-story-tool-icon { display:grid; }
.hm-story-collection.is-fixed-list .hm-grid-bookmark .hm-story-tool-icon {
  border:0;
  background:transparent;
  box-shadow:none;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}
.hm-story-tool-icon {
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  box-sizing:border-box;
  border:.8px solid rgba(239,244,247,.88);
  border-radius:50%;
  color:#f1f5f7;
  background:rgba(2,3,4,.16);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 0 4px rgba(231,240,245,.24),0 0 10px rgba(188,211,224,.12);
  -webkit-backdrop-filter:blur(1px);
  backdrop-filter:blur(1px);
}
.hm-story-tool-icon svg {
  width:13px !important;
  height:13px !important;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-width:1.05;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 0 2px rgba(239,247,250,.7)) drop-shadow(0 0 5px rgba(190,216,229,.3));
}
.hm-story-collection.is-fixed-list .hm-grid-bookmark .hm-story-tool-icon svg {
  width:20px !important;
  height:24px !important;
}

@media (max-width:899px) {
  .hm-story-archive .hm-story-cover { aspect-ratio:1672 / 941; }
  .hm-story-archive .hm-story-controls {
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    margin-top:20px;
    grid-template-columns:max-content max-content minmax(0,1fr);
    grid-template-rows:auto auto;
    justify-content:start;
    column-gap:14px;
    row-gap:12px;
  }
  .hm-story-archive .hm-story-controls > .hm-story-native-filter:first-of-type {
    grid-column:1;
    grid-row:1;
    justify-content:flex-start;
  }
  .hm-story-archive .hm-story-controls > .hm-story-native-filter:nth-of-type(2) {
    grid-column:2;
    grid-row:1;
    justify-content:flex-start;
  }
  .hm-story-archive .hm-story-controls > .hm-search-inline {
    grid-column:1 / -1;
    grid-row:2;
    justify-self:start;
    width:50%;
    max-width:50%;
  }
  .hm-story-archive:not(.has-draft-rail) .hm-story-collection.is-fixed-list {
    margin-top:44px;
    padding-top:0;
  }
  .hm-story-collection.is-fixed-list .hm-story-card { padding:0 0 16px; }
  .hm-story-cover-meta--cover { display:none; }
  .hm-story-card-meta-row {
    grid-column:1;
    grid-row:1;
    display:flex;
    align-items:start;
    min-width:0;
  }
  .hm-story-collection.is-fixed-list .hm-story-card-copy {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:auto auto minmax(0,1fr) auto;
    align-items:start;
    min-height:100%;
  }
  .hm-story-collection.is-fixed-list .hm-story-copy-link {
    grid-column:1 / -1;
    grid-row:2;
    align-self:start;
    margin-top:3px;
  }
  .hm-story-collection.is-fixed-list .hm-grid-card-actions { display:contents; }
  .hm-story-collection.is-fixed-list .hm-grid-card-tools {
    grid-column:2;
    grid-row:1;
    align-self:start;
    justify-self:end;
  }
  .hm-story-collection.is-fixed-list .hm-grid-bookmark { transform:translateY(2px); }
  .hm-story-collection.is-fixed-list .hm-grid-card-facts {
    grid-column:1 / -1;
    grid-row:4;
    align-self:end;
    display:flex;
    flex-wrap:nowrap;
    align-items:flex-end;
    gap:10px;
    white-space:nowrap;
  }
  .hm-story-collection.is-fixed-list .hm-grid-card-facts > span { order:1; }
  .hm-story-collection.is-fixed-list .hm-grid-card-facts > time { order:2; }
}

@media (max-width:599px) {
  .hm-story-cover > .hm-stories-hero::after {
    bottom:-2px;
    height:clamp(46px,18vw,72px);
  }
}

@media (min-width:900px) {
  .hm-story-archive .hm-story-controls > .hm-story-native-filter { display:none !important; }
  .hm-story-archive .hm-story-controls {
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    margin-top:32px;
    z-index:20;
  }
  .hm-story-archive .hm-story-controls > .hm-story-native-filter { display:none; }
  .hm-story-archive .hm-story-controls > .hm-search-inline {
    grid-column:3;
    grid-row:1;
  }
  .hm-story-filter-menu {
    position:relative;
    z-index:6;
    min-width:0;
    display:block;
    color:#92999c;
  }
  .hm-story-filter-menu--status { grid-column:1; grid-row:1; }
  .hm-story-filter-menu--order { grid-column:2; grid-row:1; }
  .hm-story-filter-menu > summary {
    position:relative;
    height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    overflow:visible;
    box-sizing:border-box;
    border:0;
    border-radius:0;
    padding:0 16px;
    background:none;
    box-shadow:none;
    list-style:none;
    cursor:pointer;
    transition:border-color .25s ease,color .25s ease,background-color .25s ease,box-shadow .25s ease;
  }
  .hm-story-filter-menu > summary::-webkit-details-marker { display:none; }
  .hm-story-filter-menu > summary::before {
    position:absolute;
    top:0;
    bottom:0;
    left:-55%;
    width:42%;
    content:none;
    pointer-events:none;
    background:linear-gradient(100deg,transparent,rgba(224,232,236,.075),transparent);
    transform:skewX(-18deg);
    transition:left .52s cubic-bezier(.22,.75,.22,1);
  }
  .hm-story-filter-menu > summary:hover::before,
  .hm-story-filter-menu[open] > summary::before { left:118%; }
  .hm-story-filter-menu > summary span { color:#767d80; font:400 16px/1 var(--serif); }
  .hm-story-filter-menu > summary strong { overflow:hidden; color:#aeb4b7; font:400 16px/1 var(--serif); text-overflow:ellipsis; white-space:nowrap; }
  .hm-story-filter-menu > summary svg {
    display:none;
  }
  .hm-story-filter-menu[open] > summary {
    color:#d6dadd;
    background:none;
    box-shadow:none;
  }
  .hm-story-filter-options {
    position:absolute;
    z-index:12;
    top:calc(100% + 9px);
    right:0;
    left:0;
    display:grid;
    gap:3px;
    overflow:hidden;
    border:1px solid rgba(201,209,214,.24);
    border-radius:16px;
    padding:7px;
    background:linear-gradient(145deg,rgba(19,22,24,.97),rgba(4,5,6,.98) 64%,rgba(13,15,16,.97));
    box-shadow:0 22px 46px rgba(0,0,0,.58),inset 0 1px rgba(255,255,255,.035);
    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px);
    transform-origin:50% 0;
    animation:hm-story-filter-reveal .3s cubic-bezier(.16,.82,.25,1) both;
  }
  .hm-story-filter-options::before {
    position:absolute;
    top:0;
    right:18px;
    left:18px;
    height:1px;
    content:"";
    background:linear-gradient(90deg,transparent,rgba(224,232,236,.52),transparent);
  }
  .hm-story-filter-options a {
    position:relative;
    display:flex;
    align-items:center;
    min-height:39px;
    overflow:hidden;
    border-radius:11px;
    padding:0 13px 0 32px;
    color:#92999c;
    font:400 15px/1 var(--serif);
    text-decoration:none;
    transition:color .2s ease,background-color .2s ease,transform .24s cubic-bezier(.22,.75,.22,1);
  }
  .hm-story-filter-options a::before {
    position:absolute;
    left:14px;
    width:5px;
    height:5px;
    border:1px solid rgba(193,202,207,.46);
    border-radius:50%;
    content:"";
    box-shadow:0 0 7px rgba(197,215,225,.12);
  }
  .hm-story-filter-options a:hover,
  .hm-story-filter-options a:focus-visible {
    color:#dce0e2;
    background:linear-gradient(90deg,rgba(213,224,230,.08),rgba(213,224,230,.025));
    outline:0;
    transform:translateX(3px);
  }
  .hm-story-filter-options a.is-selected {
    color:#e1e5e7;
    background:linear-gradient(90deg,rgba(207,220,227,.12),rgba(207,220,227,.035));
  }
  .hm-story-filter-options a.is-selected::before {
    border-color:#d9e0e3;
    background:#c9d2d6;
    box-shadow:0 0 8px rgba(214,229,236,.48);
  }
  @keyframes hm-story-filter-reveal {
    from { opacity:0; transform:translateY(-7px) scaleY(.9); filter:blur(2px); }
    to { opacity:1; transform:translateY(0) scaleY(1); filter:blur(0); }
  }
  .hm-story-archive .hm-story-controls > label,
  .hm-story-archive .hm-story-controls > label:nth-of-type(2),
  .hm-story-archive .hm-story-controls > label:last-child,
  .hm-story-archive .hm-story-controls select,
  .hm-story-archive .hm-search-inline input,
  .hm-story-sort-select > span { font-size:var(--fs-body); }
  .hm-story-archive .hm-search-inline { height:44px; border-radius:22px; padding-inline:18px; }
  .hm-story-archive .hm-search-inline i { flex-basis:18px; width:18px; height:18px; margin-right:8px; }
  .hm-story-archive .hm-search-inline input { height:42px; }
  .hm-story-archive:not(.has-draft-rail) .hm-story-collection.is-fixed-list {
    margin-top:64px;
    padding-top:0;
  }
  .hm-story-collection.is-fixed-list {
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:32px;
    row-gap:44px;
  }
  .hm-story-collection.is-fixed-list .hm-story-card {
    display:flex;
    flex-direction:column;
    gap:0;
    padding:0;
  }
  .hm-story-collection.is-fixed-list .hm-story-media { width:100%; }
  .hm-story-collection.is-fixed-list .hm-story-card-copy { margin-top:14px; }
  .hm-story-cover-meta { top:14px; right:14px; left:14px; gap:10px; }
  .hm-story-cover-meta > span {
    flex-basis:auto;
    width:auto;
    height:27.4px;
    font-size:24px;
  }
  .hm-story-cover-meta > b {
    flex-basis:80px;
    width:80px;
    min-width:80px;
    height:27.4px;
    font-size:13.5px;
  }
  .hm-story-collection.is-fixed-list .hm-state-icon { width:58px; height:58px; }
  .hm-story-collection.is-fixed-list .hm-state-icon svg { width:24px; height:24px; }
  .hm-story-copy-link h2 { font-size:var(--fs-card-title); }
  .hm-story-copy-link p { font-size:var(--fs-body) !important; }
  .hm-story-collection.is-fixed-list .hm-grid-card-facts { gap:7px; }
  .hm-story-collection.is-fixed-list .hm-grid-card-facts time,
  .hm-story-collection.is-fixed-list .hm-grid-card-facts span { font-size:var(--fs-meta); }
  .hm-story-collection.is-fixed-list .hm-grid-card-tools { width:32px; gap:0; }
  .hm-story-collection.is-fixed-list .hm-grid-preview,
  .hm-story-collection.is-fixed-list .hm-grid-bookmark,
  .hm-story-tool-icon { width:32px; height:32px; }
  .hm-story-tool-icon svg { width:15px !important; height:15px !important; }
  .hm-story-collection.is-fixed-list .hm-grid-bookmark .hm-story-tool-icon svg {
    width:24px !important;
    height:28px !important;
  }
}
/* Story archive controls, card metadata and viewing progress. */
.hm-story-archive .hm-story-controls {
  width:min(100%,480px);
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-rows:82px;
  justify-content:start;
  align-items:stretch;
  gap:0;
  margin-right:auto;
  overflow:visible;
  background:linear-gradient(180deg,rgba(9,10,11,.18),rgba(5,5,5,.56));
}
.hm-story-control-tile {
  position:relative;
  min-width:0;
  height:82px;
  box-sizing:border-box;
  transition:transform .34s cubic-bezier(.22,.78,.2,1),filter .34s ease,color .34s ease,text-shadow .34s ease;
  transform-origin:center;
}
.hm-story-archive .hm-story-native-filter.hm-story-control-tile,
.hm-story-filter-menu > summary.hm-story-control-tile,
.hm-story-archive .hm-search-inline.hm-story-control-tile {
  display:grid;
  grid-template-rows:27px 15px;
  align-content:center;
  justify-items:center;
  row-gap:5px;
  border:0;
  border-radius:0;
  padding:0 8px;
  color:#7d8589;
  background:transparent;
  box-shadow:none;
}
.hm-story-control-code {
  align-self:end;
  overflow:hidden;
  max-width:100%;
  color:#9da4a7;
  font:400 21px/27px var(--font-display);
  letter-spacing:.08em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.hm-story-control-label,
.hm-story-filter-menu > summary .hm-story-control-label {
  align-self:start;
  overflow:hidden;
  max-width:100%;
  color:#737b7f;
  font:400 11px/15px var(--font-body);
  letter-spacing:.055em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.hm-story-archive .hm-story-native-filter > select {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  cursor:pointer;
}
.hm-story-archive .hm-search-inline i {
  position:static;
  align-self:end;
  width:21px;
  height:21px;
  margin:0;
  color:#8e969a;
  transform:none;
}
.hm-story-archive .hm-search-inline input {
  align-self:start;
  width:100%;
  height:15px;
  border:0;
  padding:0;
  color:#9ba2a5;
  background:transparent;
  font:400 11px/15px var(--font-body);
  letter-spacing:.055em;
  text-align:center;
}
.hm-story-archive .hm-search-inline input::placeholder { color:#737b7f; }
.hm-story-archive .hm-search-inline:focus-within { border-color:transparent; }
.hm-story-archive .hm-story-native-filter:nth-of-type(2)::before,
.hm-story-archive .hm-search-inline::before,
.hm-story-filter-menu--order::before {
  position:absolute;
  z-index:2;
  top:50%;
  left:0;
  width:.5px;
  height:40px;
  content:"";
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(176,184,188,.24) 24% 76%,transparent);
  transform:translate(-50%,-50%);
}
.hm-story-archive .hm-story-native-filter:hover,
.hm-story-archive .hm-story-native-filter:focus-within,
.hm-story-filter-menu > summary:hover,
.hm-story-filter-menu > summary:focus-visible,
.hm-story-filter-menu[open] > summary,
.hm-story-archive .hm-search-inline:hover,
.hm-story-archive .hm-search-inline:focus-within {
  z-index:3;
  outline:0;
  filter:brightness(1.34) drop-shadow(0 0 8px rgba(190,205,213,.2));
  transform:scale(1.045);
}
.hm-story-filter-menu > summary.hm-story-control-tile::before { content:none; }
.hm-story-filter-options {
  left:50%;
  right:auto;
  width:240px;
  border-color:rgba(187,196,201,.28);
  border-radius:20px;
  padding:8px;
  background:linear-gradient(155deg,rgba(29,32,34,.97),rgba(8,9,10,.98) 58%,rgba(18,20,21,.97));
  box-shadow:0 24px 58px rgba(0,0,0,.62),inset 0 1px rgba(232,237,239,.055);
  -webkit-backdrop-filter:blur(20px) saturate(.82);
  backdrop-filter:blur(20px) saturate(.82);
  animation:hm-story-filter-ios-in .42s cubic-bezier(.22,1,.36,1) both;
}
.hm-story-filter-menu--status .hm-story-filter-options { left:75%; }
@keyframes hm-story-filter-ios-in {
  from { opacity:0; filter:blur(4px); transform:translate(-50%,-12px) scale(.94); }
  to { opacity:1; filter:blur(0); transform:translate(-50%,0) scale(1); }
}
.hm-story-filter-options a {
  transition:color .26s ease,background-color .3s ease,transform .34s cubic-bezier(.22,.78,.2,1),filter .3s ease;
}
.hm-story-filter-options a:hover,
.hm-story-filter-options a:focus-visible {
  filter:brightness(1.2) drop-shadow(0 0 6px rgba(190,205,213,.12));
  transform:translateX(4px) scale(1.015);
}

.hm-story-cover-meta--cover { display:none; }
.hm-story-card-meta-row {
  grid-column:1;
  grid-row:1;
  display:flex;
  align-items:start;
  min-width:0;
}
.hm-story-collection.is-fixed-list .hm-story-card-copy {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto auto;
  align-items:start;
}
.hm-story-collection.is-fixed-list .hm-story-copy-link {
  grid-column:1 / -1;
  grid-row:2;
  align-self:start;
  margin-top:4px;
}
.hm-story-collection.is-fixed-list .hm-grid-card-actions { display:contents; }
.hm-story-collection.is-fixed-list .hm-grid-card-tools {
  grid-column:2;
  grid-row:1;
  align-self:start;
  justify-self:end;
}
.hm-story-collection.is-fixed-list .hm-grid-card-facts {
  grid-column:1 / -1;
  grid-row:3;
  align-self:start;
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:14px;
  margin-top:8px;
  white-space:nowrap;
}
.hm-story-collection.is-fixed-list .hm-grid-card-facts > span { order:1; }
.hm-story-collection.is-fixed-list .hm-grid-card-facts > time { order:2; }
.hm-story-copy-link h2 { color:var(--text-primary); }
.hm-story-copy-link p { color:var(--text-secondary); }
.hm-story-collection.is-fixed-list .hm-grid-card-facts { color:var(--text-muted); }
.hm-story-card-meta > span { color:#c9ced0; }
.hm-story-cover-meta > b.is-locked,
.hm-story-card-meta > b.is-locked {
  border-color:rgba(225,230,233,.72);
  color:rgba(228,232,234,.9);
  background:linear-gradient(135deg,rgba(224,229,232,.26),rgba(166,174,179,.16) 48%,rgba(224,229,232,.22));
  box-shadow:inset 0 1px rgba(244,247,248,.2),inset 0 -1px rgba(52,58,61,.2),0 0 10px rgba(204,217,224,.15);
  -webkit-backdrop-filter:blur(8px) saturate(.7);
  backdrop-filter:blur(8px) saturate(.7);
}
.hm-story-lock-indicator {
  position:absolute;
  z-index:5;
  top:50%;
  left:50%;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border:.8px solid rgba(222,228,231,.78);
  border-radius:50%;
  color:#d9dfe1;
  background:rgba(4,6,7,.34);
  box-shadow:inset 0 0 0 1px rgba(239,243,245,.035),0 0 5px rgba(214,226,232,.18),0 0 12px rgba(176,199,211,.09);
  -webkit-backdrop-filter:blur(2px);
  backdrop-filter:blur(2px);
  transform:translate(-50%,-50%);
}
.hm-story-lock-indicator svg {
  width:20px;
  height:20px;
  overflow:visible;
  fill:none;
  filter:drop-shadow(0 0 2px rgba(224,234,239,.48));
}
.hm-story-lock-indicator svg path,
.hm-story-lock-indicator svg rect {
  fill:none;
  stroke:currentColor;
  stroke-width:1.05;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.hm-story-watch-progress {
  position:absolute;
  z-index:6;
  right:0;
  bottom:0;
  left:0;
  height:3px;
  overflow:hidden;
  pointer-events:none;
  background:rgba(20,22,23,.62);
  box-shadow:none;
}
.hm-story-watch-progress > i {
  width:var(--hm-story-watch-progress,0%);
  height:100%;
  display:block;
  background:linear-gradient(90deg,#b9c0c4,#eef1f2 76%,#f5f6f6);
  box-shadow:none;
  transition:width .5s cubic-bezier(.22,.78,.2,1);
}
.hm-story-collection.is-fixed-list .hm-grid-bookmark {
  transition:transform .32s cubic-bezier(.22,.78,.2,1),filter .3s ease,color .3s ease;
}
.hm-story-collection.is-fixed-list .hm-grid-bookmark:hover,
.hm-story-collection.is-fixed-list .hm-grid-bookmark:focus-visible {
  color:#d4dadd;
  filter:brightness(1.35) drop-shadow(0 0 7px rgba(194,211,220,.32));
  outline:0;
  transform:translateY(0) scale(1.1);
}

@media (max-width:899px) {
  .hm-story-archive .hm-story-controls {
    width:100%;
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:82px;
    column-gap:0;
    row-gap:0;
  }
  .hm-story-archive .hm-story-controls > .hm-story-native-filter:first-of-type,
  .hm-story-archive .hm-story-controls > .hm-story-native-filter:nth-of-type(2),
  .hm-story-archive .hm-story-controls > .hm-search-inline {
    grid-row:1;
    width:auto;
    max-width:none;
  }
  .hm-story-archive .hm-story-controls > .hm-story-native-filter:first-of-type { grid-column:1; }
  .hm-story-archive .hm-story-controls > .hm-story-native-filter:nth-of-type(2) { grid-column:2; }
  .hm-story-archive .hm-story-controls > .hm-search-inline { grid-column:3; }
  .hm-story-collection.is-fixed-list .hm-story-card-copy {
    grid-template-rows:auto auto;
  }
  .hm-story-collection.is-fixed-list .hm-story-copy-link { margin-top:3px; }
  .hm-story-collection.is-fixed-list .hm-story-copy-link p,
  .hm-story-collection.is-fixed-list .hm-grid-card-facts { display:none; }
  .hm-story-collection.is-fixed-list .hm-grid-bookmark { transform:translateY(-2px); }
  .hm-story-collection.is-fixed-list .hm-grid-bookmark:hover,
  .hm-story-collection.is-fixed-list .hm-grid-bookmark:focus-visible { transform:translateY(-2px) scale(1.1); }
}

@media (min-width:900px) {
  .hm-story-archive .hm-story-controls {
    grid-template-columns:repeat(3,minmax(0,160px));
    grid-template-rows:92px;
  }
  .hm-story-control-tile { height:92px; }
  .hm-story-archive .hm-story-native-filter.hm-story-control-tile,
  .hm-story-filter-menu > summary.hm-story-control-tile,
  .hm-story-archive .hm-search-inline.hm-story-control-tile { grid-template-rows:30px 17px; row-gap:7px; }
  .hm-story-control-code { font-size:24px; line-height:30px; }
  .hm-story-control-label,
  .hm-story-filter-menu > summary .hm-story-control-label,
  .hm-story-archive .hm-search-inline input { height:17px; font-size:13px; line-height:17px; }
  .hm-story-archive .hm-search-inline i { width:24px; height:24px; }
  .hm-story-filter-menu--status { grid-column:1; }
  .hm-story-filter-menu--order { grid-column:2; }
  .hm-story-archive .hm-search-inline { grid-column:3; }
  .hm-story-card-meta > span { height:27.4px; font-size:24px; }
  .hm-story-card-meta > b {
    flex-basis:80px;
    width:80px;
    min-width:80px;
    height:27.4px;
    font-size:13.5px;
  }
  .hm-story-lock-indicator { width:66px; height:66px; }
  .hm-story-lock-indicator svg { width:28px; height:28px; }
  .hm-story-collection.is-fixed-list .hm-grid-bookmark { transform:none; }
  .hm-story-collection.is-fixed-list .hm-grid-bookmark:hover,
  .hm-story-collection.is-fixed-list .hm-grid-bookmark:focus-visible { transform:scale(1.1); }
}

/* Story archive final alignment and motion refinements. */
.hm-story-archive .hm-story-controls {
  position:relative;
}
.hm-story-archive .hm-story-controls::before,
.hm-story-archive .hm-story-controls::after {
  position:absolute;
  z-index:1;
  top:50%;
  width:1px;
  height:42px;
  content:"";
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(190,198,202,.44) 22% 78%,transparent);
  transform:translate(-50%,-50%);
}
.hm-story-archive .hm-story-controls::before { left:33.333333%; }
.hm-story-archive .hm-story-controls::after { left:66.666667%; }
.hm-story-archive .hm-story-native-filter:nth-of-type(2)::before,
.hm-story-archive .hm-search-inline::before,
.hm-story-filter-menu--order::before { content:none; }
.hm-story-control-code,
.hm-story-archive .hm-search-inline i {
  color:#9da4a7;
}
.hm-story-control-label,
.hm-story-filter-menu > summary .hm-story-control-label,
.hm-story-archive .hm-search-inline input,
.hm-story-archive .hm-search-inline input::placeholder {
  color:#737b7f;
  font:400 11px/15px var(--font-body);
  letter-spacing:.055em;
}
.hm-story-archive .hm-search-inline input { min-width:0; }
.hm-story-archive .hm-search-inline input:focus::placeholder { color:transparent; }
.hm-story-archive .hm-search-inline i {
  width:27px;
  height:27px;
}
.hm-story-archive .hm-search-inline i svg {
  overflow:visible;
  stroke-width:1.5;
  transform:scale(1.35);
  transform-origin:center;
}
.hm-story-cover-meta > b.is-locked,
.hm-story-card-meta > b.is-locked {
  color:rgba(8,10,11,.94);
  text-shadow:0 1px rgba(242,246,247,.16);
}
.hm-story-watch-progress {
  background:rgba(20,22,23,.62);
  box-shadow:none;
}
.hm-story-watch-progress.is-empty { display:none; }
.hm-story-filter-options {
  transform-origin:50% 0;
  will-change:opacity,transform;
  animation:hm-story-filter-ios-spring-in .56s cubic-bezier(.16,1,.3,1) both;
}
.hm-story-filter-menu.is-closing .hm-story-filter-options {
  pointer-events:none;
  animation:hm-story-filter-ios-out .24s cubic-bezier(.4,0,.8,.2) both;
}
.hm-story-filter-menu[open]:not(.is-closing) .hm-story-filter-options a {
  animation:hm-story-filter-option-in .38s cubic-bezier(.16,1,.3,1) backwards;
}
.hm-story-filter-menu[open]:not(.is-closing) .hm-story-filter-options a:nth-child(1) { animation-delay:.055s; }
.hm-story-filter-menu[open]:not(.is-closing) .hm-story-filter-options a:nth-child(2) { animation-delay:.085s; }
.hm-story-filter-menu[open]:not(.is-closing) .hm-story-filter-options a:nth-child(3) { animation-delay:.115s; }
.hm-story-filter-menu[open]:not(.is-closing) .hm-story-filter-options a:nth-child(4) { animation-delay:.145s; }
@keyframes hm-story-filter-ios-spring-in {
  0% { opacity:0; transform:translate3d(-50%,-13px,0) scale(.955,.89); }
  64% { opacity:1; transform:translate3d(-50%,1.5px,0) scale(1.006,1.018); }
  82% { transform:translate3d(-50%,-.5px,0) scale(.998,1); }
  100% { opacity:1; transform:translate3d(-50%,0,0) scale(1); }
}
@keyframes hm-story-filter-ios-out {
  from { opacity:1; transform:translate3d(-50%,0,0) scale(1); }
  to { opacity:0; transform:translate3d(-50%,-7px,0) scale(.98,.94); }
}
@keyframes hm-story-filter-option-in {
  from { opacity:0; transform:translate3d(0,-5px,0); }
  to { opacity:1; transform:translate3d(0,0,0); }
}

@media (max-width:899px) {
  .hm-story-archive .hm-story-controls {
    margin-right:auto;
    margin-left:auto;
  }
  .hm-story-collection.is-fixed-list .hm-story-card-copy {
    grid-template-rows:max-content max-content;
    align-content:start;
  }
  .hm-story-collection.is-fixed-list .hm-story-copy-link { margin-top:-3px; }
}

@media (min-width:900px) {
  .hm-story-archive .hm-story-controls { margin-left:0; }
  .hm-story-control-label,
  .hm-story-filter-menu > summary .hm-story-control-label,
  .hm-story-archive .hm-search-inline input,
  .hm-story-archive .hm-search-inline input::placeholder {
    font-size:13px;
    line-height:17px;
  }
  .hm-story-archive .hm-search-inline i {
    width:30px;
    height:30px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .hm-story-filter-options,
  .hm-story-filter-menu.is-closing .hm-story-filter-options,
  .hm-story-filter-menu[open]:not(.is-closing) .hm-story-filter-options a { animation:none; }
}

/* Keep dividers attached to their controls instead of fixed ratio coordinates. */
.hm-story-archive .hm-story-controls::before,
.hm-story-archive .hm-story-controls::after { content:none; }
.hm-story-archive .hm-story-native-filter:nth-of-type(2)::before,
.hm-story-archive .hm-search-inline::before,
.hm-story-filter-menu--order::before {
  width:1px;
  height:42px;
  content:"";
  background:linear-gradient(180deg,transparent,rgba(190,198,202,.44) 22% 78%,transparent);
}
.hm-story-cover-meta > b.is-locked,
.hm-story-card-meta > b.is-locked {
  color:rgba(228,232,234,.9);
  text-shadow:none;
}

@media (max-width:899px) {
  .hm-story-archive .hm-search-inline.hm-story-control-tile { height:82px; }
  .hm-story-archive .hm-story-native-filter.hm-story-control-tile { justify-content:center !important; }
  .hm-story-archive .hm-story-native-filter .hm-story-control-code,
  .hm-story-archive .hm-story-native-filter .hm-story-control-label {
    justify-self:center;
    margin-right:auto;
    margin-left:auto;
    text-align:center;
  }
}

@media (min-width:900px) {
  .hm-story-filter-menu--order::before { top:22px; }
}

/* Homepage unlock summary: compact ticket beside the progress copy. */
.home .hm-story-unlock-action-row {
  --hm-unlock-ticket-width:clamp(210px,22vw,238px);
  --hm-unlock-ticket-height:clamp(60px,6.286vw,68px);
  width:100%;
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) var(--hm-unlock-ticket-width);
  align-items:start;
  column-gap:clamp(12px,2.4vw,24px);
}
.home .hm-story-unlock-action-row > .hm-story-unlock-progress-panel {
  grid-area:auto;
  position:static;
  top:auto;
  height:var(--hm-unlock-ticket-height);
  grid-template-rows:minmax(0,1fr) auto;
  align-content:stretch;
  gap:0;
  margin:0;
}
.home .hm-story-unlock-action-row .hm-story-unlock-progress-copy {
  grid-template-columns:minmax(0,1fr) max-content;
  gap:1px 8px;
}
.home .hm-story-unlock-action-row .hm-story-unlock-progress {
  margin:0;
}
.home .hm-story-unlock-action-row > .hm-story-ticket-stage {
  grid-area:auto;
  position:relative;
  top:auto;
  width:var(--hm-unlock-ticket-width);
  min-width:var(--hm-unlock-ticket-width);
  justify-self:end;
  margin:0;
  padding-bottom:10px;
}
.home .hm-story-unlock .hm-story-ticket,
.home .hm-story-unlock .hm-story-ticket:hover,
.home .hm-story-unlock .hm-story-ticket:active,
.home .hm-story-unlock .hm-story-ticket:focus-visible,
.home .hm-story-unlock .hm-story-ticket.is-payment-starting,
.home .hm-story-unlock .hm-story-ticket.is-payment-starting:hover {
  --hm-ticket-notch:clamp(11px,1.15vw,12.3px);
  --hm-ticket-notch-clear:clamp(10.4px,1.09vw,11.7px);
  width:var(--hm-unlock-ticket-width);
  min-width:var(--hm-unlock-ticket-width);
  height:var(--hm-unlock-ticket-height);
  min-height:0;
  margin:0;
}
.home .hm-story-unlock .hm-story-ticket > .hm-ticket-main {
  flex-direction:column;
  gap:5px;
}
.home .hm-story-unlock .hm-story-ticket .hm-ticket-label {
  padding-left:.1em;
  font-size:clamp(20px,2vw,23px);
  line-height:.95;
}
.home .hm-story-unlock .hm-story-ticket .hm-ticket-note {
  position:relative;
  z-index:3;
  display:block;
  max-width:calc(100% - 24px);
  margin:0;
  color:rgba(52,57,60,.78);
  font:500 clamp(8px,.78vw,9.5px)/1.2 var(--sans);
  letter-spacing:.025em;
  text-align:center;
  white-space:nowrap;
}
.home .hm-story-unlock .hm-story-ticket .hm-ticket-stub > span {
  font-size:clamp(6.4px,.68vw,7.2px);
}
.home .hm-story-unlock .hm-story-ticket > .hm-ticket-tear {
  top:clamp(7px,.75vw,8px);
  bottom:clamp(7px,.75vw,8px);
}
.home .hm-story-unlock-action-row .hm-story-ticket-reflection {
  width:var(--hm-unlock-ticket-width);
  height:clamp(34px,3.8vw,39px);
}
.home .hm-story-unlock-action-row > .hm-story-ticket-stage::after {
  top:var(--hm-unlock-ticket-height);
  height:clamp(40px,4.5vw,46px);
}

@media (min-width:900px) {
  .home .hm-story-unlock {
    grid-template-areas:
      "heading"
      "current"
      "."
      "action"
      "message";
    grid-template-rows:auto auto minmax(20px,1fr) auto auto;
  }
  .home .hm-story-unlock > .hm-story-unlock-action-row { grid-area:action; }
}

@media (max-width:599px) {
  .home .hm-story-unlock-action-row {
    --hm-unlock-ticket-width:210px;
    column-gap:12px;
  }
  .home .hm-story-unlock-action-row .hm-story-unlock-progress-copy > b > strong { font-size:27px; }
  .home .hm-story-unlock-action-row .hm-story-unlock-progress-current,
  .home .hm-story-unlock-action-row .hm-story-unlock-progress-copy > b > small {
    font-size:12px;
    letter-spacing:.01em;
  }
}

@media (min-width:900px) {
  .home .hm-story-unlock-action-row {
    --hm-unlock-ticket-width:280px;
    --hm-unlock-ticket-height:80px;
    grid-template-columns:minmax(0,1fr);
    row-gap:20px;
  }
  .home .hm-story-unlock-action-row > .hm-story-unlock-progress-panel {
    height:auto;
    grid-template-rows:auto auto;
    gap:8px;
  }
  .home .hm-story-unlock-action-row > .hm-story-ticket-stage {
    justify-self:center;
  }
  .home .hm-story-unlock .hm-story-ticket,
  .home .hm-story-unlock .hm-story-ticket:hover,
  .home .hm-story-unlock .hm-story-ticket:active,
  .home .hm-story-unlock .hm-story-ticket:focus-visible,
  .home .hm-story-unlock .hm-story-ticket.is-payment-starting,
  .home .hm-story-unlock .hm-story-ticket.is-payment-starting:hover {
    --hm-ticket-notch:14.5px;
    --hm-ticket-notch-clear:13.7px;
  }
  .home .hm-story-unlock .hm-story-ticket > .hm-ticket-main { gap:6px; }
  .home .hm-story-unlock .hm-story-ticket .hm-ticket-label { font-size:27px; }
  .home .hm-story-unlock .hm-story-ticket .hm-ticket-note { font-size:10.5px; }
  .home .hm-story-unlock .hm-story-ticket .hm-ticket-stub > span { font-size:8.5px; }
  .home .hm-story-unlock .hm-story-ticket > .hm-ticket-tear {
    top:9px;
    bottom:9px;
  }
  .home .hm-story-unlock-action-row .hm-story-ticket-reflection { height:46px; }
  .home .hm-story-unlock-action-row > .hm-story-ticket-stage::after { height:54px; }
}

/* Story detail: place metadata below the title and keep the cover uncluttered. */
.hm-story-detail .hm-detail-info {
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
}
.hm-story-detail .hm-detail-heading h1 { margin-bottom:8px; }
.hm-story-detail .hm-detail-meta-row {
  min-width:0;
  display:flex;
  align-items:center;
}
.hm-story-detail .hm-detail-buttons {
  gap:8px;
  align-self:end;
}
.hm-story-detail .hm-detail-buttons .hm-grid-preview,
.hm-story-detail .hm-detail-buttons .hm-detail-bookmark {
  width:28px;
  min-width:28px;
  height:28px;
  min-height:28px;
  display:grid;
  place-items:center;
  border:0;
  padding:0;
  color:#b6bdc0;
  background:transparent;
}
.hm-story-detail .hm-detail-buttons .hm-grid-preview:disabled { opacity:.42; }
.hm-story-detail .hm-detail-bookmark .hm-story-tool-icon {
  border:0;
  background:transparent;
  box-shadow:none;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}
.hm-story-detail .hm-detail-bookmark .hm-story-tool-icon svg {
  width:20px !important;
  height:24px !important;
}
.hm-story-detail .hm-story-description { margin-top:24px; }
.hm-story-detail .hm-story-description .hm-clamped-copy {
  display:block;
  overflow:visible;
  -webkit-line-clamp:unset;
}
.hm-story-detail .hm-taxonomy {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
  margin-top:12px;
}
.hm-story-detail .hm-taxonomy p { margin:0; }

@media (min-width:900px) {
  .hm-story-detail .hm-detail-buttons .hm-grid-preview,
  .hm-story-detail .hm-detail-buttons .hm-detail-bookmark,
  .hm-story-detail .hm-detail-buttons .hm-story-tool-icon {
    width:32px;
    min-width:32px;
    height:32px;
    min-height:32px;
  }
  .hm-story-detail .hm-detail-bookmark .hm-story-tool-icon svg {
    width:24px !important;
    height:28px !important;
  }
}

/* Story detail typography and rhythm consume the shared homepage design tokens. */
.hm-story-detail { color:var(--text-secondary); font-family:var(--font-body); }
.hm-story-detail .hm-detail-heading h1,
.hm-story-detail .hm-related h2,
.hm-story-detail .hm-related strong { color:var(--text-primary); }
.hm-story-detail .hm-story-description .hm-clamped-copy {
  color:var(--text-secondary);
  font-family:var(--font-body) !important;
  font-size:var(--fs-body);
  line-height:var(--lh-body);
  letter-spacing:var(--tracking-body);
}
.hm-story-detail .hm-story-description .hm-clamped-copy > :last-child { margin-bottom:0; }
.hm-story-detail .hm-taxonomy {
  margin-top:calc(24px + 1lh);
  color:var(--text-muted);
  font-family:var(--font-body);
  font-size:var(--fs-meta);
  line-height:var(--lh-body);
  letter-spacing:var(--tracking-body);
}
.hm-story-detail .hm-related-copy > .hm-related-meta {
  display:block;
  color:var(--text-muted);
  font-size:var(--fs-meta);
}
.hm-story-detail .hm-related-copy > .hm-related-meta .hm-story-card-meta { display:flex; }
.hm-story-detail .hm-detail-watch-progress { z-index:7; }

/* Story detail funding replaces all star controls with the homepage ticket language. */
.hm-detail-support { margin-top:var(--section-gap-mobile); }
.hm-detail-funding {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:22px;
  align-items:end;
}
.hm-detail-funding-info { min-width:0; display:grid; gap:12px; }
.hm-detail-funding .hm-energy-copy { grid-area:auto; display:grid; gap:4px; }
.hm-detail-funding .hm-energy-copy strong {
  color:var(--text-primary);
  font:700 var(--fs-body-lg)/var(--lh-title) var(--font-display);
  letter-spacing:var(--tracking-title);
}
.hm-detail-funding .hm-energy-copy span {
  color:var(--text-secondary);
  font:400 var(--fs-body)/var(--lh-body) var(--font-body);
  letter-spacing:var(--tracking-body);
}
.hm-detail-funding .hm-energy-copy b {
  color:var(--text-muted);
  font:500 var(--fs-meta)/var(--lh-body) var(--font-body);
  letter-spacing:var(--tracking-body);
}
.hm-detail-funding .hm-progress-row { grid-area:auto; width:100%; transform:none; }
.hm-detail-ticket-stage {
  position:relative;
  isolation:isolate;
  width:210px;
  min-width:210px;
  display:grid;
  grid-template-rows:auto auto;
  justify-self:center;
  padding-bottom:10px;
}
.hm-detail-ticket-stage::after {
  position:absolute;
  z-index:1;
  top:60px;
  right:4%;
  left:4%;
  height:40px;
  content:"";
  pointer-events:none;
  background:radial-gradient(ellipse 92% 74% at 50% 0,rgba(174,185,191,.076),rgba(130,143,149,.044) 58%,transparent 88%);
  filter:blur(3.2px);
}
.hm-detail-ticket,
.hm-detail-ticket:hover,
.hm-detail-ticket:active,
.hm-detail-ticket:focus-visible,
.hm-detail-ticket.is-payment-starting,
.hm-detail-ticket.is-payment-starting:hover {
  --hm-ticket-main-width:75%;
  --hm-ticket-notch:11px;
  --hm-ticket-notch-clear:10.4px;
  position:relative;
  z-index:2;
  width:210px;
  min-width:210px;
  height:60px;
  min-height:60px;
  aspect-ratio:3.5/1;
  display:grid;
  grid-template-columns:var(--hm-ticket-main-width) calc(100% - var(--hm-ticket-main-width));
  align-items:stretch;
  justify-self:center;
  overflow:visible;
  margin:0 auto;
  border:0;
  border-radius:0;
  padding:0;
  color:#171a1c;
  background:transparent;
  box-shadow:none;
  filter:none;
  cursor:pointer;
  transform:none;
  transition:transform 220ms ease,filter 220ms ease;
}
.hm-detail-ticket::before,
.hm-detail-ticket::after { display:none !important; content:none !important; }
.hm-detail-ticket > .hm-ticket-main,
.hm-detail-ticket > .hm-ticket-stub {
  position:relative;
  z-index:1;
  min-width:0;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  padding:0;
  color:#171a1c;
  background:
    linear-gradient(180deg,rgba(255,255,255,.72) 0,rgba(255,255,255,.2) 18%,transparent 44%,rgba(43,49,53,.3) 100%),
    linear-gradient(112deg,rgba(255,255,255,.3),transparent 27% 70%,rgba(255,255,255,.12)),
    linear-gradient(145deg,#e2e5e7 0%,#c1c6c9 52%,#969ea2 100%);
  box-shadow:inset 0 2px 1px rgba(255,255,255,.9),inset 0 -3px 3px rgba(40,46,50,.56),inset 1px 0 rgba(255,255,255,.26),0 7px 20px rgba(0,0,0,.42);
}
.hm-detail-ticket > .hm-ticket-main {
  grid-column:1;
  flex-direction:column;
  gap:5px;
  overflow:hidden;
  border-radius:8px 0 0 8px;
  -webkit-mask-image:radial-gradient(circle var(--hm-ticket-notch) at 0 50%,transparent var(--hm-ticket-notch-clear),#000 var(--hm-ticket-notch));
  mask-image:radial-gradient(circle var(--hm-ticket-notch) at 0 50%,transparent var(--hm-ticket-notch-clear),#000 var(--hm-ticket-notch));
}
.hm-detail-ticket > .hm-ticket-stub {
  grid-column:2;
  overflow:hidden;
  border-radius:0 8px 8px 0;
  -webkit-mask-image:radial-gradient(circle var(--hm-ticket-notch) at 100% 50%,transparent var(--hm-ticket-notch-clear),#000 var(--hm-ticket-notch));
  mask-image:radial-gradient(circle var(--hm-ticket-notch) at 100% 50%,transparent var(--hm-ticket-notch-clear),#000 var(--hm-ticket-notch));
}
.hm-detail-ticket .hm-ticket-inner-frame {
  position:absolute;
  z-index:2;
  inset:0;
  width:100%;
  height:100%;
  overflow:visible;
  color:rgba(78,84,88,.78);
  pointer-events:none;
}
.hm-detail-ticket .hm-ticket-frame-outer,
.hm-detail-ticket .hm-ticket-frame-inner {
  fill:none;
  vector-effect:non-scaling-stroke;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.hm-detail-ticket .hm-ticket-frame-outer {
  stroke:rgba(92,99,103,.46);
  stroke-width:1.1;
  filter:drop-shadow(0 -1px .55px rgba(255,255,255,.52)) drop-shadow(0 1.1px .75px rgba(38,44,47,.72));
}
.hm-detail-ticket .hm-ticket-frame-inner { stroke:currentColor; stroke-width:.7; }
.hm-detail-ticket .hm-ticket-label {
  position:relative;
  z-index:3;
  display:block;
  padding-left:.1em;
  color:#171a1c;
  font:600 20px/.95 var(--font-display);
  letter-spacing:.1em;
  text-shadow:0 1px rgba(255,255,255,.62),0 -1px rgba(72,78,82,.24);
}
.hm-detail-ticket .hm-ticket-note {
  position:relative;
  z-index:3;
  display:block;
  max-width:calc(100% - 20px);
  color:rgba(52,57,60,.78);
  font:500 8px/1.2 var(--font-body);
  letter-spacing:.025em;
  white-space:nowrap;
}
.hm-detail-ticket .hm-ticket-stub > span {
  position:absolute;
  top:50%;
  left:50%;
  color:rgba(35,40,43,.72);
  font:400 6.4px/1 var(--font-body);
  letter-spacing:.13em;
  transform:translate(-50%,-50%) rotate(180deg);
}
.hm-detail-ticket > .hm-ticket-tear {
  position:absolute;
  z-index:4;
  top:7px;
  bottom:7px;
  left:var(--hm-ticket-main-width);
  width:2px;
  background:repeating-linear-gradient(to bottom,rgba(53,60,64,.58) 0 3px,transparent 3px 7px);
  pointer-events:none;
}
.hm-detail-ticket > .hm-ticket-main::before {
  position:absolute;
  z-index:2;
  top:1px;
  bottom:1px;
  left:0;
  width:30%;
  content:"";
  opacity:0;
  background:linear-gradient(90deg,transparent,rgba(245,248,249,.1) 18%,rgba(255,255,255,.62) 50%,rgba(241,246,248,.12) 82%,transparent);
  transform:translateX(-100%);
  animation:hm-story-ticket-idle-sweep 4.8s cubic-bezier(.22,.61,.36,1) infinite;
  pointer-events:none;
}
.hm-detail-ticket:hover { filter:brightness(1.08); transform:scale(1.035); }
.hm-detail-ticket:active { filter:brightness(.96); transform:translateY(1px); }
.hm-detail-ticket:focus-visible { outline:1px solid rgba(235,241,244,.8); outline-offset:4px; }
.hm-detail-ticket.is-payment-starting { filter:brightness(1.08) drop-shadow(0 0 8px rgba(225,235,240,.34)); }
.hm-detail-ticket-stage .hm-story-ticket-reflection {
  position:relative;
  z-index:2;
  width:210px;
  height:34px;
  display:grid;
  grid-template-columns:75% 25%;
  margin:0;
  opacity:1;
  pointer-events:none;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.86),rgba(0,0,0,.3) 76%,transparent);
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.86),rgba(0,0,0,.3) 76%,transparent);
}
.hm-detail-ticket-stage .hm-story-ticket-reflection > i,
.hm-detail-ticket-stage .hm-story-ticket-reflection > b {
  display:block;
  background:linear-gradient(180deg,rgba(224,229,232,.305),rgba(169,179,184,.185) 54%,rgba(94,107,114,.032));
  filter:blur(1.9px);
}

@media (min-width:900px) {
  .hm-story-detail .hm-detail-media { position:relative; z-index:1; top:auto; }
  .hm-detail-support { margin-top:var(--section-gap-desktop); }
  .hm-detail-funding {
    grid-template-columns:minmax(0,1fr) 280px;
    gap:32px;
  }
  .hm-detail-ticket-stage { width:280px; min-width:280px; padding-bottom:14px; }
  .hm-detail-ticket-stage::after { top:80px; height:54px; }
  .hm-detail-ticket,
  .hm-detail-ticket:hover,
  .hm-detail-ticket:active,
  .hm-detail-ticket:focus-visible,
  .hm-detail-ticket.is-payment-starting,
  .hm-detail-ticket.is-payment-starting:hover {
    --hm-ticket-notch:14.5px;
    --hm-ticket-notch-clear:13.7px;
    width:280px;
    min-width:280px;
    height:80px;
    min-height:80px;
  }
  .hm-detail-ticket > .hm-ticket-main { gap:6px; border-radius:9px 0 0 9px; }
  .hm-detail-ticket > .hm-ticket-stub { border-radius:0 9px 9px 0; }
  .hm-detail-ticket .hm-ticket-label { font-size:27px; }
  .hm-detail-ticket .hm-ticket-note { font-size:10.5px; }
  .hm-detail-ticket .hm-ticket-stub > span { font-size:8.5px; }
  .hm-detail-ticket > .hm-ticket-tear { top:9px; bottom:9px; }
  .hm-detail-ticket-stage .hm-story-ticket-reflection { width:280px; height:46px; }
}

@media (prefers-reduced-motion:reduce) {
  .hm-detail-ticket { transition:none; }
  .hm-detail-ticket > .hm-ticket-main::before { animation:none; }
}

/* Story detail reuses the homepage ticket component without a second visual skin. */
body:not(.home) .hm-main .hm-story-detail .hm-detail-heading h1 {
  font-size:var(--fs-page-title);
}
.hm-story-detail .hm-related h2 {
  color:var(--text-secondary);
  font-size:var(--fs-body-lg);
}
.hm-story-detail .hm-related strong {
  color:var(--text-secondary);
  font-size:var(--fs-body);
  font-weight:600;
}
.hm-story-detail .hm-related-meta,
.hm-story-detail .hm-related-meta .hm-story-card-meta {
  color:var(--text-muted);
  font-size:var(--fs-meta);
}
.hm-detail-funding-info {
  height:60px;
  grid-template-rows:minmax(0,1fr) auto;
  align-self:start;
}
.hm-detail-funding-amount {
  color:var(--text-muted);
  font:500 var(--fs-meta)/var(--lh-body) var(--font-body);
  letter-spacing:var(--tracking-body);
}
.hm-detail-ticket-home {
  min-width:0;
}
.hm-detail-ticket-home .hm-story-unlock {
  --hm-unlock-ticket-width:210px;
  --hm-unlock-ticket-height:60px;
  min-height:0;
  display:block;
  margin:0;
  border:0;
  padding:0;
  background:none;
  box-shadow:none;
}
.hm-detail-ticket-home.home .hm-story-unlock > .hm-story-ticket-stage {
  position:relative;
  top:auto;
  width:var(--hm-unlock-ticket-width);
  min-width:var(--hm-unlock-ticket-width);
  justify-self:center;
  margin:0 auto;
  padding-bottom:10px;
}
.hm-detail-ticket-home.home .hm-story-ticket-stage::after {
  top:var(--hm-unlock-ticket-height);
  height:40px;
}
.hm-detail-ticket-home.home .hm-story-ticket-reflection {
  width:var(--hm-unlock-ticket-width);
  height:34px;
}
.hm-tip-sheet > .hm-detail-ticket-home {
  justify-self:center;
  margin-inline:auto;
}

@media (min-width:900px) {
  .hm-detail-funding {
    align-items:start;
  }
  .hm-detail-funding-info {
    height:80px;
  }
  .hm-detail-funding > .hm-detail-ticket-home {
    grid-column:2;
  }
  .hm-detail-ticket-home .hm-story-unlock {
    --hm-unlock-ticket-width:280px;
    --hm-unlock-ticket-height:80px;
  }
  .hm-detail-ticket-home.home .hm-story-unlock > .hm-story-ticket-stage {
    padding-bottom:10px;
  }
  .hm-detail-ticket-home.home .hm-story-ticket-stage::after {
    height:54px;
  }
  .hm-detail-ticket-home.home .hm-story-ticket-reflection {
    height:46px;
  }
}

/* Story detail composition: homepage components, reordered for the reading flow. */
.hm-story-detail .hm-detail-info {
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:
    "meta tools"
    "title title";
  align-items:center;
  row-gap:8px;
  padding-top:16px;
}
.hm-story-detail .hm-detail-meta-row { grid-area:meta; }
.hm-story-detail .hm-detail-heading h1 {
  grid-area:title;
  margin:0;
}
.hm-story-detail .hm-detail-buttons {
  grid-area:tools;
  align-self:center;
}
.hm-story-detail .hm-story-description { margin-top:14px; }

.hm-detail-funding.home .hm-story-unlock {
  min-height:0;
  display:block;
  margin:0;
  border:0;
  padding:0;
  background:none;
  box-shadow:none;
}
.hm-detail-funding.home .hm-story-unlock-action-row {
  grid-template-columns:minmax(0,1fr);
  row-gap:24px;
  column-gap:0;
  align-items:start;
}
.hm-detail-funding.home .hm-story-unlock-action-row > .hm-story-unlock-progress-panel {
  height:auto;
  grid-template-rows:auto auto;
  gap:8px;
}
.hm-detail-funding.home .hm-story-unlock-action-row > .hm-story-ticket-stage {
  justify-self:center;
}
.hm-detail-funding.home.is-support .hm-story-unlock-action-row {
  display:block;
}
.hm-detail-funding.home.is-support .hm-story-ticket-stage {
  margin-inline:auto;
}
.hm-story-detail .hm-taxonomy {
  margin-top:calc(24px + 1lh);
}

.hm-story-detail .hm-related a {
  grid-template-columns:112px minmax(0,1fr);
  align-items:start;
  gap:14px;
}
.hm-story-detail .hm-related-thumb {
  width:100%;
}
.hm-story-detail .hm-related-copy {
  align-self:start;
}

.hm-story-detail .hm-detail-media.is-locked .hm-detail-state-action {
  width:24%;
  min-width:0;
  height:auto;
  min-height:58px;
  aspect-ratio:1;
}
.hm-story-detail .hm-detail-media.is-locked .hm-detail-state-action svg {
  width:33%;
  height:33%;
}

.hm-story-detail .hm-detail-buttons button,
.hm-story-detail .hm-detail-state-action {
  transition:transform 220ms cubic-bezier(.22,.61,.36,1),filter 220ms ease,color 220ms ease,box-shadow 220ms ease;
}
@media (hover:hover) {
  .hm-story-detail .hm-detail-buttons button:not(:disabled):hover {
    color:#eef2f4;
    filter:brightness(1.2) drop-shadow(0 0 7px rgba(231,240,245,.46));
    transform:scale(1.14);
  }
  .hm-story-detail .hm-detail-state-action:hover {
    filter:brightness(1.18) drop-shadow(0 0 9px rgba(231,240,245,.42));
    transform:translate(-50%,-50%) scale(1.055);
  }
}
.hm-story-detail .hm-detail-buttons button:not(:disabled):active {
  filter:brightness(1.28) drop-shadow(0 0 8px rgba(231,240,245,.55));
  transform:scale(1.12);
}

@media (min-width:900px) {
  .hm-detail-funding.home .hm-story-unlock-action-row {
    --hm-unlock-ticket-width:280px;
    --hm-unlock-ticket-height:80px;
    grid-template-columns:minmax(0,1fr) var(--hm-unlock-ticket-width);
    align-items:start;
    gap:0 32px;
  }
  .hm-detail-funding.home .hm-story-unlock-action-row > .hm-story-unlock-progress-panel {
    height:var(--hm-unlock-ticket-height);
    grid-template-rows:minmax(0,1fr) auto;
    align-content:stretch;
    gap:0;
  }
  .hm-detail-funding.home .hm-story-unlock-action-row > .hm-story-ticket-stage {
    justify-self:end;
  }
  .hm-detail-funding.home.is-support .hm-story-unlock-action-row {
    display:block;
  }
  .hm-detail-funding.home.is-support .hm-story-ticket-stage {
    margin-inline:auto;
  }
  .hm-story-detail .hm-related {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px 32px;
  }
  .hm-story-detail .hm-related h2 {
    grid-column:1/-1;
    margin-bottom:0;
  }
  .hm-story-detail .hm-related a {
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:12px;
  }
  .hm-story-detail .hm-related a + a { margin-top:0; }
  .hm-story-detail .hm-related-thumb { width:100%; }
  .hm-story-detail .hm-related strong {
    display:-webkit-box;
    overflow:hidden;
    white-space:normal;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }
}

/* Requested final alignment for the simplified home navigation and Q&A cards. */
.hm-qa-page .hm-qa-card {
  opacity:1;
  filter:none;
}
.hm-qa-page .hm-qa-card .hm-qa-card-stage {
  opacity:.48;
  filter:brightness(.54) saturate(.72);
  transition:filter .32s ease,opacity .28s ease;
}
.hm-qa-page .hm-qa-card-title { color:rgba(201,206,208,.86); opacity:1; }
.hm-qa-page .hm-qa-explorer.has-active-card .hm-qa-card:not(.is-active) { opacity:1; }
.hm-qa-page .hm-qa-card.is-active {
  opacity:1;
  filter:none;
}
.hm-qa-page .hm-qa-card.is-active .hm-qa-card-stage { opacity:1; filter:none; }
.hm-qa-page .hm-qa-card.is-active .hm-qa-card-title { color:rgba(207,212,214,.9); }
.hm-qa-page .hm-qa-detail h2,
.hm-qa-page .hm-qa-detail-answer h2 { color:rgba(211,216,218,.9); }
.hm-qa-page .hm-qa-detail-answer,
.hm-qa-page .hm-qa-detail-answer p,
.hm-qa-page .hm-qa-detail-answer li { color:var(--text-secondary); }
.hm-qa-page .hm-qa-detail-answer strong,
.hm-qa-page .hm-qa-detail-answer summary { color:rgba(199,205,208,.9); }
.hm-qa-page .hm-qa-detail-answer a { color:#b7d1d0; }
.hm-qa-detail-answer {
  color:var(--text-secondary);
  font-family:var(--font-body);
  font-size:var(--fs-body);
  line-height:var(--lh-body);
  letter-spacing:var(--tracking-body);
}
.hm-qa-detail-answer > .hm-qa-telegram-tutorial--embedded {
  margin-top:0;
  padding-top:0;
}

.hm-qa-page .hm-qa-detail > h2 {
  margin-bottom:2.25em;
}
.hm-qa-page .hm-qa-detail-answer h3 {
  margin:2.2em 0 .8em;
  padding-top:1.05em;
  border-top:1px solid rgba(178,190,194,.32);
  color:rgba(224,231,233,.96);
  font-size:1.34em;
  line-height:1.45;
  letter-spacing:.04em;
  text-shadow:0 0 12px rgba(187,211,214,.12);
}
.hm-qa-page .hm-qa-detail-answer h3:first-child {
  margin-top:0;
  padding-top:0;
  border-top:0;
}
.hm-qa-page .hm-qa-detail-answer h3 + ul,
.hm-qa-page .hm-qa-detail-answer h3 + ol {
  margin-top:0;
}
@media (min-width:900px) {
  .hm-qa-page .hm-qa-rail {
    display:grid;
    grid-template-columns:repeat(6,minmax(148px,1fr));
    gap:clamp(16px,1.8vw,28px);
    overflow-x:auto;
  }
  .hm-qa-page .hm-qa-card {
    width:100%;
    flex:none;
  }
  body:not(.home) .hm-main .hm-qa-page .hm-qa-card-face b,
  body:not(.home) .hm-main .hm-qa-page .hm-qa-card-title {
    font-size:var(--fs-body-lg) !important;
  }
  .hm-qa-page .hm-qa-card-title {
    min-height:calc(var(--lh-body) * 2em);
    overflow:visible;
    white-space:normal;
    text-overflow:clip;
  }
  .hm-story-collection.is-fixed-list .hm-grid-card-facts > time { order:1; }
  .hm-story-collection.is-fixed-list .hm-grid-card-facts > span { order:2; }
}

@media (prefers-reduced-motion:reduce) {
  .hm-story-detail .hm-detail-buttons button,
  .hm-story-detail .hm-detail-state-action { transition:none; }
}

/* Playback state: the mobile video only becomes sticky while it is actively playing. */
.hm-story-detail .hm-detail-media {
  position:relative;
  z-index:1;
  top:auto;
}
.hm-story-detail .hm-detail-video-launch {
  position:absolute;
  z-index:5;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  overflow:hidden;
  border:0;
  padding:0;
  background:#0d1012;
  cursor:pointer;
}
.hm-story-detail .hm-detail-video-launch[hidden] { display:none !important; }
.hm-story-detail .hm-detail-video-launch > img,
.hm-story-detail .hm-detail-video-launch > .hm-media-placeholder {
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
}
.hm-story-detail .hm-detail-video-launch.has-resume-frame {
  background-color:#050607;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
}
.hm-story-detail .hm-detail-video-launch.has-resume-frame > img,
.hm-story-detail .hm-detail-video-launch.has-resume-frame > .hm-media-placeholder { opacity:0; }
.hm-story-detail .hm-detail-media.has-playback-started .hm-detail-watch-progress {
  display:none !important;
}
.hm-story-detail .hm-detail-media.has-playback-started::after,
.hm-story-detail .hm-detail-media.has-playback-started .hm-media-overlay { display:none; }
.hm-story-detail .hm-detail-media.has-playback-started video[data-detail-video] {
  position:relative;
  z-index:4;
  display:block;
  pointer-events:auto;
  touch-action:manipulation;
}
.hm-detail-player-minimize { display:none; }
.hm-detail-player-controls {
  position:absolute;
  z-index:9;
  right:0;
  bottom:0;
  left:0;
  box-sizing:border-box;
  padding:26px 12px 8px;
  color:rgba(238,242,244,.94);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
}
.hm-detail-player-controls[hidden] { display:none; }
.hm-detail-player-controls [hidden] { display:none !important; }
.hm-detail-player-controls::before {
  position:absolute;
  z-index:-1;
  inset:-34px 0 0;
  content:"";
  pointer-events:none;
  background:linear-gradient(0deg,rgba(0,0,0,.84),rgba(0,0,0,.42) 45%,transparent);
}
.hm-detail-player-seek-wrap { position:relative; }
.hm-detail-player-seek-wrap output {
  --hm-player-tooltip-left:0%;
  position:absolute;
  z-index:3;
  bottom:19px;
  left:clamp(24px,var(--hm-player-tooltip-left),calc(100% - 24px));
  border-radius:3px;
  padding:5px 7px;
  color:#eef1f2;
  background:rgba(8,9,10,.9);
  font:400 11px/1 var(--font-body);
  opacity:0;
  pointer-events:none;
  transform:translateX(-50%) translateY(3px);
  transition:opacity .14s ease,transform .14s ease;
}
.hm-detail-player-seek-wrap output.is-visible { opacity:1; transform:translateX(-50%) translateY(0); }
.hm-story-detail .hm-detail-media.has-playback-started.are-controls-visible .hm-detail-player-controls,
.hm-story-detail .hm-detail-media.has-playback-started:not(.is-playing) .hm-detail-player-controls {
  opacity:1;
  pointer-events:auto;
}
.hm-detail-player-seek {
  --hm-player-progress:0%;
  --hm-player-buffered:0%;
  width:100%;
  height:15px;
  display:block;
  margin:0;
  border:0;
  padding:6px 0;
  appearance:none;
  background:linear-gradient(90deg,#e9edef 0 var(--hm-player-progress),rgba(198,205,209,.5) var(--hm-player-progress) var(--hm-player-buffered),rgba(126,133,137,.34) var(--hm-player-buffered) 100%) center/100% 3px no-repeat;
  cursor:pointer;
}
.hm-detail-player-seek::-webkit-slider-runnable-track { height:3px; background:transparent; }
.hm-detail-player-seek::-moz-range-track { height:3px; background:transparent; }
.hm-detail-player-seek::-webkit-slider-thumb {
  width:11px;
  height:11px;
  margin-top:-4px;
  border:0;
  border-radius:50%;
  appearance:none;
  color:#eef2f4;
  background:currentColor;
  box-shadow:0 0 7px rgba(222,234,240,.38);
  transform:scale(0);
  transition:transform .16s ease;
}
.hm-detail-player-seek::-moz-range-thumb {
  width:11px;
  height:11px;
  border:0;
  border-radius:50%;
  color:#eef2f4;
  background:currentColor;
  box-shadow:0 0 7px rgba(222,234,240,.38);
  transform:scale(0);
  transition:transform .16s ease;
}
.hm-detail-player-seek:hover::-webkit-slider-thumb,
.hm-detail-player-seek:focus-visible::-webkit-slider-thumb { transform:scale(1); }
.hm-detail-player-seek:hover::-moz-range-thumb,
.hm-detail-player-seek:focus-visible::-moz-range-thumb { transform:scale(1); }
.hm-detail-player-bar,
.hm-detail-player-left,
.hm-detail-player-right {
  display:flex;
  align-items:center;
}
.hm-detail-player-bar { min-height:36px; justify-content:space-between; gap:12px; }
.hm-detail-player-left,
.hm-detail-player-right { min-width:0; gap:2px; }
.hm-detail-player-controls button {
  position:relative;
  width:38px;
  height:36px;
  display:grid;
  flex:0 0 38px;
  place-items:center;
  border:0;
  padding:0;
  border-radius:50%;
  color:inherit;
  background:transparent;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.88));
  cursor:pointer;
  transition:color .18s ease,filter .18s ease,transform .18s ease;
}
.hm-detail-player-controls button:hover,
.hm-detail-player-controls button:focus-visible {
  color:#fff;
  background:rgba(212,219,222,.12);
  filter:brightness(1.18) drop-shadow(0 0 5px rgba(225,237,243,.32));
  outline:0;
  transform:scale(1.08);
}
@media (hover:hover) and (pointer:fine) {
  .hm-detail-player-controls button::after {
    position:absolute;
    bottom:calc(100% + 8px);
    left:50%;
    width:max-content;
    max-width:126px;
    border:1px solid rgba(229,234,236,.12);
    border-radius:7px;
    padding:6px 8px;
    content:attr(aria-label);
    color:rgba(244,246,247,.94);
    background:rgba(43,47,49,.84);
    box-shadow:inset 0 1px rgba(255,255,255,.06),0 7px 20px rgba(0,0,0,.34);
    -webkit-backdrop-filter:blur(10px);
    backdrop-filter:blur(10px);
    font:400 11px/1 var(--font-body);
    letter-spacing:.02em;
    white-space:nowrap;
    opacity:0;
    pointer-events:none;
    transform:translate(-50%,5px) scale(.94);
    transition:opacity .18s ease,transform .28s cubic-bezier(.2,.8,.2,1);
  }
  .hm-detail-player-controls button:hover::after,
  .hm-detail-player-controls button:focus-visible::after {
    opacity:1;
    transform:translate(-50%,0) scale(1);
  }
}
.hm-detail-player-controls button svg { width:22px; height:22px; overflow:visible; }
.hm-detail-player-controls button svg path,
.hm-detail-player-controls button svg circle { fill:currentColor; stroke:none; }
.hm-detail-player-controls [data-player-volume-toggle] svg path:last-child,
.hm-detail-player-controls [data-player-settings] svg path,
.hm-detail-player-controls [data-player-settings] svg circle,
.hm-detail-player-controls [data-player-theater] svg path,
.hm-detail-player-controls [data-player-fullscreen] svg path {
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.hm-detail-player-volume {
  --hm-player-volume:100%;
  width:0;
  height:20px;
  margin:0;
  border:0;
  padding:8px 0;
  appearance:none;
  background:linear-gradient(90deg,#e9edef 0 var(--hm-player-volume),rgba(136,144,148,.44) var(--hm-player-volume) 100%) center/100% 3px no-repeat;
  cursor:pointer;
  opacity:0;
  transition:width .22s cubic-bezier(.2,.72,.2,1),opacity .18s ease;
}
.hm-detail-player-left:hover .hm-detail-player-volume,
.hm-detail-player-volume:focus-visible { width:72px; opacity:1; }
.hm-detail-player-volume::-webkit-slider-runnable-track { height:3px; background:transparent; }
.hm-detail-player-volume::-webkit-slider-thumb { width:9px; height:9px; margin-top:-3px; border:0; border-radius:50%; appearance:none; background:#eef2f4; }
.hm-detail-player-volume::-moz-range-track { height:3px; background:transparent; }
.hm-detail-player-volume::-moz-range-thumb { width:9px; height:9px; border:0; border-radius:50%; background:#eef2f4; }
.hm-detail-player-time {
  margin-left:7px;
  color:rgba(229,233,235,.88);
  font:400 12px/1 var(--font-body);
  letter-spacing:.01em;
  white-space:nowrap;
  text-shadow:0 1px 3px rgba(0,0,0,.9);
}
.hm-detail-player-menu {
  position:absolute;
  right:82px;
  bottom:50px;
  width:190px;
  overflow:hidden;
  border:1px solid rgba(207,215,219,.18);
  border-radius:8px;
  padding:7px;
  color:rgba(226,231,233,.9);
  background:rgba(12,14,15,.92);
  box-shadow:0 14px 34px rgba(0,0,0,.52),inset 0 1px rgba(255,255,255,.035);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  transform-origin:100% 100%;
  animation:hm-detail-player-menu-in .24s cubic-bezier(.2,.72,.2,1) both;
}
.hm-detail-player-menu[hidden] { display:none; }
.hm-detail-player-menu label,
.hm-detail-player-menu > button {
  width:100%;
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  box-sizing:border-box;
  border-radius:5px;
  padding:0 9px;
  color:inherit;
  font:400 12px/1.3 var(--font-body);
}
.hm-detail-player-menu > button { height:38px; transform:none; }
.hm-detail-player-menu > button:hover,
.hm-detail-player-menu > button:focus-visible { background:rgba(224,232,236,.08); transform:none; }
.hm-detail-player-menu select {
  border:0;
  color:#d9dfe1;
  background:#171a1c;
  font:inherit;
}
.hm-detail-player-feedback {
  position:absolute;
  z-index:8;
  top:50%;
  left:50%;
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#f1f3f4;
  background:rgba(4,5,6,.56);
  box-shadow:0 0 18px rgba(0,0,0,.35);
  font:500 22px/1 var(--sans);
  opacity:0;
  pointer-events:none;
  transform:translate(-50%,-50%) scale(.86);
}
.hm-detail-player-feedback.is-visible { animation:hm-detail-player-feedback .46s ease both; }
.hm-detail-player-feedback.is-buffering {
  width:42px;
  height:42px;
  box-sizing:border-box;
  border:3px solid rgba(232,238,241,.28);
  border-top-color:rgba(242,246,247,.94);
  background:rgba(4,5,6,.32);
  opacity:1;
  animation:hm-detail-player-buffering .72s linear infinite;
}
.hm-story-detail .hm-detail-media.is-theater-mode {
  box-shadow:0 14px 28px rgba(0,0,0,.72);
}
.hm-story-detail .hm-detail-media:fullscreen,
.hm-story-detail .hm-detail-media:-webkit-full-screen {
  width:100vw;
  height:100vh;
  max-width:none;
  margin:0;
  aspect-ratio:auto;
  background:#000;
}
@keyframes hm-detail-player-menu-in {
  from { opacity:0; filter:blur(3px); transform:translateY(7px) scale(.96); }
  to { opacity:1; filter:blur(0); transform:translateY(0) scale(1); }
}
@keyframes hm-detail-player-feedback {
  0% { opacity:0; transform:translate(-50%,-50%) scale(.78); }
  22% { opacity:1; transform:translate(-50%,-50%) scale(1); }
  100% { opacity:0; transform:translate(-50%,-50%) scale(1.08); }
}
@keyframes hm-detail-player-buffering {
  from { transform:translate(-50%,-50%) rotate(0); }
  to { transform:translate(-50%,-50%) rotate(360deg); }
}
@media (min-width:900px) {
  .hm-story-detail .hm-detail-media {
    transition:width .28s cubic-bezier(.2,.72,.2,1),transform .28s cubic-bezier(.2,.72,.2,1),box-shadow .28s ease;
  }
  .hm-story-detail .hm-detail-media.is-theater-mode {
    width:min(100vw,1920px);
    max-width:none;
    margin-right:0;
    margin-left:50%;
    transform:translateX(-50%);
  }
  .hm-story-detail .hm-detail-media.is-theater-mode:fullscreen { transform:none; }
}
@media (max-width:599px) {
  .hm-detail-player-controls { padding:24px 9px 7px; }
  .hm-detail-player-controls button {
    width:38px;
    height:38px;
    flex-basis:38px;
    border:1px solid rgba(235,240,242,.12);
    border-radius:50%;
    background:linear-gradient(145deg,rgba(124,130,133,.56),rgba(69,74,77,.42));
    box-shadow:inset 0 1px rgba(255,255,255,.12),0 3px 12px rgba(0,0,0,.32);
    -webkit-backdrop-filter:blur(10px) saturate(.82);
    backdrop-filter:blur(10px) saturate(.82);
    transition:transform .32s cubic-bezier(.2,.8,.2,1),background .28s ease,box-shadow .28s ease,filter .28s ease;
  }
  .hm-detail-player-controls button:active {
    transform:scale(.9);
    background:linear-gradient(145deg,rgba(153,160,164,.68),rgba(82,88,91,.54));
    box-shadow:inset 0 1px rgba(255,255,255,.16),0 1px 6px rgba(0,0,0,.3);
  }
  .hm-detail-player-controls button svg { width:20px; height:20px; }
  .hm-detail-player-volume { display:none; }
  .hm-detail-player-time {
    margin-left:3px;
    border-radius:18px;
    padding:9px 11px;
    background:rgba(78,83,86,.5);
    box-shadow:inset 0 1px rgba(255,255,255,.08),0 3px 12px rgba(0,0,0,.24);
    -webkit-backdrop-filter:blur(9px);
    backdrop-filter:blur(9px);
    font-size:10px;
  }
  .hm-detail-player-left,.hm-detail-player-right { gap:7px; }
  .hm-detail-player-menu { right:42px; bottom:52px; width:174px; }
  .hm-detail-player-controls [data-player-theater] { display:none; }
}
@media (max-width:899px) {
  .hm-story-detail .hm-detail-media.has-playback-started.is-video-ready.are-controls-visible:not(.has-in-page-mini-player) .hm-detail-player-minimize {
    position:absolute;
    z-index:11;
    top:10px;
    left:10px;
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border:1px solid rgba(235,240,242,.14);
    border-radius:50%;
    padding:0;
    color:#f1f3f4;
    background:linear-gradient(145deg,rgba(112,118,121,.62),rgba(49,53,55,.52));
    box-shadow:inset 0 1px rgba(255,255,255,.12),0 4px 14px rgba(0,0,0,.34);
    -webkit-backdrop-filter:blur(10px) saturate(.82);
    backdrop-filter:blur(10px) saturate(.82);
    cursor:pointer;
    animation:hm-detail-player-menu-in .3s cubic-bezier(.2,.8,.2,1) both;
  }
  .hm-detail-player-minimize svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  .hm-detail-player-minimize:active { transform:scale(.9); }
  .hm-story-detail .hm-detail-media.has-in-page-mini-player {
    position:relative !important;
    top:auto;
    height:0;
    min-height:0;
    aspect-ratio:auto;
    overflow:hidden;
    margin-top:0;
    box-shadow:none;
    visibility:hidden;
  }
}
.hm-in-page-mini-player {
  position:fixed;
  z-index:145;
  right:12px;
  bottom:calc(82px + env(safe-area-inset-bottom));
  width:clamp(190px,54vw,300px);
  aspect-ratio:16/9;
  overflow:hidden;
  border:1px solid rgba(226,232,235,.24);
  border-radius:11px;
  color:#f2f4f5;
  background:#050607;
  box-shadow:0 16px 38px rgba(0,0,0,.62),0 0 0 .5px rgba(255,255,255,.06),inset 0 1px rgba(255,255,255,.08);
  touch-action:none;
  user-select:none;
  -webkit-user-select:none;
  animation:hm-in-page-mini-enter .24s cubic-bezier(.16,1,.3,1) both;
}
.hm-in-page-mini-player.is-snapping {
  transition:left .36s cubic-bezier(.18,.88,.22,1.08),top .36s cubic-bezier(.18,.88,.22,1.08);
}
.hm-in-page-mini-frame { position:relative; width:100%; height:100%; overflow:hidden; cursor:grab; }
.hm-in-page-mini-frame:active { cursor:grabbing; }
.hm-in-page-mini-video { width:100%; height:100%; display:block; object-fit:contain; background:#000; pointer-events:none; }
.hm-in-page-mini-resume-frame {
  position:absolute;
  z-index:1;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#000;
  opacity:1;
  pointer-events:none;
  transition:opacity .16s ease;
}
.hm-in-page-mini-player.is-video-ready .hm-in-page-mini-resume-frame { opacity:0; }
.hm-in-page-mini-player button {
  position:absolute;
  z-index:3;
  top:8px;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(237,241,243,.14);
  border-radius:50%;
  padding:0;
  color:#f4f6f7;
  background:rgba(31,34,36,.66);
  box-shadow:inset 0 1px rgba(255,255,255,.1),0 3px 10px rgba(0,0,0,.38);
  -webkit-backdrop-filter:blur(9px);
  backdrop-filter:blur(9px);
  transition:transform .28s cubic-bezier(.2,.8,.2,1),background .22s ease;
}
.hm-in-page-mini-player button:active { transform:scale(.88); background:rgba(79,84,87,.74); }
.hm-in-page-mini-player [data-mini-play] { left:8px; }
.hm-in-page-mini-player [data-mini-close] { right:8px; }
.hm-in-page-mini-player button svg { width:19px; height:19px; overflow:visible; }
.hm-in-page-mini-player button svg path { fill:currentColor; stroke:none; }
.hm-in-page-mini-player [data-mini-close] svg path { fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; }
.hm-in-page-mini-player [hidden] { display:none !important; }
.hm-in-page-mini-progress {
  position:absolute;
  z-index:3;
  right:0;
  bottom:0;
  left:0;
  height:3px;
  overflow:hidden;
  background:rgba(18,20,21,.66);
  pointer-events:none;
}
.hm-in-page-mini-progress > i { width:0; height:100%; display:block; background:linear-gradient(90deg,#b9c0c4,#eef1f2 76%,#f5f6f6); }
@keyframes hm-in-page-mini-enter {
  from { opacity:.55; transform:translateY(7px) scale(.95); }
  to { opacity:1; transform:translateY(0) scale(1); }
}
@media (min-width:900px) { .hm-in-page-mini-player { display:none !important; } }

/* Q&A follows the story archive's cover-then-content rhythm, without a search row. */
.hm-qa-page .hm-qa-explorer {
  margin:20px 0 0;
  padding-bottom:34px;
}
@media (min-width:900px) {
  .hm-qa-page .hm-qa-explorer { margin-top:32px; }
}

/* Treasure and account pages share the story archive's cover-to-content origin. */
.hm-shop-explorer,
.hm-account-page .hm-account-hub,
.hm-account-page.is-member-complete .hm-account-hub {
  margin-top:20px;
}
.hm-account-login-ticket-shell {
  position:relative;
  width:max-content !important;
  min-height:0 !important;
  display:grid;
  place-items:center;
  overflow:visible !important;
}
.hm-account-login-ticket-shell > .hm-hero-ignite { grid-area:1 / 1; pointer-events:auto; }
.hm-account-support-banner-skin {
  width:auto;
  margin:34px calc(var(--page) * -1) 0;
}
@media (max-width:599px) {
  .home .hm-main > .hm-latest + .hm-site-footer { padding-top:56px; }
}
@media (min-width:900px) {
  .hm-shop-explorer,
  .hm-account-page .hm-account-hub,
  .hm-account-page.is-member-complete .hm-account-hub { margin-top:32px; }
  .hm-account-support-banner-skin { margin-top:52px; }
}
@media (max-width:899px) {
  .hm-story-detail .hm-detail-media.is-playing {
    position:sticky;
    z-index:90;
    top:0;
  }
}

/* Mobile story cards keep the publication date pinned to the cover's lower edge. */
@media (max-width:899px) {
  .hm-story-collection.is-fixed-list .hm-story-card-copy {
    grid-template-rows:auto auto minmax(0,1fr) auto;
  }
  .hm-story-collection.is-fixed-list .hm-grid-card-facts {
    grid-column:1 / -1;
    grid-row:4;
    align-self:end;
    display:flex;
    min-height:0;
    margin:0;
  }
  .hm-story-collection.is-fixed-list .hm-grid-card-facts > span { display:none; }
  .hm-story-collection.is-fixed-list .hm-grid-card-facts > time {
    display:block;
    font-size:var(--fs-meta);
  }
}

/* Related viewing cards use the same cinematic gradients as story covers. */
.hm-story-detail .hm-related-thumb {
  position:relative;
  isolation:isolate;
}
.hm-story-detail .hm-related-thumb::before,
.hm-story-detail .hm-related-thumb::after {
  position:absolute;
  z-index:2;
  right:0;
  left:0;
  content:"";
  pointer-events:none;
}
.hm-story-detail .hm-related-thumb::before {
  top:0;
  height:34%;
  background:linear-gradient(180deg,rgba(0,0,0,.7),rgba(0,0,0,.24) 54%,transparent);
}
.hm-story-detail .hm-related-thumb::after {
  bottom:0;
  height:40%;
  background:linear-gradient(0deg,rgba(0,0,0,.78),rgba(0,0,0,.3) 52%,transparent);
}
.hm-story-detail .hm-related .hm-story-card-meta > span {
  font-size:calc(var(--fs-meta) + 5px);
}
.hm-story-detail .hm-detail-meta-row .hm-story-card-meta > span {
  height:24px;
  font-size:20px;
}
.hm-story-detail .hm-detail-meta-row .hm-story-card-meta > b {
  flex-basis:70px;
  width:70px;
  min-width:70px;
  height:24px;
  font-size:11px;
}
.hm-state-icon.is-lock,
.hm-lock-action > span,
.hm-story-lock-indicator,
.hm-story-detail .hm-detail-media.is-locked .hm-detail-state-action {
  border:.8px solid rgba(222,228,231,.78);
  border-radius:50%;
  color:#d9dfe1;
  background:rgba(4,6,7,.34);
  box-shadow:inset 0 0 0 1px rgba(239,243,245,.035),0 0 5px rgba(214,226,232,.18),0 0 12px rgba(176,199,211,.09);
  -webkit-backdrop-filter:blur(2px);
  backdrop-filter:blur(2px);
}
.hm-state-icon.is-lock svg,
.hm-lock-action > span svg,
.hm-story-lock-indicator svg,
.hm-story-detail .hm-detail-media.is-locked .hm-detail-state-action svg {
  width:calc(43.5% + 1px);
  height:calc(43.5% + 1px);
  overflow:visible;
  fill:none;
  filter:drop-shadow(0 0 2px rgba(224,234,239,.48));
}
.hm-state-icon.is-lock svg path,
.hm-lock-action > span svg path,
.hm-story-lock-indicator svg path,
.hm-story-detail .hm-detail-media.is-locked .hm-detail-state-action svg path {
  fill:none;
  stroke:currentColor;
  stroke-width:1.05;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.hm-state-icon.is-lock svg rect,
.hm-lock-action > span svg rect,
.hm-story-lock-indicator svg rect,
.hm-story-detail .hm-detail-media.is-locked .hm-detail-state-action svg rect {
  fill:currentColor;
  stroke:currentColor;
  stroke-width:1.05;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}

/* Make the locked state immediately distinct without changing its glass frame. */
.hm-story-cover-meta > b.is-locked,
.hm-story-card-meta > b.is-locked {
  font-weight:700;
  text-shadow:0 0 4px rgba(232,238,241,.32),0 0 10px rgba(190,207,216,.15);
}

@media (max-width:899px) {
  body:not(.home) .hm-main .hm-story-detail .hm-detail-heading h1 {
    font-size:var(--fs-section-title);
  }
  .hm-story-detail .hm-related {
    margin-top:28px;
    padding-top:0;
  }
}

/* Match the homepage play-button response: enlarge, glow and reverse the triangle. */
.hm-story-detail .hm-detail-buttons .hm-grid-preview .hm-story-tool-icon,
.hm-story-detail .hm-detail-buttons .hm-grid-preview .hm-story-tool-icon svg,
.hm-story-detail .hm-detail-state-action[data-detail-play] svg {
  transition:color 220ms ease,border-color 220ms ease,background 220ms ease,box-shadow 220ms ease,transform 220ms ease,filter 220ms ease;
}
@media (hover:hover) and (pointer:fine) {
  .hm-story-detail .hm-detail-buttons .hm-grid-preview:not(:disabled):hover .hm-story-tool-icon,
  .hm-story-detail .hm-detail-state-action[data-detail-play]:hover {
    border-color:rgba(247,249,250,.96);
    color:#050607;
    background:linear-gradient(145deg,#f7f8f8,#c9ced1 72%,#aeb5b8);
    box-shadow:inset 0 1px rgba(255,255,255,.82),inset 0 -1px rgba(71,78,82,.28),0 0 7px rgba(236,243,247,.62),0 0 18px rgba(188,211,224,.34);
    filter:drop-shadow(0 0 5px rgba(231,240,245,.48));
  }
  .hm-story-detail .hm-detail-buttons .hm-grid-preview:not(:disabled):hover .hm-story-tool-icon svg,
  .hm-story-detail .hm-detail-state-action[data-detail-play]:hover svg {
    filter:none;
    transform:scale(1.18);
  }
  .hm-story-detail .hm-detail-buttons .hm-grid-preview:not(:disabled):hover svg path,
  .hm-story-detail .hm-detail-state-action[data-detail-play]:hover svg path {
    fill:#050607;
    stroke:#050607;
  }
}
.hm-story-detail .hm-detail-buttons .hm-grid-preview:not(:disabled):active .hm-story-tool-icon {
  border-color:rgba(247,249,250,.96);
  color:#050607;
  background:linear-gradient(145deg,#f7f8f8,#c9ced1 72%,#aeb5b8);
  box-shadow:inset 0 1px rgba(255,255,255,.82),inset 0 -1px rgba(71,78,82,.28),0 0 7px rgba(236,243,247,.62),0 0 18px rgba(188,211,224,.34);
}
.hm-story-detail .hm-detail-buttons .hm-grid-preview:not(:disabled):active svg path {
  fill:#050607;
  stroke:#050607;
}

/* One-line cinema-ticket notice for a locked cover, without opening the payment sheet. */
.hm-locked-ticket-notice[hidden] { display:none; }
.hm-locked-ticket-notice {
  position:fixed;
  z-index:150;
  inset:0;
  display:grid;
  place-items:center;
  padding:24px;
}
.hm-locked-ticket-backdrop {
  position:absolute;
  inset:0;
  border:0;
  background:rgba(2,3,4,.64);
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter:blur(5px);
  animation:hm-home-entry-backdrop-in .32s ease both;
}
.hm-locked-ticket-notice > section {
  position:relative;
  isolation:isolate;
  width:min(100%,430px);
  aspect-ratio:430/132;
  display:grid;
  place-items:center;
  border:0;
  padding:12px 36px;
  background:linear-gradient(145deg,rgba(11,12,13,.97),rgba(5,6,7,.97));
  box-shadow:inset 0 1px rgba(255,255,255,.025),inset 0 -1px rgba(132,140,145,.14),0 24px 70px rgba(0,0,0,.48);
  animation:hm-home-entry-dialog-in .42s cubic-bezier(.2,.72,.2,1) both;
}
.hm-locked-ticket-frame {
  position:absolute;
  z-index:1;
  inset:0;
  width:100%;
  height:100%;
  overflow:visible;
  pointer-events:none;
}
.hm-locked-ticket-notice strong {
  position:relative;
  z-index:2;
  color:#d2d6d8;
  font:500 19px/1 var(--font-display);
  letter-spacing:.14em;
  text-shadow:0 0 9px rgba(224,230,233,.06);
}
.hm-locked-ticket-notice.is-closing {
  opacity:0;
  transition:opacity .24s ease;
}

@media (min-width:900px) {
  .hm-story-detail .hm-detail-funding { display:block; }
  .hm-detail-funding.home .hm-story-unlock-action-row {
    width:min(100%,902px);
    margin-inline:auto;
  }
  .hm-story-detail .hm-related-copy {
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:14px;
  }
  .hm-story-detail .hm-detail-meta-row .hm-story-card-meta > span {
    height:30px;
    font-size:26px;
  }
  .hm-story-detail .hm-detail-meta-row .hm-story-card-meta > b {
    flex-basis:86px;
    width:86px;
    min-width:86px;
    height:30px;
    font-size:15px;
  }
  .hm-story-detail .hm-related { row-gap:14px; }
  .hm-story-detail .hm-related-meta { flex:0 0 auto; }
  .hm-story-detail .hm-related strong {
    min-width:0;
    display:block;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
    -webkit-line-clamp:unset;
  }
}
