body {
    background: #f6f8fb;
    color: #1f2937;
}

.public-navbar{position:relative;z-index:1000;padding-block:.7rem!important;background:linear-gradient(100deg,#061f17 0%,#073827 58%,#092d23 100%)!important;border-bottom:3px solid #f5c400;box-shadow:0 10px 30px rgba(3,26,18,.2)}
.public-navbar .container-fluid{max-width:1500px}.public-navbar .navbar-brand{color:#fff}.public-navbar .navbar-brand:hover{color:#fff}
.brand-mark{position:relative;display:inline-grid;place-items:center;min-width:48px;height:42px;padding:0 .5rem;border-radius:13px;background:#f5c400;color:#12372a;font-size:.8rem;font-weight:950;letter-spacing:.03em;box-shadow:0 7px 18px rgba(245,196,0,.22)}.brand-mark i{position:absolute;top:5px;right:5px;width:6px;height:6px;border-radius:50%;background:#d62828}
.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy strong{font-size:.9rem;letter-spacing:.01em}.brand-copy small{margin-top:.25rem;color:rgba(255,255,255,.62);font-size:.61rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.public-navbar .main-navbar-links{gap:.12rem}.public-navbar .nav-link{position:relative;border-radius:9px;color:rgba(255,255,255,.72)!important;transition:.2s}.public-navbar .nav-link:hover,.public-navbar .nav-link.active{background:rgba(255,255,255,.09);color:#fff!important}.public-navbar .nav-link.active:after{content:"";position:absolute;left:28%;right:28%;bottom:2px;height:2px;border-radius:2px;background:#f5c400}.public-navbar .register-link{color:#f5c400!important;font-weight:800}.public-navbar .login-link{padding:.5rem .9rem;border-radius:10px;color:#17372a!important}
.home-hero{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(125deg,#004c31 0%,#08784d 62%,#f5c400 62%,#ffda35 100%);color:#fff}
.home-hero:after{content:"";position:absolute;right:-120px;bottom:-170px;width:390px;height:390px;border:65px solid rgba(255,255,255,.13);border-radius:50%}
.home-hero .container{position:relative;z-index:2}.home-hero-orb{position:absolute;z-index:0;border-radius:50%;filter:blur(1px)}.home-hero-orb-one{width:340px;height:340px;left:-180px;top:-170px;background:rgba(245,196,0,.15)}.home-hero-orb-two{width:190px;height:190px;left:48%;bottom:-110px;border:35px solid rgba(255,255,255,.08)}
.home-kicker{display:inline-flex;align-items:center;gap:.55rem;margin-bottom:1.2rem;padding:.5rem .8rem;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.11);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.home-kicker b{color:#f5c400;font-size:.8rem}
.home-hero h1{max-width:780px;margin-bottom:1.25rem;font-size:clamp(2.5rem,6vw,4.8rem);font-weight:900;line-height:1.02;letter-spacing:-.045em}
.home-hero h1 em{color:#f5c400;font-style:normal}
.home-lead{max-width:760px;margin-bottom:2rem;color:rgba(255,255,255,.84);font-size:clamp(1.05rem,2vw,1.28rem);line-height:1.65}
.home-showcase{position:relative;overflow:hidden;padding:1.35rem;border:1px solid rgba(255,255,255,.6);border-radius:30px;background:rgba(255,255,255,.95);color:#17372a;box-shadow:0 28px 65px rgba(0,49,30,.25);transform:rotate(1deg)}.home-showcase:before{content:"";position:absolute;right:-45px;top:70px;width:160px;height:160px;border-radius:50%;background:#e6f4ed}.home-showcase-top{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;padding-bottom:1rem;border-bottom:1px solid #e3ebe6}.home-showcase-top span{color:#08784d;font-size:.65rem;font-weight:950;letter-spacing:.13em}.home-showcase-top b{font-size:1.55rem}.home-map-mark{position:relative;z-index:1;display:grid;place-items:center;width:120px;height:120px;margin:1.4rem auto;border:12px solid #f5c400;border-radius:42% 58% 56% 44%;background:#08784d;color:#fff;font-size:2.5rem;font-weight:950;transform:rotate(-7deg);box-shadow:0 15px 25px rgba(0,107,63,.2)}.home-showcase-copy{position:relative;z-index:1;display:flex;align-items:center;gap:1rem}.home-showcase-copy>strong{color:#006b3f;font-size:3.5rem;line-height:1}.home-showcase-copy div{display:flex;flex-direction:column}.home-showcase-copy div b{font-size:1rem}.home-showcase-copy div small{margin-top:.2rem;color:#6a786f}.home-showcase-links{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:.35rem;margin-top:1.2rem}.home-showcase-links span{padding:.5rem .25rem;border-radius:8px;background:#f0f6f2;color:#416052;text-align:center;font-size:.58rem;font-weight:800}
.home-section-heading{max-width:720px}.home-section-heading>span,.home-action-main>span,.home-action-secondary>span{display:inline-block;margin-bottom:.65rem;color:#07834f;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.home-section-heading h2{color:#12372a;font-weight:850;letter-spacing:-.025em}.home-section-heading p{color:#65746d}
.home-missions{background:linear-gradient(180deg,#fff,#f5f9f7)}.home-feature{position:relative;overflow:hidden;padding:2rem;border:1px solid #e1e9e4;border-radius:24px;background:#fff;box-shadow:0 12px 35px rgba(18,55,42,.08);transition:.2s}.home-feature:after{content:"";position:absolute;right:-25px;bottom:-35px;width:105px;height:105px;border-radius:50%;background:#f5f9f7}.home-feature:hover{transform:translateY(-7px);box-shadow:0 22px 50px rgba(18,55,42,.15)}.home-feature-icon{position:relative;z-index:1;display:grid;place-items:center;width:54px;height:54px;margin-bottom:1.25rem;border-radius:17px;font-size:1.45rem;font-weight:950}.home-feature-green{background:#dff3e8;color:#006b3f}.home-feature-blue{background:#e0edff;color:#0756b3}.home-feature-yellow{background:#fff0ac;color:#765b00}.home-feature h3{position:relative;z-index:1;color:#12372a;font-size:1.2rem;font-weight:850}.home-feature p{position:relative;z-index:1;margin:0;color:#65746d;line-height:1.7}
.home-actions{background:#eef5f1}.home-action-main,.home-action-secondary{padding:clamp(2rem,5vw,3.5rem);border-radius:26px}.home-action-main{background:linear-gradient(135deg,#063d2a,#087b4e);color:#fff;box-shadow:0 18px 45px rgba(0,76,47,.18)}.home-action-main>span{color:#f5c400}.home-action-main h2,.home-action-secondary h2{font-weight:850}.home-action-main p{max-width:600px;color:rgba(255,255,255,.78)}.home-action-secondary{background:#fff;border:1px solid #dce7e1}.home-action-secondary p{color:#65746d}
.home-public-portals{background:#fff}.home-public-portals h2{color:#12372a;font-size:clamp(2rem,4vw,3.1rem);font-weight:900;letter-spacing:-.035em}.home-public-portals p{color:#65746d;line-height:1.75}.home-eyebrow{display:inline-block;margin-bottom:.7rem;color:#08784d;font-size:.72rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase}.home-portal-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.home-portal-card{position:relative;display:flex;min-height:240px;flex-direction:column;padding:1.35rem;border-radius:22px;color:#fff;text-decoration:none;box-shadow:0 15px 35px rgba(20,45,35,.16);transition:.22s}.home-portal-card:hover{color:#fff;transform:translateY(-7px)}.home-portal-card>span{font-size:1.8rem}.home-portal-card strong{margin-top:auto;font-size:1.05rem}.home-portal-card small{margin-top:.35rem;color:rgba(255,255,255,.72)}.home-portal-card>b{position:absolute;right:1rem;top:1rem;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.15)}.portal-senegal{background:linear-gradient(145deg,#006b3f,#0a8b58)}.portal-world{background:linear-gradient(145deg,#0756b3,#2481e8)}.portal-ads{background:linear-gradient(145deg,#d08a00,#f5b800);color:#202b25}.portal-ads:hover{color:#202b25}.portal-ads small{color:rgba(32,43,37,.68)}.portal-ads>b{background:rgba(32,43,37,.1)}
@media(max-width:991.98px){.home-hero{background:linear-gradient(160deg,#005f3c 0%,#087b4e 88%,#f5c400 88%)}.home-portal-cards{grid-template-columns:repeat(3,1fr)}.public-navbar .navbar-collapse{margin-top:.8rem;padding:1rem;border-radius:14px;background:#092d23}.public-navbar .nav-link.active:after{display:none}}
@media(max-width:767.98px){.home-portal-cards{grid-template-columns:1fr}.home-portal-card{min-height:150px}}
@media(max-width:575.98px){.home-hero .btn{width:100%}.home-showcase{padding:1.1rem}.brand-copy{display:none}.home-showcase-links{grid-template-columns:repeat(2,1fr)}}

.hero-section {
    padding: 70px 0;
}

.min-vh-75 {
    min-height: 75vh;
}

.card {
    overflow: hidden;
}

.btn-primary {
    background: #0b5ed7;
    border-color: #0b5ed7;
}

.btn-primary:hover {
    background: #084298;
    border-color: #084298;
}

/* Menu principal : les nombreux modules se répartissent proprement sur deux lignes. */
@media (min-width: 992px) {
    .main-navbar { padding-top: .45rem; padding-bottom: .45rem; }
    .main-navbar .navbar-brand { flex: 0 0 auto; margin-right: 1.25rem; }
    .main-navbar-content { min-width: 0; align-items: flex-start; }
    .main-navbar-links {
        min-width: 0;
        flex: 1 1 auto;
        display: flex;
        flex-wrap: wrap;
        align-content: center;
        row-gap: .1rem;
    }
    .main-navbar-links .nav-item { flex: 0 0 auto; }
    .main-navbar-links .nav-link,
    .main-navbar-account .nav-link {
        padding: .38rem .48rem;
        font-size: .86rem;
        line-height: 1.25;
        white-space: nowrap;
    }
    .main-navbar-account {
        flex: 0 0 auto;
        align-items: center;
        padding-top: .08rem;
    }
}

@media (max-width: 991.98px) {
    .main-navbar-content { max-height: calc(100vh - 70px); overflow-y: auto; padding-bottom: .75rem; }
    .main-navbar-links .nav-link,
    .main-navbar-account .nav-link { white-space: normal; }
    .main-navbar-account { border-top: 1px solid rgba(255,255,255,.15); margin-top: .5rem; padding-top: .5rem; }
}
/* Profil et mini-site ASC */
.profile-section-title{color:#0b2c4a;border-bottom:2px solid #e9ecef;padding-bottom:.55rem}
.asc-cover{background:linear-gradient(90deg,#0b2c4a,#225b7b);background-size:cover;background-position:center;min-height:260px;display:flex;align-items:center}
.asc-logo{width:120px;height:120px;border-radius:18px;object-fit:cover;background:#fff;border:4px solid rgba(255,255,255,.85);box-shadow:0 8px 22px rgba(0,0,0,.2)}
.asc-logo-placeholder{display:grid;place-items:center;color:var(--asc-primary);font-size:2rem;font-weight:800}
.asc-heading{color:var(--asc-primary);font-weight:700}.asc-chip{background:var(--asc-primary);color:#fff;font-size:.9rem;padding:.65rem .9rem}.preserve-lines{white-space:pre-line}
.profile-panel{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 3px 12px rgba(15,23,42,.08)}
.profile-panel-title{margin:0;padding:.7rem 1rem;background:#0d6efd;color:#fff;font-size:1rem;font-weight:700}.profile-panel-title.dark{background:#212529}.profile-panel-title span{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:.4rem;border-radius:50%;background:#fff;color:#0d6efd}.profile-panel-title.dark span{color:#212529}
.form-check-wrap{display:flex;align-items:center;gap:.55rem}.form-check-wrap .form-check-input{margin:0}.sticky-save{position:sticky;bottom:0;padding:1rem;background:rgba(246,248,251,.94);backdrop-filter:blur(6px);z-index:5}.asc-site-footer{background:var(--asc-primary);color:var(--asc-secondary);border-top:5px solid var(--asc-accent)}
.asc-content-image{height:190px;object-fit:cover}.gallery-card{margin:0;height:100%;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 3px 12px rgba(15,23,42,.12)}.gallery-card img{width:100%;height:180px;object-fit:cover}.gallery-card figcaption{padding:.65rem;font-size:.9rem}.sponsor-card{width:150px;min-height:120px;padding:1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;background:#fff;border-radius:12px;box-shadow:0 3px 12px rgba(15,23,42,.1);text-decoration:none;color:#222;text-align:center}.sponsor-card img{max-width:110px;max-height:65px;object-fit:contain}
@media(max-width:576px){.asc-cover .container{flex-direction:column;text-align:center}.asc-logo{width:96px;height:96px}.asc-cover{min-height:300px}}

/* Mini-site ASC moderne V1.52 */
.asc-public{background:linear-gradient(180deg,#f3f7fb 0,#fff 48rem);color:#172033;overflow:hidden}.asc-public .asc-cover{position:relative;min-height:430px;background:linear-gradient(120deg,var(--asc-primary),#102b44);background-size:cover;background-position:center}.asc-public .asc-cover:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,rgba(3,12,22,.30));pointer-events:none}.asc-hero-content{position:relative;z-index:1;min-height:430px}.asc-public .asc-logo{width:150px;height:150px;border-radius:32px;border:6px solid rgba(255,255,255,.92);box-shadow:0 24px 55px rgba(0,0,0,.32);transform:rotate(-2deg)}.asc-hero-copy{max-width:760px;text-shadow:0 2px 16px rgba(0,0,0,.28)}.asc-eyebrow{display:inline-flex;letter-spacing:.18em;font-size:.72rem;font-weight:800;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:.48rem .8rem;margin-bottom:1rem;backdrop-filter:blur(8px)}.asc-verified-badge,.asc-location-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.55rem .85rem;font-size:.82rem;font-weight:700}.asc-verified-badge{background:var(--asc-accent);color:#101820}.asc-location-badge{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(8px)}
.asc-mini-nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.93);border-bottom:1px solid rgba(15,23,42,.08);box-shadow:0 8px 28px rgba(15,23,42,.08);backdrop-filter:blur(14px)}.asc-mini-nav-inner{display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none;padding:.65rem 0}.asc-mini-nav-inner::-webkit-scrollbar{display:none}.asc-mini-nav a{white-space:nowrap;color:#243247;text-decoration:none;font-weight:700;font-size:.9rem;padding:.65rem .9rem;border-radius:999px;transition:.2s}.asc-mini-nav a:hover{background:var(--asc-primary);color:#fff;transform:translateY(-1px)}
.asc-quick-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:-1.5rem 0 2rem;position:relative;z-index:3}.asc-quick-stats>div{background:#fff;border:1px solid rgba(15,23,42,.06);border-radius:20px;padding:1.2rem;text-align:center;box-shadow:0 14px 35px rgba(15,23,42,.09)}.asc-quick-stats strong{display:block;font-size:1.8rem;line-height:1;color:var(--asc-primary)}.asc-quick-stats span{display:block;margin-top:.5rem;color:#64748b;font-size:.78rem;font-weight:700}
.asc-public .asc-heading{position:relative;font-weight:850;letter-spacing:-.025em;margin-bottom:1.2rem}.asc-public .asc-heading:after{content:"";display:block;width:54px;height:4px;margin-top:.55rem;border-radius:4px;background:var(--asc-accent)}.asc-public .card{border-radius:20px!important;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.asc-public .card:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(15,23,42,.13)!important}.asc-public .card-body{padding:1.3rem}.asc-public .asc-content-image{height:220px}.asc-public aside>.card{position:sticky;top:78px}.asc-public .gallery-card{border-radius:20px;transition:.25s}.asc-public .gallery-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(15,23,42,.16)}.asc-public .gallery-card img{height:220px}.asc-public .sponsor-card{border-radius:18px;transition:.25s}.asc-public .sponsor-card:hover{transform:translateY(-4px)}.asc-anchor{scroll-margin-top:90px}
@media(max-width:991.98px){.asc-public .asc-cover,.asc-hero-content{min-height:370px}.asc-public .asc-logo{width:125px;height:125px}.asc-quick-stats{grid-template-columns:repeat(2,1fr);margin-top:0}.asc-public aside>.card{position:static}}
@media(max-width:576px){.asc-public .asc-cover,.asc-hero-content{min-height:440px}.asc-public .asc-logo{width:105px;height:105px;border-radius:24px}.asc-public .asc-hero-copy h1{font-size:2rem}.asc-mini-nav-inner{padding:.5rem 0}.asc-mini-nav a{font-size:.82rem;padding:.55rem .75rem}.asc-quick-stats{gap:.65rem}.asc-quick-stats>div{padding:1rem .55rem;border-radius:16px}.asc-quick-stats strong{font-size:1.45rem}.asc-public .asc-content-image{height:200px}}

/* Activités publiques */
.asc-activities{width:100%}.asc-section-kicker{display:block;color:var(--asc-primary);font-size:.7rem;font-weight:900;letter-spacing:.16em;margin-bottom:.35rem}.asc-activity-search{min-width:280px;height:48px;display:flex;align-items:center;gap:.55rem;background:#fff;border:1px solid #dce4ee;border-radius:999px;padding:0 1rem;box-shadow:0 8px 24px rgba(15,23,42,.07);transition:.2s}.asc-activity-search:focus-within{border-color:var(--asc-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--asc-primary) 14%,transparent)}.asc-activity-search span{font-size:1.35rem;color:var(--asc-primary)}.asc-activity-search input{width:100%;border:0;outline:0;background:transparent;color:#172033}.asc-activity-card{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(15,23,42,.06);border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(15,23,42,.09);transition:transform .25s ease,box-shadow .25s ease}.asc-activity-card:hover{transform:translateY(-6px);box-shadow:0 22px 46px rgba(15,23,42,.16)}.asc-activity-card>img,.asc-activity-placeholder{width:100%;height:150px;object-fit:cover}.asc-activity-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,var(--asc-primary),#213d57);color:#fff}.asc-activity-placeholder span{font-size:2.5rem;filter:drop-shadow(0 5px 8px rgba(0,0,0,.25))}.asc-activity-body{display:flex;flex-direction:column;flex:1;padding:1rem}.asc-activity-type{align-self:flex-start;border-radius:999px;padding:.3rem .55rem;background:color-mix(in srgb,var(--asc-primary) 10%,white);color:var(--asc-primary);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.asc-activity-body h3{font-size:1rem;font-weight:800;line-height:1.3;margin:.7rem 0}.asc-activity-meta{display:flex;flex-direction:column;gap:.25rem;color:#64748b;font-size:.75rem;margin-bottom:.65rem}.asc-activity-body p{font-size:.82rem;color:#4b5563;margin:auto 0 0}.activity-item[hidden]{display:none!important}
@media(max-width:767.98px){.asc-activity-search{width:100%;min-width:0}.asc-activity-card>img,.asc-activity-placeholder{height:190px}}

/* Portail national Sénégal */
.national-hero{background:linear-gradient(120deg,#006b3f 0%,#07834f 58%,#f5c400 58%,#f5c400 100%);color:#fff}
.national-stat{min-height:150px;background:rgba(255,255,255,.94);color:#1f2937;border-radius:22px;padding:1.5rem;display:flex;flex-direction:column;justify-content:center;text-align:center;box-shadow:0 14px 30px rgba(0,0,0,.15)}
.national-stat strong{font-size:3rem;line-height:1;color:#006b3f}.national-stat span{margin-top:.5rem;font-weight:600}
.portal-title{font-weight:800;color:#12372a}.portal-ad-slot{min-height:120px;border:2px dashed #9ca3af;border-radius:14px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#6b7280;padding:1rem}.portal-ad-slot span{font-size:.7rem;letter-spacing:.18em}.portal-ad-slot strong{font-size:.9rem;margin-top:.35rem}
.portal-live-ad{min-height:120px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:14px;overflow:hidden}.portal-live-ad img{display:block;width:min(100%,970px);height:auto;max-height:120px;object-fit:cover}
.region-tile{height:100%;min-height:120px;background:#fff;border-left:6px solid #f5c400;border-radius:14px;padding:1rem;display:flex;flex-direction:column;box-shadow:0 4px 14px rgba(15,23,42,.08)}.region-tile span{font-weight:900;color:#006b3f}.region-tile strong{font-size:1.1rem;margin-top:.3rem}.region-tile small{margin-top:auto;color:#6b7280}
.portal-card-image{width:100%;height:205px;object-fit:cover}.empty-section{padding:2rem;border:1px dashed #cbd5e1;border-radius:14px;text-align:center;color:#64748b;background:#fff}
@media(max-width:576px){.national-hero{background:linear-gradient(160deg,#006b3f 0%,#07834f 78%,#f5c400 78%)}.portal-ad-slot{min-height:100px}.portal-card-image{height:180px}}

/* Le bloc d'informations reste en haut à droite ; tout le contenu éditorial
   suivant récupère ensuite la largeur complète disponible. */
@media(min-width:992px){.asc-public .container>.row>aside.col-lg-4{order:2}.asc-full-content{order:3}}
.asc-full-content{width:100%}

/* Publications du mini-site : composition éditoriale moderne */
.asc-publications{width:100%}.asc-publications-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem}.asc-publication-search{width:min(100%,390px);height:48px;display:flex;align-items:center;gap:.65rem;background:#fff;border:1px solid #dce4ee;border-radius:999px;padding:0 1rem;box-shadow:0 8px 24px rgba(15,23,42,.07);transition:.2s}.asc-publication-search:focus-within{border-color:var(--asc-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--asc-primary) 14%,transparent)}.asc-publication-search>span:first-child{font-size:1.3rem;color:var(--asc-primary)}.asc-publication-search input{width:100%;border:0;outline:0;background:transparent;color:#172033}.pub-search-loader{width:16px;height:16px;border:2px solid #dce4ee;border-top-color:var(--asc-primary);border-radius:50%;display:none;animation:asc-spin .65s linear infinite}.pub-search-loader.is-visible{display:block}@keyframes asc-spin{to{transform:rotate(360deg)}}
.asc-publication-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(205px,auto);gap:14px}.asc-publication-card{position:relative;display:grid;grid-template-columns:42% 58%;min-width:0;overflow:hidden;background:#fff;border:1px solid rgba(15,23,42,.07);border-radius:18px;box-shadow:0 10px 28px rgba(15,23,42,.09);transition:transform .25s ease,box-shadow .25s ease}.asc-publication-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(15,23,42,.15)}.asc-publication-card.is-featured{grid-column:span 2;grid-row:span 2;display:block;min-height:424px}.asc-publication-card:nth-child(n+6){grid-template-columns:1fr;display:block}.asc-publication-card>img,.asc-publication-placeholder{width:100%;height:100%;min-height:205px;object-fit:cover}.asc-publication-card:not(.is-featured)>img,.asc-publication-card:not(.is-featured)>.asc-publication-placeholder{max-height:225px}.asc-publication-card:nth-child(n+6)>img,.asc-publication-card:nth-child(n+6)>.asc-publication-placeholder{height:170px;min-height:170px}.asc-publication-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,var(--asc-primary),#1e496a);color:#fff;font-weight:900;letter-spacing:.18em}.asc-publication-body{min-width:0;padding:1rem;display:flex;flex-direction:column;justify-content:center}.asc-publication-label{color:#07834f;font-size:.66rem;font-weight:900;letter-spacing:.08em}.asc-publication-body h3{font-size:.96rem;line-height:1.25;font-weight:850;margin:.45rem 0;color:#10283d}.asc-publication-body p{font-size:.78rem;line-height:1.45;color:#667085;margin:0 0 .7rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.asc-publication-body time{font-size:.7rem;color:#64748b;margin-top:auto}.asc-publication-card.is-featured>img,.asc-publication-card.is-featured>.asc-publication-placeholder{position:absolute;inset:0;height:100%}.asc-publication-card.is-featured:after{content:"";position:absolute;inset:25% 0 0;background:linear-gradient(transparent,rgba(2,18,30,.94))}.asc-publication-card.is-featured .asc-publication-body{position:absolute;z-index:1;left:0;right:0;bottom:0;padding:1.6rem;color:#fff}.asc-publication-card.is-featured .asc-publication-label{align-self:flex-start;background:#07834f;color:#fff;border-radius:7px;padding:.4rem .6rem}.asc-publication-card.is-featured h3{font-size:1.5rem;color:#fff;margin:.75rem 0 .4rem}.asc-publication-card.is-featured p{color:rgba(255,255,255,.82)}.asc-publication-card.is-featured time{color:#fff}.pub-item[hidden]{display:none!important}.asc-load-more{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem 1rem;border:1px solid color-mix(in srgb,var(--asc-primary) 35%,#dce4ee);border-radius:999px;background:#fff;color:var(--asc-primary);font-size:.78rem;font-weight:750;box-shadow:0 5px 16px rgba(15,23,42,.06);transition:.2s}.asc-load-more:hover{background:var(--asc-primary);color:#fff;transform:translateY(-1px)}.asc-load-more:disabled{opacity:.55;cursor:wait}.asc-load-more[hidden]{display:none!important}
@media(max-width:1199.98px){.asc-publication-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.asc-publication-card.is-featured{grid-column:span 2}.asc-publication-card:nth-child(n+6){display:grid;grid-template-columns:42% 58%}.asc-publication-card:nth-child(n+6)>img,.asc-publication-card:nth-child(n+6)>.asc-publication-placeholder{height:100%;min-height:205px}}
@media(max-width:767.98px){.asc-publications-head{align-items:stretch;flex-direction:column}.asc-publication-search{width:100%}.asc-publication-grid{grid-template-columns:1fr}.asc-publication-card,.asc-publication-card:nth-child(n+6){display:block;grid-template-columns:1fr}.asc-publication-card.is-featured{grid-column:auto;grid-row:auto;min-height:390px}.asc-publication-card:not(.is-featured)>img,.asc-publication-card:not(.is-featured)>.asc-publication-placeholder,.asc-publication-card:nth-child(n+6)>img,.asc-publication-card:nth-child(n+6)>.asc-publication-placeholder{height:190px;min-height:190px}.asc-publication-body{min-height:155px}}

/* Cartes cliquables et page détaillée des publications */
.asc-publication-card[role="link"]{cursor:pointer}.asc-publication-card[role="link"]:focus-visible{outline:4px solid color-mix(in srgb,var(--asc-secondary) 70%,white);outline-offset:3px}.asc-publication-read{display:inline-flex;margin-top:.55rem;color:var(--asc-primary);font-size:.72rem;font-weight:800}.asc-publication-card.is-featured .asc-publication-read{color:#fff}.asc-article-page{min-height:100vh;background:linear-gradient(180deg,#f3f7fb 0,#fff 420px);color:#132536}.asc-article-top{background:var(--asc-primary);color:#fff;padding:1rem 0}.asc-article-top .container{display:flex;align-items:center;justify-content:space-between;gap:1rem}.asc-article-back{color:#fff;text-decoration:none;font-weight:700}.asc-article-back:hover{color:var(--asc-secondary)}.asc-article-brand{display:flex;align-items:center;gap:.65rem;font-weight:800}.asc-article-brand img{width:40px;height:40px;border-radius:50%;object-fit:cover;background:#fff;border:2px solid rgba(255,255,255,.75)}.asc-article-container{max-width:980px;padding-top:4rem;padding-bottom:5rem}.asc-article-header{text-align:center;max-width:850px;margin:0 auto 2.2rem}.asc-article-category{display:inline-flex;background:color-mix(in srgb,var(--asc-primary) 10%,white);color:var(--asc-primary);border-radius:999px;padding:.45rem .75rem;font-size:.72rem;font-weight:900;letter-spacing:.09em}.asc-article-header h1{font-size:clamp(2rem,5vw,4rem);line-height:1.05;font-weight:900;letter-spacing:-.035em;color:var(--asc-primary);margin:1rem 0}.asc-article-meta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.55rem;color:#64748b;font-size:.88rem}.asc-article-meta a{color:var(--asc-primary);font-weight:750;text-decoration:none}.asc-article-hero{margin:0 0 2.5rem;border-radius:28px;overflow:hidden;box-shadow:0 24px 65px rgba(15,23,42,.18)}.asc-article-hero img{display:block;width:100%;max-height:620px;object-fit:cover}.asc-article-lead{max-width:780px;margin:0 auto 1.7rem;font-size:1.28rem;line-height:1.65;font-weight:600;color:#34485a}.asc-article-content{max-width:780px;margin:0 auto;font-size:1.08rem;line-height:1.9;color:#344054}.asc-article-secondary{max-width:780px;margin:2.5rem auto 0}.asc-article-secondary img{width:100%;border-radius:22px;box-shadow:0 15px 40px rgba(15,23,42,.13)}.asc-article-footer{max-width:780px;margin:3rem auto 0;padding-top:2rem;border-top:1px solid #e3e9ef;display:flex;flex-wrap:wrap;gap:.75rem}.asc-article-footer .btn-primary{background:var(--asc-primary);border-color:var(--asc-primary)}
@media(max-width:767.98px){.asc-article-top .container{align-items:flex-start;flex-direction:column-reverse}.asc-article-container{padding-top:2.5rem}.asc-article-header{text-align:left}.asc-article-meta{justify-content:flex-start}.asc-article-hero{border-radius:18px;margin-inline:-.25rem}.asc-article-lead{font-size:1.1rem}.asc-article-content{font-size:1rem;line-height:1.75}}

/* Projets partagés : univers collaboration et financement */
.asc-shared-projects{padding:2rem;border-radius:28px;background:radial-gradient(circle at 100% 0,rgba(124,58,237,.13),transparent 32%),linear-gradient(145deg,#f4f7ff,#fff);border:1px solid #e5e9ff}.shared-projects-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem}.shared-project-search,.mutual-aid-search{width:min(100%,370px);height:48px;display:flex;align-items:center;gap:.65rem;border:1px solid #d9def3;border-radius:999px;background:#fff;padding:0 1rem;box-shadow:0 8px 22px rgba(50,45,110,.08)}.shared-project-search input,.mutual-aid-search input{width:100%;border:0;outline:0;background:transparent}.shared-project-search i,.mutual-aid-search i{display:none;width:15px;height:15px;border:2px solid #dfe3ee;border-top-color:#6d4aff;border-radius:50%;animation:asc-spin .65s linear infinite}.shared-project-search i.is-visible,.mutual-aid-search i.is-visible{display:block}.shared-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.shared-project-card{display:flex;flex-direction:column;overflow:hidden;border-radius:20px;background:#fff;color:#1f2a44;text-decoration:none;border:1px solid #e7e9f6;box-shadow:0 10px 28px rgba(46,43,90,.09);transition:.25s}.shared-project-card:hover{color:#1f2a44;transform:translateY(-6px);box-shadow:0 22px 45px rgba(46,43,90,.16)}.shared-project-card.is-lead{grid-column:span 2;display:grid;grid-template-columns:46% 54%}.shared-project-card>img,.shared-project-visual{width:100%;height:210px;object-fit:cover}.shared-project-card.is-lead>img,.shared-project-card.is-lead>.shared-project-visual{height:100%;min-height:340px}.shared-project-visual{display:grid;place-items:center;font-size:4rem;color:#fff;background:linear-gradient(135deg,#253b80,#805ad5)}.shared-project-body{display:flex;flex-direction:column;padding:1.15rem;min-width:0}.shared-project-top,.shared-project-money,.shared-project-foot{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.shared-project-top span{background:#eeeaff;color:#6041b6;border-radius:999px;padding:.3rem .55rem;font-size:.65rem;font-weight:850;text-transform:uppercase}.shared-project-top time{font-size:.68rem;color:#7b8497}.shared-project-body h3{font-size:1.08rem;line-height:1.25;font-weight:850;margin:.75rem 0 .5rem}.shared-project-body p{color:#687185;font-size:.8rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.shared-project-money{margin-top:auto;font-size:.72rem;color:#687185}.shared-project-money strong{color:#6843c2}.shared-project-progress{height:7px;margin:.45rem 0 .7rem;background:#ececf6;border-radius:99px;overflow:hidden}.shared-project-progress i{display:block;height:100%;background:linear-gradient(90deg,#4d65d8,#9d54d8);border-radius:inherit}.shared-project-foot{font-size:.7rem;color:#687185}.shared-project-foot b{color:#5238a6}.project-load-more{border-color:#afa4df;color:#563aa8}
/* Ressources et entraide : tableau d'offres et de recherches */
.asc-mutual-aid{border-radius:28px;overflow:hidden;border:1px solid #e1ebe7;background:#fff;box-shadow:0 18px 50px rgba(14,65,48,.07)}.mutual-aid-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:2rem;background:linear-gradient(120deg,#effcf6,#fff8ec)}.mutual-aid-symbols{display:flex;gap:.6rem;flex-wrap:wrap}.mutual-aid-symbols span{padding:.5rem .7rem;border-radius:9px;background:#fff;font-size:.68rem;font-weight:900;box-shadow:0 5px 14px rgba(15,23,42,.08)}.mutual-aid-symbols span:first-child{color:#087c55}.mutual-aid-symbols span:last-child{color:#c86612}.mutual-aid-tools{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 2rem;border-bottom:1px solid #eef1ef}.mutual-aid-filters{display:flex;background:#f3f6f5;border-radius:999px;padding:4px}.mutual-aid-filters button{border:0;background:transparent;border-radius:999px;padding:.55rem .9rem;font-size:.75rem;font-weight:750;color:#60706a}.mutual-aid-filters button.active{background:#173f35;color:#fff;box-shadow:0 4px 10px rgba(23,63,53,.2)}.mutual-aid-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1.5rem 2rem 0}.mutual-aid-card{display:grid;grid-template-columns:36% 64%;min-height:205px;overflow:hidden;border-radius:18px;background:#fff;color:#1b2d28;text-decoration:none;border:1px solid #e4ebe8;box-shadow:0 9px 25px rgba(15,51,40,.08);transition:.25s}.mutual-aid-card:hover{color:#1b2d28;transform:translateY(-5px);box-shadow:0 20px 40px rgba(15,51,40,.14)}.mutual-aid-card.is-offer{border-top:4px solid #12a273}.mutual-aid-card.is-need{border-top:4px solid #ee8b2d}.mutual-aid-media{position:relative;min-height:201px;background:#e9f8f2;overflow:hidden;display:grid;place-items:center}.is-need .mutual-aid-media{background:#fff2e4}.mutual-aid-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.mutual-aid-media>span{font-size:3.5rem;font-weight:200;color:#15936c}.is-need .mutual-aid-media>span{color:#df7b1e}.mutual-aid-media b{position:absolute;left:.6rem;bottom:.6rem;border-radius:7px;padding:.35rem .5rem;background:#087c55;color:#fff;font-size:.62rem;letter-spacing:.06em}.is-need .mutual-aid-media b{background:#d86d11}.mutual-aid-body{display:flex;flex-direction:column;padding:1rem}.mutual-aid-meta,.mutual-aid-foot{display:flex;align-items:center;justify-content:space-between;gap:.5rem;color:#728078;font-size:.68rem}.mutual-aid-body h3{font-size:1rem;font-weight:850;line-height:1.3;margin:.65rem 0 .4rem}.mutual-aid-body p{font-size:.78rem;color:#64716c;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.mutual-aid-foot{margin-top:auto}.mutual-aid-foot strong{color:#087c55}.is-need .mutual-aid-foot strong{color:#d86d11}.resource-load-more{margin-bottom:1.5rem}
/* Pages détaillées des projets et annonces */
.asc-project-page,.asc-resource-page{min-height:100vh;background:#f5f7fb;color:#1c2940}.project-detail-nav,.resource-detail-nav{background:#1f2f62;color:#fff}.resource-detail-nav{background:#173f35}.project-detail-nav .container,.resource-detail-nav .container{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.project-detail-nav a,.resource-detail-nav a{color:#fff;text-decoration:none;font-weight:750}.project-detail-wrap,.resource-detail-wrap{max-width:1120px;padding-top:3rem;padding-bottom:5rem}.project-detail-header,.resource-detail-hero{display:grid;grid-template-columns:1.2fr .8fr;overflow:hidden;border-radius:28px;background:linear-gradient(135deg,#253b80,#7852b8);color:#fff;box-shadow:0 25px 60px rgba(35,45,100,.2)}.project-detail-header>div:first-child,.resource-detail-copy{padding:clamp(2rem,5vw,4rem)}.project-detail-kicker,.resource-nature-badge{display:inline-flex;border-radius:999px;padding:.45rem .7rem;background:rgba(255,255,255,.14);font-size:.68rem;font-weight:900;letter-spacing:.08em}.project-detail-header h1,.resource-detail-hero h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.06;font-weight:900;margin:1rem 0}.project-detail-header p,.resource-detail-hero p{font-size:1.05rem;line-height:1.6;opacity:.86}.project-detail-date,.resource-detail-hero time{font-size:.78rem;opacity:.7}.project-detail-header>img,.resource-detail-hero>img{width:100%;height:100%;min-height:420px;object-fit:cover}.project-detail-symbol,.resource-detail-icon{display:grid;place-items:center;min-height:420px;font-size:8rem;background:rgba(255,255,255,.08)}.project-finance-panel{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:-35px 2rem 2.5rem;padding:1.5rem 2rem;border-radius:20px;background:#fff;box-shadow:0 18px 45px rgba(38,44,89,.15)}.project-finance-panel>div:not(.project-progress){display:flex;flex-direction:column}.project-finance-panel span{font-size:.72rem;color:#738097}.project-finance-panel strong{font-size:1.1rem}.project-progress{grid-column:1/-1;height:8px;background:#e9eaf4;border-radius:99px;overflow:hidden}.project-progress span{display:block;height:100%;background:linear-gradient(90deg,#4865dc,#9e56d9)}.project-finance-panel small{grid-column:1/-1;color:#6c7384}.project-detail-grid,.resource-detail-layout{display:grid;grid-template-columns:1fr 340px;gap:2rem}.project-detail-grid>section,.resource-description{padding:2rem;border-radius:22px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.06);line-height:1.8}.project-detail-grid h2,.resource-description h2{font-size:1.2rem;font-weight:850;color:#263875;margin:0 0 1rem}.project-detail-grid h2:not(:first-child){margin-top:2rem}.project-detail-grid aside,.resource-facts{display:flex;flex-direction:column;gap:.8rem}.project-detail-grid aside>div,.resource-facts>div{padding:1.2rem;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.06)}.project-detail-grid aside span,.resource-facts span{display:block;font-size:.7rem;color:#778295;margin-bottom:.3rem}.project-help{border-left:4px solid #8b5bd2}.project-help p{margin:0}.resource-detail-hero{background:linear-gradient(135deg,#087b5b,#173f35)}.asc-resource-page.is-need .resource-detail-hero{background:linear-gradient(135deg,#bd5b0b,#e08a2f)}.resource-category{display:block;margin-top:1rem;font-size:.78rem;font-weight:800;opacity:.8}.resource-description h3{font-size:1rem;margin-top:2rem}.resource-conditions{margin-top:2rem;padding:1.3rem;border-radius:14px;background:#f1f8f5;border-left:4px solid #15936c}.is-need .resource-conditions{background:#fff6ec;border-color:#df7b1e}.resource-contact{border-left:4px solid #15936c}.is-need .resource-contact{border-color:#df7b1e}.asc-resource-page .asc-article-footer .btn-primary{background:#087b5b;border-color:#087b5b}.asc-resource-page.is-need .asc-article-footer .btn-primary{background:#c76514;border-color:#c76514}
@media(max-width:991.98px){.shared-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shared-project-card.is-lead{grid-column:span 2}.project-detail-grid,.resource-detail-layout{grid-template-columns:1fr}.mutual-aid-card{grid-template-columns:42% 58%}}
@media(max-width:767.98px){.asc-shared-projects{padding:1.25rem}.shared-projects-head,.mutual-aid-banner,.mutual-aid-tools{align-items:stretch;flex-direction:column}.shared-project-search,.mutual-aid-search{width:100%}.shared-project-grid,.mutual-aid-grid{grid-template-columns:1fr}.shared-project-card.is-lead{grid-column:auto;display:flex}.shared-project-card.is-lead>img,.shared-project-card.is-lead>.shared-project-visual{height:220px;min-height:220px}.mutual-aid-tools{padding:1rem 1.25rem}.mutual-aid-grid{padding:1.25rem 1.25rem 0}.mutual-aid-filters{align-self:flex-start}.mutual-aid-card{grid-template-columns:1fr}.mutual-aid-media{min-height:210px}.project-detail-header,.resource-detail-hero{grid-template-columns:1fr}.project-detail-header>img,.resource-detail-hero>img,.project-detail-symbol,.resource-detail-icon{min-height:260px;max-height:360px}.project-finance-panel{grid-template-columns:1fr;margin:-20px .75rem 2rem;padding:1.25rem}.project-detail-nav .container,.resource-detail-nav .container{align-items:flex-start;flex-direction:column;padding-block:.8rem}}

/* Signature visuelle automatique propre à chaque mini-site */
.asc-public{position:relative;isolation:isolate;overflow:hidden;background:#fff}.asc-public>*:not(.asc-site-signature){position:relative;z-index:1}.asc-site-signature{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;opacity:.72}.asc-site-signature:before{content:attr(data-mark);position:absolute;top:690px;left:var(--asc-visual-shift);transform:translateX(-50%) rotate(var(--asc-visual-tilt));font-size:clamp(8rem,22vw,24rem);line-height:1;font-weight:950;letter-spacing:-.08em;color:color-mix(in srgb,var(--asc-primary) 4%,transparent);white-space:nowrap}.asc-site-signature:after{content:"⚽";position:absolute;top:1850px;right:4%;font-size:clamp(8rem,15vw,15rem);filter:grayscale(1);opacity:.025;transform:rotate(calc(var(--asc-visual-tilt) * -1))}.asc-site-signature i{position:absolute;display:block;width:75vw;height:220px;left:-12vw;border-radius:45% 55% 50% 50%;background:color-mix(in srgb,var(--asc-primary) 5%,transparent);transform:rotate(var(--asc-visual-tilt))}.asc-site-signature i:nth-child(1){top:1080px}.asc-site-signature i:nth-child(2){top:2650px;left:auto;right:-18vw;background:color-mix(in srgb,var(--asc-secondary) 7%,transparent);transform:rotate(calc(var(--asc-visual-tilt) * -.65))}.asc-site-signature i:nth-child(3){top:4100px;width:55vw;height:340px;background:color-mix(in srgb,var(--asc-accent) 5%,transparent)}.asc-visual-2 .asc-site-signature i{border-radius:18% 82% 28% 72%}.asc-visual-3 .asc-site-signature i{height:320px;border-radius:50% 20% 60% 30%}.asc-visual-4 .asc-site-signature i{width:55vw;border-radius:50%;transform:rotate(35deg)}.asc-visual-4 .asc-site-signature i:nth-child(2){width:85vw}.asc-visual-5 .asc-site-signature i{height:120px;border-radius:999px;transform:skewX(-24deg) rotate(var(--asc-visual-tilt))}.asc-visual-6 .asc-site-signature i{width:42vw;height:420px;border-radius:38% 62% 68% 32%}.asc-visual-6 .asc-site-signature:before{writing-mode:vertical-rl;top:850px;left:7%;font-size:13rem}
/* Effectif présenté sur un terrain de football */
.asc-season-squad{position:relative;padding:clamp(1.25rem,3vw,2.2rem);border-radius:32px;background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--asc-accent) 18%,transparent),transparent 34%),linear-gradient(145deg,#081711,#102a20);box-shadow:0 28px 70px rgba(5,25,16,.25);overflow:hidden}.asc-season-squad:before{content:"";position:absolute;inset:-40% auto auto -12%;width:430px;height:430px;border:1px solid rgba(255,255,255,.05);border-radius:50%;box-shadow:0 0 0 55px rgba(255,255,255,.018),0 0 0 110px rgba(255,255,255,.014)}.squad-section-head{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:1.6rem;color:#fff}.squad-section-head .asc-heading{color:#fff}.squad-section-head .text-muted{color:rgba(255,255,255,.62)!important}.squad-season-tabs{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem}.squad-season-tabs button{border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.72);padding:.48rem .8rem;font-size:.72rem;font-weight:800;transition:.2s}.squad-season-tabs button:hover,.squad-season-tabs button.active{background:var(--asc-accent);border-color:var(--asc-accent);color:#102218;box-shadow:0 7px 20px color-mix(in srgb,var(--asc-accent) 30%,transparent)}.football-squad-panel{display:none}.football-squad-panel.active{display:block;animation:squad-in .45s ease both}@keyframes squad-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.football-pitch{position:relative;isolation:isolate;min-height:720px;padding:3.5rem 1rem 2.5rem;border:5px solid rgba(255,255,255,.82);border-radius:24px;overflow:hidden;background:repeating-linear-gradient(90deg,#168044 0,#168044 12.5%,#13763e 12.5%,#13763e 25%);box-shadow:inset 0 0 70px rgba(0,0,0,.25),0 15px 35px rgba(0,0,0,.2)}.football-pitch:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.07),transparent 35%,rgba(0,0,0,.09))}.pitch-markings i{position:absolute;z-index:-1;display:block;border:3px solid rgba(255,255,255,.63)}.pitch-markings i:nth-child(1){left:0;right:0;top:50%;border-width:3px 0 0}.pitch-markings i:nth-child(2){width:190px;height:190px;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%)}.pitch-markings i:nth-child(2):after{content:"";position:absolute;width:10px;height:10px;left:50%;top:50%;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}.pitch-markings i:nth-child(3){width:52%;height:115px;left:24%;bottom:-4px;border-radius:18px 18px 0 0}.pitch-season{position:absolute;top:1rem;left:50%;transform:translateX(-50%);padding:.38rem .8rem;border-radius:999px;background:rgba(0,0,0,.22);color:rgba(255,255,255,.88);font-size:.68rem;font-weight:900;letter-spacing:.12em}.squad-line{position:relative;z-index:2;margin-bottom:1.25rem}.squad-line-title{width:max-content;margin:0 auto .55rem;padding:.3rem .65rem;border-radius:999px;background:rgba(3,32,17,.5);backdrop-filter:blur(8px);color:rgba(255,255,255,.72);font-size:.62rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.squad-players{display:flex;align-items:flex-start;justify-content:space-evenly;flex-wrap:wrap;gap:1rem}.football-player{width:150px;text-align:center;filter:drop-shadow(0 12px 15px rgba(0,0,0,.22));transition:.25s}.football-player:hover{transform:translateY(-7px) scale(1.025)}.player-ball{position:relative;width:94px;height:94px;margin:0 auto -15px;border:7px solid #f8faf9;border-radius:50%;background:#f8faf9;box-shadow:0 0 0 3px rgba(6,35,20,.35),0 10px 22px rgba(0,0,0,.3);overflow:hidden}.player-ball:before{content:"";position:absolute;z-index:3;top:3px;left:50%;width:17px;height:16px;transform:translateX(-50%);background:rgba(12,28,20,.82);clip-path:polygon(50% 0,100% 38%,82% 100%,18% 100%,0 38%)}.player-ball-seams{position:absolute;z-index:2;inset:0;border-radius:50%;background:conic-gradient(from 18deg,transparent 0 13%,rgba(15,28,21,.22) 13% 14%,transparent 14% 33%,rgba(15,28,21,.2) 33% 34%,transparent 34% 53%,rgba(15,28,21,.2) 53% 54%,transparent 54% 73%,rgba(15,28,21,.2) 73% 74%,transparent 74%);pointer-events:none}.player-ball img{position:absolute;inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);border-radius:50%;object-fit:cover}.player-ball>span{position:absolute;inset:6px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--asc-primary),#193d2e);color:#fff;font-size:1.45rem;font-weight:900}.player-ball>b{position:absolute;z-index:4;right:0;bottom:5px;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--asc-accent);color:#14251c;font-size:.72rem;box-shadow:0 3px 8px rgba(0,0,0,.25)}.football-player-card{position:relative;padding:1.3rem .65rem .65rem;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(4,34,20,.74);backdrop-filter:blur(8px);color:#fff}.football-player-card h3{font-size:.82rem;font-weight:900;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.football-player-card>strong{display:block;color:var(--asc-accent);font-size:.67rem;margin:.2rem 0}.football-player-card>div{display:flex;flex-wrap:wrap;justify-content:center;gap:.2rem}.football-player-card>div span{font-size:.55rem;color:rgba(255,255,255,.67)}.football-player-card>div span+span:before{content:"·";margin-right:.2rem}.player-status{display:inline-flex;margin-top:.4rem;padding:.2rem .42rem;border-radius:999px;background:rgba(255,255,255,.1);font-size:.52rem;color:rgba(255,255,255,.75)}.player-status-disponible{background:#c9ff5f;color:#193114;font-weight:850}.player-status-non_disponible{background:rgba(244,93,93,.24);color:#ffd2d2}.squad-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.25rem;color:rgba(255,255,255,.65);font-size:.75rem}.squad-footer a{color:var(--asc-accent);font-weight:850;text-decoration:none}
@media(max-width:991.98px){.football-pitch{min-height:680px}.football-player{width:135px}.player-ball{width:86px;height:86px}}
@media(max-width:767.98px){.asc-site-signature:before{font-size:9rem}.squad-section-head,.squad-footer{align-items:stretch;flex-direction:column}.squad-season-tabs{justify-content:flex-start}.football-pitch{min-height:620px;padding-inline:.25rem;border-width:3px}.squad-players{gap:.65rem .2rem}.football-player{width:112px}.player-ball{width:76px;height:76px;border-width:5px}.football-player-card{padding-inline:.35rem}.football-player-card h3{font-size:.7rem}.football-player-card>strong{font-size:.58rem}.football-player-card>div span{font-size:.48rem}.pitch-markings i:nth-child(2){width:140px;height:140px}}
.football-pitch:before{z-index:0}.pitch-markings i{z-index:1}.pitch-season{z-index:2}

/* Galerie immersive : image à la une, mosaïque et visionneuse */
.asc-gallery-showcase{position:relative;padding-top:1rem}.gallery-showcase-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.gallery-photo-count{display:flex;align-items:baseline;gap:.35rem;padding:.55rem .8rem;border:1px solid #e1e6ec;border-radius:999px;background:#fff;color:#6a7582;font-size:.72rem;box-shadow:0 7px 20px rgba(15,23,42,.06)}.gallery-photo-count b{font-size:1rem;color:var(--asc-primary)}.gallery-showcase-layout{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(300px,1fr);gap:14px;padding:14px;border-radius:30px;background:linear-gradient(145deg,color-mix(in srgb,var(--asc-primary) 96%,#07131d),#07131d);box-shadow:0 28px 65px rgba(8,25,38,.22)}.gallery-main{position:relative;min-height:560px;margin:0;overflow:hidden;border-radius:20px;background:#08131c;cursor:zoom-in}.gallery-main>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .18s ease,transform .7s ease}.gallery-main:hover>img{transform:scale(1.025)}.gallery-main>img.is-changing{opacity:.25}.gallery-main-shade{position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(2,12,20,.92))}.gallery-main figcaption{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:clamp(1.3rem,4vw,2.4rem);color:#fff}.gallery-main figcaption>span{display:inline-flex;padding:.38rem .55rem;border-radius:7px;background:var(--asc-accent);color:#18251e;font-size:.62rem;font-weight:950;letter-spacing:.08em}.gallery-main figcaption h3{font-size:clamp(1.45rem,3vw,2.5rem);font-weight:900;line-height:1.1;margin:.8rem 0 .35rem}.gallery-main figcaption p{max-width:700px;margin:0;color:rgba(255,255,255,.72)}.gallery-expand{position:absolute;z-index:3;top:1rem;right:1rem;width:45px;height:45px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(3,17,27,.5);backdrop-filter:blur(8px);color:#fff;font-size:1.2rem}.gallery-thumbnails{height:560px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:170px;gap:10px;overflow-y:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:var(--asc-accent) rgba(255,255,255,.1)}.gallery-thumb{position:relative;overflow:hidden;border:2px solid transparent;border-radius:15px;background:#13232f;padding:0;color:#fff;text-align:left;transition:.22s}.gallery-thumb:hover,.gallery-thumb.active{border-color:var(--asc-accent);transform:translateY(-2px)}.gallery-thumb.active{box-shadow:0 0 0 3px color-mix(in srgb,var(--asc-accent) 22%,transparent)}.gallery-thumb img{width:100%;height:100%;object-fit:cover;opacity:.82;transition:.25s}.gallery-thumb:hover img,.gallery-thumb.active img{opacity:1;transform:scale(1.035)}.gallery-thumb:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(1,10,16,.88))}.gallery-thumb span{position:absolute;z-index:1;left:.65rem;right:.65rem;bottom:.55rem;font-size:.68rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gallery-lightbox[hidden]{display:none}.gallery-lightbox{position:fixed;z-index:99999;inset:0;display:grid;place-items:center;background:rgba(1,7,12,.94);backdrop-filter:blur(12px);padding:4.5rem 6rem 3rem}.gallery-lightbox figure{max-width:min(1200px,90vw);max-height:82vh;margin:0;text-align:center;color:#fff}.gallery-lightbox figure img{display:block;max-width:100%;max-height:74vh;margin:auto;border-radius:12px;object-fit:contain;box-shadow:0 25px 80px rgba(0,0,0,.5)}.gallery-lightbox figcaption{padding-top:.8rem;color:rgba(255,255,255,.78)}.gallery-lightbox button{position:absolute;display:grid;place-items:center;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;backdrop-filter:blur(8px)}.gallery-lightbox-close{top:1.2rem;right:1.2rem;width:48px;height:48px;font-size:2rem}.gallery-lightbox-prev,.gallery-lightbox-next{top:50%;width:54px;height:54px;font-size:2.5rem;transform:translateY(-50%)}.gallery-lightbox-prev{left:1.5rem}.gallery-lightbox-next{right:1.5rem}.gallery-lightbox-counter{position:absolute;top:1.5rem;left:50%;transform:translateX(-50%);color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.1em}.gallery-open{overflow:hidden}.gallery-open .asc-gallery-showcase{z-index:9999!important}
@media(max-width:991.98px){.gallery-showcase-layout{grid-template-columns:1fr}.gallery-main{min-height:500px}.gallery-thumbnails{height:auto;display:flex;overflow-x:auto;overflow-y:hidden;padding:0 0 5px}.gallery-thumb{flex:0 0 170px;height:125px}.gallery-lightbox{padding-inline:4rem}}
@media(max-width:767.98px){.gallery-showcase-head{align-items:flex-start;flex-direction:column}.gallery-showcase-layout{margin-inline:-.25rem;padding:8px;border-radius:22px}.gallery-main{min-height:430px;border-radius:16px}.gallery-main figcaption{padding:1.2rem}.gallery-main figcaption h3{font-size:1.45rem}.gallery-main figcaption p{font-size:.78rem}.gallery-thumb{flex-basis:135px;height:105px}.gallery-lightbox{padding:4rem .75rem 2rem}.gallery-lightbox figure img{max-height:70vh}.gallery-lightbox-prev,.gallery-lightbox-next{top:auto;bottom:1rem;width:44px;height:44px}.gallery-lightbox-prev{left:calc(50% - 55px)}.gallery-lightbox-next{right:calc(50% - 55px)}}

/* Galerie sans recadrage et défilement automatique */
.asc-mini-nav-inner{justify-content:center}.gallery-main{background-position:center;background-size:cover;background-repeat:no-repeat}.gallery-main:before{content:"";position:absolute;z-index:0;inset:-25px;background:rgba(3,15,24,.42);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.gallery-main>img{z-index:1;object-fit:contain}.gallery-main-shade{z-index:1}.gallery-expand{z-index:4}.gallery-thumb img{object-fit:contain;background:#0c1b25}.gallery-auto-meter{position:absolute;z-index:4;left:1.25rem;right:1.25rem;bottom:.7rem;height:3px;border-radius:99px;background:rgba(255,255,255,.2);overflow:hidden}.gallery-auto-meter i{display:block;width:100%;height:100%;transform-origin:left;background:var(--asc-accent)}@keyframes gallery-meter{from{transform:scaleX(0)}to{transform:scaleX(1)}}
/* Footer premium en trois colonnes */
.asc-site-footer{position:relative;padding:5rem 0 0!important;background:radial-gradient(circle at 8% 20%,color-mix(in srgb,var(--asc-secondary) 12%,transparent),transparent 30%),linear-gradient(135deg,color-mix(in srgb,var(--asc-primary) 94%,#020b12),#06131d);color:#fff;border-top:0;overflow:hidden}.footer-wave{position:absolute;top:-1px;left:-2%;width:104%;height:70px;background:#fff;clip-path:polygon(0 0,100% 0,100% 17%,88% 38%,75% 20%,60% 48%,45% 23%,29% 45%,14% 19%,0 42%)}.asc-footer-grid{position:relative;display:grid;grid-template-columns:1.5fr .7fr .9fr;gap:clamp(2rem,5vw,5rem);padding-top:2rem;padding-bottom:3.5rem}.asc-footer-grid:after{content:attr(data-mark);position:absolute;right:0;bottom:-2rem;font-size:10rem;font-weight:950;color:rgba(255,255,255,.025)}.asc-footer-identity{display:flex;align-items:flex-start;gap:1.2rem}.asc-footer-identity>img,.asc-footer-logo-placeholder{flex:0 0 82px;width:82px;height:82px;border-radius:22px;object-fit:cover;background:#fff;border:3px solid rgba(255,255,255,.72);box-shadow:0 12px 35px rgba(0,0,0,.25)}.asc-footer-logo-placeholder{display:grid;place-items:center;background:var(--asc-secondary);color:var(--asc-primary);font-size:1.25rem;font-weight:950}.asc-footer-identity h2{font-size:1.25rem;font-weight:900;margin:.2rem 0 .65rem;color:#fff}.asc-footer-identity p{max-width:430px;color:rgba(255,255,255,.64);font-size:.82rem;line-height:1.7;margin-bottom:.75rem}.asc-footer-identity span{color:var(--asc-accent);font-size:.75rem;font-weight:750}.asc-footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem}.asc-footer-column h3{position:relative;color:#fff;font-size:.85rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .75rem;padding-bottom:.7rem}.asc-footer-column h3:after{content:"";position:absolute;left:0;bottom:0;width:35px;height:3px;border-radius:3px;background:var(--asc-accent)}.asc-footer-column a{position:relative;color:rgba(255,255,255,.66);font-size:.79rem;text-decoration:none;transition:.2s}.asc-footer-column>a:before{content:"›";display:inline-block;margin-right:.45rem;color:var(--asc-accent);transition:.2s}.asc-footer-column a:hover{color:#fff;transform:translateX(4px)}.asc-footer-important a{display:grid;grid-template-columns:64px 1fr;align-items:center;width:100%;padding:.42rem .55rem;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.035)}.asc-footer-important>a:before{display:none}.asc-footer-important a span{color:var(--asc-accent);font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.asc-footer-bottom{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.1rem;padding-bottom:1.1rem;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.48);font-size:.68rem}.asc-footer-bottom strong{color:var(--asc-accent)}
@media(max-width:991.98px){.asc-footer-grid{grid-template-columns:1fr 1fr}.asc-footer-identity{grid-column:1/-1}.asc-footer-important{max-width:380px}}
@media(max-width:767.98px){.asc-mini-nav-inner{justify-content:flex-start}.asc-site-footer{padding-top:4rem!important}.footer-wave{height:48px}.asc-footer-grid{grid-template-columns:1fr;gap:2rem;padding-bottom:2.5rem}.asc-footer-identity{grid-column:auto;flex-direction:column}.asc-footer-column{padding-left:.25rem}.asc-footer-bottom{align-items:flex-start;flex-direction:column}.gallery-main>img{padding:3px}.gallery-auto-meter{left:.8rem;right:.8rem}}

/* Accès publics persistants : régie, territoire et portails */
.asc-footer-important .asc-footer-ad-link{border-color:color-mix(in srgb,var(--asc-accent) 45%,transparent);background:color-mix(in srgb,var(--asc-accent) 12%,transparent);color:#fff}.asc-public-cta{position:fixed;z-index:90;right:18px;bottom:18px;display:flex;flex-direction:column;align-items:flex-end;gap:.55rem;font-family:inherit}.asc-public-cta-links{display:flex;flex-direction:column;align-items:stretch;gap:.42rem}.asc-public-cta-links a{display:flex;align-items:center;gap:.7rem;min-width:205px;padding:.62rem .8rem;border:1px solid rgba(255,255,255,.26);border-radius:14px;background:color-mix(in srgb,var(--asc-primary) 94%,#06101a);color:#fff;text-decoration:none;box-shadow:0 12px 28px rgba(5,18,30,.22);backdrop-filter:blur(14px);transition:transform .2s ease,box-shadow .2s ease}.asc-public-cta-links a:hover{color:#fff;transform:translateX(-5px);box-shadow:0 17px 35px rgba(5,18,30,.3)}.asc-public-cta-links a i{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.1);color:var(--asc-accent);font-style:normal;font-size:1rem}.asc-public-cta-links a span{font-size:.76rem;font-weight:850;line-height:1.15}.asc-public-cta-links a small{display:block;margin-bottom:.15rem;color:rgba(255,255,255,.55);font-size:.55rem;font-weight:750;text-transform:uppercase;letter-spacing:.07em}.asc-public-cta-links a.is-ad{background:linear-gradient(135deg,var(--asc-accent),color-mix(in srgb,var(--asc-accent) 72%,#ff8a00));color:#102218;border-color:transparent}.asc-public-cta-links a.is-ad i{background:rgba(16,34,24,.12);color:#102218}.asc-public-cta-links a.is-ad small{color:rgba(16,34,24,.62)}.asc-public-cta-toggle{display:none;align-items:center;gap:.7rem;padding:.72rem .78rem .72rem 1rem;border:0;border-radius:999px;background:var(--asc-accent);color:#102218;font-size:.78rem;font-weight:900;box-shadow:0 14px 34px rgba(5,18,30,.3)}.asc-public-cta-toggle b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:rgba(16,34,24,.12);font-size:1.05rem}
@media(max-width:767.98px){.asc-public-cta{right:12px;bottom:12px}.asc-public-cta-toggle{display:flex}.asc-public-cta-links{visibility:hidden;opacity:0;transform:translateY(12px) scale(.96);transform-origin:bottom right;pointer-events:none;transition:.2s}.asc-public-cta.is-open .asc-public-cta-links{visibility:visible;opacity:1;transform:none;pointer-events:auto}.asc-public-cta-links a{min-width:190px;padding:.52rem .65rem}.asc-public-cta-links a i{width:31px;height:31px;flex-basis:31px}}
@media(prefers-reduced-motion:reduce){.asc-public-cta *{transition:none!important}}

/* Menu principal centré : navigation du mini-site et portails publics */
.asc-mini-nav-inner{align-items:center;justify-content:center;min-width:max-content}.asc-mini-nav-local,.asc-mini-nav-portals{display:flex;align-items:center;gap:.2rem}.asc-mini-nav-separator{flex:0 0 1px;width:1px;height:28px;margin:0 .35rem;background:#dbe2ea}.asc-mini-nav-portals a{color:var(--asc-primary);background:color-mix(in srgb,var(--asc-primary) 6%,white)}.asc-mini-nav-portals .asc-mini-nav-ad{background:var(--asc-accent);color:#17251d;font-weight:900}.asc-mini-nav-portals .asc-mini-nav-ad:hover{background:var(--asc-primary);color:#fff}
@media(max-width:1199.98px){.asc-mini-nav>.container{max-width:100%;overflow-x:auto}.asc-mini-nav-inner{justify-content:flex-start;width:max-content;padding-inline:.75rem}}
@media(max-width:767.98px){.asc-mini-nav-separator{height:24px;margin-inline:.2rem}.asc-mini-nav-portals a{font-size:.78rem}}

/* CTA latéral escamotable et compact */
.asc-public-cta{right:-58px;bottom:18px;transition:right .24s ease}.asc-public-cta.is-open{right:12px}.asc-public-cta-toggle{display:flex;order:2;align-items:center;gap:.28rem;width:84px;height:34px;padding:.25rem .3rem .25rem .55rem;border-radius:12px 0 0 12px;font-size:.58rem;box-shadow:0 8px 20px rgba(5,18,30,.24);cursor:pointer}.asc-public-cta-toggle b{width:23px;height:23px;flex:0 0 23px;font-size:.8rem}.asc-public-cta-links{order:1;visibility:hidden;opacity:0;transform:translateX(18px) scale(.94);transform-origin:bottom right;pointer-events:none;gap:.25rem;transition:.2s}.asc-public-cta.is-open .asc-public-cta-links{visibility:visible;opacity:1;transform:none;pointer-events:auto}.asc-public-cta-links a{min-width:0;width:142px;gap:.38rem;padding:.34rem .42rem;border-radius:9px;box-shadow:0 7px 17px rgba(5,18,30,.2)}.asc-public-cta-links a:hover{transform:translateX(-3px)}.asc-public-cta-links a i{width:23px;height:23px;flex:0 0 23px;border-radius:6px;font-size:.68rem}.asc-public-cta-links a span{font-size:.55rem;line-height:1.08}.asc-public-cta-links a small{margin-bottom:.08rem;font-size:.4rem;letter-spacing:.045em}
@media(max-width:767.98px){.asc-public-cta{right:-58px;bottom:10px}.asc-public-cta.is-open{right:8px}.asc-public-cta-toggle{display:flex}.asc-public-cta-links{visibility:hidden;opacity:0;transform:translateX(18px) scale(.94);pointer-events:none}.asc-public-cta.is-open .asc-public-cta-links{visibility:visible;opacity:1;transform:none;pointer-events:auto}.asc-public-cta-links a{min-width:0;width:138px;padding:.32rem .4rem}.asc-public-cta-links a i{width:22px;height:22px;flex-basis:22px}}

/* Bouton de commande entièrement visible même lorsque les liens sont repliés */
.asc-public-cta{right:12px}.asc-public-cta-toggle{border-radius:12px}
@media(max-width:767.98px){.asc-public-cta{right:8px}}
/* Tableau de bord ASC */
.dashboard-page{background:linear-gradient(180deg,#f2f8f5 0,#fff 520px)}
.dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2rem;border-radius:1.5rem;color:#fff;background:linear-gradient(125deg,#063c2d 0%,#087d50 58%,#0d9c67 100%);box-shadow:0 18px 45px rgba(4,79,53,.2)}
.dashboard-hero h1{font-size:clamp(1.7rem,4vw,2.7rem)}
.dashboard-hero p{color:rgba(255,255,255,.86)}
.dashboard-eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.14em}
.dashboard-hero-actions{display:flex;flex-wrap:wrap;gap:.65rem;flex-shrink:0}
.dashboard-module-group{--dash-accent:#087d50;--dash-soft:#e8f6f0;background:#fff;border:1px solid #e5ebe8;border-left:5px solid var(--dash-accent);border-radius:1rem;padding:1.25rem;box-shadow:0 8px 28px rgba(15,23,42,.06)}
.dashboard-accent-blue{--dash-accent:#1769c2;--dash-soft:#eaf3fd}
.dashboard-accent-orange{--dash-accent:#d56b09;--dash-soft:#fff1e2}
.dashboard-accent-purple{--dash-accent:#7143b7;--dash-soft:#f2ebfd}
.dashboard-module-card{display:flex;align-items:center;gap:.85rem;height:100%;min-height:100px;padding:1rem;border:1px solid #e5e7eb;border-radius:.9rem;background:#fff;color:#172033;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.dashboard-module-card:hover{color:#172033;transform:translateY(-3px);border-color:var(--dash-accent);box-shadow:0 12px 24px rgba(15,23,42,.1)}
.dashboard-module-card.is-featured{background:linear-gradient(135deg,var(--dash-soft),#fff);border-color:var(--dash-accent)}
.dashboard-module-icon{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:.8rem;background:var(--dash-soft);font-size:1.35rem}
.dashboard-module-card>span:nth-child(2){min-width:0;flex:1}
.dashboard-module-card strong,.dashboard-module-card small{display:block}
.dashboard-module-card strong{margin-bottom:.2rem;font-size:.98rem}
.dashboard-module-card small{color:#657080;line-height:1.35}
.dashboard-module-card>b{font-size:1.7rem;color:var(--dash-accent);font-weight:400}
@media(max-width:767.98px){.dashboard-hero{align-items:flex-start;flex-direction:column;padding:1.35rem}.dashboard-hero-actions{width:100%}.dashboard-hero-actions .btn{flex:1}.dashboard-module-group{padding:1rem}.dashboard-module-card{min-height:88px}}
