/*
Theme Name: Fireheart Music — WordPress Staging
Author: Fireheart Music
Description: WordPress conversion of the approved Fireheart Music 2.0 design with synchronized catalog editing. Staging only pending hosting and launch QA.
Version: 0.5.3
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: fireheart-music
*/
.fh-background-override{position:relative!important;isolation:isolate;background-image:none!important}
.fh-background-override::before,.fh-background-override::after{background-image:none!important}
.fh-background-override>.fh-section-image{position:absolute!important;inset:0;z-index:-1;overflow:hidden;pointer-events:none;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 80%,transparent)}
.fh-section-image img{width:100%;height:100%;object-fit:cover;object-position:center}
.fh-custom-section p{max-width:760px;white-space:pre-line}
.fh-custom-section h2{margin-bottom:24px;font-family:var(--font-display);font-size:clamp(2rem,4vw,3.5rem);font-weight:400;line-height:1.1;letter-spacing:-.035em}
.fh-custom-section .button{margin-top:24px}
.fh-contact-form .fh-contact-consent{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--text-sm);letter-spacing:normal;text-transform:none}
.fh-contact-consent input{width:20px;height:20px;flex:0 0 20px;margin-top:3px;accent-color:var(--color-primary)}
.fh-contact-notice,.fh-contact-status{font-size:var(--text-sm);line-height:1.6}
.fh-contact-status:empty{display:none}.fh-contact-status{color:var(--color-text)}.fh-contact-status.is-error{color:#ffb9aa}
.fh-contact-honeypot{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.fh-contact-form button:disabled{opacity:.65;cursor:not-allowed}
.fh-contact-form input,.fh-contact-form select,.fh-contact-form textarea{font-size:16px}
.desktop-nav{flex-wrap:wrap;justify-content:center}
.site-header .site-ampersand{font-family:var(--font-body)}
.fh-policy{max-width:760px;padding-block:80px}
.fh-policy h1{font-size:clamp(2.4rem,5vw,4rem);margin-bottom:32px}
.fh-policy h2{font-size:1.4rem;margin:32px 0 12px}
.fh-policy p{font-size:1rem;line-height:1.7;margin-bottom:20px}

/* The Spotify gate stays inside the existing dark Fireheart Stereo screen. */
.fh-spotify-gate{min-height:500px;display:flex;flex-direction:column;background:#121212;color:#f4efe6;font-family:var(--font-body);text-align:center}
.fh-spotify-prompt{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-6);padding:var(--space-8) var(--space-5)}
.fh-spotify-prompt h3{font-family:var(--font-body);font-size:var(--text-lg);line-height:1.25;letter-spacing:normal}
.fh-spotify-prompt p{font-size:var(--text-sm);line-height:1.6;color:#d1d4d4;max-width:36ch;margin:0}
.fh-spotify-load{display:inline-flex;align-items:center;justify-content:center;min-height:48px;max-width:100%;padding:var(--space-3) var(--space-5);border:1px solid #8bd8d8;background:#8bd8d8;color:#082727;font:600 var(--text-sm)/1.4 var(--font-body);cursor:pointer;white-space:normal}
.fh-spotify-load:hover{background:#b5eded}
.fh-spotify-footer{padding:var(--space-4);font-size:var(--text-xs);line-height:1.5}
.fh-spotify-footer a,.fh-spotify-unload{color:#9ddddd;text-decoration:underline;text-underline-offset:3px}
.fh-spotify-unload{display:block;min-height:44px;margin:var(--space-2) auto 0;padding:var(--space-2) var(--space-3);background:none;border:0;font:inherit;cursor:pointer}
.fh-spotify-status{margin:0 auto var(--space-3);max-width:38ch;color:#d1d4d4;font-size:var(--text-xs);line-height:1.5}
.fh-spotify-status:empty{display:none}
.fh-spotify-gate [hidden]{display:none!important}
.fh-spotify-gate button:focus-visible,.fh-spotify-gate a:focus-visible{outline:3px solid #f4efe6;outline-offset:4px}
.fh-spotify-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:640px){.fh-spotify-gate{min-height:430px}.fh-spotify-prompt{padding:var(--space-6) var(--space-4);gap:var(--space-4)}}
