/* 1. VARIABLES ============================================================= */
:root {
	--cp-color-navy-950: #15385f;
	--cp-color-navy-900: #15385f;
	--cp-color-blue-700: #2368a2;
	--cp-color-blue-600: #2368a2;
	--cp-color-blue-100: #eaf4fc;
	--cp-color-yellow-500: #ffca05;
	--cp-color-yellow-600: #9a7100;
	--cp-color-surface: #fff;
	--cp-color-canvas: #eaf4fc;
	--cp-color-text: #152238;
	--cp-color-muted: #5c6e85;
	--cp-color-success: #197a55;
	--cp-color-error: #b42318;
	--cp-color-border: #d9e4ef;
	--cp-radius-sm: 14px;
	--cp-radius-md: 14px;
	--cp-radius-lg: 20px;
	--cp-shadow-card: 0 8px 24px rgba(21, 56, 95, .1);
	--cp-card-padding: 24px;
	--cp-card-padding-mobile: 18px;
	--cp-space-1: 4px;
	--cp-space-2: 8px;
	--cp-space-3: 12px;
	--cp-space-4: 16px;
	--cp-space-5: 24px;
	--cp-space-6: 32px;
	--cp-space-7: 48px;
	--cp-space-8: 64px;
	--cp-content-width: 1180px;
}

/* 2. COMPOSANTS ============================================================ */
body { color: var(--cp-color-text); }
#wrapper { width: 100%; max-width: none; }
.container { width: min(100% - 32px, var(--cp-content-width)); max-width: var(--cp-content-width); box-sizing: border-box; }
.fooot { width: min(100% - 32px, var(--cp-content-width)); max-width: var(--cp-content-width); box-sizing: border-box; }
.cp-eyebrow { color: var(--cp-color-yellow-600); }
:where(.cp-pinned, .cp-newcomers, .cp-deadline__heading, .cp-inner-hero, .cp-footer) .cp-eyebrow { color: var(--cp-color-yellow-500); }
.cp-home .cp-section-heading h2::after,
.cp-pinned .cp-section-heading h2::after { background: var(--cp-color-yellow-500); }
body.home .cp-news .cp-card::before,
body.home .cp-pinned__item::before { background: var(--cp-color-yellow-500); }
.cp-featured--no-image { border-top-color: var(--cp-color-yellow-500); }

.cp-button,
.cp-header-action,
.cp-inner-button,
.cp-document-card__primary,
.cp-newcomers__content a,
.cp-alert-card > a,
.cp-deadline__event > a,
.cp-deadline__empty a {
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 10px 16px;
	border: 1px solid transparent;
	border-radius: var(--cp-radius-md);
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none;
	transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}
.cp-button:hover,
.cp-header-action:hover,
.cp-inner-button:hover,
.cp-document-card__primary:hover,
.cp-newcomers__content a:hover,
.cp-alert-card > a:hover,
.cp-deadline__event > a:hover,
.cp-deadline__empty a:hover { transform: translateY(-1px); }

