/*
Theme Name: Astra Child — Shop My Music
Template: astra
Author: Shop My Music
Description: Magazine variete & pop francaise des annees 80. Palette indigo nuit / magenta / creme.
Version: 1.0
*/

:root{
  --smm-ink:#181430;            /* encre nuit / indigo profond */
  --smm-ink-2:#221c4a;
  --smm-indigo:#4b3fa7;         /* indigo accent */
  --smm-indigo-soft:#6f63d1;
  --smm-magenta:#e0559b;        /* magenta electrique doux */
  --smm-magenta-2:#ec4b96;
  --smm-cream:#faf7f2;          /* creme ivoire */
  --smm-pearl:#ece9f2;          /* gris perle */
  --smm-text:#221f2e;
  --smm-muted:#6b6880;
  --smm-line:#e4e0ec;
  --smm-serif:"Playfair Display",Georgia,"Times New Roman",serif;
  --smm-sans:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --smm-maxw:1180px;
}

/* ---------- Base ---------- */
body{
  font-family:var(--smm-sans);
  color:var(--smm-text);
  background:var(--smm-cream);
  overflow-x:hidden;
}
h1,h2,h3,h4,.smm-serif{font-family:var(--smm-serif);}
a{color:var(--smm-indigo);}
a:hover{color:var(--smm-magenta);}
.ast-container{max-width:var(--smm-maxw);}

/* Astra quirks (voir CLAUDE.md) */
.ast-container,.site-content .content-area .site-main,#primary{padding-left:0;padding-right:0;}
.entry-header{display:none;}

