:root {
    --ccda-blue: #002FA7;
    --ccda-white: #ffffff;
    --ccda-soft-blue: rgba(0, 47, 167, .065);
    --ccda-line: rgba(0, 47, 167, .22);
    --rjc-blue: #061d56;
    --ccda-radius: 6px;
}

.ccda-webmag-template,
.ccda-webmag-page .site-content,
.ccda-webmag-page .container,
.ccda-webmag-page .penci-container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ccda-webmag {
    width: 100%;
    overflow: hidden;
    background: var(--ccda-white);
    color: var(--ccda-blue);
    font-family: inherit;
    scroll-behavior: smooth;
}

.ccda-webmag *,
.ccda-webmag *::before,
.ccda-webmag *::after {
    box-sizing: border-box;
}

.ccda-webmag a {
    color: inherit;
    text-decoration: none;
}

/* Bandeau identitaire : le menu Soledad reste au-dessus */
.ccda-masthead {
    width: 100%;
    background: var(--ccda-blue);
    color: var(--ccda-white);
    border-top: 1px solid rgba(255, 255, 255, .34);
    border-bottom: 8px solid var(--ccda-white);
}

.ccda-masthead__inner {
    width: min(1480px, calc(100% - 44px));
    margin: 0 auto;
    padding: clamp(28px, 4vw, 58px) 0 0;
}

.ccda-masthead__identity {
    display: grid;
    grid-template-columns: clamp(190px, 22vw, 330px) minmax(0, 1fr);
    gap: clamp(28px, 5vw, 78px);
    align-items: center;
    padding-bottom: clamp(26px, 4vw, 48px);
}

.ccda-masthead__logo {
    display: block;
    justify-self: start;
}

.ccda-masthead__logo-disc {
    display: flex;
    width: clamp(180px, 21vw, 320px);
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 50%;
    background: var(--ccda-white);
}

.ccda-masthead__logo-disc img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ccda-masthead__copy {
    max-width: 940px;
}

.ccda-masthead__eyebrow {
    display: block;
    margin-bottom: 12px;
    font-size: clamp(.66rem, .85vw, .82rem);
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
    opacity: .8;
}

.ccda-masthead__title {
    margin: 0 !important;
    color: var(--ccda-white) !important;
    font-size: clamp(2.3rem, 5.1vw, 6rem) !important;
    font-weight: 950 !important;
    line-height: .92 !important;
    letter-spacing: -.055em !important;
}

.ccda-masthead__subtitle {
    max-width: 860px;
    margin: 19px 0 0 !important;
    color: var(--ccda-white) !important;
    font-size: clamp(.94rem, 1.35vw, 1.18rem);
    line-height: 1.45;
    opacity: .88;
}

.ccda-mag-nav {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: clamp(22px, 4vw, 55px);
    align-items: center;
    padding: 17px 0 19px;
    border-top: 1px solid rgba(255, 255, 255, .42);
}

.ccda-mag-nav__label {
    font-size: .6rem;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
    white-space: nowrap;
    opacity: .72;
}

.ccda-mag-nav__links {
    display: flex;
    justify-content: flex-end;
    gap: clamp(13px, 2.1vw, 31px);
    overflow-x: auto;
    scrollbar-width: none;
}

.ccda-mag-nav__links::-webkit-scrollbar {
    display: none;
}

.ccda-mag-nav a {
    padding: 5px 0;
    font-size: clamp(.61rem, .75vw, .74rem);
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
    white-space: nowrap;
    opacity: .82;
    transition: opacity .2s ease;
}

.ccda-mag-nav a:hover,
.ccda-mag-nav a:focus-visible {
    opacity: 1;
}

/* Sections éditoriales */
.ccda-section {
    position: relative;
    width: 100%;
    scroll-margin-top: 92px;
}

.ccda-section--white {
    background: var(--ccda-white);
    color: var(--ccda-blue);
}

.ccda-section--blue {
    background: var(--ccda-blue);
    color: var(--ccda-white);
}

.ccda-section__inner {
    width: min(1480px, calc(100% - 42px));
    margin: 0 auto;
    padding: clamp(38px, 4.1vw, 62px) 0;
}

