:root {
  --night: #070b0e;
  --ink: #11181d;
  --paper: #f0f2ee;
  --white: #f8faf7;
  --cyan: #56dbe8;
  --teal: #169da8;
  --acid: #a8d94d;
  --amber: #f0b74b;
  --coral: #ed6e53;
  --line: rgba(255,255,255,.15);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--night); }
body { margin: 0; color: var(--white); background: var(--night); font-family: "Segoe UI", Arial, sans-serif; letter-spacing: 0; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
main { position: relative; overflow: clip; }
.particles { position: fixed; inset: 0; z-index: 0; width: 100%; height: 100%; pointer-events: none; opacity: .88; }
.film-grain { position: fixed; inset: -40%; z-index: 20; pointer-events: none; opacity: .045; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E"); animation: grain .23s steps(2) infinite; }
.site-header { position: absolute; inset: 0 0 auto; z-index: 30; height: 78px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 clamp(22px,5vw,76px); border-bottom: 1px solid rgba(255,255,255,.12); background: linear-gradient(180deg,rgba(3,7,9,.76),transparent); }
.wordmark { display: inline-flex; align-items: center; gap: 13px; width: max-content; text-transform: uppercase; font-size: 12px; font-weight: 800; letter-spacing: .14em; }
.wordmark-signal { display: flex; gap: 3px; align-items: end; height: 18px; }
.wordmark-signal i { display: block; width: 3px; background: var(--cyan); }
.wordmark-signal i:nth-child(1) { height: 8px; }.wordmark-signal i:nth-child(2) { height: 18px; background: var(--amber); }.wordmark-signal i:nth-child(3) { height: 12px; background: var(--acid); }
nav { display: flex; gap: clamp(18px,3vw,42px); font-size: 11px; text-transform: uppercase; font-weight: 700; letter-spacing: .13em; }
nav a { position: relative; padding: 12px 0; }
nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 6px; height: 1px; background: var(--cyan); transition: right .25s ease; }
nav a:hover::after, nav a:focus-visible::after { right: 0; }
.system-status { justify-self: end; display: flex; align-items: center; gap: 9px; color: #bac5c8; text-transform: uppercase; font-size: 9px; font-weight: 700; letter-spacing: .15em; }
.system-status i { width: 7px; height: 7px; border-radius: 50%; background: var(--acid); box-shadow: 0 0 15px var(--acid); animation: status 2s ease-in-out infinite; }
.hero { position: relative; min-height: 100svh; display: flex; align-items: center; padding: 126px clamp(24px,7vw,108px) 90px; isolation: isolate; }
.hero-photo { position: absolute; inset: 0; z-index: -3; width: 100%; height: 100%; object-fit: cover; object-position: 72% 28%; filter: saturate(.72) contrast(1.08); }
.hero-vignette { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,rgba(4,8,11,.97) 0%,rgba(4,8,11,.85) 34%,rgba(4,8,11,.28) 65%,rgba(4,8,11,.16)),linear-gradient(0deg,rgba(4,8,11,.88),transparent 34%,rgba(4,8,11,.2)); }
.hero-grid { position: absolute; inset: 0; z-index: -1; opacity: .19; background-image: linear-gradient(rgba(86,219,232,.28) 1px,transparent 1px),linear-gradient(90deg,rgba(86,219,232,.28) 1px,transparent 1px); background-size: 58px 58px; mask-image: linear-gradient(90deg,#000,transparent 72%); }
.hero-content { width: min(780px,72vw); position: relative; z-index: 2; }
.scene-label,.chapter { text-transform: uppercase; font-size: 10px; font-weight: 800; letter-spacing: .24em; }
.scene-label { color: var(--cyan); margin: 0 0 24px; }
h1,h2,h3,p { margin-top: 0; }
h1,h2,h3 { letter-spacing: 0; }
h1 { margin: 0 0 28px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(52px,7.4vw,112px); font-weight: 400; line-height: .91; }
h1 strong { color: transparent; -webkit-text-stroke: 1px rgba(248,250,247,.72); font-weight: 400; }
.hero-lead { max-width: 660px; color: #d2dbdc; font-size: clamp(16px,1.45vw,21px); line-height: 1.7; }
.credentials { display: flex; flex-wrap: wrap; gap: 8px 24px; margin: 30px 0 34px; color: #ecf2f0; font-size: 11px; text-transform: uppercase; font-weight: 750; letter-spacing: .08em; }
.credentials span { display: flex; align-items: center; gap: 10px; }
.credentials span::before { content: ""; width: 24px; height: 1px; background: var(--coral); }
.hero-actions,.project-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.button { min-height: 50px; border: 1px solid rgba(255,255,255,.5); border-radius: 3px; padding: 0 18px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .09em; transition: transform .2s ease,background .2s ease,border-color .2s ease; }
.button:hover,.button:focus-visible { transform: translateY(-3px); }
.button-light { color: #071014; background: var(--white); border-color: var(--white); }
.button-light:hover,.button-light:focus-visible { background: var(--cyan); border-color: var(--cyan); }
.button-ghost,.button-glass { background: rgba(9,17,21,.35); backdrop-filter: blur(12px); }
.button-glass:hover,.button-glass:focus-visible,.button-ghost:hover,.button-ghost:focus-visible { border-color: var(--cyan); background: rgba(9,17,21,.7); }
.button-youtube { color: white; border-color: #e24c42; background: #c7352c; }
.linkedin-mark { display: inline-flex; align-items: center; justify-content: center; width: 23px; height: 23px; border-radius: 2px; color: white; background: #0a66c2; text-transform: none; font: 800 14px Arial; letter-spacing: 0; }
.hero-index { position: absolute; right: clamp(20px,4vw,64px); bottom: 86px; z-index: 2; display: grid; grid-template-columns: auto auto; align-items: end; gap: 6px 13px; color: #c8d1d1; font-size: 8px; letter-spacing: .2em; writing-mode: vertical-rl; }
.hero-index b { color: white; font: 400 31px Georgia; }.hero-index i { width: 1px; height: 58px; background: rgba(255,255,255,.35); }
.scroll-cue { position: absolute; z-index: 2; left: 50%; bottom: 28px; width: 30px; height: 48px; border: 1px solid rgba(255,255,255,.36); border-radius: 18px; transform: translateX(-50%); }
.scroll-cue span { position: absolute; top: 9px; left: 50%; width: 3px; height: 8px; border-radius: 3px; background: var(--cyan); transform: translateX(-50%); animation: scroll 1.8s ease-in-out infinite; }
.manifesto { position: relative; z-index: 1; min-height: 780px; display: grid; grid-template-columns: .45fr 1.45fr; gap: clamp(30px,7vw,110px); padding: clamp(90px,12vw,180px) clamp(24px,8vw,124px); background: var(--paper); color: var(--ink); }
.manifesto::before { content: ""; position: absolute; inset: 0; opacity: .35; background-image: linear-gradient(rgba(17,24,29,.08) 1px,transparent 1px); background-size: 100% 80px; pointer-events: none; }
.chapter { color: #718087; }
.manifesto-aside p { width: 150px; margin-top: 34px; color: #667176; font: italic 18px/1.55 Georgia; }
.manifesto-copy { max-width: 850px; }
.manifesto-copy .scene-label { color: var(--teal); }
.manifesto-copy h2,.projects-heading h2,.closing h2 { margin: 0 0 44px; font-family: Georgia,"Times New Roman",serif; font-size: clamp(47px,6.5vw,94px); font-weight: 400; line-height: .98; }
.manifesto-copy h2 em { color: var(--teal); font-weight: 400; }
.manifesto-copy>p:last-child { max-width: 680px; color: #47545a; font-size: 17px; line-height: 1.8; }
.manifesto-metrics { grid-column: 2; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(17,24,29,.2); margin-top: 40px; }
.manifesto-metrics div { padding: 24px 14px 0 0; display: flex; gap: 14px; align-items: baseline; }
.manifesto-metrics strong { color: var(--coral); font-size: 11px; }.manifesto-metrics span { font-size: 12px; font-weight: 750; text-transform: uppercase; letter-spacing: .08em; }
.projects { position: relative; z-index: 1; padding: clamp(86px,10vw,150px) clamp(20px,6vw,90px); background: #0a0f13; }
.projects-heading { width: min(1120px,100%); margin: 0 auto clamp(60px,9vw,130px); display: grid; grid-template-columns: .45fr 1.55fr; gap: 60px; }
.projects-heading h2 { margin-bottom: 0; }
.project-feature,.project-academy,.tugomon-feature,.project-duo,.project-phsp,.project-biblia { width: min(1320px,100%); margin-inline: auto; }
.project-feature { min-height: 630px; display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.project-copy { align-self: center; padding: clamp(48px,7vw,96px); }
.project-code { display: block; margin-bottom: 52px; color: #899699; font-size: 9px; font-weight: 800; letter-spacing: .2em; }
.project-logo { object-fit: contain; }
.logo-sono { width: min(350px,90%); margin-bottom: 42px; filter: drop-shadow(0 12px 30px rgba(0,120,220,.26)); }
.project-copy h3,.tugomon-copy h3,.project-tile h3 { margin-bottom: 20px; font: 400 clamp(31px,3vw,48px)/1.08 Georgia; }
.project-copy p,.tugomon-copy p,.project-tile p { color: #aeb9bb; line-height: 1.75; }
.project-link { display: inline-flex; align-items: center; gap: 12px; margin-top: 20px; padding-bottom: 7px; border-bottom: 1px solid rgba(255,255,255,.4); text-transform: uppercase; font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.project-link:hover,.project-link:focus-visible { color: var(--cyan); border-color: var(--cyan); }
.project-sono { min-height: 780px; grid-template-columns: minmax(330px,.66fr) minmax(0,1.34fr); background: #091116; }
.project-sono .project-copy { position: relative; z-index: 2; background: linear-gradient(145deg,#0d171d,#091116 68%); }
.project-sono .project-copy::after { content:""; position:absolute; right:0; top:10%; bottom:10%; width:1px; background:linear-gradient(transparent,rgba(86,219,232,.55),rgba(240,183,75,.42),transparent); }
.sono-visual { position: relative; min-width: 0; overflow: hidden; padding: clamp(14px,2vw,28px); background: #111a20; }
.sono-visual::before { content:""; position:absolute; inset:0; opacity:.28; background-image:linear-gradient(rgba(86,219,232,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(86,219,232,.14) 1px,transparent 1px); background-size:46px 46px; }
.sono-demo { position:relative; z-index:2; min-height:700px; height:100%; display:grid; grid-template-rows:56px minmax(0,1fr) 36px; overflow:hidden; border:1px solid rgba(178,214,219,.25); border-radius:5px; color:#eaf4f3; background:#071014; box-shadow:0 34px 80px rgba(0,0,0,.42); }
.sono-demo-top { position:relative; z-index:8; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; padding:0 17px; border-bottom:1px solid rgba(255,255,255,.1); background:rgba(6,14,18,.96); }
.sono-live { display:flex; align-items:center; gap:9px; color:#bdcbcd; font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.14em; white-space:nowrap; }
.sono-live i { width:7px; height:7px; border-radius:50%; background:#ef615b; box-shadow:0 0 0 5px rgba(239,97,91,.13),0 0 18px rgba(239,97,91,.5); animation:sono-rec 1.35s ease-in-out infinite; }
.sono-timeline { min-width:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); height:100%; }
.sono-step { position:relative; display:flex; align-items:center; justify-content:center; gap:6px; overflow:hidden; color:#69777b; font-size:7px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; white-space:nowrap; }
.sono-step::after { content:""; position:absolute; left:10%; right:90%; bottom:0; height:2px; background:var(--cyan); box-shadow:0 0 12px rgba(86,219,232,.8); }
.sono-step b { color:inherit; font-size:8px; }
.sono-step-one { animation:sono-step-one 15s linear infinite; }.sono-step-one::after { animation:sono-track-one 15s linear infinite; }
.sono-step-two { animation:sono-step-two 15s linear infinite; }.sono-step-two::after { background:var(--amber); box-shadow:0 0 12px rgba(240,183,75,.8); animation:sono-track-two 15s linear infinite; }
.sono-step-three { animation:sono-step-three 15s linear infinite; }.sono-step-three::after { background:var(--acid); box-shadow:0 0 12px rgba(168,217,77,.7); animation:sono-track-three 15s linear infinite; }
.sono-control { position:relative; width:32px; height:32px; border:1px solid rgba(255,255,255,.24); border-radius:50%; padding:0; display:grid; place-items:center; color:#e7efee; background:#111e24; cursor:pointer; font:700 10px/1 "Segoe UI"; }
.sono-control:hover,.sono-control:focus-visible { color:var(--cyan); border-color:var(--cyan); }
.sono-play-icon { display:none; transform:translateX(1px); font-size:9px; }
.sono-demo.is-paused .sono-pause-icon { display:none; }.sono-demo.is-paused .sono-play-icon { display:block; }
.sono-demo.is-paused * { animation-play-state:paused!important; }
.sono-stage { position:relative; min-height:600px; overflow:hidden; isolation:isolate; background:#0b1418; }
.sono-progress { position:absolute; z-index:10; left:0; top:0; width:100%; height:2px; background:linear-gradient(90deg,var(--cyan),var(--amber) 48%,var(--acid)); transform:scaleX(0); transform-origin:left; animation:sono-progress 15s linear infinite; box-shadow:0 0 14px rgba(86,219,232,.7); }
.sono-phase { position:absolute; inset:0; visibility:hidden; opacity:0; overflow:hidden; }
.sono-phase-platform { visibility:visible; opacity:1; animation:sono-platform-phase 15s linear infinite; }
.sono-phase-process { animation:sono-process-phase 15s linear infinite; }
.sono-phase-report { animation:sono-report-phase 15s linear infinite; }
.sono-product-shot { position:absolute; inset:-9%; width:118%; height:118%; max-width:none; object-fit:cover; object-position:56% 78%; filter:saturate(.72) brightness(.54) contrast(1.06); animation:sono-product-pan 15s ease-in-out infinite; }
.sono-capture-shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(4,13,17,.12),rgba(4,13,17,.34) 42%,rgba(4,13,17,.97)),linear-gradient(90deg,rgba(4,13,17,.5),transparent 65%); }
.sono-dictation-card { position:absolute; left:6%; right:6%; bottom:6%; min-height:310px; padding:25px 27px 22px; border:1px solid rgba(163,224,231,.25); border-radius:5px; background:rgba(5,18,23,.86); backdrop-filter:blur(16px); box-shadow:0 24px 60px rgba(0,0,0,.42); }
.sono-mic-row { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:14px; }
.sono-mic-row>div { display:grid; gap:4px; }
.sono-mic-row b { color:#f5f8f7; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.sono-mic-row small { color:#759096; font-size:9px; letter-spacing:.04em; }
.sono-mic { position:relative; width:46px; height:46px; display:grid; place-items:center; border:1px solid rgba(86,219,232,.46); border-radius:50%; background:rgba(86,219,232,.1); box-shadow:0 0 0 0 rgba(86,219,232,.2); animation:sono-mic-pulse 1.7s ease-out infinite; }
.sono-mic::before { content:""; width:9px; height:16px; border:2px solid var(--cyan); border-radius:7px; }
.sono-mic::after { content:""; position:absolute; width:18px; height:10px; bottom:10px; border-bottom:2px solid var(--cyan); border-left:2px solid var(--cyan); border-right:2px solid var(--cyan); border-radius:0 0 10px 10px; }
.sono-mic i { position:absolute; bottom:6px; width:2px; height:5px; background:var(--cyan); }
.sono-rec { color:#ef7770; font-size:8px; font-weight:800; letter-spacing:.1em; }
.sono-waves { height:56px; margin:22px 0 18px; display:flex; align-items:center; gap:3px; overflow:hidden; mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); }
.sono-waves i { flex:1; min-width:2px; height:22%; border-radius:2px; background:linear-gradient(180deg,var(--cyan),#188cb9 55%,var(--amber)); transform-origin:center; animation:sono-wave .86s ease-in-out infinite; }
.sono-waves i:nth-child(3n) { animation-delay:-.18s; }.sono-waves i:nth-child(3n+1) { animation-delay:-.44s; }.sono-waves i:nth-child(4n) { animation-delay:-.63s; }.sono-waves i:nth-child(5n) { animation-delay:-.31s; }
.sono-transcript { margin:0!important; color:#d8e6e5!important; font:italic 13px/1.65 Georgia!important; letter-spacing:0!important; }
.sono-transcript span { opacity:.3; animation:sono-transcript 15s linear infinite; }
.sono-transcript span:nth-child(2){animation-delay:1s}.sono-transcript span:nth-child(3){animation-delay:2.2s}
.sono-phase-process>img { position:absolute; inset:-7%; width:114%; height:114%; max-width:none; object-fit:cover; filter:blur(4px) brightness(.27) saturate(.45); transform:scale(1.04); }
.sono-process-shade { position:absolute; inset:0; background:linear-gradient(100deg,rgba(6,17,22,.88),rgba(15,31,37,.44)),repeating-linear-gradient(0deg,transparent 0 9px,rgba(86,219,232,.035) 10px); }
.sono-engine { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:30px; }
.sono-engine-ring { position:relative; width:126px; height:126px; display:grid; place-items:center; border:1px solid rgba(86,219,232,.22); border-radius:50%; }
.sono-engine-ring::before,.sono-engine-ring::after { content:""; position:absolute; border-radius:50%; }
.sono-engine-ring::before { inset:11px; border:1px dashed rgba(240,183,75,.58); animation:sono-spin 4s linear infinite; }
.sono-engine-ring::after { inset:26px; border:1px solid rgba(168,217,77,.4); box-shadow:inset 0 0 28px rgba(86,219,232,.12),0 0 34px rgba(86,219,232,.08); }
.sono-engine-ring i { position:absolute; inset:-1px; border:2px solid transparent; border-top-color:var(--cyan); border-right-color:var(--cyan); border-radius:50%; animation:sono-spin 1.8s cubic-bezier(.5,.1,.5,.9) infinite; }
.sono-engine-ring b { position:relative; z-index:2; color:#fff; font:400 31px Georgia; }
.sono-engine>p { margin:22px 0 24px; color:#dce8e7; font:400 25px Georgia; }
.sono-flow { display:flex; align-items:center; justify-content:center; gap:9px; }
.sono-flow span { padding:8px 11px; border:1px solid rgba(255,255,255,.18); border-radius:3px; color:#d6e2e2; font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; background:rgba(5,14,18,.58); }
.sono-flow i { width:28px; height:1px; overflow:hidden; background:linear-gradient(90deg,var(--cyan),var(--amber)); animation:sono-flow-line 1.1s ease-in-out infinite; }
.sono-modular-backdrop { position:absolute; inset:-5%; width:110%; height:110%; max-width:none; object-fit:cover; filter:blur(5px) brightness(.2) saturate(.6); transform:scale(1.03); }
.sono-phase-report::after { content:""; position:absolute; inset:0; background:linear-gradient(110deg,rgba(4,12,16,.86),rgba(4,12,16,.24)); }
.sono-report-window { position:absolute; z-index:2; inset:24px 8% 94px; overflow:hidden; display:grid; grid-template-rows:34px minmax(0,1fr); border:1px solid rgba(191,222,225,.28); border-radius:5px; background:#f6f8f8; box-shadow:0 30px 74px rgba(0,0,0,.48); animation:sono-report-window 15s cubic-bezier(.2,.75,.2,1) infinite; }
.sono-window-bar { display:flex; align-items:center; gap:6px; padding:0 12px; color:#577075; background:#e5ebeb; border-bottom:1px solid #cedadb; }
.sono-window-bar i { width:6px; height:6px; border-radius:50%; background:#ef6f65; }.sono-window-bar i:nth-child(2){background:var(--amber)}.sono-window-bar i:nth-child(3){background:var(--acid)}
.sono-window-bar span { margin-left:7px; overflow:hidden; text-overflow:ellipsis; color:#345158; font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; white-space:nowrap; }
.sono-report-window>img { width:100%; height:100%; object-fit:contain; background:#fff; }
.sono-report-stamp { position:absolute; z-index:3; left:7%; right:7%; bottom:21px; min-height:56px; display:flex; align-items:center; gap:13px; padding:10px 15px; border:1px solid rgba(168,217,77,.45); border-radius:4px; color:#e8f0ef; background:rgba(7,18,21,.92); backdrop-filter:blur(12px); box-shadow:0 14px 36px rgba(0,0,0,.34); animation:sono-report-stamp 15s ease infinite; }
.sono-report-stamp>i { flex:0 0 30px; width:30px; height:30px; display:grid; place-items:center; border-radius:50%; color:#102014; background:var(--acid); font-style:normal; font-weight:900; }
.sono-report-stamp span { display:grid; gap:3px; min-width:0; }.sono-report-stamp b { font-size:10px; text-transform:uppercase; letter-spacing:.09em; }.sono-report-stamp small { overflow:hidden; color:#99aaac; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.sono-demo-footer { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 16px; color:#6f8185; background:#081115; border-top:1px solid rgba(255,255,255,.07); font-size:7px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.sono-demo-footer span:last-child { color:#91bbc0; }
.project-academy { position:relative; overflow:hidden; color:var(--ink); background:#e9ede8; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.academy-story { min-height:690px; display:grid; grid-template-columns:minmax(360px,.72fr) minmax(0,1.28fr); }
.academy-copy { position:relative; z-index:2; align-self:stretch; display:flex; flex-direction:column; justify-content:center; padding:72px clamp(42px,6vw,84px); background:#e9ede8; }
.academy-copy::after { content:""; position:absolute; right:0; top:9%; bottom:9%; width:1px; background:linear-gradient(transparent,rgba(22,157,168,.48),rgba(237,110,83,.34),transparent); }
.academy-copy .project-code { margin-bottom:34px; color:#647277; }
.academy-logo { width:min(285px,88%); margin-bottom:34px; filter:drop-shadow(0 15px 28px rgba(21,112,190,.16)); }
.academy-copy .scene-label { margin-bottom:18px; color:#157f8c; }
.academy-copy h3 { margin:0 0 28px; font:400 50px/1.04 Georgia,"Times New Roman",serif; }
.academy-copy>p:not(.scene-label) { max-width:560px; margin-bottom:29px; color:#4b5b60; font-size:15px; line-height:1.72; }
.academy-impact { display:grid; grid-template-columns:auto 1fr; align-items:start; margin:0 0 26px; color:#102028; }
.academy-impact strong { min-width:0; font:400 56px/.9 Georgia,"Times New Roman",serif; font-variant-numeric:tabular-nums; white-space:nowrap; }
.academy-impact sup { align-self:start; margin:2px 9px 0 2px; color:var(--coral); font:700 24px/1 "Segoe UI"; }
.academy-impact>span { grid-column:1/3; margin-top:10px; padding-bottom:2px; color:#335158; font-size:9px; font-weight:800; line-height:1.35; text-transform:uppercase; letter-spacing:.1em; }
.academy-impact small { color:#77868a; font-size:7px; letter-spacing:.08em; }
.academy-actions { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.academy-youtube { color:#fff; border-color:#c93c34; background:#c7352c; }
.academy-youtube:hover,.academy-youtube:focus-visible { border-color:#9d251f; background:#a92d26; }
.academy-subs { display:grid; gap:2px; padding-left:18px; border-left:1px solid rgba(17,24,29,.2); color:#66767a; font-size:8px; text-transform:uppercase; letter-spacing:.1em; }
.academy-subs b { color:#15252b; font-size:13px; letter-spacing:0; text-transform:none; }
.academy-world { position:relative; min-width:0; overflow:hidden; display:grid; grid-template-rows:58px minmax(0,1fr) 38px 28px; color:#e8f1ef; background:#0a151a; isolation:isolate; }
.academy-world::before { content:""; position:absolute; inset:0; z-index:-1; opacity:.5; background-image:linear-gradient(rgba(86,219,232,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(86,219,232,.07) 1px,transparent 1px); background-size:42px 42px; }
.academy-world::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(125deg,rgba(86,219,232,.08),transparent 34%),linear-gradient(310deg,rgba(240,183,75,.07),transparent 36%); }
.academy-map-head { position:relative; z-index:5; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 22px; border-bottom:1px solid rgba(255,255,255,.1); color:#8fa3a7; font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.14em; }
.academy-map-head span { display:flex; align-items:center; gap:9px; }
.academy-map-head span i { width:7px; height:7px; border-radius:50%; background:var(--acid); box-shadow:0 0 0 5px rgba(168,217,77,.1),0 0 18px rgba(168,217,77,.4); animation:academy-live 1.8s ease-in-out infinite; }
.academy-map-head>b { color:#537278; font-size:7px; }
.academy-map-stage { position:relative; align-self:center; width:100%; aspect-ratio:2/1; overflow:hidden; }
.academy-map-image { position:absolute; inset:4% 3%; width:94%; height:92%; object-fit:contain; opacity:.42; filter:invert(1) sepia(1) saturate(3.2) hue-rotate(128deg) brightness(.9); mix-blend-mode:screen; }
.academy-routes { position:absolute; inset:0; z-index:2; width:100%; height:100%; pointer-events:none; }
.academy-node { position:absolute; z-index:3; display:grid; grid-template-columns:auto auto; grid-template-rows:auto auto; column-gap:6px; transform:translate(-50%,-50%); color:#d7e8e7; font-size:7px; font-weight:800; letter-spacing:.08em; text-shadow:0 2px 8px #061014; }
.academy-node i { grid-row:1/3; align-self:center; position:relative; width:7px; height:7px; border:1px solid #dff4b5; border-radius:50%; background:var(--acid); box-shadow:0 0 12px rgba(168,217,77,.75); animation:academy-node 2.4s ease-out infinite; }
.academy-node b { color:#fff; font-size:8px; }.academy-node small { color:#6f9196; font-size:6px; font-weight:700; letter-spacing:.04em; }
.academy-origin { left:31%; top:68%; }.academy-origin i { border-color:#ffbcac; background:var(--coral); box-shadow:0 0 12px rgba(237,110,83,.8); }
.academy-node-in { left:69%; top:46%; }.academy-node-in i { animation-delay:-.4s; }
.academy-node-us { left:17%; top:37%; }.academy-node-us i { background:var(--cyan); border-color:#bdf7fb; animation-delay:-1.2s; }
.academy-node-pk { left:64%; top:41%; }.academy-node-pk i { background:var(--amber); border-color:#ffe3aa; animation-delay:-.8s; }
.academy-node-ph { left:83%; top:52%; }.academy-node-ph i { animation-delay:-1.5s; }
.academy-node-gb { left:45%; top:30%; }.academy-node-gb i { background:var(--cyan); border-color:#bdf7fb; animation-delay:-.7s; }
.academy-node-ng { left:48%; top:59%; }.academy-node-ng i { background:var(--amber); border-color:#ffe3aa; animation-delay:-1.8s; }
.academy-node-au { left:87%; top:76%; }.academy-node-au i { animation-delay:-1.1s; }
.academy-country-ticker { overflow:hidden; display:flex; align-items:center; border-top:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.06); background:rgba(4,12,15,.6); }
.academy-country-ticker>div { width:max-content; flex:none; display:flex; align-items:center; gap:15px; white-space:nowrap; animation:academy-ticker 34s linear infinite; }
.academy-country-ticker span { color:#708b90; font-size:7px; font-weight:800; letter-spacing:.11em; }.academy-country-ticker b { color:#c9dcdb; }.academy-country-ticker i { width:3px; height:3px; border-radius:50%; background:var(--coral); }
.academy-data-note { align-self:center; margin:0!important; padding:0 20px; color:#587075!important; font-size:6px!important; font-weight:800; text-transform:uppercase; letter-spacing:.12em!important; }
.academy-reel { position:relative; z-index:2; overflow:hidden; padding:52px 0 58px; color:#eaf1f0; background:#070d11; border-top:1px solid rgba(255,255,255,.12); }
.academy-reel>header { display:flex; align-items:end; justify-content:space-between; gap:30px; padding:0 clamp(25px,5vw,72px) 28px; }
.academy-reel .scene-label { margin-bottom:12px; color:var(--amber); }
.academy-reel h4 { margin:0; font:400 42px/1.06 Georgia,"Times New Roman",serif; }
.academy-reel-status { display:flex; align-items:center; gap:9px; padding-bottom:7px; color:#718084; font-size:7px; font-weight:800; text-transform:uppercase; letter-spacing:.13em; }
.academy-reel-status i { width:26px; height:1px; background:linear-gradient(90deg,var(--cyan),var(--amber)); animation:academy-status 1.8s ease-in-out infinite; }
.academy-carousel { overflow:hidden; padding-left:clamp(25px,5vw,72px); mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); }
.academy-carousel-track { width:max-content; display:flex; animation:academy-carousel 64s linear infinite; will-change:transform; }
.academy-carousel:hover .academy-carousel-track,.academy-carousel:focus-within .academy-carousel-track { animation-play-state:paused; }
.academy-video-set { flex:none; display:flex; gap:14px; padding-right:14px; }
.academy-video { width:310px; flex:none; overflow:hidden; display:grid; grid-template-rows:174px 92px; border:1px solid rgba(255,255,255,.12); border-radius:4px; color:#e8eeee; background:#10191e; transition:transform .25s ease,border-color .25s ease,background .25s ease; }
.academy-video:hover,.academy-video:focus-visible { transform:translateY(-7px); border-color:rgba(86,219,232,.55); background:#132229; }
.academy-video-thumb { position:relative; overflow:hidden; background:#020608; }
.academy-video-thumb::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(3,8,11,.65),transparent 55%); }
.academy-video-thumb img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease,filter .5s ease; }
.academy-video:hover img,.academy-video:focus-visible img { transform:scale(1.045); filter:saturate(1.1) contrast(1.05); }
.academy-video-thumb>span { position:absolute; z-index:2; left:15px; bottom:13px; width:34px; height:34px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.72); border-radius:50%; color:#061014; background:rgba(255,255,255,.9); font-size:10px; transform:translateX(1px); }
.academy-video-thumb small { position:absolute; z-index:2; right:10px; bottom:10px; padding:4px 6px; border-radius:2px; color:#fff; background:rgba(0,0,0,.78); font-size:7px; font-weight:800; }
.academy-video>div:last-child { min-width:0; padding:14px 15px; }
.academy-video>div:last-child>span { display:block; margin-bottom:7px; color:var(--cyan); font-size:7px; font-weight:800; text-transform:uppercase; letter-spacing:.11em; }
.academy-video h5 { display:-webkit-box; overflow:hidden; margin:0; color:#eef3f2; font:600 15px/1.32 "Segoe UI",Arial,sans-serif; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.tugomon-feature { position: relative; min-height: min(820px,82vw); margin-top: clamp(70px,10vw,140px); overflow: hidden; display: flex; align-items: flex-end; isolation: isolate; }
.tugomon-scene { position: absolute; inset: 0; z-index: -3; width: 100%; height: 100%; object-fit: cover; }
.tugomon-shade { position: absolute; inset: 0; z-index: -2; background: linear-gradient(0deg,rgba(5,9,12,.96),rgba(5,9,12,.08) 70%),linear-gradient(90deg,rgba(5,9,12,.65),transparent 60%); }
.tugomon-top { position: absolute; inset: 30px 34px auto; display: flex; align-items: flex-start; justify-content: space-between; }
.educakids-logo { width: clamp(78px,9vw,130px); filter: drop-shadow(0 10px 18px rgba(0,0,0,.35)); }
.educakids-wordmark { display:none; color:white; font-size:18px; font-weight:800; text-shadow:0 2px 8px rgba(0,0,0,.55); }
.educakids-wordmark b { color:#a8d94d; }
.tugomon-copy { width: min(840px,90%); padding: clamp(30px,6vw,82px); }
.tugomon-copy h3 { font-size: clamp(45px,6vw,82px); }
.tugomon-copy>p:not(.scene-label) { max-width: 720px; color: #e4ebea; font-size: 16px; }
.project-actions { margin-top: 32px; }
.project-duo { display: grid; grid-template-columns: 1fr 1fr; }
.project-tile { position: relative; min-height: 610px; padding: clamp(38px,6vw,80px); display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; }
.music-tile { background: #ef7155; color: #14191c; }.music-tile p { color: #3b2421; }.music-tile .project-link { border-color: rgba(0,0,0,.4); }
.bible-tile { background: #18231f; }
.tile-number { position: absolute; right: 28px; top: 24px; font: 400 62px Georgia; opacity: .18; }
.logo-round { width: clamp(150px,20vw,240px); border-radius: 50%; box-shadow: 0 28px 60px rgba(0,0,0,.18); }
.biblia-logo { width: max-content; display: flex; align-items: baseline; gap: 7px; padding: 20px 0; color: #f3e6b7; border-top: 1px solid #9f8552; border-bottom: 1px solid #9f8552; }
.biblia-logo span { font: 400 clamp(28px,4vw,52px) Georgia; letter-spacing: .12em; }.biblia-logo strong { color: var(--amber); font: 700 clamp(34px,5vw,66px) "Segoe UI"; }
.closing { position: relative; z-index: 1; min-height: 760px; display: flex; align-items: center; padding: clamp(80px,10vw,150px) clamp(24px,9vw,140px); overflow: hidden; background: #111a20; }
.closing-lines { position: absolute; inset: 0; opacity: .3; background-image: linear-gradient(110deg,transparent 0 46%,rgba(86,219,232,.25) 46.1% 46.2%,transparent 46.3%),linear-gradient(70deg,transparent 0 62%,rgba(240,183,75,.2) 62.1% 62.2%,transparent 62.3%); }
.closing-copy { position: relative; max-width: 940px; }
.closing h2 { margin-bottom: 32px; }.closing-copy>p:not(.scene-label) { max-width: 640px; color: #b8c3c4; font-size: 17px; line-height: 1.8; margin-bottom: 34px; }
footer { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr auto; gap: 30px; padding: 55px clamp(24px,7vw,108px) 30px; color: #c6d0d1; background: #05080a; border-top: 1px solid var(--line); }
.footer-name { margin-bottom: 8px; color: white; font: 400 22px Georgia; } footer p { font-size: 11px; }
.footer-links { display: flex; flex-wrap: wrap; gap: 24px; font-size: 11px; font-weight: 750; }.footer-links a:hover { color: var(--cyan); }
.copyright { grid-column: 1/-1; padding-top: 22px; margin: 8px 0 0; border-top: 1px solid rgba(255,255,255,.09); color: #657175; }
.reveal { opacity: 0; transform: translateY(30px); transition: opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1); }
.reveal.is-visible { opacity: 1; transform: none; }
:focus-visible { outline: 3px solid var(--amber); outline-offset: 4px; }
@keyframes grain { 0%{transform:translate(0,0)}25%{transform:translate(2%,-3%)}50%{transform:translate(-3%,2%)}75%{transform:translate(3%,3%)}100%{transform:translate(-2%,-2%)} }
@keyframes status { 50%{opacity:.45;box-shadow:0 0 4px var(--acid)} }
@keyframes scroll { 0%{transform:translate(-50%,0);opacity:0}25%{opacity:1}80%{opacity:1}100%{transform:translate(-50%,20px);opacity:0} }
@keyframes scan { 0%,100%{transform:translateX(-55%)}50%{transform:translateX(55%)} }
@keyframes sono-rec { 50%{opacity:.52;box-shadow:0 0 0 9px rgba(239,97,91,.03),0 0 8px rgba(239,97,91,.25)} }
@keyframes sono-mic-pulse { 65%{box-shadow:0 0 0 18px rgba(86,219,232,0)} }
@keyframes sono-wave { 0%,100%{height:16%;opacity:.48}50%{height:92%;opacity:1} }
@keyframes sono-spin { to{transform:rotate(360deg)} }
@keyframes sono-flow-line { 0%,100%{transform:scaleX(.25);opacity:.35}50%{transform:scaleX(1);opacity:1} }
@keyframes sono-progress { to{transform:scaleX(1)} }
@keyframes sono-product-pan { 0%,31%{transform:translate3d(-1.5%,0,0) scale(1.01)}34%,100%{transform:translate3d(1.5%,-1%,0) scale(1.04)} }
@keyframes sono-platform-phase { 0%,31%{visibility:visible;opacity:1}34%,100%{visibility:hidden;opacity:0} }
@keyframes sono-process-phase { 0%,31%{visibility:hidden;opacity:0}34%,48%{visibility:visible;opacity:1}51%,100%{visibility:hidden;opacity:0} }
@keyframes sono-report-phase { 0%,48%{visibility:hidden;opacity:0}52%,96%{visibility:visible;opacity:1}100%{visibility:hidden;opacity:0} }
@keyframes sono-report-window { 0%,49%{opacity:0;transform:translateY(34px) scale(.96)}56%,94%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-10px) scale(.99)} }
@keyframes sono-report-stamp { 0%,58%{opacity:0;transform:translateY(12px)}64%,94%{opacity:1;transform:none}100%{opacity:0} }
@keyframes sono-transcript { 0%{opacity:.26;color:#8da1a4}6%,27%{opacity:1;color:#f2f6f5}32%,100%{opacity:.26;color:#8da1a4} }
@keyframes sono-step-one { 0%,32%{color:#d8f6f7}35%,100%{color:#69777b} }
@keyframes sono-step-two { 0%,31%{color:#69777b}34%,50%{color:#ffe0a2}53%,100%{color:#69777b} }
@keyframes sono-step-three { 0%,49%{color:#69777b}52%,96%{color:#dff4b5}100%{color:#69777b} }
@keyframes sono-track-one { 0%{right:90%}31%{right:10%}34%,100%{right:10%;opacity:.24} }
@keyframes sono-track-two { 0%,31%{right:90%;opacity:.24}34%{right:90%;opacity:1}48%{right:10%;opacity:1}51%,100%{right:10%;opacity:.24} }
@keyframes sono-track-three { 0%,49%{right:90%;opacity:.24}52%{right:90%;opacity:1}96%{right:10%;opacity:1}100%{right:10%;opacity:.24} }
@keyframes academy-live { 50%{opacity:.48;box-shadow:0 0 0 9px rgba(168,217,77,.02),0 0 8px rgba(168,217,77,.2)} }
@keyframes academy-node { 0%{box-shadow:0 0 0 0 rgba(168,217,77,.42),0 0 12px rgba(168,217,77,.7)}70%,100%{box-shadow:0 0 0 15px rgba(168,217,77,0),0 0 5px rgba(168,217,77,.28)} }
@keyframes academy-status { 0%,100%{transform:scaleX(.25);transform-origin:left;opacity:.45}50%{transform:scaleX(1);transform-origin:left;opacity:1} }
@keyframes academy-ticker { to{transform:translateX(-50%)} }
@keyframes academy-carousel { to{transform:translateX(-50%)} }
@media (max-width: 900px) {
  .site-header { grid-template-columns: 1fr auto; }.system-status { display:none; }
  .hero-photo { object-position: 63% 20%; }.hero-vignette { background: linear-gradient(0deg,rgba(4,8,11,.98) 5%,rgba(4,8,11,.7) 52%,rgba(4,8,11,.14) 85%); }
  .hero { align-items: flex-end; min-height: 920px; }.hero-content { width: 100%; }.hero-index { display:none; }
  .manifesto { grid-template-columns: 1fr; }.manifesto-aside p { width:auto; }.manifesto-metrics { grid-column: 1; }
  .projects-heading { grid-template-columns: 1fr; gap: 28px; }
  .project-feature { grid-template-columns: 1fr; }.sono-visual { min-height: 420px; }.project-sono .sono-visual { min-height:760px; }.project-sono .project-copy::after { right:10%; left:10%; top:auto; bottom:0; width:auto; height:1px; }
  .academy-story { grid-template-columns:1fr; }.academy-copy { min-height:650px; }.academy-copy::after { right:9%;left:9%;top:auto;bottom:0;width:auto;height:1px; }.academy-world { min-height:610px; }
  .tugomon-feature { min-height: 760px; }.project-duo { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .site-header { height: 66px; padding-inline: 18px; }.wordmark { font-size: 10px; }nav { gap: 15px; }nav a:first-child { display:none; }
  .hero { min-height: 910px; padding: 95px 20px 62px; }.hero-photo { height: 54%; object-position: 58% 15%; }.hero-vignette { background: linear-gradient(0deg,#070b0e 42%,rgba(7,11,14,.58) 66%,rgba(7,11,14,.05)); }
  h1 { font-size: 52px; }.hero-lead { font-size: 15px; }.credentials { display:grid; font-size: 9px; }.hero-actions { display:grid; }.button { width:100%; }
  .manifesto { padding-inline: 20px; }.manifesto-copy h2,.projects-heading h2,.closing h2 { font-size: 43px; }.manifesto-copy>p:last-child { font-size: 15px; }
  .manifesto-metrics { grid-template-columns: 1fr; }.manifesto-metrics div { border-bottom:1px solid rgba(17,24,29,.14);padding-bottom:16px; }
  .projects { padding-inline: 14px; }.project-copy { padding: 46px 24px; }.project-copy h3 { font-size: 32px; }.sono-visual { min-height: 330px; padding:24px; }.project-sono .sono-visual { min-height:650px;padding:8px; }
  .sono-demo { min-height:632px;grid-template-rows:50px minmax(0,1fr) 31px; }.sono-demo-top { gap:8px;padding:0 10px; }.sono-live { width:14px;font-size:0;gap:0; }.sono-live i { flex:0 0 7px; }.sono-timeline { min-width:130px; }.sono-step { font-size:0;gap:0; }.sono-step b { font-size:8px; }.sono-control { width:30px;height:30px; }
  .sono-stage { min-height:550px; }.sono-dictation-card { left:10px;right:10px;bottom:14px;min-height:315px;padding:20px 16px 17px; }.sono-mic-row { gap:10px; }.sono-mic { width:42px;height:42px; }.sono-mic-row b { font-size:9px; }.sono-rec { font-size:7px; }.sono-waves { height:50px;margin:20px 0 16px;gap:2px; }.sono-transcript { font-size:12px!important;line-height:1.58!important; }
  .sono-engine>p { font-size:22px; }.sono-flow { gap:5px; }.sono-flow span { padding:7px 8px;font-size:7px; }.sono-flow i { width:17px; }
  .sono-report-window { inset:13px 10px 86px; }.sono-report-stamp { left:10px;right:10px;bottom:15px;padding:8px 10px; }.sono-report-stamp small { font-size:7px; }.sono-demo-footer { padding-inline:10px; }.sono-demo-footer span:first-child { display:none; }
  .academy-copy { min-height:0;padding:58px 24px 62px; }.academy-logo { width:245px; }.academy-copy h3 { font-size:40px; }.academy-impact strong { min-width:0;font-size:48px; }.academy-impact { grid-template-columns:auto 1fr; }.academy-world { min-height:485px;grid-template-rows:48px minmax(0,1fr) 34px 25px; }
  .academy-map-head { padding-inline:14px; }.academy-map-stage { aspect-ratio:1.75/1; }.academy-node small { display:none; }.academy-node { column-gap:4px; }.academy-reel { padding-top:44px; }.academy-reel>header { align-items:start;padding:0 20px 24px; }.academy-reel h4 { font-size:34px; }.academy-reel-status { display:none; }.academy-carousel { padding-left:20px;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 96%,transparent); }.academy-video { width:275px;grid-template-rows:155px 94px; }
  .tugomon-feature { min-height: 760px; }.tugomon-scene { object-position: 48% center; }.tugomon-shade { background:linear-gradient(0deg,rgba(5,9,12,.98) 0 45%,rgba(5,9,12,.08) 78%); }
  .tugomon-top { inset:18px 18px auto; }.educakids-logo { display:none; }.educakids-wordmark { display:block; }.tugomon-copy { width:100%; padding:28px 20px; }.tugomon-copy h3 { font-size:44px; }.tugomon-copy>p:not(.scene-label) { font-size:14px; }
  .project-tile { min-height:530px;padding:42px 24px; }.logo-round { width:170px; }.closing { padding-inline:22px;min-height:690px; }
  footer { grid-template-columns:1fr;padding-inline:20px; }.copyright { grid-column:1; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }.film-grain { display:none; }.particles { opacity:.35; }.reveal { opacity:1;transform:none;transition:none; }
  .system-status i,.scroll-cue span { animation:none; }.button { transition:none; }
  .sono-control,.sono-progress { display:none; }.sono-phase,.sono-phase-platform,.sono-phase-process { visibility:hidden;opacity:0;animation:none; }.sono-phase-report { visibility:visible;opacity:1;animation:none; }
  .sono-report-window,.sono-report-stamp,.sono-step,.sono-step::after,.sono-live i,.sono-waves i,.sono-transcript span,.sono-product-shot,.sono-engine-ring i,.sono-engine-ring::before,.sono-flow i { animation:none; }
  .sono-step-three { color:#dff4b5; }.sono-step-three::after { right:10%;opacity:1; }.sono-report-window,.sono-report-stamp { opacity:1;transform:none; }
  .academy-map-head span i,.academy-node i,.academy-country-ticker>div,.academy-reel-status i,.academy-carousel-track { animation:none; }
  .academy-carousel { overflow-x:auto;mask-image:none;scroll-snap-type:x mandatory; }.academy-carousel-track { transform:none; }.academy-video { scroll-snap-align:start; }.academy-video-set[aria-hidden="true"] { display:none; }
}

/* Cinematic studio layer */
body { --mouse-x: 0; --mouse-y: 0; }
.boot-sequence { position:fixed; inset:0; z-index:100; display:grid; grid-template-columns:repeat(3,1fr); pointer-events:none; overflow:hidden; }
.boot-sequence span { background:#06090b; transform-origin:top; animation:curtain-open 1.1s cubic-bezier(.76,0,.24,1) .25s forwards; }
.boot-sequence span:nth-child(2) { animation-delay:.36s; background:#091014; }
.boot-sequence span:nth-child(3) { animation-delay:.47s; }
.boot-sequence b { position:absolute; inset:0; display:grid; place-items:center; color:#dfe9e8; font-size:10px; letter-spacing:.38em; animation:studio-mark .8s ease .08s forwards; }
.scroll-progress { position:fixed; right:18px; top:50%; z-index:40; width:1px; height:124px; background:rgba(255,255,255,.16); pointer-events:none; }
.scroll-progress i { position:absolute; inset:0; background:linear-gradient(var(--cyan),var(--amber)); transform:scaleY(var(--scroll-progress,0)); transform-origin:top; box-shadow:0 0 12px rgba(86,219,232,.5); }
.scroll-progress span { position:absolute; right:8px; top:0; color:rgba(255,255,255,.58); font-size:7px; letter-spacing:.22em; writing-mode:vertical-rl; }
.cursor-halo { position:fixed; z-index:50; left:0; top:0; width:180px; height:180px; border:1px solid rgba(86,219,232,.2); border-radius:50%; pointer-events:none; opacity:0; transform:translate3d(calc(var(--cursor-x, -300px) - 50%),calc(var(--cursor-y, -300px) - 50%),0); transition:opacity .25s ease,width .25s ease,height .25s ease,border-color .25s ease; }
body.has-pointer .cursor-halo { opacity:1; }
body.cursor-active .cursor-halo { width:92px; height:92px; border-color:rgba(240,183,75,.58); }
.hero { perspective:1200px; }
.hero-photo { width:calc(100% + 30px); height:calc(100% + 30px); inset:-15px; object-position:72% center; transform:translate3d(calc(var(--mouse-x) * -8px),calc(var(--mouse-y) * -5px),0) scale(1.025); transition:transform .16s linear; }
.hero-vignette { background:linear-gradient(90deg,rgba(4,8,11,.99) 0%,rgba(4,8,11,.84) 36%,rgba(4,8,11,.24) 65%,rgba(4,8,11,.08)),linear-gradient(0deg,rgba(4,8,11,.92),transparent 38%,rgba(4,8,11,.18)); }
.hero-content { transform:translate3d(calc(var(--mouse-x) * 8px),calc(var(--mouse-y) * 5px),36px); transition:transform .16s linear; }
.hero-frame { position:absolute; z-index:2; inset:104px clamp(24px,5vw,78px) 58px; pointer-events:none; }
.hero-frame i { position:absolute; width:34px; height:34px; border-color:rgba(86,219,232,.5); }
.hero-frame i:nth-child(1){left:0;top:0;border-left:1px solid;border-top:1px solid}.hero-frame i:nth-child(2){right:0;top:0;border-right:1px solid;border-top:1px solid}.hero-frame i:nth-child(3){left:0;bottom:0;border-left:1px solid;border-bottom:1px solid}.hero-frame i:nth-child(4){right:0;bottom:0;border-right:1px solid;border-bottom:1px solid}
.signal-field { position:absolute; z-index:1; left:0; right:48%; bottom:15%; height:110px; opacity:.38; overflow:hidden; pointer-events:none; mask-image:linear-gradient(90deg,transparent,#000 12%,#000 82%,transparent); }
.signal-field span { position:absolute; left:-10%; width:120%; height:1px; background:linear-gradient(90deg,transparent,var(--cyan),transparent); transform-origin:center; animation:signal-wave 4.8s ease-in-out infinite; }
.signal-field span:nth-child(1){top:12%;animation-delay:-.5s}.signal-field span:nth-child(2){top:28%;animation-delay:-1.3s;opacity:.72}.signal-field span:nth-child(3){top:44%;animation-delay:-2.1s}.signal-field span:nth-child(4){top:60%;animation-delay:-3s;opacity:.55}.signal-field span:nth-child(5){top:76%;animation-delay:-3.7s}.signal-field span:nth-child(6){top:92%;animation-delay:-4.4s;opacity:.42}
.kinetic-title { overflow:visible; }
.kinetic-title span,.kinetic-title strong { display:inline-block; will-change:transform; }
.kinetic-title.is-visible span { animation:title-settle 1.1s cubic-bezier(.2,.8,.2,1) both; }
.kinetic-title.is-visible strong { animation:title-settle 1.25s cubic-bezier(.2,.8,.2,1) .09s both; }
.scene-label::before { content:""; display:inline-block; width:28px; height:1px; margin:0 12px 3px 0; background:currentColor; transform-origin:left; animation:label-pulse 2.6s ease-in-out infinite; }
.interactive-panel { --rx:0deg; --ry:0deg; --lift:30px; transform:perspective(1500px) translateY(var(--lift)) rotateX(var(--rx)) rotateY(var(--ry)); transform-style:preserve-3d; transition:opacity .85s ease,transform .55s cubic-bezier(.2,.75,.2,1),filter .35s ease; }
.interactive-panel.is-visible { --lift:0px; }
.interactive-panel:hover { filter:brightness(1.035); }
.interactive-panel .project-copy,.interactive-panel .academy-copy,.interactive-panel .academy-world,.interactive-panel .tugomon-copy,.interactive-panel .project-logo,.interactive-panel .biblia-logo { transform:translateZ(24px); }
.project-feature,.project-academy,.tugomon-feature,.project-tile { box-shadow:0 30px 90px rgba(0,0,0,.24); }
.project-feature::after,.project-academy::after,.project-tile::after,.tugomon-feature::after { content:""; position:absolute; inset:0; z-index:4; pointer-events:none; opacity:0; background:radial-gradient(circle at var(--panel-x,50%) var(--panel-y,50%),rgba(255,255,255,.16),transparent 28%); transition:opacity .3s ease; }
.project-feature:hover::after,.project-academy:hover::after,.project-tile:hover::after,.tugomon-feature:hover::after { opacity:1; }
.project-feature,.project-academy,.project-tile { position:relative; }
.project-link span,.button span:last-child { transition:transform .22s ease; }
.project-link:hover span,.button:hover span:last-child { transform:translate(3px,-2px); }
.closing { isolation:isolate; }
.closing-marquee { position:absolute; z-index:-1; left:-4%; right:-4%; top:49%; display:flex; width:108%; overflow:hidden; color:transparent; -webkit-text-stroke:1px rgba(255,255,255,.09); font:400 clamp(72px,11vw,170px)/1 Georgia; white-space:nowrap; transform:rotate(-4deg); }
.closing-marquee span { flex:none; animation:marquee 24s linear infinite; }
.closing-copy { text-shadow:0 18px 50px rgba(0,0,0,.4); }
.reveal:not(.interactive-panel) { clip-path:inset(0 0 18% 0); }
.reveal.is-visible:not(.interactive-panel) { clip-path:inset(0); }
@keyframes curtain-open { to{transform:scaleY(0)} }
@keyframes studio-mark { 0%,45%{opacity:1;letter-spacing:.38em}100%{opacity:0;letter-spacing:.7em} }
@keyframes signal-wave { 0%,100%{transform:translateY(0) scaleX(.78);opacity:.18}45%{transform:translateY(-18px) scaleX(1);opacity:.9}65%{transform:translateY(13px) scaleX(.9);opacity:.46} }
@keyframes title-settle { from{opacity:0;transform:translateY(55px) skewY(3deg);filter:blur(8px)}to{opacity:1;transform:none;filter:none} }
@keyframes label-pulse { 0%,100%{transform:scaleX(.35);opacity:.45}50%{transform:scaleX(1);opacity:1} }
@keyframes marquee { to{transform:translateX(-100%)} }
@media (max-width:900px) {
  .hero-photo { object-position:68% center; transform:scale(1.03); }
  .hero-content { transform:none; }
  .signal-field { right:0;bottom:9%;opacity:.2; }
  .scroll-progress { right:8px; }
  .interactive-panel { --rx:0deg!important;--ry:0deg!important; }
}
@media (max-width:640px) {
  .hero-photo { inset:-5px;width:calc(100% + 10px);height:56%;object-position:68% center; }
  .hero-frame { inset:80px 14px 48px; }
  .cursor-halo,.scroll-progress { display:none; }
  .boot-sequence b { font-size:8px; }
  .closing-marquee { top:55%;font-size:76px; }
}
@media (hover:none),(pointer:coarse) { .cursor-halo { display:none; } }
@media (prefers-reduced-motion:reduce) {
  .boot-sequence { display:none; }.cursor-halo,.scroll-progress { display:none; }
  .hero-photo,.hero-content { transform:none;transition:none; }
  .signal-field span,.kinetic-title.is-visible span,.kinetic-title.is-visible strong,.scene-label::before,.closing-marquee span { animation:none; }
  .interactive-panel { transform:none!important;transition:none; }
}

/* PHSP Music listening room */
.project-phsp { --phsp-accent:var(--coral); position:relative; margin-top:clamp(82px,11vw,160px); overflow:hidden; isolation:isolate; border-top:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); background:#090c0f; box-shadow:0 36px 110px rgba(0,0,0,.32); }
.project-phsp::before { content:""; position:absolute; inset:0; z-index:-1; opacity:.15; background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(180deg,#000,transparent 62%); }
.phsp-signal { position:absolute; z-index:-1; inset:22px 0 auto; height:120px; display:flex; align-items:flex-end; gap:clamp(3px,.55vw,8px); padding:0 3%; opacity:.2; overflow:hidden; mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.phsp-signal i { flex:1; height:15%; max-height:100%; background:linear-gradient(180deg,var(--coral),var(--amber) 52%,var(--cyan)); transform-origin:bottom; animation:phsp-spectrum 1.8s ease-in-out infinite; }
.phsp-signal i:nth-child(3n) { animation-delay:-.35s; }.phsp-signal i:nth-child(4n) { animation-delay:-.8s; }.phsp-signal i:nth-child(5n) { animation-delay:-1.25s; }.phsp-signal i:nth-child(7n) { animation-delay:-.58s; }
.phsp-intro { min-height:470px; display:grid; grid-template-columns:minmax(190px,.52fr) minmax(360px,1.25fr) minmax(190px,.5fr); align-items:end; gap:clamp(28px,5vw,70px); padding:clamp(70px,8vw,112px) clamp(28px,6vw,88px) clamp(58px,7vw,88px); }
.phsp-brand { align-self:stretch; display:flex; flex-direction:column; justify-content:space-between; }
.phsp-brand .project-code { margin:0; }
.phsp-logo { width:clamp(130px,13vw,180px); aspect-ratio:1; border-radius:50%; object-fit:cover; border:1px solid rgba(255,255,255,.25); box-shadow:0 20px 55px rgba(0,0,0,.46),0 0 0 12px rgba(255,255,255,.025); }
.phsp-intro-copy .scene-label { color:var(--coral); }
.phsp-intro-copy h3 { margin:0 0 24px; color:#f7f3ed; font:400 clamp(43px,5vw,75px)/.98 Georgia,"Times New Roman",serif; }
.phsp-intro-copy>p:last-child { max-width:650px; margin:0; color:#aeb7ba; font-size:16px; line-height:1.8; }
.phsp-intro-action { display:flex; flex-direction:column; align-items:flex-start; gap:26px; }
.phsp-intro-action>span { display:flex; align-items:center; gap:12px; color:#bbc4c5; font-size:10px; text-transform:uppercase; }
.phsp-intro-action b { color:var(--amber); font:400 42px/1 Georgia; }
.phsp-deck { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid rgba(255,255,255,.13); }
.phsp-card { --mode:var(--coral); min-width:0; min-height:520px; display:grid; grid-template-rows:auto 1fr; border-right:1px solid rgba(255,255,255,.11); border-bottom:1px solid rgba(255,255,255,.11); color:#f1f4f1; background:#0c1114; transition:background .3s ease,box-shadow .3s ease; }
.phsp-card:nth-child(3n) { border-right:0; }
.phsp-card:hover,.phsp-card:focus-within,.phsp-card.is-active { background:#12191d; box-shadow:inset 0 3px 0 var(--mode); }
.phsp-card-ambientes { --mode:var(--cyan); }.phsp-card-zen { --mode:var(--acid); }.phsp-card-foco { --mode:var(--amber); }.phsp-card-workout { --mode:#ff6257; }.phsp-card-similar { --mode:#8a7cff; }
.phsp-cover { position:relative; aspect-ratio:1.42/1; overflow:hidden; background:#12171b; }
.phsp-cover::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 46%,rgba(6,9,11,.72)); }
.phsp-cover img { width:100%; height:100%; object-fit:cover; filter:saturate(.76) contrast(1.08); transition:transform .7s cubic-bezier(.2,.75,.2,1),filter .4s ease; }
.phsp-card:hover .phsp-cover img,.phsp-card.is-active .phsp-cover img { transform:scale(1.045); filter:saturate(1) contrast(1.05); }
.phsp-cover>span { position:absolute; z-index:2; left:18px; bottom:14px; color:white; font:400 31px/1 Georgia; text-shadow:0 3px 16px black; }
.phsp-card-copy { min-width:0; display:flex; flex-direction:column; align-items:flex-start; padding:28px clamp(20px,2.3vw,34px) 32px; }
.phsp-card-copy p { margin:0 0 13px; color:var(--mode); font-size:10px; font-weight:800; text-transform:uppercase; }
.phsp-card-copy h4 { max-width:100%; margin:0 0 9px; color:#f7f6f1; font:400 clamp(25px,2.15vw,34px)/1.04 Georgia,"Times New Roman",serif; overflow-wrap:anywhere; }
.phsp-card-copy small { margin-bottom:19px; color:#74848a; font-size:9px; text-transform:uppercase; }
.phsp-card-copy>span { color:#aab6b8; font-size:13px; line-height:1.65; }
.phsp-card-play,.phsp-dna-link { margin-top:auto; min-height:42px; border:0; border-bottom:1px solid rgba(255,255,255,.25); border-radius:0; padding:12px 0 7px; display:inline-flex; align-items:center; gap:10px; color:#e8eeec; background:transparent; cursor:pointer; font:800 9px/1 "Segoe UI",Arial,sans-serif; text-transform:uppercase; }
.phsp-card-play:hover,.phsp-card-play:focus-visible,.phsp-dna-link:hover,.phsp-dna-link:focus-visible { color:var(--mode); border-color:var(--mode); outline:none; }
.phsp-card-play i { width:24px; height:24px; display:grid; place-items:center; border:1px solid currentColor; border-radius:50%; font-style:normal; font-size:7px; }
.phsp-card-play[aria-pressed="true"] i::before { content:""; position:absolute; width:6px; height:8px; border-left:2px solid currentColor; border-right:2px solid currentColor; }
.phsp-card-play[aria-pressed="true"] i { position:relative; color:var(--mode); font-size:0; }
.phsp-card-similar { grid-template-rows:auto 1fr; background:#0f1018; }
.phsp-dna { position:relative; aspect-ratio:1.42/1; display:grid; place-items:center; overflow:hidden; background:radial-gradient(circle at center,rgba(138,124,255,.15),transparent 56%),linear-gradient(135deg,#111420,#080a0f); }
.phsp-dna::before,.phsp-dna::after { content:""; position:absolute; width:58%; aspect-ratio:1; border:1px solid rgba(138,124,255,.35); border-radius:50%; animation:phsp-dna-orbit 9s linear infinite; }
.phsp-dna::after { width:78%; border-style:dashed; border-color:rgba(86,219,232,.2); animation-direction:reverse; animation-duration:14s; }
.phsp-dna span { position:relative; z-index:2; width:84px; height:84px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.32); border-radius:50%; color:#f6f3ff; font:400 25px Georgia; box-shadow:0 0 42px rgba(138,124,255,.2); }
.phsp-dna i { position:absolute; z-index:3; width:7px; height:7px; border-radius:50%; background:var(--cyan); box-shadow:0 0 12px currentColor; }
.phsp-dna i:nth-of-type(1){left:23%;top:28%}.phsp-dna i:nth-of-type(2){right:24%;top:25%;background:var(--coral)}.phsp-dna i:nth-of-type(3){left:18%;bottom:26%;background:var(--acid)}.phsp-dna i:nth-of-type(4){right:18%;bottom:31%;background:var(--amber)}.phsp-dna i:nth-of-type(5){left:48%;top:10%;background:#9b89ff}.phsp-dna i:nth-of-type(6){left:48%;bottom:10%;background:#9b89ff}
.phsp-player-shell { --audio-progress:0; min-height:94px; display:grid; grid-template-columns:auto minmax(150px,.42fr) minmax(220px,1fr) auto; align-items:center; gap:24px; padding:16px clamp(22px,4vw,58px); border-top:1px solid rgba(255,255,255,.16); color:#eef2ef; background:#050708; }
.phsp-master-toggle,.biblia-play { flex:none; width:52px; height:52px; border:1px solid rgba(255,255,255,.42); border-radius:50%; display:grid; place-items:center; color:white; background:#12171a; cursor:pointer; }
.phsp-master-toggle:hover,.phsp-master-toggle:focus-visible { color:var(--coral); border-color:var(--coral); outline:none; }
.phsp-master-pause { display:none; }.phsp-player-shell.is-playing .phsp-master-play { display:none; }.phsp-player-shell.is-playing .phsp-master-pause { display:inline; }
.phsp-now { min-width:0; display:grid; gap:4px; }
.phsp-now small { overflow:hidden; color:#78878b; font-size:8px; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.phsp-now strong { overflow:hidden; font:400 19px/1.1 Georgia; text-overflow:ellipsis; white-space:nowrap; }
.phsp-live-wave { position:relative; height:40px; display:flex; align-items:center; gap:3px; overflow:hidden; }
.phsp-live-wave::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent calc(var(--audio-progress) * 100%),rgba(5,7,8,.74) calc(var(--audio-progress) * 100%)); pointer-events:none; }
.phsp-live-wave i { flex:1; height:22%; border-radius:2px; background:linear-gradient(180deg,var(--coral),var(--amber)); animation:phsp-live-wave .88s ease-in-out infinite; animation-play-state:paused; }
.phsp-player-shell.is-playing .phsp-live-wave i { animation-play-state:running; }
.phsp-live-wave i:nth-child(3n){animation-delay:-.25s}.phsp-live-wave i:nth-child(4n){animation-delay:-.56s}.phsp-live-wave i:nth-child(5n){animation-delay:-.72s}
.phsp-time { min-width:82px; color:#7c898d; font-size:9px; text-align:right; font-variant-numeric:tabular-nums; }

/* Biblia6D cinematic reader */
.project-biblia { --audio-progress:0; position:relative; min-height:980px; margin-top:clamp(82px,11vw,160px); display:grid; grid-template-columns:minmax(0,1.22fr) minmax(380px,.78fr); overflow:hidden; border-top:1px solid rgba(246,217,164,.24); border-bottom:1px solid rgba(246,217,164,.24); color:#f5efe3; background:#100e0c; box-shadow:0 36px 110px rgba(0,0,0,.38); }
.biblia-cinema { position:relative; min-height:980px; overflow:hidden; isolation:isolate; background:#050504; }
.biblia-scenes,.biblia-scene,.biblia-cinema-shade { position:absolute; inset:0; }
.biblia-scene { width:100%; height:100%; max-width:none; object-fit:cover; opacity:0; animation:biblia-cinema-scene 18s ease-in-out infinite; }
.biblia-scene-waters { object-position:50% center; animation-delay:0s; }.biblia-scene-light { object-position:52% center; animation-delay:6s; }.biblia-scene-completion { object-position:50% center; animation-delay:12s; }
.biblia-cinema-shade { z-index:2; background:linear-gradient(180deg,rgba(7,6,5,.65),transparent 25%,transparent 46%,rgba(7,6,5,.9)),linear-gradient(90deg,rgba(7,6,5,.35),transparent 55%); }
.biblia-film-meta { position:absolute; z-index:3; inset:22px 24px auto; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:18px; color:rgba(246,233,208,.64); font-size:8px; text-transform:uppercase; }
.biblia-film-meta span:last-child { text-align:right; }.biblia-film-meta b { font-size:8px; font-weight:500; }
.biblia-film-meta b::before,.biblia-film-meta b::after { content:""; display:inline-block; width:24px; height:1px; margin:0 9px 3px; background:rgba(246,217,164,.42); }
.biblia-cinema-copy { position:absolute; z-index:3; left:clamp(28px,6vw,86px); right:clamp(28px,6vw,86px); bottom:90px; }
.biblia-cinema-copy p { margin-bottom:18px; color:#e2bd73; font-size:10px; font-weight:800; text-transform:uppercase; }
.biblia-cinema-copy blockquote { margin:0 0 22px; max-width:670px; color:#fff9ed; font:italic 400 clamp(48px,6vw,88px)/.95 Georgia,"Times New Roman",serif; text-shadow:0 12px 46px rgba(0,0,0,.7); }
.biblia-cinema-copy>span { color:rgba(255,248,235,.72); font:italic 15px/1.5 Georgia; }
.biblia-scene-index { position:absolute; z-index:3; left:clamp(28px,6vw,86px); right:clamp(28px,6vw,86px); bottom:34px; display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }
.biblia-scene-index i { position:relative; padding-top:8px; border-top:1px solid rgba(255,255,255,.3); color:rgba(255,255,255,.58); font-size:8px; font-style:normal; }
.biblia-scene-index i::before { content:""; position:absolute; left:0; right:100%; top:-1px; height:1px; background:#f0c36c; animation:biblia-scene-progress 18s linear infinite; }
.biblia-scene-index i:nth-child(2)::before{animation-delay:6s}.biblia-scene-index i:nth-child(3)::before{animation-delay:12s}
.biblia-reader { min-width:0; display:flex; flex-direction:column; padding:clamp(50px,5vw,72px) clamp(28px,4vw,58px) 52px; border-left:1px solid rgba(246,217,164,.14); background:linear-gradient(145deg,#1b1712,#0f0d0b 72%); }
.biblia-reader>.project-code { margin-bottom:30px; }
.biblia-reader .biblia-logo { position:static; width:max-content; margin-bottom:30px; color:#f4e8d1; border-color:rgba(240,195,108,.48); background:rgba(255,255,255,.02); }
.biblia-reader .scene-label { margin-bottom:16px; color:#e0b560; }
.biblia-reader h3 { margin:0 0 21px; color:#fff8ec; font:400 clamp(37px,3.8vw,58px)/1.02 Georgia,"Times New Roman",serif; }
.biblia-lead { margin-bottom:28px; color:#bcb3a5; font-size:14px; line-height:1.7; }
.biblia-voice-picker { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin-bottom:14px; padding:1px; background:rgba(246,217,164,.16); }
.biblia-voice { min-width:0; min-height:68px; border:0; border-radius:0; display:grid; grid-template-columns:36px 1fr; grid-template-rows:1fr 1fr; align-items:end; column-gap:10px; padding:11px 13px; color:#9e978d; background:#15120f; cursor:pointer; text-align:left; }
.biblia-voice>span { grid-row:1/3; align-self:center; width:34px; height:34px; display:grid; place-items:center; border:1px solid currentColor; border-radius:50%; font:400 10px Georgia; }
.biblia-voice b { align-self:end; overflow:hidden; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.biblia-voice small { align-self:start; overflow:hidden; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.biblia-voice:hover,.biblia-voice:focus-visible,.biblia-voice.is-selected { color:#f3d493; background:#252016; outline:none; }
.biblia-voice.is-selected { box-shadow:inset 0 -2px 0 #e0b560; }
.biblia-audio { display:grid; grid-template-columns:auto minmax(90px,.56fr) minmax(110px,1fr) auto; align-items:center; gap:13px; min-height:84px; margin-bottom:17px; padding:11px 14px; border:1px solid rgba(246,217,164,.18); background:#090807; }
.biblia-play { width:46px; height:46px; color:#f1d18f; border-color:rgba(241,209,143,.5); background:#18130c; }
.biblia-play:hover,.biblia-play:focus-visible { color:white; border-color:#f1d18f; outline:none; }
.biblia-pause-icon { display:none; }.biblia-audio.is-playing .biblia-play-icon { display:none; }.biblia-audio.is-playing .biblia-pause-icon { display:inline; }
.biblia-audio-copy { min-width:0; display:grid; gap:2px; }
.biblia-audio-copy small { color:#736c62; font-size:7px; text-transform:uppercase; }.biblia-audio-copy strong { overflow:hidden; color:#f5eee1; font:400 16px Georgia; text-overflow:ellipsis; white-space:nowrap; }.biblia-audio-copy span { overflow:hidden; color:#9a9185; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.biblia-wave { position:relative; height:33px; display:flex; align-items:center; gap:2px; overflow:hidden; }
.biblia-wave::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent calc(var(--audio-progress) * 100%),rgba(9,8,7,.76) calc(var(--audio-progress) * 100%)); }
.biblia-wave i { flex:1; height:17%; background:linear-gradient(180deg,#f1d18f,#8f6937); animation:biblia-wave .94s ease-in-out infinite; animation-play-state:paused; }
.biblia-audio.is-playing .biblia-wave i { animation-play-state:running; }
.biblia-wave i:nth-child(3n){animation-delay:-.26s}.biblia-wave i:nth-child(4n){animation-delay:-.55s}.biblia-wave i:nth-child(5n){animation-delay:-.74s}
.biblia-time { min-width:78px; color:#776e61; font-size:8px; text-align:right; font-variant-numeric:tabular-nums; }
.biblia-reading { min-height:260px; max-height:300px; overflow:auto; margin-bottom:20px; padding:20px 22px 24px; border:1px solid rgba(246,217,164,.13); color:#362f26; background:#eee7d9; scrollbar-color:#b19360 #ddd3c1; }
.biblia-reading header { display:flex; justify-content:space-between; gap:14px; margin-bottom:18px; padding-bottom:11px; border-bottom:1px solid rgba(54,47,38,.18); }
.biblia-reading header span { font:400 20px Georgia; }.biblia-reading header b { align-self:center; color:#826d4b; font-size:7px; text-transform:uppercase; }
.biblia-reading p { margin:0 0 12px; font:400 14px/1.64 Georgia,"Times New Roman",serif; }
.biblia-reading sup { margin-right:7px; color:#9b753a; font:bold 8px "Segoe UI",Arial,sans-serif; }
.biblia-open { margin-top:auto; align-self:flex-start; color:#17120c; border-color:#e4c689; background:#e4c689; }
.biblia-open:hover,.biblia-open:focus-visible { color:#17120c; border-color:#fff3d8; background:#fff3d8; }
@keyframes phsp-spectrum { 0%,100%{height:12%;opacity:.32}50%{height:88%;opacity:1} }
@keyframes phsp-dna-orbit { to{transform:rotate(360deg)} }
@keyframes phsp-live-wave { 0%,100%{height:15%;opacity:.5}50%{height:90%;opacity:1} }
@keyframes biblia-cinema-scene { 0%{opacity:0;transform:scale(1.08)}5%,28%{opacity:1}33%,100%{opacity:0;transform:scale(1.01)} }
@keyframes biblia-scene-progress { 0%{right:100%}5%{right:100%}30%{right:0}33%,100%{right:0;opacity:.25} }
@keyframes biblia-wave { 0%,100%{height:16%;opacity:.42}50%{height:92%;opacity:1} }
@media (max-width:1100px) {
  .phsp-intro { grid-template-columns:minmax(150px,.4fr) 1fr; }.phsp-intro-action { grid-column:2; flex-direction:row; align-items:center; }
  .phsp-deck { grid-template-columns:repeat(2,minmax(0,1fr)); }.phsp-card:nth-child(3n) { border-right:1px solid rgba(255,255,255,.11); }.phsp-card:nth-child(2n) { border-right:0; }
  .project-biblia { grid-template-columns:1fr; }.biblia-cinema { min-height:760px; }.biblia-reader { border-left:0; border-top:1px solid rgba(246,217,164,.14); }.biblia-reading { max-height:340px; }
}
@media (max-width:700px) {
  .project-phsp,.project-biblia { margin-top:82px; }
  .phsp-intro { min-height:0; grid-template-columns:1fr; align-items:start; gap:28px; padding:58px 22px 46px; }.phsp-brand { min-height:150px; flex-direction:row; align-items:flex-start; }.phsp-logo { width:130px; }.phsp-intro-action { grid-column:1; flex-direction:column; align-items:flex-start; }.phsp-intro-copy h3 { font-size:43px; }
  .phsp-deck { grid-template-columns:1fr; }.phsp-card,.phsp-card:nth-child(2n),.phsp-card:nth-child(3n) { min-height:0; border-right:0; }.phsp-cover,.phsp-dna { aspect-ratio:1.5/1; }.phsp-card-copy { min-height:270px; }.phsp-card-copy h4 { font-size:31px; }
  .phsp-player-shell { grid-template-columns:auto 1fr auto; gap:12px; padding:14px 18px; }.phsp-live-wave { grid-column:1/4; grid-row:2; height:24px; }.phsp-time { grid-column:3; grid-row:1; }.phsp-master-toggle { width:46px;height:46px; }
  .biblia-cinema { min-height:630px; }.biblia-film-meta { inset:18px 17px auto; }.biblia-film-meta b { display:none; }.biblia-film-meta { grid-template-columns:1fr auto; }.biblia-cinema-copy { left:22px;right:22px;bottom:70px; }.biblia-cinema-copy blockquote { font-size:48px; }.biblia-scene-index { left:22px;right:22px;bottom:24px; }
  .biblia-reader { padding:48px 20px 42px; }.biblia-reader h3 { font-size:41px; }.biblia-voice { grid-template-columns:32px 1fr;padding:9px; }.biblia-voice>span { width:30px;height:30px; }
  .biblia-audio { grid-template-columns:auto 1fr auto; }.biblia-wave { grid-column:1/4; grid-row:2;height:25px; }.biblia-time { grid-column:3;grid-row:1; }.biblia-reading { max-height:330px;padding:18px; }
}
@media (prefers-reduced-motion:reduce) {
  .phsp-signal i,.phsp-dna::before,.phsp-dna::after,.phsp-live-wave i,.biblia-scene,.biblia-scene-index i::before,.biblia-wave i { animation:none; }
  .biblia-scene { opacity:0;transform:none; }.biblia-scene-light { opacity:1; }
  .phsp-card:hover .phsp-cover img,.phsp-card.is-active .phsp-cover img { transform:none; }
}
