.aw{--aw-night:#181121;--aw-deep:#0f0a16;--aw-panel:#211932;--aw-line:#3a2f52;--aw-parch:#f4efe4;--aw-mist:#cfc6b8;--aw-gold:#c6a15b;color:var(--aw-parch);background:var(--aw-night);font-family:var(--font-body--family)}
.aw *,.aw *::before,.aw *::after{box-sizing:border-box}
.aw-wrap{width:min(1180px,calc(100% - 32px));margin-inline:auto}
.aw-section{padding-block:clamp(64px,9vw,120px)}
.aw-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.aw-eyebrow{font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--aw-gold);margin:0 0 1rem}
.aw-h2{font-family:var(--font-heading--family);font-weight:500;font-size:clamp(2rem,1.3rem + 2.4vw,3rem);line-height:1.06;letter-spacing:-.01em;color:var(--aw-parch);margin:0 0 .75rem;text-wrap:balance}
.aw-lede{color:var(--aw-mist);font-size:1.02rem;line-height:1.7;max-width:58ch;margin:0}
.aw-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;margin-bottom:clamp(28px,4vw,48px)}
.aw-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:48px;padding:.85rem 1.6rem;border-radius:999px;font-weight:600;font-size:.95rem;line-height:1;text-decoration:none;border:1px solid transparent;cursor:pointer;font-family:inherit;transition:background-color .25s ease,color .25s ease,border-color .25s ease}
.aw-btn--gold{background:var(--aw-gold);color:#14101f}
.aw-btn--gold:hover{background:#d8b878}
.aw-btn--ghost{border-color:rgba(244,239,228,.38);color:var(--aw-parch)}
.aw-btn--ghost:hover{border-color:var(--aw-gold);color:var(--aw-gold)}
.aw a:focus-visible,.aw button:focus-visible,.aw input:focus-visible{outline:2px solid var(--aw-gold);outline-offset:3px}
.aw-link{color:var(--aw-gold);text-decoration:none;font-weight:600;font-size:.9rem;white-space:nowrap}
.aw-link:hover{text-decoration:underline;text-underline-offset:4px}
.aw-hero{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(90% 80% at 76% 38%,#2b2040 0%,#181121 52%,#0f0a16 100%)}
.aw-stars{position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(1px 1px at 23px 41px,rgba(244,239,228,.8) 50%,transparent 52%),radial-gradient(1px 1px at 141px 87px,rgba(244,239,228,.55) 50%,transparent 52%),radial-gradient(1.5px 1.5px at 201px 18px,rgba(244,239,228,.7) 50%,transparent 52%),radial-gradient(1px 1px at 77px 173px,rgba(198,161,91,.8) 50%,transparent 52%),radial-gradient(1px 1px at 262px 148px,rgba(244,239,228,.5) 50%,transparent 52%);background-size:290px 220px;opacity:.75}
.aw-stars::after{content:'';position:absolute;inset:0;background-image:radial-gradient(1.5px 1.5px at 60px 90px,rgba(244,239,228,.9) 50%,transparent 52%),radial-gradient(1px 1px at 310px 40px,rgba(244,239,228,.7) 50%,transparent 52%),radial-gradient(1px 1px at 180px 250px,rgba(198,161,91,.9) 50%,transparent 52%);background-size:410px 330px;animation:aw-twinkle 6s ease-in-out infinite alternate}
@keyframes aw-twinkle{from{opacity:.25}to{opacity:1}}
.aw-hero__grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(32px,5vw,72px);min-height:clamp(600px,86vh,860px);padding-block:clamp(56px,7vw,96px)}
.aw-hero h1{font-family:var(--font-heading--family);font-weight:500;font-size:clamp(2.8rem,1.4rem + 5vw,5.4rem);line-height:.98;letter-spacing:-.02em;margin:0 0 1.25rem;color:var(--aw-parch);text-wrap:balance}
.aw-hero h1 em{font-style:italic;color:var(--aw-gold)}
.aw-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.aw-hero__facts{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;margin:2.25rem 0 0;padding:0;list-style:none;color:var(--aw-mist);font-size:.82rem}
.aw-hero__facts li::before{content:'\2726';color:var(--aw-gold);margin-right:.5rem;font-size:.7rem}
.aw-sky{display:grid;justify-items:center;gap:28px}
.aw-moon-wrap{position:relative;width:min(400px,78vw);aspect-ratio:1;animation:aw-moonrise 1.8s cubic-bezier(.2,.7,.2,1) both}
.aw-moon-wrap::before{content:'';position:absolute;inset:-18%;border-radius:50%;background:radial-gradient(circle,rgba(239,227,200,.2) 0%,rgba(198,161,91,.08) 38%,transparent 66%);z-index:-1}
.aw-moon{width:100%;height:100%;display:block;filter:drop-shadow(0 0 30px rgba(239,227,200,.12))}
.aw-almanac{width:min(400px,100%);margin:0;border-top:1px solid var(--aw-line)}
.aw-almanac>div{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:baseline;padding:.8rem 0;border-bottom:1px solid var(--aw-line)}
.aw-almanac dt{font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--aw-gold)}
.aw-almanac dd{margin:0;text-align:right;font-family:var(--font-heading--family);font-size:1.02rem;color:var(--aw-parch)}
.aw-almanac dd small{display:block;font-family:var(--font-body--family);font-size:.76rem;color:var(--aw-mist);margin-top:2px}
.aw-almanac a{color:inherit;text-decoration:none}
.aw-almanac a:hover{color:var(--aw-gold)}
.aw-reveal{animation:aw-rise 1.1s cubic-bezier(.2,.7,.2,1) both}
.aw-reveal--2{animation-delay:.12s}
.aw-reveal--3{animation-delay:.24s}
.aw-reveal--4{animation-delay:.36s}
@keyframes aw-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes aw-moonrise{from{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:none}}
.aw-paths__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.aw-path{position:relative;display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:4/5;overflow:hidden;border-radius:6px;padding:22px;text-decoration:none;color:var(--aw-parch);background:var(--aw-panel);isolation:isolate}
.aw-path img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transform:scale(1.16);transform-origin:50% 20%;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.aw-path::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(15,10,22,0) 14%,rgba(15,10,22,.78) 50%,rgba(15,10,22,.97) 100%)}
.aw-path:hover img{transform:scale(1.2)}
.aw-path__count{font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--aw-gold);margin-bottom:.5rem}
.aw-path h3{font-family:var(--font-heading--family);font-weight:500;font-size:1.5rem;line-height:1.1;margin:0 0 .4rem;color:var(--aw-parch)}
.aw-path p{margin:0;font-size:.88rem;line-height:1.5;color:var(--aw-mist)}
.aw-seasons{background:linear-gradient(180deg,#181121 0%,#140e1c 100%)}
.aw-wheel{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;list-style:none;margin:0;padding:0}
.aw-sabbat{position:relative;display:flex;flex-direction:column;height:100%;border:1px solid var(--aw-line);border-radius:6px;overflow:hidden;background:var(--aw-panel);text-decoration:none;color:var(--aw-parch);transition:border-color .25s ease,transform .25s ease}
a.aw-sabbat:hover{border-color:var(--aw-gold);transform:translateY(-2px)}
.aw-sabbat__img{aspect-ratio:4/3;background:#120c1a;overflow:hidden}
.aw-sabbat__img img{width:100%;height:100%;object-fit:cover;display:block}
.aw-sabbat__img--empty{display:grid;place-items:center;color:rgba(198,161,91,.42);font-size:2.6rem;background:radial-gradient(circle at 50% 55%,#231a35 0%,#120c1a 70%)}
.aw-sabbat__body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:.35rem;flex:1}
.aw-sabbat__when{font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--aw-gold)}
.aw-sabbat h3{font-family:var(--font-heading--family);font-weight:500;font-size:1.35rem;margin:0;color:var(--aw-parch)}
.aw-sabbat p{margin:0;font-size:.85rem;line-height:1.5;color:var(--aw-mist)}
.aw-sabbat__kit{margin-top:auto;padding-top:.6rem;display:flex;justify-content:space-between;gap:.75rem;font-size:.85rem;color:var(--aw-parch);border-top:1px solid var(--aw-line)}
.aw-sabbat__kit span:last-child{color:var(--aw-gold);white-space:nowrap}
.aw-sabbat__kit--soon span{color:var(--aw-mist)!important;font-style:italic}
.aw-sabbat__next{display:none;position:absolute;top:12px;left:12px;z-index:1;background:var(--aw-gold);color:#14101f;font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:.35rem .6rem;border-radius:999px}
.aw-sabbat.is-next{border-color:var(--aw-gold)}
.aw-sabbat.is-next .aw-sabbat__next{display:block}
.aw-notes__grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(32px,5vw,64px);align-items:start}
.aw-notes__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--aw-line)}
.aw-notes__list a{display:grid;grid-template-columns:1fr auto;gap:.25rem 1.5rem;padding:1.15rem 0;border-bottom:1px solid var(--aw-line);text-decoration:none;color:var(--aw-parch)}
.aw-notes__list strong{font-family:var(--font-heading--family);font-weight:500;font-size:1.2rem}
.aw-notes__list span{grid-column:1;color:var(--aw-mist);font-size:.88rem}
.aw-notes__list i{grid-column:2;grid-row:1 / span 2;align-self:center;font-style:normal;color:var(--aw-gold);transition:transform .25s ease}
.aw-notes__list a:hover strong{color:var(--aw-gold)}
.aw-notes__list a:hover i{transform:translateX(4px)}
.aw-ritual{background:var(--aw-panel);border:1px solid var(--aw-line);border-radius:8px;padding:clamp(24px,3vw,36px)}
.aw-ritual h3{font-family:var(--font-heading--family);font-weight:500;font-size:1.7rem;line-height:1.1;margin:0 0 .6rem;color:var(--aw-parch)}
.aw-ritual p{color:var(--aw-mist);font-size:.92rem;line-height:1.6;margin:0 0 1.25rem}
.aw-ritual__row{display:flex;flex-wrap:wrap;gap:.6rem}
.aw-ritual input[type=email]{flex:1 1 200px;min-height:48px;padding:.8rem 1.1rem;border-radius:999px;border:1px solid var(--aw-line);background:#15101e;color:var(--aw-parch);font:inherit}
.aw-ritual input::placeholder{color:#8f86a3}
.aw-ritual .aw-ritual__ok{color:var(--aw-parch)}
.aw-ritual .aw-ritual__fine{font-size:.75rem;margin:.9rem 0 0}
@media (max-width:989px){.aw-hero__grid{grid-template-columns:1fr;min-height:0}.aw-moon-wrap{width:min(300px,72vw)}.aw-paths__grid,.aw-wheel{grid-template-columns:repeat(2,1fr)}.aw-notes__grid{grid-template-columns:1fr}}
@media (max-width:599px){.aw-wheel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px}.aw-wheel>li{flex:0 0 78%;scroll-snap-align:start}.aw-path{aspect-ratio:3/4;padding:16px}.aw-path h3{font-size:1.2rem}.aw-path p{display:none}}
@media (prefers-reduced-motion:reduce){.aw-stars::after,.aw-reveal,.aw-moon-wrap{animation:none}.aw-path img,.aw-sabbat,.aw-notes__list i{transition:none}}
