:root{
    --ink:#1c1510;
    --paper:#e9e0cc;
    --paper-soft:#efe7d6;
    --oxblood:#5a1414;
    --oxblood-lit:#7e1d18;
    --brass:#9c7328;
    --brass-lit:#bd8f3b;
    --night:#100c09;
    --display:'Fraunces',Georgia,serif;
    --eng:'Cormorant Garamond',Georgia,serif;
    --ar:'Amiri',serif;
    --kufi:'Reem Kufi',sans-serif;
    --mono:'Spline Sans Mono',monospace;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{background:var(--paper);color:var(--ink);font-family:var(--eng);-webkit-font-smoothing:antialiased;overflow-x:hidden}
  .label{font-family:var(--mono);font-size:.6rem;letter-spacing:.34em;text-transform:uppercase}
  .ar{font-family:var(--ar);direction:rtl}
  ::selection{background:var(--oxblood);color:var(--paper)}

  .hero{position:relative;height:100vh;background:var(--night);color:var(--paper);overflow:hidden}
  .hero .glow{position:absolute;inset:-30%;pointer-events:none}
  .hero .g1{background:radial-gradient(40% 40% at 60% 45%,rgba(157,115,40,.22),transparent 70%);animation:drift1 42s ease-in-out infinite alternate}
  .hero .g2{background:radial-gradient(45% 45% at 35% 65%,rgba(90,20,20,.30),transparent 70%);animation:drift2 56s ease-in-out infinite alternate}
  @keyframes drift1{from{transform:translate(-4%,-2%)}to{transform:translate(5%,3%)}}
  @keyframes drift2{from{transform:translate(3%,2%)}to{transform:translate(-4%,-3%)}}
  .hero .grain{position:absolute;inset:0;opacity:.06;mix-blend-mode:overlay;pointer-events:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
  .hero-ui{position:absolute;inset:0;padding:0 8vw;z-index:2}
  .hero .top{position:absolute;top:6vh;left:8vw;right:8vw;display:flex;justify-content:space-between;color:var(--brass-lit);opacity:0;animation:fade 1.6s ease 4.6s forwards}
  .hero .center{position:absolute;top:50%;right:8vw;left:8vw;transform:translateY(-50%);text-align:right}
  .arname{font-family:var(--ar);font-size:clamp(4.5rem,17vh,15rem);color:var(--brass-lit);direction:rtl;line-height:1;opacity:0;transform:translateY(.22em);animation:rise 1.6s cubic-bezier(.16,.7,.2,1) .4s forwards;text-shadow:0 0 60px rgba(157,115,40,.2)}
  .hero .poem{margin-left:auto;text-align:right;max-width:40rem;margin-top:3.5vh;font-weight:300;font-size:clamp(1.1rem,2vw,1.65rem);line-height:1.66}
  .hero .poem span{display:block;opacity:0;transform:translateY(.4em);animation:rise 1.3s cubic-bezier(.16,.7,.2,1) forwards}
  .hero .poem span:nth-child(1){animation-delay:1.5s}
  .hero .poem span:nth-child(2){animation-delay:2.1s}
  .hero .poem span:nth-child(3){animation-delay:2.7s}
  .hero .poem span:nth-child(4){animation-delay:3.3s}
  .hero .poem span:nth-child(5){animation-delay:3.9s}
  .hero .foot{position:absolute;bottom:6vh;left:8vw;right:8vw;display:flex;justify-content:space-between;align-items:baseline;color:var(--paper);opacity:0;animation:fade 1.6s ease 5s forwards}
  .hero .foot .en{font-family:var(--kufi);font-size:1.05rem;letter-spacing:.14em}
  .hero .foot .r{color:var(--brass-lit)}
  @keyframes rise{to{opacity:1;transform:none}}
  @keyframes fade{to{opacity:1}}
  @media(max-width:640px){.hero .poem{font-size:1.1rem}.hero .top,.hero .foot{flex-direction:column;gap:.4rem}}

  .thesis{min-height:104vh;display:flex;align-items:center;padding:0 8vw;position:relative}
  .thesis h2{font-family:var(--display);font-weight:300;font-size:clamp(2.4rem,6.8vw,6.2rem);line-height:1.14;letter-spacing:-.025em;max-width:17ch}
  .thesis .red{color:var(--oxblood);font-style:italic}
  .thesis .turn{display:block;margin-top:.32em;padding-left:1.8em}
  .thesis .mark{position:absolute;top:9vh;right:8vw;font-family:var(--ar);font-size:1.5rem;color:var(--brass);opacity:.55;direction:rtl}

  .subscribe{background:var(--oxblood);color:var(--paper);padding:13vh 8vw}
  .sub-in{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:5rem;align-items:end}
  .sub-in .lead{font-family:var(--display);font-weight:300;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.34;max-width:20ch}
  .commit{margin-top:1.6rem;font-family:var(--mono);font-size:.82rem;letter-spacing:.05em;color:var(--brass-lit)}
  .embed{display:flex;flex-direction:column;gap:.85rem}
  .embed .fine,.w-embed .fine{font-family:var(--mono);font-size:.6rem;letter-spacing:.1em;color:rgba(233,224,204,.5)}
  .substack-link{align-self:start;font-family:var(--kufi);font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-lit);text-decoration:none;border-bottom:1px solid rgba(189,143,59,.4);padding-bottom:.3rem;transition:color .3s,border-color .3s}
  .substack-link:hover{color:var(--paper);border-color:var(--paper)}
  @media(max-width:760px){.sub-in{grid-template-columns:1fr;gap:2.2rem}}

  .work{padding:15vh 8vw}
  .work-top{max-width:1180px;margin:0 auto 2vh}
  .work-top .label{color:var(--oxblood)}
  .index{max-width:1180px;margin:0 auto}
  .entry{display:grid;grid-template-columns:5rem 1fr 2.5rem;column-gap:1.6rem;text-decoration:none;color:var(--ink);padding:4.5vh 0;border-top:1px solid rgba(90,20,20,.2);transition:transform .55s cubic-bezier(.2,.7,.2,1)}
  .entry:last-child{border-bottom:1px solid rgba(90,20,20,.2)}
  .entry:hover{transform:translateX(1.1rem)}
  .entry .ix{font-family:var(--ar);font-size:1.5rem;color:var(--brass);direction:rtl;line-height:1;padding-top:.55rem;grid-column:1}
  .entry .content{grid-column:2;min-width:0}
  .entry .htitle{display:flex;align-items:baseline;gap:1rem;flex-wrap:wrap;text-decoration:none;color:var(--ink)}
  .entry h3{font-family:var(--display);font-weight:400;font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:1.05;letter-spacing:-.02em}
  .entry .sub{font-family:var(--kufi);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--oxblood);white-space:nowrap}
  .entry p{font-weight:400;font-size:1.06rem;line-height:1.58;margin-top:1.2rem;max-width:46ch;color:#473b2f}
  .entry .go{grid-column:3;font-family:var(--eng);font-size:1.6rem;color:var(--oxblood);opacity:.3;transition:opacity .4s;padding-top:.6rem;text-align:right}
  .entry:hover .go{opacity:1}
  .latest{margin-top:1.5rem;display:flex;flex-direction:column;gap:.55rem}
  .latest a{font-family:var(--mono);font-size:.74rem;letter-spacing:.02em;color:#473b2f;text-decoration:none;display:flex;gap:1.3rem;width:fit-content;transition:color .3s}
  .latest a:hover{color:var(--oxblood)}
  .latest .dt{color:var(--brass);flex-shrink:0;font-variant-numeric:tabular-nums}
  @media(max-width:640px){.entry{grid-template-columns:2.4rem 1fr;column-gap:1rem}.entry .go{display:none}.entry .sub{white-space:normal}}

  .breath{background:var(--night);color:var(--paper);padding:22vh 8vw;text-align:right;position:relative;overflow:hidden}
  .breath .glow{position:absolute;inset:-20%;background:radial-gradient(40% 40% at 70% 50%,rgba(157,115,40,.16),transparent 70%);animation:drift1 48s ease-in-out infinite alternate;pointer-events:none}
  .breath-in{max-width:1180px;margin:0 auto;position:relative;z-index:2}
  .breath .verse{font-family:var(--display);font-weight:300;font-size:clamp(1.7rem,3.8vw,3.1rem);line-height:1.5;max-width:38rem;margin-left:auto}
  .breath .verse span{display:block;white-space:nowrap}
  .breath .verse .b{color:var(--brass-lit)}
  @media(max-width:640px){.breath .verse span{white-space:normal}}
  .breath .attr{margin-top:2.8rem;font-family:var(--mono);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brass-lit);opacity:.75}

  .books{padding:15vh 8vw}
  .books-top{max-width:1180px;margin:0 auto 5vh;display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:1.5rem}
  .books-top .label{color:var(--oxblood)}
  .books-top .intro{font-family:var(--display);font-weight:300;font-size:clamp(1.2rem,2.2vw,1.8rem);color:#473b2f;max-width:30ch}
  .books-in{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:.62fr 1fr;gap:6vw;align-items:start}
  .plate{position:sticky;top:14vh}
  .plate:hover .frame{transform:rotate(0deg);box-shadow:0 4px 8px rgba(28,21,16,.1),0 24px 60px rgba(28,21,16,.28),0 40px 90px rgba(28,21,16,.14)}
  .plate .frame{aspect-ratio:2/3;background:var(--paper-soft);position:relative;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(28,21,16,.08),0 14px 40px rgba(28,21,16,.22),0 30px 70px rgba(28,21,16,.12);transform:rotate(-1.2deg);transition:transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .6s}
  .plate .frame::before{content:"";position:absolute;left:0;top:0;bottom:0;width:7px;background:linear-gradient(90deg,rgba(28,21,16,.22),rgba(28,21,16,.04));}
  .plate .frame::after{content:"";position:absolute;inset:10px;border:1px solid rgba(157,115,40,.35)}
  .plate .cover-frame{aspect-ratio:889/1356;display:block;overflow:hidden;background:var(--night)}
  .plate .cover-frame::before,.plate .cover-frame::after{content:none}
  .plate .book-cover{display:block;width:100%;height:100%;object-fit:cover}
  .plate .frame .ph{font-family:var(--ar);font-size:1.5rem;color:var(--brass);opacity:.5;text-align:center;direction:rtl;padding:1rem;line-height:1.8}
  .plate .cap{position:absolute;top:1rem;left:1rem;font-family:var(--mono);font-size:.56rem;letter-spacing:.16em;text-transform:uppercase;color:var(--oxblood)}
  .plate .platecap{margin-top:1.1rem;font-family:var(--mono);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--brass);line-height:1.6}
  .booklist{display:flex;flex-direction:column}
  .book{padding:3.4vh 0;border-top:1px solid rgba(90,20,20,.2)}
  .book.lead-book{padding-bottom:4.6vh}
  .book.lead-book h3{font-size:clamp(1.7rem,3.2vw,2.6rem)}
  .book.forthcoming{margin-top:5vh;padding-top:5vh;border-top:1px solid rgba(157,115,40,.45)}
  .book:first-child{border-top:0;padding-top:0}
  .book .bt{display:flex;align-items:baseline;gap:1rem;flex-wrap:wrap}
  .book h3{font-family:var(--display);font-weight:400;font-size:clamp(1.5rem,2.8vw,2.2rem);line-height:1.08;letter-spacing:-.015em}
  .book .yr{font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;color:var(--brass);font-variant-numeric:tabular-nums}
  .book .kind{font-family:var(--kufi);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--oxblood)}
  .book p{font-weight:400;font-size:1.04rem;line-height:1.58;margin-top:1rem;max-width:54ch;color:#473b2f}
  .book .accolade{margin-top:.9rem;font-family:var(--mono);font-size:.68rem;letter-spacing:.03em;color:var(--brass);max-width:54ch;line-height:1.55}
  .book .find{margin-top:1.2rem;display:inline-flex;gap:1.4rem}
  .book .find a{font-family:var(--kufi);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--oxblood);text-decoration:none;border-bottom:1px solid rgba(90,20,20,.3);padding-bottom:.2rem;transition:color .3s,border-color .3s}
  .book .find a:hover{color:var(--brass);border-color:var(--brass)}
  .book.forthcoming h3{color:#8a7d6b}
  .book.forthcoming .tag{font-family:var(--mono);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--brass);border:1px solid var(--brass);padding:.22rem .55rem}
  .excerpt{background:var(--night);color:var(--paper);padding:20vh 8vw;text-align:center;position:relative;overflow:hidden;margin-top:8vh}
  .excerpt .glow{position:absolute;inset:-20%;background:radial-gradient(40% 40% at 50% 50%,rgba(157,115,40,.16),transparent 70%);animation:drift1 48s ease-in-out infinite alternate;pointer-events:none}
  .excerpt-in{max-width:46rem;margin:0 auto;position:relative;z-index:2}
  .excerpt .lines{font-family:var(--display);font-weight:300;font-style:italic;font-size:clamp(1.6rem,3.4vw,2.7rem);line-height:1.5}
  .excerpt .lines span{display:block}
  .excerpt .src{margin-top:2.6rem;font-family:var(--mono);font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brass-lit);opacity:.8}
  .excerpt .src a{color:var(--brass-lit);text-decoration:none;border-bottom:1px solid rgba(189,143,59,.4)}
  .books.books-page{padding-top:8vh}
  @media(max-width:760px){.books-in{grid-template-columns:1fr;gap:4vh}.plate{position:static;max-width:16rem;margin:0 auto}}
  .about{padding:15vh 8vw}
  .about-in{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:.76fr 1fr;gap:5.5rem;align-items:center}
  .portrait{aspect-ratio:4/5;background:var(--paper-soft);border:1px solid var(--brass);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
  .portrait::before{content:"";position:absolute;inset:9px;border:1px solid rgba(157,115,40,.4);z-index:2;pointer-events:none}
  .portrait .ph{font-family:var(--ar);font-size:2rem;color:var(--brass);direction:rtl;opacity:.55}
  .portrait .cap{position:absolute;top:1rem;left:1rem;font-family:var(--mono);font-size:.56rem;letter-spacing:.16em;text-transform:uppercase;color:var(--oxblood)}
  .about-copy{text-align:right}
  .about-copy .arc{font-weight:300;font-size:clamp(1.3rem,2.5vw,1.95rem);line-height:1.5}
  .about-copy .arc b{font-weight:500;color:var(--oxblood)}
  .about-copy .turn{display:block;margin-top:1.05rem;font-family:var(--display);font-weight:400;font-size:clamp(1.6rem,3.2vw,2.5rem)}
  .about-copy .more{display:inline-block;margin-top:2.2rem;font-family:var(--kufi);font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--oxblood);text-decoration:none;border-bottom:2px solid var(--brass);padding-bottom:.25rem;transition:color .3s}
  .about-copy .more:hover{color:var(--brass)}
  @media(max-width:760px){.about-in{grid-template-columns:1fr;gap:2.5rem}}

  footer{background:var(--ink);color:var(--paper);padding:11vh 8vw 7vh}
  .foot-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:3rem}
  footer .label{color:var(--brass-lit);margin-bottom:1.3rem;opacity:.85}
  footer a{display:block;color:var(--paper);text-decoration:none;font-weight:300;font-size:1.1rem;padding:.32rem 0;opacity:.82;transition:opacity .3s,padding-left .3s}
  footer a:hover{opacity:1;padding-left:.4rem}
  .foot-name{max-width:1180px;margin:7vh auto 0;display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid rgba(157,115,40,.3);padding-top:2.2rem}
  .foot-name .big{font-family:var(--ar);font-size:2.6rem;color:var(--brass-lit);direction:rtl}
  .foot-name .en{font-family:var(--kufi);font-size:.95rem;letter-spacing:.14em;margin-top:.5rem}
  .foot-name .yr{font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;color:var(--brass-lit);opacity:.75}
  .foot-legal{max-width:1180px;margin:2.5rem auto 0;display:flex;gap:1.8rem;justify-content:flex-end}
  .foot-legal a{font-family:var(--mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-lit);opacity:.6;text-decoration:none;transition:opacity .3s}
  .foot-legal a:hover{opacity:1}
  @media(max-width:640px){.foot-legal{justify-content:flex-start}}
  @media(max-width:640px){.foot-grid{grid-template-columns:1fr;gap:2rem}.foot-name{flex-direction:column;gap:.8rem;align-items:flex-start}}

  .rv{opacity:0;transform:translateY(34px);transition:opacity 1.1s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1)}
  .rv.in{opacity:1;transform:none}

  /* ---------------- MASTHEAD (inner pages only) -------------- */
  .masthead{position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:1.8vh 8vw;background:var(--paper);border-bottom:1px solid rgba(90,20,20,.15)}
  .masthead .home{font-family:var(--kufi);font-size:1rem;letter-spacing:.12em;color:var(--ink);text-decoration:none;transition:color .3s}
  .masthead .home:hover{color:var(--oxblood)}
  .masthead .home .ar{font-family:var(--ar);font-size:1.1rem;color:var(--brass);margin-right:.6rem}
  .masthead nav{display:flex;gap:2.2rem}
  .masthead nav a{font-family:var(--mono);font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:var(--ink);text-decoration:none;opacity:.7;transition:opacity .3s,color .3s;padding-bottom:.2rem;border-bottom:1px solid transparent}
  .masthead nav a:hover{opacity:1;color:var(--oxblood)}
  .masthead nav a.here{opacity:1;border-bottom-color:var(--brass);color:var(--oxblood)}
  .masthead nav a.here::before{content:'\2022';color:var(--brass);margin-right:.5em;font-size:.8em;vertical-align:.1em}
  .page-head{padding:13vh 8vw 0;max-width:1180px;margin:0 auto}
  .page-head .label{color:var(--oxblood)}
  .page-head h1{font-family:var(--display);font-weight:300;font-size:clamp(2.6rem,7vw,5.5rem);line-height:1.06;letter-spacing:-.025em;margin-top:1.5vh}
  .page-head .ara{font-family:var(--ar);direction:rtl;font-size:1.8rem;color:var(--brass);opacity:.6;margin-top:1.2rem}
  @media(max-width:640px){.masthead nav{gap:1.2rem}.masthead nav a{letter-spacing:.18em}}

  /* home masthead: fixed, hidden until scrolled past the hero */
  .masthead--home {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    opacity: 0;
    transform: translateY(-100%);
    transition: opacity .5s ease, transform .5s ease;
    pointer-events: none;
  }
  .masthead--home.is-visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }

  /* ---------------- ABOUT PAGE -------------- */
  .a-portrait-row{max-width:1180px;margin:9vh auto 0;padding:0 8vw;display:grid;grid-template-columns:.62fr 1fr;gap:6vw;align-items:center}
  .a-portrait{aspect-ratio:4/5;background:var(--paper-soft);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 2px 4px rgba(28,21,16,.08),0 14px 40px rgba(28,21,16,.2),0 30px 70px rgba(28,21,16,.1)}
  .a-portrait::before{content:"";position:absolute;inset:10px;border:1px solid rgba(157,115,40,.35);z-index:2;pointer-events:none}
  .a-portrait .cap{position:absolute;top:1rem;left:1rem;font-family:var(--mono);font-size:.56rem;letter-spacing:.16em;text-transform:uppercase;color:var(--oxblood)}
  .a-portrait .ph{font-family:var(--ar);font-size:1.7rem;color:var(--brass);opacity:.5;direction:rtl}
  .portrait-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:58% 34%}
  .a-stance{font-family:var(--display);font-weight:300;font-size:clamp(1.7rem,3.4vw,2.9rem);line-height:1.28;letter-spacing:-.02em;color:var(--ink)}
  .a-stance em{font-style:italic;color:var(--oxblood)}
  .a-body{max-width:1180px;margin:0 auto;padding:11vh 8vw}
  .a-prose{max-width:34rem;margin-left:auto}
  .a-prose p{font-weight:300;font-size:clamp(1.15rem,1.7vw,1.45rem);line-height:1.66;color:#3f342a;margin-bottom:2.4rem}
  .a-prose a{color:var(--oxblood);text-decoration:none;border-bottom:1px solid rgba(90,20,20,.3)}
  .a-prose p:last-child{margin-bottom:0}
  .a-prose .lead-line{font-family:var(--display);font-weight:400;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.5;color:var(--ink)}
  .a-prose .creed{color:var(--ink)}
  .a-prose .creed b{font-weight:500;color:var(--oxblood)}
  .a-marker{max-width:1180px;margin:0 auto;padding:0 8vw}
  .a-marker .hl{height:1px;background:var(--brass);opacity:.35;max-width:34rem;margin-left:auto}
  /* closing line on dark */
  .a-close{background:var(--night);color:var(--paper);padding:18vh 8vw;text-align:right;position:relative;overflow:hidden;margin-top:4vh}
  .a-close .glow{position:absolute;inset:-20%;background:radial-gradient(40% 40% at 70% 50%,rgba(157,115,40,.15),transparent 70%);animation:drift1 50s ease-in-out infinite alternate;pointer-events:none}
  .a-close-in{max-width:1180px;margin:0 auto;position:relative;z-index:2}
  .a-close .big{font-family:var(--display);font-weight:300;font-size:clamp(1.8rem,4vw,3.2rem);line-height:1.4;max-width:32rem;margin-left:auto}
  .a-close .big .b{color:var(--brass-lit)}
  @media(max-width:760px){.a-portrait-row{grid-template-columns:1fr;gap:3vh}.a-portrait{max-width:18rem}.a-prose{margin-left:0}}

  /* ---------------- COMMISSIONS PAGE -------------- */
  .c-intro{max-width:1180px;margin:9vh auto 0;padding:0 8vw}
  .c-intro .lead{font-family:var(--display);font-weight:300;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.4;max-width:26ch;color:var(--ink)}
  .c-intro .lead em{font-style:italic;color:var(--oxblood)}
  .works{max-width:1180px;margin:0 auto;padding:8vh 8vw 0}
  .case{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;padding:9vh 0;border-top:1px solid rgba(90,20,20,.15)}
  .case:first-of-type{border-top:0}
  .case.flip .case-img{order:2}
  .case.flip .case-txt{order:1}
  .case-img{aspect-ratio:4/3;background:var(--paper-soft);position:relative;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(28,21,16,.07),0 16px 44px rgba(28,21,16,.18),0 30px 70px rgba(28,21,16,.1)}
  .case-img::before{content:"";position:absolute;inset:10px;border:1px solid rgba(157,115,40,.3)}
  .case-img.has-photo{aspect-ratio:auto;display:block;overflow:visible;background:var(--night)}
  .case-img.has-photo::before{z-index:2;pointer-events:none}
  .case-img.has-photo img{display:block;width:100%;height:auto}
  .case-img .ph{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--brass);opacity:.7;text-align:center;padding:1rem;line-height:1.8}
  .diptych{display:grid;grid-template-rows:auto auto;gap:1.4rem}
  .diptych .case-img{aspect-ratio:16/10}
  .diptych .case-img.has-photo{aspect-ratio:auto}
  .case-txt .where{font-family:var(--kufi);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--oxblood)}
  .case-txt h2{font-family:var(--display);font-weight:400;font-size:clamp(1.8rem,3.4vw,2.7rem);line-height:1.08;letter-spacing:-.02em;margin-top:1rem}
  .case-txt h2 a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(157,115,40,.4)}
  .case-txt p{font-weight:300;font-size:1.12rem;line-height:1.62;color:#3f342a;margin-top:1.3rem;max-width:42ch}
  .case-txt .partner{margin-top:1.3rem;font-family:var(--mono);font-size:.66rem;letter-spacing:.06em;color:var(--brass)}
  .case-txt .partner a{color:var(--brass);text-decoration:none;border-bottom:1px solid rgba(157,115,40,.4)}
  @media(max-width:760px){.case{grid-template-columns:1fr;gap:3vh}.case.flip .case-img{order:0}.case.flip .case-txt{order:0}}
  /* invitation */
  .invite{background:var(--night);color:var(--paper);padding:20vh 8vw;position:relative;overflow:hidden;margin-top:9vh;text-align:center}
  .invite .glow{position:absolute;inset:-20%;background:radial-gradient(40% 40% at 50% 45%,rgba(157,115,40,.16),transparent 70%);animation:drift1 50s ease-in-out infinite alternate;pointer-events:none}
  .invite-in{max-width:40rem;margin:0 auto;position:relative;z-index:2}
  .invite .line{font-family:var(--display);font-weight:300;font-size:clamp(1.7rem,3.6vw,2.8rem);line-height:1.4}
  .invite .line em{font-style:italic;color:var(--brass-lit)}
  .invite .addr{margin-top:3rem;font-family:var(--kufi);font-size:clamp(1rem,1.6vw,1.3rem);letter-spacing:.08em}
  .invite .addr a{color:var(--brass-lit);text-decoration:none;border-bottom:1px solid rgba(189,143,59,.4);padding-bottom:.25rem;transition:color .3s,border-color .3s}
  .invite .addr a:hover{color:var(--paper);border-color:var(--paper)}
  .invite .scarce{margin-top:1.6rem;font-family:var(--mono);font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brass);opacity:.7}

  /* ---------------- WRITING PAGE -------------- */
  .w-intro{max-width:1180px;margin:9vh auto 0;padding:0 8vw}
  .w-intro .frame-line{font-family:var(--display);font-weight:300;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.4;max-width:30ch;color:var(--ink)}
  .w-intro .frame-line em{font-style:italic;color:var(--oxblood)}
  .series{max-width:1180px;margin:0 auto;padding:10vh 8vw 0}
  .s-row{display:grid;grid-template-columns:5.5rem 1fr 3rem;column-gap:1.6rem;align-items:start;text-decoration:none;color:var(--ink);padding:5vh 0;border-top:1px solid rgba(90,20,20,.2);transition:transform .55s cubic-bezier(.2,.7,.2,1)}
  .s-row:last-child{border-bottom:1px solid rgba(90,20,20,.2)}
  .s-row:hover{transform:translateX(1.1rem)}
  .s-row .ar-num{font-family:var(--ar);font-size:1.5rem;color:var(--brass);direction:rtl;line-height:1;padding-top:.5rem}
  .s-row h2{font-family:var(--display);font-weight:400;font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:1.04;letter-spacing:-.02em}
  .s-row .tag{display:block;font-family:var(--kufi);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--oxblood);margin-top:.8rem}
  .s-row p{font-weight:300;font-size:1.1rem;line-height:1.6;margin-top:1.1rem;max-width:50ch;color:#3f342a}
  .s-row .go{font-family:var(--eng);font-size:1.6rem;color:var(--oxblood);opacity:.3;transition:opacity .4s;text-align:right;padding-top:.6rem}
  .s-row:hover .go{opacity:1}
  @media(max-width:640px){.s-row{grid-template-columns:2.4rem 1fr;column-gap:1rem}.s-row .go{display:none}}
  /* subscribe band reused */
  .w-sub{background:var(--oxblood);color:var(--paper);padding:13vh 8vw;margin-top:10vh}
  .w-sub-in{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:5rem;align-items:end}
  .w-sub .lead{font-family:var(--display);font-weight:300;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.34;max-width:22ch}
  .w-sub .commit{margin-top:1.6rem;font-family:var(--mono);font-size:.82rem;letter-spacing:.05em;color:var(--brass-lit)}
  .w-embed{display:flex;flex-direction:column;gap:.85rem}
  @media(max-width:760px){.w-sub-in{grid-template-columns:1fr;gap:2.2rem}}
  /* shared dark grain */
  .breath::after,.excerpt::after,.invite::after,.a-close::after{content:'';position:absolute;inset:0;opacity:.05;mix-blend-mode:overlay;pointer-events:none;z-index:1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
  /* widow control */
  h1,h2,h3,.thesis h2,.hero .poem,.a-stance,.frame-line,.lead,.line,.big,.verse,.lines,.intro,.arc{text-wrap:pretty}
  .thesis h2,.page-head h1,.a-close .big,.invite .line,.excerpt .lines{text-wrap:balance}

/* ---------------- LEGAL PAGES -------------- */
.legal-body{max-width:1180px;margin:0 auto;padding:9vh 8vw 13vh}
.legal-prose{max-width:42rem;margin-left:auto}
.legal-prose h2{font-family:var(--display);font-weight:400;font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.2;margin:3rem 0 1rem;color:var(--ink)}
.legal-prose h2:first-child{margin-top:0}
.legal-prose p,.legal-prose li{font-weight:300;font-size:1.1rem;line-height:1.66;color:#3f342a}
.legal-prose p{margin-bottom:1.2rem}
.legal-prose ul{margin:0 0 1.4rem 1.1rem}
.legal-prose a{color:var(--oxblood);text-decoration:none;border-bottom:1px solid rgba(90,20,20,.3)}
.legal-prose .updated{font-family:var(--mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-bottom:2.4rem}
@media(max-width:760px){.legal-prose{margin-left:0}}
