/* ============================================================
   Anjali Devi — v9 "Issue 01"  (editorial magazine)
   ============================================================ */
:root{
  --paper:#f2ede2; --paper-2:#e9e2d2; --ink:#16140f; --soft:#4a463d;
  --accent:#e1483a; --line:rgba(22,20,15,.16);
  --display:"Fraunces",Georgia,serif; --sans:"Plus Jakarta Sans",system-ui,sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-font-smoothing:antialiased}
body{ font-family:var(--sans); background:var(--paper); color:var(--ink); overflow-x:hidden; cursor:none; }
@media(max-width:780px){ body{cursor:auto} }
a{color:inherit;text-decoration:none}
em{font-style:italic;color:var(--accent)}
.mono{font-family:var(--display);font-style:italic}
.dim{color:var(--soft)}
::selection{background:var(--accent);color:var(--paper)}

/* paper grain */
body::before{ content:""; position:fixed; inset:0; z-index:1; pointer-events:none; opacity:.5; mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.04'/%3E%3C/svg%3E"); }
main{position:relative;z-index:2}

/* cursor */
.cursor{ position:fixed; top:0; left:0; width:14px; height:14px; border:1.5px solid var(--ink); border-radius:50%; transform:translate(-50%,-50%); z-index:90; pointer-events:none; transition:width .25s,height .25s,background .25s; }
.cursor.big{ width:64px; height:64px; background:var(--accent); border-color:var(--accent); mix-blend-mode:normal; }
@media(max-width:780px){ .cursor{display:none} }

/* masthead */
.mast{ position:sticky; top:0; z-index:20; display:flex; justify-content:space-between; align-items:center;
  padding:1rem clamp(1.2rem,4vw,3rem); border-bottom:1px solid var(--ink); background:var(--paper);
  font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; }
.mast__name{ font-family:var(--display); font-weight:600; font-size:1.05rem; letter-spacing:0; text-transform:none; }

/* cover */
.cover{ display:grid; grid-template-columns:1.15fr .85fr; gap:2rem; align-items:center; min-height:88vh; padding:clamp(2rem,5vw,4rem) clamp(1.2rem,4vw,3rem); }
.kicker{ display:block; font-size:.82rem; letter-spacing:.14em; text-transform:uppercase; color:var(--accent); margin-bottom:1.4rem; }
.cover__title{ font-family:var(--display); font-weight:600; font-size:clamp(3.4rem,12vw,10rem); line-height:.86; letter-spacing:-.02em; }
.cover__title span{ display:block; }
.cover__stand{ font-family:var(--display); font-size:clamp(1.1rem,1.8vw,1.5rem); line-height:1.45; max-width:34ch; margin-top:1.8rem; color:var(--soft); }
.cover__scroll{ display:inline-block; margin-top:2rem; font-size:.82rem; letter-spacing:.1em; text-transform:uppercase; }
.cover__photo{ position:relative; aspect-ratio:3/4; overflow:hidden; }
.cover__photo img{ width:100%; height:100%; object-fit:cover; filter:grayscale(.2) contrast(1.05); }
.cover__photo figcaption{ position:absolute; bottom:.7rem; left:.7rem; color:var(--paper); font-size:.8rem; mix-blend-mode:difference; }
@media(max-width:820px){ .cover{ grid-template-columns:1fr; } .cover__photo{ aspect-ratio:4/3; order:-1; } }

/* image clip reveal */
.reveal-img img{ clip-path:inset(0 0 100% 0); transition:clip-path 1.1s var(--ease); }
.reveal-img.in img{ clip-path:inset(0 0 0% 0); }

/* ticker */
.ticker{ overflow:hidden; border-block:1px solid var(--ink); padding:.7rem 0; background:var(--ink); color:var(--paper); }
.ticker__t{ display:flex; gap:1.4rem; align-items:center; white-space:nowrap; width:max-content; animation:tick 30s linear infinite; font-family:var(--display); font-style:italic; font-size:1.5rem; }
.ticker__t b{ color:var(--accent); }
@keyframes tick{ to{ transform:translateX(-50%); } }

/* essay */
.essay{ padding:clamp(3rem,8vh,6rem) clamp(1.2rem,4vw,3rem); max-width:1100px; }
.folio{ display:block; font-size:.8rem; letter-spacing:.14em; text-transform:uppercase; color:var(--accent); margin-bottom:2rem; }
.folio.light{ color:var(--paper); }
.essay__lead{ font-family:var(--display); font-size:clamp(1.6rem,3.4vw,2.8rem); line-height:1.28; letter-spacing:-.01em; max-width:24ch; }
.drop{ float:left; font-family:var(--display); font-weight:600; font-size:5.2rem; line-height:.8; padding:.1em .12em 0 0; color:var(--accent); }
.essay__cols{ display:grid; grid-template-columns:1fr 1fr; gap:2.4rem; margin-top:2.6rem; font-size:1.02rem; line-height:1.7; color:var(--soft); max-width:760px; }
@media(max-width:680px){ .essay__cols{ grid-template-columns:1fr; } }

/* numbers spread */
.spread{ position:relative; background:var(--ink); color:var(--paper); padding:clamp(3rem,8vh,6rem) clamp(1.2rem,4vw,3rem); display:grid; grid-template-columns:1.2fr .8fr; gap:3rem; align-items:center; }
.spread__grid{ display:grid; grid-template-columns:1fr 1fr; gap:2.6rem 2rem; }
.fig__n{ display:block; font-family:var(--display); font-weight:500; font-size:clamp(3rem,7vw,5.6rem); line-height:.9; }
.fig__n i{ color:var(--accent); font-style:normal; }
.fig__l{ display:block; margin-top:.5rem; font-size:.95rem; color:rgba(242,237,226,.6); max-width:22ch; }
.spread__photo{ aspect-ratio:3/4; overflow:hidden; }
.spread__photo img{ width:100%; height:100%; object-fit:cover; filter:grayscale(.3) contrast(1.05); }
@media(max-width:820px){ .spread{ grid-template-columns:1fr; } .spread__photo{ display:none; } .spread__grid{ grid-template-columns:1fr 1fr; } }

/* pull quote */
.pull{ padding:clamp(3rem,9vh,7rem) clamp(1.2rem,4vw,3rem); text-align:center; }
.pull__q{ font-family:var(--display); font-weight:500; font-size:clamp(1.8rem,5vw,4rem); line-height:1.15; letter-spacing:-.01em; max-width:18ch; margin:0 auto; }

/* features (horizontal) */
.features{ overflow:hidden; }
.features__track{ display:flex; gap:0; will-change:transform; }
.feat{ flex:0 0 min(440px,86vw); padding:clamp(2.4rem,5vh,4rem) clamp(1.4rem,3vw,2.6rem); border-right:1px solid var(--line); min-height:80vh; display:flex; flex-direction:column; }
.feat--intro{ justify-content:center; background:var(--paper-2); }
.feat--intro h2{ font-family:var(--display); font-weight:600; font-size:clamp(2rem,4vw,3.2rem); line-height:1.05; margin:1rem 0; }
.feat__no{ font-size:.9rem; color:var(--accent); }
.feat h3{ font-family:var(--display); font-weight:600; font-size:1.9rem; margin:.8rem 0 .2rem; line-height:1.05; }
.feat__co{ font-size:.88rem; color:var(--soft); }
.feat ul{ list-style:none; margin-top:1.6rem; display:flex; flex-direction:column; gap:.8rem; }
.feat li{ font-size:1rem; line-height:1.5; color:var(--soft); padding-top:.8rem; border-top:1px solid var(--line); }
.feat b{ color:var(--ink); }
@media(max-width:780px){ .feat{ min-height:auto; } }

/* index */
.indexsec{ padding:clamp(3rem,8vh,6rem) clamp(1.2rem,4vw,3rem); max-width:1100px; }
.indexsec__cols{ display:grid; grid-template-columns:repeat(2,1fr); gap:2.4rem; }
.idx{ border-top:2px solid var(--ink); padding-top:1rem; }
.idx h4{ font-family:var(--display); font-weight:600; font-size:1.5rem; margin-bottom:.5rem; }
.idx p{ font-size:.98rem; line-height:1.6; color:var(--soft); }
.credentials{ margin-top:2.6rem; font-size:.95rem; line-height:1.8; color:var(--soft); border-top:1px solid var(--line); padding-top:1.4rem; }
.credentials b{ color:var(--ink); }
@media(max-width:680px){ .indexsec__cols{ grid-template-columns:1fr; } }

/* colophon */
.colophon{ display:grid; grid-template-columns:.8fr 1.2fr; gap:3rem; align-items:center; background:var(--ink); color:var(--paper); padding:clamp(3rem,8vh,6rem) clamp(1.2rem,4vw,3rem); }
.colophon__photo{ aspect-ratio:3/4; overflow:hidden; }
.colophon__photo img{ width:100%; height:100%; object-fit:cover; filter:grayscale(.25); }
.colophon__title{ font-family:var(--display); font-weight:600; font-size:clamp(2.2rem,6vw,4.6rem); line-height:1; }
.colophon__mail{ display:inline-block; margin-top:1.8rem; font-family:var(--display); font-style:italic; font-size:clamp(1.2rem,3vw,2rem); border-bottom:1px solid var(--accent); }
.colophon__links{ display:flex; gap:1.8rem; margin-top:1.6rem; font-size:.95rem; color:rgba(242,237,226,.7); }
.colophon__links a:hover{ color:var(--paper); }
@media(max-width:820px){ .colophon{ grid-template-columns:1fr; } .colophon__photo{ max-width:320px; } }

/* footer */
.foot{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; padding:2rem clamp(1.2rem,4vw,3rem); border-top:1px solid var(--ink); font-size:.82rem; }
.footer__versions{ display:flex; flex-wrap:wrap; gap:.4rem .8rem; align-items:center; }
.footer__vlabel{ color:var(--soft); }
.footer__versions a:hover{ color:var(--accent); }
.footer__versions a.is-current{ color:var(--accent); font-weight:700; }

/* reveal */
.reveal{ opacity:0; transform:translateY(26px); }
.reveal.in{ opacity:1; transform:none; transition:opacity .8s var(--ease), transform .8s var(--ease); }
@media (prefers-reduced-motion:reduce){ *{animation:none!important;transition:none!important} .reveal,.reveal-img img{opacity:1;transform:none;clip-path:none} }
