:root{--navy:#10283b;--gold:#b88a36;--cream:#fbf8f0;--ink:#24313b}
*{box-sizing:border-box}body{margin:0;font-family:Georgia,"Times New Roman",serif;color:var(--ink);background:var(--cream);line-height:1.65}.hero img{display:block;width:100%;height:auto}.nav{background:var(--navy);display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding:10px 18px}.nav a{color:#fff;text-decoration:none;padding:7px 14px;border-radius:999px}.nav a:hover,.nav a.active{background:rgba(255,255,255,.13);color:#f1d89b}main{max-width:920px;margin:auto;padding:48px 24px 70px;text-align:center}h1,h2{color:var(--navy);font-weight:500}h1{font-size:clamp(2rem,5vw,3.25rem);margin:0 0 10px}.tagline{color:var(--gold);text-transform:uppercase;letter-spacing:.15em;font-size:.92rem;margin-bottom:32px}.intro{max-width:760px;margin:0 auto 42px;font-size:1.15rem}.music{margin:42px auto;padding:32px 22px;border-top:1px solid #d9c9a7;border-bottom:1px solid #d9c9a7}.buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px}.button{display:inline-block;padding:12px 20px;border:1px solid var(--navy);border-radius:999px;color:var(--navy);text-decoration:none;min-width:150px;background:#fff}.button:hover{background:var(--navy);color:#fff}.disabled{opacity:.55;pointer-events:none;background:transparent}.contact{max-width:680px;margin:50px auto 0;text-align:left;background:#fff;padding:30px;border-radius:14px;box-shadow:0 8px 28px rgba(16,40,59,.08)}.contact h2,.contact-intro{text-align:center}label{display:block;margin:15px 0 6px;color:var(--navy)}input,textarea{width:100%;padding:12px 14px;border:1px solid #c9c9c9;border-radius:8px;font:inherit}textarea{min-height:150px;resize:vertical}button{width:100%;margin-top:18px;padding:13px 20px;border:0;border-radius:999px;background:var(--navy);color:#fff;font:inherit;cursor:pointer}.small{text-align:center;font-size:.9rem;color:#66727a;margin-top:12px}footer{text-align:center;padding:26px 20px;background:var(--navy);color:#e8edf0;font-size:.9rem}.placeholder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:22px;margin-top:30px}.song-card{min-height:220px;border:1px dashed #c8b78f;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;padding:20px;color:#7a715f}.book-image{display:block;width:min(100%,820px);margin:30px auto;border-radius:14px;box-shadow:0 10px 30px rgba(16,40,59,.15)}.page-copy{max-width:760px;margin:0 auto;font-size:1.12rem}@media(max-width:600px){main{padding-top:34px}.intro,.page-copy{font-size:1.05rem}.contact{padding:22px 18px}}

.cover-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:24px;margin:34px auto;max-width:1100px}.cover-card{margin:0;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.10)}.cover-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}.cover-card figcaption{padding:12px 14px;text-align:center;font-weight:600}.lyrics-feature{max-width:850px;margin:55px auto 20px;text-align:center}.lyrics-feature img{display:block;width:100%;height:auto;margin:18px auto 0;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.10)}

.about-section{max-width:760px;margin:28px auto 46px;text-align:left;background:#fff;padding:30px 34px;border-radius:14px;box-shadow:0 8px 28px rgba(16,40,59,.08)}.about-section h2{text-align:center;margin-top:0}.about-section p{font-size:1.08rem}.signature{text-align:right;font-style:italic;color:var(--navy);margin-top:24px}.about-me{text-align:center}@media(max-width:600px){.about-section{padding:24px 20px}.about-section p{font-size:1.02rem}}

.song-about{padding:0 16px 18px;text-align:left;border-top:1px solid #eee7d8}.song-about h3{font-size:1rem;color:var(--navy);margin:13px 0 4px}.song-about p{font-size:.94rem;line-height:1.45;margin:0;color:#66727a;font-weight:400}.submission-note,.submission-form{max-width:760px;margin:28px auto;text-align:left;background:#fff;padding:30px 34px;border-radius:14px;box-shadow:0 8px 28px rgba(16,40,59,.08)}.submission-note h2{text-align:center;margin-top:0}.submission-form .short-textarea{min-height:90px}.submission-form button:disabled{opacity:.55;cursor:not-allowed}.checkline{display:flex;gap:10px;align-items:flex-start;margin-top:18px}.checkline input{width:auto;margin-top:6px}.optional{font-weight:normal;color:#66727a}@media(max-width:600px){.submission-note,.submission-form{padding:24px 20px}}