.ccda-section__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 26px;
    margin-bottom: 20px;
    padding-bottom: 13px;
    border-bottom: 2px solid currentColor;
}

.ccda-section__header > div {
    min-width: 0;
}

.ccda-section__header h2 {
    margin: 0 !important;
    color: inherit !important;
    font-size: clamp(2.05rem, 3.6vw, 4.35rem) !important;
    font-weight: 950 !important;
    line-height: .9 !important;
    letter-spacing: -.05em !important;
    text-transform: uppercase;
}

.ccda-section__eyebrow {
    display: block;
    max-width: 820px;
    margin-bottom: 8px;
    font-size: clamp(.62rem, .76vw, .75rem);
    font-weight: 850;
    line-height: 1.35;
    letter-spacing: .08em;
    text-transform: uppercase;
    opacity: .76;
}

.ccda-section__header > a {
    padding-bottom: 2px;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .075em;
    text-transform: uppercase;
    white-space: nowrap;
}

/* Interviews : deux lignes de six sur grand écran */
.ccda-interviews-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
}

.ccda-interview-card {
    min-width: 0;
}

.ccda-interview-card__image {
    position: relative;
    display: block;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    border: 2px solid var(--ccda-blue);
    border-radius: var(--ccda-radius);
    background: var(--ccda-soft-blue);
}

