:root{
  --bg1:#87ceeb;
  --bg2:#34b6ff;
  --bg3:#0b5f8d;
  --ink:#0c2340;
  --ink-soft:#35516d;
  --white:#ffffff;
  --panel:rgba(255,255,255,.22);
  --panel-strong:rgba(255,255,255,.92);
  --border:rgba(255,255,255,.28);
  --shadow:0 20px 55px rgba(3,27,78,.16);
  --radius:28px;
  --radius-sm:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,var(--bg1) 0%,#61c4f7 30%,var(--bg2) 55%,var(--bg3) 100%);min-height:100vh}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
iframe{width:100%;height:100%;border:0}
audio{width:100%}
main{display:block}
.site-shell{overflow:hidden}
.container{width:min(1180px,calc(100% - 32px));margin:0 auto}
.center{text-align:center}
.top-gap{margin-top:24px}
.small-muted{font-size:.92rem;color:rgba(12,35,64,.78)}
.kicker,.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.22);border:1px solid var(--border);font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#fff}
.glass-panel,.card,.message{background:var(--panel);backdrop-filter:blur(16px);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:var(--radius)}
.content-card,.form-panel,.media-card{padding:28px}
.accent-card{background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,.12))}
.site-header{position:sticky;top:0;z-index:40;padding:14px 0;background:rgba(255,255,255,.12);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.18)}
.header-bar{display:grid;grid-template-columns:auto 1fr auto auto;gap:20px;align-items:center}
.brand{display:flex;align-items:center;gap:14px;min-width:0}
.brand img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.45);box-shadow:0 12px 30px rgba(0,0,0,.12)}
.brand-text{display:flex;flex-direction:column;line-height:1.1;min-width:0}
.brand-text strong{font-size:1rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand-text small{font-size:.72rem;color:rgba(255,255,255,.82)}
.main-nav{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.main-nav a{padding:12px 14px;border-radius:999px;font-weight:700;font-size:.92rem;color:#eaf6ff;transition:.25s}
.main-nav a:hover{background:rgba(255,255,255,.16);color:#fff}
.header-tools{display:flex;gap:10px;align-items:center;justify-self:end}.nav-actions{display:flex;gap:10px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 18px;border-radius:999px;font-weight:800;letter-spacing:.02em;border:0;cursor:pointer;transition:transform .2s ease, box-shadow .2s ease, background .2s ease;box-shadow:0 10px 24px rgba(8,46,96,.14)}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:linear-gradient(135deg,#0f2f66,#0e5d9d);color:#fff}
.btn-soft{background:rgba(255,255,255,.9);color:var(--ink)}
.text-link{color:#fff;font-weight:700}
.menu-toggle{display:none;background:transparent;border:0;padding:8px;cursor:pointer}
.menu-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px 0;border-radius:999px}
.messages-wrap{padding-top:18px}
.message{padding:14px 16px;color:var(--ink);background:rgba(255,255,255,.92)}
.message.success{border-left:4px solid #0d9f55}.message.error{border-left:4px solid #d13e3e}.message.warning{border-left:4px solid #c58a00}
.hero-section{padding:56px 0 24px}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:center}
.hero-copy h1{font-size:clamp(2.5rem,7vw,5.7rem);line-height:.92;margin:18px 0 14px;color:#ffd54a;text-shadow:0 8px 28px rgba(0,0,0,.12);letter-spacing:-.04em}
.hero-lead{font-size:1.12rem;line-height:1.7;max-width:680px;color:#ecf8ff;font-weight:600}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 22px}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
.hero-stats div{padding:18px;border-radius:24px;background:rgba(255,255,255,.17);border:1px solid var(--border)}
.hero-stats strong{display:block;font-size:1.5rem;color:#fff}
.hero-stats span{display:block;margin-top:6px;color:#eef7ff;font-size:.92rem}
.hero-visual{padding:26px;position:relative;overflow:hidden}
.hero-logo{width:min(260px,72%);margin:0 auto 18px;border-radius:999px;border:8px solid rgba(255,255,255,.22);box-shadow:0 20px 60px rgba(0,0,0,.18)}
.video-wrap{aspect-ratio:16/9;border-radius:26px;overflow:hidden;background:#000;border:6px solid rgba(255,255,255,.16)}
.audio-card{padding:22px;border-radius:24px;background:rgba(255,255,255,.16)}
.section{padding:34px 0}.section-tight{padding-top:12px}.section-alt{padding-bottom:42px}
.section-head{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}.section-head h2{font-size:clamp(1.8rem,4vw,3.2rem);line-height:1.05;margin:0;color:#fff}.section-head p{max-width:760px;color:#ecf8ff;font-weight:500;line-height:1.7}
.section-head.center p{margin-inline:auto}
.feature-grid,.card-grid,.cards,.split-grid,.auth-grid,.footer-grid{display:grid;gap:20px}
.feature-grid{grid-template-columns:repeat(4,1fr)}
.feature-card{padding:22px}.feature-card h3{margin:0 0 8px;color:#fff}.feature-card p{margin:0;color:#eef7ff;line-height:1.6}
.split-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.books-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.stack-grid{display:grid;gap:18px}
.book-card,.info-card{overflow:hidden}.book-cover{display:block;aspect-ratio:4/5;background:rgba(255,255,255,.18);overflow:hidden}.book-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.book-card:hover .book-cover img{transform:scale(1.06)}
.book-body{padding:18px 18px 20px}.book-body h3,.info-card h3{margin:0 0 10px;color:#fff;font-size:1.12rem}.book-body p,.info-card p,.content-card p,.form-panel p,.story-card p,.reading-layout,.list-stack div,.meta-stack div{color:#eef7ff;line-height:1.7}
.inline-actions{display:flex;gap:10px;flex-wrap:wrap}
.price-row,.meta-row,.badge-row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:12px 0 16px;color:#fff;flex-wrap:wrap}
.badge{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.14);font-size:.76rem;font-weight:800;text-transform:uppercase;color:#fff}.badge.success{background:rgba(29,174,109,.25)}.badge.muted{background:rgba(0,0,0,.18)}
.page-hero.small{padding:52px 0 8px}.page-hero h1{margin:14px 0 10px;color:#fff;font-size:clamp(2rem,5vw,4rem)}.page-hero p{max-width:760px;margin:0 auto;color:#eef7ff;line-height:1.7}
.auth-section{padding:44px 0}.auth-grid{grid-template-columns:.95fr 1.05fr;align-items:start}.auth-copy,.auth-form-wrap{padding:30px}
.form-grid p{margin:0 0 16px}.form-grid label{display:block;margin-bottom:7px;font-weight:700;color:#fff}.form-grid input,.form-grid textarea,.form-grid select{width:100%;padding:14px 16px;border-radius:16px;border:1px solid rgba(255,255,255,.32);background:rgba(255,255,255,.92);font:inherit;color:var(--ink)}
.form-grid textarea{min-height:130px;resize:vertical}
.cards{margin-top:10px}.cards-2{grid-template-columns:repeat(2,1fr)}.cards-3{grid-template-columns:repeat(3,1fr)}.cards-4{grid-template-columns:repeat(4,1fr)}
.card{padding:22px;background:rgba(255,255,255,.88)}.card h3{margin:0 0 10px}.card p{margin:0;color:var(--ink-soft)}
.list-item,.copy-box{padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.14);margin-top:10px}
.copy-box{word-break:break-all;font-weight:700}
.list-stack,.stack-actions{display:grid;gap:12px}.bullet-list{margin:0;padding-left:18px;color:#eef7ff;line-height:1.8}.bullet-list li+li{margin-top:6px}
.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.14);border-radius:18px;overflow:hidden}.data-table th,.data-table td{padding:14px 12px;border-bottom:1px solid rgba(255,255,255,.12);text-align:left;color:#fff;font-size:.95rem}.data-table th{background:rgba(255,255,255,.12)}
.story-card{padding:24px}.story-card h2{margin:0 0 4px;color:#fff}
.reading-layout{font-size:1.02rem}.reading-layout h2{color:#fff;margin-top:10px}.reading-layout.compact p{margin-bottom:0}.legal-content p{color:#eef7ff}
.narrow-wrap{width:min(760px,calc(100% - 32px));margin:0 auto}
.footer-grid{grid-template-columns:repeat(3,1fr);padding:10px 0 18px}.site-footer{padding:26px 0 30px}.footer-card{padding:24px;background:rgba(255,255,255,.12);border-radius:24px;border:1px solid rgba(255,255,255,.15)}.footer-card h4{margin:0 0 12px;color:#fff}.footer-card p{margin:0 0 10px;color:#eef7ff;line-height:1.65}.footer-bottom{padding-top:18px;color:#ecf8ff;text-align:center}
.book-detail-grid .media-card img{border-radius:24px;width:100%;object-fit:cover}
@media (max-width:1100px){
  .header-bar{grid-template-columns:auto 1fr auto;grid-template-areas:"brand actions toggle" "nav nav nav"}
  .brand{grid-area:brand}.nav-actions{grid-area:actions}.menu-toggle{grid-area:toggle;display:inline-block;justify-self:end}.main-nav{grid-area:nav;display:none;padding-top:10px;justify-content:flex-start}.main-nav.open{display:flex}
  .hero-grid,.feature-grid,.books-grid,.course-grid,.split-grid,.auth-grid,.cards-4,.cards-3,.cards-2,.footer-grid{grid-template-columns:1fr 1fr}
  .hero-grid{grid-template-columns:1fr}
}
@media (max-width:760px){
  .container{width:min(100% - 22px,1180px)}
  .site-header{padding:10px 0}.brand-text small{display:none}.header-bar{grid-template-columns:1fr auto auto;grid-template-areas:"brand tools toggle" "nav nav nav"}.brand{grid-area:brand}.header-tools{grid-area:tools;display:flex;align-items:center;gap:8px}.nav-actions{display:none}.lang-switcher{margin-right:0}.lang-btn{padding:7px 10px;min-width:44px;font-size:.85rem}
  .main-nav{flex-direction:column;gap:8px;background:rgba(255,255,255,.1);padding:12px;border-radius:20px}
  .hero-section{padding-top:28px}.hero-copy h1{font-size:clamp(2.2rem,12vw,4rem)}.hero-lead{font-size:1rem}
  .hero-stats,.feature-grid,.books-grid,.course-grid,.split-grid,.auth-grid,.cards-4,.cards-3,.cards-2,.footer-grid{grid-template-columns:1fr}
  .content-card,.form-panel,.media-card,.auth-copy,.auth-form-wrap,.card{padding:22px}
  .btn{width:100%}.hero-actions .btn,.inline-actions .btn{width:auto;flex:1 1 180px}
  .page-hero.small{padding-top:38px}
}


.notice-card{padding:1.4rem;border-radius:22px;}
.success-outline{border:1px solid rgba(34,197,94,.35);box-shadow:0 12px 30px rgba(34,197,94,.08);}
.warning-outline{border:1px solid rgba(245,158,11,.35);box-shadow:0 12px 30px rgba(245,158,11,.08);}


.home-italic, .home-italic h1, .home-italic h2, .home-italic h3, .home-italic p, .home-italic li, .home-italic a, .home-italic span, .home-italic strong { font-style: italic; }
.audio-card h3{margin:0 0 10px;color:#fff}.audio-card p{margin:10px 0 0;color:#eef7ff;line-height:1.6}
.small-muted .text-link{color:#fff;text-decoration:underline}

.lang-switcher{display:flex;gap:6px;align-items:center;flex-wrap:nowrap}.lang-btn{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:8px 12px;font-weight:800;cursor:pointer;min-width:48px}.lang-btn.active{background:rgba(255,255,255,.96);color:var(--ink);box-shadow:0 8px 18px rgba(8,46,96,.14)}

.story-image{width:100%;height:auto;max-height:280px;object-fit:cover;border-radius:18px;margin-bottom:16px;display:block}


.reading-layout, .story-card, .content-card, .info-card, .book-body, .list-item, .copy-box{overflow-wrap:anywhere;word-break:break-word}
.story-image{width:100%;height:auto;max-height:280px;object-fit:cover;border-radius:18px;margin-bottom:16px;display:block}
@media (max-width:760px){
  .story-image{max-height:none;aspect-ratio:auto;border-radius:16px}
  .reading-layout{font-size:.98rem;line-height:1.75}
  .content-card,.story-card,.info-card,.book-body{overflow:hidden}
  .meta-row,.badge-row,.price-row{align-items:flex-start}
  .copy-box,.list-item{padding:12px 14px}
}

/* ===== NUPrésentation V8 Premium Doré ===== */
:root{
  --bg1:#061327;--bg2:#09244a;--bg3:#06101f;--gold:#f6c85f;--gold2:#fff1b8;--ink:#10233f;
  --panel:rgba(255,255,255,.10);--panel-strong:rgba(255,255,255,.94);--border:rgba(246,200,95,.28);
  --shadow:0 24px 70px rgba(0,0,0,.28);
}
body{background:radial-gradient(circle at top left,rgba(246,200,95,.20),transparent 28%),linear-gradient(135deg,var(--bg1),var(--bg2) 52%,var(--bg3));}
.site-header{background:rgba(3,14,31,.82);border-bottom:1px solid rgba(246,200,95,.22);backdrop-filter:blur(20px)}
.brand img{border:2px solid var(--gold);box-shadow:0 0 28px rgba(246,200,95,.24)}
.brand strong,.section-head h2,.page-hero h1,.content-card h2,.hero-copy h1{color:var(--gold2)}
.kicker,.eyebrow{color:var(--gold);letter-spacing:.12em;text-transform:uppercase;font-weight:900}
.glass-panel,.footer-card,.card{background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.06));border:1px solid rgba(246,200,95,.25);box-shadow:var(--shadow)}
.btn-primary{background:linear-gradient(135deg,#f6c85f,#ad7a15);color:#101828;box-shadow:0 14px 34px rgba(246,200,95,.22)}
.btn-soft{background:rgba(255,255,255,.92);color:#0a1c37;border:1px solid rgba(246,200,95,.35)}
.main-nav a:hover,.lang-btn.active{background:linear-gradient(135deg,#f6c85f,#fff1b8);color:#071427}
.gold-badge{background:linear-gradient(135deg,rgba(246,200,95,.95),rgba(255,241,184,.95));color:#061327!important}
.media-tile{padding:18px}.media-tile audio{margin-top:12px;filter:drop-shadow(0 10px 20px rgba(0,0,0,.2))}
.cover-placeholder{display:flex;align-items:center;justify-content:center;min-height:230px;border-radius:22px;background:radial-gradient(circle,rgba(246,200,95,.32),rgba(255,255,255,.08));color:var(--gold2);font-size:3rem;font-weight:900;border:1px solid rgba(246,200,95,.25)}
.whatsapp-float{position:fixed;right:18px;bottom:18px;z-index:9999;padding:14px 18px;border-radius:999px;background:#25D366;color:#062414!important;font-weight:900;text-decoration:none;box-shadow:0 18px 45px rgba(0,0,0,.28)}
.whatsapp-float:before{content:'✆ ';font-weight:900}.premium-hero{background:radial-gradient(circle at 50% 0,rgba(246,200,95,.16),transparent 42%)}
.music-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.top-gap{margin-top:16px}.center{text-align:center}
@media (max-width:760px){.whatsapp-float{left:14px;right:14px;text-align:center}.music-grid{grid-template-columns:1fr}.site-footer{padding-bottom:78px}}

/* ===== Correctif V8.1 : couvertures NUCOURS visibles côté public ===== */
.course-cover-grid{align-items:stretch}
.course-cover-card{padding:0!important;overflow:hidden;display:flex;flex-direction:column;min-height:100%;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.06))!important}
.course-cover-link{display:block;position:relative;aspect-ratio:4/5;background:rgba(255,255,255,.08);overflow:hidden;border-bottom:1px solid rgba(246,200,95,.22)}
.course-cover-img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease, filter .45s ease}
.course-cover-card:hover .course-cover-img{transform:scale(1.055);filter:brightness(1.08)}
.course-cover-placeholder{height:100%;min-height:100%;border-radius:0;font-size:3.6rem}
.course-cover-body{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}
.course-cover-body h3{color:var(--gold2);margin:0;font-size:1.15rem;line-height:1.25}
.course-cover-body p{color:#eef7ff!important;margin:0;line-height:1.55}
.course-cover-body .btn{margin-top:auto}
.course-detail-grid{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:24px;align-items:start}
.course-detail-cover-wrap{padding:18px;position:sticky;top:110px}
.course-detail-cover{width:100%;max-height:620px;object-fit:cover;border-radius:22px;box-shadow:0 20px 48px rgba(0,0,0,.25);border:1px solid rgba(246,200,95,.26)}
.course-detail-placeholder{min-height:430px}
@media (max-width:900px){.course-detail-grid{grid-template-columns:1fr}.course-detail-cover-wrap{position:relative;top:auto}.course-detail-cover{max-height:none}}
@media (max-width:760px){.course-cover-link{aspect-ratio:16/11}.course-cover-body{padding:18px}.course-detail-cover-wrap{padding:12px}.course-detail-placeholder{min-height:260px}}
