/* JHALLU v5.9 — compact radio pill, inner-page components, responsive nav, legacy player off.
   Loads AFTER v58.css (dependency), so equal-specificity rules here win. */

/* ===== A) Component CSS ported from the owner's approved homepage design =====
   These rules live only in front-page.php's inline style, so inner pages
   (Shop, Music, About...) rendered .cards/.svc/.rows unstyled and huge.
   Same values as the homepage — the homepage's own inline copy still wins there. */
.sec { max-width:1060px; margin:0 auto; padding:44px 18px 4px; text-align:center; }
.sec h2 { margin:8px 0 20px; font-size:27px; font-weight:400; letter-spacing:7px; color:#fff; }
.kick { font-size:11px; letter-spacing:5px; font-weight:700; color:#8beffa; font-family:Arial,sans-serif; }
.cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:16px; }
.svc { padding:22px 16px; text-align:center; border:1px solid rgba(139,239,250,.3); background:rgba(58,219,237,.07); border-radius:4px; }
.svc .meta { font-size:10.5px; letter-spacing:3px; margin-bottom:9px; font-weight:700; color:#8beffa; font-family:Arial,sans-serif; }
.svc h3 { font-size:19px; margin-bottom:8px; color:#fff; font-weight:400; }
.svc p { font-size:13px; line-height:1.65; color:#a3d7dd; font-family:Arial,sans-serif; }
.svc .price { font-size:17px; margin-top:11px; font-weight:800; color:#fff; font-family:Arial,sans-serif; }
.svc .pid { font-size:10.5px; letter-spacing:1.5px; margin-top:5px; opacity:.6; }
.btn { display:inline-block; margin-top:14px; font-size:11.5px; letter-spacing:2.5px; padding:11px 22px; cursor:pointer; font-weight:800; border:1px solid rgba(139,239,250,.55); color:#ccfaff; border-radius:99px; font-family:Arial,sans-serif; }
.btn.solid { background:#3adbed; color:#fff; border-color:#3adbed; }
.rows { max-width:840px; margin:0 auto; text-align:left; }
.row { display:flex; justify-content:space-between; align-items:center; padding:16px 6px; gap:10px; flex-wrap:wrap; border-bottom:1px solid rgba(139,239,250,.18); color:#e9f9fb; font-family:Arial,sans-serif; }
.row .d { font-size:11px; letter-spacing:2px; min-width:84px; color:#7ab2b8; }
.row .t { flex:1; }
.row .t b { font-size:18px; }
.row .t small { display:block; font-size:12px; margin-top:3px; opacity:.75; }
.head { text-align:center; padding:44px 16px 4px; }
.head h1 { margin:12px 0 8px; font-size:40px; font-weight:400; letter-spacing:8px; color:#fff; }
.head p { font-size:13.5px; line-height:1.75; max-width:680px; margin:0 auto; color:#a3d7dd; font-family:Arial,sans-serif; }
.head p b { color:#fff; }
.rule { width:64px; height:2px; margin:20px auto 2px; background:#8beffa; }
.halfband { max-width:1060px; margin:44px auto 0; padding:0 18px; display:grid; grid-template-columns:1fr 1fr; gap:0; align-items:stretch; border:1px solid rgba(139,239,250,.3); }
.halfband .half.img { max-height:540px; overflow:hidden; }
.halfband .half.img img { width:100%; height:100%; object-fit:cover; display:block; }
.halfband .half.txt { padding:34px 30px; display:flex; flex-direction:column; justify-content:center; background:rgba(58,219,237,.07); }
.halfband .big-quote { font-size:24px; line-height:1.45; margin:12px 0; color:#fff; font-style:italic; }
.halfband h2 { font-size:28px; font-weight:400; letter-spacing:6px; color:#fff; }
.halfband p { color:#a3d7dd; font-family:Arial,sans-serif; font-size:14px; line-height:1.8; }
.coverimg { width:100%; display:block; border-radius:10px; margin-bottom:14px; }
@media (max-width:820px){ .halfband { grid-template-columns:1fr; } }

/* ===== B) Shop posters: even, tidy squares (inner pages only, homepage untouched) ===== */
body:not(.home) .svc .coverimg { aspect-ratio:1/1; object-fit:cover; }
body:not(.home) .svc img:not(.coverimg) { max-width:100%; height:auto; }

/* ===== C) JHALLU RADIO — compact pill (owner: keep the music box small) ===== */
.jradio { left:12px; right:auto; bottom:12px; width:auto; max-width:336px; border:1px solid rgba(0,229,255,.45); border-radius:18px; }
.jradio-in { padding:7px 10px; gap:9px; }
.jradio .rprog, .jradio .rvol, .jradio .rchips { display:none; }
.jradio.open { max-width:520px; }
.jradio.open .rprog { display:block; }
.jradio.open .rvol { display:block; }
.jradio.open .rchips { display:flex; }
.jradio .rexp { flex:none; width:30px; height:30px; border-radius:50%; border:1px solid rgba(255,255,255,.3); background:transparent; color:#C9D6DE; font-size:13px; cursor:pointer; display:flex; align-items:center; justify-content:center; }
@media (max-width:560px){
  .jradio, .jradio.open { max-width:calc(100vw - 24px); }
}
.jcookie { bottom:88px; }
body { padding-bottom:92px; }

/* ===== D) Legacy homepage mini-player OFF (the RADIO replaces it — no double players) ===== */
#mbar { display:none !important; }
@media (max-width:860px){ body { padding-bottom:104px !important; } #toTop { bottom:96px; } }

/* ===== E) Nav hardening — laptop: one clean row; mobile: stacked, nothing crushed ===== */
.site-nav a { white-space:nowrap; }
body.home .nav { flex-wrap:wrap; row-gap:6px; }
body.home .nav .grp { white-space:normal; }
@media (max-width:860px){
  .site-nav { flex-direction:column; justify-content:center; align-items:center; gap:7px; padding:12px 10px; font-size:11px; letter-spacing:1.6px; text-align:center; }
  .site-nav .brand { order:-1; font-size:17px; }
  .site-nav a { margin:0 6px; }
  .site-nav .cta { padding:6px 13px; }
  body.home .nav { flex-direction:column; align-items:center; gap:9px; padding:12px 10px; text-align:center; }
  body.home .nav .grp { font-size:10.5px; letter-spacing:1.6px; line-height:2.1; }
  body.home .nav .grp a { margin:0 7px; }
}
