/* Iberic Malls — Journal (blog) shared stylesheet */
:root{
  --cream:#F6F1E8;
  --cream-2:#EFE7D8;
  --paper:#FDFBF6;
  --ink:#1A1714;
  --ink-2:#2B2620;
  --mute:#6B5F52;
  --line:rgba(26,23,20,0.12);
  --line-soft:rgba(26,23,20,0.06);
  --sage:#5D6B53;
  --espresso:#3B2A1E;
  --ring:0 1px 0 rgba(255,255,255,0.6) inset, 0 0 0 1px rgba(26,23,20,0.06);
  --shadow-soft:0 30px 60px -30px rgba(26,23,20,0.18), 0 12px 28px -18px rgba(26,23,20,0.12);
  --ease:cubic-bezier(0.22,0.61,0.36,1);
  --ease-spring:cubic-bezier(0.32,0.72,0,1);
}
*{box-sizing:border-box;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
html,body{margin:0;padding:0;background:var(--cream);color:var(--ink);font-family:'Geist',system-ui,sans-serif;font-weight:400;overflow-x:hidden}
body{font-size:16px;line-height:1.55}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
::selection{background:var(--ink);color:var(--cream)}

.grain{position:fixed;inset:0;pointer-events:none;z-index:60;opacity:0.05;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.9'/></svg>");}

/* Nav */
.nav-wrap{position:fixed;top:22px;left:0;right:0;z-index:50;display:flex;justify-content:center;pointer-events:none}
.nav{pointer-events:auto;display:flex;align-items:center;gap:28px;padding:10px 14px 10px 22px;background:rgba(253,251,246,0.72);backdrop-filter:saturate(160%) blur(18px);-webkit-backdrop-filter:saturate(160%) blur(18px);border-radius:999px;box-shadow:var(--ring), 0 14px 40px -20px rgba(26,23,20,0.25);font-size:13px;letter-spacing:0.01em}
.nav .mark{font-family:'Fraunces',serif;font-weight:500;font-size:15px;letter-spacing:-0.01em}
.nav .mark span{font-style:italic;font-weight:300}
.nav ul{display:flex;gap:22px;list-style:none;padding:0;margin:0;color:var(--ink-2)}
.nav ul a{position:relative;padding:6px 2px;transition:color .5s var(--ease)}
.nav ul a:hover{color:var(--ink)}
.nav .cta{display:inline-flex;align-items:center;gap:10px;padding:8px 8px 8px 16px;background:var(--ink);color:var(--cream);border-radius:999px;font-family:'Fraunces',serif;font-size:12.5px;letter-spacing:0.04em;transition:transform .5s var(--ease-spring)}
.nav .cta:hover{transform:translateY(-1px)}
.nav .cta .dot{width:26px;height:26px;border-radius:999px;background:rgba(246,241,232,0.12);display:grid;place-items:center}
.nav .cta svg{width:12px;height:12px}
@media(max-width:900px){.nav ul{display:none}.nav{padding-left:18px}}

.shell{max-width:1220px;margin:0 auto;padding:0 42px}

/* Article head */
.post-head{padding:200px 0 80px;border-bottom:1px solid var(--line-soft)}
.post-head .crumbs{font-family:'Fraunces',serif;font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--mute);display:flex;align-items:center;gap:12px;margin-bottom:34px}
.post-head .crumbs a{color:var(--mute);transition:color .4s var(--ease)}
.post-head .crumbs a:hover{color:var(--ink)}
.post-head .crumbs .sep{width:18px;height:1px;background:var(--line)}
.post-head .kicker{font-family:'Fraunces',serif;font-size:12px;letter-spacing:0.2em;text-transform:uppercase;color:var(--sage);margin-bottom:28px;display:flex;align-items:center;gap:14px}
.post-head .kicker .dot{width:6px;height:6px;background:var(--sage);border-radius:50%}
.post-head h1{font-family:'Fraunces',serif;font-weight:400;font-size:clamp(44px,5.6vw,86px);line-height:0.98;letter-spacing:-0.028em;margin:0 0 30px;max-width:22ch}
.post-head h1 em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300;color:var(--espresso)}
.post-head .dek{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;font-size:clamp(20px,1.8vw,26px);line-height:1.42;color:var(--ink-2);max-width:52ch;margin:0 0 56px}
.post-head .meta{display:flex;gap:36px;flex-wrap:wrap;padding-top:30px;border-top:1px solid var(--line);font-family:'Fraunces',serif;font-size:12px;letter-spacing:0.06em;color:var(--mute);text-transform:uppercase}
.post-head .meta span em{font-style:normal;color:var(--ink)}

