:root{color-scheme:dark;--ice:#eaf8ff;--blue:#93d7ff;--navy:#020e20}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#020a14;color:var(--ice);font-family:Georgia,'Times New Roman',serif;min-height:100vh}a{color:inherit}.scene{min-height:100svh;position:relative;isolation:isolate;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,rgba(0,5,18,.15),rgba(0,8,25,.16) 55%,rgba(0,6,18,.35)),url('assets/moonlit-landscape.webp') center center/cover no-repeat}.scene::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 32%,rgba(0,0,0,.27) 100%)}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;padding:1.5rem clamp(1rem,5vw,4.5rem);z-index:2}.brand{display:block;width:clamp(230px,38vw,475px);max-width:100%}.brand img{display:block;width:100%;height:auto;filter:drop-shadow(0 2px 7px #000)}.brand-tagline{text-align:center;font-family:Arial,sans-serif;font-size:clamp(.6rem,1vw,.85rem);letter-spacing:.09em;text-shadow:0 2px 6px #000;margin-top:-.1rem}.nav{display:flex;gap:clamp(1.5rem,4vw,4rem);padding-top:.55rem}.nav a{text-decoration:none;font-family:Arial,sans-serif;font-size:.73rem;letter-spacing:.33em;font-weight:700;text-shadow:0 2px 6px #000;padding:.3rem;border-bottom:1px solid transparent}.nav a:hover,.nav a[aria-current=page]{border-color:var(--blue);color:#fff}.hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:1rem 2rem 5rem}.hero .emblem{width:clamp(145px,23vw,280px);filter:drop-shadow(0 0 20px rgba(50,173,255,.5));margin:0 0 1.2rem auto;position:absolute;top:1%;right:clamp(2%,8vw,12%)}.intro{margin:6rem 2rem 0 auto;max-width:440px;padding:1.15rem 1.35rem;text-align:center;line-height:1.65;font-size:clamp(.9rem,1.25vw,1.08rem);background:transparent;border:0;box-shadow:none;text-shadow:0 2px 5px #000,0 0 12px #000,0 0 18px #000}.intro strong{display:block;font-size:1.15rem;margin-bottom:.35rem}.entry{margin:auto auto 2rem;text-align:center;text-decoration:none;font-family:Georgia,serif;font-style:italic;font-weight:bold;font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.1;text-transform:uppercase;text-shadow:0 0 6px #9acfff,0 0 18px #49a5f3,0 2px 4px #000;transform:rotate(-4deg);transition:transform .2s,color .2s}.entry:hover{transform:rotate(-4deg) scale(1.08);color:#bce9ff}.ghost{position:absolute;width:clamp(90px,15vw,210px);opacity:.62;filter:drop-shadow(0 0 14px rgba(179,231,255,.35));pointer-events:none}.ghost-left{bottom:14%;left:12%;transform:scaleX(-1) rotate(10deg)}.ghost-right{bottom:10%;right:14%;width:clamp(80px,12vw,170px)}footer{display:flex;gap:1rem 2.2rem;flex-wrap:wrap;align-items:center;padding:.8rem clamp(1rem,3vw,2rem);font: .8rem Arial,sans-serif;background:rgba(0,5,15,.44);text-shadow:0 2px 4px #000}footer a{text-decoration:none}footer a:hover{text-decoration:underline}.about-main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.4rem;padding:0 1rem 1.5rem}.photo{width:min(530px,70vw);position:relative;overflow:hidden;border-radius:50%;-webkit-mask-image:radial-gradient(ellipse,black 33%,transparent 72%);mask-image:radial-gradient(ellipse,black 33%,transparent 72%);opacity:.88;filter:drop-shadow(0 0 20px rgba(115,190,255,.25))}.photo img{display:block;width:100%;height:auto}.statement{font-family:Arial,sans-serif;text-align:center;font-weight:700;line-height:1.35;font-size:clamp(1.1rem,2vw,1.65rem);max-width:620px;text-shadow:0 2px 8px #000,0 0 15px #000;background:transparent;padding:.6rem 1rem}.about-actions{display:flex;justify-content:space-around;gap:2rem;width:min(760px,100%);margin-top:auto;padding:1.2rem 0}.about-actions a{font-size:clamp(1.1rem,2vw,1.65rem);font-weight:bold;letter-spacing:.16em;text-decoration:none;text-shadow:0 2px 8px #000,0 0 14px #000;border-bottom:1px solid #9ad8ff;padding:.5rem}.about-actions a:hover{color:var(--blue)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:700px){.scene{background-position:52% center}.topbar{align-items:center;flex-direction:column;padding:1.1rem}.brand{width:min(85vw,370px)}.nav{padding:.4rem 0;gap:2.5rem}.hero{padding:1rem 1rem 4rem}.hero .emblem{position:static;width:clamp(120px,33vw,180px);margin:0 0 .6rem auto}.intro{margin:.3rem auto 3rem;max-width:90vw}.entry{margin:auto auto 2rem}.ghost-left{left:2%;bottom:12%}.ghost-right{right:2%;bottom:12%}.photo{width:min(82vw,460px)}.about-main{padding-top:1.4rem}.about-actions{gap:1rem}.about-actions a{font-size:1rem;letter-spacing:.07em}footer{justify-content:center;text-align:center;font-size:.7rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Witch is positioned relative to the entire background scene, not the hero text. */
.moon-witch{position:absolute;z-index:1;width:clamp(110px,14vw,185px);height:auto;top:12%;left:83.5%;transform:translate(-50%,-50%);pointer-events:none;filter:drop-shadow(0 0 2px rgba(0,0,0,.4))}
/* Restore the small, spooky handwritten entrance lettering from the original. */
.entry{font-family:Papyrus,"Bradley Hand","Chalkduster",cursive;font-style:italic;font-weight:700;font-size:clamp(1.05rem,1.5vw,1.5rem);line-height:1.15;text-shadow:0 0 4px #fff,0 0 11px #78a9d9,0 2px 4px #000;transform:rotate(-6deg)}
.entry:hover{transform:rotate(-6deg) scale(1.07)}
@media(max-width:700px){.moon-witch{width:clamp(85px,21vw,145px);left:78%;top:17%}.entry{font-size:1.2rem}}

/* V5: witch aligned to the exact moon coordinates in the square landscape,
   regardless of how background-size: cover crops on each screen. */
.moon-aligned-layer{position:absolute;z-index:1;pointer-events:none;top:50%;left:50%;width:max(100%,100svh);aspect-ratio:1/1;transform:translate(-50%,-50%)}
.moon-aligned-layer .moon-witch{position:absolute;left:82.4%;top:24.7%;right:auto;width:14%;height:auto;transform:translate(-50%,-50%);filter:none;max-width:none}
.entry{font-size:initial;transform:none;display:block;width:clamp(110px,14vw,165px);filter:drop-shadow(0 0 5px #a9d9ff);line-height:0}
.entry img{width:100%;height:auto;display:block}
.entry:hover{transform:scale(1.07)}
@media(max-width:700px){.moon-aligned-layer .moon-witch{left:82.4%;top:24.7%;width:14%;transform:translate(-50%,-50%)}.entry{width:140px}}
