/*
Theme Name: intim-prap
Author: Studio
Version: 1.0
Text Domain: intim-prap
Description: Refined literary editorial theme — antique book aesthetic with sepia paper, burgundy ink and gold marginalia.
*/

:root{
  --iprap-paper:#efe6d4;
  --iprap-paper-deep:#e5d9c1;
  --iprap-ink:#4b1e28;
  --iprap-ink-soft:#6a3540;
  --iprap-accent:#a8813a;
  --iprap-ivy:#2c3f26;
  --iprap-rule:#c9b995;
  --iprap-shadow: rgba(75,30,40,0.14);
  --iprap-font-display:"Bodoni Moda", "Didot", "Bodoni 72", "Times New Roman", serif;
  --iprap-font-body:"EB Garamond", "Garamond", "Cormorant Garamond", Georgia, serif;
  --iprap-measure: 34rem;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.iprap-body{
  margin:0;
  background:
    radial-gradient(1200px 400px at 50% -200px, rgba(168,129,58,0.12), transparent 60%),
    var(--iprap-paper);
  background-attachment: scroll;
  color:var(--iprap-ink);
  font-family:var(--iprap-font-body);
  font-size:19px;
  line-height:1.68;
  font-feature-settings:"onum" 1,"liga" 1,"kern" 1;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--iprap-ink);text-decoration:none;border-bottom:1px solid var(--iprap-rule);transition:color .15s,border-color .15s}
a:hover{color:var(--iprap-accent);border-bottom-color:var(--iprap-accent)}

/* Layout containers */
.iprap-wrap{max-width:1160px;margin:0 auto;padding:0 32px}

/* Header */
.iprap-masthead{
  border-bottom:1px double var(--iprap-ink);
  padding:16px 0 14px;
  background:linear-gradient(180deg, rgba(239,230,212,0) 0%, rgba(201,185,149,0.15) 100%);
}
.iprap-mast-row{display:flex;align-items:center;justify-content:space-between;gap:32px}
.iprap-brand{display:flex;align-items:center;gap:14px;border-bottom:0}
.iprap-brand-mark{width:52px;height:52px;flex:0 0 auto}
.iprap-brand-word{
  font-family:var(--iprap-font-display);
  font-weight:600;
  font-size:1.65rem;
  letter-spacing:.01em;
  color:var(--iprap-ink);
  line-height:1;
  margin:0;
}
.iprap-brand-sub{
  font-family:var(--iprap-font-body);
  font-style:italic;
  color:var(--iprap-ink-soft);
  font-size:.85rem;
  letter-spacing:.06em;
  text-transform:lowercase;
  margin-top:4px;
}

/* Primary nav */
.iprap-nav{}
.iprap-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:nowrap;gap:16px;white-space:nowrap}
.iprap-nav li{}
.iprap-nav a{
  border-bottom:0;
  font-family:var(--iprap-font-display);
  font-size:.95rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--iprap-ink);
  padding-bottom:4px;
  position:relative;
}
.iprap-nav a::after{
  content:"";
  position:absolute;left:0;right:0;bottom:0;
  height:1px;background:var(--iprap-accent);
  transform:scaleX(0);transform-origin:left;
  transition:transform .2s ease;
}
.iprap-nav a:hover{color:var(--iprap-ink)}
.iprap-nav a:hover::after{transform:scaleX(1)}

/* Masthead: brand on top, sections on their own ruled line; wraps instead of overflowing */
.iprap-mast-row{flex-wrap:wrap;justify-content:center;row-gap:14px}
.iprap-nav{flex:1 1 100%;border-top:1px solid var(--iprap-rule);padding-top:12px}
.iprap-nav ul{flex-wrap:wrap;justify-content:center;gap:8px 34px;white-space:normal}
.iprap-nav a{font-size:.84rem;letter-spacing:.07em}
.iprap-nav .current-menu-item > a::after{transform:scaleX(1)}
.iprap-mnav-btn{
  display:none;align-items:center;justify-content:center;
  width:44px;height:44px;border:1px solid var(--iprap-ink);border-radius:2px;
  color:var(--iprap-ink);cursor:pointer;background:transparent;
}
.iprap-mnav-cbx:checked + .iprap-mnav-btn{background:var(--iprap-ink);color:var(--iprap-paper)}
@media (max-width:780px){
  .iprap-wrap{padding:0 18px}
  .iprap-mast-row{justify-content:space-between;flex-wrap:wrap}
  .iprap-brand-word{font-size:1.35rem}
  .iprap-brand-mark{width:42px;height:42px}
  .iprap-brand-mark svg{width:42px;height:42px}
  .iprap-mnav-btn{display:inline-flex}
  .iprap-nav{display:none}
  .iprap-mnav-cbx:checked ~ .iprap-nav{display:block}
  .iprap-nav ul{flex-direction:column;gap:0}
  .iprap-nav li{border-bottom:1px solid var(--iprap-rule)}
  .iprap-nav li:last-child{border-bottom:0}
  .iprap-nav a{display:block;padding:12px 0;text-align:center;font-size:.9rem}
  .iprap-nav a::after{display:none}
}

