/* THE COWBOY IN YOU — brand stylesheet (per CIY Brand Code) */
/* Display = Cinzel (Trajan alt). Body = Georgia/Times. SERIF ONLY — never sans. */
:root{
  --navy:#1A2544; --navy2:#0f1a24; --gold:#C4A44E; --cream:#E8DCC8; --muted:#D4C8A8;
}
*{box-sizing:border-box;margin:0;padding:0}
body{
  background:var(--navy);
  color:var(--cream);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.25rem; line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.display,.kicker,.sub,.btn,.lessons li a,.faq dt{
  font-family:"Cinzel",Georgia,serif;
  font-weight:400; letter-spacing:.12em; text-transform:uppercase;
}
a{color:var(--gold);text-decoration:none}
a:hover{text-decoration:underline}
strong{color:var(--cream)} em{color:var(--muted);font-style:italic}
.wrap{max-width:760px;margin:0 auto;padding:0 24px}
.hero{background:linear-gradient(135deg,var(--navy2),#1a2a3a);text-align:center;padding:104px 24px 88px}
.kicker{color:var(--gold);letter-spacing:.35em;font-size:.8rem}
.hero h1{font-size:2.7rem;margin:.3em 0 .1em;line-height:1.1;color:var(--cream)}
.rule{height:1px;background:var(--gold);width:120px;margin:18px auto}
.sub{color:var(--gold);letter-spacing:.3em;font-size:.85rem}
.logo{width:54px;height:auto;margin:0 auto 14px;display:block;opacity:.95}
.bookcover{display:block;width:74%;max-width:300px;margin:4px auto 26px;border-radius:10px;box-shadow:0 22px 55px rgba(0,0,0,.5)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.tagline{font-size:1.45rem;color:var(--cream);margin:26px auto 6px;max-width:640px}

.heromark{width:82px;height:auto;display:block;margin:0 auto 20px}
.herotitle .the{display:block;color:var(--gold);font-family:"Cinzel",serif;font-size:.8rem;letter-spacing:.35em;margin-bottom:.5em}
.herobyline{font-family:"Cinzel",serif;letter-spacing:.12em;font-size:.8rem;color:var(--muted);max-width:46ch;margin:.7rem auto 0;line-height:1.6}
.herolede{font-family:Georgia,"Times New Roman",serif;font-style:italic;color:var(--cream);font-size:1.6rem;line-height:1.5;max-width:34ch;margin:1.1rem auto .4rem;text-align:center}
.btn{display:inline-block;border:1px solid var(--gold);color:var(--gold);letter-spacing:.18em;font-size:.85rem;padding:14px 28px;margin:10px 8px;border-radius:2px;transition:.2s}
.btn:hover{background:var(--gold);color:var(--navy);text-decoration:none}
.btn.solid{background:var(--gold);color:var(--navy)}
section{padding:72px 0;border-top:1px solid rgba(196,164,78,.25)}
section h2{font-size:1.45rem;text-align:center;margin-bottom:26px;color:var(--gold)}
.lead{font-size:1.35rem}
.catechism{text-align:center;font-style:italic;color:var(--muted)}
.catechism p{margin:.85em 0}
.catechism #rotquote+p{margin-top:1.1em}
.lessons{list-style:none;counter-reset:l}
.lessons li{counter-increment:l;border-bottom:1px solid rgba(196,164,78,.2);padding:14px 0}
.lessons li a{font-size:1rem;letter-spacing:.06em}
.lessons li::before{content:counter(l,decimal-leading-zero);color:var(--gold);font-family:"Cinzel",serif;margin-right:14px}
.join{background:linear-gradient(135deg,var(--navy2),#1a2a3a);text-align:center}
.note{font-size:.95rem;color:var(--muted);font-style:italic}
.faq dt{font-size:1rem;letter-spacing:.05em;color:var(--gold);margin-top:22px}
.faq dd{margin:.4em 0 0}
footer{text-align:center;padding:40px 24px;color:var(--muted);font-size:.95rem;border-top:1px solid rgba(196,164,78,.3)}
/* closer + rotating quote */
.closer{text-align:center;background:linear-gradient(135deg,var(--navy2),#1a2a3a)}
.closer .bigquote{font-size:1.6rem;line-height:1.5;color:var(--cream);font-style:italic;max-width:620px;margin:26px auto}
.closer .byline{font-family:"Cinzel",serif;letter-spacing:.18em;text-transform:uppercase;font-size:.78rem;color:var(--gold)}
.rotquote{font-size:1.5rem;line-height:1.45;color:var(--cream);min-height:2.2em;transition:opacity .45s ease;opacity:1;max-width:600px;margin:1.4em auto;text-align:center}
/* reader */
.reader{max-width:720px;margin:0 auto;padding:48px 24px 80px}
.reader h1{font-size:2rem;text-align:center;color:var(--cream);line-height:1.2}
.reader h2{font-size:1.2rem;color:var(--gold);margin:2.2em 0 .6em;border-top:1px solid rgba(196,164,78,.3);padding-top:1.2em}
.reader p{margin:0 0 1.05em;font-size:1.3rem}
.reader .sub{display:block;text-align:center;margin:.6em 0 2em}
.reader .top{text-align:center;margin-bottom:1em}
.cover{display:block;max-width:340px;width:80%;margin:0 auto 28px;border:1px solid rgba(196,164,78,.4)}
.dl{text-align:center;margin:0 0 10px}
.giftline{text-align:center;color:var(--muted);font-style:italic;margin-bottom:1.8em}
.booktoc{list-style:none;max-width:560px;margin:0 auto 1.4em;padding:0}
.booktoc li{border-bottom:1px solid rgba(196,164,78,.16);padding:11px 4px;font-size:1.05rem;color:var(--muted)}
.booktoc li a{color:var(--cream)} .booktoc li a:hover{color:var(--gold)}
/* per-chapter song */
.chapter-song{background:var(--navy2);border:1px solid rgba(196,164,78,.3);border-radius:6px;padding:20px 22px;margin:2.6em 0 0;text-align:center}
.chapter-song .cs-label{display:block;font-family:"Cinzel",serif;letter-spacing:.2em;text-transform:uppercase;font-size:.66rem;color:var(--gold);margin-bottom:10px}
.chapter-song .cs-link{display:inline-block;font-family:"Cinzel",serif;letter-spacing:.05em;font-size:.92rem;color:var(--cream);margin-bottom:8px}
.chapter-song .cs-link:hover{color:var(--gold);text-decoration:none}
.chapter-song .cs-quote{font-style:italic;color:var(--muted);font-size:1.05rem;margin:0}
/* email join form */
.join-form{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:18px auto 8px;max-width:480px}
.join-form input{flex:1;min-width:220px;background:rgba(232,220,200,.06);border:1px solid var(--gold);color:var(--cream);font-family:Georgia,serif;font-size:1.05rem;padding:13px 16px;border-radius:2px}
.join-form input::placeholder{color:var(--muted)}
.join-form button{cursor:pointer;border:none}
/* social + share rows — refined outline chips */
.social{margin-top:22px}
.social .lab{display:block;color:var(--muted);font-family:"Cinzel",serif;letter-spacing:.24em;font-size:.66rem;text-transform:uppercase;margin-bottom:14px}
.social a{display:inline-block;margin:5px;padding:9px 18px;border:1px solid rgba(196,164,78,.38);border-radius:2px;font-family:"Cinzel",serif;letter-spacing:.14em;font-size:.72rem;text-transform:uppercase;color:var(--muted);transition:.18s}
.social a:hover{border-color:var(--gold);color:var(--gold);text-decoration:none}
.share a{cursor:pointer}
/* vote — Cowboy or Bureaucrat */
.vote{max-width:680px;margin:0 auto;padding:48px 24px 80px;text-align:center}
.vote .scenario{background:var(--navy2);border:1px solid rgba(196,164,78,.35);border-radius:6px;padding:26px 24px;margin:24px 0}
.vote .scenario .q{font-size:1.5rem;color:var(--cream);line-height:1.4}
.vbtns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:26px 0}
.vbtn{cursor:pointer;font-family:"Cinzel",serif;letter-spacing:.14em;text-transform:uppercase;font-size:1rem;padding:18px 30px;border-radius:3px;border:1px solid var(--gold);background:transparent;color:var(--gold);transition:.18s;min-width:180px}
.vbtn.cowboy:hover,.vbtn.cowboy.picked{background:var(--gold);color:var(--navy)}
.vbtn.bureaucrat{border-color:#7d8694;color:#9aa3b0}
.vbtn.bureaucrat:hover,.vbtn.bureaucrat.picked{background:#3a4452;color:var(--cream);border-color:#3a4452}
.tally{margin:18px auto 0;max-width:480px;text-align:left;display:none}
.tally.show{display:block}
.bar{height:30px;border-radius:3px;margin:8px 0;position:relative;background:rgba(232,220,200,.08);overflow:hidden}
.bar span{position:absolute;left:0;top:0;height:100%;display:block;width:0;transition:width .6s ease}
.bar .lab{position:relative;z-index:2;line-height:30px;padding:0 12px;font-family:"Cinzel",serif;font-size:.78rem;letter-spacing:.08em;color:var(--cream)}
.bar.c span{background:rgba(196,164,78,.55)} .bar.b span{background:rgba(122,134,148,.45)}
.verdict{font-family:"Cinzel",serif;letter-spacing:.1em;color:var(--gold);margin-top:18px;font-size:1.05rem;min-height:1.4em}
/* gallery (quotes / armory) */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;margin-top:24px}
.card{background:var(--navy2);border:1px solid rgba(196,164,78,.3);border-radius:4px;overflow:hidden;text-align:center}
.card img{width:100%;display:block}
.card .cap{padding:10px;font-@media (max-width:600px){
  body{font-size:1.12rem;line-height:1.65}
  .hero{padding:56px 18px 46px}.hero h1{font-size:2rem}
  .tagline,.lead{font-size:1.18rem}
  .herolede{font-size:1.24rem}
  section{padding:48px 0}section h2{font-size:1.25rem}
  .btn{display:block;width:100%;max-width:300px;margin:10px auto}
  .reader{padding:32px 20px 64px}.reader h1{font-size:1.6rem}.reader p{font-size:1.15rem}
  .closer .bigquote{font-size:1.3rem}.rotquote{font-size:1.25rem}
}

.heroimg{display:block;width:100%;max-width:940px;margin:0 auto 26px;border-radius:4px}

/* per-chapter song share row */
.chapter-song .cs-share{margin-top:16px}
.chapter-song .cs-share .lab{display:block;color:var(--muted);font-family:"Cinzel",serif;letter-spacing:.2em;font-size:.6rem;text-transform:upperc

/* soundtrack: song links + Your Song share widget */
.songlink{color:#D4C8A8;border-bottom:1px dotted rgba(196,164,78,.5)} .songlink:hover{color:var(--gold);text-decoration:none}
.yoursong{background:var(--navy2);border:1px solid rgba(196,164,78,.35);border-radius:8px;padding:30px 26px;margin:24px auto 8px;max-width:640px;text-align:center}
.yoursong h2{margin-bottom:10px}
.yoursong .ys-field{margin:16px 0;text-align:left}
.yoursong label{display:block;font-family:"Cinzel",serif;letter-spacing:.16em;text-transform:uppercase;font-size:.62rem;color:var(--gold);margin-bottom:8px}
.yoursong select,.yoursong input{width:100%;background:rgba(232,220,200,.06);border:1px solid var(--gold);color:var(--cream);font-family:Georgia,serif;font-size:1.02rem;padding:12px 14px;border-radius:2px}
.yoursong .ys-card{display:block;max-width:230px;margin:14px auto;border:1px solid rgba(196,164,78,.4);border-radius:4px}
.yoursong .ys-preview{font-style:italic;color:var(--muted);font-size:.98rem;margin:14px auto;max-width:560px;min-height:2.2em}
.yoursong .ys-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:6px}
.yoursong .ys-actions a,.yoursong .ys-actions button{cursor:pointer;border:1px solid var(--gold);background:transparent;color:var(--gold);font-family:"Cinzel",serif;letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;padding:10px 16px;border-radius:2px;transition:.18s}
.yoursong .ys-actions a:hover,.yoursong .ys-actions button:hover{background:var(--gold);color:var(--navy);text-decoration:none}