/* ---------- Header / Nav ---------- */
.site-header,.ast-primary-header-bar{
  background:var(--smm-ink)!important;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.main-header-bar{background:transparent!important;}
.site-title a,.ast-site-title-wrap .site-title a{
  font-family:var(--smm-serif);
  font-weight:700;
  color:#fff!important;
  letter-spacing:.3px;
}
.site-branding .site-title a:hover{color:var(--smm-magenta)!important;}
.ast-site-identity{padding:.6em 0;}
.main-header-menu,.main-header-menu .menu-link,
.ast-header-menu .menu-item>a{
  color:#f2eefb!important;
  font-weight:600;
  font-size:.94rem;
  letter-spacing:.2px;
  text-transform:uppercase;
}
.main-header-menu .menu-link:hover,
.main-header-menu .current-menu-item>a{color:var(--smm-magenta)!important;}
.main-header-menu .sub-menu{background:var(--smm-ink-2)!important;border:none;}
.main-header-menu .sub-menu a{color:#e9e5f7!important;text-transform:none;}
/* Menu toggle mobile */
.ast-mobile-menu-buttons-minimal{color:#fff;}
.main-header-menu.submenu-with-border .sub-menu{border-color:rgba(255,255,255,.1);}

/* ---------- Boutons ---------- */
.smm-btn,.wp-block-button__link{
  display:inline-block;
  background:linear-gradient(135deg,var(--smm-magenta),var(--smm-indigo));
  color:#fff!important;
  padding:.7em 1.5em;
  border-radius:40px;
  font-weight:700;
  text-decoration:none;
  letter-spacing:.3px;
  border:none;
  transition:transform .15s ease,box-shadow .15s ease;
}
.smm-btn:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(224,85,155,.35);color:#fff!important;}

/* ---------- Layout home : sortir du conteneur flex Astra ---------- */
body.home #content > .ast-container,
body.page-id-6 #content > .ast-container{
  display:block!important;
  max-width:100%!important;
  padding:0!important;
  margin:0!important;
}
body.home #primary,body.page-id-6 #primary,
body.home .site-main,body.page-id-6 .site-main,
body.home .entry-content,body.page-id-6 .entry-content{
  width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;
}
body.home .ast-article-single,body.page-id-6 .ast-article-single{padding:0;border:0;}

/* Masquer le crédit Astra (footer maison le remplace) */
.ast-small-footer,.site-primary-footer-wrap,.ast-footer-copyright{display:none!important;}

/* ---------- HOME ---------- */
.smm-hero{
  position:relative;
  background:radial-gradient(120% 140% at 20% 10%,var(--smm-ink-2) 0%,var(--smm-ink) 55%,#0f0c24 100%);
  color:#fff;
  padding:5.5rem 1.2rem 5rem;
  text-align:center;
  overflow:hidden;
}
.smm-hero:before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(40% 55% at 80% 20%,rgba(224,85,155,.28),transparent 70%),
    radial-gradient(45% 60% at 12% 85%,rgba(111,99,209,.28),transparent 70%);
  pointer-events:none;
}
.smm-hero .smm-kicker{
  position:relative;z-index:1;
  text-transform:uppercase;letter-spacing:3px;font-size:.78rem;font-weight:700;
  color:var(--smm-magenta);margin-bottom:1rem;
}
.smm-hero h1{
  position:relative;z-index:1;
  font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.08;margin:0 auto 1.1rem;max-width:16ch;color:#fff;
}
.smm-hero p{
  position:relative;z-index:1;
  font-size:clamp(1.02rem,1.6vw,1.22rem);color:#d9d4ec;max-width:52ch;margin:0 auto 2rem;line-height:1.6;
}
.smm-wrap{max-width:var(--smm-maxw);margin:0 auto;padding:0 1.2rem;}
.smm-section{padding:3.6rem 0;}
.smm-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.8rem;flex-wrap:wrap;}
.smm-section-head h2{font-size:clamp(1.5rem,3vw,2.1rem);margin:0;color:var(--smm-ink);}
.smm-section-head .smm-eyebrow{color:var(--smm-magenta);font-weight:700;text-transform:uppercase;letter-spacing:2px;font-size:.74rem;display:block;margin-bottom:.4rem;}
.smm-section-head a.smm-more{font-weight:700;font-size:.9rem;white-space:nowrap;}

/* Grille cartes articles */
.smm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.6rem;}
.smm-card{
  background:#fff;border:1px solid var(--smm-line);border-radius:16px;overflow:hidden;
  display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease;
}
.smm-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(24,20,48,.13);}
.smm-card a.smm-card-img{display:block;aspect-ratio:16/10;background:var(--smm-pearl) center/cover no-repeat;}
.smm-card-body{padding:1.1rem 1.2rem 1.4rem;display:flex;flex-direction:column;gap:.5rem;flex:1;}
.smm-card-cat{font-size:.72rem;text-transform:uppercase;letter-spacing:1.5px;font-weight:700;color:var(--smm-magenta);}
.smm-card h3{font-size:1.16rem;line-height:1.28;margin:0;}
.smm-card h3 a{color:var(--smm-ink);text-decoration:none;}
.smm-card h3 a:hover{color:var(--smm-indigo);}
.smm-card p{color:var(--smm-muted);font-size:.92rem;margin:0;line-height:1.5;}
.smm-card .smm-meta{margin-top:auto;font-size:.8rem;color:var(--smm-muted);}

