
@font-face{font-family:"UTM God's Word";src:url("../fonts/UTMGodsWord.woff2") format("woff2"),url("../fonts/UTMGodsWord.woff") format("woff"),url("../fonts/UTMGodsWord.ttf") format("truetype");font-display:swap}
:root{--bg:#020307;--fg:#f5f8f2;--muted:rgba(245,248,242,.68);--dim:rgba(245,248,242,.38);--line:rgba(180,255,246,.28);--accent:#8ff6ff;--font-display:"UTM God\'s Word","UTM God Word","Segoe UI",Arial,sans-serif;--font-body:"Segoe UI",Roboto,Arial,sans-serif;--font-mono:"Segoe UI",Roboto,Arial,sans-serif;--ease:cubic-bezier(.2,.72,0,1)}
*{box-sizing:border-box}html,body{height:100%;overflow:hidden;background:#000}body{margin:0;color:var(--fg);font-family:var(--font);letter-spacing:.03em}button,a{font:inherit;color:inherit}button{border:0;background:none;cursor:pointer}a{text-decoration:none}.noscript{position:fixed;z-index:9999;top:0;left:0;right:0;background:#111;padding:12px;text-align:center}.space,.lightwash,.grain,.rain{position:fixed;inset:0;pointer-events:none}.space{z-index:0}.lightwash{z-index:1;background:radial-gradient(circle at 8% 88%,rgba(117,245,255,.32),transparent 28%),radial-gradient(circle at 92% 10%,rgba(121,255,225,.2),transparent 22%),radial-gradient(circle at 35% 60%,rgba(156,76,255,.28),transparent 32%);mix-blend-mode:screen}.grain{z-index:2;opacity:.14;background-image:radial-gradient(circle,rgba(255,255,255,.42) 0 1px,transparent 1px);background-size:3px 3px;mix-blend-mode:overlay}.rain{z-index:3;opacity:.18;background:repeating-linear-gradient(180deg,transparent 0 32px,rgba(200,255,245,.35) 33px,transparent 34px);animation:rain 2.8s linear infinite}@keyframes rain{to{transform:translateY(34px)}}.loader{position:fixed;z-index:2000;inset:0;background:#000;display:grid;place-items:center;transition:.7s var(--ease)}.loader.is-hide{opacity:0;visibility:hidden}.loader__cloud{color:#8ff6ff;text-align:center;line-height:1.26;font-size:clamp(16px,4vw,24px);text-shadow:0 0 18px rgba(143,246,255,.8);transform:translateY(6vh)}.loader__cloud span{display:block}.loader b{position:absolute;top:57%;left:50%;transform:translateX(-50%);font-size:clamp(18px,5vw,28px);color:#8ff6ff;text-shadow:0 0 18px rgba(143,246,255,.8)}
.topnav{position:fixed;z-index:1000;top:clamp(24px,6vw,52px);right:clamp(18px,7vw,86px);height:72px;min-width:380px;padding:0 42px;border:1px solid var(--line);border-radius:999px;background:rgba(0,0,0,.62);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;gap:28px;box-shadow:0 0 46px rgba(116,255,241,.18),inset 0 0 22px rgba(255,255,255,.04)}.topnav button{font-size:clamp(18px,3.4vw,28px);letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.86);transition:.25s var(--ease)}.topnav button:hover,.topnav button.is-active{color:#fff;text-shadow:0 0 16px rgba(139,248,255,.85)}.topnav i{display:block;width:64px;height:1px;background:rgba(255,255,255,.72)}.homebtn{position:fixed;z-index:1002;left:18px;top:34px;width:54px;height:54px;border-radius:14px;color:#fff;font-size:36px;display:grid;place-items:center;text-shadow:0 0 14px rgba(255,255,255,.7)}
.viewport{position:relative;z-index:5;width:100vw;height:100svh;perspective:1600px;overflow:hidden}.panel{position:absolute;inset:0;opacity:0;visibility:hidden;transform:translate3d(0,14%,0) scale(.98);transition:opacity .72s var(--ease),visibility .72s var(--ease),transform .72s var(--ease);overflow:hidden}.panel.is-current{opacity:1;visibility:visible;transform:translate3d(0,0,0) scale(1)}.panel.is-prev{transform:translate3d(0,-12%,0) scale(.985)}.intro,.contact{display:grid;place-items:center;padding:110px 28px 40px}.intro__text{position:absolute;z-index:20;left:clamp(26px,7vw,92px);bottom:clamp(58px,9vw,120px);max-width:930px}.intro__text p,.contact__box p{font-size:clamp(16px,3.5vw,28px);margin:0 0 22px}.intro__text h1{margin:0 0 24px;font-weight:400;font-size:clamp(54px,14vw,166px);line-height:.84;letter-spacing:-.04em;text-shadow:0 0 24px rgba(255,255,255,.26)}.intro__text small{font-size:clamp(16px,3vw,24px);color:var(--muted)}.intro__orb{position:absolute;z-index:12;left:50%;top:43%;transform:translate(-50%,-50%);width:min(58vw,540px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;filter:drop-shadow(0 0 44px rgba(143,246,255,.4))}.intro__orb span{position:absolute;inset:0;border:4px solid rgba(210,255,250,.46);border-radius:50%;box-shadow:inset 0 0 44px rgba(255,255,255,.12),0 0 64px rgba(143,246,255,.28);animation:spin 18s linear infinite}.intro__orb b{position:relative;display:grid;place-items:center;width:32%;aspect-ratio:1;border-radius:32%;background:linear-gradient(135deg,#fff,#7ff6ff 42%,#8a65ff 70%,#fff);color:#061010;font-size:clamp(36px,8vw,78px);box-shadow:0 0 40px rgba(255,255,255,.5)}@keyframes spin{to{transform:rotate(360deg)}}.spine{position:absolute;z-index:8;left:50%;top:-12%;width:min(34vw,330px);height:130%;transform:translateX(-50%);background:radial-gradient(ellipse at 50% 0,rgba(255,255,255,.5),transparent 24%),repeating-linear-gradient(180deg,rgba(210,255,248,.62) 0 22px,rgba(154,100,255,.56) 23px 48px,rgba(255,255,255,0) 49px 60px);clip-path:polygon(40% 0,60% 0,91% 100%,9% 100%);filter:drop-shadow(0 0 44px rgba(132,244,255,.34));opacity:.88;mix-blend-mode:screen;animation:spinePulse 4.5s var(--ease) infinite alternate}.spine--intro{height:120%;top:5%;opacity:.7}.spine--contact{opacity:.55}@keyframes spinePulse{to{filter:drop-shadow(0 0 70px rgba(177,104,255,.55));opacity:.96}}
.book{display:block}.menuText{position:absolute;z-index:32;left:clamp(26px,7vw,92px);bottom:clamp(54px,10vw,120px);width:min(88vw,500px);text-shadow:0 0 12px rgba(255,255,255,.32)}.menuText p{margin:0 0 22px;font-size:clamp(18px,4vw,30px)}.menuText span{display:block;margin:0 0 17px;color:#c3bdff;font-size:clamp(22px,5.8vw,44px);line-height:1.05}.menuText span.is-on{color:#fff;text-shadow:0 0 18px #fff;transform:translateX(14px)}.menuText b{display:inline-flex;margin-top:16px;min-height:72px;align-items:center;justify-content:center;width:min(76vw,460px);border:1px solid rgba(255,255,255,.34);border-radius:999px;background:rgba(255,255,255,.04);color:rgba(255,255,255,.58);font-size:clamp(16px,3.8vw,26px);font-weight:400}.bookstage{position:absolute;z-index:18;left:50%;top:48%;width:min(92vw,960px);height:min(58vh,540px);transform:translate(-50%,-50%);transform-style:preserve-3d}.pageCard{position:absolute;inset:0;border-radius:38px;border:1px solid color-mix(in srgb,var(--p-accent) 55%,rgba(255,255,255,.15));background:linear-gradient(135deg,color-mix(in srgb,var(--p-accent) 36%,rgba(12,12,18,.85)),rgba(0,0,0,.62));backdrop-filter:blur(16px);box-shadow:0 34px 110px rgba(0,0,0,.52),inset 0 0 70px rgba(255,255,255,.08);padding:clamp(22px,5vw,52px);display:flex;flex-direction:column;justify-content:center;overflow:hidden;transform-origin:left center;transform:translate3d(var(--x),var(--y),var(--z)) rotateY(var(--ry)) rotateZ(var(--rz));opacity:0;transition:transform .92s var(--ease),opacity .72s var(--ease),filter .72s var(--ease)}.pageCard:before{content:"";position:absolute;inset:-18%;background:radial-gradient(circle at 55% 28%,rgba(255,255,255,.55),transparent 18%),radial-gradient(circle at 30% 55%,color-mix(in srgb,var(--p-accent) 92%,transparent),transparent 32%);mix-blend-mode:screen;opacity:.65}.pageCard:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.16),transparent 8%,transparent 92%,rgba(0,0,0,.26)),repeating-linear-gradient(0deg,transparent 0 7px,rgba(255,255,255,.07) 8px);opacity:.7}.pageCard>*{position:relative;z-index:2}.pageCard__client{font-size:clamp(15px,2.6vw,24px);margin-bottom:16px;text-transform:uppercase}.pageCard h2{margin:0;font-weight:400;font-size:clamp(44px,10vw,122px);line-height:.84;letter-spacing:-.04em;text-transform:uppercase}.pageCard h3{margin:16px 0 0;font-weight:400;font-size:clamp(22px,5vw,48px);line-height:1;text-transform:uppercase;color:rgba(255,255,255,.9)}.pageCard p{max-width:640px;margin:22px 0 0;color:rgba(255,255,255,.78);font-size:clamp(15px,3vw,22px);line-height:1.42}.pageCard small{position:absolute;z-index:4;right:30px;top:26px;font-size:clamp(14px,3vw,22px)}.pageCard.is-active{opacity:1;--x:0;--y:0;--z:80px;--ry:0deg;--rz:-2deg}.pageCard.is-prev{opacity:.42;filter:blur(.7px);--x:-48%;--y:-8%;--z:-80px;--ry:-68deg;--rz:-8deg}.pageCard.is-next{opacity:.62;filter:blur(.3px);--x:35%;--y:8%;--z:-120px;--ry:42deg;--rz:7deg}.pageCard.is-far{opacity:.16;filter:blur(2px);--x:72%;--y:12%;--z:-220px;--ry:62deg;--rz:10deg}.counter{position:absolute;z-index:40;right:clamp(24px,7vw,86px);bottom:clamp(28px,7vw,70px);display:flex;align-items:center;gap:14px;color:#fff;font-size:clamp(18px,4vw,30px)}.counter i{display:block;width:70px;height:1px;background:rgba(255,255,255,.8)}.contact__box{position:relative;z-index:20;text-align:center}.contact__box h2{margin:24px 0;font-weight:400;font-size:clamp(80px,19vw,230px);line-height:.82;letter-spacing:.04em}.contact__box a{display:block;margin:18px auto;font-size:clamp(20px,5vw,42px);text-decoration:underline;text-underline-offset:8px}.contact__box small{display:block;margin-top:36px;color:var(--muted)}.swipehint{position:fixed;z-index:50;left:50%;bottom:16px;transform:translateX(-50%);color:rgba(255,255,255,.52);font-size:12px;letter-spacing:.16em}
@media(max-width:820px){.topnav{right:7vw;top:34px;width:62vw;min-width:0;height:68px;padding:0 26px;gap:18px}.topnav i{width:50px}.topnav button{font-size:clamp(18px,5vw,28px)}.homebtn{top:34px}.intro__orb{width:76vw;top:36%}.intro__text{left:28px;right:20px;bottom:70px}.spine{width:48vw;left:58%}.bookstage{top:33%;left:60%;width:92vw;height:38vh}.pageCard{border-radius:28px}.pageCard.is-active{--x:-8%;--y:0;--z:80px}.pageCard.is-next{--x:42%;--y:12%;--z:-120px}.pageCard h2{font-size:clamp(42px,12vw,82px)}.menuText{left:28px;bottom:86px}.counter{right:24px;top:120px;bottom:auto}.counter i{width:42px}}
@media(max-width:480px){.topnav{height:62px}.topnav i{width:42px}.bookstage{top:31%;left:63%;height:36vh}.pageCard{padding:22px}.menuText span{margin-bottom:14px}}


/* V6 clean patch: remove central HT orb and vertical striped spine */
.intro__orb,
.spine,
.spine--intro,
.spine--contact{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
}

.intro{
  background:
    radial-gradient(circle at 50% 34%, rgba(143,246,255,.12), transparent 24%),
    radial-gradient(circle at 18% 88%, rgba(156,76,255,.22), transparent 32%),
    radial-gradient(circle at 84% 18%, rgba(121,255,225,.14), transparent 24%);
}
.intro__text{
  z-index:24;
}


/* V9 font fix: Vietnamese-safe fallback when UTM God's Word is not uploaded */
:root{
  --font-display:"UTM God's Word","UTM God Word","Segoe UI",Arial,sans-serif;
  --font-body:"Segoe UI",Roboto,Arial,sans-serif;
  --font-mono:"Segoe UI",Roboto,Arial,sans-serif;
}
body{
  font-family:var(--font-body)!important;
  letter-spacing:0!important;
}
.topnav button,
.homebtn,
.intro__text h1,
.pageCard h2,
.pageCard h3,
.contact__box h2{
  font-family:var(--font-display)!important;
  letter-spacing:.02em!important;
}
.intro__text p,
.intro__text small,
.menuText,
.menuText p,
.menuText span,
.menuText b,
.pageCard__client,
.pageCard p,
.pageCard small,
.counter,
.contact__box p,
.contact__box a,
.contact__box small,
.swipehint{
  font-family:var(--font-body)!important;
  letter-spacing:.01em!important;
  word-spacing:0!important;
}
.pageCard p{
  font-size:clamp(15px,2.7vw,21px)!important;
  line-height:1.55!important;
  max-width:680px!important;
}
.menuText p{
  letter-spacing:.03em!important;
}
.menuText span{
  letter-spacing:.025em!important;
}
.topnav{
  font-family:var(--font-display)!important;
}


/* V10 loading update */
.loader__cloud{
  font-size:clamp(15px,3.8vw,24px)!important;
}
.loader__cloud span:nth-child(2){
  letter-spacing:.08em!important;
  white-space:nowrap;
}
@media(max-width:480px){
  .loader__cloud{font-size:15px!important;}
}


/* V11 loading count-up effect */
.loader{
  overflow:hidden;
}
.loader:before{
  content:"";
  position:absolute;
  inset:-20%;
  background:
    radial-gradient(circle at 50% 42%, rgba(143,246,255,.18), transparent 24%),
    radial-gradient(circle at 18% 82%, rgba(156,76,255,.20), transparent 28%),
    radial-gradient(circle at 84% 12%, rgba(255,211,110,.12), transparent 22%);
  animation:loadingAura 2.6s var(--ease) infinite alternate;
}
.loader:after{
  content:"";
  position:absolute;
  inset:0;
  background:
    repeating-linear-gradient(90deg, transparent 0 44px, rgba(255,255,255,.035) 45px),
    repeating-linear-gradient(0deg, transparent 0 7px, rgba(255,255,255,.045) 8px);
  opacity:.55;
  mix-blend-mode:screen;
}
@keyframes loadingAura{
  from{transform:scale(1) rotate(0deg);filter:blur(0);}
  to{transform:scale(1.08) rotate(4deg);filter:blur(2px);}
}
.loader__cloud{
  position:relative;
  z-index:3;
  transform:translateY(-26px)!important;
}
.loader__progress{
  position:absolute;
  z-index:3;
  left:50%;
  top:58%;
  transform:translateX(-50%);
  width:min(360px,72vw);
  height:2px;
  background:rgba(255,255,255,.14);
  overflow:hidden;
  border-radius:999px;
  box-shadow:0 0 24px rgba(143,246,255,.22);
}
.loader__progress i{
  display:block;
  width:1%;
  height:100%;
  background:linear-gradient(90deg,#8ff6ff,#ffffff,#b99cff);
  box-shadow:0 0 18px rgba(143,246,255,.8);
  transition:width .16s linear;
}
.loader b{
  z-index:4!important;
  top:50%!important;
  font-size:clamp(64px,18vw,168px)!important;
  line-height:.8;
  letter-spacing:-.06em;
  color:rgba(255,255,255,.96)!important;
  text-shadow:
    0 0 18px rgba(143,246,255,.78),
    0 0 54px rgba(185,156,255,.44)!important;
}
.loader b:after{
  content:"%";
  font-size:.28em;
  margin-left:.08em;
  vertical-align:super;
  color:#8ff6ff;
}
.loader em{
  position:absolute;
  z-index:4;
  left:50%;
  top:62%;
  transform:translateX(-50%);
  font-style:normal;
  color:rgba(255,255,255,.62);
  letter-spacing:.22em;
  font-size:clamp(10px,2.4vw,13px);
  white-space:nowrap;
}
@media(max-width:480px){
  .loader b{font-size:clamp(70px,22vw,122px)!important;}
  .loader__progress{top:59%;width:70vw;}
  .loader em{top:64%;}
}


/* V12 menu scale: category items 60% smaller */
.menuText span{
  font-size:clamp(13px,3.48vw,26px)!important;
  line-height:1.12!important;
  margin-bottom:10px!important;
}
.menuText span.is-on{
  transform:translateX(8px)!important;
}
@media(max-width:820px){
  .menuText span{
    font-size:clamp(14px,4.2vw,26px)!important;
    margin-bottom:10px!important;
  }
}
@media(max-width:480px){
  .menuText span{
    font-size:clamp(14px,4.4vw,24px)!important;
    margin-bottom:9px!important;
  }
}
