/* Palette, sizing, and section styling live here. No external fonts or dependencies. */
:root{--ink:#263544;--paper:#fffdf6;--muted:#516171;--red:#9a3027;--line:#d5dee5;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);line-height:1.6}a{color:inherit}a:focus-visible{outline:3px solid var(--red);outline-offset:6px}img{max-width:100%;height:auto;display:block}.skip-link{position:absolute;left:1rem;top:-8rem;z-index:10;background:var(--paper);padding:1rem}.skip-link:focus{top:1rem}.site-header{max-width:1440px;margin:auto;min-height:104px;padding:20px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;font-size:12px;letter-spacing:.16em;line-height:1.3}.brand img{border-radius:50%;width:56px;height:56px}.brand strong{font-size:18px;letter-spacing:.22em}nav{display:flex;gap:32px;font-size:14px}nav a{text-decoration:none;padding:8px 0;border-bottom:1px solid transparent}nav a:hover{border-color:var(--red)}.hero{position:relative;isolation:isolate;overflow:hidden;background:#fff4d9}.sunrise{position:absolute;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(ellipse at 65% 38%,#fff9df 0%,#ffe9b9 30%,#edf2f1 68%,#d9e7ef 100%)}.sun{position:absolute;width:34vw;height:34vw;border-radius:50%;background:#fff0cb;left:49%;top:5%;box-shadow:0 0 110px 70px #fff0cb80}.ridge{position:absolute;bottom:0;width:100%;height:31%;clip-path:polygon(0 62%,12% 42%,24% 62%,40% 20%,53% 54%,69% 14%,83% 38%,100% 0,100% 100%,0 100%)}.ridge-back{background:#9eb7c344;bottom:7%;height:33%}.ridge-front{background:#829eaf55}.hero-inner{max-width:1440px;margin:auto;padding:76px 7% 85px;display:grid;grid-template-columns:1.25fr 1fr;gap:7%;align-items:center}.eyebrow,.small-label{font-size:11px;letter-spacing:.2em;font-weight:700}.eyebrow{margin:0 0 26px}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(48px,5.4vw,82px);letter-spacing:-.055em;line-height:1.08;margin:0 0 28px}em{font-weight:400;color:var(--red)}.intro{font-size:21px;font-weight:600;margin-bottom:8px}.hero-text{margin-top:0;color:#3c4c5b}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;gap:26px;background:var(--red);color:#fff7eb;border:1px solid var(--red);padding:14px 22px;text-decoration:none;font-size:14px;font-weight:600}.button:hover{background:#76231e}.text-link{text-underline-offset:6px;font-size:14px;font-weight:600}.logo-feature{margin:0;text-align:center}.logo-feature img{width:100%;border-radius:50%;box-shadow:0 24px 65px #26354435}.logo-feature figcaption{margin-top:22px;font-size:10px;letter-spacing:.24em;font-weight:700}.verse-strip{display:flex;justify-content:center;align-items:center;gap:32px;padding:25px 7%;background:#e8eff3;color:#263544}.verse-strip p{font-family:var(--serif);font-size:20px;margin:0}.verse-strip span{font-size:10px;letter-spacing:.17em;white-space:nowrap;color:#526575}.section{max-width:1440px;margin:auto;padding:100px 7%}.music{display:grid;grid-template-columns:1fr 1fr;gap:10%}h2{font-family:var(--serif);font-size:clamp(38px,4vw,58px);font-weight:400;line-height:1.12;letter-spacing:-.04em;margin:0 0 28px}.section-body{padding-top:40px}.section-body p{max-width:530px;color:var(--muted)}.section-body .lead{font-family:var(--serif);font-size:28px;color:var(--ink);margin-top:0}.music-note{border-top:1px solid var(--line);padding-top:25px;margin-top:35px}.music-note p{font-size:21px;color:var(--red);margin:10px 0}.music-note>span:last-child{font-size:13px;color:var(--muted)}.word{max-width:none;background:#edf3f7;display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-left:max(7%,calc((100vw - 1238px)/2));padding-right:max(7%,calc((100vw - 1238px)/2))}.word>div>p:not(.eyebrow){max-width:430px;color:var(--muted)}.reading{border-left:1px solid #c4d2dd;padding-left:45px}.reading h3{font-family:var(--serif);font-size:30px;font-weight:400;margin:18px 0 12px}.reading ol{padding-left:22px}.reading li{margin:12px 0;padding-left:6px}.reading-reference{font-family:var(--serif);font-style:italic;border-top:1px solid #c4d2dd;padding-top:24px}.reading-reference span{font-family:var(--sans);font-style:normal;font-size:10px;letter-spacing:.15em}.heart{text-align:center;padding-top:95px;padding-bottom:95px}.heart>p:not(.eyebrow){max-width:510px;margin:0 auto 28px;color:var(--muted)}footer{padding:35px 7%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;color:var(--muted)}.footer-name{font-family:var(--serif);font-size:22px;color:var(--ink);text-decoration:none}footer p{margin:0}
@media(max-width:760px){.site-header{padding:18px 6%;flex-wrap:wrap;gap:16px}nav{gap:24px;width:100%;justify-content:space-between}.hero-inner{padding:48px 7% 45px;grid-template-columns:1fr;gap:44px}.hero h1{font-size:clamp(45px,10vw,70px)}.logo-feature{max-width:320px;width:80%;margin:auto}.verse-strip{display:block;text-align:center}.verse-strip p{font-size:19px;margin-bottom:12px}.section{padding:60px 7%}.music,.word{grid-template-columns:1fr;gap:25px}.section-body{padding-top:0}.reading{border-left:0;border-top:1px solid #c4d2dd;padding:30px 0 0}.sun{width:85vw;height:85vw;left:25%;top:25%}footer{flex-direction:column;gap:12px;text-align:center}.actions{gap:22px}.hero .eyebrow{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Recognizable Spotify destination; dark text keeps the green button readable. */
.spotify-button{background:#1ed760;border-color:#1ed760;color:#102719;gap:12px;border-radius:999px}.spotify-button:hover{background:#3be477;border-color:#3be477}.spotify-button svg{flex-shrink:0}.spotify-button:focus-visible{outline-color:var(--ink)}

/* Featured originals retain their full square compositions. */
.featured-music{grid-column:1/-1;margin-top:44px;border-top:1px solid var(--line);padding-top:44px}.featured-heading h3{font-family:var(--serif);font-weight:400;font-size:32px;margin:0 0 30px}.featured-heading .eyebrow{margin-bottom:12px}.song-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.song img{width:100%;aspect-ratio:1;object-fit:contain;box-shadow:0 12px 28px #26354418}.song h4{font-family:var(--serif);font-size:24px;line-height:1.25;margin:20px 0 7px;font-weight:400}.song p{margin:0;color:var(--muted);font-size:13px}.catalog-link{margin:30px 0 0}@media(max-width:760px){.featured-music{margin-top:12px}.song-grid{grid-template-columns:1fr;gap:36px}.song{max-width:420px;width:100%;margin:auto}}
.song-listen{display:inline-block;margin-top:16px}
.song .song-listen{display:inline-flex;font-size:13px;padding:12px 18px}.song h4{min-height:2.5em}@media(max-width:760px){.song h4{min-height:0}}

/* Song destinations wrap naturally on narrow cards. */
.song-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.song .song-actions .song-listen{margin-top:0}.youtube-button{background:#b40000;border-color:#b40000;color:#fff;border-radius:999px;gap:12px}.youtube-button:hover{background:#8e0000;border-color:#8e0000}.youtube-button svg{flex-shrink:0}

.heart-copy{max-width:660px;margin:0 auto 30px;text-align:left;color:var(--muted)}.heart-copy p{margin:0 0 22px}

.daily-verse{margin:28px 0}.daily-verse-source{display:block;font-size:12px;color:var(--muted);margin-top:10px}

.word-invitation{margin-top:32px;max-width:530px}.word-invitation h3{font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.25;margin:0 0 18px;color:var(--red)}.word-invitation p{color:var(--muted);margin:0 0 20px}

.music-intro{max-width:470px;color:var(--muted)}.catalog-intro{max-width:650px;margin-bottom:60px}.catalog h1{font-family:var(--serif);font-weight:400;font-size:clamp(44px,5vw,72px);line-height:1.1;letter-spacing:-.04em;margin:0 0 25px}.catalog-intro p:not(.eyebrow){color:var(--muted);margin-bottom:28px}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 28px}.catalog-grid .song h2{font-size:24px;margin:20px 0 7px;min-height:2.5em}.catalog-link{display:flex;align-items:center;flex-wrap:wrap;gap:24px}@media(max-width:900px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){nav{gap:12px;flex-wrap:wrap}}@media(max-width:520px){.catalog-grid{grid-template-columns:1fr}.catalog-grid .song h2{min-height:0}}

/* Compact catalog: four columns on wide screens; hover and focus reveal detail. */
.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 24px}
.catalog-grid .song{position:relative;min-width:0}
.catalog-grid .song img{transition:transform .22s ease,box-shadow .22s ease;position:relative;z-index:0}
.catalog-grid .song h2{font-size:21px}
.catalog-grid .song-actions{gap:8px}
.catalog-grid .song .song-listen{font-size:12px;padding:10px 14px;gap:8px}
.catalog-grid .song:focus-within{z-index:2}
.catalog-grid .song:focus-within img{transform:scale(1.08);box-shadow:0 18px 40px #26354440;z-index:1}
@media(hover:hover) and (pointer:fine){.catalog-grid .song:hover{z-index:2}.catalog-grid .song:hover img{transform:scale(1.08);box-shadow:0 18px 40px #26354440;z-index:1}}
@media(max-width:1100px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.catalog-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.catalog-grid .song img{transition:none}.catalog-grid .song:focus-within img{transform:none}}
@media(prefers-reduced-motion:reduce) and (hover:hover) and (pointer:fine){.catalog-grid .song:hover img{transform:none}}

/* Keep each cover, title, and destination visibly grouped. */
.catalog-grid .song{border:1px solid #c4d2dd;border-radius:12px;padding:16px;background:#ffffffb3;display:flex;flex-direction:column}
.catalog-grid .song img{border-radius:5px}
.catalog-grid .song-actions{margin-top:auto;padding-top:18px}
@media(max-width:520px){.catalog-grid .song{padding:18px}}

/* Follow the original emblem's ring, which sits above the square asset center. */
.logo-feature img{border-radius:0;clip-path:ellipse(48.5% 47.5% at 50% 48%);box-shadow:none}
.brand img{border-radius:0;clip-path:ellipse(48.5% 47.5% at 50% 48%)}