/* Hero */
.iprap-hero{padding:64px 0 44px;text-align:center}
.iprap-hero-title{
  font-family:var(--iprap-font-display);
  font-weight:500;
  font-size:clamp(2.2rem, 3.6vw + 1rem, 4.2rem);
  color:var(--iprap-ink);
  margin:0 auto;
  max-width:20ch;
  line-height:1.08;
  letter-spacing:-.005em;
}
.iprap-hero-rule{margin:28px auto 0;display:block;width:220px;height:22px;color:var(--iprap-accent)}
.iprap-hero-desc{
  font-style:italic;
  color:var(--iprap-ink-soft);
  max-width:52ch;
  margin:22px auto 0;
  font-size:1.08rem;
}

/* Category sections on home */
.iprap-cat-block{padding:38px 0;border-top:1px solid var(--iprap-rule)}
.iprap-cat-block:first-of-type{border-top:0}
.iprap-cat-header{
  display:flex;align-items:baseline;justify-content:space-between;
  gap:24px;margin-bottom:22px;
  border-bottom:1px solid var(--iprap-rule);padding-bottom:8px;
}
.iprap-cat-name{
  font-family:var(--iprap-font-display);
  font-weight:500;
  font-size:1.6rem;
  margin:0;color:var(--iprap-ink);
  letter-spacing:.01em;
}
.iprap-cat-more{
  font-style:italic;color:var(--iprap-accent);
  border-bottom:0;font-size:.95rem;
}
.iprap-cat-more:hover{color:var(--iprap-ink)}

.iprap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 30px}
@media (max-width:900px){.iprap-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.iprap-grid{grid-template-columns:1fr}}

.iprap-card{display:flex;flex-direction:column}
.iprap-card-thumb{
  aspect-ratio: 4 / 3;
  background:var(--iprap-paper-deep);
  border:1px solid var(--iprap-rule);
  overflow:hidden;
  margin-bottom:14px;
}
.iprap-card-thumb img{width:100%;height:100%;object-fit:cover;filter:sepia(.15) contrast(1.02)}
.iprap-card-cat{
  font-family:var(--iprap-font-display);
  font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--iprap-accent);margin-bottom:6px;
}
.iprap-card-title{
  font-family:var(--iprap-font-display);
  font-weight:500;font-size:1.28rem;line-height:1.22;
  margin:0 0 8px;color:var(--iprap-ink);
}
.iprap-card-title a{border-bottom:0;color:inherit}
.iprap-card-title a:hover{color:var(--iprap-accent)}
.iprap-card-excerpt{
  font-size:.98rem;color:var(--iprap-ink-soft);
  margin:0;
}
.iprap-card-date{
  font-style:italic;font-size:.82rem;color:var(--iprap-ink-soft);
  margin-top:8px;letter-spacing:.02em;
}

/* Single article — two-column with marginalia */
.iprap-article{padding:56px 0 32px;max-width:1160px;margin:0 auto}
.iprap-crumb{
  font-family:var(--iprap-font-body);font-style:italic;
  color:var(--iprap-ink-soft);font-size:.9rem;
  margin-bottom:18px;padding:0 32px;
}
.iprap-crumb a{border-bottom:0;color:var(--iprap-accent)}
.iprap-article-head{padding:0 32px;text-align:center;margin-bottom:32px}
.iprap-entry-title{
  font-family:var(--iprap-font-display);
  font-weight:500;
  font-size:clamp(2rem,2.6vw + 1rem,3.4rem);
  line-height:1.1;
  margin:0 auto 14px;max-width:22ch;
  color:var(--iprap-ink);
}
.iprap-byline{
  font-style:italic;color:var(--iprap-ink-soft);
  font-size:.98rem;letter-spacing:.02em;
}
.iprap-byline span{color:var(--iprap-accent);font-style:normal;font-family:var(--iprap-font-display);letter-spacing:.06em;font-size:.85rem;text-transform:uppercase}
.iprap-featured{
  margin:0 32px 36px;border:1px solid var(--iprap-rule);
  background:var(--iprap-paper-deep);
}
.iprap-featured img{width:100%;height:auto;filter:sepia(.12) contrast(1.02)}

