:root{
--paper:#FAF6F1;
--paper-2:#F1E8DE;
--ink:#241F21;
--ink-soft:#544B4D;
--plum:#4B2140;
--plum-deep:#2E1327;
--taupe:#A79287;
--divider:#E3D6C8;
--paper-90:rgba(250,246,241,.9);
--plum-deep-85:rgba(46,19,39,.85);
--plum-deep-55:rgba(46,19,39,.55);
--taupe-light:#CBB9AD;
--orchid:#C98FB0;
}
html{scroll-behavior:smooth;}
body{background:var(--paper); font-family:'Almarai', sans-serif; color:var(--ink); overflow-x:hidden;}
.font-display{font-family:'Amiri', serif;}
.font-display-i{font-family:'Amiri', serif; font-style:italic;}
.font-num{font-family:'Space Mono', monospace;}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0;}
.sr-only.focus\:not-sr-only:focus{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal;background:var(--plum);color:var(--paper);padding:0.5rem 1rem;z-index:50;}

.fade-in{opacity:0;transform:translateY(20px);transition:opacity .9s cubic-bezier(.19,1,.22,1), transform .9s cubic-bezier(.19,1,.22,1);}
.fade-in.is-visible{opacity:1;transform:translateY(0);}
.stagger-1{transition-delay:.05s;} .stagger-2{transition-delay:.15s;} .stagger-3{transition-delay:.25s;} .stagger-4{transition-delay:.35s;}

/* Editorial text-link CTA, deliberately not a filled box */
.link-cta{position:relative; display:inline-flex; align-items:center; gap:.5rem; font-weight:700; color:var(--plum); padding-bottom:.2rem; border-bottom:1.5px solid var(--taupe); transition:border-color .35s ease, gap .35s ease;}
.link-cta:hover{border-color:var(--plum); gap:.75rem;}

.btn-pill{border-radius:9999px; display:inline-flex; align-items:center; justify-content:center; gap:.5rem; background:var(--plum); color:var(--paper); padding:1rem 2.25rem; font-weight:700; transition:transform .4s cubic-bezier(.19,1,.22,1), background-color .4s ease;}
.btn-pill:hover{transform:translateY(-3px); background:var(--plum-deep);}
.btn-pill:focus-visible{outline:2px solid var(--plum); outline-offset:3px;}

/* Ghost watermark numerals used behind rows/hero instead of a stamp/emblem */
.ghost-num{position:absolute; font-family:'Amiri', serif; color:var(--plum); opacity:.07; line-height:1; user-select:none; pointer-events:none; white-space:nowrap;}
.ghost-num-light{color:var(--paper); opacity:.10;}
.link-cta-light{color:var(--paper); border-color:var(--taupe-light);}
.link-cta-light:hover{border-color:var(--paper);}

.article-row{position:relative; border-top:1px solid var(--divider); overflow:hidden;}
.article-row:last-child{border-bottom:1px solid var(--divider);}

.quote-glyph{font-family:'Amiri', serif; color:var(--plum); opacity:.18; line-height:.6;}

.hairline{border-color:var(--divider);}
.lift{transition:transform .45s cubic-bezier(.19,1,.22,1);}
.lift:hover{transform:translateY(-5px);}

.hide-scrollbar::-webkit-scrollbar{display:none;}
.hide-scrollbar{-ms-overflow-style:none; scrollbar-width:none;}

@media (prefers-reduced-motion: reduce){
.fade-in{opacity:1;transform:none;transition:none;}
.lift:hover, .btn-pill:hover{transform:none;}
html{scroll-behavior:auto;}
}