
:root{--taom-navy:#0d2030;--taom-amber:#e9a838;--taom-amber-dk:#c98415;--taom-cream:#f9f4e8;--ink:#1a1a1a;--mute:#5a5a5a;--bg:#fff;--soft:#f5f1e8;--line:#e6e2d8}
*{box-sizing:border-box}
html,body{margin:0;padding:0;color:var(--ink);background:var(--bg);font-family:'Lato','Helvetica Neue',Arial,sans-serif;font-size:17px;line-height:1.65}
h1,h2,h3,h4{font-family:'Playfair Display','Georgia',serif;font-weight:700;line-height:1.2;margin:1.6em 0 .5em;color:var(--taom-navy);letter-spacing:-.005em}
h1{font-size:2.3rem;margin-top:.4em}h2{font-size:1.55rem}h3{font-size:1.2rem}
p{margin:0 0 1em}
a{color:var(--taom-amber-dk);text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block;margin:1.2em auto;border-radius:3px}
hr{border:0;border-top:1px solid var(--line);margin:2em 0}
blockquote{border-left:3px solid var(--taom-amber);margin:1.5em 0;padding:.4em 1.2em;color:var(--mute);font-style:italic}
header.site{position:sticky;top:0;background:var(--taom-navy);color:#fff;z-index:50;border-bottom:1px solid #1d3148}
.bar{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:.7em 1.2em;gap:1em;flex-wrap:wrap}
.bar .brand{display:flex;align-items:center;gap:.7em;color:#fff;font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:700}
.bar .brand img{height:42px;margin:0;display:block}
nav.main ul{list-style:none;display:flex;gap:1.6em;margin:0;padding:0;flex-wrap:wrap;align-items:center}
nav.main a{color:#fff;font-family:'Lato',sans-serif;font-size:.95rem;letter-spacing:.02em;padding-bottom:.2em;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}
nav.main a:hover{color:var(--taom-amber);text-decoration:none;border-bottom-color:var(--taom-amber)}
nav.main a.current{color:var(--taom-amber);border-bottom-color:var(--taom-amber);font-weight:600}
main{max-width:880px;margin:0 auto;padding:2em 1.2em 4em}
footer.site{background:var(--taom-navy);color:#bdc8d3;padding:2.5em 1.2em;margin-top:3em;font-size:.92rem}
footer.site .inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;gap:2em;justify-content:space-between}
footer.site a{color:#fff}
footer.site h4{color:var(--taom-amber);margin:.4em 0 .6em;font-size:1rem;font-family:'Playfair Display',serif}
footer.site ul{list-style:none;padding:0;margin:0}
footer.site li{margin:.25em 0}
.lead{font-size:1.18rem;color:var(--mute);margin-bottom:1.6em;line-height:1.55}
.meta{color:var(--mute);font-size:.92rem;margin-bottom:1.2em;font-style:italic}
.btn{display:inline-block;background:var(--taom-amber);color:var(--taom-navy)!important;padding:.7em 1.4em;border-radius:3px;font-weight:700;font-family:'Lato',sans-serif;text-decoration:none;letter-spacing:.02em}
.btn:hover{background:var(--taom-amber-dk);text-decoration:none;color:#fff!important}

/* Hero (home) */
.hero{padding:3em 0 2.5em;text-align:center;background:linear-gradient(180deg,var(--soft) 0%,#fff 100%);margin:-2em -1.2em 2em;padding-left:1.2em;padding-right:1.2em}
.hero img.cover-art{max-width:220px;margin:0 auto 1.5em;border-radius:8px;box-shadow:0 18px 40px rgba(13,32,48,.18)}
.hero h1{font-size:2.7rem;line-height:1.1;margin:.1em auto .3em;max-width:18ch}
.hero .sub{font-size:1.18rem;color:var(--mute);max-width:48ch;margin:1em auto 1.6em;line-height:1.55}
.hero .author{font-size:.85rem;letter-spacing:.18em;color:var(--taom-amber-dk);text-transform:uppercase;font-weight:700;margin:0 0 1em}

/* Episode cards */
.episodes{display:flex;flex-direction:column;gap:1.4em;margin:2em 0}
.episode-card{display:block;padding:1.4em 1.5em;background:#fff;border:1px solid var(--line);border-radius:6px;border-left:4px solid var(--taom-amber);text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}
.episode-card:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(13,32,48,.07);text-decoration:none}
.episode-card .ep-num{display:inline-block;color:var(--taom-amber-dk);font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:.4em}
.episode-card h3{margin:.1em 0 .4em;font-size:1.2rem;color:var(--taom-navy)}
.episode-card .ep-meta{color:var(--mute);font-size:.88rem;margin-bottom:.6em}
.episode-card p{color:var(--ink);margin:0;font-size:.96rem;line-height:1.55}

/* Audio player */
.audio-block{background:var(--taom-navy);color:#fff;padding:1.5em;border-radius:6px;margin:1.5em 0}
.audio-block .ep-eyebrow{display:block;color:var(--taom-amber);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;margin-bottom:.4em}
.audio-block h2{color:#fff;margin:.1em 0 .8em;font-size:1.5rem;font-family:'Playfair Display',serif}
.audio-block audio{width:100%;outline:none}
.audio-block .ep-fallback{color:#bdc8d3;font-size:.88rem;margin:1em 0 0;font-style:italic}
.audio-block .ep-fallback a{color:var(--taom-amber)}

/* Subscribe buttons */
.sub-row{display:flex;gap:.8em;flex-wrap:wrap;margin:1.5em 0}
.sub-row a{display:inline-block;padding:.55em 1.1em;border-radius:3px;background:var(--soft);color:var(--taom-navy)!important;font-weight:700;font-size:.92rem}
.sub-row a:hover{background:var(--taom-amber);text-decoration:none}

@media (max-width:680px){
  .bar{padding:.6em .8em}
  nav.main ul{gap:.8em;font-size:.88rem}
  h1{font-size:1.7rem}h2{font-size:1.35rem}
  .hero h1{font-size:2rem}
  main{padding:1.4em .9em 3em}
  footer.site .inner{flex-direction:column;gap:1.2em}
}
