:root{
    --ink:#0c1b2b!important;
    --muted:#617083!important;
    --green:#07539a!important;
    --green-deep:#032f5d!important;
    --green-dark:#032f5d!important;
    --deep:#07539a!important;
    --dark:#032f5d!important;
    --green-soft:#e7f2fb!important;
    --yellow:#f4c542!important;
    --paper:#f3f6f9!important;
    --line:rgba(12,27,43,.12)!important;
    --shadow:0 26px 80px rgba(3,47,93,.15)!important;
    --radius:12px!important;
}
body{font-family:"Manrope",sans-serif!important;color:#0c1b2b;background:#f3f6f9!important}
::selection{color:#fff;background:#07539a}
.eyebrow{color:#07539a!important;letter-spacing:.16em!important}
.btn-primary,.submit-button,.form-submit,.search-row button,.btn{border:0!important;color:#fff!important;background:linear-gradient(135deg,#07539a,#032f5d)!important;box-shadow:0 12px 28px rgba(3,47,93,.2)!important}
input:focus,select:focus,textarea:focus{border-color:#0781d9!important;box-shadow:0 0 0 4px rgba(7,129,217,.12)!important;outline:0!important}

/* Navigation commune : verre bleu nuit, logo carré et signature DTB. */
.adhesion-page .navbar,.media-page .navbar{top:14px!important;padding:9px 11px 9px 15px!important;border-color:rgba(255,255,255,.18)!important;border-radius:18px!important;background:rgba(3,35,67,.92)!important;box-shadow:0 18px 55px rgba(2,24,48,.2)!important;backdrop-filter:blur(18px)!important}
.adhesion-page .brand img,.media-page .brand img{border:2px solid rgba(255,255,255,.82)!important;border-radius:12px!important}
.adhesion-page .brand strong,.media-page .brand strong{color:#fff!important;font-size:.92rem!important;text-transform:uppercase!important}
.adhesion-page .brand small,.media-page .brand small{color:rgba(255,255,255,.58)!important;font-size:.62rem!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.adhesion-page .nav-links a,.media-page .nav-links a{color:rgba(255,255,255,.78)!important;border-radius:10px!important}
.adhesion-page .nav-links a:hover,.media-page .nav-links a:hover{color:#fff!important;background:rgba(255,255,255,.09)!important}
.adhesion-page .nav-links .nav-cta{color:#fff!important;background:#d91f2a!important}

/* Adhésion */
.adhesion-page{background:linear-gradient(180deg,#eaf3fb 0,#fff 650px)!important}
.adhesion-page .adhesion-header{min-height:112px!important;background:linear-gradient(115deg,#032f5d,#07539a)!important}
.adhesion-page .adhesion-hero{gap:42px!important;padding-top:68px!important;padding-bottom:110px!important}
.adhesion-page .adhesion-hero-copy{position:sticky;top:125px;align-self:start;padding:52px 44px;color:#fff;border-radius:24px;background:linear-gradient(145deg,rgba(3,47,93,.96),rgba(7,83,154,.93)),url("../images/s8.jpg") center/cover;box-shadow:0 28px 80px rgba(3,47,93,.2)}
.adhesion-page .adhesion-hero-copy .eyebrow{color:#80c6ff!important}
.adhesion-page .adhesion-hero-copy h1{color:#fff!important;font-family:"Manrope",sans-serif!important;font-size:clamp(2.5rem,4vw,4.2rem)!important;line-height:1.02!important;letter-spacing:-.05em!important}
.adhesion-page .adhesion-hero-copy>p{color:rgba(255,255,255,.72)!important}
.adhesion-page .adhesion-summary article{border-color:rgba(255,255,255,.15)!important;background:rgba(255,255,255,.07)!important}
.adhesion-page .adhesion-summary span{color:#f4c542!important}
.adhesion-page .adhesion-summary strong{color:#fff!important}
.adhesion-page .adhesion-summary p{color:rgba(255,255,255,.6)!important}
.adhesion-page .adhesion-panel{padding:38px!important;border:1px solid rgba(7,83,154,.12)!important;border-radius:24px!important;background:#fff!important;box-shadow:0 28px 85px rgba(3,47,93,.13)!important}
.adhesion-page .adhesion-panel::before{background:linear-gradient(90deg,#d91f2a,#f4c542,#07539a)!important}
.adhesion-page .adhesion-form-intro-icon{color:#fff!important;background:#07539a!important;border-radius:14px!important}
.adhesion-page .adhesion-form-intro h2{color:#0c1b2b!important;font-family:"Manrope",sans-serif!important}
.adhesion-page .adhesion-form-progress>div span{background:linear-gradient(90deg,#d91f2a,#f4c542,#07539a)!important}
.adhesion-page .adhesion-form input,.adhesion-page .adhesion-form select{border-color:#d8e2eb!important;border-radius:11px!important;background:#f8fafc!important}
.adhesion-page .photo-upload{border-color:#bfd5e8!important;border-radius:16px!important;background:#f2f7fb!important}
.adhesion-page .photo-upload-icon{color:#07539a!important;background:#dceefa!important}
.adhesion-page .photo-upload-actions button{color:#07539a!important;border-color:#b8d2e8!important;background:#fff!important}
.adhesion-page .consent{border-radius:12px!important;background:#edf5fb!important}
.adhesion-page .site-footer{color:#fff!important;background:#06182a!important}
.adhesion-page .site-footer a,.adhesion-page .site-footer p{color:rgba(255,255,255,.58)!important}

/* Médiathèque */
.media-page{background:#f3f6f9!important}
.media-page .media-page-header{min-height:600px!important;background:linear-gradient(90deg,rgba(2,24,48,.93),rgba(3,47,93,.62)),url("../images/s15.jpg") center/cover!important}
.media-page .media-page-hero{padding-top:175px!important}
.media-page .media-page-hero h1{max-width:760px;color:#fff!important;font-family:"Manrope",sans-serif!important;font-size:clamp(3.2rem,6vw,6rem)!important;line-height:.95!important;letter-spacing:-.06em!important}
.media-page .media-page-hero .eyebrow{color:#f4c542!important}
.media-page .media-page-hero .hero-text{color:rgba(255,255,255,.68)!important}
.media-page .media-hero-panel{border-color:rgba(255,255,255,.2)!important;border-radius:22px!important;background:rgba(255,255,255,.1)!important;backdrop-filter:blur(16px)!important}
.media-page .media-hero-panel strong{color:#f4c542!important}
.media-page .media-section{padding-block:110px!important}
.media-page .section-heading h2{font-family:"Manrope",sans-serif!important;font-size:clamp(2.4rem,4vw,4rem)!important;letter-spacing:-.045em!important}
.media-page .media-grid{gap:20px!important}
.media-page .media-card{overflow:hidden!important;border:1px solid rgba(7,83,154,.1)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 20px 55px rgba(3,47,93,.09)!important;transition:transform .25s,box-shadow .25s!important}
.media-page .media-card:hover{transform:translateY(-7px)!important;box-shadow:0 28px 70px rgba(3,47,93,.16)!important}
.media-page .media-card video{background:#032f5d!important}
.media-page .media-card-label{color:#07539a!important}
.media-page .site-footer{color:#fff!important;background:#06182a!important}
.media-page .site-footer a,.media-page .site-footer p{color:rgba(255,255,255,.58)!important}

/* Mes adhérents */
body>.topbar{background-image:linear-gradient(90deg,rgba(2,24,48,.94),rgba(3,47,93,.74),rgba(3,47,93,.25)),url("../images/s1.jpg")!important;background-position:center 32%!important}
body>.topbar::before{background:linear-gradient(90deg,rgba(2,24,48,.88),rgba(3,47,93,.46),rgba(3,47,93,.08))!important}
body>.topbar .nav{border-radius:18px!important;background:rgba(3,35,67,.9)!important}
body>.topbar .brand img{border-radius:12px!important}
body>.topbar .nav-links .active{color:#fff!important;background:#d91f2a!important}
body>.topbar .hero .eyebrow{color:#f4c542!important}
body>.topbar .search-card{border-radius:20px!important;box-shadow:0 28px 80px rgba(1,20,40,.28)!important}
body>.topbar .search-card::before{background:linear-gradient(90deg,#d91f2a,#f4c542,#07539a)!important}
.search-mark{color:#fff!important;background:#07539a!important}
.results .summary{border-left-color:#d91f2a!important;background:#eef5fb!important}
.results .group{border-color:rgba(7,83,154,.13)!important;box-shadow:0 24px 70px rgba(3,47,93,.12)!important}
.results .group-head{background:linear-gradient(110deg,#07539a,#032f5d)!important}
.results .rank{color:#032f5d!important;background:#f4c542!important}
.results th{color:#032f5d!important;background:#eaf3fb!important}
.results tbody tr:hover{background:#edf6fc!important}
.results .empty::before{content:"DTB"!important;color:#fff!important;background:#07539a!important}

/* Paiement et vérification */
.payment-page,.page{width:min(1260px,calc(100% - 40px))!important;margin:0 auto!important;padding:22px 0 70px!important}
.payment-page>.topbar,.page>.topbar{min-height:76px!important;margin-bottom:24px!important;padding:10px 14px!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:18px!important;background:#032f5d!important;box-shadow:0 18px 50px rgba(3,47,93,.16)!important}
.payment-page>.topbar .brand img,.page>.topbar .brand img{border-radius:11px!important}
.payment-page>.topbar .brand strong,.page>.topbar .brand strong{color:#fff!important;font-size:.92rem!important;text-transform:uppercase!important}
.payment-page>.topbar .brand small,.page>.topbar .brand small{color:rgba(255,255,255,.58)!important}
.payment-page>.topbar .back-link,.page>.topbar .back-link{color:#fff!important;border-color:rgba(255,255,255,.2)!important;background:rgba(255,255,255,.08)!important}
.payment-layout{overflow:hidden!important;border-radius:24px!important;background:#fff!important;box-shadow:0 30px 90px rgba(3,47,93,.14)!important}
.payment-hero{color:#fff!important;background:linear-gradient(145deg,rgba(3,47,93,.95),rgba(7,83,154,.9)),url("../images/s8.jpg") center/cover!important}
.payment-hero .eyebrow{color:#f4c542!important}
.payment-hero h1{font-family:"Manrope",sans-serif!important;font-size:clamp(2.7rem,4.5vw,4.8rem)!important;line-height:1!important;letter-spacing:-.055em!important}
.payment-badges article{border-color:rgba(255,255,255,.16)!important;background:rgba(255,255,255,.08)!important}
.payment-form-card{background:#fff!important}
.payment-form-card::before{background:linear-gradient(90deg,#d91f2a,#f4c542,#07539a)!important}
.payment-form-card h2{font-family:"Manrope",sans-serif!important;color:#0c1b2b!important}
.payment-form-card input,.payment-form-card select{border-color:#d8e2eb!important;border-radius:11px!important;background:#f8fafc!important}
.money-logo-grid article{border-color:#dbe6ef!important;border-radius:13px!important;background:#f7fafc!important}
.secure-note{color:#07539a!important;background:#eaf4fb!important}
.page>.hero{overflow:hidden!important;border-radius:24px!important;background:linear-gradient(140deg,rgba(3,47,93,.96),rgba(7,83,154,.88)),url("../images/s15.jpg") center/cover!important;box-shadow:0 30px 85px rgba(3,47,93,.16)!important}
.page>.hero .intro{color:#fff!important}
.page>.hero .intro .eyebrow{color:#f4c542!important}
.page>.hero .intro h1{color:#fff!important;font-family:"Manrope",sans-serif!important;letter-spacing:-.05em!important}
.page>.hero .intro p{color:rgba(255,255,255,.7)!important}
.lookup-card{border-radius:20px!important;box-shadow:0 24px 65px rgba(1,20,40,.25)!important}
.lookup-card::before{background:linear-gradient(90deg,#d91f2a,#f4c542,#07539a)!important}
.lookup-card input{border-color:#d8e2eb!important;border-radius:11px!important;background:#f8fafc!important}
.results-card{border-color:rgba(7,83,154,.12)!important;border-radius:20px!important;box-shadow:0 24px 70px rgba(3,47,93,.12)!important}
.member-strip{color:#fff!important;background:linear-gradient(110deg,#07539a,#032f5d)!important}
.stat{border-color:#dce8f1!important;background:#eff6fb!important}
.pill{color:#07539a!important;border-color:#b8d5e9!important;background:#e8f3fb!important}

/* Écran de confirmation de paiement */
body>.card{overflow:hidden!important;border:1px solid rgba(7,83,154,.14)!important;border-radius:22px!important;box-shadow:0 30px 90px rgba(3,47,93,.18)!important}
body>.card>.header{background:linear-gradient(135deg,#032f5d,#07539a)!important}
body>.card>.header .logo{border-radius:12px!important}
body>.card .badge{color:#07539a!important;background:#e7f2fb!important}
body>.card .badge.success,body>.card .success-icon{color:#fff!important;background:linear-gradient(135deg,#07539a,#032f5d)!important}
body>.card .receipt,body>.card .details{border-color:#d7e5ef!important;background:#f5f9fc!important}
body>.card .loader{border-color:rgba(7,83,154,.14)!important;border-top-color:#07539a!important;border-right-color:#d91f2a!important}

@media(max-width:850px){
    .adhesion-page .adhesion-hero-copy{position:relative;top:auto;padding:38px 28px}
    .adhesion-page .adhesion-panel{padding:26px!important}
    .media-page .media-page-header{min-height:660px!important}
    .payment-page,.page{width:min(100% - 22px,1260px)!important;padding-top:11px!important}
}
@media(max-width:620px){
    .adhesion-page .navbar,.media-page .navbar{top:8px!important;border-radius:14px!important}
    .adhesion-page .brand small,.media-page .brand small{display:none!important}
    .adhesion-page .adhesion-hero{padding-top:35px!important}
    .adhesion-page .adhesion-panel{padding:22px 16px!important;border-radius:18px!important}
    .media-page .media-page-hero h1{font-size:3rem!important}
    .payment-page>.topbar,.page>.topbar{border-radius:14px!important}
}
