:root{color-scheme:dark;--bg:#080e0e;--ink:#dce2d7;--muted:#99a69b;--line:#334039;--green:#b6d7a0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--ink)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:5px}#primeViewport{position:fixed;top:var(--pv-top,0);left:var(--pv-left,0);width:var(--pv-w,100%);height:var(--pv-h,100dvh);padding:env(safe-area-inset-top) max(18px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(18px,env(safe-area-inset-left));display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:radial-gradient(ellipse at 83% 33%,#15231c 0,transparent 52%),var(--bg);overflow:hidden}.status-shell{min-height:76px;display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding:0 26px}.wordmark{display:flex;align-items:center;gap:13px;font-size:12px;letter-spacing:2px;font-weight:bold}.mark{display:grid;place-items:center;font-family:Georgia,serif;font-size:25px;width:33px;height:33px;border:1px solid #778673;clip-path:polygon(0 0,100% 0,100% 75%,50% 100%,0 75%)}.studio{margin-left:auto;letter-spacing:2px;font-size:9px;color:var(--muted)}.utility{color:#b9c8b3;border:1px solid #435346;background:transparent;padding:9px 12px;font-size:10px;text-transform:uppercase;letter-spacing:1px;cursor:pointer}.utility[hidden]{display:none}#primeScroll{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#475346 transparent}.panel{position:relative;max-width:1560px;margin:auto;min-height:100%;scroll-margin-top:0}.panel[hidden]{display:none}.hero{overflow:hidden;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;padding:48px 5% 85px;isolation:isolate}.hero-copy{position:relative;z-index:2}.eyebrow,.micro,.overline,.character-index{font-size:10px;letter-spacing:2.2px;font-weight:normal}.eyebrow{color:var(--green);display:flex;align-items:center;gap:10px;margin:0 0 42px}.eyebrow>span{width:5px;height:5px;border-radius:50%;background:var(--green);box-shadow:0 0 12px #b6d7a099}.overline{color:#9dab96;margin:0 0 16px;letter-spacing:4px}h1{font-family:Georgia,'Times New Roman',serif;line-height:.94;font-size:clamp(52px,6.3vw,103px);font-weight:normal;letter-spacing:-3px;margin:0 0 30px}h1>span{background:linear-gradient(#f4f5e7 5%,#bfc7b5 40%,#7d8c7b 53%,#d0d9c8 70%,#7b8b77);background-clip:text;-webkit-background-clip:text;color:transparent}h1{font-size:clamp(44px,5.9vw,95px)}.lead{font-size:clamp(18px,1.5vw,24px);font-family:Georgia,serif;margin:0 0 16px}.intro{max-width:395px;font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:30px}.primary{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:48px;padding:15px 22px;background:#c0d5ad;color:#17251a;font-size:12px;font-weight:bold;transition:background .2s}.primary:hover{background:#d8e7c8}.text-link{display:inline-flex;font-size:11px;padding:18px 0;margin-left:23px;gap:14px;border-bottom:1px solid #5b6b53}.artifact{position:relative;width:100%;max-width:650px;aspect-ratio:1;justify-self:center;display:grid;place-items:center}.artifact-halo{position:absolute;inset:10%;border-radius:50%;background:radial-gradient(#6f94532b,transparent 67%);box-shadow:0 0 100px #6b8c4b16}.orbital{position:absolute;border:1px solid #91a17820;border-radius:50%;inset:2%}.orbital-two{inset:-3%;border-style:dashed;transform:scaleY(.9) rotate(-35deg)}.compass{width:98%;transform:rotate(-18deg);filter:drop-shadow(0 24px 30px #0009)}.needle{transform-origin:300px 300px;animation:seek 13s ease-in-out infinite}.artifact-label{position:absolute;bottom:-28px;left:10%;border-left:1px solid #93ad7e;padding:4px 16px;display:grid;gap:10px}.artifact-label .micro{font-size:8px;color:#8ca079}.artifact-label strong{font-family:Georgia,serif;font-size:16px;font-weight:normal}.artifact-label>span:last-child{font-size:8px;letter-spacing:2px;color:#8a9989}.hero-foot{position:absolute;bottom:22px;left:5%;right:5%;display:flex;justify-content:space-between;gap:12px;font-size:8px;letter-spacing:2px;color:#81907f}.hero-foot .micro{font-size:8px}.prime-command-pill{display:flex;justify-content:center;gap:5px;padding:14px 0 17px;border-top:1px solid var(--line);background:#080e0ee8}.prime-command-pill a{padding:14px 23px;min-height:44px;font-size:11px;border:1px solid transparent;border-radius:30px;white-space:nowrap;transition:background .2s,color .2s}.prime-command-pill a span{font-size:8px;margin-right:9px;color:#748970}.prime-command-pill a[aria-current=page]{border-color:#54664c;background:#1d2b20;color:#d6e6c8}.prime-command-pill a:hover{background:#18241c}.content-panel{padding:48px 5%}.content-panel .eyebrow{margin-bottom:28px}.section-heading{display:flex;gap:50px;align-items:end;justify-content:space-between;margin-bottom:42px}h2{font-family:Georgia,serif;font-size:clamp(30px,3.6vw,56px);font-weight:normal;line-height:1.13;letter-spacing:-1.5px;margin:0}h2 em{color:#91a480;font-weight:normal}.section-heading>p{max-width:350px;color:var(--muted);font-size:13px;line-height:1.85;margin:0 0 4px}.lore-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;border-top:1px solid var(--line);padding-top:30px}.chapter{font-family:Georgia,serif;font-size:32px;color:#8d9f77}h3{font-family:Georgia,serif;font-size:23px;font-weight:normal;margin:20px 0 12px}article p{font-size:13px;line-height:1.85;color:var(--muted);margin:0}blockquote{font-family:Georgia,serif;font-size:clamp(23px,3vw,40px);text-align:center;margin:55px 0 0;padding:35px 0;border-top:1px solid var(--line)}cite{display:block;font:9px Arial,sans-serif;letter-spacing:3px;color:#91a480;margin-top:20px}.watcher-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 32px}.watcher-grid article{border-top:1px solid #3a493e;padding:24px 0 30px}.character-index{font-size:8px;color:#9cb98b}.watcher-grid h3{margin:16px 0 10px}.records{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:28px;cursor:pointer;padding:25px 0}summary::-webkit-details-marker{display:none}.record-number{font:24px Georgia,serif;color:#90a17f;min-width:55px}summary small{font-size:8px;letter-spacing:2px;color:#92a582;display:block;margin-bottom:8px}summary strong{font:23px Georgia,serif}.plus{margin-left:auto;font:26px Georgia,serif;color:#93a77e;transition:transform .2s}details[open] .plus{transform:rotate(45deg)}.record-body{margin-left:83px;max-width:680px;padding:0 15px 25px 0;color:var(--muted);font-size:14px;line-height:1.9}.warning{font-family:Georgia,serif;font-size:23px;color:#d3d9c8}.series-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;gap:30px}.series-stats strong{font:60px Georgia,serif;color:#becdac;display:block;margin-bottom:12px}.series-stats span{font-size:8px;letter-spacing:1.8px;color:#91a083}.series-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:32px 0}.series-bottom p{font:24px/1.5 Georgia,serif}footer{font-size:9px;letter-spacing:2px;display:flex;justify-content:space-between;color:#7e8c7a;padding:20px 0;border-top:1px solid var(--line)}@keyframes seek{0%,100%{transform:rotate(18deg)}35%{transform:rotate(34deg)}62%{transform:rotate(10deg)}}[data-still=true] *,[data-paused=true] *{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(min-width:1500px){.hero{grid-template-columns:1fr 1fr}.hero-copy h1{font-size:104px}}@media(max-width:950px){.status-shell{padding:0 10px}.hero{padding:38px 4% 90px;grid-template-columns:1.05fr 1fr}.hero-copy h1{font-size:6vw;letter-spacing:-2px}.text-link{margin:10px 0 0;display:flex;width:max-content}.eyebrow{font-size:8px;letter-spacing:1.5px}.artifact-label{bottom:-20px;left:5%}.artifact-label strong{font-size:13px}.prime-command-pill a{padding:12px 18px}.section-heading{gap:25px}.watcher-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){#primeViewport{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.status-shell{min-height:58px;gap:10px;padding:0 3px}.wordmark{font-size:10px;letter-spacing:1.4px;gap:8px}.mark{width:26px;height:29px;font-size:21px}.studio{display:none}.utility{margin-left:auto;font-size:8px;padding:8px}.hero{grid-template-columns:1fr;padding:27px 12px 46px;align-content:start;overflow:hidden}.hero-copy h1{font-size:clamp(43px,11.7vw,74px);letter-spacing:-2px;line-height:.98;margin-bottom:19px}.hero .eyebrow{margin-bottom:25px;font-size:8px}.overline{font-size:8px;letter-spacing:3px;margin-bottom:13px}.lead{font-size:19px;margin-bottom:10px}.intro{font-size:12px;line-height:1.75;max-width:420px;margin:0 0 20px}.hero .primary{min-height:44px;padding:12px 16px;font-size:11px}.text-link{display:inline-flex;margin:0 0 0 16px;font-size:10px;padding:12px 0;gap:8px}.artifact{max-width:370px;width:85%;margin:20px 0 44px}.artifact-label{left:0;bottom:-23px}.artifact-label strong{font-size:14px}.hero-foot{left:12px;right:12px;bottom:14px;font-size:7px;letter-spacing:1px}.hero-foot .micro{display:none}.prime-command-pill{gap:0;justify-content:space-between;padding:10px 0 12px}.prime-command-pill a{font-size:9px;min-height:45px;padding:9px 10px;display:grid;gap:6px;text-align:center;border-radius:16px}.prime-command-pill a span{margin:0;font-size:7px}.content-panel{padding:29px 12px}.section-heading{display:block;margin-bottom:28px}h2{font-size:34px;letter-spacing:-1px}.section-heading>p{font-size:12px;max-width:none;margin:20px 0 0}.lore-grid{grid-template-columns:1fr;gap:26px}.lore-grid article{display:grid;grid-template-columns:40px 1fr;gap:6px 15px}.lore-grid h3{margin:2px 0 8px}.lore-grid article p{grid-column:2}.chapter{font-size:26px}.watcher-grid{grid-template-columns:1fr;gap:0}.watcher-grid article{padding:23px 0}.records summary{gap:14px;padding:23px 0}.record-number{min-width:36px;font-size:20px}summary strong{font-size:19px}summary small{font-size:7px}.record-body{margin-left:50px;font-size:12px}.series-stats{gap:20px;grid-template-columns:1fr}.series-stats>div{display:flex;align-items:center;gap:22px}.series-stats strong{font-size:46px;min-width:90px;margin:0}.series-stats span{line-height:1.8}.series-bottom{display:block}.series-bottom p{font-size:22px}footer{font-size:7px;letter-spacing:1px;gap:12px}blockquote{margin-top:30px;font-size:25px}}@media(max-width:360px){.text-link{margin:10px 0 0;display:flex}.prime-command-pill a{padding:9px 6px}.hero-copy h1{font-size:11.5vw}}@media(max-height:500px) and (min-width:641px){.status-shell{min-height:48px}.prime-command-pill{padding:7px 0}.hero{min-height:520px}.content-panel{padding-top:28px}}

.visit-count{white-space:nowrap;color:#99ae8b}.visit-count strong{font-variant-numeric:tabular-nums;color:#d0dfc0;margin-left:8px}

.sound-toggle{min-width:94px}
.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;border-top:1px solid var(--line);padding-top:28px}
.media-card{margin:0;border:1px solid #334039;background:linear-gradient(145deg,#0d1612,#0a100e);min-width:0;overflow:hidden}
.media-frame{position:relative;aspect-ratio:16/10;background:#040706;overflow:hidden}
.media-frame img,.media-frame video{width:100%;height:100%;display:block;object-fit:cover}
.media-frame video{background:#000}
.media-card figcaption{display:grid;gap:7px;padding:16px 18px 18px}
.media-card figcaption strong{font:18px Georgia,serif;font-weight:normal;color:#dce2d7}
.media-card figcaption span{font-size:11px;line-height:1.7;color:#8f9e90}
.media-empty{grid-column:1/-1;color:#8f9e90;font:16px/1.8 Georgia,serif;padding:28px 0;margin:0}
@media(max-width:760px){.media-grid{grid-template-columns:1fr;gap:18px}.sound-toggle{min-width:auto}.status-shell .utility{padding:8px 9px}}

.watcher-media{margin-top:18px;padding-top:15px;border-top:1px solid #28362d}.watcher-media-label{display:block;margin-bottom:10px;color:#8fa87f;font-size:7px;letter-spacing:1.8px}.watcher-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.watcher-media-card{border-color:#2b382f;background:#080e0c}.watcher-media-card .media-frame{aspect-ratio:4/3}.watcher-media-card figcaption{padding:9px 10px 10px;gap:4px}.watcher-media-card figcaption strong{font-size:13px}.watcher-media-card figcaption span{font-size:9px;line-height:1.5}@media(max-width:380px){.watcher-media-grid{grid-template-columns:1fr}}

.section-media{margin:30px 0 8px;padding-top:18px;border-top:1px solid #334039}.section-media[hidden]{display:none}.section-media-label{display:block;margin-bottom:12px;color:#9cb98b;font-size:8px;letter-spacing:2px}.section-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.section-media .media-card{border-color:#2d3b31}.section-media .media-frame{aspect-ratio:16/9}.section-media .media-card figcaption{padding:11px 12px 12px}.section-media .media-card figcaption strong{font-size:14px}.section-media .media-card figcaption span{font-size:9px}.threshold-section-media{max-width:620px;margin:24px 0 0}.threshold-section-media .section-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:760px){.section-media-grid,.threshold-section-media .section-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.section-media-grid,.threshold-section-media .section-media-grid{grid-template-columns:1fr}}

/* Canonical full-width Watcher portraits. Preserve the supplied 16:9 compositions. */
.watcher-media-grid{grid-template-columns:minmax(0,1fr)}
.watcher-media-card .media-frame{aspect-ratio:16/9}
.watcher-media-card .media-frame img{object-fit:contain}
.watcher-media-card figcaption{padding:10px 12px 12px}
.watcher-grid article[data-watcher]{min-width:0}


/* The Veilwatch canonical identity. Traced from the supplied wordmark and sigil.
   Custom title artwork remains an image; editorial typography harmonizes with it. */
:root{--veil-gold:#dfb476;--veil-gold-bright:#f6d29c;--veil-display:"Cinzel Decorative","Cinzel",Georgia,serif;--veil-heading:"Cinzel",Georgia,serif;--veil-reading:"Cormorant Garamond",Georgia,serif;--ink:#e8d9c2;--muted:#b5afa0;--line:#453d30;--green:var(--veil-gold);font-family:var(--veil-reading)}
body{font-family:var(--veil-reading);font-size:17px}
button,.utility,.primary,.text-link,.prime-command-pill,.eyebrow,.overline,.micro,.character-index,.studio,.visit-count,.chapter,cite,.series-stats span,footer,.watcher-media-label,.section-media-label,summary small{font-family:var(--veil-heading)}
.status-shell{border-bottom-color:rgba(219,173,103,.24)}
.wordmark{font-family:var(--veil-display);font-size:clamp(10px,1vw,14px);font-weight:700;letter-spacing:.08em;gap:10px;color:var(--veil-gold-bright);white-space:nowrap}
.wordmark .brand-emblem{width:40px;height:40px;display:block;object-fit:contain;flex:none}
.wordmark .brand-name{white-space:nowrap}
.hero-copy .veil-title{font-family:var(--veil-display);font-size:0!important;line-height:0;letter-spacing:0;margin:-14px 0 12px;width:min(100%,670px);font-weight:normal}
.hero-title-art{width:100%;height:auto;display:block;filter:drop-shadow(0 6px 22px rgba(202,142,73,.12))}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}
h2{font-family:var(--veil-display);font-weight:700;font-size:clamp(27px,3.05vw,49px);line-height:1.26;letter-spacing:.005em;text-transform:uppercase}
h2 em{font-style:normal;color:var(--veil-gold)}
h3,.record-number,summary strong,.chapter,.series-stats strong,.media-card figcaption strong,.artifact-label strong,.series-bottom p,blockquote{font-family:var(--veil-heading)}
h3{font-size:clamp(18px,1.65vw,24px);line-height:1.35;font-weight:600;color:#ead5b4}
.lead{font-family:var(--veil-heading);font-size:clamp(15px,1.35vw,21px);color:#f0d9b5}
.intro,.section-heading>p,article p,.record-body,.media-card figcaption span{font-family:var(--veil-reading);font-size:clamp(16px,1.15vw,19px);line-height:1.55;letter-spacing:.006em}
.intro{max-width:490px}
.primary{background:linear-gradient(135deg,#f0d39f,#d2a366);color:#25180b;font-size:11px;letter-spacing:.06em}
.primary:hover{background:#ffe2aa}
.eyebrow,.character-index,.section-media-label,.watcher-media-label{color:var(--veil-gold);font-weight:600}
.eyebrow>span{background:var(--veil-gold);box-shadow:0 0 12px #e1b67788}
.prime-command-pill a{font-size:10px;font-weight:600;letter-spacing:.025em}
.prime-command-pill a[aria-current=page]{border-color:#82623c;background:#2d2318;color:#f5d7a6}
.prime-command-pill a span{color:#c3a477}
.watcher-grid article,.records,.lore-grid,.series-stats{border-color:rgba(221,175,112,.23)}
.watcher-grid h3,.records summary strong{overflow-wrap:anywhere}
blockquote{color:#e8c894}
footer{color:#c9b18b}
@media(max-width:950px){.hero-copy .veil-title{margin:-8px 0 12px}.wordmark .brand-emblem{width:34px;height:34px}}
@media(max-width:640px){
 .wordmark{font-size:10px;gap:6px;letter-spacing:0}
 .wordmark .brand-emblem{width:30px;height:30px}
 .hero-copy .veil-title{margin:-10px 0 7px;width:min(100%,490px)}
 h2{font-size:clamp(24px,6.4vw,36px);line-height:1.27}
 h3{font-size:19px}
 .intro,.section-heading>p,article p,.record-body,.media-card figcaption span{font-size:16px;line-height:1.55}
 .lead{font-size:15px}
 .prime-command-pill a{font-size:8px;letter-spacing:0}
 .hero{padding-top:18px}
}
@media(prefers-reduced-motion:reduce){.hero-title-art{filter:none}}

/* Veilwatch Threshold: canonical Rory Ward compass. User-supplied artwork, no generic SVG. */
.artifact{isolation:isolate}
.artifact-halo{background:radial-gradient(ellipse,rgba(148,38,253,.24) 0,rgba(116,33,229,.1) 42%,transparent 71%);box-shadow:0 0 80px rgba(147,39,239,.1)}
.artifact .orbital{border-color:rgba(180,89,241,.23)}
.compass-stage{position:relative;z-index:1;width:100%;height:100%;overflow:visible;isolation:isolate;transform:translateZ(0)}
.compass-stage::before{content:"";position:absolute;inset:13% 12% 18%;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(169,49,255,.19),rgba(105,37,209,.09) 47%,transparent 73%);pointer-events:none}
.story-compass{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 20px 26px rgba(0,0,0,.55));animation:vw-compass-hover 7s ease-in-out infinite;transform-origin:49% 45%}
.compass-power-orbit{position:absolute;pointer-events:none;z-index:2;inset:7% 6% 14%;border-radius:50%;mix-blend-mode:screen;opacity:.67;mask-image:radial-gradient(closest-side,transparent 83%,#000 89%,#000 94%,transparent 98%);-webkit-mask-image:radial-gradient(closest-side,transparent 83%,#000 89%,#000 94%,transparent 98%);background:conic-gradient(from 8deg,transparent 0deg,rgba(246,171,255,.93) 19deg,transparent 40deg,transparent 75deg,rgba(157,38,255,.8) 97deg,transparent 130deg,transparent 181deg,rgba(234,140,255,.86) 199deg,transparent 221deg,transparent 291deg,rgba(197,67,255,.96) 310deg,transparent 336deg);animation:vw-compass-spin 8s linear infinite}
.compass-power-orbit--inner{inset:19% 18% 26%;opacity:.49;animation-duration:5.5s;animation-direction:reverse}
.compass-power-flow{position:absolute;z-index:3;display:block;pointer-events:none;mix-blend-mode:screen;opacity:.8;filter:drop-shadow(0 0 5px #a82bff);border-radius:50px}
.compass-power-flow--north,.compass-power-flow--south{left:48.25%;width:1.7%;height:28%;background:linear-gradient(180deg,transparent 8%,rgba(224,125,255,.08) 37%,rgba(253,215,255,.9) 49%,rgba(198,63,255,.2) 56%,transparent 71%);background-size:100% 255%;animation:vw-compass-flow-vertical 2.4s linear infinite}
.compass-power-flow--north{top:16.1%}.compass-power-flow--south{top:45%;animation-delay:-1.2s}
.compass-power-flow--east,.compass-power-flow--west{top:43.65%;height:1.5%;width:26%;background:linear-gradient(90deg,transparent 7%,rgba(236,152,255,.12) 36%,rgba(255,228,255,.88) 50%,rgba(184,49,255,.15) 58%,transparent 78%);background-size:255% 100%;animation:vw-compass-flow-horizontal 2.65s linear infinite}
.compass-power-flow--west{left:23%;animation-delay:-.9s}
.compass-power-flow--east{left:49%;animation-delay:-1.7s}
.compass-core-charge{position:absolute;z-index:4;top:44.55%;left:48.8%;width:11%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,255,255,.52) 0,rgba(233,119,255,.34) 22%,rgba(148,14,250,.14) 48%,transparent 72%);box-shadow:0 0 18px rgba(212,80,255,.5);pointer-events:none;mix-blend-mode:screen;animation:vw-compass-pulse 2.1s ease-in-out infinite}
.compass-power-spark{position:absolute;z-index:4;width:1.2%;aspect-ratio:1;border-radius:50%;background:#f7d3ff;box-shadow:0 0 9px 3px rgba(193,65,252,.8);mix-blend-mode:screen;pointer-events:none;animation:vw-compass-spark 3s ease-in-out infinite}
.compass-power-spark--one{left:25%;top:43%;animation-delay:-.65s}
.compass-power-spark--two{left:73%;top:45%;animation-delay:-1.5s}
.compass-power-spark--three{left:49%;top:16%;animation-delay:-2.3s}
.artifact-label{z-index:5}
@keyframes vw-compass-hover{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-1.2%,0)}}
@keyframes vw-compass-spin{to{transform:rotate(1turn)}}
@keyframes vw-compass-flow-vertical{from{background-position:0 195%}to{background-position:0 -65%}}
@keyframes vw-compass-flow-horizontal{from{background-position:195% 0}to{background-position:-65% 0}}
@keyframes vw-compass-pulse{0%,100%{opacity:.45;transform:translate(-50%,-50%) scale(.83)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.38)}}
@keyframes vw-compass-spark{0%,100%{opacity:.13;transform:scale(.62)}35%{opacity:1;transform:scale(1.5)}65%{opacity:.45;transform:scale(.83)}}
@media(max-width:640px){.compass-power-orbit{opacity:.55}.compass-power-flow{opacity:.68}.artifact-label{bottom:-23px}}
@media(prefers-reduced-motion:reduce){.story-compass,.compass-power-orbit,.compass-power-flow,.compass-core-charge,.compass-power-spark{animation:none!important}}

/* Veilwatch official Instagram CTA */
.series-bottom .veilwatch-follow{
  display:inline-flex;align-items:center;justify-content:center;gap:13px;
  min-height:52px;padding:12px 18px;
  border:1px solid rgba(255,226,166,.67);border-radius:5px;
  background:linear-gradient(125deg,#eed09b,#c89c5c 56%,#efce96);
  color:#25180d;font-family:var(--veil-heading,Georgia,serif);
  font-size:clamp(10px,.95vw,13px);font-weight:700;letter-spacing:.055em;
  text-transform:uppercase;white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 8px 25px rgba(10,6,2,.19);
  transition:background .2s ease,box-shadow .2s ease,transform .2s ease;
}
.series-bottom .veilwatch-follow:hover{
  background:linear-gradient(125deg,#ffe5b5,#e3b578 56%,#f9daa8);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.46),0 12px 30px rgba(194,136,63,.25);
  transform:translateY(-2px);
}
.series-bottom .veilwatch-follow:focus-visible{outline:2px solid #ffe5b5;outline-offset:4px}
.veilwatch-follow-icon{width:19px;height:19px;flex:none}
.veilwatch-follow-arrow{font-size:18px;line-height:1;margin-left:4px}
@media(max-width:400px){
 .series-bottom .veilwatch-follow{max-width:100%;gap:9px;padding:12px 13px;font-size:10px;letter-spacing:0}
 .veilwatch-follow-icon{width:17px;height:17px}
}
@media(prefers-reduced-motion:reduce){.series-bottom .veilwatch-follow{transition:none}.series-bottom .veilwatch-follow:hover{transform:none}}

/* Pair the Veilwatch Instagram and Facebook actions without disrupting the Series layout. */
.veilwatch-social-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:11px;min-width:0}
.series-bottom .veilwatch-follow-facebook{
 background:linear-gradient(145deg,rgba(68,48,28,.80),rgba(29,24,17,.91));
 color:#f2d39d;
 border-color:rgba(233,188,120,.62);
}
.series-bottom .veilwatch-follow-facebook:hover{
 background:linear-gradient(145deg,rgba(105,74,39,.92),rgba(56,40,25,.95));
 color:#ffe0ad;
 box-shadow:0 12px 30px rgba(194,136,63,.19),inset 0 1px 0 rgba(255,227,184,.16)
}
@media(max-width:900px) and (min-width:641px){
 .series-bottom{flex-wrap:wrap}
 .veilwatch-social-actions{justify-content:flex-start}
}
@media(max-width:640px){
 .veilwatch-social-actions{justify-content:flex-start;margin-top:14px;gap:9px}
 .series-bottom .veilwatch-follow{min-height:48px}
}
@media(max-width:400px){
 .veilwatch-social-actions{display:grid;grid-template-columns:minmax(0,1fr)}
 .series-bottom .veilwatch-follow{width:100%;justify-content:space-between}
}

/* CANON: Page 00 / Rory Ward's compass from the actual story artwork.
   The crystal star is the ONLY needle. The full engraved dial stays fixed.
   Both layers use the exact same original 1272x1237 artwork/canvas/pivot. */
.compass-stage {
  animation:vw-compass-hover 7s ease-in-out infinite;
  transform:translateZ(0);
}
.story-compass-base,.story-compass-needle {
  position:absolute;inset:0;width:100%;height:100%;display:block;
  object-fit:contain;pointer-events:none;user-select:none;-webkit-user-drag:none;
}
.story-compass-base {
  z-index:1;
  filter:drop-shadow(0 20px 26px rgba(0,0,0,.58));
}
.story-compass-needle {
  z-index:3;
  transform-origin:49.76% 44.46%;
  animation:vw-compass-crystal-seek 13s ease-in-out infinite;
  filter:drop-shadow(0 0 6px rgba(184,42,251,.38));
  will-change:transform;
}
@keyframes vw-compass-crystal-seek {
  0%,100% {transform:rotate(0deg)}
  35% {transform:rotate(16deg)}
  62% {transform:rotate(-8deg)}
}
/* Thin, irregular nebula smoke moves outside and around the rim.
   It must never wash out the face's source engravings. */
.compass-vapor{
  position:absolute;z-index:2;display:block;pointer-events:none;
  border-radius:50%;mix-blend-mode:screen;transform-origin:50% 50%;
  -webkit-mask-image:radial-gradient(closest-side,transparent 74%,#000 87%,#000 95%,transparent 100%);
  mask-image:radial-gradient(closest-side,transparent 74%,#000 87%,#000 95%,transparent 100%);
  will-change:transform,opacity;
}
.compass-vapor--outer {
  inset:-6% -6% -4%;
  background:conic-gradient(from 17deg,
    transparent 0deg,rgba(99,10,185,.08) 11deg,rgba(180,48,245,.37) 29deg,
    rgba(242,113,255,.39) 46deg,transparent 72deg,
    rgba(121,22,219,.34) 100deg,transparent 135deg,
    rgba(213,67,250,.42) 171deg,transparent 208deg,
    rgba(201,88,250,.38) 250deg,transparent 287deg,
    rgba(170,40,246,.38) 321deg,transparent 354deg);
  filter:blur(18px);opacity:.76;
  animation:vw-violet-vapor-orbit 19s ease-in-out infinite;
}
.compass-vapor--middle{
  inset:-2% -3% 0;
  background:conic-gradient(from 125deg,
    transparent 0deg,rgba(212,104,255,.4) 25deg,transparent 61deg,
    rgba(137,30,228,.45) 94deg,transparent 142deg,
    rgba(224,112,255,.42) 211deg,transparent 246deg,
    rgba(154,29,224,.38) 282deg,transparent 336deg);
  filter:blur(12px);opacity:.7;
  animation:vw-violet-vapor-return 13s ease-in-out infinite;
}
.compass-vapor--inner{
  inset:2% 1% 5%;
  background:conic-gradient(from 253deg,
    transparent 0deg,rgba(157,22,223,.4) 36deg,transparent 81deg,
    rgba(240,132,255,.37) 122deg,transparent 155deg,
    rgba(172,39,244,.42) 210deg,transparent 244deg,
    rgba(213,81,248,.38) 291deg,transparent 350deg);
  filter:blur(10px);opacity:.45;
  animation:vw-violet-vapor-orbit 9.5s ease-in-out infinite reverse;
}
@keyframes vw-violet-vapor-orbit{
  0%{transform:rotate(0deg) scale(.98);opacity:.5}
  28%{transform:rotate(91deg) scale(1.06,.96);opacity:.83}
  58%{transform:rotate(212deg) scale(.96,1.05);opacity:.55}
  82%{transform:rotate(294deg) scale(1.05,.98);opacity:.84}
  100%{transform:rotate(360deg) scale(.98);opacity:.5}
}
@keyframes vw-violet-vapor-return{
  0%{transform:rotate(360deg) scale(1,.96);opacity:.6}
  35%{transform:rotate(225deg) scale(1.06,1.02);opacity:.8}
  68%{transform:rotate(112deg) scale(.95,1.06);opacity:.5}
  100%{transform:rotate(0deg) scale(1,.96);opacity:.6}
}
/* Preserve existing light streaks, subtle enough to reveal the drawn filigree. */
.compass-power-orbit{opacity:.45}
.compass-power-orbit--inner{opacity:.32}
.compass-power-flow{opacity:.53}
.artifact-label{z-index:6;bottom:-60px}
@media(max-width:640px){
  .artifact{margin-bottom:90px}
  .artifact-label{bottom:-64px}
  .compass-vapor--outer{filter:blur(10px)}
  .compass-vapor--middle{filter:blur(8px)}
  .compass-vapor--inner{filter:blur(7px)}
  .story-compass-needle{will-change:auto}
}
@media(prefers-reduced-motion:reduce){
  .compass-stage,.story-compass-needle,.compass-vapor{animation:none!important}
  .story-compass-needle{transform:none}
}

/* Canonical Veilwatch social icons: shared between Threshold (00) and Series (05).
   Keep this module and both markup instances together during future page rebuilds. */
.veilwatch-social-bubbles{
 display:flex;flex-flow:row nowrap;align-items:center;justify-content:center;
 gap:clamp(10px,1.45vw,16px);width:max-content;max-width:100%;
}
.veilwatch-social-bubbles .veilwatch-social-bubble{
 box-sizing:border-box;position:relative;display:grid;place-items:center;
 flex:0 0 auto;width:clamp(44px,3.8vw,54px);height:clamp(44px,3.8vw,54px);
 border:1px solid rgba(245,210,156,.76);border-radius:50%;
 color:#f1d29a;
 background:radial-gradient(circle at 28% 18%,rgba(110,84,48,.76),rgba(24,20,17,.95) 74%);
 box-shadow:inset 0 1px 0 rgba(255,243,219,.18),0 8px 25px rgba(0,0,0,.33);
 text-decoration:none;
 -webkit-tap-highlight-color:transparent;
 transition:transform .2s ease,background .2s ease,box-shadow .2s ease,color .2s ease;
}
.veilwatch-social-bubbles .veilwatch-social-bubble svg{
 display:block;width:clamp(19px,2vw,24px);height:clamp(19px,2vw,24px);
}
.veilwatch-social-bubbles .veilwatch-social-bubble:hover{
 transform:translateY(-3px);color:#241709;
 background:linear-gradient(145deg,#ffe6b9,#d5a45c);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 9px 24px rgba(200,145,71,.26);
}
.veilwatch-social-bubbles .veilwatch-social-bubble:focus-visible{
 outline:2px solid #ffe4ab;outline-offset:4px;
}
#threshold.hero{padding-bottom:158px}
#threshold .veilwatch-home-bubbles{
 position:absolute;bottom:55px;left:50%;z-index:9;transform:translateX(-50%);
}
#series .veilwatch-follow-box{
 display:grid;justify-items:center;gap:16px;min-width:0;
 padding:12px 0;
}
#series .veilwatch-follow-box h3{
 margin:0;text-align:center;font-family:var(--veil-heading,Georgia,serif);
 font-size:clamp(12px,1.25vw,17px);font-weight:600;
 letter-spacing:.075em;text-transform:uppercase;color:#e9c38a;
}
#series .veilwatch-series-bubbles{justify-content:center}
@media(max-width:900px){
 #series .series-bottom{flex-wrap:wrap;justify-content:center}
 #series .veilwatch-follow-box{width:100%}
}
@media(max-width:640px){
 #threshold.hero{padding-bottom:148px}
 #threshold .veilwatch-home-bubbles{bottom:51px;gap:12px}
 #series .series-bottom{padding:24px 0;display:grid;justify-items:center;gap:18px}
 #series .series-bottom>p{text-align:center;margin:0}
 #series .veilwatch-follow-box{gap:15px}
 .veilwatch-social-bubbles .veilwatch-social-bubble{width:47px;height:47px}
 .veilwatch-social-bubbles .veilwatch-social-bubble svg{width:21px;height:21px}
}
@media(max-width:360px){
 #threshold .veilwatch-home-bubbles{gap:10px}
 .veilwatch-social-bubbles .veilwatch-social-bubble{width:44px;height:44px}
}
@media(prefers-reduced-motion:reduce){
 .veilwatch-social-bubbles .veilwatch-social-bubble{transition:none}
 .veilwatch-social-bubbles .veilwatch-social-bubble:hover{transform:none}
}

/* Runtime layer release for inactive compass animation. */
#primeViewport[data-paused="true"] .story-compass-needle,
#primeViewport[data-paused="true"] .compass-vapor,
#primeViewport[data-still="true"] .story-compass-needle,
#primeViewport[data-still="true"] .compass-vapor {
  will-change:auto!important;
}