.cp-button--primary,
.cp-header-action,
.cp-document-card__primary,
.cp-newcomers__primary,
.cp-deadline__event > a,
.cp-deadline__empty a {
	border-color: var(--cp-color-yellow-500);
	background: var(--cp-color-yellow-500);
	color: var(--cp-color-navy-950);
}
.cp-button--primary:hover,
.cp-header-action:hover,
.cp-document-card__primary:hover,
.cp-newcomers__primary:hover,
.cp-deadline__event > a:hover,
.cp-deadline__empty a:hover { border-color: var(--cp-color-yellow-600); background: var(--cp-color-yellow-600); color: #fff; }

.cp-button--secondary,
.cp-inner-button,
.cp-alert-card > a {
	border-color: var(--cp-color-blue-700);
	background: var(--cp-color-blue-700);
	color: #fff;
}
.cp-button--secondary:hover,
.cp-inner-button:hover,
.cp-alert-card > a:hover { border-color: var(--cp-color-navy-950); background: var(--cp-color-navy-950); color: #fff; }

.cp-button--tertiary,
.cp-text-link,
.cp-newcomers__content a:not(.cp-newcomers__primary),
.cp-documents-recent .cp-section-heading > a {
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	border: 0;
	background: transparent;
	color: var(--cp-color-blue-700);
	font-weight: 800;
	text-decoration: none;
}

.cp-card-standard,
.cp-card,
.cp-content-card,
.cp-club-card,
.cp-competition-panel,
.cp-card-information,
.cp-pinned,
.cp-deadline,
.cp-contact-card,
.cp-person-card,
.cp-secretary-card,
.cp-instance-card,
.cp-document-card,
.cp-document-link,
.cp-recent-document {
	border: 1px solid var(--cp-color-border);
	border-radius: var(--cp-radius-md);
	box-shadow: var(--cp-shadow-card);
}
.cp-card-information,
.cp-deadline { border-radius: var(--cp-radius-lg); }
.cp-alert,
.cp-alert-card,
.cp-club-notice { border: 1px solid var(--cp-color-border); border-radius: var(--cp-radius-md); }
.cp-alert--success { border-color: color-mix(in srgb, var(--cp-color-success) 35%, white); background: color-mix(in srgb, var(--cp-color-success) 9%, white); color: var(--cp-color-success); }
.cp-alert--error { border-color: color-mix(in srgb, var(--cp-color-error) 35%, white); background: color-mix(in srgb, var(--cp-color-error) 8%, white); color: var(--cp-color-error); }

.cp-card-standard,
.cp-card-information,
.cp-contact-card { padding: var(--cp-card-padding); }
.cp-card__body,
.cp-club-card,
.cp-competition-panel,
.cp-person-card__body,
.cp-secretary-card__content,
.cp-instance-card > div:last-child,
.cp-recent-document { padding: var(--cp-card-padding); }

.cp-page-shell { width: min(100% - 2rem, var(--cp-content-width)); }
.cp-page-shell .cp-inner-hero,
.cp-page-shell .cp-content-card { border-radius: var(--cp-radius-lg); }
.cp-page-shell .cp-content-card { background: var(--cp-color-surface); box-shadow: var(--cp-shadow-card); }
.cp-page-shell :where(a, button, input, select, textarea):focus-visible {
	outline: 3px solid var(--cp-color-yellow-500);
	outline-offset: 3px;
}
.cp-page-shell :where(button, .button, [class*="__primary"]) { min-height: 44px; }

/* Internal page identity: compact enough to expose useful content immediately. */
.cp-inner-hero {
	min-height: 0;
	padding: var(--cp-space-5) var(--cp-space-6);
	border-radius: var(--cp-radius-lg);
}
.cp-inner-hero > div { max-width: 860px; }
.cp-inner-hero h1 {
	margin: .3rem 0 .55rem;
	font-size: clamp(2rem, 3.8vw, 2.75rem);
	line-height: 1.04;
}
.cp-inner-hero p:last-child {
	max-width: 760px;
	font-size: 1rem;
	line-height: 1.55;
}
.cp-inner-hero__mark {
	flex: 0 0 auto;
	padding: .45rem .7rem;
	border: 1px solid rgba(255,202,5,.4);
	border-radius: 999px;
	font-size: .75rem;
	line-height: 1;
}
.cp-inner-hero::after { width: 220px; height: 220px; right: -55px; top: -115px; border-width: 34px; }

/* The legacy desktop header imposed a 306px minimum and treated button padding
 * outside its minimum height, which could push the CTA against the lower edge. */
body:not(.home) #header { height: auto; min-height: 0; }
body:not(.home) .cp-header-brand { height: auto; min-height: 0; }
body:not(.home) .cp-header-action {
	min-height: 44px;
	box-sizing: border-box;
	margin-bottom: var(--cp-space-2);
	padding: .65rem 1rem;
}

/* Calendar action cards: explicit placement prevents labels and file metadata
 * from creating an unintended second row. */
.cp-action-grid > a {
	grid-template-columns: 48px minmax(0, 1fr) auto;
	grid-template-rows: auto auto;
	column-gap: var(--cp-space-3);
	row-gap: var(--cp-space-1);
}
.cp-action-grid > a > span:first-child { grid-column: 1; grid-row: 1 / 3; }
.cp-action-grid > a > strong { grid-column: 2; grid-row: 1; align-self: end; }
.cp-action-grid > a > small { grid-column: 2; grid-row: 2; align-self: start; margin-top: 0; }
.cp-action-grid > a > i { grid-column: 3; grid-row: 1 / 3; align-self: center; justify-self: end; }
.cp-action-grid > a:has(.cp-file-meta) > i { grid-row: 1; align-self: end; }
.cp-action-grid > a > .cp-file-meta {
	grid-column: 3;
	grid-row: 2;
	align-self: start;
	justify-self: end;
	width: auto;
	height: auto;
	min-height: 0;
	margin: 0;
	padding: .2rem .45rem;
	border-radius: .4rem;
	background: var(--cp-color-blue-100);
	color: var(--cp-color-navy-950);
	font-size: .72rem !important;
	line-height: 1.2;
}

/* Legacy editorial PDF links must not stick to the surrounding sentence. */
:where(.cp-commission-content, .cp-modern-article__content, .cp-content-card .entry, .cp-legacy-modern) a:has(> .cp-file-meta) {
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	gap: var(--cp-space-2);
	margin: var(--cp-space-2) var(--cp-space-1);
	padding: .6rem .8rem;
	border: 1px solid var(--cp-color-border);
	border-radius: var(--cp-radius-sm);
	background: var(--cp-color-blue-100);
	color: var(--cp-color-blue-700);
	font-weight: 800;
	line-height: 1.35;
}
:where(.cp-commission-content, .cp-modern-article__content, .cp-content-card .entry, .cp-legacy-modern) a:has(> .cp-file-meta):hover {
	border-color: var(--cp-color-blue-700);
	background: #fff;
}
:where(.cp-commission-content, .cp-modern-article__content, .cp-content-card .entry, .cp-legacy-modern) a:has(> .cp-file-meta) > .cp-file-meta {
	margin-left: 0;
}

/* 3. PAGES ET RESPONSIVE =================================================== */
.cp-data-browser { margin: var(--cp-space-4) 0; scroll-margin-top: 1rem; }
.cp-data-toolbar { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(150px, .55fr) minmax(110px, .35fr) auto auto; align-items: end; gap: .75rem; margin-bottom: var(--cp-space-3); padding: var(--cp-space-3); border: 1px solid var(--cp-color-border); border-radius: var(--cp-radius-md); background: #f4f8fc; }
.cp-data-toolbar label { display: grid; gap: .35rem; color: var(--cp-color-muted); font-size: .78rem; font-weight: 800; }
.cp-data-toolbar :where(input, select, button) { min-height: 44px; border: 1px solid var(--cp-color-border); border-radius: var(--cp-radius-sm); background: #fff; color: var(--cp-color-text); }
.cp-data-toolbar :where(input, select) { width: 100%; padding: .65rem .75rem; }
.cp-data-toolbar button { padding: .65rem .85rem; color: var(--cp-color-blue-700); font-weight: 800; cursor: pointer; }
.cp-data-browser { overflow: visible; }
.cp-data-table { width: 100%; border-collapse: separate; border-spacing: 0; }
.cp-data-table thead th { position: sticky; z-index: 3; top: 0; padding: 0; background: var(--cp-color-navy-900); }
.cp-data-sort { width: 100%; min-height: 48px; padding: .7rem .8rem; border: 0; background: transparent; color: #fff; font: inherit; font-weight: 800; text-align: left; cursor: pointer; }
.cp-data-sort::after { content: ' ↕'; color: var(--cp-color-yellow-500); }
.cp-data-table tbody tr:nth-child(even) { background: #f4f8fc; }
.cp-data-table tbody tr:hover { background: #fff6d3; }
.cp-data-table td { padding: .7rem .8rem; border-bottom: 1px solid var(--cp-color-border); vertical-align: top; }
.cp-data-footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: var(--cp-space-3); color: var(--cp-color-muted); font-size: .85rem; }
.cp-data-footer nav { display: flex; flex-wrap: wrap; gap: .35rem; }
.cp-data-footer button { min-width: 40px; min-height: 40px; border: 1px solid var(--cp-color-border); border-radius: 8px; background: #fff; color: var(--cp-color-blue-700); font-weight: 800; cursor: pointer; }
.cp-data-footer button[aria-current="page"] { border-color: var(--cp-color-blue-700); background: var(--cp-color-blue-700); color: #fff; }

.cp-podium-filters { grid-template-columns: minmax(180px, 1fr) minmax(150px, .7fr) minmax(190px, 1fr) auto; }
.cp-podium-group > header { margin-bottom: var(--cp-space-3); }
.cp-podium-group > header h3 { margin-top: .25rem; color: var(--cp-color-text); font-size: 1.35rem; }
.cp-podium-group__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--cp-space-3); }
.cp-podium-group__grid .wp-block-image { width: auto !important; margin: 0 !important; overflow: hidden; border-radius: var(--cp-radius-md); background: #eef4f8; }
.cp-podium-group__grid .wp-block-image img { width: 100% !important; height: 220px !important; display: block; border-radius: var(--cp-radius-md); object-fit: cover; }

body.home .cp-quick { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.cp-quick--footer {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--cp-space-3);
	margin-top: var(--cp-space-6);
	margin-bottom: 0;
}
.cp-quick--footer .cp-quick__item {
	min-height: 68px;
	grid-template-columns: 38px minmax(0, 1fr) 16px;
	gap: var(--cp-space-3);
	padding: var(--cp-space-3);
	border-color: rgba(255,255,255,.12);
	background: linear-gradient(135deg, var(--cp-color-navy-950), var(--cp-color-blue-700));
	color: #fff;
}
.cp-quick--footer .cp-quick__item:hover { color: #fff; }
.cp-quick--footer .cp-quick__icon { width: 38px; height: 38px; background: var(--cp-color-yellow-500); color: var(--cp-color-navy-950); }
.cp-quick--footer .cp-quick__icon::before { display: none; }
.cp-quick--footer .cp-quick__icon svg { width: 21px; height: 21px; display: block; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.cp-quick--footer .cp-quick__icon svg .cp-icon-fill { fill: currentColor; stroke: none; }
.cp-quick--footer .cp-quick__item strong { color: #fff; }
.cp-quick--footer .cp-quick__item small { color: #d5e5f2; }
.cp-quick--footer .cp-quick__arrow { color: var(--cp-color-yellow-500); }

.cp-deadline {
	display: grid;
	grid-template-columns: minmax(250px, .68fr) minmax(0, 1.9fr);
	align-items: stretch;
	margin: var(--cp-space-5) 0 var(--cp-space-6);
	overflow: hidden;
	border: 1px solid rgba(18, 54, 93, .12);
	border-radius: var(--cp-radius-lg);
	background: var(--cp-color-surface);
	box-shadow: 0 18px 38px rgba(21,56,95,.12);
}
.cp-deadline__heading { display: flex; align-items: center; gap: var(--cp-space-3); padding: var(--cp-space-4); background: linear-gradient(125deg, var(--cp-color-navy-950), #204f7e); }
.cp-deadline__icon { flex: 0 0 46px; height: 46px; display: grid; place-items: center; border: 1px solid rgba(255,202,5,.35); border-radius: 50%; color: var(--cp-color-yellow-500); }
.cp-deadline__icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.cp-deadline__heading .cp-eyebrow { color: var(--cp-color-yellow-500); }
.cp-deadline__heading h2 { margin-top: .2rem; color: #fff; font-size: clamp(1.05rem, 1.6vw, 1.35rem); line-height: 1.2; }
.cp-deadline__event { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--cp-space-4); padding: var(--cp-space-4) var(--cp-space-5); }
.cp-deadline__event time { width: 82px; display: grid; place-items: center; padding: .65rem; border: 1px solid rgba(255,202,5,.4); border-radius: var(--cp-radius-md); background: linear-gradient(145deg,#fff9df,#fff1a9); color: var(--cp-color-navy-950); text-align: center; }
.cp-deadline__event time strong { color: var(--cp-color-blue-700); font-size: 2rem; line-height: 1; }
.cp-deadline__event time span { margin-top: .25rem; font-size: .75rem; font-weight: 800; text-transform: uppercase; }
.cp-deadline__event p { margin-bottom: .25rem; color: var(--cp-color-blue-700); font-size: .78rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.cp-deadline__event h3 { color: var(--cp-color-text); font-size: clamp(1.35rem, 2.4vw, 2rem); }
.cp-deadline__event > a,
.cp-deadline__empty a { min-height: 44px; display: inline-flex; align-items: center; gap: .65rem; padding: .75rem 1rem; border-radius: var(--cp-radius-sm); background: var(--cp-color-yellow-500); color: var(--cp-color-navy-950); font-weight: 800; }
.cp-deadline__empty { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: var(--cp-space-5); }

body.home .cp-spotlight { grid-template-columns: minmax(300px, .82fr) minmax(0, 1.58fr); }
body.home .cp-spotlight .cp-pinned { order: 1; }
body.home .cp-spotlight .cp-featured { order: 2; }

.cp-documents-recent { margin-top: var(--cp-space-6); padding: var(--cp-space-5); border-radius: var(--cp-radius-lg); background: rgba(255,255,255,.72); box-shadow: var(--cp-shadow-card); }
.cp-documents-recent .cp-section-heading > a { align-self: center; color: var(--cp-color-blue-700); font-weight: 800; }
.cp-documents-recent__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--cp-space-3); }
.cp-recent-document { min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--cp-space-3); padding: var(--cp-space-4); border: 1px solid var(--cp-color-border); border-radius: var(--cp-radius-md); background: var(--cp-color-surface); }
.cp-recent-document__type { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 12px; background: var(--cp-color-navy-900); color: var(--cp-color-yellow-500); font-size: .75rem; font-weight: 900; }
.cp-recent-document time { color: var(--cp-color-blue-700); font-size: .75rem; font-weight: 800; }
.cp-recent-document h3 { margin: .35rem 0; overflow-wrap: anywhere; color: var(--cp-color-text); font-size: 1rem; line-height: 1.3; }
.cp-recent-document p { color: var(--cp-color-muted); font-size: .8rem; }
.cp-recent-document > a { grid-column: 2; justify-self: start; color: var(--cp-color-blue-700); font-weight: 800; }

.cp-newcomers { min-height: 290px; display: grid; grid-template-columns: minmax(250px, .8fr) minmax(0, 1.2fr); margin-top: var(--cp-space-5); overflow: hidden; border-radius: var(--cp-radius-lg); background: linear-gradient(125deg, var(--cp-color-navy-950), var(--cp-color-blue-700)); box-shadow: var(--cp-shadow-card); }
.cp-newcomers__visual { position: relative; min-height: 260px; background: radial-gradient(circle at 45% 40%, rgba(255,196,0,.28), transparent 32%); }
.cp-newcomers__visual span { width: 120px; height: 120px; position: absolute; top: 58px; border: 10px solid #fff; border-radius: 50%; }
.cp-newcomers__visual span:first-child { left: 24%; background: #185a98; transform: rotate(-18deg); }
.cp-newcomers__visual span:nth-child(2) { left: 48%; background: var(--cp-color-yellow-500); transform: rotate(18deg); }
.cp-newcomers__visual span::after { width: 28px; height: 100px; content: ''; position: absolute; top: 92px; left: 46px; border-radius: 0 0 14px 14px; background: inherit; }
.cp-newcomers__visual i { width: 25px; height: 25px; position: absolute; top: 32px; left: 48%; border-radius: 50%; background: #fff; box-shadow: 0 8px 18px rgba(0,0,0,.18); }
.cp-newcomers__content { align-self: center; padding: var(--cp-space-6); }
.cp-newcomers .cp-eyebrow { color: var(--cp-color-yellow-500); }
.cp-newcomers h2 { max-width: 650px; margin: .4rem 0 .8rem; color: #fff; font-size: clamp(1.8rem, 3vw, 2.8rem); line-height: 1.08; }
.cp-newcomers p:not(.cp-eyebrow) { max-width: 620px; color: rgba(255,255,255,.8); font-size: 1rem; line-height: 1.65; }
.cp-newcomers__content > div { display: flex; flex-wrap: wrap; align-items: center; gap: var(--cp-space-3); margin-top: var(--cp-space-4); }
.cp-newcomers__content a { min-height: 44px; display: inline-flex; align-items: center; padding: .75rem 1rem; color: #fff; font-weight: 800; }
.cp-newcomers__content .cp-newcomers__primary { border-radius: var(--cp-radius-sm); background: var(--cp-color-yellow-500); color: var(--cp-color-navy-950); }
.cp-newcomers__content a:not(.cp-newcomers__primary) { padding: .75rem 1rem; border: 1px solid rgba(255,255,255,.55); border-radius: var(--cp-radius-sm); background: rgba(255,255,255,.1); color: #fff; }
.cp-newcomers__content a:not(.cp-newcomers__primary):hover { border-color: #fff; background: #fff; color: var(--cp-color-navy-950); }

/* Club profile sections: keep titles and content clear of the card edge. */
.cp-club-profile > .cp-club-section {
	padding: var(--cp-space-5);
}
.cp-club-profile > .cp-club-section .cp-club-section__title > span {
	flex: 0 0 48px;
	text-align: center;
}

@media (max-width: 639px) {
	.cp-card-standard,
	.cp-card-information,
	.cp-contact-card,
	.cp-card__body,
	.cp-club-card,
	.cp-competition-panel,
	.cp-person-card__body,
	.cp-secretary-card__content,
	.cp-instance-card > div:last-child,
	.cp-recent-document { padding: var(--cp-card-padding-mobile); }
	.cp-podium-group__grid { grid-template-columns: 1fr; }
	.cp-podium-group__grid .wp-block-image img { height: auto !important; }
	.cp-data-toolbar { grid-template-columns: 1fr 1fr; }
	.cp-data-search { grid-column: 1 / -1; }
	.cp-data-browser .cp-data-table,
	.cp-data-browser .cp-data-table tbody,
	.cp-data-browser .cp-data-table tr,
	.cp-data-browser .cp-data-table td { display: block; width: 100%; }
	.cp-data-browser .cp-data-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.cp-data-browser .cp-data-table tbody { display: grid; gap: .75rem; }
	.cp-data-browser .cp-data-table tr { padding: .6rem .8rem; border: 1px solid var(--cp-color-border); border-radius: var(--cp-radius-md); background: #fff !important; box-shadow: 0 7px 18px rgba(18,54,93,.07); }
	.cp-data-browser .cp-data-table td { display: grid; grid-template-columns: minmax(105px, .42fr) minmax(0, 1fr); gap: .7rem; padding: .55rem 0; border-bottom: 1px solid #e8eff5; }
	.cp-data-browser .cp-data-table td:last-child { border-bottom: 0; }
	.cp-data-browser .cp-data-table td::before { content: attr(data-label); color: var(--cp-color-blue-700); font-size: .72rem; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
	.cp-data-footer { align-items: flex-start; flex-direction: column; }
	.cp-page-shell { width: min(100% - 1rem, var(--cp-content-width)); }
	.cp-page-shell .cp-inner-hero { padding: var(--cp-space-4); }
	.cp-inner-hero { padding: var(--cp-space-4); }
	.cp-inner-hero h1 { font-size: clamp(1.8rem, 9vw, 2.25rem); }
	.cp-inner-hero__mark { display: none; }
	body.home .cp-quick,
	.cp-deadline,
	body.home .cp-spotlight,
	.cp-documents-recent__grid,
	.cp-newcomers { grid-template-columns: 1fr; }
	.cp-deadline { margin: var(--cp-space-4) 0 var(--cp-space-6); }
	.cp-deadline__heading { padding: var(--cp-space-3); }
	.cp-deadline__event { grid-template-columns: auto minmax(0, 1fr); padding: var(--cp-space-3); }
	.cp-deadline__event > a { grid-column: 1 / -1; justify-content: center; }
	.cp-documents-recent { padding: var(--cp-space-4); }
	.cp-newcomers__visual { min-height: 220px; }
	.cp-newcomers__content { padding: var(--cp-space-4); }
	.cp-club-profile > .cp-club-section { padding: var(--cp-space-4); }
	.cp-club-profile > .cp-club-section .cp-club-section__title { gap: var(--cp-space-2); }
	.cp-club-profile > .cp-club-section .cp-club-section__title > span { flex-basis: 38px; font-size: 2rem; }
}
@media (min-width: 640px) and (max-width: 1023px) {
	.cp-podium-filters { grid-template-columns: 1fr 1fr; }
	.cp-podium-group__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cp-data-toolbar { grid-template-columns: 1fr 1fr 1fr; }
	.cp-data-toolbar button { grid-row: 2; }
	.cp-page-shell { width: min(100% - 2rem, var(--cp-content-width)); }
	body.home .cp-quick { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cp-quick--footer { grid-template-columns: 1fr; margin-top: var(--cp-space-5); }
	.cp-documents-recent__grid { grid-template-columns: 1fr; }
	body.home .cp-spotlight { grid-template-columns: 1fr; }
}
@media (min-width: 1024px) {
	.cp-page-shell { width: min(100% - 3rem, var(--cp-content-width)); }
}
