/*
Theme Name: ASCEMU Changtse
Theme URI: https://ascemu-ch.org/
Author: ASCEMU
Description: Thème institutionnel ASCEMU inspiré de l'organisation visuelle Home Changtse : culture, jeunesse et musiques urbaines.
Version: 1.0.34
Text Domain: ascemu-changtse
Requires at least: 6.2
Requires PHP: 7.4
License: GNU General Public License v2 or later
*/

:root{
  --asc-purple:#4b006e;
  --asc-purple-2:#6b168d;
  --asc-gold:#f4b400;
  --asc-ink:#101014;
  --asc-muted:#6e6a73;
  --asc-white:#ffffff;
  --asc-soft:#f7f5f8;
  --asc-line:#ebe6ee;
  --asc-shadow:0 18px 50px rgba(31,8,47,.10);
  --asc-radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--asc-ink);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.6}
img{max-width:100%;height:auto}
a{color:inherit}
.asc-container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.asc-topbar{background:#16031f;color:#fff;font-size:12px}
.asc-topbar .asc-container{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.asc-topbar a{text-decoration:none;color:#fff;opacity:.92}
.asc-topbar-left,.asc-topbar-right{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.site-header{background:#fff;position:sticky;top:0;z-index:80;border-bottom:1px solid rgba(75,0,110,.08)}
.asc-header-inner{display:grid;grid-template-columns:245px 1fr auto;align-items:center;gap:22px;min-height:82px}
.asc-brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.asc-brand img{width:64px;height:64px;object-fit:contain}
.asc-brand-copy strong{display:block;color:var(--asc-purple);font-size:26px;letter-spacing:.01em;line-height:1}
.asc-brand-copy span{display:block;font-size:11px;line-height:1.2;margin-top:5px}
.asc-nav ul{list-style:none;padding:0;margin:0;display:flex;align-items:center;justify-content:center;gap:23px}
.asc-nav a{text-decoration:none;font-size:12px;font-weight:800;text-transform:uppercase}
.asc-nav a:hover{color:var(--asc-purple)}
.asc-donate,.asc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:6px;padding:13px 20px;font-weight:900;text-decoration:none;cursor:pointer}
.asc-donate{background:var(--asc-purple);color:#fff}
.asc-btn-primary{background:var(--asc-gold);color:#15100a}
.asc-btn-outline{border:1px solid rgba(255,255,255,.72);color:#fff;background:transparent}
.asc-btn-purple{background:var(--asc-purple);color:#fff}
.asc-mobile-toggle{display:none;background:transparent;border:0;font-size:28px;color:var(--asc-purple)}
.asc-hero{min-height:575px;position:relative;display:flex;align-items:center;overflow:hidden;background:
 linear-gradient(90deg,rgba(9,5,11,.96) 0%,rgba(21,6,28,.83) 45%,rgba(45,8,59,.55) 100%),
 radial-gradient(circle at 75% 35%,rgba(244,180,0,.35),transparent 28%),
 linear-gradient(135deg,#13031d,#5a1473)}
.asc-hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to right,transparent,black)}
.asc-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.48}
.asc-hero .asc-container{position:relative;z-index:2}
.asc-hero-content{width:min(650px,100%);color:#fff;padding:70px 0}
.asc-kicker{display:inline-block;color:var(--asc-gold);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.16em;margin-bottom:12px}
.asc-hero h1{font-size:clamp(42px,6vw,78px);line-height:.94;margin:0 0 22px;letter-spacing:-.045em;text-transform:uppercase}
.asc-hero h1 em{font-style:normal;color:var(--asc-gold)}
.asc-hero p{font-size:18px;max-width:640px;color:#eee;margin:0 0 28px}
.asc-hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.asc-floating-card{position:absolute;right:4vw;bottom:36px;z-index:3;background:#fff;color:#1a1320;padding:18px 24px;border-radius:12px;box-shadow:var(--asc-shadow);display:flex;align-items:center;gap:14px;max-width:320px}
.asc-floating-icon{width:54px;height:54px;border-radius:50%;background:#f5e9fb;color:var(--asc-purple);display:grid;place-items:center;font-size:25px}
.asc-floating-card strong{display:block;font-size:15px}
.asc-section{padding:72px 0}
.asc-section-soft{background:var(--asc-soft)}
.asc-section-dark{background:#190421;color:#fff}
.asc-section-title{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}
.asc-section-title h2{font-size:clamp(30px,4vw,50px);line-height:1.05;margin:5px 0 0;letter-spacing:-.025em}
.asc-section-title p{max-width:520px;color:var(--asc-muted);margin:0}
.asc-about-grid{display:grid;grid-template-columns:1.1fr 1.9fr;gap:44px;align-items:center}
.asc-about-copy h2{font-size:40px;line-height:1.08;margin:8px 0 18px}
.asc-about-copy p{color:var(--asc-muted)}
.asc-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-left:1px solid var(--asc-line)}
.asc-pillar{text-align:center;padding:12px 24px;border-right:1px solid var(--asc-line)}
.asc-pillar-icon{width:70px;height:70px;border:2px solid #8f4daf;border-radius:50%;display:grid;place-items:center;margin:0 auto 15px;color:var(--asc-purple);font-size:30px}
.asc-pillar h3{font-size:16px;margin:0 0 7px}
.asc-pillar p{font-size:13px;color:var(--asc-muted);margin:0}
.asc-stats{background:linear-gradient(90deg,#290239,#5c1477);color:#fff}
.asc-stats-grid{display:grid;grid-template-columns:repeat(5,1fr)}
.asc-stat{padding:28px 22px;text-align:center;border-right:1px solid rgba(255,255,255,.16)}
.asc-stat:last-child{border-right:0}
.asc-stat strong{display:block;font-size:38px;color:var(--asc-gold);line-height:1}
.asc-stat span{font-size:12px;font-weight:800}
.asc-project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.asc-card{background:#fff;border:1px solid var(--asc-line);border-radius:12px;overflow:hidden;transition:.25s ease;box-shadow:0 6px 20px rgba(24,8,31,.04)}
.asc-card:hover{transform:translateY(-5px);box-shadow:var(--asc-shadow)}
.asc-card-media{height:210px;background:linear-gradient(135deg,#1e0728,#682083);display:grid;place-items:center;color:#fff;position:relative;overflow:hidden}
.asc-card-media img{width:100%;height:100%;object-fit:cover}
.asc-card-media .asc-project-placeholder{padding:20px;text-align:center;font-weight:900;text-transform:uppercase;font-size:22px}
.asc-card-body{padding:20px}
.asc-card-body h3{margin:0 0 8px;font-size:18px;color:var(--asc-purple)}
.asc-card-body p{font-size:13px;color:var(--asc-muted);margin:0 0 15px}
.asc-more{font-size:12px;font-weight:900;text-transform:uppercase;color:var(--asc-purple);text-decoration:none}
.asc-events-layout{display:grid;grid-template-columns:1.45fr .75fr;gap:34px}
.asc-event-list{display:grid;gap:10px}
.asc-event{display:grid;grid-template-columns:82px 1fr auto;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid var(--asc-line)}
.asc-date{border:1px solid #b98bcc;border-radius:8px;text-align:center;padding:8px;color:var(--asc-purple)}
.asc-date strong{display:block;font-size:28px;line-height:1}
.asc-date span{font-size:11px;font-weight:900}
.asc-event h3{margin:0 0 6px;font-size:17px}
.asc-event p{margin:0;color:var(--asc-muted);font-size:13px}
.asc-event-link{font-size:12px;font-weight:900;text-decoration:none;color:var(--asc-purple)}
.asc-event-aside{background:linear-gradient(145deg,#f4b400,#ffd96a);padding:28px;border-radius:16px;align-self:start}
.asc-event-aside h3{font-size:28px;line-height:1.05;margin:0 0 12px}
.asc-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.asc-news .asc-card-media{height:190px;background:linear-gradient(135deg,#50116a,#f4b400)}
.asc-news time{font-size:11px;color:var(--asc-purple);font-weight:800}
.asc-cta{background:linear-gradient(90deg,#4b006e,#721b92);color:#fff;padding:34px 0}
.asc-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.asc-cta h2{font-size:30px;margin:0;max-width:650px}
.asc-cta-actions{display:flex;gap:12px;flex-wrap:wrap}
.site-footer{background:#0c0810;color:#fff}
.asc-footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.05fr 1.05fr;gap:34px;padding:48px 0}
.asc-footer-brand{display:flex;gap:12px;align-items:center;margin-bottom:14px}
.asc-footer-brand img{width:55px;height:55px;object-fit:contain;background:#fff;border-radius:50%}
.asc-footer-brand strong{font-size:22px}
.site-footer h4{font-size:13px;text-transform:uppercase;margin:0 0 14px;color:#fff}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{margin:7px 0}
.site-footer a{color:#ddd;text-decoration:none;font-size:12px}
.site-footer p{font-size:12px;color:#bbb}
.asc-socials{display:flex;gap:8px;flex-wrap:wrap}
.asc-socials a{width:34px;height:34px;border-radius:50%;background:#241a29;display:grid;place-items:center;color:#fff;font-weight:900}
.asc-social-buttons{display:grid;gap:8px;margin-top:12px}
.asc-social-buttons a{background:#11995e;border-radius:5px;padding:8px 10px;font-size:11px;font-weight:800;text-align:center}
.asc-social-buttons a.telegram{background:#148dcc}
.asc-footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:16px 0;background:#4b006e}
.asc-footer-bottom .asc-container{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:11px}
.entry-wrap{padding:60px 0;min-height:55vh}
.entry-wrap h1{font-size:44px;color:var(--asc-purple)}
.entry-content{max-width:850px}
.entry-content a{color:var(--asc-purple)}
.woocommerce .button,.woocommerce button.button,.woocommerce input.button{background:var(--asc-purple)!important;color:#fff!important;border-radius:6px!important}
.asc-contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px}
.asc-contact-card{padding:28px;background:var(--asc-soft);border-radius:16px}
.asc-form{display:grid;gap:14px}
.asc-form input,.asc-form textarea{width:100%;padding:14px;border:1px solid #ddd;border-radius:8px;font:inherit}
.asc-form button{width:max-content}
@media(max-width:1050px){
 .asc-header-inner{grid-template-columns:220px auto auto}
 .asc-nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;border-top:1px solid var(--asc-line);padding:20px}
 .asc-nav.is-open{display:block}
 .asc-nav ul{display:grid;gap:8px}
 .asc-nav a{display:block;padding:9px}
 .asc-mobile-toggle{display:block;justify-self:end}
 .asc-project-grid{grid-template-columns:repeat(2,1fr)}
 .asc-about-grid{grid-template-columns:1fr}
 .asc-footer-main{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
 .asc-container{width:min(100% - 26px,1180px)}
 .asc-topbar-right{display:none}
 .asc-topbar-left{gap:10px;font-size:10px}
 .asc-header-inner{grid-template-columns:1fr auto;min-height:72px}
 .asc-brand img{width:50px;height:50px}
 .asc-brand-copy strong{font-size:22px}
 .asc-donate{display:none}
 .asc-nav{top:72px}
 .asc-hero{min-height:540px}
 .asc-hero-content{padding:58px 0}
 .asc-hero h1{font-size:44px}
 .asc-hero p{font-size:15px}
 .asc-floating-card{position:relative;right:auto;bottom:auto;margin:0 13px 20px}
 .asc-about-copy h2{font-size:34px}
 .asc-pillars{grid-template-columns:1fr 1fr;border-left:0}
 .asc-pillar{border:1px solid var(--asc-line);padding:18px}
 .asc-stats-grid{grid-template-columns:1fr 1fr}
 .asc-stat{border-bottom:1px solid rgba(255,255,255,.16)}
 .asc-project-grid,.asc-news-grid{grid-template-columns:1fr}
 .asc-events-layout{grid-template-columns:1fr}
 .asc-event{grid-template-columns:70px 1fr}
 .asc-event-link{grid-column:2}
 .asc-section-title{align-items:flex-start;flex-direction:column}
 .asc-cta-inner{align-items:flex-start;flex-direction:column}
 .asc-footer-main{grid-template-columns:1fr 1fr}
 .asc-contact-grid{grid-template-columns:1fr}
}
@media(max-width:480px){
 .asc-pillars,.asc-stats-grid,.asc-footer-main{grid-template-columns:1fr}
 .asc-hero h1{font-size:38px}
 .asc-section{padding:52px 0}
}

.asc-nav li{position:relative}
.asc-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:190px;background:#fff;padding:10px 0;margin:0;border-top:3px solid var(--asc-gold);box-shadow:0 16px 35px rgba(31,8,47,.14);z-index:100}
.asc-nav .sub-menu li{display:block;width:100%}
.asc-nav .sub-menu a{display:block;padding:10px 16px;white-space:nowrap;text-transform:none;font-size:13px}
.asc-nav .menu-item-has-children:hover>.sub-menu,.asc-nav .menu-item-has-children:focus-within>.sub-menu{display:block}
.asc-nav .menu-item-has-children>a::after{content:" ▾";font-size:10px;color:var(--asc-purple)}

@media(max-width:1050px){
 .asc-nav .sub-menu{display:block;position:static;box-shadow:none;border-top:0;padding:0 0 0 16px;min-width:0}
 .asc-nav .sub-menu a{padding:7px 9px;font-size:12px}
}


/* === PAGE À PROPOS ASCEMU === */
.asc-about-hero{position:relative;min-height:420px;display:flex;align-items:center;color:#fff;overflow:hidden;background:
linear-gradient(90deg,rgba(18,4,24,.96),rgba(75,0,110,.76)),
url('assets/images/hero-ascemu.jpg') center/cover no-repeat}
.asc-about-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 30%,rgba(244,180,0,.24),transparent 28%)}
.asc-about-hero .asc-container{position:relative;z-index:2}
.asc-about-hero-copy{max-width:760px;padding:70px 0}
.asc-about-hero h1{font-size:clamp(44px,6vw,76px);line-height:.96;margin:0 0 18px;letter-spacing:-.04em}
.asc-about-hero h1 span{color:var(--asc-gold)}
.asc-about-hero p{font-size:18px;max-width:720px;color:#f3eef5;margin:0}
.asc-about-badge{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);padding:9px 13px;border-radius:999px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-bottom:18px}
.asc-about-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:54px;align-items:center}
.asc-about-logo-card{background:linear-gradient(145deg,#fff,#faf7fb);border:1px solid var(--asc-line);border-radius:24px;min-height:430px;display:grid;place-items:center;padding:42px;box-shadow:var(--asc-shadow);position:relative;overflow:hidden}
.asc-about-logo-card::after{content:"ASCEMU";position:absolute;right:-20px;bottom:-42px;font-size:110px;font-weight:900;color:rgba(75,0,110,.035);letter-spacing:-.08em}
.asc-about-logo-card img{width:min(300px,85%);position:relative;z-index:1}
.asc-about-intro-copy h2{font-size:clamp(34px,4vw,52px);line-height:1.05;margin:8px 0 20px}
.asc-about-intro-copy p{color:var(--asc-muted);font-size:16px}
.asc-legal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:28px}
.asc-legal-item{background:#fff;border:1px solid var(--asc-line);border-radius:14px;padding:18px}
.asc-legal-item span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--asc-purple);font-weight:900;margin-bottom:5px}
.asc-legal-item strong{font-size:14px;line-height:1.35}
.asc-about-vision{background:linear-gradient(135deg,#24052f,#5a1473);color:#fff;border-radius:26px;padding:46px;display:grid;grid-template-columns:1fr .9fr;gap:45px;align-items:center;box-shadow:var(--asc-shadow)}
.asc-about-vision h2{font-size:40px;line-height:1.05;margin:8px 0 16px}
.asc-about-vision p{color:#e9dff0}
.asc-vision-quote{border-left:4px solid var(--asc-gold);padding:10px 0 10px 24px;font-size:24px;line-height:1.35;font-weight:800}
.asc-mission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.asc-mission-card{padding:26px;border-radius:18px;background:#fff;border:1px solid var(--asc-line);box-shadow:0 8px 28px rgba(24,8,31,.05)}
.asc-mission-card .num{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f3e8f7;color:var(--asc-purple);font-weight:900;margin-bottom:16px}
.asc-mission-card h3{margin:0 0 9px;font-size:19px;color:var(--asc-purple)}
.asc-mission-card p{margin:0;color:var(--asc-muted);font-size:14px}
.asc-values-band{background:var(--asc-soft)}
.asc-values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.asc-value{background:#fff;border:1px solid var(--asc-line);border-radius:16px;padding:24px;text-align:center}
.asc-value-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;background:var(--asc-purple);color:#fff;font-size:27px}
.asc-value h3{margin:0 0 7px;font-size:18px}
.asc-value p{font-size:13px;color:var(--asc-muted);margin:0}
.asc-history{display:grid;grid-template-columns:1fr 1fr;gap:38px}
.asc-timeline{position:relative;padding-left:30px}
.asc-timeline::before{content:"";position:absolute;left:9px;top:5px;bottom:5px;width:2px;background:linear-gradient(var(--asc-gold),var(--asc-purple))}
.asc-timeline-item{position:relative;padding:0 0 28px 20px}
.asc-timeline-item::before{content:"";position:absolute;left:-28px;top:5px;width:14px;height:14px;border-radius:50%;background:var(--asc-gold);box-shadow:0 0 0 5px #fff}
.asc-timeline-item strong{display:block;color:var(--asc-purple);font-size:18px}
.asc-timeline-item span{font-size:13px;color:var(--asc-muted)}
.asc-office-card{background:#14031d;color:#fff;border-radius:22px;padding:30px}
.asc-office-card h3{font-size:28px;margin:0 0 20px}
.asc-office-list{display:grid;gap:10px}
.asc-office-row{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.asc-office-row:last-child{border-bottom:0}
.asc-office-row span{color:#cdbfd2;font-size:13px}
.asc-office-row strong{text-align:right;font-size:13px}
.asc-about-cta{background:linear-gradient(90deg,var(--asc-purple),#7a2297);color:#fff;border-radius:24px;padding:38px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.asc-about-cta h2{margin:0;font-size:32px}
.asc-about-cta p{margin:7px 0 0;color:#e9dff0}
@media(max-width:900px){
 .asc-about-intro,.asc-about-vision,.asc-history{grid-template-columns:1fr}
 .asc-legal-grid,.asc-values-grid{grid-template-columns:1fr 1fr}
 .asc-mission-grid{grid-template-columns:1fr 1fr}
 .asc-about-cta{align-items:flex-start;flex-direction:column}
}
@media(max-width:600px){
 .asc-about-hero{min-height:360px}
 .asc-about-hero-copy{padding:55px 0}
 .asc-legal-grid,.asc-values-grid,.asc-mission-grid{grid-template-columns:1fr}
 .asc-about-logo-card{min-height:300px}
 .asc-about-vision{padding:28px}
 .asc-vision-quote{font-size:20px}
}

/* === À PROPOS V1.0.4 : inspiration du projet Remix fourni === */
.asc-about-v2{--ink:#170b1c;--violet:#4b006e;--violet2:#72158f;--gold:#f2b600;--paper:#fff;--soft:#f7f2f8}
.asc-about-v2 .asc-about-hero{min-height:500px;background:
 linear-gradient(90deg,rgba(23,11,28,.97) 0%,rgba(54,8,68,.91) 54%,rgba(75,0,110,.72) 100%),
 url('assets/images/hero-ascemu.jpg') center/cover no-repeat}
.asc-about-v2 .asc-about-hero-copy{max-width:900px;padding:86px 0}
.asc-about-v2 .asc-about-hero h1{max-width:900px;font-size:clamp(46px,6vw,78px)}
.asc-about-v2 .asc-about-hero p{max-width:820px;font-size:17px;line-height:1.75}
.asc-about-v2 .asc-about-badge{background:rgba(242,182,0,.12);border-color:rgba(242,182,0,.35);color:#ffd85a}
.asc-about-v2 .asc-identity-layout{display:grid;grid-template-columns:380px 1fr;gap:28px;align-items:stretch}
.asc-about-v2 .asc-id-card{background:linear-gradient(155deg,#1a0d20,#2a1033);color:#fff;border-radius:24px;padding:28px;box-shadow:0 20px 55px rgba(35,5,45,.16)}
.asc-about-v2 .asc-id-logo{height:150px;background:#fff;border-radius:18px;display:grid;place-items:center;padding:16px;margin-bottom:24px}
.asc-about-v2 .asc-id-logo img{max-height:120px;max-width:100%;object-fit:contain}
.asc-about-v2 .asc-id-kicker{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#ffc928;font-weight:900}
.asc-about-v2 .asc-id-card h2{font-size:27px;margin:7px 0 10px}
.asc-about-v2 .asc-id-card>p{color:#cfc3d3;font-size:13px;line-height:1.65}
.asc-about-v2 .asc-id-facts{display:grid;gap:10px;margin-top:22px}
.asc-about-v2 .asc-id-fact{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);padding:13px 14px;border-radius:12px}
.asc-about-v2 .asc-id-fact span{display:block;color:#a99daf;font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;margin-bottom:3px}
.asc-about-v2 .asc-id-fact strong{font-size:12px;line-height:1.45}
.asc-about-v2 .asc-profile-card{background:#fff;border:1px solid #eadfeb;border-radius:24px;padding:34px;box-shadow:0 15px 45px rgba(35,5,45,.07)}
.asc-about-v2 .asc-profile-card h2{font-size:38px;line-height:1.08;margin:7px 0 17px}
.asc-about-v2 .asc-profile-card p{color:#675b6b;line-height:1.75;font-size:14px}
.asc-about-v2 .asc-vm-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}
.asc-about-v2 .asc-vm-card{background:#faf7fb;border:1px solid #eadfeb;border-radius:16px;padding:20px}
.asc-about-v2 .asc-vm-card h3{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#4b006e;margin:0 0 8px}
.asc-about-v2 .asc-vm-card p{font-size:12.5px;margin:0}
.asc-about-v2 .asc-strategy{background:#160b1b;color:#fff}
.asc-about-v2 .asc-strategy .asc-section-title p{color:#bfb3c4}
.asc-about-v2 .asc-strategy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.asc-about-v2 .asc-strategy-card{display:grid;grid-template-columns:52px 1fr;gap:16px;padding:23px;border-radius:17px;background:#211128;border:1px solid rgba(255,255,255,.08)}
.asc-about-v2 .asc-strategy-num{width:52px;height:52px;border-radius:14px;background:rgba(242,182,0,.12);color:#ffc928;display:grid;place-items:center;font-weight:900}
.asc-about-v2 .asc-strategy-card h3{margin:1px 0 7px;font-size:17px}
.asc-about-v2 .asc-strategy-card p{margin:0;color:#bfb3c4;font-size:12.5px;line-height:1.65}
.asc-about-v2 .asc-values-grid{grid-template-columns:repeat(3,1fr)}
.asc-about-v2 .asc-value{text-align:left;padding:25px}
.asc-about-v2 .asc-value h3{color:#4b006e}
.asc-about-v2 .asc-value-mark{display:inline-block;font-size:10px;color:#b67800;font-weight:900;letter-spacing:.1em;margin-bottom:10px}
.asc-about-v2 .asc-team-panel{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:start}
.asc-about-v2 .asc-timeline-box{background:#faf7fb;border:1px solid #eadfeb;border-radius:22px;padding:28px}
.asc-about-v2 .asc-office-card{box-shadow:0 18px 45px rgba(25,5,31,.15)}
@media(max-width:900px){
 .asc-about-v2 .asc-identity-layout,.asc-about-v2 .asc-team-panel{grid-template-columns:1fr}
 .asc-about-v2 .asc-strategy-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
 .asc-about-v2 .asc-vm-grid,.asc-about-v2 .asc-values-grid{grid-template-columns:1fr}
 .asc-about-v2 .asc-profile-card{padding:24px}
}

.asc-president-wrap{display:grid;grid-template-columns:.82fr 1.18fr;gap:34px;align-items:stretch}
.asc-president-card{border-radius:24px;overflow:hidden;background:linear-gradient(145deg,#1c0924,#4b006e);color:#fff;min-height:410px;position:relative;box-shadow:0 20px 50px rgba(35,5,45,.16)}
.asc-president-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 15%,rgba(244,180,0,.2),transparent 30%),linear-gradient(180deg,transparent,rgba(0,0,0,.28))}
.asc-president-person{position:absolute;left:28px;right:28px;bottom:28px;z-index:2}
.asc-president-person span{display:block;color:#f5cb49;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.13em;margin-bottom:6px}
.asc-president-person strong{display:block;font-size:28px;line-height:1.05}
.asc-president-person small{display:block;margin-top:6px;color:#d8c9de}
.asc-president-message{background:#fff;border:1px solid var(--asc-line);border-radius:24px;padding:38px;box-shadow:0 16px 42px rgba(35,5,45,.07)}
.asc-president-message .quote{font-size:56px;line-height:.7;color:var(--asc-gold);font-family:Georgia,serif;margin-bottom:14px}
.asc-president-message h2{font-size:38px;line-height:1.06;margin:4px 0 18px;color:var(--asc-purple)}
.asc-president-message p{color:#665b69;font-size:15px;line-height:1.8}
.asc-president-signature{margin-top:24px;padding-top:20px;border-top:1px solid var(--asc-line);display:flex;justify-content:space-between;gap:20px;align-items:end}
.asc-president-signature strong{color:var(--asc-purple)}
.asc-president-signature span{font-size:12px;color:var(--asc-muted)}
@media(max-width:850px){.asc-president-wrap{grid-template-columns:1fr}.asc-president-card{min-height:300px}}

/* V1.0.9 Project logo cards */
.asc-project-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.asc-project-logo-card{background:#fff;border:1px solid #eadfec;border-radius:18px;padding:16px;display:flex;flex-direction:column;min-width:0}
.asc-project-logo-box{height:250px;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:18px}
.asc-project-logo-box img{width:100%;height:100%;object-fit:contain;display:block}
.asc-project-logo-card h3{font-size:21px;line-height:1.15;color:var(--asc-purple);margin:0 0 10px}
.asc-project-logo-card p{font-size:14px;line-height:1.65;color:#665b69;margin:0 0 18px;flex:1}
.asc-project-logo-card .asc-btn{align-self:flex-start}
@media(max-width:1050px){.asc-project-logo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.asc-project-logo-grid{grid-template-columns:1fr}.asc-project-logo-box{height:230px}}

.asc-project-logo-card .asc-btn-outline{
  border:1px solid var(--asc-purple);
  color:var(--asc-purple);
  background:#fff;
}
.asc-project-logo-card .asc-btn-outline:hover{
  background:var(--asc-purple);
  color:#fff;
}

.asc-shop-filter-shell{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px;margin:0 0 34px;background:#0d0710;border:1px solid #4b0a63;border-radius:22px}
.asc-shop-filter-tabs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.asc-shop-filter-tab{min-height:48px;display:inline-flex;align-items:center;gap:10px;padding:0 16px;border:1px solid #24132b;border-radius:14px;background:#110b14;color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:900;text-transform:uppercase;white-space:nowrap;transition:.2s ease}
.asc-shop-filter-tab:hover{border-color:#6b168d;transform:translateY(-1px)}
.asc-shop-filter-tab.is-active{background:linear-gradient(180deg,#f7c642,#f2b429);color:#120b12!important;border-color:#f7c642;box-shadow:0 8px 20px rgba(244,180,0,.18)}
.asc-shop-tab-icon{font-size:15px;line-height:1}
.asc-shop-tab-count{min-width:24px;height:24px;padding:0 7px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#31003e;color:#fff;font-size:10px;font-weight:900}
.asc-shop-filter-tab.is-active .asc-shop-tab-count{background:rgba(20,11,18,.14);color:#120b12}
.asc-shop-search{width:min(320px,100%);min-height:48px;display:flex;align-items:center;gap:10px;padding:0 15px;border:1px solid #4b0a63;border-radius:14px;background:#0e0811;flex:0 0 auto}
.asc-shop-search-icon{color:#c9b7d0;font-size:18px}
.asc-shop-search input[type=search]{flex:1;width:100%;border:0!important;outline:0!important;background:transparent!important;color:#fff!important;font-size:13px;padding:0!important;box-shadow:none!important}
.asc-shop-search input[type=search]::placeholder{color:#a99ab0;opacity:1}
@media(max-width:980px){.asc-shop-filter-shell{flex-direction:column;align-items:stretch}.asc-shop-filter-tabs{width:100%}.asc-shop-filter-tab{flex:1 1 210px;justify-content:center}.asc-shop-search{width:100%;max-width:none}}
@media(max-width:620px){.asc-shop-filter-shell{border-radius:16px;padding:10px;gap:10px}.asc-shop-filter-tabs{display:grid;grid-template-columns:1fr}.asc-shop-filter-tab{width:100%;justify-content:flex-start}.asc-shop-tab-count{margin-left:auto}}

/* V1.0.13 — WooCommerce shop template integration */
.asc-shop-page-wrap{
  padding:54px 0 70px;
}
.asc-shop-page-wrap .woocommerce-products-header{
  margin-bottom:26px;
}
.asc-shop-page-wrap .woocommerce-products-header__title{
  color:var(--asc-purple);
  font-size:clamp(34px,4vw,54px);
  line-height:1.05;
  margin:0 0 10px;
}
.asc-shop-toolbar-row{
  width:100%;
  clear:both;
}
.asc-shop-filter-shell{
  box-sizing:border-box;
}
.asc-shop-page-wrap .woocommerce-result-count,
.asc-shop-page-wrap .woocommerce-ordering{
  margin-top:0;
  margin-bottom:24px;
}

/* === V1.0.15 — Boutique : 4 onglets sur une seule ligne + recherche icône === */
.asc-shop-filter-shell{
  flex-wrap:nowrap !important;
  align-items:center;
  justify-content:space-between;
  overflow:visible;
}
.asc-shop-filter-tabs{
  flex:1 1 auto;
  display:flex !important;
  align-items:center;
  gap:10px;
  flex-wrap:nowrap !important;
  min-width:0;
  overflow-x:auto;
  scrollbar-width:none;
}
.asc-shop-filter-tabs::-webkit-scrollbar{display:none}
.asc-shop-filter-tab{
  flex:0 0 auto !important;
  white-space:nowrap;
}
.asc-shop-search-wrap{
  position:relative;
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
.asc-shop-search-toggle{
  width:48px;
  height:48px;
  border-radius:14px;
  border:1px solid #4b0a63;
  background:#0e0811;
  color:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  display:grid;
  place-items:center;
  transition:.2s ease;
}
.asc-shop-search-toggle:hover,
.asc-shop-search-toggle[aria-expanded="true"]{
  background:var(--asc-purple);
  border-color:var(--asc-purple);
}
.asc-shop-search{
  position:absolute;
  right:58px;
  top:50%;
  transform:translateY(-50%) scaleX(.88);
  transform-origin:right center;
  width:0;
  min-height:48px;
  padding:0;
  opacity:0;
  overflow:hidden;
  pointer-events:none;
  transition:width .25s ease,opacity .2s ease,transform .25s ease,padding .25s ease;
  z-index:25;
  background:#0e0811;
  border:1px solid transparent;
  border-radius:14px;
}
.asc-shop-search.is-open{
  width:300px;
  padding:0 15px;
  opacity:1;
  transform:translateY(-50%) scaleX(1);
  pointer-events:auto;
  border-color:#4b0a63;
}
.asc-shop-search input[type=search]{
  width:100%;
  min-width:260px;
}
@media(max-width:980px){
  .asc-shop-filter-shell{
    flex-direction:row !important;
    align-items:center !important;
  }
  .asc-shop-filter-tabs{
    width:auto !important;
    flex-wrap:nowrap !important;
  }
  .asc-shop-filter-tab{
    flex:0 0 auto !important;
    justify-content:flex-start !important;
  }
  .asc-shop-search-wrap{
    flex:0 0 auto;
  }
  .asc-shop-search.is-open{
    width:min(280px,70vw);
  }
}
@media(max-width:620px){
  .asc-shop-filter-shell{
    padding:10px;
  }
  .asc-shop-filter-tabs{
    display:flex !important;
    grid-template-columns:none !important;
    flex-wrap:nowrap !important;
    overflow-x:auto;
  }
  .asc-shop-filter-tab{
    width:auto !important;
    min-height:44px;
    padding:0 13px;
    font-size:11px;
  }
  .asc-shop-search-toggle{
    width:44px;
    height:44px;
    border-radius:12px;
  }
  .asc-shop-search{
    position:fixed;
    left:14px;
    right:14px;
    top:90px;
    transform:none;
    width:auto;
    display:none;
    z-index:999;
    box-shadow:0 18px 50px rgba(0,0,0,.35);
  }
  .asc-shop-search.is-open{
    display:flex;
    width:auto;
    transform:none;
    padding:0 15px;
  }
  .asc-shop-search input[type=search]{
    min-width:0;
  }
}

/* === V1.0.16 — Menu actif permanent === */
@media(min-width:1051px){
  .asc-nav > ul{
    align-items:stretch;
  }
  .asc-nav > ul > li{
    display:flex;
    align-items:stretch;
  }
  .asc-nav > ul > li > a{
    min-height:82px;
    padding:0 14px;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:background .2s ease,color .2s ease;
  }

  /* WordPress menu classes + fallback menu classes */
  .asc-nav > ul > li.current-menu-item > a,
  .asc-nav > ul > li.current-menu-parent > a,
  .asc-nav > ul > li.current-menu-ancestor > a,
  .asc-nav > ul > li.current_page_item > a,
  .asc-nav > ul > li.current_page_parent > a,
  .asc-nav > ul > li.asc-current > a{
    background:var(--asc-gold);
    color:#160b18 !important;
  }

  .asc-nav > ul > li.current-menu-item > a:hover,
  .asc-nav > ul > li.current-menu-parent > a:hover,
  .asc-nav > ul > li.current-menu-ancestor > a:hover,
  .asc-nav > ul > li.current_page_item > a:hover,
  .asc-nav > ul > li.current_page_parent > a:hover,
  .asc-nav > ul > li.asc-current > a:hover{
    color:#160b18 !important;
  }
}

/* Active sub-link */
.asc-nav .sub-menu .current-menu-item > a,
.asc-nav .sub-menu .current_page_item > a,
.asc-nav .sub-menu .asc-current-child > a{
  background:#f8edfb;
  color:var(--asc-purple) !important;
  font-weight:900;
  border-left:3px solid var(--asc-gold);
}

/* Mobile active state */
@media(max-width:1050px){
  .asc-nav > ul > li.current-menu-item > a,
  .asc-nav > ul > li.current-menu-parent > a,
  .asc-nav > ul > li.current-menu-ancestor > a,
  .asc-nav > ul > li.current_page_item > a,
  .asc-nav > ul > li.current_page_parent > a,
  .asc-nav > ul > li.asc-current > a{
    background:var(--asc-gold);
    color:#160b18 !important;
    border-radius:8px;
  }
}

/* === V1.0.18 — BLOG / ACTUALITÉS STYLE MAGAZINE === */
.asc-blog-hero{
  background:linear-gradient(90deg,#16031f,#4b006e);
  color:#fff;
  padding:56px 0;
}
.asc-blog-hero h1{
  font-size:clamp(40px,5vw,66px);
  line-height:1;
  margin:0 0 12px;
}
.asc-blog-hero p{
  max-width:700px;
  color:#e7ddea;
  margin:0;
}
.asc-blog-featured{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  background:#fff;
  border:1px solid var(--asc-line);
  border-radius:20px;
  overflow:hidden;
  box-shadow:var(--asc-shadow);
  margin-top:-30px;
  position:relative;
  z-index:3;
}
.asc-blog-main{
  padding:22px;
  border-right:1px solid var(--asc-line);
}
.asc-blog-main-media{
  display:block;
  height:360px;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(135deg,#2a0a35,#7a2297);
}
.asc-blog-main-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.asc-blog-meta{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:18px 0 8px;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  color:#998ca0;
}
.asc-blog-meta .cat{
  color:var(--asc-purple);
}
.asc-blog-main h2{
  margin:0 0 12px;
  font-size:32px;
  line-height:1.12;
  color:#160b18;
}
.asc-blog-main h2 a{
  text-decoration:none;
}
.asc-blog-main p{
  color:var(--asc-muted);
  margin:0 0 12px;
}
.asc-blog-side{
  display:grid;
  grid-template-rows:repeat(3,1fr);
}
.asc-blog-side-item{
  display:grid;
  grid-template-columns:125px 1fr;
  gap:16px;
  padding:22px;
  border-bottom:1px solid var(--asc-line);
  min-height:150px;
}
.asc-blog-side-item:last-child{
  border-bottom:0;
}
.asc-blog-side-thumb{
  height:100%;
  min-height:105px;
  border-radius:12px;
  overflow:hidden;
  background:linear-gradient(135deg,#3c0b4d,#f4b400);
}
.asc-blog-side-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.asc-blog-side-item h3{
  margin:5px 0 0;
  font-size:18px;
  line-height:1.25;
}
.asc-blog-side-item h3 a{
  text-decoration:none;
}
.asc-blog-grid-title{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin:55px 0 25px;
}
.asc-blog-grid-title h2{
  margin:0;
  font-size:36px;
  color:var(--asc-purple);
}
.asc-blog-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.asc-blog-card{
  background:#fff;
  border:1px solid var(--asc-line);
  border-radius:16px;
  overflow:hidden;
  transition:.2s ease;
}
.asc-blog-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--asc-shadow);
}
.asc-blog-card-media{
  display:block;
  height:210px;
  overflow:hidden;
  background:linear-gradient(135deg,#350b44,#f4b400);
}
.asc-blog-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.asc-blog-card-body{
  padding:20px;
}
.asc-blog-card h3{
  margin:7px 0 10px;
  font-size:20px;
  line-height:1.25;
}
.asc-blog-card h3 a{
  text-decoration:none;
}
.asc-blog-card p{
  margin:0;
  color:var(--asc-muted);
  font-size:13px;
}
.asc-blog-pagination{
  margin-top:35px;
}
@media(max-width:950px){
  .asc-blog-featured{
    grid-template-columns:1fr;
  }
  .asc-blog-main{
    border-right:0;
    border-bottom:1px solid var(--asc-line);
  }
  .asc-blog-side{
    grid-template-rows:none;
  }
  .asc-blog-grid{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:620px){
  .asc-blog-main-media{
    height:240px;
  }
  .asc-blog-main h2{
    font-size:25px;
  }
  .asc-blog-side-item{
    grid-template-columns:95px 1fr;
    padding:16px;
  }
  .asc-blog-side-thumb{
    min-height:90px;
  }
  .asc-blog-side-item h3{
    font-size:15px;
  }
  .asc-blog-grid{
    grid-template-columns:1fr;
  }
}

/* === V1.0.21 — Magazine Actualités / Événements / Médias === */
.asc-magazine-hero{
  background:linear-gradient(90deg,#16031f,#4b006e);
  color:#fff;
  padding:56px 0;
}
.asc-magazine-hero h1{
  font-size:clamp(40px,5vw,66px);
  line-height:1;
  margin:0 0 12px;
}
.asc-magazine-hero p{
  max-width:720px;
  color:#e7ddea;
  margin:0;
}
.asc-magazine-featured{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  background:#fff;
  border:1px solid var(--asc-line);
  border-radius:20px;
  overflow:hidden;
  box-shadow:var(--asc-shadow);
  margin-top:-30px;
  position:relative;
  z-index:3;
}
.asc-magazine-main{
  padding:22px;
  border-right:1px solid var(--asc-line);
}
.asc-magazine-main-media{
  display:block;
  height:360px;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(135deg,#2a0a35,#7a2297);
}
.asc-magazine-main-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.asc-magazine-meta{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:18px 0 8px;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  color:#998ca0;
}
.asc-magazine-meta .accent{
  color:var(--asc-purple);
}
.asc-magazine-main h2{
  margin:0 0 12px;
  font-size:32px;
  line-height:1.12;
}
.asc-magazine-main h2 a,
.asc-magazine-side-item h3 a,
.asc-magazine-card h3 a{
  text-decoration:none;
}
.asc-magazine-main p{
  color:var(--asc-muted);
  margin:0 0 12px;
}
.asc-magazine-side{
  display:grid;
  grid-template-rows:repeat(3,1fr);
}
.asc-magazine-side-item{
  display:grid;
  grid-template-columns:125px 1fr;
  gap:16px;
  padding:22px;
  border-bottom:1px solid var(--asc-line);
  min-height:150px;
}
.asc-magazine-side-item:last-child{border-bottom:0}
.asc-magazine-side-thumb{
  height:100%;
  min-height:105px;
  border-radius:12px;
  overflow:hidden;
  background:linear-gradient(135deg,#3c0b4d,#f4b400);
}
.asc-magazine-side-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.asc-magazine-side-item h3{
  margin:5px 0 0;
  font-size:18px;
  line-height:1.25;
}
.asc-magazine-grid-title{
  margin:55px 0 25px;
}
.asc-magazine-grid-title h2{
  margin:0;
  font-size:36px;
  color:var(--asc-purple);
}
.asc-magazine-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.asc-magazine-card{
  background:#fff;
  border:1px solid var(--asc-line);
  border-radius:16px;
  overflow:hidden;
  transition:.2s ease;
}
.asc-magazine-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--asc-shadow);
}
.asc-magazine-card-media{
  display:block;
  height:210px;
  overflow:hidden;
  background:linear-gradient(135deg,#350b44,#f4b400);
}
.asc-magazine-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.asc-magazine-card-body{padding:20px}
.asc-magazine-card h3{
  margin:7px 0 10px;
  font-size:20px;
  line-height:1.25;
}
.asc-magazine-card p{
  margin:0;
  color:var(--asc-muted);
  font-size:13px;
}
@media(max-width:950px){
  .asc-magazine-featured{grid-template-columns:1fr}
  .asc-magazine-main{border-right:0;border-bottom:1px solid var(--asc-line)}
  .asc-magazine-side{grid-template-rows:none}
  .asc-magazine-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .asc-magazine-main-media{height:240px}
  .asc-magazine-main h2{font-size:25px}
  .asc-magazine-side-item{grid-template-columns:95px 1fr;padding:16px}
  .asc-magazine-side-thumb{min-height:90px}
  .asc-magazine-side-item h3{font-size:15px}
  .asc-magazine-grid{grid-template-columns:1fr}
}

/* === V1.0.22 — Lecteur de musique flottant === */
.asc-floating-player{
  position:fixed;
  right:22px;
  bottom:22px;
  width:360px;
  z-index:9990;
  font-family:Inter,Arial,Helvetica,sans-serif;
  filter:drop-shadow(0 18px 35px rgba(20,4,27,.28));
}
.asc-player-panel{
  background:linear-gradient(145deg,#120817,#26072f);
  border:1px solid #5c1675;
  border-radius:18px;
  padding:14px;
  color:#fff;
  transition:.22s ease;
}
.asc-player-top{
  display:grid;
  grid-template-columns:52px 1fr 48px;
  gap:12px;
  align-items:center;
}
.asc-player-cover{
  width:52px;
  height:52px;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
  display:grid;
  place-items:center;
}
.asc-player-cover img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.asc-player-track{
  min-width:0;
}
.asc-player-title{
  display:block;
  font-size:14px;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.asc-player-artist{
  display:block;
  margin-top:4px;
  font-size:10px;
  color:#c9bbce;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.asc-player-play{
  width:44px;
  height:44px;
  border:0;
  border-radius:50%;
  background:var(--asc-gold);
  color:#160b18;
  display:grid;
  place-items:center;
  cursor:pointer;
  font-weight:900;
  font-size:16px;
}
.asc-player-play:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.asc-player-progress-wrap{
  margin-top:13px;
  display:grid;
  grid-template-columns:34px 1fr 34px;
  gap:8px;
  align-items:center;
}
.asc-player-time{
  font-size:9px;
  color:#c9bbce;
  text-align:center;
}
.asc-player-progress,
.asc-player-volume{
  accent-color:var(--asc-gold);
  cursor:pointer;
}
.asc-player-progress{
  width:100%;
}
.asc-player-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:8px;
}
.asc-player-status{
  font-size:9px;
  color:#aa9caf;
  line-height:1.25;
}
.asc-player-volume-wrap{
  display:flex;
  align-items:center;
  gap:5px;
  flex:0 0 auto;
}
.asc-player-volume-wrap span{
  font-size:11px;
}
.asc-player-volume{
  width:62px;
}
.asc-player-minimize{
  position:absolute;
  right:8px;
  top:-12px;
  width:27px;
  height:27px;
  border-radius:50%;
  border:1px solid #5c1675;
  background:#120817;
  color:#fff;
  cursor:pointer;
  z-index:2;
}
.asc-player-collapsed{
  display:none;
  justify-content:flex-end;
}
.asc-player-expand{
  width:52px;
  height:52px;
  border-radius:50%;
  border:1px solid #6c1988;
  background:linear-gradient(145deg,#4b006e,#741795);
  color:#fff;
  font-size:22px;
  cursor:pointer;
  box-shadow:0 12px 30px rgba(75,0,110,.35);
}
.asc-floating-player.is-collapsed{
  width:52px;
}
.asc-floating-player.is-collapsed .asc-player-panel,
.asc-floating-player.is-collapsed .asc-player-minimize{
  display:none;
}
.asc-floating-player.is-collapsed .asc-player-collapsed{
  display:flex;
}
@media(max-width:620px){
  .asc-floating-player{
    right:12px;
    bottom:12px;
    width:min(340px,calc(100vw - 24px));
  }
  .asc-floating-player.is-collapsed{
    width:52px;
  }
  .asc-player-panel{
    border-radius:15px;
  }
}

/* === V1.0.24 — Magazine ASCEMU fidèle au modèle fourni === */
.asc-magazine-page{
  background:#f5f5f5;
  padding:0 0 70px;
}
.asc-magazine-shell{
  width:min(920px,calc(100% - 36px));
  margin:0 auto;
  position:relative;
  z-index:3;
}
.asc-magazine-topline{
  height:9px;
  background:var(--asc-gold);
}
.asc-magazine-featured{
  display:grid;
  grid-template-columns:1.05fr 1fr;
  background:#fff;
  border:0;
  border-radius:0;
  overflow:hidden;
  box-shadow:0 8px 25px rgba(30,13,35,.08);
  margin:0;
}
.asc-magazine-main{
  padding:24px;
  border-right:1px solid #e5e5e5;
}
.asc-magazine-main-media{
  display:block;
  height:305px;
  border-radius:4px;
  overflow:hidden;
  background:#e9e9e9;
}
.asc-magazine-main-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.asc-magazine-meta{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin:17px 0 7px;
  color:#b2b2b2;
  font-size:11px;
  line-height:1.3;
  text-transform:uppercase;
  font-weight:500;
}
.asc-magazine-meta .accent{
  color:#a9a9a9;
}
.asc-magazine-main h2{
  margin:0;
  font-size:24px;
  line-height:1.22;
  font-weight:600;
  color:#252525;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.asc-magazine-main h2 a{color:inherit}
.asc-magazine-main p,
.asc-magazine-main .asc-more{
  display:none;
}
.asc-magazine-side{
  display:grid;
  grid-template-rows:repeat(3,1fr);
  min-height:100%;
}
.asc-magazine-side-item{
  display:block;
  padding:28px 28px 22px;
  border-bottom:1px dashed #d9d9d9;
  min-height:140px;
}
.asc-magazine-side-item:last-child{border-bottom:0}
.asc-magazine-side-thumb{
  display:none;
}
.asc-magazine-side-item .asc-magazine-meta{
  margin:0 0 9px;
}
.asc-magazine-side-item h3{
  margin:0;
  font-size:21px;
  line-height:1.3;
  font-weight:500;
  color:#303030;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.asc-magazine-side-item h3 a{color:inherit}
.asc-magazine-section-heading{
  width:min(1180px,calc(100% - 40px));
  margin:46px auto 24px;
}
.asc-magazine-section-heading .asc-kicker{
  color:var(--asc-purple);
}
.asc-magazine-section-heading h2{
  margin:5px 0 0;
  font-size:34px;
  color:var(--asc-purple);
}
.asc-magazine-grid{
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.asc-magazine-card{
  background:#fff;
  border:1px solid var(--asc-line);
  border-radius:13px;
  overflow:hidden;
  transition:.2s ease;
}
.asc-magazine-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--asc-shadow);
}
.asc-magazine-card-media{
  display:block;
  height:205px;
  overflow:hidden;
}
.asc-magazine-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.asc-magazine-card-body{padding:19px}
.asc-magazine-card h3{
  font-size:19px;
  line-height:1.25;
  margin:4px 0 9px;
}
.asc-magazine-card p{
  color:var(--asc-muted);
  font-size:13px;
  margin:0;
}
.asc-magazine-pagination{
  width:min(1180px,calc(100% - 40px));
  margin:30px auto 0;
}
.asc-magazine-empty{
  padding:40px;
  background:#fff;
  text-align:center;
}
@media(max-width:900px){
  .asc-magazine-shell{width:min(760px,calc(100% - 26px))}
  .asc-magazine-featured{grid-template-columns:1fr}
  .asc-magazine-main{border-right:0;border-bottom:1px solid #e5e5e5}
  .asc-magazine-side{grid-template-rows:none}
  .asc-magazine-side-item{min-height:auto}
  .asc-magazine-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .asc-magazine-main{padding:15px}
  .asc-magazine-main-media{height:235px}
  .asc-magazine-main h2{font-size:21px}
  .asc-magazine-side-item{padding:18px}
  .asc-magazine-side-item h3{font-size:17px}
  .asc-magazine-grid{grid-template-columns:1fr}
}

/* V1.0.25 — Typographie plus élégante et compacte */
.asc-hero h1{
  font-size:clamp(42px,4.6vw,68px) !important;
  line-height:.98 !important;
  max-width:760px !important;
  letter-spacing:-1.8px !important;
}
.asc-hero .asc-kicker{
  font-size:12px !important;
  letter-spacing:2px !important;
}
.asc-hero p{
  font-size:16px !important;
  line-height:1.55 !important;
  max-width:680px !important;
}
.asc-nav a,
.asc-menu a{
  font-size:13px !important;
}
.asc-section h2{
  font-size:clamp(28px,3vw,42px);
  line-height:1.1;
}
.asc-section h3{
  font-size:20px;
  line-height:1.25;
}
@media(max-width:1100px){
  .asc-hero h1{font-size:clamp(38px,5.5vw,58px) !important}
  .asc-nav a,.asc-menu a{font-size:12px !important}
}
@media(max-width:700px){
  .asc-hero h1{font-size:clamp(34px,10vw,48px) !important;letter-spacing:-1px !important}
  .asc-hero p{font-size:14px !important}
}

/* V1.0.26 — Tous les téléphones ASCEMU dans la barre supérieure */
.asc-topbar{
  font-size:12px;
}
.asc-topbar a{
  white-space:nowrap;
}
@media(max-width:900px){
  .asc-topbar{
    font-size:10px;
  }
}

/* === V1.0.27 — Panier WooCommerce flottant === */
.asc-floating-cart{
  position:fixed;
  right:22px;
  bottom:92px;
  z-index:9985;
  font-family:Inter,Arial,Helvetica,sans-serif;
}
.asc-floating-cart-btn{
  width:58px;
  height:58px;
  border:0;
  border-radius:50%;
  background:linear-gradient(145deg,var(--asc-purple),#751a94);
  color:#fff;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 14px 34px rgba(75,0,110,.34);
  position:relative;
}
.asc-cart-icon{
  font-size:24px;
  line-height:1;
}
.asc-cart-count{
  position:absolute;
  top:-6px;
  right:-5px;
  min-width:24px;
  height:24px;
  padding:0 6px;
  border-radius:999px;
  background:var(--asc-gold);
  color:#160b18;
  border:2px solid #fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:10px;
  font-weight:900;
}
.asc-floating-cart-panel{
  position:absolute;
  right:0;
  bottom:70px;
  width:340px;
  background:#fff;
  border:1px solid #eadfec;
  border-radius:18px;
  box-shadow:0 22px 55px rgba(25,6,32,.20);
  overflow:hidden;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px) scale(.98);
  transition:.2s ease;
}
.asc-floating-cart.is-open .asc-floating-cart-panel{
  opacity:1;
  visibility:visible;
  transform:translateY(0) scale(1);
}
.asc-floating-cart-head{
  background:#160b1b;
  color:#fff;
  padding:15px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.asc-floating-cart-head strong{
  font-size:15px;
}
.asc-floating-cart-close{
  width:30px;
  height:30px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.1);
  color:#fff;
  font-size:19px;
  cursor:pointer;
}
.asc-floating-cart-content{
  padding:16px;
  max-height:440px;
  overflow:auto;
}
.asc-mini-cart-items{
  display:grid;
  gap:12px;
}
.asc-mini-cart-item{
  display:grid;
  grid-template-columns:62px 1fr;
  gap:12px;
  align-items:center;
  padding-bottom:12px;
  border-bottom:1px solid #eee;
}
.asc-mini-cart-thumb{
  width:62px;
  height:62px;
  overflow:hidden;
  border-radius:10px;
  background:#f5f5f5;
}
.asc-mini-cart-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.asc-mini-cart-info{
  min-width:0;
}
.asc-mini-cart-name{
  display:block;
  color:#201424;
  text-decoration:none;
  font-size:13px;
  font-weight:800;
  line-height:1.3;
  margin-bottom:5px;
}
.asc-mini-cart-info span{
  font-size:11px;
  color:#736a77;
}
.asc-mini-cart-subtotal{
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:15px 0;
  font-size:13px;
}
.asc-mini-cart-subtotal strong{
  color:var(--asc-purple);
}
.asc-mini-cart-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}
.asc-mini-cart-actions .asc-btn{
  padding:11px 10px;
  font-size:11px;
}
.asc-mini-cart-actions .asc-btn-outline{
  border:1px solid var(--asc-purple);
  color:var(--asc-purple);
  background:#fff;
}
.asc-mini-cart-empty{
  text-align:center;
  padding:18px 8px 10px;
}
.asc-mini-cart-empty-icon{
  display:block;
  font-size:34px;
  margin-bottom:8px;
}
.asc-mini-cart-empty p{
  color:#6f6473;
  margin:0 0 15px;
}
@media(max-width:620px){
  .asc-floating-cart{
    right:12px;
    bottom:76px;
  }
  .asc-floating-cart-btn{
    width:52px;
    height:52px;
  }
  .asc-floating-cart-panel{
    width:min(330px,calc(100vw - 24px));
    right:0;
    bottom:62px;
  }
}

/* === V1.0.28 — Page institutionnelle NOS ACTIONS === */
.asc-actions-hero{
  padding:78px 0 62px;
  background:linear-gradient(135deg,#260032 0%,#55006f 65%,#6d1185 100%);
  color:#fff;
  position:relative;
  overflow:hidden;
}
.asc-actions-hero:after{
  content:"";
  position:absolute;
  width:340px;height:340px;border-radius:50%;
  right:-90px;top:-130px;
  border:55px solid rgba(255,179,0,.12);
}
.asc-actions-hero .asc-kicker{color:#ffbd22}
.asc-actions-hero h1{
  max-width:900px;
  margin:8px 0 18px;
  font-size:clamp(38px,5vw,66px);
  line-height:1.02;
}
.asc-actions-hero p{
  max-width:820px;
  font-size:17px;
  line-height:1.7;
  color:rgba(255,255,255,.86);
}
.asc-actions-intro{padding:65px 0;background:#fff}
.asc-actions-intro-grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:55px;
  align-items:center;
}
.asc-actions-intro h2{
  font-size:clamp(30px,3.5vw,46px);
  line-height:1.1;
  margin:8px 0 18px;
  color:var(--asc-purple);
}
.asc-actions-intro p{
  color:var(--asc-muted);
  line-height:1.75;
}
.asc-actions-statbox{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.asc-actions-stat{
  min-height:145px;
  border:1px solid var(--asc-line);
  border-radius:14px;
  padding:24px;
  background:#faf7fb;
}
.asc-actions-stat strong{
  display:block;
  font-size:30px;
  color:var(--asc-purple);
  margin-bottom:7px;
}
.asc-actions-list{padding:70px 0;background:#f8f6f9}
.asc-actions-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
}
.asc-action-card{
  background:#fff;
  border:1px solid #eadfec;
  border-radius:18px;
  padding:30px;
  position:relative;
  overflow:hidden;
  transition:.22s ease;
}
.asc-action-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 40px rgba(63,15,75,.10);
}
.asc-action-num{
  position:absolute;
  right:18px;top:10px;
  font-size:64px;
  line-height:1;
  font-weight:900;
  color:rgba(82,0,105,.055);
}
.asc-action-icon{
  width:54px;height:54px;border-radius:14px;
  display:grid;place-items:center;
  background:#f5eafb;
  color:var(--asc-purple);
  font-size:25px;
  margin-bottom:18px;
}
.asc-action-card h3{
  margin:0 0 11px;
  font-size:22px;
  color:#25132b;
}
.asc-action-card p{
  margin:0 0 14px;
  color:var(--asc-muted);
  line-height:1.65;
  font-size:14px;
}
.asc-action-card ul{
  margin:0;
  padding-left:18px;
  color:#5e5261;
  font-size:13px;
  line-height:1.7;
}
.asc-projects-actions{padding:72px 0;background:#fff}
.asc-projects-actions-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.asc-project-action{
  border:1px solid var(--asc-line);
  border-radius:16px;
  overflow:hidden;
  background:#fff;
}
.asc-project-action-media{
  height:180px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fafafa;
  padding:12px;
}
.asc-project-action-media img{
  width:100%;height:100%;object-fit:contain;
}
.asc-project-action-body{padding:18px}
.asc-project-action-body h3{
  margin:0 0 8px;font-size:18px;color:var(--asc-purple);
}
.asc-project-action-body p{
  margin:0;color:var(--asc-muted);font-size:13px;line-height:1.55;
}
.asc-actions-cta{
  padding:62px 0;
  background:#17091d;
  color:#fff;
  text-align:center;
}
.asc-actions-cta h2{
  margin:0 0 12px;
  font-size:clamp(28px,3vw,42px);
}
.asc-actions-cta p{
  max-width:700px;margin:0 auto 24px;color:#cfc4d2;
}
@media(max-width:900px){
  .asc-actions-intro-grid{grid-template-columns:1fr}
  .asc-actions-grid{grid-template-columns:1fr}
  .asc-projects-actions-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .asc-actions-statbox{grid-template-columns:1fr}
  .asc-projects-actions-grid{grid-template-columns:1fr}
}

/* === V1.0.29 — Accueil ASCEMU enrichi === */
.asc-home-block-title{text-align:center;margin-bottom:34px}
.asc-home-block-title .asc-kicker{color:var(--asc-purple)}
.asc-home-block-title h2{font-size:clamp(30px,3.5vw,46px);line-height:1.08;margin:5px 0 0}
.asc-home-block-title p{max-width:720px;margin:12px auto 0;color:var(--asc-muted)}

/* Objectifs de développement durable */
.asc-home-odd{padding:64px 0;background:#fff}
.asc-home-odd-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.asc-home-odd-card{min-height:170px;background:#eef6eb;border-radius:8px;padding:18px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#607662}
.asc-home-odd-card:nth-child(3){background:#637b67;color:#fff}
.asc-home-odd-card .icon{font-size:34px;margin-bottom:10px}
.asc-home-odd-card strong{font-size:15px;line-height:1.35;font-weight:600}

/* Dernières causes */
.asc-home-causes{padding:70px 0;background:#fafafa}
.asc-home-causes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.asc-home-cause{background:#fff;border:1px solid #eee;overflow:hidden}
.asc-home-cause-media{height:255px;display:flex;align-items:center;justify-content:center;background:#f8f8f8;overflow:hidden}
.asc-home-cause-media img{width:100%;height:100%;object-fit:cover}
.asc-home-cause-media.is-logo img{object-fit:contain;padding:15px}
.asc-home-cause-body{padding:21px}
.asc-home-cause-body h3{margin:0 0 10px;font-size:21px;line-height:1.25}
.asc-home-cause-body p{margin:0 0 14px;color:var(--asc-muted);font-size:13px;line-height:1.6}

/* Devenez bénévole */
.asc-home-volunteer{min-height:355px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(74,0,55,.91),rgba(101,0,75,.82)),url('assets/images/hero-ascemu.jpg') center/cover no-repeat;color:#fff}
.asc-home-volunteer-inner{width:min(900px,calc(100% - 40px));margin:0 auto;text-align:center;padding:58px 0}
.asc-home-volunteer .asc-kicker{color:#fff}
.asc-home-volunteer h2{font-size:clamp(34px,4vw,54px);line-height:1.08;margin:10px 0 13px}
.asc-home-volunteer p{max-width:720px;margin:0 auto;color:#eee}
.asc-home-volunteer-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:24px}

/* Boutique produits */
.asc-home-shop{padding:70px 0;background:#fff}
.asc-home-shop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.asc-home-product{background:#fff;border:1px solid #ececec;overflow:hidden}
.asc-home-product-media{height:255px;display:block;overflow:hidden;background:#f4f4f4}
.asc-home-product-media img{width:100%;height:100%;object-fit:cover}
.asc-home-product-body{text-align:center;padding:17px}
.asc-home-product-body h3{font-size:18px;line-height:1.3;margin:0 0 8px}
.asc-home-product-body h3 a{text-decoration:none}
.asc-home-product-price{color:#c3472d;font-weight:800}

/* Bande partenaires */
.asc-home-partners{padding:34px 0;background:#eff7ec;overflow:hidden}
.asc-home-partner-track{display:flex;align-items:center;gap:50px;width:max-content;animation:ascPartnerLoop 32s linear infinite}
.asc-home-partners:hover .asc-home-partner-track{animation-play-state:paused}
.asc-home-partner{width:180px;height:90px;background:#fff;border-radius:10px;padding:12px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.asc-home-partner img{width:100%;height:100%;object-fit:contain}
@keyframes ascPartnerLoop{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Evénements */
.asc-home-upcoming{padding:72px 0;background:#fff}
.asc-home-upcoming-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}
.asc-home-upcoming-intro h2{font-size:clamp(34px,4vw,52px);line-height:1.1;margin:8px 0 22px}
.asc-home-upcoming-list{display:grid;gap:22px}
.asc-home-upcoming-card{display:grid;grid-template-columns:170px 1fr;gap:20px;align-items:center}
.asc-home-upcoming-thumb{height:165px;border-radius:8px;overflow:hidden;background:#eee}
.asc-home-upcoming-thumb img{width:100%;height:100%;object-fit:cover}
.asc-home-upcoming-info .meta{font-size:12px;color:#6b7d6d;margin-bottom:5px}
.asc-home-upcoming-info h3{font-size:22px;line-height:1.25;margin:0 0 9px}
.asc-home-upcoming-info .date{font-size:12px;color:#cf5035}

/* Actualités */
.asc-home-latest-news{padding:70px 0;background:#fafafa}
.asc-home-latest-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.asc-home-latest-news-card{background:#fff}
.asc-home-latest-news-media{height:240px;display:block;overflow:hidden}
.asc-home-latest-news-media img{width:100%;height:100%;object-fit:cover}
.asc-home-latest-news-body{text-align:center;padding:17px 14px 22px}
.asc-home-latest-news-body .meta{font-size:11px;color:#d24d33;margin-bottom:9px}
.asc-home-latest-news-body h3{font-size:19px;line-height:1.3;margin:0}
.asc-home-latest-news-body h3 a{text-decoration:none}

@media(max-width:1000px){
 .asc-home-odd-grid{grid-template-columns:repeat(3,1fr)}
 .asc-home-causes-grid{grid-template-columns:1fr 1fr}
 .asc-home-shop-grid{grid-template-columns:1fr 1fr}
 .asc-home-upcoming-layout{grid-template-columns:1fr}
 .asc-home-latest-news-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
 .asc-home-odd-grid{grid-template-columns:1fr 1fr}
 .asc-home-causes-grid,.asc-home-shop-grid,.asc-home-latest-news-grid{grid-template-columns:1fr}
 .asc-home-upcoming-card{grid-template-columns:110px 1fr}
 .asc-home-upcoming-thumb{height:120px}
}

/* === V1.0.30 — Page Nos projets institutionnelle === */
.asc-projects-page{background:#fff}
.asc-projects-hero{padding:82px 0 68px;background:linear-gradient(135deg,#fbf7ff 0%,#fff 48%,#fff8e8 100%);border-bottom:1px solid #eee}
.asc-projects-hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:46px;align-items:center}
.asc-projects-hero h1{font-size:clamp(42px,5.2vw,72px);line-height:.98;margin:10px 0 20px;color:#251132}
.asc-projects-hero h1 span{color:var(--asc-gold)}
.asc-projects-hero p{font-size:17px;line-height:1.75;color:#555;max-width:760px}
.asc-projects-statbox{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.asc-projects-stat{padding:22px;border-radius:16px;background:#fff;border:1px solid #ece6f1;box-shadow:0 12px 30px rgba(52,22,65,.07)}
.asc-projects-stat strong{display:block;font-size:30px;color:var(--asc-purple);margin-bottom:5px}
.asc-projects-stat span{font-size:12px;color:#666;line-height:1.4}
.asc-projects-intro{padding:64px 0 24px;text-align:center}
.asc-projects-intro h2{font-size:clamp(30px,4vw,48px);margin:8px 0 14px}
.asc-projects-intro p{max-width:850px;margin:auto;color:#666;line-height:1.75}
.asc-projects-stack{padding:30px 0 70px}
.asc-project-detail{display:grid;grid-template-columns:380px 1fr;gap:42px;padding:38px 0;border-bottom:1px solid #eee;align-items:start}
.asc-project-detail:nth-child(even){grid-template-columns:1fr 380px}
.asc-project-detail:nth-child(even) .asc-project-visual{order:2}
.asc-project-visual{height:330px;border-radius:20px;background:#faf8fc;border:1px solid #eee;display:flex;align-items:center;justify-content:center;overflow:hidden}
.asc-project-visual img{width:100%;height:100%;object-fit:contain;padding:20px}
.asc-project-copy .asc-label{display:inline-flex;padding:7px 11px;border-radius:999px;background:#f2eafa;color:var(--asc-purple);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.asc-project-copy h2{font-size:clamp(29px,3.2vw,43px);line-height:1.05;margin:12px 0 13px}
.asc-project-copy .lead{font-size:16px;line-height:1.7;color:#555}
.asc-project-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:19px 0}
.asc-project-fact{padding:13px;border-radius:10px;background:#fafafa;border:1px solid #eee}
.asc-project-fact strong{display:block;font-size:12px;color:#2c1436;margin-bottom:4px}
.asc-project-fact span{font-size:12px;color:#666;line-height:1.4}
.asc-project-points{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:17px 0 22px}
.asc-project-point{font-size:13px;line-height:1.5;padding-left:18px;position:relative}
.asc-project-point:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--asc-gold);position:absolute;left:0;top:7px}
.asc-institutional{padding:76px 0;background:#24102e;color:#fff}
.asc-institutional .asc-home-block-title h2{color:#fff}
.asc-institutional .asc-home-block-title p{color:#d8ccdd}
.asc-inst-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.asc-inst-card{background:#fff;color:#2b2430;border-radius:16px;padding:24px;min-height:225px;display:flex;flex-direction:column}
.asc-inst-card .asc-inst-type{font-size:10px;font-weight:900;color:var(--asc-purple);text-transform:uppercase;letter-spacing:.09em}
.asc-inst-card h3{font-size:19px;line-height:1.25;margin:9px 0}
.asc-inst-card p{font-size:12px;line-height:1.6;color:#666;flex:1}
.asc-inst-card .asc-inst-ref{font-size:11px;border-top:1px solid #eee;padding-top:12px;margin-top:12px;font-weight:700}
.asc-project-vision{padding:72px 0;background:#fff8e8}
.asc-project-vision-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.asc-project-vision-card{padding:30px;border-radius:16px;background:#fff}
.asc-project-vision-card h3{font-size:22px;margin:0 0 10px;color:#2d1638}
.asc-project-vision-card p{margin:0;color:#666;line-height:1.7;font-size:14px}
@media(max-width:900px){
 .asc-projects-hero-grid,.asc-project-detail,.asc-project-detail:nth-child(even),.asc-project-vision-grid{grid-template-columns:1fr}
 .asc-project-detail:nth-child(even) .asc-project-visual{order:0}
 .asc-inst-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
 .asc-projects-statbox,.asc-project-facts,.asc-project-points,.asc-inst-grid{grid-template-columns:1fr}
 .asc-projects-hero{padding:54px 0}
 .asc-project-visual{height:260px}
}

/* === V1.0.31 — Menu : une seule ligne + état actif corrigé === */

/* Le menu ne doit jamais casser les libellés en deux lignes */
.asc-nav > ul{
  display:flex;
  align-items:stretch;
  flex-wrap:nowrap !important;
  gap:0;
}
.asc-nav > ul > li{
  flex:0 0 auto;
  white-space:nowrap !important;
}
.asc-nav > ul > li > a{
  white-space:nowrap !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  hyphens:none !important;
  padding-left:12px !important;
  padding-right:12px !important;
  font-size:12px !important;
  line-height:1 !important;
}

/* À PROPOS et NOUS SOUTENIR restent sur UNE ligne */
.asc-nav > ul > li > a br{
  display:none !important;
}

/* Le bouton donation garde de la place sans écraser le menu */
.asc-header .asc-container,
.asc-mainbar .asc-container{
  gap:14px;
}
.asc-nav{
  min-width:0;
  flex:1 1 auto;
}
.asc-donate,
.asc-donate-btn,
.asc-header-donate{
  flex:0 0 auto;
  white-space:nowrap;
}

/* Etat actif :
   on ignore current_page_parent qui allumait Blog sur la page d'accueil */
@media(min-width:1051px){
  .asc-nav > ul > li.current-menu-item > a,
  .asc-nav > ul > li.current-menu-ancestor > a,
  .asc-nav > ul > li.current_page_item > a,
  .asc-nav > ul > li.asc-current > a{
    background:var(--asc-gold) !important;
    color:#160b18 !important;
  }

  .asc-nav > ul > li.current_page_parent:not(.current_page_item) > a{
    background:transparent !important;
    color:inherit !important;
  }

  body.home .asc-nav > ul > li:not(.current-menu-item):not(.current_page_item):not(.asc-current) > a,
  body.front-page .asc-nav > ul > li:not(.current-menu-item):not(.current_page_item):not(.asc-current) > a{
    background:transparent !important;
    color:inherit !important;
  }
}

/* Sécurité supplémentaire : sur la vraie page d'accueil, seul Accueil reste allumé */
body.home .asc-nav > ul > li.current_page_parent > a,
body.home .asc-nav > ul > li.current-menu-parent > a,
body.home .asc-nav > ul > li.current-menu-ancestor > a{
  background:transparent !important;
  color:inherit !important;
}

/* Responsive desktop étroit */
@media(min-width:1051px) and (max-width:1220px){
  .asc-nav > ul > li > a{
    padding-left:9px !important;
    padding-right:9px !important;
    font-size:11px !important;
  }
}

/* === V1.0.33 — NOS PROJETS : version institutionnelle complète === */
.asc-projects-v33{background:#fff;color:#251a29}
.asc-projects-v33-hero{
  padding:84px 0 72px;
  background:
    radial-gradient(circle at 90% 10%,rgba(245,174,22,.16),transparent 30%),
    linear-gradient(135deg,#f8f2fb 0%,#fff 52%,#fff7e5 100%);
  border-bottom:1px solid #eee;
}
.asc-projects-v33-hero-grid{
  display:grid;
  grid-template-columns:1.18fr .82fr;
  gap:52px;
  align-items:center;
}
.asc-projects-v33-hero h1{
  margin:10px 0 18px;
  font-size:clamp(42px,5vw,70px);
  line-height:1;
  letter-spacing:-1.5px;
}
.asc-projects-v33-hero h1 span{color:var(--asc-purple)}
.asc-projects-v33-hero p{
  max-width:790px;
  color:#5f5662;
  line-height:1.78;
  font-size:16px;
}
.asc-projects-v33-summary{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.asc-projects-v33-summary-card{
  background:#fff;
  border:1px solid #eee4f1;
  border-radius:16px;
  padding:22px;
  box-shadow:0 14px 35px rgba(60,25,72,.07);
}
.asc-projects-v33-summary-card strong{
  display:block;
  color:var(--asc-purple);
  font-size:28px;
  margin-bottom:6px;
}
.asc-projects-v33-summary-card span{
  font-size:12px;
  line-height:1.45;
  color:#695f6c;
}
.asc-projects-v33-intro{padding:72px 0 58px}
.asc-projects-v33-intro-grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:48px;
}
.asc-projects-v33-intro h2{
  font-size:clamp(30px,3.6vw,48px);
  line-height:1.08;
  margin:8px 0 18px;
}
.asc-projects-v33-intro p{
  color:#675d69;
  line-height:1.8;
  margin:0 0 15px;
}
.asc-projects-v33-pillars{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.asc-projects-v33-pillar{
  padding:22px;
  border:1px solid #eee;
  border-radius:14px;
  background:#faf9fb;
}
.asc-projects-v33-pillar strong{
  display:block;
  color:var(--asc-purple);
  margin-bottom:6px;
  font-size:17px;
}
.asc-projects-v33-pillar span{
  font-size:13px;
  color:#6b626d;
  line-height:1.55;
}

/* Project detail sections */
.asc-projects-v33-list{padding:22px 0 74px;background:#fbfafc}
.asc-project-v33{
  margin:28px 0;
  background:#fff;
  border:1px solid #ece7ef;
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 12px 34px rgba(48,20,58,.06);
}
.asc-project-v33-head{
  display:grid;
  grid-template-columns:330px 1fr;
  gap:0;
  border-bottom:1px solid #eee;
}
.asc-project-v33-logo{
  min-height:315px;
  padding:28px;
  background:#f8f6fa;
  display:flex;
  align-items:center;
  justify-content:center;
}
.asc-project-v33-logo img{
  max-width:100%;
  max-height:255px;
  object-fit:contain;
}
.asc-project-v33-copy{padding:34px 38px}
.asc-project-v33-copy .eyebrow{
  display:inline-flex;
  padding:7px 11px;
  border-radius:999px;
  background:#f4ecf8;
  color:var(--asc-purple);
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.asc-project-v33-copy h2{
  font-size:clamp(28px,3vw,42px);
  line-height:1.08;
  margin:12px 0 13px;
}
.asc-project-v33-copy p{
  color:#615762;
  line-height:1.72;
  margin:0 0 13px;
}
.asc-project-v33-facts{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-top:18px;
}
.asc-project-v33-fact{
  padding:13px;
  border-radius:12px;
  background:#fafafa;
  border:1px solid #eee;
}
.asc-project-v33-fact strong{
  display:block;
  font-size:10px;
  color:var(--asc-purple);
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-bottom:5px;
}
.asc-project-v33-fact span{
  display:block;
  font-size:12px;
  line-height:1.4;
  color:#5e5660;
}
.asc-project-v33-body{
  padding:30px 38px 36px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:30px;
}
.asc-project-v33-block h3{
  font-size:19px;
  margin:0 0 10px;
  color:#2c1635;
}
.asc-project-v33-block p{
  color:#675e69;
  font-size:13px;
  line-height:1.72;
}
.asc-project-v33-block ul{
  padding-left:19px;
  margin:0;
  color:#615862;
  font-size:13px;
  line-height:1.75;
}
.asc-project-v33-actions{
  grid-column:1/-1;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  padding-top:4px;
}
.asc-project-v33-note{
  grid-column:1/-1;
  background:#fff8e6;
  border:1px solid #f4dd9a;
  color:#5c4a1a;
  border-radius:12px;
  padding:15px;
  font-size:12px;
  line-height:1.6;
}

/* Institutional section */
.asc-projects-v33-inst{
  padding:78px 0;
  background:#1d0b24;
  color:#fff;
}
.asc-projects-v33-inst .asc-home-block-title h2{color:#fff}
.asc-projects-v33-inst .asc-home-block-title p{color:#cfc3d4}
.asc-projects-v33-inst-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.asc-projects-v33-inst-card{
  background:#fff;
  color:#2a1e2d;
  border-radius:17px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:310px;
}
.asc-projects-v33-inst-top{
  padding:22px 22px 14px;
}
.asc-projects-v33-inst-type{
  font-size:10px;
  color:var(--asc-purple);
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.asc-projects-v33-inst-card h3{
  margin:8px 0 10px;
  font-size:19px;
  line-height:1.25;
}
.asc-projects-v33-inst-card p{
  color:#666;
  font-size:12px;
  line-height:1.62;
  margin:0;
}
.asc-projects-v33-inst-ref{
  padding:0 22px 14px;
  font-size:11px;
  font-weight:800;
  color:#45394a;
}
.asc-projects-v33-inst-actions{
  margin-top:auto;
  border-top:1px solid #eee;
  display:grid;
  grid-template-columns:1fr 1fr;
}
.asc-projects-v33-inst-actions a{
  padding:13px 12px;
  font-size:11px;
  font-weight:800;
  text-align:center;
  text-decoration:none;
  color:var(--asc-purple);
}
.asc-projects-v33-inst-actions a + a{
  border-left:1px solid #eee;
}

/* Coherence / source note */
.asc-projects-v33-source-note{
  margin-top:24px;
  padding:18px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:12px;
  color:#d6cbd9;
  font-size:12px;
  line-height:1.65;
}
.asc-projects-v33-footer{
  padding:68px 0;
  background:#fff7e8;
}
.asc-projects-v33-footer-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}
.asc-projects-v33-footer-card{
  background:#fff;
  border-radius:16px;
  padding:28px;
}
.asc-projects-v33-footer-card h3{
  margin:0 0 10px;
  color:#2d1736;
  font-size:22px;
}
.asc-projects-v33-footer-card p{
  margin:0;
  color:#655c67;
  line-height:1.7;
  font-size:14px;
}

@media(max-width:980px){
  .asc-projects-v33-hero-grid,
  .asc-projects-v33-intro-grid,
  .asc-project-v33-head,
  .asc-project-v33-body,
  .asc-projects-v33-footer-grid{grid-template-columns:1fr}
  .asc-projects-v33-inst-grid{grid-template-columns:1fr 1fr}
  .asc-project-v33-facts{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .asc-projects-v33-summary,
  .asc-projects-v33-pillars,
  .asc-projects-v33-inst-grid,
  .asc-project-v33-facts{grid-template-columns:1fr}
  .asc-project-v33-copy,
  .asc-project-v33-body{padding-left:20px;padding-right:20px}
}

/* === V1.0.34 — Flottants compacts : icônes uniquement au repos === */

/* Groupe vertical à droite, comme le modèle utilisateur */
.asc-floating-cart{
  right:22px !important;
  bottom:116px !important;
  z-index:9988 !important;
}
.asc-floating-player{
  right:22px !important;
  bottom:42px !important;
  z-index:9987 !important;
}

/* PANIER : rond violet uniquement */
.asc-floating-cart-btn{
  width:54px !important;
  height:54px !important;
  border-radius:50% !important;
  background:#71008b !important;
  box-shadow:0 13px 28px rgba(113,0,139,.25) !important;
  border:0 !important;
}
.asc-cart-icon{
  font-size:22px !important;
}
.asc-cart-count{
  top:-7px !important;
  right:-5px !important;
  min-width:21px !important;
  height:21px !important;
  padding:0 5px !important;
  font-size:9px !important;
  background:#ffb400 !important;
  color:#111 !important;
  border:2px solid #fff !important;
}
.asc-floating-cart-panel{
  bottom:64px !important;
  right:0 !important;
}

/* LECTEUR : rond violet uniquement au repos */
.asc-floating-player.is-collapsed{
  width:54px !important;
  height:54px !important;
}
.asc-floating-player.is-collapsed .asc-player-collapsed{
  width:54px !important;
  height:54px !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
}
.asc-player-expand{
  width:54px !important;
  height:54px !important;
  border-radius:50% !important;
  background:#71008b !important;
  border:0 !important;
  box-shadow:0 13px 28px rgba(113,0,139,.25) !important;
  color:#fff !important;
  font-size:22px !important;
}

/* Aucun libellé visible lorsque le lecteur est fermé */
.asc-floating-player.is-collapsed .asc-player-panel,
.asc-floating-player.is-collapsed .asc-player-minimize{
  display:none !important;
}

/* Quand le lecteur s'ouvre, il se déploie vers la gauche */
.asc-floating-player:not(.is-collapsed){
  width:360px !important;
}
.asc-floating-player:not(.is-collapsed) .asc-player-panel{
  display:block !important;
}

/* Le panier s'ouvre seulement au clic */
.asc-floating-cart:not(.is-open) .asc-floating-cart-panel{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.asc-floating-cart.is-open .asc-floating-cart-panel{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

/* Harmonisation verticale */
@media(max-width:620px){
  .asc-floating-cart{
    right:12px !important;
    bottom:96px !important;
  }
  .asc-floating-player{
    right:12px !important;
    bottom:30px !important;
  }
  .asc-floating-cart-btn,
  .asc-player-expand,
  .asc-floating-player.is-collapsed{
    width:50px !important;
    height:50px !important;
  }
  .asc-floating-player:not(.is-collapsed){
    width:min(340px,calc(100vw - 24px)) !important;
  }
}
