
:root{
    --edm-home-bg:#050816;
    --edm-home-panel:#0d1227;
    --edm-home-panel2:#111731;
    --edm-home-purple:#7b2cff;
    --edm-home-purple2:#ad38ff;
    --edm-home-blue:#2468ff;
    --edm-home-text:#fff;
    --edm-home-muted:#9da8c7;
    --edm-home-border:rgba(255,255,255,.11);
}
.edm-home{background:var(--edm-home-bg);color:var(--edm-home-text);font-family:Montserrat,Arial,sans-serif;overflow:hidden}
.edm-home *{box-sizing:border-box}
.edm-home a{text-decoration:none}
.edm-home-shell{width:min(1180px,calc(100% - 42px));margin:0 auto}
.edm-home-hero{min-height:520px;position:relative;display:flex;align-items:center;background:
linear-gradient(90deg,rgba(3,5,15,.95) 0%,rgba(5,6,20,.82) 40%,rgba(8,4,23,.3) 72%,rgba(7,4,19,.35) 100%),
radial-gradient(circle at 76% 30%,rgba(198,48,255,.55),transparent 33%),
radial-gradient(circle at 58% 74%,rgba(19,77,255,.52),transparent 35%),
linear-gradient(135deg,#091025 0%,#24104d 47%,#56105e 72%,#10162c 100%)}
.edm-home-hero:before{content:"";position:absolute;inset:0;background:
linear-gradient(transparent 62%,rgba(2,4,12,.45)),
repeating-linear-gradient(90deg,transparent 0 99px,rgba(255,255,255,.015) 100px);mix-blend-mode:screen}
.edm-home-hero__overlay{position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,var(--edm-home-bg))}
.edm-home-hero__content{position:relative;z-index:2;padding:64px 0}
.edm-home-eyebrow{font-size:12px;letter-spacing:.24em;color:#c797ff;font-weight:800;margin:0 0 14px}
.edm-home-hero h1{font-size:clamp(54px,8vw,94px);line-height:.92;margin:0 0 14px;font-weight:900;letter-spacing:-.04em}
.edm-home-tagline{font-size:clamp(18px,2vw,26px);letter-spacing:.11em;font-weight:700;margin:0 0 30px}
.edm-home-tagline span{color:#be4cff}
.edm-home-copy{max-width:430px;color:#d8deef;font-size:16px;line-height:1.65;margin-bottom:24px}
.edm-home-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.edm-home-btn{border:1px solid rgba(255,255,255,.2);border-radius:4px;min-height:46px;padding:0 20px;font-size:13px;font-weight:800;letter-spacing:.04em;display:inline-flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;color:white;background:transparent}
.edm-home-btn--primary{background:linear-gradient(90deg,#7027ed,#9429ff);border-color:transparent;box-shadow:0 14px 34px rgba(119,37,255,.24)}
.edm-home-btn--primary:hover{transform:translateY(-1px)}
.edm-home-live-dot{font-size:12px;font-weight:800;color:#dce4f6}.edm-home-live-dot i{display:inline-block;width:9px;height:9px;background:#9a39ff;border-radius:50%;margin-right:6px;box-shadow:0 0 16px #9a39ff}
.edm-home-section{padding:40px 0}
.edm-home-sectionhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.edm-home-sectionhead>div{display:flex;align-items:center;gap:10px}
.edm-home-sectionhead h2{font-size:15px;letter-spacing:.04em;margin:0;font-weight:900}
.edm-home-sectionhead a{font-size:11px;font-weight:800;color:#c457ff}
.edm-home-kicker{color:#c43cff;font-weight:900}
.edm-home-sectionhead--center{justify-content:center}
.edm-home-now{padding-top:12px}
.edm-home-nowgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.edm-home-track{min-height:108px;border:1px solid var(--edm-home-border);border-radius:7px;background:linear-gradient(135deg,var(--edm-home-panel),#0a0e20);display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:center;padding:14px}
.edm-home-track__cover{width:72px;height:72px;border-radius:4px;background:linear-gradient(135deg,#5b146f,#19286e);background-size:cover;background-position:center}
.edm-home-track h3{font-size:15px;margin:0 0 5px}.edm-home-track p{font-size:12px;color:#b17bff;margin:0}.edm-home-track__num{font-size:12px;font-weight:900;color:#fff}
.edm-home-charts{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.edm-home-chartcard{min-height:260px;border:1px solid var(--edm-home-border);border-radius:8px;overflow:hidden;position:relative;color:white;display:flex;align-items:flex-end;background-size:cover;background-position:center}
.edm-home-chartcard--edm{background:
radial-gradient(circle at 50% 25%,rgba(188,50,255,.8),transparent 32%),
linear-gradient(135deg,#13052b,#46135d 55%,#050814)}
.edm-home-chartcard--dance{background:
radial-gradient(circle at 72% 28%,rgba(255,44,191,.7),transparent 29%),
linear-gradient(135deg,#06132a,#0f376c 55%,#25072f)}
.edm-home-chartcard:before{content:"";position:absolute;inset:0;background:
linear-gradient(transparent 35%,rgba(3,4,12,.94)),
radial-gradient(ellipse at bottom,rgba(0,0,0,.6),transparent 60%)}
.edm-home-chartcard__body{position:relative;z-index:2;padding:26px}
.edm-home-chartcard h3{font-size:34px;margin:0 0 10px;line-height:1}
.edm-home-chartcard p{max-width:300px;color:#d7d8e7;font-size:13px;line-height:1.55;margin:0 0 18px}
.edm-home-chartcard span{border:1px solid #b744ff;padding:10px 14px;font-size:11px;font-weight:900;color:#d06cff;border-radius:3px}
.edm-home-video__card{display:grid;grid-template-columns:1.15fr .85fr;border:1px solid var(--edm-home-border);border-radius:9px;overflow:hidden;background:linear-gradient(135deg,#10162e,#0b1022)}
.edm-home-video__thumb{min-height:330px;position:relative;display:flex;align-items:center;justify-content:center;background:
radial-gradient(circle at 67% 52%,rgba(120,90,255,.85),transparent 27%),
linear-gradient(135deg,#1f49e7,#132a89 70%,#0b1230)}
.edm-home-video__fallback{font-weight:900;font-size:48px;line-height:.85;text-align:left;opacity:.96}
.edm-home-video__play{position:absolute;width:72px;height:72px;border-radius:50%;border:0;background:linear-gradient(135deg,#7a2dff,#cb36ff);color:white;font-size:27px;cursor:pointer}
.edm-home-video__info{padding:44px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.edm-home-badge{background:#792bff;border-radius:3px;padding:5px 8px;font-size:10px;font-weight:900}
.edm-home-video__date{font-size:11px;color:#9ca7c6;margin:12px 0}
.edm-home-video__info h3{font-size:32px;line-height:1.13;margin:0 0 16px}
.edm-home-video__info>p:last-of-type{color:#b5bdd3;line-height:1.55;font-size:13px;max-width:400px}
.edm-home-btn--ghost{border-color:#b43dff;color:#d378ff;padding-inline:18px;margin-top:10px}
.edm-home-spotify{border:1px solid var(--edm-home-border);border-radius:8px;padding:20px;display:grid;grid-template-columns:130px 1fr 1.45fr;gap:24px;align-items:center;background:linear-gradient(135deg,#0d1225,#101426)}
.edm-home-spotify__cover{height:130px;border-radius:5px;background:linear-gradient(135deg,#310744,#9b27b0 55%,#11112d);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.edm-home-spotify__cover span{font-size:11px;font-weight:900;color:#ff7dec}.edm-home-spotify__cover strong{font-size:28px;line-height:.9}
.edm-home-spotify__text h3{font-size:24px;margin:0 0 8px}.edm-home-spotify__text p{font-size:13px;color:#b1bad0;line-height:1.5;margin:0 0 16px}
.edm-home-btn--spotify{border-color:#25d366;color:#dfffea;min-height:38px;padding:0 14px}
.edm-home-spotify__list{border-left:1px solid var(--edm-home-border);padding-left:22px}
.edm-home-spotify__list ol{margin:0;padding-left:24px}.edm-home-spotify__list li{padding:7px 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:12px;color:#d4daf0}
.edm-home-spotify__list li:last-child{border-bottom:0}.edm-home-spotify__list li b{float:right;font-size:11px;color:#9aa4bd}
.edm-home-experience{padding-top:24px}
.edm-home-features{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;text-align:center}
.edm-home-features article{padding:24px 16px}.edm-home-features span{font-size:34px;display:block;margin-bottom:13px;color:#bb42ff}.edm-home-features h3{font-size:13px;margin:0 0 8px}.edm-home-features p{font-size:12px;color:#9fa9c2;line-height:1.5;margin:0}
.edm-home-newsletter{margin-top:10px;padding:28px 0;background:
linear-gradient(90deg,rgba(72,9,111,.82),rgba(132,28,188,.8),rgba(63,15,111,.84))}
.edm-home-newsletter__inner{display:grid;grid-template-columns:70px 1fr auto;gap:20px;align-items:center}
.edm-home-newsletter__icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.5);font-size:25px}
.edm-home-newsletter h3{margin:0 0 5px;font-size:15px}.edm-home-newsletter p{margin:0;color:#e3d8ed;font-size:12px}
.edm-home-newsletter__buttons{display:flex;gap:10px}.edm-home-newsletter__buttons a{background:#8126d9;color:white;padding:12px 18px;border-radius:3px;font-size:11px;font-weight:900}
@media(max-width:900px){
.edm-home-nowgrid,.edm-home-features{grid-template-columns:1fr 1fr}
.edm-home-spotify{grid-template-columns:110px 1fr}.edm-home-spotify__list{grid-column:1/-1;border-left:0;border-top:1px solid var(--edm-home-border);padding:18px 0 0}
.edm-home-video__card{grid-template-columns:1fr}.edm-home-video__info{padding:30px}
}
@media(max-width:620px){
.edm-home-shell{width:min(100% - 26px,1180px)}
.edm-home-hero{min-height:500px}
.edm-home-hero__content{padding:50px 0}
.edm-home-section{padding:30px 0}
.edm-home-nowgrid,.edm-home-charts,.edm-home-features{grid-template-columns:1fr}
.edm-home-chartcard{min-height:220px}
.edm-home-video__thumb{min-height:245px}.edm-home-video__fallback{font-size:38px}.edm-home-video__play{width:60px;height:60px}
.edm-home-video__info h3{font-size:26px}
.edm-home-spotify{grid-template-columns:90px 1fr;gap:14px}.edm-home-spotify__cover{height:100px}.edm-home-spotify__cover strong{font-size:22px}
.edm-home-newsletter__inner{grid-template-columns:56px 1fr}.edm-home-newsletter__buttons{grid-column:1/-1}
.edm-home-sectionhead{align-items:flex-end;gap:10px}.edm-home-sectionhead a{font-size:10px}
}


/* =========================================================
   V2 — INTEGRATION PRO.RADIO / FULL WIDTH
   ========================================================= */

/* Supprime le grand hero/titre natif de la page test contenant le shortcode. */
body.edm-taste-homepage-page .proradio-pageheader,
body.edm-taste-homepage-page .proradio-page-header,
body.edm-taste-homepage-page .proradio-single__header,
body.edm-taste-homepage-page .proradio-entry-title,
body.edm-taste-homepage-page .entry-title,
body.edm-taste-homepage-page .page-title,
body.edm-taste-homepage-page h1.proradio-entry-title {
    display: none !important;
}

/* Neutralise les wrappers Pro.Radio qui enferment normalement le contenu. */
body.edm-taste-homepage-page #proradio-pagecontent,
body.edm-taste-homepage-page .proradio-pagecontent,
body.edm-taste-homepage-page .proradio-maincontent,
body.edm-taste-homepage-page .proradio-section,
body.edm-taste-homepage-page .proradio-container,
body.edm-taste-homepage-page .proradio-container__content,
body.edm-taste-homepage-page .proradio-paper,
body.edm-taste-homepage-page .proradio-single,
body.edm-taste-homepage-page article.page,
body.edm-taste-homepage-page .entry-content {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Retire les gros espacements blancs autour du contenu. */
body.edm-taste-homepage-page #proradio-pagecontent,
body.edm-taste-homepage-page .proradio-pagecontent,
body.edm-taste-homepage-page .proradio-maincontent,
body.edm-taste-homepage-page .proradio-section,
body.edm-taste-homepage-page article.page,
body.edm-taste-homepage-page .entry-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Force le shortcode à sortir visuellement du conteneur central de Pro.Radio. */
.edm-home-pagewide {
    width: 100vw !important;
    max-width: none !important;
    position: relative !important;
    left: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    padding: 0 !important;
    overflow: visible !important;
}

/* La homepage commence directement sous la navigation. */
body.edm-taste-homepage-page .edm-home-pagewide {
    margin-top: 0 !important;
}

/* Neutralise certains wrappers Elementor/WordPress si la page est éditée avec Elementor. */
body.edm-taste-homepage-page .elementor-widget-shortcode,
body.edm-taste-homepage-page .elementor-widget-shortcode .elementor-widget-container,
body.edm-taste-homepage-page .wp-block-shortcode,
body.edm-taste-homepage-page .wp-block-shortcode > * {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Le fond global de la page test devient celui de la nouvelle homepage. */
body.edm-taste-homepage-page #proradio-pagecontent,
body.edm-taste-homepage-page .proradio-pagecontent,
body.edm-taste-homepage-page .proradio-maincontent {
    background: #050816 !important;
}

@media (max-width: 782px) {
    .edm-home-pagewide {
        width: 100vw !important;
        left: 50% !important;
        margin-left: -50vw !important;
        margin-right: -50vw !important;
    }
}


/* =========================================================
   V3 — HERO + CONTRASTE + NOW PLAYING
   Conserve l'intégration full-width validée en V2.
   ========================================================= */

.edm-home {
    background:
        radial-gradient(circle at 70% 7%, rgba(103,32,181,.11), transparent 24%),
        #050816;
}

/* Hero plus compact, plus lumineux et plus "EDMTaste". */
.edm-home-hero {
    min-height: 455px !important;
    isolation: isolate;
    background:
        linear-gradient(90deg, rgba(3,5,16,.98) 0%, rgba(5,7,22,.90) 38%, rgba(17,5,36,.56) 66%, rgba(13,5,28,.36) 100%),
        radial-gradient(circle at 79% 32%, rgba(227,55,255,.78), transparent 28%),
        radial-gradient(circle at 67% 72%, rgba(48,77,255,.70), transparent 31%),
        linear-gradient(135deg,#050916 0%,#11123c 48%,#56115e 76%,#10162c 100%) !important;
}

.edm-home-hero:after {
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    opacity:.62;
    pointer-events:none;
    background:
        linear-gradient(115deg, transparent 0 59%, rgba(255,70,220,.16) 59.3% 59.8%, transparent 60.1%),
        repeating-linear-gradient(115deg, transparent 0 48px, rgba(255,255,255,.025) 49px, transparent 50px);
}

.edm-home-hero__visual {
    position:absolute;
    z-index:0;
    right:-3%;
    bottom:-4%;
    width:58%;
    height:96%;
    opacity:.82;
    filter:drop-shadow(0 30px 60px rgba(0,0,0,.45));
}

.edm-home-deck {
    position:absolute;
    right:4%;
    bottom:8%;
    width:82%;
    height:36%;
    border-radius:50% 20% 8% 8%;
    transform:perspective(500px) rotateX(61deg) rotateZ(-7deg);
    background:
        radial-gradient(circle at 25% 52%, transparent 0 9%, rgba(218,72,255,.7) 9.5% 11%, transparent 11.5%),
        radial-gradient(circle at 58% 48%, rgba(104,75,255,.45), transparent 7%),
        repeating-linear-gradient(90deg,rgba(255,255,255,.16) 0 2px,transparent 2px 42px),
        linear-gradient(145deg,#222950,#080b18 66%);
    border:1px solid rgba(255,255,255,.17);
    box-shadow:0 0 70px rgba(184,43,255,.30);
}

.edm-home-hand {
    position:absolute;
    left:19%;
    bottom:17%;
    width:25%;
    height:53%;
    border-radius:55% 48% 35% 40%;
    transform:rotate(18deg);
    background:linear-gradient(120deg,rgba(27,31,73,.15),rgba(119,61,163,.55) 50%,rgba(242,82,214,.35));
    filter:blur(1px);
    opacity:.75;
}

.edm-home-hero__content {
    padding: 52px 0 68px !important;
}

.edm-home-hero h1 {
    color:#fff !important;
    text-shadow:0 7px 35px rgba(0,0,0,.42);
    font-size:clamp(62px,7vw,92px) !important;
}

.edm-home-eyebrow {
    color:#d789ff !important;
}

.edm-home-tagline {
    color:#fff !important;
    font-size:clamp(18px,1.7vw,25px) !important;
}

.edm-home-copy {
    color:#cbd3e8 !important;
    font-size:15px !important;
}

.edm-home-btn--primary {
    background:linear-gradient(90deg,#4d2cff,#9b2cff) !important;
    box-shadow:0 10px 30px rgba(119,42,255,.32) !important;
}

/* Transition plus nette vers Now Playing. */
.edm-home-hero__overlay {
    height:85px !important;
}

.edm-home-now {
    padding-top:28px !important;
    padding-bottom:34px !important;
}

.edm-home-sectionhead h2 {
    color:#fff !important;
    font-size:16px !important;
}

.edm-home-sectionhead a {
    color:#d35cff !important;
}

.edm-home-nowgrid {
    gap:16px !important;
}

.edm-home-track {
    min-height:118px !important;
    grid-template-columns:78px 1fr !important;
    padding:15px !important;
    background:
        linear-gradient(135deg,rgba(19,25,54,.98),rgba(9,13,31,.98)) !important;
    border-color:rgba(145,87,255,.25) !important;
    box-shadow:0 12px 30px rgba(0,0,0,.14);
}

.edm-home-track:hover {
    border-color:rgba(190,79,255,.52) !important;
    transform:translateY(-2px);
    transition:.2s ease;
}

.edm-home-track__cover {
    width:78px !important;
    height:78px !important;
    background:
        radial-gradient(circle at 72% 24%,rgba(216,66,255,.85),transparent 35%),
        linear-gradient(135deg,#3c176b,#172c78) !important;
    box-shadow:0 7px 20px rgba(0,0,0,.28);
}

.edm-home-track__cover.has-cover {
    background-size:cover !important;
    background-position:center !important;
}

.edm-home-track h3 {
    color:#fff !important;
    font-size:15px !important;
    line-height:1.3 !important;
}

.edm-home-track p {
    color:#c982ff !important;
    font-size:12px !important;
}

.edm-home-track__num {
    color:#fff !important;
}

/* Les états de chargement restent lisibles au lieu d'être quasi noirs. */
.edm-home-track--loading h3 {
    color:#aeb8d6 !important;
}

.edm-home-track--loading p {
    color:#8f66ba !important;
}

/* Les sections suivantes gagnent légèrement en contraste. */
.edm-home-chartcard,
.edm-home-video__card,
.edm-home-spotify {
    box-shadow:0 18px 45px rgba(0,0,0,.18);
}

@media(max-width:900px){
    .edm-home-hero {
        min-height:430px !important;
    }
    .edm-home-hero__visual {
        width:70%;
        opacity:.52;
    }
}

@media(max-width:620px){
    .edm-home-hero {
        min-height:455px !important;
    }
    .edm-home-hero__content {
        padding:46px 0 62px !important;
    }
    .edm-home-hero h1 {
        font-size:52px !important;
    }
    .edm-home-hero__visual {
        width:100%;
        right:-30%;
        opacity:.34;
    }
    .edm-home-now {
        padding-top:24px !important;
    }
}


/* =========================================================
   V4 — NOW PLAYING SERVEUR / RADIOKING
   Les cartes sont désormais rendues en PHP.
   ========================================================= */

.edm-home-track__meta {
    min-width:0;
}

.edm-home-track__meta h3 {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.edm-home-track__meta p {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.edm-home-track--fallback {
    opacity:.82;
}

.edm-home-track--fallback .edm-home-track__cover {
    background:
        radial-gradient(circle at 72% 24%,rgba(216,66,255,.85),transparent 35%),
        linear-gradient(135deg,#3c176b,#172c78) !important;
}


/* =========================================================
   V5 — HISTORIQUE LOCAL DES TITRES
   Les trois cartes se remplissent progressivement à chaque
   nouveau morceau détecté par WordPress.
   ========================================================= */

.edm-home-track__num {
    display:inline-block;
    margin-bottom:4px;
}

.edm-home-track--fallback {
    border-style:dashed !important;
}


/* =========================================================
   V6 — POCHETTES NOW PLAYING
   Recherche de cover renforcée dans les réponses RadioKing.
   ========================================================= */

.edm-home-track__cover[style*="background-image"] {
    background-size:cover !important;
    background-position:center !important;
    background-repeat:no-repeat !important;
}

.edm-home-track__cover[style*="background-image"]::after {
    content:"";
    display:block;
    width:100%;
    height:100%;
    border-radius:inherit;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);
}


/* =========================================================
   V7 — ARTWORK APPLE / iTUNES
   Les pochettes manquantes sont recherchées par artiste+titre
   puis mémorisées dans l'historique local.
   ========================================================= */

.edm-home-track__cover {
    overflow:hidden;
}

.edm-home-track__cover[style*="background-image"] {
    background-color:#101632 !important;
    background-size:cover !important;
    background-position:center center !important;
}


/* V8 — artwork capturé depuis le player Pro.Radio */
.edm-home-track__cover--live {
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}


/* =========================================================
   V9 — POCHETTES NATIVES RADIOKING
   Source prioritaire:
   api.radioking.io/widget/radio/edmtaste/track/current
   ========================================================= */
.edm-home-track__cover {
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}


/* =========================================================
   V12 — FIX D'AFFICHAGE DES POCHETTES
   L'ancien background !important du thème de la carte
   écrasait background-image inline. On utilise une vraie
   balise IMG au-dessus du placeholder.
   ========================================================= */
.edm-home-track__cover {
    position: relative !important;
    overflow: hidden !important;
}
.edm-home-track__artwork {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center !important;
    border: 0 !important;
    border-radius: inherit !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 2 !important;
}


/* =========================================================
   V13 — LAST PLAYED SONGS
   Liste pleine largeur, sans numérotation, avec heure RadioKing
   ========================================================= */
.edm-home-lastplayed .edm-home-sectionhead {
    margin-bottom: 18px;
}

.edm-home-lastplayed__list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
}

.edm-home-lastplayed__item {
    width: 100% !important;
    min-height: 94px !important;
    display: grid !important;
    grid-template-columns: 76px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 18px !important;
    padding: 10px 20px 10px 10px !important;
    border: 1px solid rgba(128, 92, 255, 0.24) !important;
    border-radius: 7px !important;
    background: linear-gradient(90deg, rgba(15,20,49,.98), rgba(9,14,35,.98)) !important;
}

.edm-home-lastplayed__item .edm-home-track__cover {
    width: 76px !important;
    height: 76px !important;
    min-width: 76px !important;
    border-radius: 5px !important;
}

.edm-home-lastplayed__meta {
    min-width: 0 !important;
    display: block !important;
}

.edm-home-lastplayed__meta h3 {
    margin: 0 0 5px !important;
    color: #fff !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.edm-home-lastplayed__meta p {
    margin: 0 !important;
    color: #cf58ff !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.edm-home-lastplayed__time {
    justify-self: end;
    padding-left: 18px;
    color: rgba(255,255,255,.88);
    font-size: 17px;
    font-weight: 500;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.edm-home-lastplayed .edm-home-track__num {
    display: none !important;
}

@media (max-width: 767px) {
    .edm-home-lastplayed__item {
        min-height: 78px !important;
        grid-template-columns: 60px minmax(0, 1fr) auto !important;
        gap: 12px !important;
        padding: 9px 12px 9px 9px !important;
    }

    .edm-home-lastplayed__item .edm-home-track__cover {
        width: 60px !important;
        height: 60px !important;
        min-width: 60px !important;
    }

    .edm-home-lastplayed__meta h3 {
        font-size: 15px !important;
    }

    .edm-home-lastplayed__meta p {
        font-size: 12px !important;
    }

    .edm-home-lastplayed__time {
        padding-left: 8px;
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .edm-home-lastplayed__item {
        grid-template-columns: 56px minmax(0, 1fr) auto !important;
        gap: 10px !important;
    }

    .edm-home-lastplayed__item .edm-home-track__cover {
        width: 56px !important;
        height: 56px !important;
        min-width: 56px !important;
    }

    .edm-home-lastplayed__time {
        font-size: 13px;
    }
}


/* =========================================================
   V14 — LAST PLAYED SONGS DANS LE HERO
   Desktop: contenu à gauche, playlist compacte à droite.
   Mobile/tablette: retour en une seule colonne.
   ========================================================= */

.edm-home-hero__layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr) !important;
    align-items: center !important;
    gap: 52px !important;
}

.edm-home-hero__copycol {
    min-width: 0;
    position: relative;
    z-index: 3;
}

.edm-home-hero-lastplayed {
    min-width: 0;
    position: relative;
    z-index: 4;
    align-self: center;
    padding-top: 10px;
}

.edm-home-hero-lastplayed__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 14px;
}

.edm-home-hero-lastplayed__head > div {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.edm-home-hero-lastplayed__head h2 {
    margin: 0 !important;
    color: #fff !important;
    font-size: 22px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: .2px;
    white-space: nowrap;
}

.edm-home-hero-lastplayed__head .edm-home-kicker {
    color: #d74cff;
    font-size: 18px;
    line-height: 1;
}

.edm-home-hero-lastplayed__head a {
    flex: 0 0 auto;
    color: #d74cff !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    white-space: nowrap;
}

.edm-home-hero-lastplayed__list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
}

.edm-home-hero-track {
    min-width: 0;
    min-height: 74px;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    padding: 8px 14px 8px 8px;
    border: 1px solid rgba(151, 107, 255, .24);
    border-radius: 7px;
    background: linear-gradient(90deg, rgba(12,17,43,.95), rgba(10,13,33,.92));
    backdrop-filter: blur(4px);
}

.edm-home-hero-track .edm-home-track__cover {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    border-radius: 5px !important;
}

.edm-home-hero-track__meta {
    min-width: 0;
}

.edm-home-hero-track__meta h3 {
    margin: 0 0 4px !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.edm-home-hero-track__meta p {
    margin: 0 !important;
    color: #cf58ff !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.edm-home-hero-track__time {
    justify-self: end;
    color: rgba(255,255,255,.88);
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

/* Make room for the right-side playlist while keeping the hero compact. */
@media (min-width: 1101px) {
    .edm-home-hero {
        min-height: 500px !important;
    }

    .edm-home-hero__content {
        max-width: 1160px !important;
    }

    .edm-home-hero__copycol .edm-home-copy {
        max-width: 470px;
    }
}

@media (max-width: 1100px) {
    .edm-home-hero__layout {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }

    .edm-home-hero-lastplayed {
        width: 100%;
        max-width: 760px;
        padding-top: 0;
    }

    .edm-home-hero-lastplayed__head h2 {
        font-size: 20px !important;
    }
}

@media (max-width: 640px) {
    .edm-home-hero__layout {
        gap: 26px !important;
    }

    .edm-home-hero-lastplayed__head {
        align-items: flex-start;
        gap: 10px;
    }

    .edm-home-hero-lastplayed__head h2 {
        font-size: 17px !important;
        white-space: normal;
    }

    .edm-home-hero-lastplayed__head a {
        font-size: 9px !important;
        margin-top: 3px;
    }

    .edm-home-hero-track {
        grid-template-columns: 52px minmax(0, 1fr) auto;
        min-height: 68px;
        gap: 10px;
        padding: 7px 10px 7px 7px;
    }

    .edm-home-hero-track .edm-home-track__cover {
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
    }

    .edm-home-hero-track__meta h3 {
        font-size: 14px !important;
    }

    .edm-home-hero-track__meta p {
        font-size: 11px !important;
    }

    .edm-home-hero-track__time {
        font-size: 12px;
    }
}


/* =========================================================
   V15 — LOGO OFFICIEL DANS LE HERO
   Retire "EDM TASTE RADIO" et remplace le H1 EDMTASTE.
   ========================================================= */
.edm-home-hero__copycol .edm-home-eyebrow {
    display: none !important;
}

.edm-home-hero__brand {
    margin: 0 0 20px !important;
    line-height: 0;
}

.edm-home-hero__logo {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: min(100%, 500px) !important;
    max-height: 220px !important;
    object-fit: contain !important;
    object-position: left center !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 1100px) {
    .edm-home-hero__logo {
        max-width: min(100%, 460px) !important;
    }
}

@media (max-width: 640px) {
    .edm-home-hero__brand {
        margin-bottom: 16px !important;
    }

    .edm-home-hero__logo {
        max-width: min(100%, 360px) !important;
        max-height: 170px !important;
    }
}


/* =========================================================
   V16 — 4 LAST PLAYED SONGS
   ========================================================= */
.edm-home-hero-lastplayed__list {
    gap: 8px !important;
}

.edm-home-hero-track {
    min-height: 68px !important;
    grid-template-columns: 54px minmax(0, 1fr) auto !important;
    gap: 12px !important;
    padding: 7px 13px 7px 7px !important;
}

.edm-home-hero-track .edm-home-track__cover {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
}

.edm-home-hero-track__meta h3 {
    font-size: 14px !important;
    margin-bottom: 3px !important;
}

.edm-home-hero-track__meta p {
    font-size: 11px !important;
}

.edm-home-hero-track__time {
    font-size: 13px !important;
}

@media (max-width: 640px) {
    .edm-home-hero-track {
        min-height: 64px !important;
        grid-template-columns: 50px minmax(0, 1fr) auto !important;
        gap: 9px !important;
        padding: 7px 9px 7px 7px !important;
    }

    .edm-home-hero-track .edm-home-track__cover {
        width: 50px !important;
        height: 50px !important;
        min-width: 50px !important;
    }
}


/* =========================================================
   V17 — 5 LAST PLAYED SONGS
   ========================================================= */
.edm-home-hero-lastplayed__list {
    gap: 7px !important;
}

.edm-home-hero-track {
    min-height: 62px !important;
    grid-template-columns: 48px minmax(0, 1fr) auto !important;
    gap: 11px !important;
    padding: 6px 12px 6px 6px !important;
}

.edm-home-hero-track .edm-home-track__cover {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
}

.edm-home-hero-track__meta h3 {
    font-size: 13px !important;
    margin-bottom: 2px !important;
}

.edm-home-hero-track__meta p {
    font-size: 10.5px !important;
}

.edm-home-hero-track__time {
    font-size: 12px !important;
}

@media (max-width: 640px) {
    .edm-home-hero-track {
        min-height: 58px !important;
        grid-template-columns: 46px minmax(0, 1fr) auto !important;
        gap: 8px !important;
        padding: 6px 8px 6px 6px !important;
    }

    .edm-home-hero-track .edm-home-track__cover {
        width: 46px !important;
        height: 46px !important;
        min-width: 46px !important;
    }

    .edm-home-hero-track__meta h3 {
        font-size: 12.5px !important;
    }

    .edm-home-hero-track__meta p {
        font-size: 10px !important;
    }

    .edm-home-hero-track__time {
        font-size: 11px !important;
    }
}


/* =========================================================
   V18 — LOGO HORIZONTAL DANS LE HERO
   ========================================================= */
.edm-home-hero__brand {
    margin: 0 0 24px !important;
}

.edm-home-hero__logo {
    width: min(100%, 540px) !important;
    max-width: 540px !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: left center !important;
}

/* Le logo long libère de la hauteur : on rapproche légèrement le slogan. */
.edm-home-hero__copycol .edm-home-tagline {
    margin-top: 0 !important;
}

@media (max-width: 1100px) {
    .edm-home-hero__logo {
        width: min(100%, 500px) !important;
        max-width: 500px !important;
    }
}

@media (max-width: 640px) {
    .edm-home-hero__brand {
        margin-bottom: 18px !important;
    }

    .edm-home-hero__logo {
        width: min(100%, 390px) !important;
        max-width: 390px !important;
    }
}


/* =========================================================
   V19 — 3 LAST PLAYED SONGS + LOGO HORIZONTAL
   ========================================================= */
.edm-home-hero-lastplayed__list {
    gap: 10px !important;
}

.edm-home-hero-track {
    min-height: 74px !important;
    grid-template-columns: 58px minmax(0, 1fr) auto !important;
    gap: 14px !important;
    padding: 8px 14px 8px 8px !important;
}

.edm-home-hero-track .edm-home-track__cover {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
}

.edm-home-hero-track__meta h3 {
    font-size: 15px !important;
    margin-bottom: 4px !important;
}

.edm-home-hero-track__meta p {
    font-size: 12px !important;
}

.edm-home-hero-track__time {
    font-size: 14px !important;
}

@media (max-width: 640px) {
    .edm-home-hero-track {
        min-height: 68px !important;
        grid-template-columns: 52px minmax(0, 1fr) auto !important;
        gap: 10px !important;
        padding: 7px 10px 7px 7px !important;
    }

    .edm-home-hero-track .edm-home-track__cover {
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
    }

    .edm-home-hero-track__meta h3 {
        font-size: 14px !important;
    }

    .edm-home-hero-track__meta p {
        font-size: 11px !important;
    }

    .edm-home-hero-track__time {
        font-size: 12px !important;
    }
}


/* =========================================================
   V20 — NOUVEAU LOGO LONG OFFICIEL
   ========================================================= */
.edm-home-hero__logo {
    width: min(100%, 560px) !important;
    max-width: 560px !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: left center !important;
}

@media (max-width: 1100px) {
    .edm-home-hero__logo {
        width: min(100%, 520px) !important;
        max-width: 520px !important;
    }
}

@media (max-width: 640px) {
    .edm-home-hero__logo {
        width: min(100%, 400px) !important;
        max-width: 400px !important;
    }
}


/* =========================================================
   V22 — TAGLINE SUR UNE LIGNE + 3 COULEURS NÉON
   ========================================================= */
.edm-home-tagline--neon {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: nowrap !important;
    gap: .28em !important;

    margin: 0 0 24px !important;

    color: #ffffff !important;
    font-size: clamp(22px, 1.65vw, 31px) !important;
    line-height: 1.08 !important;
    font-weight: 900 !important;
    letter-spacing: .035em !important;
    white-space: nowrap !important;
}

.edm-home-tagline--neon span {
    display: inline !important;
}

/* Couleurs inspirées du logo néon : rose → violet → cyan/bleu */
.edm-home-tagline__vibe {
    color: #ff36d6 !important;
    text-shadow: 0 0 12px rgba(255, 54, 214, .22);
}

.edm-home-tagline__sound {
    color: #8d4dff !important;
    text-shadow: 0 0 12px rgba(141, 77, 255, .22);
}

.edm-home-tagline__taste {
    color: #27cfff !important;
    text-shadow: 0 0 12px rgba(39, 207, 255, .22);
}

/* Sur écrans moyens, on réduit légèrement pour conserver la ligne unique. */
@media (max-width: 1280px) and (min-width: 1101px) {
    .edm-home-tagline--neon {
        font-size: 21px !important;
        letter-spacing: .02em !important;
        gap: .22em !important;
    }
}

/* Sous 1100 px, on autorise le retour à la ligne pour éviter tout débordement. */
@media (max-width: 1100px) {
    .edm-home-tagline--neon {
        flex-wrap: wrap !important;
        white-space: normal !important;
        font-size: clamp(20px, 3.6vw, 28px) !important;
        row-gap: .12em !important;
    }
}

@media (max-width: 640px) {
    .edm-home-tagline--neon {
        font-size: 18px !important;
        gap: .2em !important;
        margin-bottom: 20px !important;
    }
}


/* =========================================================
   V23 — LOGO COURT DANS LE HERO
   ========================================================= */
.edm-home-hero__brand {
    margin: 0 0 22px !important;
}

.edm-home-hero__logo {
    width: auto !important;
    max-width: 420px !important;
    max-height: 210px !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: left center !important;
}

@media (max-width: 1100px) {
    .edm-home-hero__logo {
        max-width: 380px !important;
        max-height: 190px !important;
    }
}

@media (max-width: 640px) {
    .edm-home-hero__logo {
        max-width: 310px !important;
        max-height: 160px !important;
    }
}


/* =========================================================
   V24 — TAGLINE PLUS COMPACTE
   Garde la phrase sur une ligne sans empiéter sur LAST PLAYED.
   ========================================================= */

@media (min-width: 1101px) {
    .edm-home-tagline--neon {
        font-size: clamp(18px, 1.18vw, 23px) !important;
        letter-spacing: .012em !important;
        gap: .16em !important;
        white-space: nowrap !important;
        flex-wrap: nowrap !important;
        max-width: 100% !important;
        margin-right: 28px !important;
    }

    .edm-home-hero__layout {
        gap: 64px !important;
    }
}

/* Écrans desktop un peu plus étroits */
@media (min-width: 1101px) and (max-width: 1360px) {
    .edm-home-tagline--neon {
        font-size: 18px !important;
        letter-spacing: 0 !important;
        gap: .12em !important;
        margin-right: 22px !important;
    }

    .edm-home-hero__layout {
        gap: 54px !important;
    }
}


/* =========================================================
   V25 — LOGO + TAGLINE À DROITE SUR 3 LIGNES
   Desktop: lockup horizontal dans la colonne gauche.
   Mobile/tablette: tagline repasse sous le logo.
   ========================================================= */

.edm-home-brandlockup {
    display: grid !important;
    grid-template-columns: minmax(250px, 390px) minmax(210px, 1fr) !important;
    align-items: center !important;
    gap: 28px !important;
    margin: 0 0 24px !important;
    max-width: 100% !important;
}

.edm-home-brandlockup .edm-home-hero__brand {
    margin: 0 !important;
    min-width: 0 !important;
}

.edm-home-brandlockup .edm-home-hero__logo {
    display: block !important;
    width: 100% !important;
    max-width: 390px !important;
    max-height: 190px !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: left center !important;
    margin: 0 !important;
}

.edm-home-brandlockup__tagline {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 4px !important;

    color: #fff !important;
    font-size: clamp(20px, 1.42vw, 27px) !important;
    line-height: 1.04 !important;
    font-weight: 900 !important;
    letter-spacing: .025em !important;
    white-space: nowrap !important;
}

.edm-home-brandlockup__tagline > div {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

.edm-home-brandlockup__tagline .edm-home-tagline__vibe {
    color: #ff36d6 !important;
    text-shadow: 0 0 12px rgba(255,54,214,.22);
}

.edm-home-brandlockup__tagline .edm-home-tagline__sound {
    color: #8d4dff !important;
    text-shadow: 0 0 12px rgba(141,77,255,.22);
}

.edm-home-brandlockup__tagline .edm-home-tagline__taste {
    color: #27cfff !important;
    text-shadow: 0 0 12px rgba(39,207,255,.22);
}

/* Neutralise l'ancienne tagline V22/V24 si une règle résiduelle subsiste. */
.edm-home-tagline--neon {
    display: none !important;
}

@media (min-width: 1101px) and (max-width: 1360px) {
    .edm-home-brandlockup {
        grid-template-columns: minmax(230px, 340px) minmax(190px, 1fr) !important;
        gap: 22px !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        max-width: 340px !important;
        max-height: 170px !important;
    }

    .edm-home-brandlockup__tagline {
        font-size: 20px !important;
        letter-spacing: .015em !important;
    }
}

@media (max-width: 1100px) {
    .edm-home-brandlockup {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 18px !important;
        margin-bottom: 22px !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        width: auto !important;
        max-width: 380px !important;
        max-height: 180px !important;
    }

    .edm-home-brandlockup__tagline {
        font-size: clamp(21px, 3.5vw, 28px) !important;
        gap: 3px !important;
    }
}

@media (max-width: 640px) {
    .edm-home-brandlockup {
        gap: 14px !important;
        margin-bottom: 20px !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        max-width: 300px !important;
        max-height: 150px !important;
    }

    .edm-home-brandlockup__tagline {
        font-size: 18px !important;
        line-height: 1.08 !important;
    }
}


/* =========================================================
   V26 — HERO PLUS COMPACT / HOMEPAGE PLUS DENSE
   ========================================================= */

@media (min-width: 1101px) {

    /* Réduit nettement la hauteur globale du hero. */
    .edm-home-hero {
        min-height: 410px !important;
        padding-top: 26px !important;
        padding-bottom: 24px !important;
    }

    /* Centre mieux les deux colonnes dans une zone plus compacte. */
    .edm-home-hero__layout {
        align-items: center !important;
        gap: 56px !important;
    }

    /* Logo + baseline légèrement plus présents. */
    .edm-home-brandlockup {
        grid-template-columns: minmax(270px, 420px) minmax(220px, 1fr) !important;
        gap: 30px !important;
        margin-bottom: 16px !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        max-width: 420px !important;
        max-height: 200px !important;
    }

    .edm-home-brandlockup__tagline {
        font-size: clamp(21px, 1.48vw, 28px) !important;
        gap: 3px !important;
    }

    /* Rapproche le texte descriptif du branding. */
    .edm-home-hero__copycol .edm-home-copy {
        margin-top: 8px !important;
        margin-bottom: 16px !important;
        max-width: 500px !important;
    }

    /* Rapproche les CTA du texte. */
    .edm-home-actions {
        margin-top: 0 !important;
    }

    /* Réduit légèrement l'encombrement vertical du bloc titres. */
    .edm-home-hero-lastplayed {
        padding-top: 0 !important;
    }

    .edm-home-hero-lastplayed__head {
        margin-bottom: 10px !important;
    }

    .edm-home-hero-lastplayed__list {
        gap: 8px !important;
    }

    .edm-home-hero-track {
        min-height: 70px !important;
    }

    /* Fait remonter la section suivante visuellement. */
    .edm-home-hero + .edm-home-section {
        padding-top: 30px !important;
    }
}

@media (min-width: 1101px) and (max-width: 1360px) {
    .edm-home-hero {
        min-height: 395px !important;
        padding-top: 22px !important;
        padding-bottom: 20px !important;
    }

    .edm-home-brandlockup {
        grid-template-columns: minmax(250px, 375px) minmax(205px, 1fr) !important;
        gap: 24px !important;
        margin-bottom: 14px !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        max-width: 375px !important;
        max-height: 185px !important;
    }

    .edm-home-brandlockup__tagline {
        font-size: 20px !important;
    }

    .edm-home-hero__layout {
        gap: 48px !important;
    }
}


/* =========================================================
   V27 — HERO AVEC LOGO PLUS GRAND + TAGLINES CENTRÉES DESSOUS
   ========================================================= */

@media (min-width: 1101px) {

    /* On allonge un peu le bloc de gauche pour équilibrer le hero. */
    .edm-home-hero {
        min-height: 460px !important;
        padding-top: 30px !important;
        padding-bottom: 28px !important;
    }

    .edm-home-hero__layout {
        align-items: center !important;
        gap: 52px !important;
    }

    /* Logo plus grand + tagline replacée en dessous et centrée. */
    .edm-home-brandlockup {
        display: grid !important;
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        align-items: center !important;
        text-align: center !important;
        gap: 18px !important;
        margin-bottom: 18px !important;
        max-width: 560px !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        max-width: 520px !important;
        width: min(100%, 520px) !important;
        max-height: 230px !important;
        margin: 0 auto !important;
        display: block !important;
    }

    /* Taglines ligne par ligne, centrées sous le logo. */
    .edm-home-brandlockup__tagline {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        gap: 2px !important;
        width: 100% !important;
        margin: 0 auto !important;
        font-size: clamp(18px, 1.55vw, 27px) !important;
        line-height: 1.02 !important;
    }

    .edm-home-brandlockup__tagline > * {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
    }

    .edm-home-hero__copycol {
        max-width: 610px !important;
    }

    .edm-home-hero__copycol .edm-home-copy {
        max-width: 500px !important;
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .edm-home-actions {
        justify-content: center !important;
    }

    /* Le bloc des titres reste compact pour ne pas perdre de place. */
    .edm-home-hero-lastplayed {
        padding-top: 4px !important;
    }

    .edm-home-hero-lastplayed__head {
        margin-bottom: 10px !important;
    }

    .edm-home-hero-lastplayed__list {
        gap: 8px !important;
    }

    .edm-home-hero-track {
        min-height: 70px !important;
    }

    .edm-home-hero + .edm-home-section {
        padding-top: 26px !important;
    }
}

@media (min-width: 1101px) and (max-width: 1360px) {
    .edm-home-hero {
        min-height: 440px !important;
    }

    .edm-home-brandlockup {
        max-width: 500px !important;
        gap: 16px !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        max-width: 470px !important;
        width: min(100%, 470px) !important;
        max-height: 210px !important;
    }

    .edm-home-brandlockup__tagline {
        font-size: 21px !important;
    }
}

@media (max-width: 1100px) {
    .edm-home-brandlockup {
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        text-align: center !important;
        gap: 14px !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        margin: 0 auto !important;
    }

    .edm-home-brandlockup__tagline {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 2px !important;
    }

    .edm-home-brandlockup__tagline > * {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
    }

    .edm-home-hero__copycol .edm-home-copy,
    .edm-home-actions {
        text-align: center !important;
        justify-content: center !important;
    }
}


/* =========================================================
   V28 — 4 LAST PLAYED SONGS DANS LE HERO
   ========================================================= */
@media (min-width: 1101px) {
    .edm-home-hero {
        min-height: 490px !important;
    }

    .edm-home-hero-lastplayed__list {
        gap: 7px !important;
    }

    .edm-home-hero-track {
        min-height: 66px !important;
        grid-template-columns: 54px minmax(0, 1fr) auto !important;
        gap: 11px !important;
        padding: 7px 12px 7px 7px !important;
    }

    .edm-home-hero-track .edm-home-track__cover {
        width: 54px !important;
        height: 54px !important;
        min-width: 54px !important;
    }

    .edm-home-hero-track__meta h3 {
        font-size: 14px !important;
        margin-bottom: 3px !important;
    }

    .edm-home-hero-track__meta p {
        font-size: 11px !important;
    }

    .edm-home-hero-track__time {
        font-size: 13px !important;
    }
}

@media (min-width: 1101px) and (max-width: 1360px) {
    .edm-home-hero {
        min-height: 470px !important;
    }
}

@media (max-width: 640px) {
    .edm-home-hero-track {
        min-height: 62px !important;
        grid-template-columns: 48px minmax(0, 1fr) auto !important;
        gap: 8px !important;
        padding: 6px 8px 6px 6px !important;
    }

    .edm-home-hero-track .edm-home-track__cover {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
    }

    .edm-home-hero-track__meta h3 {
        font-size: 12.5px !important;
    }

    .edm-home-hero-track__meta p {
        font-size: 10px !important;
    }

    .edm-home-hero-track__time {
        font-size: 11px !important;
    }
}


/* =========================================================
   V29 — HERO REPROPORTIONNÉ D'APRÈS LA MAQUETTE
   Grand logo, tagline sur 2 lignes, 3 cartes plus généreuses.
   ========================================================= */

@media (min-width: 1101px) {

    .edm-home-hero {
        min-height: 620px !important;
        padding-top: 36px !important;
        padding-bottom: 36px !important;
    }

    /* Hero plus large que les sections standards pour retrouver la maquette. */
    .edm-home-hero__content.edm-home-shell {
        width: min(1450px, calc(100% - 100px)) !important;
        max-width: 1450px !important;
    }

    .edm-home-hero__layout {
        grid-template-columns: minmax(0, .98fr) minmax(560px, 1.02fr) !important;
        gap: 72px !important;
        align-items: center !important;
    }

    .edm-home-hero__copycol {
        max-width: 650px !important;
    }

    .edm-home-brandlockup {
        display: grid !important;
        grid-template-columns: 1fr !important;
        justify-items: start !important;
        text-align: left !important;
        gap: 28px !important;
        max-width: 620px !important;
        margin: 0 0 26px !important;
    }

    .edm-home-brandlockup .edm-home-hero__brand {
        width: 100% !important;
        margin: 0 !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        width: min(100%, 560px) !important;
        max-width: 560px !important;
        max-height: 290px !important;
        margin: 0 !important;
        object-position: left center !important;
    }

    .edm-home-brandlockup__tagline--reference {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        width: 100% !important;
        margin: 0 !important;
        gap: 4px !important;
        color: #fff !important;
        font-size: clamp(25px, 1.85vw, 34px) !important;
        line-height: 1.05 !important;
        font-weight: 900 !important;
        letter-spacing: .075em !important;
        white-space: nowrap !important;
        text-align: left !important;
    }

    .edm-home-brandlockup__tagline--reference > div {
        width: auto !important;
        text-align: left !important;
    }

    .edm-home-brandlockup__tagline--reference .edm-home-brandlockup__line2 span {
        color: #ff36d6 !important;
        text-shadow: 0 0 14px rgba(255,54,214,.2);
    }

    .edm-home-hero__copycol .edm-home-copy {
        max-width: 520px !important;
        margin: 0 0 28px !important;
        text-align: left !important;
        font-size: 17px !important;
        line-height: 1.55 !important;
    }

    .edm-home-actions {
        justify-content: flex-start !important;
        gap: 30px !important;
    }

    .edm-home-btn--primary {
        min-height: 58px !important;
        padding: 0 28px !important;
        font-size: 14px !important;
    }

    .edm-home-live-dot {
        font-size: 14px !important;
    }

    /* Colonne droite */
    .edm-home-hero-lastplayed {
        width: 100% !important;
        max-width: 680px !important;
        justify-self: end !important;
        padding-top: 0 !important;
    }

    .edm-home-hero-lastplayed__head {
        margin-bottom: 22px !important;
        align-items: center !important;
    }

    .edm-home-hero-lastplayed__head h2 {
        font-size: 28px !important;
        letter-spacing: .015em !important;
    }

    .edm-home-hero-lastplayed__head .edm-home-kicker {
        font-size: 25px !important;
    }

    .edm-home-hero-lastplayed__head a {
        font-size: 12px !important;
    }

    .edm-home-hero-lastplayed__list {
        gap: 14px !important;
    }

    .edm-home-hero-track {
        min-height: 112px !important;
        grid-template-columns: 92px minmax(0, 1fr) auto !important;
        gap: 22px !important;
        padding: 12px 22px 12px 12px !important;
        border-radius: 12px !important;
        border: 1px solid rgba(142, 104, 255, .32) !important;
        background: linear-gradient(90deg, rgba(10,14,39,.97), rgba(10,10,31,.95)) !important;
    }

    .edm-home-hero-track .edm-home-track__cover {
        width: 92px !important;
        height: 92px !important;
        min-width: 92px !important;
        border-radius: 7px !important;
    }

    .edm-home-hero-track__meta h3 {
        font-size: 20px !important;
        margin-bottom: 7px !important;
    }

    .edm-home-hero-track__meta p {
        font-size: 15px !important;
    }

    .edm-home-hero-track__time {
        font-size: 18px !important;
    }

    /* La section suivante démarre plus bas, comme sur la maquette. */
    .edm-home-hero + .edm-home-section {
        padding-top: 34px !important;
    }
}

/* Desktop intermédiaire */
@media (min-width: 1101px) and (max-width: 1450px) {
    .edm-home-hero__content.edm-home-shell {
        width: min(1320px, calc(100% - 70px)) !important;
    }

    .edm-home-hero__layout {
        grid-template-columns: minmax(0, .95fr) minmax(500px, 1.05fr) !important;
        gap: 52px !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        width: min(100%, 500px) !important;
        max-width: 500px !important;
    }

    .edm-home-brandlockup__tagline--reference {
        font-size: 25px !important;
        letter-spacing: .055em !important;
    }

    .edm-home-hero-lastplayed {
        max-width: 620px !important;
    }

    .edm-home-hero-track {
        min-height: 102px !important;
        grid-template-columns: 82px minmax(0,1fr) auto !important;
        gap: 18px !important;
    }

    .edm-home-hero-track .edm-home-track__cover {
        width: 82px !important;
        height: 82px !important;
        min-width: 82px !important;
    }
}

/* Tablette/mobile : on reste responsive, sans forcer les grandes proportions desktop. */
@media (max-width: 1100px) {
    .edm-home-brandlockup__tagline--reference {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 3px !important;
        font-size: clamp(21px, 4vw, 29px) !important;
        letter-spacing: .04em !important;
        white-space: normal !important;
    }

    .edm-home-brandlockup__tagline--reference > div {
        text-align: center !important;
    }
}

@media (max-width: 640px) {
    .edm-home-brandlockup__tagline--reference {
        font-size: 19px !important;
    }
}


/* =========================================================
   V30 — COLONNE GAUCHE DÉCALÉE VERS LA DROITE
   Garde LAST PLAYED SONGS à sa position actuelle.
   ========================================================= */

@media (min-width: 1451px) {
    .edm-home-hero__copycol {
        transform: translateX(50px) !important;
    }
}

@media (min-width: 1101px) and (max-width: 1450px) {
    .edm-home-hero__copycol {
        transform: translateX(34px) !important;
    }
}

@media (max-width: 1100px) {
    .edm-home-hero__copycol {
        transform: none !important;
    }
}


/* =========================================================
   V33 — NOW PLAYING + POCHETTE PLUS GRANDE
   ========================================================= */

.edm-home-nowplaying-badge {
    min-width: 0;
    width: 430px;
    min-height: 82px;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    align-items: center;
    gap: 14px;

    padding: 11px 16px;

    border: 1px solid rgba(184, 84, 255, .42);
    border-radius: 10px;

    background: linear-gradient(90deg, rgba(16, 18, 48, .97), rgba(10, 12, 34, .93));
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.018),
        0 12px 30px rgba(28, 6, 69, .2);

    overflow: hidden;
}

.edm-home-nowplaying-badge__media {
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
}

.edm-home-nowplaying-badge__cover {
    display: block;
    width: 58px;
    height: 58px;
    border-radius: 8px;
    object-fit: cover;
    background: linear-gradient(135deg, rgba(217, 68, 255, .4), rgba(55, 180, 255, .28));
    box-shadow: 0 0 0 1px rgba(255,255,255,.06);
}

.edm-home-nowplaying-badge__cover--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 26px;
    font-weight: 700;
}

.edm-home-nowplaying-badge__content {
    min-width: 0;
    display: grid;
    grid-template-columns: 1fr;
    align-content: center;
    gap: 3px;
}

.edm-home-nowplaying-badge__label {
    display: flex;
    align-items: center;
    gap: 7px;

    color: #d74cff;
    font-size: 9px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: .12em;
}

.edm-home-nowplaying-badge__label i {
    display: inline-block;
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background: #d74cff;
    box-shadow: 0 0 12px rgba(215, 76, 255, .9);
}

.edm-home-nowplaying-badge__title,
.edm-home-nowplaying-badge__artist {
    display: block;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.edm-home-nowplaying-badge__title {
    color: #fff;
    font-size: 14px;
    line-height: 1.15;
    font-weight: 800;
}

.edm-home-nowplaying-badge__artist {
    color: #c45bff;
    font-size: 11px;
    line-height: 1.15;
    font-weight: 500;
}

@media (min-width: 1101px) {
    .edm-home-actions {
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 18px !important;
    }

    .edm-home-btn--primary {
        flex: 0 0 auto !important;
    }

    .edm-home-nowplaying-badge {
        flex: 1 1 auto;
        max-width: 430px;
    }
}

@media (min-width: 1101px) and (max-width: 1450px) {
    .edm-home-nowplaying-badge {
        width: 360px;
        max-width: 360px;
        min-height: 76px;
        grid-template-columns: 52px minmax(0, 1fr);
        gap: 12px;
        padding-left: 14px;
        padding-right: 14px;
    }

    .edm-home-nowplaying-badge__media,
    .edm-home-nowplaying-badge__cover {
        width: 52px;
        height: 52px;
    }

    .edm-home-nowplaying-badge__title {
        font-size: 13px;
    }
}

@media (max-width: 1100px) {
    .edm-home-nowplaying-badge {
        width: min(100%, 430px);
    }
}

@media (max-width: 520px) {
    .edm-home-actions {
        width: 100%;
        flex-direction: column;
        align-items: stretch !important;
    }

    .edm-home-btn--primary,
    .edm-home-nowplaying-badge {
        width: 100% !important;
        max-width: none !important;
    }
}


/* =========================================================
   V34 — TAGLINE NÉON + LISTEN LIVE → PLAYER PRO.RADIO
   ========================================================= */

/* Rose du côté gauche du logo néon */
.edm-home-brandlockup__tagline--reference .edm-home-tagline__vibe {
    color: #ff36d6 !important;
    text-shadow: 0 0 13px rgba(255, 54, 214, .18) !important;
}

/* Violet central du logo */
.edm-home-brandlockup__tagline--reference .edm-home-tagline__sound {
    color: #8d4dff !important;
    text-shadow: 0 0 13px rgba(141, 77, 255, .18) !important;
}

/* Bleu / cyan de la fin de TASTE */
.edm-home-brandlockup__tagline--reference .edm-home-tagline__taste,
.edm-home-brandlockup__tagline--reference .edm-home-brandlockup__line2 .edm-home-tagline__taste {
    color: #27cfff !important;
    text-shadow: 0 0 13px rgba(39, 207, 255, .18) !important;
}


/* =========================================================
   V35 — BOUTON APPLE MUSIC SUR LES DERNIERS TITRES
   ========================================================= */

.edm-home-hero-track__titleline {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 9px;
}

.edm-home-hero-track__titleline h3 {
    flex: 1 1 auto;
    min-width: 0;
}

.edm-home-apple-link {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255, 74, 214, .48);
    border-radius: 7px;

    color: #fff !important;
    background: linear-gradient(135deg, rgba(255,54,214,.92), rgba(141,77,255,.92));
    box-shadow: 0 5px 16px rgba(175, 48, 255, .18);

    text-decoration: none !important;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.edm-home-apple-link:hover,
.edm-home-apple-link:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(39, 207, 255, .72);
    box-shadow: 0 7px 19px rgba(175, 48, 255, .28);
    color: #fff !important;
}

.edm-home-apple-link svg {
    display: block;
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (max-width: 1450px) and (min-width: 1101px) {
    .edm-home-apple-link {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
    }

    .edm-home-apple-link svg {
        width: 15px;
        height: 15px;
    }
}

@media (max-width: 640px) {
    .edm-home-hero-track__titleline {
        gap: 6px;
    }

    .edm-home-apple-link {
        width: 26px;
        height: 26px;
        flex-basis: 26px;
        border-radius: 6px;
    }

    .edm-home-apple-link svg {
        width: 14px;
        height: 14px;
    }
}


/* =========================================================
   V36 — LIEN APPLE MUSIC DIRECT RADIOKING + ALIGNEMENT HEURE
   ========================================================= */

/* Le panier n'est plus dans la ligne du titre. */
.edm-home-hero-track__titleline {
    display: block !important;
}

.edm-home-hero-track__actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 18px !important;
    min-width: 112px !important;
    align-self: center !important;
}

.edm-home-hero-track__actions .edm-home-apple-link {
    margin: 0 !important;
    align-self: center !important;
}

.edm-home-hero-track__actions .edm-home-hero-track__time {
    min-width: 52px !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: right !important;
    align-self: center !important;
}

/* La 3e colonne contient maintenant panier + heure. */
.edm-home-hero-track {
    grid-template-columns: 92px minmax(0, 1fr) auto !important;
}

@media (min-width: 1101px) and (max-width: 1450px) {
    .edm-home-hero-track {
        grid-template-columns: 82px minmax(0, 1fr) auto !important;
    }

    .edm-home-hero-track__actions {
        gap: 14px !important;
        min-width: 102px !important;
    }

    .edm-home-hero-track__actions .edm-home-hero-track__time {
        min-width: 48px !important;
    }
}

@media (max-width: 640px) {
    .edm-home-hero-track__actions {
        gap: 8px !important;
        min-width: 82px !important;
    }

    .edm-home-hero-track__actions .edm-home-hero-track__time {
        min-width: 40px !important;
    }
}


/* =========================================================
   V37 — AJUSTEMENTS MOBILE UNIQUEMENT
   1) Centre logo + tagline
   2) Now Playing aligné à gauche
   3) Pochette plus proche des titres joués
   ========================================================= */

@media (max-width: 767px) {

    /* 1) Bloc branding centré */
    .edm-home-hero__copycol {
        text-align: center !important;
    }

    .edm-home-brandlockup {
        justify-items: center !important;
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
        gap: 16px !important;
    }

    .edm-home-brandlockup .edm-home-hero__brand {
        display: flex !important;
        justify-content: center !important;
        width: 100% !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        margin-left: auto !important;
        margin-right: auto !important;
        object-position: center center !important;
    }

    .edm-home-brandlockup__tagline--reference,
    .edm-home-brandlockup__tagline--reference > div {
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
    }

    .edm-home-hero__copycol .edm-home-copy {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* 2) Cartouche NOW PLAYING alignée à gauche */
    .edm-home-nowplaying-badge {
        grid-template-columns: 64px minmax(0, 1fr) !important;
        gap: 12px !important;
        padding: 12px 14px !important;
    }

    .edm-home-nowplaying-badge__media,
    .edm-home-nowplaying-badge__cover {
        width: 64px !important;
        height: 64px !important;
        justify-self: start !important;
        align-self: center !important;
    }

    .edm-home-nowplaying-badge__content {
        justify-items: start !important;
        align-content: center !important;
        text-align: left !important;
        gap: 4px !important;
    }

    .edm-home-nowplaying-badge__label,
    .edm-home-nowplaying-badge__title,
    .edm-home-nowplaying-badge__artist {
        width: 100% !important;
        text-align: left !important;
        justify-content: flex-start !important;
    }

    /* 3) Derniers titres joués : texte plus proche de la pochette */
    .edm-home-hero-track {
        grid-template-columns: 64px minmax(0, 1fr) auto !important;
        gap: 10px !important;
        padding: 10px 12px 10px 10px !important;
        align-items: center !important;
    }

    .edm-home-hero-track .edm-home-track__cover {
        width: 64px !important;
        height: 64px !important;
        min-width: 64px !important;
        margin-right: 0 !important;
        justify-self: start !important;
    }

    .edm-home-hero-track__meta {
        min-width: 0 !important;
        text-align: left !important;
    }

    .edm-home-hero-track__meta h3,
    .edm-home-hero-track__meta p {
        text-align: left !important;
    }

    .edm-home-hero-track__actions {
        gap: 8px !important;
        min-width: auto !important;
        align-items: center !important;
    }
}

/* Petite optimisation pour très petits écrans */
@media (max-width: 480px) {
    .edm-home-brandlockup {
        gap: 14px !important;
    }

    .edm-home-brandlockup__tagline--reference {
        font-size: 18px !important;
    }

    .edm-home-hero-track {
        gap: 8px !important;
        padding-right: 10px !important;
    }
}


/* =========================================================
   V38 — CENTRAGE MOBILE CORRIGÉ DE LA TAGLINE
   ========================================================= */

@media (max-width: 767px) {

    /* Le lockup prend toute la largeur disponible */
    .edm-home-brandlockup {
        width: 100% !important;
        max-width: none !important;
        justify-items: center !important;
        align-items: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    .edm-home-brandlockup .edm-home-hero__brand {
        width: 100% !important;
        max-width: none !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .edm-home-brandlockup .edm-home-hero__logo {
        display: block !important;
        margin-left: auto !important;
        margin-right: auto !important;
        object-position: center center !important;
    }

    /* La tagline et chacune de ses lignes occupent 100% de la largeur */
    .edm-home-brandlockup__tagline--reference {
        width: 100% !important;
        max-width: none !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    .edm-home-brandlockup__tagline--reference .edm-home-brandlockup__line1,
    .edm-home-brandlockup__tagline--reference .edm-home-brandlockup__line2 {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 auto !important;
        text-align: center !important;
        justify-content: center !important;
    }
}

@media (max-width: 480px) {
    .edm-home-brandlockup__tagline--reference {
        width: calc(100% + 10px) !important;
        margin-left: -5px !important;
        margin-right: -5px !important;
    }
}
