/*
Theme Name: DJME Karaoke
Theme URI: https://djme.site/
Author: Jamcono
Description: Custom, SEO-focused WordPress theme for DJME Karaoke Orlando.
Version: 0.4.0
Text Domain: djme
*/
:root{--djme-orange:#ff5a18;--djme-bg:#07080b;--djme-panel:#0e1118;--djme-card:#121722;--djme-text:#fff;--djme-muted:#bcc2ce;--djme-border:rgba(255,255,255,.11);--djme-purple:#6d4cff;--djme-blue:#14b8ff;--djme-pink:#ee3f95;--djme-radius:22px;--djme-max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--djme-bg);color:var(--djme-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit}img{max-width:100%;height:auto}.wrap{width:min(calc(100% - 36px),var(--djme-max));margin:auto}.site-header{position:sticky;top:0;z-index:40;background:rgba(5,6,9,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{display:block;width:154px}.menu{display:flex;gap:24px;align-items:center;list-style:none;padding:0;margin:0}.menu a{text-decoration:none;font-weight:760;font-size:.94rem;color:#f4f5f7}.menu a:hover{color:var(--djme-orange)}.btn,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;background:var(--djme-orange);color:#fff;text-decoration:none;font-weight:900;border:0;cursor:pointer;box-shadow:0 8px 24px rgba(255,90,24,.18);transition:transform .18s ease,box-shadow .18s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(255,90,24,.28)}.btn.secondary{background:#fff;color:#0b0d12;box-shadow:none}.hero{position:relative;min-height:690px;display:flex;align-items:center;isolation:isolate;background-size:cover;background-position:center;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,3,7,.95) 0%,rgba(3,5,11,.76) 48%,rgba(6,8,16,.48) 100%);z-index:-2}.hero:after{content:"";position:absolute;inset:-10%;background:radial-gradient(circle at 73% 28%,rgba(20,184,255,.22),transparent 23%),radial-gradient(circle at 84% 68%,rgba(238,63,149,.22),transparent 19%),radial-gradient(circle at 52% 16%,rgba(109,76,255,.18),transparent 24%);z-index:-1;mix-blend-mode:screen;pointer-events:none}.hero-copy{max-width:790px;padding:96px 0 104px}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:.76rem;font-weight:900;color:#ff9669}.hero h1{font-size:clamp(3.1rem,7.7vw,6.7rem);line-height:.9;letter-spacing:-.058em;margin:.14em 0;text-wrap:balance;text-shadow:0 8px 38px rgba(0,0,0,.38)}.hero p{font-size:clamp(1.08rem,2vw,1.42rem);max-width:680px;color:#e6e8ed}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.section{padding:84px 0;position:relative}.section:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.6}.section.alt{background:linear-gradient(180deg,#0a0c12 0%,#0d1017 100%)}.section-head{display:flex;justify-content:space-between;gap:38px;align-items:end;margin-bottom:32px}.section h2{font-size:clamp(2.2rem,5vw,4.2rem);line-height:.96;letter-spacing:-.048em;margin:0}.section-lede{max-width:640px;color:var(--djme-muted);font-size:1.08rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{position:relative;background:linear-gradient(180deg,rgba(20,26,39,.96),rgba(12,15,22,.98));border:1px solid var(--djme-border);border-radius:var(--djme-radius);padding:30px;overflow:hidden;box-shadow:0 22px 55px rgba(0,0,0,.16)}.card:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--djme-orange),var(--djme-purple),var(--djme-blue))}.card:nth-child(2):before{background:linear-gradient(90deg,var(--djme-purple),var(--djme-pink))}.card:nth-child(3):before{background:linear-gradient(90deg,var(--djme-blue),var(--djme-purple))}.card h3{font-size:1.22rem;margin:22px 0 8px}.price{font-size:3.15rem;font-weight:950;letter-spacing:-.05em}.meta{color:var(--djme-muted)}.pill{display:inline-flex;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.035);padding:8px 12px;border-radius:999px;font-size:.82rem;font-weight:800}.card .btn{margin-top:12px}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.feature{min-height:230px;background:linear-gradient(145deg,rgba(20,24,34,.95),rgba(10,12,18,.98));border:1px solid var(--djme-border);border-radius:var(--djme-radius);padding:30px;position:relative;overflow:hidden}.feature:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;filter:blur(50px);right:-80px;bottom:-100px;background:rgba(109,76,255,.18)}.feature:nth-child(2):after{background:rgba(20,184,255,.16)}.feature:nth-child(3):after{background:rgba(255,90,24,.16)}.feature:nth-child(4):after{background:rgba(238,63,149,.14)}.feature h3{font-size:1.25rem}.orange{color:var(--djme-orange)}.contact-band{background:linear-gradient(110deg,#ff5a18 0%,#fa4d19 52%,#cc3b22 100%);color:#fff;overflow:hidden}.contact-band:before{content:"";position:absolute;inset:-50%;background:radial-gradient(circle at 75% 54%,rgba(109,76,255,.32),transparent 22%),radial-gradient(circle at 92% 35%,rgba(20,184,255,.2),transparent 16%);opacity:1}.contact-band>.wrap{position:relative;z-index:1}.contact-band .btn{background:#0b0d12;color:#fff;box-shadow:none}.site-footer{padding:44px 0;border-top:1px solid var(--djme-border);color:var(--djme-muted);background:#050609}.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-icon{width:54px}.djme-form{display:grid;gap:16px}.djme-form .row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.djme-form label{display:grid;gap:7px;font-weight:800}.djme-form input,.djme-form select,.djme-form textarea{width:100%;background:#0d1119;color:#fff;border:1px solid #343b49;border-radius:13px;padding:13px 14px;font:inherit}.djme-form textarea{min-height:130px}.notice{padding:14px 16px;border-radius:14px;background:#111620;border:1px solid #303746}.catalog-shell{display:grid;gap:18px}.catalog-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px}.catalog-controls input,.catalog-controls select{width:100%;padding:13px 14px;border-radius:12px;border:1px solid #343b49;background:#0d1119;color:#fff}.catalog-results{display:grid;gap:9px}.song-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 18px;border-radius:15px;background:#10151f;border:1px solid #282f3b}.song-title{font-weight:900}.song-artist,.song-meta{color:#b9c0cc}.availability-status{padding:18px;border-radius:16px;background:#10151f;border:1px solid #303746}.availability-status.unavailable{border-color:#a44938}.availability-status.available{border-color:#2f7c50}
@media(max-width:800px){.menu{display:none}.hero{min-height:600px}.grid-3,.feature-grid{grid-template-columns:1fr}.section-head{display:block}.section-lede{margin-top:14px}.catalog-controls{grid-template-columns:1fr}.song-row{grid-template-columns:1fr;gap:4px}.djme-form .row{grid-template-columns:1fr}.footer-grid{align-items:flex-start;flex-direction:column}}

/* Build 004 — functional subpages */
.subhero{position:relative;isolation:isolate;overflow:hidden;padding:118px 0 92px;background:radial-gradient(circle at 78% 22%,rgba(109,76,255,.2),transparent 24%),radial-gradient(circle at 92% 68%,rgba(20,184,255,.14),transparent 18%),linear-gradient(135deg,#080a10 0%,#10131d 100%);border-bottom:1px solid var(--djme-border)}.subhero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(255,90,24,.06),transparent 40%)}.subhero .wrap{max-width:1180px}.subhero h1{font-size:clamp(3.6rem,8vw,7.2rem);line-height:.88;letter-spacing:-.065em;margin:.16em 0 .2em;max-width:900px}.subhero p{max-width:720px;color:#d7dbe3;font-size:clamp(1.08rem,2vw,1.35rem);margin:0 0 28px}.subhero-songs{background:radial-gradient(circle at 82% 28%,rgba(238,63,149,.2),transparent 22%),radial-gradient(circle at 64% 68%,rgba(109,76,255,.19),transparent 27%),#080a10}.subhero-book{background:radial-gradient(circle at 78% 25%,rgba(255,90,24,.18),transparent 20%),radial-gradient(circle at 86% 70%,rgba(109,76,255,.17),transparent 25%),#080a10}.page-section{min-height:320px}.narrow-wrap{width:min(calc(100% - 36px),980px)}.split-feature{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:70px;align-items:start}.prose{color:var(--djme-muted);font-size:1.1rem}.prose p:first-child{margin-top:0}.mini-cta{padding:54px 0;background:linear-gradient(110deg,#111522,#0b0d13);border-top:1px solid var(--djme-border);border-bottom:1px solid var(--djme-border)}.mini-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.mini-cta h2{font-size:clamp(2rem,4vw,3.5rem);line-height:.95;letter-spacing:-.045em;margin:.12em 0}.catalog-summary{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.catalog-summary strong{font-size:clamp(2.5rem,7vw,5rem);letter-spacing:-.06em;line-height:1}.catalog-summary span{color:var(--djme-muted)}.catalog-result-heading{font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;color:#ff9669;font-weight:900;margin:8px 0 2px}.booking-intro-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:28px;margin-bottom:28px}.booking-intro-grid h2{font-size:clamp(2.4rem,5vw,4.2rem);line-height:.95;letter-spacing:-.05em;margin:.2em 0}.availability-card{background:linear-gradient(145deg,#141a27,#0e121a);border:1px solid var(--djme-border);border-radius:20px;padding:24px;display:grid;gap:12px}.availability-card input{width:100%;background:#090c12;color:#fff;border:1px solid #343b49;border-radius:13px;padding:13px 14px;font:inherit;color-scheme:dark}.booking-form{background:linear-gradient(180deg,rgba(17,22,32,.94),rgba(10,13,20,.98));border:1px solid var(--djme-border);border-radius:24px;padding:28px}.notice.success{border-color:rgba(75,190,126,.55);background:rgba(35,105,68,.18);margin-bottom:22px}.availability-status.available{background:rgba(40,125,77,.14)}.availability-status.unavailable{background:rgba(164,73,56,.14)}
@media(max-width:800px){.subhero{padding:90px 0 68px}.subhero h1{font-size:clamp(3.1rem,17vw,5.2rem)}.split-feature,.booking-intro-grid{grid-template-columns:1fr;gap:28px}.mini-cta-inner{align-items:flex-start;flex-direction:column}.booking-form{padding:20px}}