.ccda-interview-card__image img,
.ccda-interview-card__image .ccda-image,
.ccda-interview-card__image .ccda-image-fallback {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.ccda-interview-card:hover img {
    transform: scale(1.035);
}

.ccda-interview-card__veil {
    position: absolute;
    inset: 28% 0 0;
    background: linear-gradient(to bottom, rgba(0, 47, 167, 0), rgba(0, 47, 167, .93));
}

.ccda-interview-card__copy {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    padding: 15px 13px 13px;
    color: var(--ccda-white);
}

.ccda-interview-card__copy small {
    display: inline-block;
    margin-bottom: 7px;
    padding: 4px 6px;
    background: var(--ccda-white);
    color: var(--ccda-blue);
    font-size: .55rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.ccda-interview-card__copy strong {
    display: block;
    color: var(--ccda-white) !important;
    font-size: clamp(.84rem, 1.06vw, 1.12rem);
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: -.018em;
}

/* Rubriques standard : 1 grand sujet + 7 visuels + agenda */
.ccda-section__grid {
    display: grid;
    grid-template-columns: minmax(245px, .82fr) minmax(0, 1.95fr) minmax(240px, .68fr);
    gap: clamp(17px, 1.7vw, 26px);
    align-items: start;
}

.ccda-lead,
.ccda-card {
    min-width: 0;
}

.ccda-lead__image,
.ccda-card__image {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: var(--ccda-radius);
    background: var(--ccda-soft-blue);
}

.ccda-lead__image {
    aspect-ratio: 4 / 5;
    border: 3px solid currentColor;
}

.ccda-card__image {
    aspect-ratio: 4 / 5;
    border: 1px solid currentColor;
}

.ccda-section--white .ccda-lead__image,
.ccda-section--white .ccda-card__image {
    border-color: var(--ccda-blue);
}

.ccda-section--blue .ccda-lead__image,
.ccda-section--blue .ccda-card__image {
    border-color: var(--ccda-white);
}

.ccda-image,
.ccda-lead__image img,
.ccda-card__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.ccda-lead:hover .ccda-image,
.ccda-card:hover .ccda-image {
    transform: scale(1.026);
}

.ccda-image-fallback {
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--ccda-blue);
    color: var(--ccda-white);
    text-align: center;
}

.ccda-section--blue .ccda-image-fallback {
    background: var(--ccda-white);
    color: var(--ccda-blue);
}

.ccda-image-fallback span {
    font-size: clamp(1.35rem, 2.7vw, 2.85rem);
    font-weight: 950;
    line-height: .83;
    letter-spacing: -.06em;
}

.ccda-image-fallback small {
    margin-top: 13px;
    font-size: .57rem;
    font-weight: 900;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.ccda-lead__copy {
    padding-top: 13px;
}

.ccda-kicker {
    display: inline-block;
    margin-bottom: 8px;
    padding: 5px 8px;
    background: var(--ccda-blue);
    color: var(--ccda-white);
    font-size: .57rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.ccda-section--blue .ccda-kicker {
    background: var(--ccda-white);
    color: var(--ccda-blue);
}

.ccda-lead h3,
.ccda-card h3,
.ccda-event h4,
.ccda-agenda h3 {
    color: inherit !important;
    font-family: inherit !important;
}

.ccda-lead h3 {
    margin: 0 0 8px !important;
    font-size: clamp(1.28rem, 1.85vw, 2.1rem) !important;
    font-weight: 950 !important;
    line-height: 1.01 !important;
    letter-spacing: -.038em !important;
}

.ccda-lead__copy > p {
    margin: 0 0 12px;
    color: inherit;
    font-size: .89rem;
    line-height: 1.4;
    opacity: .84;
}

.ccda-read {
    display: inline-block;
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.ccda-secondary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 15px 10px;
}

.ccda-card__copy {
    padding-top: 7px;
}

.ccda-card h3 {
    margin: 0 !important;
    font-size: clamp(.76rem, .86vw, .96rem) !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: -.015em !important;
}

/* Agenda par rubrique */
.ccda-agenda {
    min-width: 0;
    padding: 17px;
    border: 2px solid currentColor;
}

.ccda-agenda h3 {
    margin: 0 0 12px !important;
    padding-bottom: 10px;
    border-bottom: 1px solid currentColor;
    font-size: .92rem !important;
    font-weight: 950 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase;
}

.ccda-event {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 10px;
    padding: 12px 0;
    border-bottom: 1px solid currentColor;
}

.ccda-event__date {
    display: flex;
    min-height: 47px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px solid currentColor;
    line-height: 1;
}

.ccda-event__date strong {
    font-size: 1.13rem;
    font-weight: 950;
}

.ccda-event__date span {
    margin-top: 4px;
    font-size: .52rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ccda-event h4 {
    margin: 0 0 4px !important;
    font-size: .8rem !important;
    font-weight: 900 !important;
    line-height: 1.13 !important;
}

.ccda-event p,
.ccda-agenda__empty {
    margin: 0;
    font-size: .66rem;
    line-height: 1.32;
    opacity: .77;
}

.ccda-agenda__all {
    display: inline-block;
    margin-top: 15px;
    font-size: .62rem;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.ccda-agenda--horizontal {
    display: grid;
    grid-template-columns: minmax(145px, .62fr) minmax(0, 2.8fr) auto;
    gap: 20px;
    align-items: center;
    margin-top: 20px;
    padding: 16px 18px;
    border-color: var(--ccda-blue);
}

.ccda-agenda--horizontal__title span {
    display: block;
    margin-bottom: 4px;
    color: var(--ccda-blue);
    font-size: .56rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.ccda-agenda--horizontal__title h3 {
    margin: 0 !important;
    padding: 0;
    border: 0;
    color: var(--ccda-blue) !important;
    font-size: 1.2rem !important;
}

.ccda-agenda--horizontal .ccda-agenda__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.ccda-agenda--horizontal .ccda-event {
    padding: 0 14px 0 0;
    border: 0;
    border-right: 1px solid var(--ccda-line);
}

.ccda-agenda--horizontal .ccda-event:last-child {
    border-right: 0;
}

.ccda-agenda--horizontal .ccda-agenda__all {
    margin: 0;
    color: var(--ccda-blue);
    white-space: nowrap;
}

/* Bandeaux partenaires et internes */
.ccda-commercial,
.ccda-adslot {
    width: 100%;
    background: var(--ccda-white);
}

.ccda-commercial__inner,
.ccda-adslot__inner {
    width: min(1340px, calc(100% - 42px));
    margin: 0 auto;
    padding: clamp(21px, 2.7vw, 34px) 0;
}

.ccda-commercial__label,
.ccda-adslot__label {
    display: block;
    margin-bottom: 7px;
    color: var(--ccda-blue);
    font-size: .54rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
    opacity: .7;
}

.ccda-rjc-ad,
.ccda-newsletter-ad {
    display: grid;
    grid-template-columns: clamp(115px, 13vw, 180px) minmax(0, 1fr) auto;
    gap: clamp(19px, 2.8vw, 38px);
    align-items: center;
    min-height: 160px;
    padding: clamp(20px, 2.7vw, 34px);
    border: 5px solid currentColor;
}

.ccda-rjc-ad {
    background: var(--rjc-blue);
    color: var(--ccda-white) !important;
    animation: ccda-rjc-invert 14s ease-in-out infinite alternate;
}

.ccda-commercial--histoire .ccda-rjc-ad { animation-delay: -2s; }
.ccda-commercial--agenda .ccda-rjc-ad { animation-delay: -4s; }
.ccda-commercial--podcasts .ccda-rjc-ad { animation-delay: -6s; }
.ccda-commercial--albums .ccda-rjc-ad { animation-delay: -8s; }
.ccda-commercial--images .ccda-rjc-ad { animation-delay: -10s; }

.ccda-rjc-ad__brand,
.ccda-newsletter-ad__brand {
    display: flex;
    width: clamp(105px, 12vw, 160px);
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 50%;
    background: var(--ccda-white);
}

.ccda-rjc-ad__brand img,
.ccda-newsletter-ad__brand img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ccda-rjc-ad__copy small,
.ccda-newsletter-ad__copy small {
    display: block;
    margin-bottom: 6px;
    color: inherit;
    font-size: .58rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
    opacity: .74;
}

.ccda-rjc-ad__copy > strong,
.ccda-newsletter-ad__copy > strong {
    display: block;
    color: inherit !important;
    font-size: clamp(1.42rem, 2.6vw, 2.85rem);
    font-weight: 950;
    line-height: .96;
    letter-spacing: -.045em;
}

.ccda-rjc-ad__copy > span,
.ccda-newsletter-ad__copy > span {
    display: block;
    max-width: 730px;
    margin-top: 9px;
    color: inherit;
    font-size: clamp(.84rem, 1.18vw, 1rem);
    line-height: 1.38;
    opacity: .85;
}

.ccda-rjc-ad__cta,
.ccda-newsletter-ad__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    background: var(--ccda-white);
    color: var(--rjc-blue);
    font-size: .63rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
    white-space: nowrap;
    animation: ccda-rjc-cta-invert 14s ease-in-out infinite alternate;
}

.ccda-commercial--histoire .ccda-rjc-ad__cta { animation-delay: -2s; }
.ccda-commercial--agenda .ccda-rjc-ad__cta { animation-delay: -4s; }
.ccda-commercial--podcasts .ccda-rjc-ad__cta { animation-delay: -6s; }
.ccda-commercial--albums .ccda-rjc-ad__cta { animation-delay: -8s; }
.ccda-commercial--images .ccda-rjc-ad__cta { animation-delay: -10s; }

@keyframes ccda-rjc-invert {
    0%, 38% { background: var(--rjc-blue); color: var(--ccda-white); }
    62%, 100% { background: var(--ccda-white); color: var(--rjc-blue); }
}

@keyframes ccda-rjc-cta-invert {
    0%, 38% { background: var(--ccda-white); color: var(--rjc-blue); }
    62%, 100% { background: var(--rjc-blue); color: var(--ccda-white); }
}

/* Deux bandeaux RJC côte à côte */
.ccda-campaign-row {
    display: grid;
    width: min(1340px, calc(100% - 42px));
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin: 0 auto;
    padding: clamp(21px, 2.7vw, 34px) 0;
    background: var(--ccda-white);
}

.ccda-campaign-row .ccda-commercial {
    min-width: 0;
}

.ccda-campaign-row .ccda-commercial__inner {
    width: 100%;
    padding: 0;
}

.ccda-campaign-row .ccda-commercial__label {
    display: none;
}

.ccda-commercial--compact .ccda-rjc-ad {
    grid-template-columns: 90px minmax(0, 1fr);
    gap: 18px;
    min-height: 220px;
    padding: 21px;
}

.ccda-commercial--compact .ccda-rjc-ad__brand {
    width: 90px;
}

.ccda-commercial--compact .ccda-rjc-ad__copy > strong {
    font-size: clamp(1.25rem, 2vw, 2.15rem);
}

.ccda-commercial--compact .ccda-rjc-ad__cta {
    grid-column: 1 / -1;
    justify-self: start;
}

/* Bandeaux newsletter : trois approches */
.ccda-newsletter-ad {
    border-color: var(--ccda-blue);
    background: var(--ccda-white);
    color: var(--ccda-blue) !important;
    animation: ccda-newsletter-invert 17s ease-in-out infinite alternate;
}

.ccda-newsletter--agenda .ccda-newsletter-ad { animation-delay: -5s; }
.ccda-newsletter--interviews .ccda-newsletter-ad { animation-delay: -10s; }

.ccda-newsletter-ad__cta {
    background: var(--ccda-blue);
    color: var(--ccda-white);
    animation: ccda-newsletter-cta-invert 17s ease-in-out infinite alternate;
}

.ccda-newsletter--agenda .ccda-newsletter-ad__cta { animation-delay: -5s; }
.ccda-newsletter--interviews .ccda-newsletter-ad__cta { animation-delay: -10s; }

@keyframes ccda-newsletter-invert {
    0%, 42% { background: var(--ccda-white); color: var(--ccda-blue); }
    58%, 100% { background: var(--ccda-blue); color: var(--ccda-white); }
}

@keyframes ccda-newsletter-cta-invert {
    0%, 42% { background: var(--ccda-blue); color: var(--ccda-white); }
    58%, 100% { background: var(--ccda-white); color: var(--ccda-blue); }
}

/* Google AdSense */
.ccda-adslot {
    border-top: 1px solid var(--ccda-line);
    border-bottom: 1px solid var(--ccda-line);
}

.ccda-adslot__code {
    display: flex;
    min-height: 120px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    text-align: center;
}

.ccda-adslot__placeholder {
    display: flex;
    min-height: 120px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 24px;
    border: 2px dashed var(--ccda-line);
    background: var(--ccda-white);
    color: var(--ccda-blue);
    text-align: center;
}

.ccda-adslot__placeholder strong {
    font-size: .86rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.ccda-adslot__placeholder span {
    max-width: 620px;
    margin-top: 7px;
    color: var(--ccda-blue);
    font-size: .74rem;
    line-height: 1.4;
    opacity: .72;
}

/* Pages de rubriques : pas de photo d’illustration, uniquement le bandeau bleu */
body.ccda-rubrique-page .archive-box,
body.ccda-rubrique-page .penci-page-header,
body.ccda-rubrique-page .penci-archive__title,
body.ccda-rubrique-page .penci-archive-title,
body.ccda-rubrique-page .container-page-title,
body.ccda-rubrique-page .page-title-wrapper {
    display: none !important;
}

.ccda-rubrique-hero {
    width: 100%;
    margin: 0 0 clamp(28px, 4vw, 50px);
    background: var(--ccda-blue);
    color: var(--ccda-white);
}

.ccda-rubrique-hero__inner {
    width: 100%;
    padding: clamp(38px, 6vw, 82px) clamp(24px, 5vw, 70px);
}

.ccda-rubrique-hero span {
    display: block;
    margin-bottom: 10px;
    font-size: .61rem;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
    opacity: .75;
}

.ccda-rubrique-hero h1 {
    margin: 0 !important;
    color: var(--ccda-white) !important;
    font-size: clamp(2.5rem, 6vw, 6.7rem) !important;
    font-weight: 950 !important;
    line-height: .88 !important;
    letter-spacing: -.055em !important;
    text-transform: uppercase;
}

.ccda-rubrique-hero p {
    max-width: 820px;
    margin: 20px 0 0 !important;
    color: var(--ccda-white) !important;
    font-size: clamp(.9rem, 1.35vw, 1.13rem);
    line-height: 1.45;
    opacity: .86;
}

body.ccda-rubrique-page .penci-image-holder,
body.ccda-rubrique-page .post-image,
body.ccda-rubrique-page .thumbnail,
body.ccda-rubrique-page .penci-post-thumbnail,
body.ccda-rubrique-page .grid-post-box .item > a,
body.ccda-rubrique-page .penci-grid .penci-image-holder {
    aspect-ratio: 4 / 5 !important;
    overflow: hidden !important;
    border: 3px solid var(--ccda-blue) !important;
    border-radius: var(--ccda-radius) !important;
    background-size: cover !important;
    background-position: center !important;
}

body.ccda-rubrique-page .post-image img,
body.ccda-rubrique-page .thumbnail img,
body.ccda-rubrique-page .penci-post-thumbnail img,
body.ccda-rubrique-page .grid-post-box img,
body.ccda-rubrique-page .penci-grid img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

body.ccda-rubrique-page .penci-readmore-btn,
body.ccda-rubrique-page .penci-more-link,
body.ccda-rubrique-page .post-more-link,
body.ccda-rubrique-page input[type="submit"],
body.ccda-rubrique-page button {
    border-color: var(--ccda-blue) !important;
    border-radius: 0 !important;
    background: var(--ccda-blue) !important;
    color: var(--ccda-white) !important;
}

body.ccda-rubrique-page h2,
body.ccda-rubrique-page h3,
body.ccda-rubrique-page .entry-title,
body.ccda-rubrique-page .penci-post-title,
body.ccda-rubrique-page a:hover,
body.ccda-rubrique-page a:focus-visible {
    color: var(--ccda-blue);
}

@media (prefers-reduced-motion: reduce) {
    .ccda-rjc-ad,
    .ccda-rjc-ad__cta,
    .ccda-newsletter-ad,
    .ccda-newsletter-ad__cta {
        animation: none !important;
    }

    .ccda-image,
    .ccda-interview-card__image img {
        transition: none !important;
    }
}

@media (max-width: 1220px) {
    .ccda-interviews-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .ccda-section__grid {
        grid-template-columns: minmax(235px, .82fr) minmax(0, 1.65fr);
    }

    .ccda-secondary {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .ccda-agenda:not(.ccda-agenda--horizontal) {
        grid-column: 1 / -1;
    }

    .ccda-agenda:not(.ccda-agenda--horizontal) .ccda-agenda__list {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 17px;
    }

    .ccda-agenda:not(.ccda-agenda--horizontal) .ccda-event {
        padding-right: 14px;
        border-right: 1px solid currentColor;
        border-bottom: 0;
    }

    .ccda-agenda:not(.ccda-agenda--horizontal) .ccda-event:last-child {
        border-right: 0;
    }
}

@media (max-width: 940px) {
    .ccda-masthead__identity {
        grid-template-columns: 190px minmax(0, 1fr);
        gap: 30px;
    }

    .ccda-masthead__logo-disc {
        width: 190px;
    }

    .ccda-mag-nav {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .ccda-mag-nav__links {
        justify-content: flex-start;
    }

    .ccda-section__inner {
        width: min(100% - 28px, 850px);
    }

    .ccda-section__header {
        align-items: flex-start;
        flex-direction: column;
        gap: 9px;
    }

    .ccda-interviews-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .ccda-section__grid {
        grid-template-columns: 1fr;
    }

    .ccda-lead {
        display: grid;
        grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
        gap: 21px;
        align-items: center;
    }

    .ccda-lead__copy {
        padding-top: 0;
    }

    .ccda-secondary {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .ccda-agenda--horizontal {
        grid-template-columns: 1fr;
    }

    .ccda-rjc-ad,
    .ccda-newsletter-ad {
        grid-template-columns: 125px minmax(0, 1fr);
    }

    .ccda-rjc-ad__cta,
    .ccda-newsletter-ad__cta {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .ccda-campaign-row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .ccda-masthead {
        border-bottom-width: 6px;
    }

    .ccda-masthead__inner,
    .ccda-commercial__inner,
    .ccda-adslot__inner,
    .ccda-campaign-row {
        width: min(100% - 24px, 720px);
    }

    .ccda-masthead__inner {
        padding-top: 24px;
    }

    .ccda-masthead__identity {
        grid-template-columns: 105px minmax(0, 1fr);
        gap: 18px;
        padding-bottom: 25px;
    }

    .ccda-masthead__logo-disc {
        width: 105px;
    }

    .ccda-masthead__eyebrow {
        margin-bottom: 7px;
        font-size: .53rem;
    }

    .ccda-masthead__title {
        font-size: clamp(1.75rem, 9.4vw, 3.15rem) !important;
    }

    .ccda-masthead__subtitle {
        margin-top: 10px !important;
        font-size: .79rem;
    }

    .ccda-mag-nav {
        padding: 12px 0 14px;
    }

    .ccda-section__inner {
        padding: 34px 0 42px;
    }

    .ccda-section__header {
        margin-bottom: 17px;
    }

    .ccda-section__header h2 {
        font-size: clamp(2rem, 11vw, 3.2rem) !important;
    }

    .ccda-section__eyebrow {
        font-size: .56rem;
    }

    .ccda-interviews-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 9px;
    }

    .ccda-interview-card__copy {
        padding: 11px 9px 9px;
    }

    .ccda-interview-card__copy strong {
        font-size: .81rem;
    }

    .ccda-lead {
        display: block;
    }

    .ccda-lead__copy {
        padding-top: 13px;
    }

    .ccda-secondary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 15px 9px;
    }

    .ccda-card h3 {
        font-size: .81rem !important;
    }

    .ccda-agenda:not(.ccda-agenda--horizontal) .ccda-agenda__list,
    .ccda-agenda--horizontal .ccda-agenda__list {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .ccda-agenda:not(.ccda-agenda--horizontal) .ccda-event,
    .ccda-agenda--horizontal .ccda-event {
        padding: 12px 0;
        border-right: 0;
        border-bottom: 1px solid currentColor;
    }

    .ccda-agenda--horizontal {
        padding: 15px;
    }

    .ccda-rjc-ad,
    .ccda-newsletter-ad,
    .ccda-commercial--compact .ccda-rjc-ad {
        display: grid;
        grid-template-columns: 82px minmax(0, 1fr);
        gap: 14px;
        min-height: 0;
        padding: 16px;
        border-width: 4px;
    }

    .ccda-rjc-ad__brand,
    .ccda-newsletter-ad__brand,
    .ccda-commercial--compact .ccda-rjc-ad__brand {
        width: 82px;
    }

    .ccda-rjc-ad__copy > strong,
    .ccda-newsletter-ad__copy > strong,
    .ccda-commercial--compact .ccda-rjc-ad__copy > strong {
        font-size: 1.32rem;
    }

    .ccda-rjc-ad__copy > span,
    .ccda-newsletter-ad__copy > span {
        font-size: .76rem;
    }

    .ccda-rjc-ad__cta,
    .ccda-newsletter-ad__cta,
    .ccda-commercial--compact .ccda-rjc-ad__cta {
        grid-column: 1 / -1;
        margin-top: 3px;
    }

    .ccda-rubrique-hero__inner {
        padding: 34px 22px 40px;
    }
}

/* Nettoyage du précédent visuel d’ouverture sur les pages SEO de rubriques */
body.ccda-rubrique-landing-page .entry-content > .wp-block-image:first-of-type,
body.ccda-rubrique-landing-page .entry-content > figure:first-of-type,
body.ccda-rubrique-landing-page .entry-content > .wp-block-cover:first-of-type,
body.ccda-rubrique-landing-page .entry-content .elementor-widget-image:first-of-type,
body.ccda-rubrique-landing-page .entry-content .penci-featured-image:first-of-type,
body.ccda-rubrique-landing-page .entry-content .post-featured-image:first-of-type {
    display: none !important;
}

body.ccda-rubrique-landing-page .entry-content > h1:first-of-type,
body.ccda-rubrique-landing-page .entry-content > .page-title:first-of-type {
    display: none !important;
}

body.ccda-rubrique-landing-page .entry-content > .ccda-rubrique-hero {
    margin-top: 0;
}

body.ccda-rubrique-landing-page .entry-content img,
body.ccda-rubrique-landing-page .entry-content .wp-block-image,
body.ccda-rubrique-landing-page .entry-content .penci-image-holder {
    border-radius: var(--ccda-radius);
}
