/* ==========================================================================
   Adhésions : cartes 2 par ligne qui se recouvrent au défilement,
   fond terre battue (tennis) puis pétrole (pickleball)
   ========================================================================== */
.ccn-adh { background: var(--page); }
.ccn-adh .ccn-soft { color: var(--terre-600); }

/* Fond qui change de couleur entre tennis et pickleball */
.ccn-adh-sports { --adh-bg: var(--terre-600); background-color: var(--adh-bg); transition: background-color .9s var(--ease); }
.ccn-adh-sports[data-sport="pickleball"] { --adh-bg: var(--petrole-700); }
.ccn-adh-sec { padding-block: var(--sec-pad); color: #fff; }
.ccn-adh-sec--tennis { background: radial-gradient(90% 60% at 15% 0%, rgba(255, 255, 255, .12), rgba(255, 255, 255, 0) 60%); }
.ccn-adh-sec--pickle { background: radial-gradient(90% 60% at 85% 0%, rgba(255, 255, 255, .1), rgba(255, 255, 255, 0) 60%); }

.ccn-adh-head { max-width: 720px; margin: 0 auto var(--s-8); text-align: center; }
.ccn-adh-eyebrow { display: inline-block; margin: 0 0 var(--s-4); padding: 6px 14px; border-radius: 999px; background: rgba(255, 255, 255, .14); font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: #fff; }
.ccn-adh-eyebrow--dark { background: var(--terre-50); color: var(--terre-800); }
html body .ccn-adh .ccn-adh-head h2 { margin: 0 0 var(--s-4); font-size: clamp(2.25rem, 1.5rem + 2.6vw, 3.75rem); font-weight: 300; line-height: 1.05; letter-spacing: -.03em; color: #fff; }
.ccn-adh-head p { margin: 0; font-size: 1.0625rem; line-height: 1.6; color: rgba(255, 255, 255, .85); }
.ccn-adh-head--dark h2, html body .ccn-adh .ccn-adh-head--dark h2 { color: var(--ink); }
.ccn-adh-head--dark p { color: var(--text-soft); }

/* Rangées de 2 cartes empilées : chaque rangée se fige, la suivante glisse par-dessus */
.ccn-adh-stack { max-width: 1120px; margin-inline: auto; }
.ccn-adh-row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--grid-gap); margin-bottom: var(--s-8); }
.ccn-adh-row:last-child { margin-bottom: 0; }
@media (min-width: 1024px) and (min-height: 700px) {
	.ccn-adh-row { position: sticky; top: calc(110px + var(--r) * 22px); z-index: calc(1 + var(--r)); margin-bottom: 18vh; }
	.ccn-adh-row:last-child { margin-bottom: 0; }
}

.ccn-adh-card { position: relative; display: flex; flex-direction: column; min-height: 100%; padding: clamp(28px, 3vw, 44px); background: #fff; color: var(--ink); border-radius: 20px; box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .45), 0 2px 6px rgba(0, 0, 0, .06); box-sizing: border-box; }
.ccn-adh-badge { position: absolute; top: 22px; right: 22px; padding: 6px 12px; border-radius: 999px; background: var(--terre-50); color: var(--terre-700); font-size: 12px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.ccn-adh-sec--pickle .ccn-adh-badge { background: var(--petrole-50); color: var(--petrole-700); }
.ccn-adh-k { margin: 0 0 6px; font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--text-soft); }
html body .ccn-adh .ccn-adh-name { margin: 0 0 var(--s-5); font-size: clamp(1.5rem, 1.2rem + .9vw, 2rem); font-weight: 500; letter-spacing: -.01em; color: var(--ink); }
.ccn-adh-price { padding-bottom: var(--s-5); margin-bottom: var(--s-5); border-bottom: 1px solid var(--line); }
.ccn-adh-big { margin: 0; font-size: clamp(2.75rem, 2rem + 2.4vw, 4rem); font-weight: 600; line-height: 1; letter-spacing: -.03em; color: var(--ink); }
.ccn-adh-big small { font-size: 1rem; font-weight: 500; letter-spacing: 0; color: var(--text-soft); }
.ccn-adh-big span { margin-left: 8px; font-size: 1.125rem; font-weight: 400; letter-spacing: 0; color: var(--text-soft); }
.ccn-adh-sub { margin: 8px 0 0; font-size: 14px; color: var(--text-soft); }
.ccn-adh-year { display: inline-block; margin: 12px 0 0; padding: 6px 12px; border-radius: 999px; background: var(--surface); font-size: 14px; color: var(--graphite); }
.ccn-adh-year strong { color: var(--ink); }
.ccn-adh-feat { margin: 0 0 var(--s-5); padding: 0; list-style: none; }
.ccn-adh-feat li { position: relative; padding: 6px 0 6px 28px; font-size: 15.5px; line-height: 1.45; color: var(--graphite); }
.ccn-adh-feat li::before { content: ""; position: absolute; left: 0; top: 9px; width: 18px; height: 18px; border-radius: 50%; background: var(--terre-50) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B8541F' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") no-repeat center / 12px; }
.ccn-adh-sec--pickle .ccn-adh-feat li::before { background-color: var(--petrole-50); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231D4A63' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E"); }
.ccn-adh-note { margin: 0 0 var(--s-5); padding: 10px 14px; border-radius: 10px; background: var(--terre-50); font-size: 14px; color: var(--terre-800); }
.ccn-adh-btns { display: flex; flex-wrap: wrap; gap: var(--s-3); margin-top: auto; }
.ccn-adh-sec--pickle .ccn-b--acc { background: var(--petrole-700); }
.ccn-adh-sec--pickle .ccn-b--acc:hover { background: var(--petrole-800); }

/* Sections claires */
.ccn-adh-plain { padding-block: var(--sec-pad); }
.ccn-adh-plain--alt { background: var(--surface); }
.ccn-adh-cours { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--grid-gap); }
.ccn-adh-cour { display: flex; flex-direction: column; gap: 10px; padding: var(--s-6); background: #fff; border: 1px solid var(--line); border-radius: var(--radius-card); color: var(--ink); text-decoration: none; transition: transform .25s var(--ease), box-shadow .25s var(--ease); }
.ccn-adh-cour:hover { transform: translateY(-4px); box-shadow: 0 20px 40px -24px rgba(0, 0, 0, .3); }
.ccn-adh-cour-n { font-size: 1.125rem; font-weight: 500; }
.ccn-adh-cour-p { font-size: 2.25rem; font-weight: 600; letter-spacing: -.02em; }
.ccn-adh-cour-p small { margin-left: 6px; font-size: .9375rem; font-weight: 400; letter-spacing: 0; color: var(--text-soft); }
.ccn-adh-cour-x { flex: 1; font-size: 15px; line-height: 1.5; color: var(--text-soft); }
.ccn-adh-cour-go { font-size: 14px; font-weight: 500; color: var(--accent); }
.ccn-adh-cour-go::after { content: " →"; }

.ccn-adh-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--s-7) var(--col-gap); align-items: center; }
html body .ccn-adh .ccn-adh-split h2, html body .ccn-adh .ccn-adh-box h2, html body .ccn-adh .ccn-adh-faq h2 { margin: 0 0 var(--s-4); font-size: clamp(1.75rem, 1.3rem + 1.4vw, 2.5rem); font-weight: 300; letter-spacing: -.02em; color: var(--ink); }
.ccn-adh-split p { color: var(--text-soft); line-height: 1.6; }
.ccn-adh-months { display: grid; grid-template-columns: 1fr 1fr; gap: var(--grid-gap); margin: 0; padding: 0; list-style: none; }
.ccn-adh-months li { display: flex; flex-direction: column; gap: 6px; padding: var(--s-6); background: #fff; border: 1px solid var(--line); border-radius: var(--radius-card); }
.ccn-adh-months span { font-size: 15px; color: var(--text-soft); }
.ccn-adh-months b { font-size: 2.5rem; font-weight: 600; letter-spacing: -.02em; color: var(--terre-600); }
.ccn-adh-months small { margin-left: 6px; font-size: 1rem; font-weight: 400; color: var(--text-soft); }
.ccn-adh-two { display: grid; grid-template-columns: 1fr 1fr; gap: var(--grid-gap); }
.ccn-adh-box { padding: var(--s-7); background: #fff; border: 1px solid var(--line); border-radius: var(--radius-card); }
.ccn-adh-list { margin: 0; padding: 0; list-style: none; }
.ccn-adh-list li { padding: 12px 0; border-top: 1px solid var(--line); line-height: 1.5; color: var(--graphite); }
.ccn-adh-list li:first-child { border-top: 0; }
.ccn-adh-list b { color: var(--terre-600); font-weight: 600; margin-right: 6px; }
.ccn-adh-list--prices li { display: flex; justify-content: space-between; gap: 12px; }
.ccn-adh-list--prices b { color: var(--ink); margin: 0; }
.ccn-adh-small { margin: var(--s-4) 0 0; font-size: 14px; color: var(--text-soft); }

/* Offrir : photo du club + carte cadeau */
.ccn-adh-gift { padding-block: var(--sec-pad); }
.ccn-adh-gift-in { position: relative; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); min-height: 460px; border-radius: 24px; overflow: hidden; background: var(--ink); color: #fff; }
.ccn-adh-gift-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ccn-adh-gift-txt { display: flex; flex-direction: column; justify-content: center; padding: clamp(32px, 4vw, 64px); background: linear-gradient(135deg, var(--terre-700), var(--terre-500)); }
html body .ccn-adh .ccn-adh-gift h2 { margin: 0 0 var(--s-4); font-size: clamp(2rem, 1.4rem + 2vw, 3rem); font-weight: 300; line-height: 1.05; letter-spacing: -.02em; color: #fff; }
.ccn-adh-gift-p { margin: 0 0 var(--s-5); color: rgba(255, 255, 255, .9); line-height: 1.6; }
.ccn-adh-gift-price { margin: 0 0 var(--s-5); font-size: 1.125rem; }
.ccn-adh-gift-price b { font-size: 3rem; font-weight: 600; letter-spacing: -.02em; }

/* FAQ */
.ccn-adh-faq { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--s-7) var(--col-gap); align-items: start; }
.ccn-adh-faq > div > p { color: var(--text-soft); }
.ccn-adh-q { border-bottom: 1px solid var(--line); }
.ccn-adh-q summary { list-style: none; cursor: pointer; padding: 20px 36px 20px 0; position: relative; font-size: 1.0625rem; font-weight: 500; }
.ccn-adh-q summary::-webkit-details-marker { display: none; }
.ccn-adh-q summary::after { content: "+"; position: absolute; right: 4px; top: 14px; font-size: 26px; font-weight: 300; color: var(--text-soft); }
.ccn-adh-q[open] summary::after { content: "−"; }
.ccn-adh-q p { margin: 0 0 20px; color: var(--graphite); line-height: 1.6; }

@media (max-width: 1023px) {
	.ccn-adh-cours { grid-template-columns: 1fr 1fr; }
	.ccn-adh-split, .ccn-adh-two, .ccn-adh-faq, .ccn-adh-gift-in { grid-template-columns: 1fr; }
	.ccn-adh-gift-img { aspect-ratio: 16 / 9; }
}
@media (max-width: 719px) {
	.ccn-adh-row { grid-template-columns: 1fr; margin-bottom: var(--grid-gap); }
	.ccn-adh-cours, .ccn-adh-months { grid-template-columns: 1fr; }
	.ccn-adh-badge { position: static; align-self: flex-start; margin-bottom: 12px; }
}
@media (prefers-reduced-motion: reduce) { .ccn-adh-sports { transition: none; } .ccn-adh-cour { transition: none; } }

/* Priorité sur le style des <article> du thème parent (marges intérieures annulées) */
html body .ccn-adh article.ccn-adh-card { padding: clamp(28px, 3vw, 44px); margin: 0; border-radius: 20px; background: #fff; }
html body .ccn-adh .ccn-adh-card.has-badge .ccn-adh-name, html body .ccn-adh .ccn-adh-card.has-badge .ccn-adh-k { padding-right: 150px; }
@media (max-width: 719px) { html body .ccn-adh .ccn-adh-card.has-badge .ccn-adh-name, html body .ccn-adh .ccn-adh-card.has-badge .ccn-adh-k { padding-right: 0; } }
.ccn-adh-gift-txt .ccn-adh-eyebrow { align-self: flex-start; }

/* Rangées de même hauteur, toutes figées au même niveau : chaque rangée remplace entièrement la précédente */
@media (min-width: 720px) {
	html body .ccn-adh .ccn-adh-stack article.ccn-adh-card { height: var(--card-h, auto); }
}
@media (min-width: 1024px) and (min-height: 700px) {
	.ccn-adh-row { top: 110px; }
	.ccn-adh-row { background: transparent; }
}

/* Rangées centrées dans l'écran pendant l'empilement ; espace intérieur (et non marge) pour que toutes
   les rangées quittent l'écran ensemble ; la dernière reste centrée un moment avant la suite de la page. */
@media (min-width: 1024px) and (min-height: 700px) {
	.ccn-adh-stack .ccn-adh-row,
	.ccn-adh-stack .ccn-adh-row:last-child { top: max(88px, calc((100vh - var(--card-h, 600px)) / 2 + 30px)); margin-bottom: 0; padding-bottom: 28vh; }
	.ccn-adh-stack .ccn-adh-row:last-child { padding-bottom: 18vh; }
	.ccn-adh-sec { padding-bottom: calc(var(--sec-pad) - 8vh); }
}
@media (min-width: 1024px) and (min-height: 700px) {
	.ccn-adh-stack .ccn-adh-row:last-child { padding-bottom: 0; }
	.ccn-adh-stack::after { content: ""; display: block; height: 32vh; }
}

/* Image en haut de chaque carte (bord à bord) ; badge posé sur l'image */
html body .ccn-adh article.ccn-adh-card.has-img { padding-top: 0; }
.ccn-adh-img { margin: 0 calc(-1 * clamp(28px, 3vw, 44px)) clamp(22px, 2.4vw, 32px); height: 190px; overflow: hidden; border-radius: 20px 20px 0 0; }
.ccn-adh-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .7s var(--ease); }
.ccn-adh-card:hover .ccn-adh-img img { transform: scale(1.04); }
.ccn-adh-card.has-img .ccn-adh-badge { top: 16px; right: 16px; z-index: 1; background: #fff; }
html body .ccn-adh .ccn-adh-card.has-img.has-badge .ccn-adh-name, html body .ccn-adh .ccn-adh-card.has-img.has-badge .ccn-adh-k { padding-right: 0; }
@media (max-width: 719px) { .ccn-adh-img { height: 160px; } }

/* Marge sous la dernière rangée (la section garde sa marge normale sous les cartes) */
@media (min-width: 1024px) and (min-height: 700px) {
	.ccn-adh-sec { padding-bottom: var(--sec-pad); }
}
/* Cartes plus compactes pour tenir entières dans l'écran pendant l'empilement */
.ccn-adh-img { height: 140px; margin-bottom: 20px; }
html body .ccn-adh article.ccn-adh-card { padding-bottom: 28px; }
html body .ccn-adh .ccn-adh-name { margin-bottom: 12px; font-size: clamp(1.375rem, 1.1rem + .7vw, 1.75rem); }
.ccn-adh-big { font-size: clamp(2.25rem, 1.8rem + 1.6vw, 3.25rem); }
.ccn-adh-price { padding-bottom: 14px; margin-bottom: 14px; }
.ccn-adh-sub { margin-top: 4px; }
.ccn-adh-year { margin-top: 8px; }
.ccn-adh-feat { margin-bottom: 14px; }
.ccn-adh-feat li { padding: 3px 0 3px 28px; font-size: 15px; }
.ccn-adh-feat li::before { top: 6px; }
.ccn-adh-note { margin-bottom: 16px; padding: 8px 12px; font-size: 13.5px; }

/* Lignes de court en fond (tennis / pickleball), très discrètes, en perspective, figées pendant l'empilement des cartes */
.ccn-adh-sec { position: relative; overflow: clip; }
.ccn-adh-lines { position: sticky; top: 0; height: 100vh; margin-bottom: -100vh; pointer-events: none; z-index: 0; perspective: 1400px; overflow: hidden; }
.ccn-adh-lines::before { content: ""; position: absolute; left: 50%; top: 56%; width: min(1500px, 115vw); aspect-ratio: 2457 / 1177; transform: translate(-50%, -50%) rotateX(52deg); background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%27-40%20-40%202457%201177%27%20fill%3D%27none%27%20stroke%3D%27%23fff%27%20stroke-width%3D%2710%27%3E%3Crect%20x%3D%270%27%20y%3D%270%27%20width%3D%272377%27%20height%3D%271097%27%2F%3E%3Cpath%20d%3D%27M0%20137H2377M0%20960H2377M548.5%20137V960M1828.5%20137V960M548.5%20548.5H1828.5M0%20548.5H30M2347%20548.5H2377%27%2F%3E%3Cpath%20d%3D%27M1188.5%20-30V1127%27%20stroke-width%3D%276%27%20stroke-dasharray%3D%2718%2014%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; opacity: .16; }
.ccn-adh-sec--pickle .ccn-adh-lines::before { aspect-ratio: 1401 / 670; width: min(1300px, 105vw); background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%27-30%20-30%201401%20670%27%20fill%3D%27none%27%20stroke%3D%27%23fff%27%20stroke-width%3D%277%27%3E%3Crect%20x%3D%270%27%20y%3D%270%27%20width%3D%271341%27%20height%3D%27610%27%2F%3E%3Cpath%20d%3D%27M457.5%200V610M883.5%200V610M0%20305H457.5M883.5%20305H1341%27%2F%3E%3Cpath%20d%3D%27M670.5%20-20V630%27%20stroke-width%3D%275%27%20stroke-dasharray%3D%2714%2010%27%2F%3E%3C%2Fsvg%3E"); opacity: .15; }
.ccn-adh-sec > .ccn-wrap { position: relative; z-index: 1; }
@media (max-width: 719px) { .ccn-adh-lines::before { width: 160vw; opacity: .12; } }

/* Lignes artistiques animées (remplacent le tracé figé) : se dessinent, s'effacent, filet qui défile, balle en mouvement */
.ccn-adh-lines::before { display: none; }
.ccn-adh-lines svg { position: absolute; inset: -4%; width: 108%; height: 108%; animation: ccn-lines-drift 26s ease-in-out infinite alternate; }
.ccn-adh-lines .ln { fill: none; stroke: #fff; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 2600; stroke-dashoffset: 2600; opacity: 0; animation: ccn-lines-draw 11s cubic-bezier(.65, 0, .35, 1) var(--d, 0s) infinite; }
.ccn-adh-lines .ln--soft { stroke-width: 1.4; }
.ccn-adh-lines .dash { fill: none; stroke: #fff; stroke-width: 2; stroke-dasharray: 10 14; opacity: .35; animation: ccn-lines-flow 5s linear infinite; }
.ccn-adh-lines .traj { fill: none; stroke: #fff; stroke-width: 2; stroke-linecap: round; stroke-dasharray: 1 16; opacity: .45; animation: ccn-lines-flow 4s linear infinite reverse; }
.ccn-adh-lines .ball { fill: #fff; opacity: .75; }
.ccn-adh-lines .ball--pb circle { fill: #E9F24B; }
.ccn-adh-lines .ball--pb circle.h { fill: rgba(15, 44, 59, .5); }
@keyframes ccn-lines-draw {
	0% { stroke-dashoffset: 2600; opacity: 0; }
	12% { opacity: .55; }
	50% { stroke-dashoffset: 0; opacity: .55; }
	78% { stroke-dashoffset: 0; opacity: .45; }
	100% { stroke-dashoffset: -2600; opacity: 0; }
}
@keyframes ccn-lines-flow { to { stroke-dashoffset: -240; } }
@keyframes ccn-lines-drift { from { transform: translate3d(-1.5%, -1%, 0) rotate(-1deg); } to { transform: translate3d(1.5%, 1%, 0) rotate(1deg); } }
@media (prefers-reduced-motion: reduce) {
	.ccn-adh-lines svg, .ccn-adh-lines .dash, .ccn-adh-lines .traj { animation: none; }
	.ccn-adh-lines .ln { animation: none; stroke-dashoffset: 0; opacity: .4; }
	.ccn-adh-lines .ball { display: none; }
}

/* Titre de section figé (tennis / pickleball) : les cartes s'empilent en dessous, puis glissent sous le titre à la fin */
@media (min-width: 1024px) and (min-height: 700px) {
	.ccn-adh-sec.has-sticky-head .ccn-adh-head { position: sticky; top: 56px; z-index: 5; margin: 0 auto; padding: 22px 0 18px; max-width: none; background: var(--adh-bg); transition: background-color .9s var(--ease); box-shadow: 0 18px 24px -18px rgba(0, 0, 0, .18); }
	.ccn-adh-sec.has-sticky-head .ccn-adh-head > * { max-width: 760px; margin-left: auto; margin-right: auto; }
	html body .ccn-adh .ccn-adh-sec.has-sticky-head .ccn-adh-head h2 { font-size: clamp(2rem, 1.4rem + 1.6vw, 2.75rem); margin-bottom: 8px; }
	.ccn-adh-sec.has-sticky-head .ccn-adh-eyebrow { margin-bottom: 10px; padding: 4px 12px; font-size: 12px; }
	.ccn-adh-sec.has-sticky-head .ccn-adh-head p:last-child { font-size: .9375rem; line-height: 1.5; }
	.ccn-adh-sec.has-sticky-head .ccn-adh-stack .ccn-adh-row,
	.ccn-adh-sec.has-sticky-head .ccn-adh-stack .ccn-adh-row:last-child { top: var(--row-top, 300px); }
	.ccn-adh-sec.has-sticky-head .ccn-adh-stack { margin-top: 24px; }
}
@media (min-width: 1024px) and (min-height: 700px) {
	.ccn-adh-sec.has-sticky-head .ccn-adh-head { padding: 16px 0 14px; }
	html body .ccn-adh .ccn-adh-sec.has-sticky-head .ccn-adh-head h2 { font-size: clamp(1.875rem, 1.3rem + 1.4vw, 2.5rem); margin-bottom: 6px; }
	.ccn-adh-sec.has-sticky-head .ccn-adh-eyebrow { margin-bottom: 8px; }
	.ccn-adh-sec.has-sticky-head .ccn-adh-img { height: 110px; }
}

/* Prorata : frise des 12 mois de la saison (exemple : arrivée en décembre) */
.ccn-adh-months-line { display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; margin: 0; padding: 0; list-style: none; }
.ccn-adh-months-line li { display: grid; place-items: center; min-height: 64px; border-radius: 12px; background: var(--terre-600); color: #fff; font-weight: 500; font-size: 15px; }
.ccn-adh-months-line li.is-off { background: transparent; color: var(--text-soft); border: 1px dashed var(--line); text-decoration: line-through; }
.ccn-adh-months-line li.is-start { box-shadow: 0 0 0 3px var(--page), 0 0 0 5px var(--terre-600); }
.ccn-adh-months-line li.ccn-adh-ml-note { grid-column: 1 / -1; min-height: 0; background: none; color: var(--text-soft); font-weight: 400; font-size: 14px; }
@media (max-width: 639px) { .ccn-adh-months-line { grid-template-columns: repeat(4, 1fr); } }
