/* DJ Request Pro — shared styles for content pages
   (wedding-song-requests.html, how-to-take-song-requests-as-a-dj.html, 404.html).
   Same palette and type as terms.html / landing.html. */
:root{
  --gold:#C9A24B; --gold-bright:#E8C978; --bg:#0E0C09; --panel:#1A1611; --panel-2:#221C15;
  --text:#F3EBDA; --muted:#A99C86; --border:#3A3025; --ok:#8A9A5B;
  --radius:14px; color-scheme: dark; font-family:'Jost', -apple-system, sans-serif;
}
*{box-sizing:border-box; margin:0; padding:0;}
body{background:var(--bg); color:var(--text); -webkit-font-smoothing:antialiased; line-height:1.65; overflow-x:hidden;}
a{color:var(--gold-bright);}
.wrap{max-width:780px; margin:0 auto; padding:0 24px;}

header{border-bottom:1px solid var(--border); padding:16px 0; position:sticky; top:0; z-index:10; background:rgba(14,12,9,.92); backdrop-filter:blur(8px);}
header .wrap{display:flex; align-items:center; justify-content:space-between; gap:12px;}
.brand{display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--text);}
.ring{width:20px;height:20px;border-radius:50%;border:2px solid var(--gold);position:relative;flex:none;}
.ring::after{content:'';position:absolute;top:50%;left:50%;width:6px;height:6px;background:var(--gold);border-radius:50%;transform:translate(-50%,-50%);}
.brand-name{font-family:'Cormorant Garamond', serif; font-weight:700; font-size:20px;}

.btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:13px 22px; border-radius:10px; font-weight:600; font-size:14px; text-decoration:none; letter-spacing:.02em; border:1.5px solid transparent;}
.btn-primary{background:linear-gradient(135deg,var(--gold-bright),var(--gold)); color:#12100A;}
.btn-ghost{border-color:var(--border); color:var(--text);}
.btn-sm{padding:9px 14px; font-size:13px;}

main{padding:44px 0 72px;}
.eyebrow{font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--gold); margin-bottom:12px;}
h1{font-family:'Cormorant Garamond', serif; font-size:44px; line-height:1.08; color:var(--gold-bright); margin-bottom:16px;}
.lead{font-size:18px; color:var(--text); margin-bottom:24px;}
h2{font-family:'Cormorant Garamond', serif; font-size:28px; line-height:1.2; color:var(--gold-bright); margin:44px 0 12px;}
h3{font-size:16px; font-weight:600; color:var(--text); margin:22px 0 6px;}
p, li{font-size:16px; color:var(--text); margin-bottom:12px;}
ul, ol{padding-left:22px; margin-bottom:16px;}
.muted{color:var(--muted);}
.actions{display:flex; gap:10px; flex-wrap:wrap; margin:6px 0 10px;}

.steps{display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:12px; margin:18px 0;}
.step{background:var(--panel); border:1px solid var(--border); border-radius:var(--radius); padding:18px;}
.step .n{font-family:'Cormorant Garamond', serif; font-size:26px; color:var(--gold); font-weight:700;}
.step h3{margin-top:4px;}
.step p{font-size:14px; color:var(--muted); margin:0;}

.callout{background:var(--panel); border:1px solid var(--gold); border-radius:var(--radius); padding:20px 22px; margin:26px 0;}
.callout p:last-child{margin-bottom:0;}
table.compare{width:100%; border-collapse:collapse; margin:14px 0 20px; font-size:14px;}
table.compare th, table.compare td{border-bottom:1px solid var(--border); padding:10px 8px; text-align:left; vertical-align:top;}
table.compare th{color:var(--muted); font-weight:600;}
.table-scroll{overflow-x:auto;}

.faq-item{border-bottom:1px solid var(--border); padding:18px 0;}
.faq-item h3{margin:0 0 6px;}
.faq-item p{color:var(--muted); font-size:15px; margin:0;}

.cta-band{margin-top:52px; background:var(--panel); border:1px solid var(--border); border-radius:var(--radius); padding:30px 24px; text-align:center;}
.cta-band h2{margin-top:0;}

footer{border-top:1px solid var(--border); padding:26px 0; color:var(--muted); font-size:13px;}
footer .links{display:flex; flex-wrap:wrap; gap:8px 18px; margin-bottom:10px;}
footer a{color:var(--muted);}

@media (max-width:560px){
  h1{font-size:34px;}
  h2{font-size:24px;}
  .lead{font-size:16px;}
  header .btn-sm{padding:8px 11px; font-size:12px;}
}
