/* ============================================================
   SORTE DRÅPE — Official Website
   Palette: void black · charcoal · ash · bone · ancient silver
            + barely-there ember crimson
   Type:    Cinzel Decorative (display) · Cinzel (labels)
            Cormorant Garamond (body)
   ============================================================ */

:root{
  --bg:#060607;
  --bg2:#0b0b0d;
  --charcoal:#101014;
  --charcoal2:#15151a;
  --line:rgba(194,190,173,.13);
  --line2:rgba(194,190,173,.32);
  --ash:#8f8c82;
  --ash2:#a9a69a;
  --bone:#e7e2d3;
  --silver:#c2bead;
  --crimson:#571317;
  --crimson2:#7c1c22;
  --fd:'Cinzel Decorative','Cinzel',serif;
  --fl:'Cinzel',serif;
  --fb:'Cormorant Garamond',Georgia,serif;
  --ease:cubic-bezier(.16,1,.3,1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html:focus-within{scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--ash2);
  font-family:var(--fb);
  font-size:1.145rem;
  line-height:1.95;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
  min-height:100vh;
}
img,svg,iframe{max-width:100%;display:block}
a{color:var(--silver);text-decoration:none;transition:color .5s var(--ease)}
a:hover{color:var(--bone)}
::selection{background:#2a0a0d;color:var(--bone)}
:focus-visible{outline:1px solid var(--silver);outline-offset:4px}

/* ---- atmosphere layers ---------------------------------- */
#fx{position:fixed;inset:0;z-index:0;pointer-events:none}
.moon{
  position:fixed;inset:0;z-index:1;pointer-events:none;
  background:
    radial-gradient(640px 420px at 72% -8%, rgba(196,202,216,.10), transparent 62%),
    radial-gradient(1400px 900px at 50% 118%, rgba(70,12,16,.075), transparent 62%);
}
.grain{
  position:fixed;inset:-40px;z-index:60;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E");
  background-size:240px 240px;
}
.veil{
  position:fixed;inset:0;z-index:70;background:var(--bg);
  opacity:0;pointer-events:none;transition:opacity 1.1s var(--ease);
}
.veil.on{opacity:1}

main{position:relative;z-index:2}

/* ---- navigation ------------------------------------------ */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:40;
  display:flex;align-items:center;justify-content:center;gap:2.6rem;
  padding:1.7rem 1.5rem;
  padding-top:calc(1.7rem + env(safe-area-inset-top,0px));
  transition:background 1s var(--ease), padding .8s var(--ease);
}
.nav.scrolled{
  padding:1.05rem 1.5rem;
  padding-top:calc(1.05rem + env(safe-area-inset-top,0px));
  background:linear-gradient(180deg, rgba(6,6,7,.92), rgba(6,6,7,.72) 70%, transparent);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.nav a{
  font-family:var(--fl);font-size:.68rem;font-weight:500;
  letter-spacing:.38em;text-transform:uppercase;color:var(--ash);
  padding:.5rem 0;position:relative;
}
.nav a::after{
  content:"";position:absolute;left:50%;bottom:.1rem;height:1px;width:0;
  background:linear-gradient(90deg,transparent,var(--crimson2),transparent);
  transition:width .7s var(--ease), left .7s var(--ease);
}
.nav a:hover,.nav a[aria-current="page"]{color:var(--bone)}
.nav a:hover::after,.nav a[aria-current="page"]::after{width:100%;left:0}
.nav .sigil-link{padding:.2rem .1rem}
.nav .sigil-link::after{display:none}
.nav .sigil-link svg{width:15px;height:22px;opacity:.8;transition:opacity .5s}
.nav .sigil-link:hover svg{opacity:1}

.menu-btn{
  display:none;font-family:var(--fl);font-size:.68rem;letter-spacing:.38em;
  text-transform:uppercase;color:var(--ash);background:none;border:0;cursor:pointer;
  padding:.6rem .4rem;
}
.menu-btn:hover{color:var(--bone)}

.menu{
  position:fixed;inset:0;z-index:80;background:rgba(4,4,5,.97);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.9rem;
  opacity:0;visibility:hidden;transition:opacity .8s var(--ease),visibility .8s;
}
.menu.open{opacity:1;visibility:visible}
.menu a{
  font-family:var(--fl);font-size:1.05rem;letter-spacing:.44em;
  text-transform:uppercase;color:var(--ash2);
}
.menu a:hover{color:var(--bone)}
.menu .close{
  position:absolute;top:1.6rem;right:1.8rem;background:none;border:0;
  color:var(--ash);font-family:var(--fl);font-size:.7rem;letter-spacing:.35em;
  cursor:pointer;padding:.6rem;
}
.menu .close:hover{color:var(--bone)}
body.lock{overflow:hidden}

/* ---- hero ------------------------------------------------- */
.hero{
  position:relative;min-height:100vh;min-height:100dvh;
  display:grid;place-items:center;text-align:center;
  padding:2rem 1.5rem;overflow:hidden;
}
.hero-inner{position:relative;z-index:2}
.hero .sigil{width:clamp(46px,7vw,64px);margin:0 auto 2.6rem;opacity:0;animation:sigilIn 3.4s var(--ease) .3s forwards}
.hero h1{
  font-family:var(--fd);font-weight:400;
  font-size:clamp(2rem,7.4vw,4.6rem);
  letter-spacing:clamp(.18em,2vw,.34em);
  text-indent:clamp(.18em,2vw,.34em);
  color:var(--bone);
  opacity:0;filter:blur(8px);
  animation:riseIn 3.2s var(--ease) .9s forwards;
  text-shadow:0 0 60px rgba(231,226,211,.08);
}
.hero .tagline{
  margin-top:1.7rem;
  font-family:var(--fl);font-size:clamp(.62rem,1.6vw,.76rem);font-weight:400;
  letter-spacing:.5em;text-indent:.5em;text-transform:uppercase;color:var(--ash);
  opacity:0;animation:fadeIn 2.6s var(--ease) 2.3s forwards;
}
.hero .enter{margin-top:3.6rem;opacity:0;animation:fadeIn 2.6s var(--ease) 3.1s forwards}
.hero-hint{
  position:absolute;bottom:2.2rem;left:50%;transform:translateX(-50%);
  width:1px;height:52px;overflow:hidden;opacity:0;animation:fadeIn 2s var(--ease) 4s forwards;
}
.hero-hint::after{
  content:"";position:absolute;top:-52px;left:0;width:1px;height:52px;
  background:linear-gradient(180deg,transparent,var(--silver));
  animation:drip 3.4s var(--ease) infinite;
}
@keyframes sigilIn{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
@keyframes riseIn{from{opacity:0;filter:blur(8px);transform:scale(1.03)}to{opacity:1;filter:blur(0);transform:none}}
@keyframes fadeIn{to{opacity:1}}
@keyframes drip{0%{top:-52px}55%{top:52px}100%{top:52px}}

/* ---- buttons --------------------------------------------- */
.btn{
  display:inline-block;padding:1.05rem 3.4rem;
  border:1px solid var(--line2);color:var(--bone);
  font-family:var(--fl);font-size:.72rem;font-weight:500;
  letter-spacing:.46em;text-indent:.46em;text-transform:uppercase;
  background:rgba(10,10,12,.25);cursor:pointer;
  transition:border-color .7s var(--ease),background .7s var(--ease),box-shadow .9s var(--ease);
}
.btn:hover{
  border-color:var(--silver);color:var(--bone);
  background:rgba(20,20,24,.45);
  box-shadow:0 0 34px rgba(124,28,34,.14), inset 0 0 22px rgba(194,190,173,.04);
}

/* ---- shared marks ---------------------------------------- */
.divider{display:flex;align-items:center;justify-content:center;gap:1.1rem;margin:2.1rem auto}
.divider::before,.divider::after{content:"";height:1px;width:min(72px,18vw);background:linear-gradient(90deg,transparent,var(--line2))}
.divider::after{background:linear-gradient(90deg,var(--line2),transparent)}
.divider svg{width:11px;height:17px;opacity:.85}

/* ---- home scenes ----------------------------------------- */
.scene{
  position:relative;min-height:80vh;overflow:hidden;
  display:grid;place-items:center;text-align:center;
  padding:6.5rem 1.5rem;
}
.scene-art{position:absolute;inset:0;z-index:0;pointer-events:none}
.scene-art svg{position:absolute;bottom:-2px;left:50%;width:170%;min-width:1500px;transform:translateX(-50%)}
.scene-art .far{opacity:.55;filter:blur(2.5px);animation:driftA 90s ease-in-out infinite alternate}
.scene-art .near{opacity:.92;animation:driftB 70s ease-in-out infinite alternate}
.scene-art .haze{
  position:absolute;left:0;right:0;bottom:0;height:46%;
  background:linear-gradient(180deg,transparent,rgba(150,152,160,.05) 45%,rgba(6,6,7,.9));
}
@keyframes driftA{from{transform:translateX(-52%)}to{transform:translateX(-48%)}}
@keyframes driftB{from{transform:translateX(-49%)}to{transform:translateX(-51%)}}
.scene-inner{position:relative;z-index:2;max-width:760px}
.scene .kicker{
  font-family:var(--fl);font-size:.66rem;letter-spacing:.5em;text-indent:.5em;
  text-transform:uppercase;color:var(--ash);margin-bottom:1.6rem;
}
.scene h2{
  font-family:var(--fd);font-weight:400;color:var(--bone);
  font-size:clamp(1.45rem,4.6vw,2.7rem);
  letter-spacing:.16em;text-indent:.16em;line-height:1.5;
}
.scene p{margin:1.8rem auto 0;max-width:52ch;color:var(--ash2);font-size:1.16rem}
.scene .btn{margin-top:2.9rem}

/* ---- inner pages ----------------------------------------- */
.page{padding:10.5rem 1.5rem 6rem;position:relative}
.page-head{text-align:center;margin-bottom:4.2rem}
.page-head h1{
  font-family:var(--fd);font-weight:400;color:var(--bone);
  font-size:clamp(1.9rem,6vw,3.4rem);
  letter-spacing:.3em;text-indent:.3em;
}
.page-head .sub{
  margin-top:1.4rem;font-family:var(--fl);font-size:.66rem;
  letter-spacing:.44em;text-indent:.44em;text-transform:uppercase;color:var(--ash);
}
.wrap{max-width:720px;margin:0 auto}
.wrap-wide{max-width:1060px;margin:0 auto}

.prose p{margin-bottom:1.7em}
.prose .lead::first-letter{
  font-family:var(--fd);font-size:3.1em;float:left;
  line-height:.86;padding:.06em .12em 0 0;color:var(--bone);
}
.prose em{color:var(--silver);font-style:italic}
.prose .oath{
  margin-top:2.6rem;text-align:center;color:var(--bone);
  font-family:var(--fl);font-size:.95rem;letter-spacing:.3em;text-indent:.3em;
  text-transform:uppercase;line-height:2.3;
}

/* ---- news ------------------------------------------------- */
.article{
  border:1px solid var(--line);background:linear-gradient(180deg,rgba(16,16,20,.55),rgba(9,9,11,.55));
  padding:3.4rem clamp(1.4rem,5vw,3.6rem);text-align:center;
}
.article + .article{margin-top:2.4rem}
.article time{
  font-family:var(--fl);font-size:.62rem;letter-spacing:.5em;text-indent:.5em;
  text-transform:uppercase;color:var(--ash);
}
.article h2{
  margin-top:1.3rem;font-family:var(--fd);font-weight:400;color:var(--bone);
  font-size:clamp(1.25rem,3.6vw,1.9rem);letter-spacing:.14em;line-height:1.6;
}
.article .body{margin-top:1.9rem}
.article .body p{margin-bottom:.4em}
.article .chant p{
  font-family:var(--fl);font-size:.8rem;letter-spacing:.34em;text-indent:.34em;
  text-transform:uppercase;color:var(--silver);line-height:2.6;margin:0;
}

/* ---- discography / embeds -------------------------------- */
.release{
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(16,16,20,.55),rgba(9,9,11,.55));
  padding:2.1rem;max-width:620px;margin:0 auto;
}
.release .tag{
  font-family:var(--fl);font-size:.6rem;letter-spacing:.5em;text-indent:.5em;
  text-transform:uppercase;color:var(--ash);text-align:center;
}
.release h2{
  margin:.9rem 0 1.7rem;text-align:center;font-family:var(--fd);font-weight:400;
  color:var(--bone);font-size:clamp(1.2rem,3.4vw,1.7rem);letter-spacing:.2em;text-indent:.2em;
}
.release iframe,.follow iframe{border:0;width:100%;background:transparent}
.follow{max-width:620px;margin:0 auto;text-align:center}
.follow iframe{margin-top:2.2rem}
.follow .out{margin-top:2rem}
.section-gap{margin-top:6.5rem}

/* ---- grids (videos / gallery) ----------------------------- */
.grid{display:grid;gap:1.6rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.video{border:1px solid var(--line);background:var(--bg2);aspect-ratio:16/9;position:relative}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.g-item{border:1px solid var(--line);background:var(--bg2);aspect-ratio:4/5;overflow:hidden;cursor:pointer;padding:0}
.g-item img{width:100%;height:100%;object-fit:cover;filter:grayscale(.2) contrast(1.02);transition:transform 2.5s var(--ease),filter 1.2s}
.g-item:hover img{transform:scale(1.045);filter:grayscale(0)}

.empty{
  border:1px solid var(--line);padding:4.6rem 2rem;text-align:center;
  background:linear-gradient(180deg,rgba(16,16,20,.4),rgba(9,9,11,.4));
}
.empty .rune{width:15px;margin:0 auto 1.8rem;opacity:.8}
.empty p{max-width:44ch;margin:0 auto;color:var(--ash2)}
.empty .note{
  margin-top:1.2rem;font-family:var(--fl);font-size:.62rem;letter-spacing:.42em;
  text-indent:.42em;text-transform:uppercase;color:var(--ash);
}

/* ---- lightbox --------------------------------------------- */
.lightbox{
  position:fixed;inset:0;z-index:90;background:rgba(3,3,4,.96);
  display:grid;place-items:center;opacity:0;visibility:hidden;
  transition:opacity .7s var(--ease),visibility .7s;
}
.lightbox.open{opacity:1;visibility:visible}
.lightbox img{max-width:92vw;max-height:86vh;object-fit:contain}
.lightbox button{
  position:absolute;background:none;border:0;color:var(--ash);cursor:pointer;
  font-family:var(--fl);letter-spacing:.3em;font-size:.7rem;padding:1rem;
}
.lightbox button:hover{color:var(--bone)}
.lb-close{top:1.2rem;right:1.4rem}
.lb-prev{left:.6rem;top:50%;transform:translateY(-50%)}
.lb-next{right:.6rem;top:50%;transform:translateY(-50%)}

/* ---- forms ------------------------------------------------ */
.form{display:grid;gap:1.5rem;text-align:left}
.field label{
  display:block;font-family:var(--fl);font-size:.62rem;letter-spacing:.42em;
  text-transform:uppercase;color:var(--ash);margin-bottom:.7rem;
}
.field input,.field textarea{
  width:100%;background:rgba(9,9,11,.7);border:1px solid var(--line);
  color:var(--bone);font-family:var(--fb);font-size:1.08rem;line-height:1.7;
  padding:1rem 1.1rem;transition:border-color .6s var(--ease),box-shadow .8s var(--ease);
}
.field textarea{min-height:190px;resize:vertical}
.field input:focus,.field textarea:focus{
  outline:none;border-color:var(--line2);
  box-shadow:0 0 26px rgba(194,190,173,.05);
}
.form .btn{justify-self:center;margin-top:.6rem}
.hidden-field{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}

.nl{display:flex;gap:.9rem;max-width:520px;margin:2.6rem auto 0;flex-wrap:wrap;justify-content:center}
.nl input{
  flex:1 1 260px;background:rgba(9,9,11,.7);border:1px solid var(--line);
  color:var(--bone);font-family:var(--fb);font-size:1.05rem;padding:.95rem 1.1rem;
}
.nl input:focus{outline:none;border-color:var(--line2)}
.nl .btn{padding:.95rem 2.2rem}

.form-success{display:none;text-align:center;padding:2.5rem 1rem}
.form-success.show{display:block;animation:fadeIn 1.4s var(--ease) forwards}
.form-success .drop-draw{width:52px;margin:0 auto 1.9rem}
.form-success .drop-draw path{
  stroke:var(--silver);stroke-width:1.4;fill:none;
  stroke-dasharray:1;stroke-dashoffset:1;
}
.form-success.show .drop-draw path{animation:draw 2.4s var(--ease) .2s forwards}
.form-success .drop-draw .core{fill:var(--crimson2);opacity:0}
.form-success.show .drop-draw .core{animation:fadeIn 1.6s var(--ease) 1.8s forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.form-success h2{
  font-family:var(--fd);font-weight:400;color:var(--bone);
  font-size:1.25rem;letter-spacing:.22em;text-indent:.22em;
}
.form-success p{margin-top:1rem;color:var(--ash2)}

.contact-line{text-align:center;margin-bottom:3.4rem}
.contact-line .mail{
  font-family:var(--fl);font-size:clamp(.7rem,2.6vw,.9rem);
  letter-spacing:.22em;color:var(--silver);border-bottom:1px solid var(--line2);
  padding-bottom:.35rem;
}
.contact-line .mail:hover{color:var(--bone);border-color:var(--silver)}

/* ---- coming soon ------------------------------------------ */
.coming{text-align:center;padding:2.5rem 0 1rem}
.coming h2{
  font-family:var(--fd);font-weight:400;color:var(--bone);
  font-size:clamp(1.7rem,6vw,3rem);letter-spacing:.3em;text-indent:.3em;
}
.coming p{margin:1.8rem auto 0;max-width:46ch}

/* ---- footer ----------------------------------------------- */
footer{
  position:relative;z-index:2;margin-top:5rem;
  border-top:1px solid var(--line);
  padding:4.2rem 1.5rem 3rem;text-align:center;
}
footer .sigil{width:14px;margin:0 auto 2rem;opacity:.85}
.social{display:flex;flex-wrap:wrap;justify-content:center;gap:1.1rem 2.2rem;margin-bottom:2.4rem}
.social a{
  font-family:var(--fl);font-size:.62rem;letter-spacing:.4em;text-indent:.4em;
  text-transform:uppercase;color:var(--ash);
}
.social a:hover{color:var(--bone)}
.copy{font-family:var(--fl);font-size:.6rem;letter-spacing:.36em;text-indent:.36em;text-transform:uppercase;color:#5c5a53}
.ambience{
  margin-top:2.2rem;background:none;border:0;cursor:pointer;
  font-family:var(--fl);font-size:.56rem;letter-spacing:.4em;text-indent:.4em;
  text-transform:uppercase;color:#54524b;padding:.6rem;
}
.ambience:hover{color:var(--ash2)}

/* ---- reveal ----------------------------------------------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity 1.7s var(--ease),transform 1.7s var(--ease)}
.reveal.in{opacity:1;transform:none}

/* ---- 404 -------------------------------------------------- */
.lost{min-height:100vh;min-height:100dvh;display:grid;place-items:center;text-align:center;padding:2rem}
.lost h1{font-family:var(--fd);font-weight:400;color:var(--bone);font-size:clamp(1.4rem,5vw,2.4rem);letter-spacing:.22em;line-height:1.7}
.lost p{margin-top:1.4rem;color:var(--ash2)}
.lost .btn{margin-top:2.8rem}

/* ---- responsive ------------------------------------------- */
@media (max-width:920px){
  .nav{justify-content:space-between;padding-inline:1.4rem}
  .nav .links{display:none}
  .menu-btn{display:block}
}
@media (max-width:560px){
  body{font-size:1.08rem}
  .page{padding-top:8rem;padding-bottom:4.5rem}
  .btn{padding:1rem 2.4rem;letter-spacing:.36em;text-indent:.36em}
  .release{padding:1.4rem}
  .scene{min-height:66vh;padding:4.5rem 1.2rem}
  .scene .btn{margin-top:2.2rem}
  .hero .enter{margin-top:2.9rem}
  .page-head{margin-bottom:3rem}
  .social{gap:1rem 1.6rem}
  footer{padding:3.4rem 1.2rem 2.4rem;margin-top:3.5rem}
  .section-gap{margin-top:4.5rem}
}

/* ---- reduced motion --------------------------------------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .hero h1,.hero .tagline,.hero .enter,.hero .sigil{opacity:1;filter:none;transform:none}
  .reveal{opacity:1;transform:none}
  .hero-hint{display:none}
}

/* ---- addenda ---------------------------------------------- */
.nav .links{display:flex;align-items:center;gap:2.6rem}
.tag{
  font-family:var(--fl);font-size:.6rem;letter-spacing:.5em;text-indent:.5em;
  text-transform:uppercase;color:var(--ash);text-align:center;
}
.follow h2{
  margin:.9rem 0 0;font-family:var(--fd);font-weight:400;color:var(--bone);
  font-size:clamp(1.2rem,3.4vw,1.7rem);letter-spacing:.2em;text-indent:.2em;
}
.follow .hint{margin-top:1.2rem;font-size:1.02rem;color:var(--ash)}
.article .chant{margin:1.6rem 0}
.release iframe{border-radius:12px;overflow:hidden}
.nl-sec{text-align:center;margin-top:5.5rem}
.nl-sec .hint{margin-top:1.1rem;color:var(--ash2)}
.pv-note{
  position:fixed;left:50%;bottom:.9rem;transform:translateX(-50%);z-index:65;
  font-family:var(--fl);font-size:.52rem;letter-spacing:.34em;text-indent:.34em;
  text-transform:uppercase;color:#4b4943;pointer-events:none;white-space:nowrap;
}

/* ---- the sigil: burning background ------------------------ */
.sigil-bg{position:fixed;inset:0;z-index:1;display:grid;place-items:center;pointer-events:none}
.sigil-wrap{
  position:relative;height:min(76vh,700px);aspect-ratio:2/3;will-change:opacity,transform;
  --front:0%;--burn:0;--sheen:-25%;--sheenA:0;
}
.sigil-wrap img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:contain;
  user-select:none;
}
.s-base{opacity:.88}
.s-glow{
  opacity:calc(var(--burn)*.85);transform:scale(1.035);
  -webkit-mask-image:linear-gradient(to bottom,transparent calc(var(--front) - 20%),#000 calc(var(--front) - 6%),#000 calc(var(--front) + 6%),transparent calc(var(--front) + 20%));
  mask-image:linear-gradient(to bottom,transparent calc(var(--front) - 20%),#000 calc(var(--front) - 6%),#000 calc(var(--front) + 6%),transparent calc(var(--front) + 20%));
}
.s-glint{
  opacity:var(--burn);filter:brightness(1.18);
  -webkit-mask-image:linear-gradient(to bottom,transparent calc(var(--front) - 9%),#000 calc(var(--front) - 3%),#000 calc(var(--front) + 3%),transparent calc(var(--front) + 9%));
  mask-image:linear-gradient(to bottom,transparent calc(var(--front) - 9%),#000 calc(var(--front) - 3%),#000 calc(var(--front) + 3%),transparent calc(var(--front) + 9%));
}
.s-sheen{
  opacity:var(--sheenA);filter:brightness(1.25);
  -webkit-mask-image:linear-gradient(115deg,transparent calc(var(--sheen) - 14%),#000 calc(var(--sheen) - 3%),#000 calc(var(--sheen) + 3%),transparent calc(var(--sheen) + 14%));
  mask-image:linear-gradient(115deg,transparent calc(var(--sheen) - 14%),#000 calc(var(--sheen) - 3%),#000 calc(var(--sheen) + 3%),transparent calc(var(--sheen) + 14%));
}
@media (max-width:560px){.sigil-wrap{height:64vh}}
@media (prefers-reduced-motion:reduce){
  .s-glow,.s-glint,.s-sheen{display:none}
  .s-base{opacity:.92}
  .sigil-wrap{opacity:.45}
}

/* ---- fixed mountain horizon ------------------------------- */
:root{--gold:#c9a45c;--gold2:#f0d492}
.mtns{position:fixed;left:0;right:0;bottom:0;height:40vh;z-index:1;pointer-events:none;overflow:hidden}
.mtns svg{position:absolute;bottom:-2px;left:50%;width:175%;min-width:1500px;transform:translateX(-50%)}
.mtns .far{opacity:.75;filter:blur(3px);animation:driftA 110s ease-in-out infinite alternate}
.mtns .near{opacity:.95;animation:driftB 85s ease-in-out infinite alternate}
.mtns .haze{
  position:absolute;left:0;right:0;bottom:0;height:70%;
  background:linear-gradient(180deg,transparent,rgba(150,152,160,.045) 40%,rgba(6,6,7,.92));
}
@media (prefers-reduced-motion:reduce){.mtns .far,.mtns .near{animation:none}}
.form-success .drop-draw path{stroke:var(--gold)}
.form-success .drop-draw .core{fill:var(--crimson2)}

/* the mark is now 1:2 (staff · drop · crescent) */
.nav .sigil-link svg{width:12px;height:24px}
footer .sigil{width:13px;height:26px}
.divider svg{width:10px;height:20px}
.empty .rune{width:14px;height:28px}
.form-success .drop-draw{width:46px;height:92px}
.form-success .drop-draw path:nth-of-type(1){animation-delay:.1s}
.form-success .drop-draw path:nth-of-type(2){animation-delay:.7s}
.form-success .drop-draw path:nth-of-type(3){animation-delay:1.2s}
