:root{--ink:#14213d;--night:#07142c;--paper:#fff6dc;--gold:#f7c85b;--coral:#f27c69;--cyan:#55d8e8;--violet:#8168d6;--green:#5cbd72}*{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:only light}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI",system-ui,sans-serif;line-height:1.6}.nav{position:fixed;z-index:20;top:0;left:0;right:0;height:72px;display:flex;align-items:center;justify-content:space-between;padding:9px clamp(16px,4vw,64px);background:#07142de8;color:white;backdrop-filter:blur(16px);border-bottom:1px solid #ffffff1c}.brand{display:flex;align-items:center;gap:11px;color:white;text-decoration:none;font-weight:900;letter-spacing:.16em}.brand img{width:50px;height:50px;border-radius:15px}.nav-actions,.nav-actions label{display:flex;align-items:center;gap:12px}.nav-actions label span{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.nav select{border:1px solid #ffffff44;border-radius:10px;background:#ffffff12;color:white;padding:8px}.nav option{color:var(--ink)}.button,.ghost{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border:0;border-radius:14px;text-decoration:none;font-weight:850;cursor:pointer}.button{background:linear-gradient(135deg,var(--gold),var(--coral));color:var(--ink);box-shadow:0 12px 28px #f27c6938}.button.small{min-height:40px;padding:8px 17px}.ghost{color:inherit;background:transparent;border:1px solid currentColor}.hero{position:relative;min-height:min(900px,100vh);display:flex;align-items:center;overflow:hidden;background:var(--night);color:white}.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#07142df5 0%,#07142dcc 34%,#07142d22 68%,#07142d35),linear-gradient(0deg,#07142db8,transparent 50%)}.hero-copy{position:relative;z-index:2;width:min(690px,90vw);margin-left:clamp(20px,7vw,110px);padding-top:80px}.eyebrow{font-weight:900;font-size:.8rem;letter-spacing:.18em;color:#b57e1c;margin:0 0 10px}.hero .eyebrow{color:var(--gold)}h1,h2,h3{line-height:1.05;margin:0}h1{font-size:clamp(3rem,7vw,6.5rem);max-width:11ch;text-wrap:balance}h2{font-size:clamp(2.25rem,4.5vw,4.4rem);text-wrap:balance}.lead{font-size:clamp(1.05rem,2vw,1.35rem);max-width:58ch;color:#edf4ff}.hero-buttons{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.intro,.pitch{max-width:950px;margin:0 auto;padding:110px 24px;text-align:center}.intro>p:last-child,.pitch>p{font-size:1.25rem;color:#495875}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:0 clamp(20px,6vw,100px) 110px}.cards article{padding:36px;border-radius:28px;background:white;box-shadow:0 22px 60px #13213e14;border:1px solid #9f79321d}.cards h3{font-size:2rem;margin:18px 0 10px}.rune{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;font-size:2rem;color:white}.rune.body{background:var(--coral)}.rune.soul{background:var(--gold)}.rune.mind{background:var(--violet)}.loop{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:110px clamp(24px,8vw,130px);background:var(--night);color:white}.loop .eyebrow{color:var(--cyan)}.loop ol{list-style:none;padding:0;margin:0;display:grid;gap:12px}.loop li{display:flex;gap:18px;padding:18px;border-radius:18px;background:#ffffff0c;border:1px solid #ffffff16}.loop b{font-size:1.7rem;color:var(--gold)}.loop span{display:grid}.loop strong{font-size:1.15rem}.loop small{color:#bfcce2;font-size:.98rem}.forever{display:grid;grid-template-columns:.6fr 1.4fr;align-items:center;gap:50px;padding:110px clamp(24px,8vw,130px);background:linear-gradient(135deg,#ece6ff,#fff3cb)}.infinity{font-size:clamp(10rem,25vw,25rem);line-height:.7;text-align:center;color:#e3a92c;text-shadow:0 10px 40px #ffca4c55}footer{display:flex;align-items:center;justify-content:center;gap:18px;padding:38px;background:var(--night);color:#cbd5e8;flex-wrap:wrap}footer img{width:48px;height:48px;border-radius:14px}footer button{border:0;background:transparent;color:var(--cyan);text-decoration:underline;cursor:pointer}.privacy-dialog{width:min(560px,calc(100vw - 32px));padding:0;border:2px solid var(--gold);border-radius:22px;background:#fff9e9;color:var(--ink);box-shadow:0 24px 80px #0007}.privacy-dialog::backdrop{background:#07142da8;backdrop-filter:blur(3px)}.privacy-dialog form{display:grid;gap:22px;padding:28px}.privacy-dialog h2{font-size:clamp(1.6rem,4vw,2.35rem)}.privacy-dialog label{display:flex;align-items:flex-start;gap:12px;font-weight:700}.privacy-dialog input{width:22px;height:22px;accent-color:var(--violet);flex:0 0 auto}.privacy-dialog .button{justify-self:end}@media(max-width:780px){.nav-actions label span{display:none}.brand span{display:none}.hero-copy{margin:0;padding:120px 20px 50px}.hero-shade{background:linear-gradient(0deg,#07142df7 5%,#07142dbd 65%,#07142d33)}.hero{align-items:flex-end;min-height:800px}.hero-art{object-position:62% center}.cards{grid-template-columns:1fr}.loop,.forever{grid-template-columns:1fr}.infinity{font-size:13rem}.forever{gap:20px}.nav{height:66px}.nav-actions{gap:7px}}
:focus-visible { outline: 3px solid #32a8bb; outline-offset: 4px; }
.nav select { max-width: min(45vw, 230px); min-height: 44px; }
[dir="rtl"] .hero-copy { margin-left: 0; margin-right: clamp(20px,7vw,110px); }
[dir="rtl"] .hero-shade { transform: scaleX(-1); }
[dir="rtl"] .hero-motion-toggle { right: auto; left: 20px; }
[dir="rtl"] .eyebrow, [lang="th"] .eyebrow { letter-spacing: normal; }
[lang="ja"] h1, [lang="ko"] h1, [lang^="zh"] h1 { max-width: 14ch; line-height: 1.2; }
@media(max-width:780px) { [dir="rtl"] .hero-copy { margin: 0; } }
html { scroll-padding-top: 90px; }
.hero { min-height: min(900px, 100svh); }
.hero-idle { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; pointer-events: none; opacity: 1; transition: none; }
.hero-idle[hidden] { display: block; visibility: hidden; }
.hero-motion-toggle { position: absolute; z-index: 2; top: 88px; right: 20px; min-height: 44px; max-width: calc(100% - 40px); padding: 9px 14px; border: 1px solid #fff8; border-radius: 12px; background: #07142de8; color: white; font: inherit; font-size: .875rem; cursor: pointer; }
.hero-motion-toggle::before { content: '\25CF'; display: inline-block; color: #8bdfa0; margin-right: 8px; }
.hero-motion-toggle[aria-pressed="false"]::before { content: '\25CB'; color: white; }
.hero-motion-toggle[hidden] { display: none; }
.hero.is-idle-playing { background-image: none; }
.hero.is-idle-playing .hero-art { visibility: hidden; }
/* The UI scrim protects copy above full video frames; source artwork stays hidden. */
.hero-shade { z-index: 1; pointer-events: none; }
@media(min-width:781px) {
  .hero-shade { background: linear-gradient(90deg,#07142df5 0%,#07142dcc 40%,#07142d22 74%,#07142d35),linear-gradient(0deg,#07142db8,transparent 50%); }
}
.hero { background-image: url('data:image/jpeg;base64,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'); background-size: cover; background-position: center; }
.hero-copy { padding-top: 110px; padding-bottom: 64px; }
footer > a { color: #aeeef4; text-underline-offset: 4px; }
footer > a, footer > button { display: inline-flex; align-items: center; min-height: 44px; }
.privacy-help { margin: 0; color: #334765; font-size: 1rem; }
.privacy-dialog form {
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
  max-width: 100%;
  max-height: calc(100svh - 48px);
  overflow-y: auto;
}
.privacy-dialog form > *, .privacy-dialog label > span { min-width: 0; max-width: 100%; }
.privacy-dialog h2 { font-size: clamp(1.25rem, 6vw, 2.35rem); line-height: 1.2; overflow-wrap: anywhere; }
.privacy-dialog label > span, .privacy-help { overflow-wrap: anywhere; }
.privacy-dialog .button { min-height: 44px; max-width: 100%; white-space: normal; }
#privacy-settings-button { max-width: 100%; min-width: 0; white-space: normal; overflow-wrap: anywhere; text-align: center; }
.legal-main { width: min(820px, calc(100% - 40px)); margin: auto; padding: 116px 0 64px; }
.legal-main h1 { max-width: none; font-size: clamp(2.15rem, 5vw, 3.7rem); overflow-wrap: anywhere; }
.legal-main h2 { font-size: clamp(1.3rem, 3vw, 1.6rem); margin-top: 32px; line-height: 1.3; }
.legal-main p { max-width: 72ch; }
.legal-main a { color: #423578; text-underline-offset: 4px; }
.legal-meta { color: #5c6572; font-size: .95rem; }
.legal-intro { font-size: 1.16rem; }
.legal-contact { margin-top: 40px; border-top: 1px solid #d6cbad; padding-top: 24px; }
@media (max-width: 780px) {
  .hero { min-height: 100svh; }
  .hero { background-position: 62% center; }
  .hero-idle { object-position: 62% center; }
  .hero-copy { width: 100%; padding: 155px 20px 46px; }
  .hero h1 { font-size: clamp(2.35rem, 10vw, 3.6rem); max-width: 17ch; }
  .hero .lead { font-size: 1.06rem; line-height: 1.5; max-width: 40ch; }
  .hero .eyebrow { font-size: .75rem; }
  .hero-buttons { gap: 10px; margin-top: 22px; }
  .hero-buttons a { padding: 12px 18px; }
  .intro, .pitch { padding: 64px 22px; }
  footer { padding: 28px 22px; gap: 10px 22px; }
  footer p { flex-basis: calc(100% - 75px); }
  footer > a, footer > button { font-size: .94rem; }
  .legal-main { padding-top: 96px; }
  .legal-main h1 { font-size: clamp(1.65rem, 7vw, 2.1rem); }
  .privacy-dialog form { padding: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: 0s !important; animation-duration: 0s !important; }
}
