:root{
  --cream:#F9F5ED; --cream-deep:#EEE7D9;
  --ink:#02183F; --ink-soft:#1D3969;
  --gold:#BD9033; --gold-soft:#CFB47C;
  --font-serif:"Cormorant Garamond", Georgia, serif;
  --font-italic:"Cormorant Infant","Cormorant Garamond", Georgia, serif;
  --font-script:"Dancing Script", cursive;
  --font-sans:"Inter", system-ui, sans-serif;
}
html{scroll-behavior:smooth;}
body{background:var(--cream); color:var(--ink); font-family:var(--font-sans); margin:0;}
body.elementor-page #site-content{max-width:none;}
a{color:inherit;}
img{max-width:100%; height:auto;}

/* Watercolor wash used behind the hero + reader */
.hc-watercolor{
  background-color:var(--cream);
  background-image:
    radial-gradient(ellipse 55% 55% at 5% 30%, rgba(150,178,224,.42), transparent 60%),
    radial-gradient(ellipse 50% 50% at 95% 40%, rgba(150,178,224,.38), transparent 60%),
    radial-gradient(ellipse 40% 30% at 50% 100%, rgba(170,190,225,.28), transparent 65%),
    radial-gradient(ellipse 30% 20% at 50% 0%, rgba(170,190,225,.24), transparent 65%);
}

/* Shared site header */
.hc-header{position:sticky; top:0; z-index:50; background:rgba(249,245,237,.9);
  backdrop-filter:blur(8px); border-bottom:1px solid rgba(189,144,51,.25);}
.hc-header .hc-wrap{max-width:1200px; margin:0 auto; padding:14px 24px;
  display:flex; align-items:center; justify-content:space-between; gap:20px;}
.hc-logo{font-family:var(--font-serif); font-size:22px; letter-spacing:.06em; color:var(--ink);
  text-decoration:none; font-weight:600;}
.hc-nav{display:flex; align-items:center; gap:26px;}
.hc-nav a{font-family:var(--font-sans); font-size:12px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--ink-soft); text-decoration:none;}
.hc-nav a:hover{color:var(--gold);}
.hc-btn{display:inline-block; background:var(--ink); color:var(--cream)!important;
  padding:10px 22px; border-radius:999px; font-size:12px; letter-spacing:.16em; text-transform:uppercase;
  text-decoration:none;}
.hc-btn:hover{opacity:.9;}
.hc-btn-outline{background:transparent; color:var(--ink)!important; border:1px solid var(--ink);}
.hc-btn-outline:hover{background:var(--ink); color:var(--cream)!important;}
@media(max-width:782px){ .hc-nav a:not(.hc-btn){display:none;} }

/* Footer */
.hc-footer{background:var(--ink); color:var(--cream); text-align:center; padding:40px 24px;}
.hc-footer .hc-sig{font-family:var(--font-script); font-size:30px; color:var(--gold-soft);}
.hc-footer a{color:var(--gold-soft); text-decoration:none; margin:0 10px; font-size:13px;
  letter-spacing:.1em;}
.hc-footer .hc-fine{font-family:var(--font-sans); font-size:12px; opacity:.7; margin-top:14px;}

/* Poem reader */
.hc-poem-title{font-family:var(--font-serif); text-transform:uppercase; letter-spacing:.22em;
  color:var(--ink); font-size:22px; font-weight:600; margin:0 0 22px;}
.hc-verse p{font-family:var(--font-serif); color:var(--ink); font-size:19px; line-height:1.75;
  margin:0 0 1.1em;}
.hc-verse p:last-child{margin-bottom:0;}
.hc-pagenum{font-family:var(--font-sans); color:var(--ink-soft); font-size:13px; letter-spacing:.2em;
  text-align:center; margin-top:34px;}
.hc-spread img{border-radius:3px; box-shadow:0 26px 50px -22px rgba(2,24,63,.45);}
.hc-poemnav{display:flex; justify-content:space-between; gap:16px; margin-top:30px;
  font-family:var(--font-serif); font-size:16px;}
.hc-poemnav a{color:var(--ink-soft); text-decoration:none;}
.hc-poemnav a:hover{color:var(--gold);}

/* Contents / index */
.hc-toc{max-width:760px; margin:0 auto;}
.hc-toc h2{font-family:var(--font-serif); color:var(--gold); text-transform:uppercase;
  letter-spacing:.2em; font-size:15px; border-bottom:1px solid rgba(189,144,51,.35);
  padding-bottom:8px; margin:34px 0 8px;}
.hc-toc a{display:flex; justify-content:space-between; align-items:baseline; gap:12px;
  font-family:var(--font-serif); font-size:19px; color:var(--ink); text-decoration:none;
  padding:9px 4px; border-bottom:1px dotted rgba(29,57,105,.2);}
.hc-toc a:hover{color:var(--gold);}
.hc-toc a .pg{font-family:var(--font-sans); font-size:13px; color:var(--ink-soft);}

/* Divider ornament */
.hc-orn{display:flex; align-items:center; gap:10px; color:var(--gold); justify-content:center;}
.hc-orn::before,.hc-orn::after{content:""; flex:1; height:1px; background:currentColor; opacity:.5;}

/* ---- Reader with persistent sidebar TOC (matches original) ---- */
.hc-sidebar{position:sticky; top:70px; align-self:flex-start; max-height:calc(100vh - 80px);
  overflow-y:auto; border-right:1px solid rgba(189,144,51,.2); padding:22px 18px 40px 4px;}
.hc-sidebar .hc-side-home{font-family:var(--font-sans); font-size:10px; letter-spacing:.35em;
  text-transform:uppercase; color:var(--ink-soft); text-decoration:none;}
.hc-sidebar .hc-side-title{display:block; font-family:var(--font-serif); font-size:19px; color:var(--ink);
  text-decoration:none; margin:4px 0 14px;}
.hc-sidebar a.hc-side-item{display:flex; justify-content:space-between; align-items:baseline; gap:10px;
  font-family:var(--font-serif); font-size:15px; color:var(--ink); text-decoration:none;
  padding:8px 10px; border-left:4px solid transparent;}
.hc-sidebar a.hc-side-item:hover{background:rgba(255,255,255,.5);}
.hc-sidebar a.hc-side-item .pg{font-family:var(--font-sans); font-size:11px; color:var(--ink-soft);}
.hc-sidebar a.hc-side-item.active{background:#fff; border-left-color:var(--gold);
  box-shadow:inset 0 1px 3px rgba(2,24,63,.06);}
.hc-sidebar .hc-side-sec{font-family:var(--font-sans); font-size:9px; letter-spacing:.25em;
  text-transform:uppercase; color:var(--gold); padding:12px 10px 4px;}
@media(max-width:960px){ .hc-sidebar{display:none;} }

/* verse + title tuned to the live site (airier) */
.hc-poem-title, .hc-poem-title .elementor-heading-title{font-family:var(--font-serif)!important;
  text-transform:uppercase; letter-spacing:.28em; color:var(--ink); font-size:26px!important;
  font-weight:500!important; line-height:1.3; margin:0 0 26px;}
.hc-verse p{font-size:20px; line-height:1.85;}
.hc-textonly .hc-verse p{text-align:center;}

/* reliable text-only centering via widget classes */
.hc-center, .hc-center p, .hc-center .elementor-heading-title{text-align:center!important;}
.hc-textonly .hc-verse{max-width:640px;margin:0 auto;}