/* Tuiles catégories / artistes */
.smm-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.2rem;}
.smm-tile{
  position:relative;border-radius:16px;overflow:hidden;min-height:190px;
  display:flex;align-items:flex-end;padding:1.2rem;color:#fff;text-decoration:none;
  background:linear-gradient(135deg,var(--smm-ink-2),var(--smm-indigo));
}
.smm-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(15,12,36,.75));}
.smm-tile span{position:relative;z-index:1;font-family:var(--smm-serif);font-size:1.35rem;font-weight:700;color:#fff;}
.smm-tile:hover{color:#fff;}
.smm-tile:hover:before{background:linear-gradient(180deg,rgba(224,85,155,.15) 0%,rgba(15,12,36,.8));}

/* Bandeau sombre section */
.smm-band{background:var(--smm-ink);color:#fff;}
.smm-band h2{color:#fff;}
.smm-band .smm-card{background:var(--smm-ink-2);border-color:rgba(255,255,255,.08);}
.smm-band .smm-card h3 a{color:#fff;}
.smm-band .smm-card p{color:#c9c4de;}

/* ---------- Article single : hero ---------- */
.smm-post-hero{
  background:linear-gradient(135deg,var(--smm-ink) 0%,var(--smm-ink-2) 100%);
  color:#fff;padding:3.2rem 1.2rem 2.6rem;
}
.smm-post-hero .smm-wrap{max-width:820px;}
.smm-post-hero .smm-cat{color:var(--smm-magenta);text-transform:uppercase;letter-spacing:2px;font-weight:700;font-size:.78rem;}
.smm-post-hero h1{font-size:clamp(1.9rem,4vw,2.9rem);line-height:1.12;margin:.7rem 0 1rem;color:#fff;}
.smm-post-hero .smm-post-meta{color:#c7c1e0;font-size:.9rem;display:flex;gap:1.2rem;flex-wrap:wrap;align-items:center;}
.smm-post-hero .smm-post-meta .smm-author{font-weight:700;color:#fff;}

/* Corps article lisible */
.single .entry-content{max-width:760px;margin:2.2rem auto 0;font-size:1.075rem;line-height:1.75;color:#2c2937;padding:0 1.2rem;}
.single .entry-content h2{font-size:1.7rem;margin:2.4rem 0 .9rem;color:var(--smm-ink);}
.single .entry-content h3{font-size:1.28rem;margin:1.8rem 0 .6rem;color:var(--smm-ink-2);}
.single .entry-content a{text-decoration:underline;text-underline-offset:2px;}
.single .entry-content img{border-radius:12px;}
.single .entry-content blockquote{
  border-left:4px solid var(--smm-magenta);background:#fff;
  padding:1rem 1.3rem;border-radius:0 12px 12px 0;font-style:italic;color:var(--smm-ink-2);
}

/* ---------- Pages sur-mesure ---------- */
.smm-page-hero{
  background:linear-gradient(135deg,var(--smm-ink) 0%,var(--smm-ink-2) 100%);
  color:#fff;padding:3rem 1.2rem 2.6rem;text-align:center;
  /* full-bleed : sort du conteneur etroit de la page */
  width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;
  margin-top:-2px;
}
.smm-page-hero .smm-kicker{color:var(--smm-magenta);text-transform:uppercase;letter-spacing:2.5px;font-size:.76rem;font-weight:700;margin-bottom:.8rem;}
.smm-page-hero h1{color:#fff;font-size:clamp(1.9rem,4vw,2.9rem);margin:0 auto;max-width:20ch;line-height:1.12;}
.page .entry-content{
  max-width:780px;margin:2.4rem auto 3rem;padding:0 1.3rem;font-size:1.06rem;line-height:1.75;color:#2c2937;
}
.page .entry-content h2{font-family:var(--smm-serif);font-size:1.55rem;color:var(--smm-ink);margin:2.2rem 0 .8rem;}
.page .entry-content h3{font-size:1.2rem;color:var(--smm-ink-2);margin:1.6rem 0 .5rem;}
.page .entry-content a{text-decoration:underline;text-underline-offset:2px;}
.page .entry-content ul{padding-left:1.2rem;}
.page .entry-content li{margin:.35rem 0;}
.smm-lead{font-size:1.18rem;color:var(--smm-ink-2);line-height:1.65;font-weight:500;}

/* ---------- Carte bio auteur (pages + articles) ---------- */
.smm-author{max-width:760px;margin:2rem auto 0;padding:1.6rem;background:#fff;border:1px solid var(--smm-line);border-radius:16px;display:flex;gap:1.2rem;align-items:flex-start;}
.smm-author-av{width:64px;height:64px;border-radius:50%;flex:0 0 64px;background:linear-gradient(135deg,var(--smm-indigo),var(--smm-magenta));display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--smm-serif);font-size:1.5rem;font-weight:700;}
.smm-author-body h4{margin:0 0 .3rem;font-family:var(--smm-serif);font-size:1.2rem;color:var(--smm-ink);}
.smm-author-body p{margin:0;color:var(--smm-muted);font-size:.94rem;line-height:1.55;}

/* ---------- Footer ---------- */
.site-footer,.ast-small-footer,.footer-sml-layout-2,.ast-footer-overlay{
  background:var(--smm-ink)!important;color:#c9c4de!important;
}
.site-footer a{color:#e7e3f5!important;}
.site-footer a:hover{color:var(--smm-magenta)!important;}

/* ---------- Responsive ---------- */
@media(max-width:600px){
  .smm-hero{padding:4rem 1rem 3.4rem;}
  .smm-section{padding:2.6rem 0;}
  .single .entry-content{font-size:1.02rem;}
}