/* Article body */
.post-body{padding:90px 0 80px}
.post-body .col{max-width:680px;margin:0 auto}
.post-body .lede{font-family:'Fraunces',serif;font-weight:400;font-size:22px;line-height:1.52;letter-spacing:-0.008em;color:var(--ink);margin:0 0 44px;padding-left:22px;border-left:1px solid var(--line)}
.post-body .lede em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300}
.post-body p{font-size:17px;line-height:1.75;color:var(--ink-2);margin:0 0 24px;font-family:'Geist',system-ui,sans-serif}
.post-body p em{font-style:italic;color:var(--ink)}
.post-body h2{font-family:'Fraunces',serif;font-weight:400;font-size:30px;line-height:1.14;letter-spacing:-0.018em;color:var(--ink);margin:64px 0 22px;max-width:24ch}
.post-body h2 em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300}
.post-body h2::before{content:"";display:block;width:36px;height:1px;background:var(--ink);margin-bottom:18px}
.post-body ul{padding-left:0;list-style:none;margin:0 0 28px}
.post-body ul li{position:relative;padding-left:28px;color:var(--ink-2);font-size:16.5px;line-height:1.75;margin-bottom:14px}
.post-body ul li::before{content:"—";position:absolute;left:0;color:var(--mute);font-family:'Fraunces',serif}
.post-body ul li em{font-style:italic;color:var(--ink)}
.post-body blockquote{margin:40px 0;padding:0 0 0 32px;border-left:2px solid var(--sage);font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;font-size:26px;line-height:1.32;color:var(--ink);max-width:34ch}
.post-body .rule{display:block;width:60px;height:1px;background:var(--line);margin:48px auto}
.post-body .tail{font-family:'Fraunces',serif;font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:var(--mute);text-align:center;margin-top:48px}
.post-body .references{margin-top:64px;padding-top:40px;border-top:1px solid var(--line)}
.post-body .references h3{font-family:'Fraunces',serif;font-weight:400;font-size:16px;letter-spacing:0.12em;text-transform:uppercase;color:var(--mute);margin:0 0 24px}
.post-body .references ol{padding-left:24px;margin:0;counter-reset:none}
.post-body .references ol li{font-size:14px;line-height:1.72;color:var(--mute);margin-bottom:10px;font-family:'Geist',system-ui,sans-serif;padding-left:4px}
.post-body .references ol li em{font-style:italic;color:var(--ink-2)}
.post-body .references ol li a{color:var(--sage);border-bottom:1px solid rgba(93,107,83,0.3);transition:border-color .4s var(--ease)}
.post-body .references ol li a:hover{border-color:var(--sage)}

/* Pager */
.pager{padding:90px 0 80px;border-top:1px solid var(--line-soft)}
.pager .row{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.pager a{display:block;padding:34px 34px 38px;border:1px solid var(--line);border-radius:20px;background:var(--paper);transition:transform .9s var(--ease-spring),box-shadow .6s var(--ease),border-color .5s var(--ease)}
.pager a:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft);border-color:rgba(26,23,20,0.18)}
.pager a.next{text-align:right}
.pager .label{font-family:'Fraunces',serif;font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--mute);margin-bottom:14px}
.pager h4{font-family:'Fraunces',serif;font-weight:400;font-size:22px;line-height:1.18;letter-spacing:-0.014em;margin:0}
.pager h4 em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300}
@media(max-width:700px){.pager .row{grid-template-columns:1fr}}

/* Footer */
.footer{background:var(--ink);color:var(--cream);padding:100px 0 40px;margin-top:0}
.footer .shell{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px;align-items:start}
.footer .mark{font-family:'Fraunces',serif;font-size:26px;letter-spacing:-0.018em}
.footer .mark em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300;color:var(--sage)}
.footer h5{font-family:'Fraunces',serif;font-weight:400;font-size:12px;letter-spacing:0.18em;text-transform:uppercase;color:rgba(246,241,232,0.5);margin:0 0 16px}
.footer ul{list-style:none;padding:0;margin:0;font-size:14px;line-height:1.9;color:rgba(246,241,232,0.82)}
.footer ul a{border-bottom:1px solid rgba(246,241,232,0.25);transition:border-color .4s var(--ease)}
.footer ul a:hover{border-color:var(--cream)}
.footer .fine{grid-column:1/-1;margin-top:70px;padding-top:30px;border-top:1px solid rgba(246,241,232,0.14);display:flex;justify-content:space-between;font-family:'Fraunces',serif;font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:rgba(246,241,232,0.5)}
.footer .fine a{color:rgba(246,241,232,0.82);transition:color .4s var(--ease)}
.footer .fine a:hover{color:var(--cream)}
@media(max-width:900px){.footer .shell{grid-template-columns:1fr}.footer .fine{flex-direction:column;gap:10px}}

/* Reveal */
[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
[data-reveal].in{opacity:1;transform:translateY(0)}
[data-reveal-delay="1"]{transition-delay:80ms}
[data-reveal-delay="2"]{transition-delay:160ms}
[data-reveal-delay="3"]{transition-delay:240ms}