.iprap-body-cols{
  display:grid;
  grid-template-columns: 180px minmax(0, var(--iprap-measure)) 180px;
  gap:36px;
  justify-content:center;
  padding:0 32px;
}
@media (max-width:960px){
  .iprap-body-cols{grid-template-columns:1fr;gap:18px}
}
.iprap-marginalia{
  font-family:var(--iprap-font-body);font-style:italic;
  font-size:.86rem;line-height:1.5;color:var(--iprap-ink-soft);
  padding-top:6px;
}
.iprap-marginalia p{margin:0 0 14px;border-left:1px solid var(--iprap-accent);padding-left:12px}
.iprap-marginalia .iprap-margin-num{
  font-family:var(--iprap-font-display);
  color:var(--iprap-accent);font-style:normal;
  font-size:1.1rem;margin-right:6px;
}

.iprap-entry-content{
  font-size:1.06rem;line-height:1.78;
}
.iprap-entry-content > p:first-of-type::first-letter{
  font-family:var(--iprap-font-display);
  font-weight:600;
  font-size:5.2rem;line-height:.86;
  float:left;padding:6px 12px 0 0;
  color:var(--iprap-ink);
  text-shadow:1px 1px 0 rgba(168,129,58,0.18);
}
.iprap-entry-content h2,
.iprap-entry-content h3,
.iprap-entry-content h4{
  font-family:var(--iprap-font-display);
  font-weight:500;color:var(--iprap-ink);
  margin:2.2em 0 .6em;line-height:1.2;
}
.iprap-entry-content h2{font-size:1.65rem;border-bottom:1px solid var(--iprap-rule);padding-bottom:6px}
.iprap-entry-content h3{font-size:1.28rem;font-style:italic}
.iprap-entry-content blockquote{
  border-left:3px solid var(--iprap-accent);
  margin:1.6em 0;padding:.4em 1.2em;
  font-style:italic;color:var(--iprap-ink-soft);
  font-size:1.12rem;
}
.iprap-entry-content ul,
.iprap-entry-content ol{padding-left:1.4em}
.iprap-entry-content li{margin-bottom:.4em}
.iprap-entry-content img{
  margin:1.6em auto;border:1px solid var(--iprap-rule);
  background:var(--iprap-paper-deep);
}
.iprap-quill-divider{
  display:block;margin:56px auto 12px;
  color:var(--iprap-accent);width:180px;height:24px;
}

/* Related */
.iprap-related{
  border-top:1px double var(--iprap-ink);
  margin-top:56px;padding:36px 0 12px;
}
.iprap-related .widget-title,
.iprap-cat-block .widget-title{
  font-family:var(--iprap-font-display);
  font-size:1.15rem;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--iprap-ink);
  margin:0 0 20px;
  padding-bottom:6px;border-bottom:1px solid var(--iprap-rule);
}

/* Archive */
.iprap-archive{padding:52px 0 12px}
.iprap-archive-head{text-align:center;margin-bottom:34px}
.archive-title.iprap-archive-title{
  font-family:var(--iprap-font-display);
  font-weight:500;
  font-size:clamp(2rem,2.4vw + 1rem,3rem);
  margin:0 0 10px;color:var(--iprap-ink);
}
.iprap-archive-desc{font-style:italic;color:var(--iprap-ink-soft);max-width:52ch;margin:0 auto}

/* Page */
.iprap-page{padding:56px 0 24px;max-width:820px;margin:0 auto}
.iprap-page .iprap-entry-title{max-width:24ch}
.iprap-page .iprap-page-content{padding:0 32px;font-size:1.06rem;line-height:1.78}

/* Footer */
.iprap-footer{
  margin-top:80px;
  background:var(--iprap-ink);
  color:#e9dcc4;
  padding:48px 0 26px;
  font-family:var(--iprap-font-body);
}
.iprap-footer a{color:#e9dcc4;border-bottom:1px solid rgba(168,129,58,.35)}
.iprap-footer a:hover{color:var(--iprap-accent);border-bottom-color:var(--iprap-accent)}
.iprap-foot-grid{
  display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:44px;
}
@media (max-width:800px){.iprap-foot-grid{grid-template-columns:1fr}}
.iprap-foot-col .widget-title{
  font-family:var(--iprap-font-display);
  font-size:.95rem;font-weight:500;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--iprap-accent);
  margin:0 0 14px;padding-bottom:6px;
  border-bottom:1px solid rgba(168,129,58,.4);
}
.iprap-foot-blurb{font-style:italic;line-height:1.6;color:#dccfb2}
.iprap-foot-list{list-style:none;margin:0;padding:0}
.iprap-foot-list li{margin:6px 0}
.iprap-foot-partners a{overflow-wrap:anywhere}
.iprap-copy{
  margin-top:36px;padding-top:16px;
  border-top:1px solid rgba(168,129,58,.3);
  text-align:center;font-size:.86rem;color:#c9b995;letter-spacing:.04em;
}

/* Widget-title generic (never headings, always <p>) */
.widget-title{font-family:var(--iprap-font-display);font-weight:500;letter-spacing:.14em;text-transform:uppercase}

.iprap-foot-logo{display:inline-block;margin-bottom:10px}
.iprap-foot-logo svg{width:40px;height:40px}
