/* Structure : conteneur, en-tête, pied de page, bandeau de titre, pages, blog. */
.irk-container {
	width: 100%;
	max-width: calc(var(--irk-container) + 2 * var(--irk-s3));
	margin-inline: auto;
	padding-inline: var(--irk-s3);
}
.irk-main { display: block; background: var(--irk-white); }
.irk-page { padding-block: var(--irk-s6) var(--irk-s8); }

/* ---------- En-tête ---------- */
.irk-header {
	background: var(--irk-ink);
	position: sticky;
	top: 0;
	z-index: 1000;
}
body.admin-bar .irk-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .irk-header { top: 0; position: relative; } }
.irk-header__inner {
	display: flex;
	align-items: center;
	gap: var(--irk-s3);
	min-height: 72px;
}
.irk-brand { flex: 0 0 auto; }
.irk-brand img { max-height: 44px; width: auto; display: block; }
.irk-brand__name {
	font-family: var(--irk-font-display);
	font-weight: 700;
	font-size: 1.5rem;
	letter-spacing: -0.03em;
	color: var(--irk-white);
	text-decoration: none;
}
.irk-brand__name:hover { color: var(--irk-white); }

.irk-nav { flex: 1 1 auto; display: flex; align-items: center; gap: var(--irk-s3); }
.irk-nav__menu { list-style: none; margin: 0; padding: 0; display: flex; gap: 4px; flex: 1 1 auto; }
.irk-nav__menu > li { position: relative; }
.irk-nav__menu a {
	display: block;
	color: rgba(255,255,255,.82);
	text-decoration: none;
	font-weight: 700;
	font-size: .9375rem;
	padding: 10px 12px;
	border-radius: var(--irk-r-badge);
}
.irk-nav__menu a:hover,
.irk-nav__menu .current-menu-item > a,
.irk-nav__menu .current-menu-ancestor > a { color: var(--irk-white); background: rgba(255,255,255,.08); }
.irk-nav__menu .sub-menu {
	list-style: none; margin: 0; padding: 8px;
	position: absolute; top: 100%; left: 0; min-width: 240px;
	background: var(--irk-white);
	border: 1px solid var(--irk-line);
	border-radius: var(--irk-r-card);
	box-shadow: 0 18px 40px -18px rgba(22,34,63,.35);
	visibility: hidden; opacity: 0; transform: translateY(4px);
	transition: opacity .15s var(--irk-ease), transform .15s var(--irk-ease), visibility .15s;
}
.irk-nav__menu li:hover > .sub-menu,
.irk-nav__menu li:focus-within > .sub-menu { visibility: visible; opacity: 1; transform: none; }
.irk-nav__menu .sub-menu a { color: var(--irk-ink); font-weight: 400; }
.irk-nav__menu .sub-menu a:hover { background: var(--irk-paper); color: var(--irk-majorelle); }

.irk-nav__account { display: flex; align-items: center; gap: var(--irk-s2); flex: 0 0 auto; }
.irk-link { color: rgba(255,255,255,.86); text-decoration: none; font-weight: 700; font-size: .9375rem; }
.irk-link:hover { color: var(--irk-white); text-decoration: underline; }
.irk-link--muted { font-weight: 400; color: rgba(255,255,255,.6); }
.irk-header .irk-btn { min-height: 44px; padding: 10px 18px; font-size: .9375rem; }

.irk-nav-toggle {
	display: none;
	margin-left: auto;
	background: transparent;
	border: 1px solid rgba(255,255,255,.3);
	color: var(--irk-white);
	min-height: 44px;
	padding: 8px 14px;
}
.irk-nav-toggle__bars, .irk-nav-toggle__bars::before, .irk-nav-toggle__bars::after {
	display: block; width: 18px; height: 2px; background: currentColor; border-radius: 2px; position: relative;
}
.irk-nav-toggle__bars::before, .irk-nav-toggle__bars::after { content: ""; position: absolute; left: 0; }
.irk-nav-toggle__bars::before { top: -6px; }
.irk-nav-toggle__bars::after { top: 6px; }

@media (max-width: 1023px) {
	.irk-nav-toggle { display: inline-flex; }
	.irk-nav {
		display: none;
		position: absolute; left: 0; right: 0; top: 100%;
		flex-direction: column; align-items: stretch; gap: var(--irk-s2);
		background: var(--irk-ink);
		padding: var(--irk-s2) var(--irk-s3) var(--irk-s3);
		border-top: 1px solid rgba(255,255,255,.08);
		max-height: calc(100vh - 72px); overflow-y: auto;
	}
	.irk-nav.is-open { display: flex; }
	.irk-nav__menu { flex-direction: column; }
	.irk-nav__menu a { padding: 14px 8px; font-size: var(--irk-fs-base); }
	.irk-nav__menu .sub-menu {
		position: static; visibility: visible; opacity: 1; transform: none;
		background: transparent; border: 0; box-shadow: none; padding: 0 0 0 var(--irk-s2);
	}
	.irk-nav__menu .sub-menu a { color: rgba(255,255,255,.72); }
	.irk-nav__account { flex-direction: column; align-items: stretch; border-top: 1px solid rgba(255,255,255,.08); padding-top: var(--irk-s2); }
	.irk-nav__account .irk-link { padding: 10px 8px; }
	.irk-header__inner { position: relative; }
}

/* ---------- Bandeau de titre (élément signature) ---------- */
.irk-zellige { background-image: var(--irk-zellige); background-size: 96px 96px; }
.irk-pagehead {
	background-color: var(--irk-majorelle);
	color: rgba(255,255,255,.9);
	padding-block: var(--irk-s8) var(--irk-s6);
}
.irk-pagehead__title { color: var(--irk-white); max-width: 22ch; margin-bottom: var(--irk-s2); }
.irk-pagehead__kicker { font-weight: 700; font-size: var(--irk-fs-sm); text-transform: uppercase; letter-spacing: .08em; margin-bottom: var(--irk-s1); }
.irk-pagehead__kicker a, .irk-pagehead a { color: var(--irk-white); }
.irk-pagehead__intro { font-size: var(--irk-fs-lg); max-width: 56ch; }
.irk-pagehead .irk-meta { font-size: var(--irk-fs-base); color: rgba(255,255,255,.8); }
.irk-crumbs { font-size: var(--irk-fs-sm); margin-bottom: var(--irk-s2); color: rgba(255,255,255,.75); }
.irk-crumbs a { color: rgba(255,255,255,.9); }

/* ---------- Contenu ---------- */
.irk-content > * + * { margin-top: var(--irk-s2); }
.irk-content--prose { font-size: 1.125rem; line-height: 1.7; max-width: var(--irk-measure); margin-inline: auto; }
.irk-content--prose h2 { font-size: 1.75rem; margin-top: var(--irk-s6); }
.irk-content--prose h3 { font-size: 1.375rem; margin-top: var(--irk-s4); }
.irk-content--prose ul, .irk-content--prose ol { padding-left: 1.25em; }
.irk-content--prose li + li { margin-top: .4em; }
.irk-content--prose blockquote { margin: var(--irk-s4) 0; padding-left: var(--irk-s3); border-left: 3px solid var(--irk-majorelle); color: var(--irk-ink); }
.irk-content table { width: 100%; border-collapse: collapse; font-size: var(--irk-fs-base); }
.irk-content th, .irk-content td { padding: 10px 12px; border-bottom: 1px solid var(--irk-line); text-align: left; vertical-align: top; }
.irk-content th { color: var(--irk-ink); }

.irk-article { padding-block: var(--irk-s6); }
.irk-article__media { margin: 0 auto var(--irk-s6); max-width: 960px; }
.irk-article__media img { border-radius: var(--irk-r-card); width: 100%; }
.irk-tags { max-width: var(--irk-measure); margin: var(--irk-s4) auto 0; display: flex; flex-wrap: wrap; gap: 8px; }
.irk-tags a { font-size: var(--irk-fs-sm); padding: 4px 10px; border: 1px solid var(--irk-line); border-radius: var(--irk-r-badge); text-decoration: none; color: var(--irk-text); }
.irk-tags a:hover { border-color: var(--irk-majorelle); color: var(--irk-majorelle); }
.irk-comments { max-width: calc(var(--irk-measure) + 2 * var(--irk-s3)); padding-block: var(--irk-s6); }
.irk-comments .comment-list { list-style: none; padding: 0; }
.irk-comments .comment-body { border-bottom: 1px solid var(--irk-line); padding-block: var(--irk-s3); }

/* Pagination WordPress. */
.navigation.pagination { margin-top: var(--irk-s6); }
.nav-links { display: flex; flex-wrap: wrap; gap: 6px; }
.page-numbers {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 44px; height: 44px; padding: 0 12px;
	border: 1px solid var(--irk-line); border-radius: var(--irk-r-badge);
	color: var(--irk-ink); text-decoration: none; font-weight: 700;
}
.page-numbers.current, a.page-numbers:hover { background: var(--irk-ink); border-color: var(--irk-ink); color: var(--irk-white); }

/* ---------- Pied de page ---------- */
.irk-footer { background: var(--irk-ink); color: rgba(255,255,255,.72); font-size: var(--irk-fs-base); }
.irk-footer a { color: rgba(255,255,255,.86); }
.irk-footer a:hover { color: var(--irk-white); }
.irk-footer__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) repeat(auto-fit, minmax(180px, 1fr));
	gap: var(--irk-s6);
	padding-block: var(--irk-s8) var(--irk-s6);
}
.irk-footer__name { font-family: var(--irk-font-display); font-weight: 700; font-size: 1.5rem; color: var(--irk-white) !important; text-decoration: none; letter-spacing: -0.03em; display: inline-block; margin-bottom: var(--irk-s2); }
.irk-footer__actions { display: flex; flex-wrap: wrap; gap: var(--irk-s1); margin-top: var(--irk-s3); }
.irk-footer__col .widget-title, .irk-footer__col h2, .irk-footer__col h3 { font-family: var(--irk-font-display); font-size: var(--irk-fs-lg); color: var(--irk-white); text-transform: none; margin-bottom: var(--irk-s2); }
.irk-footer__col ul, .irk-footer__col > .widget, .irk-footer__col > li { list-style: none; margin: 0; padding: 0; }
.irk-footer__col .widget + .widget { margin-top: var(--irk-s4); }
.irk-footer__col li { padding: 6px 0; border: 0; text-align: left; }
.irk-footer__col li a { float: none; text-decoration: none; }
.irk-footer__col li a:hover { text-decoration: underline; }
.irk-footer__col p { color: rgba(255,255,255,.72); }
.irk-footer__col input { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.2); color: var(--irk-white); }
.irk-footer__bottom {
	display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--irk-s2);
	border-top: 1px solid rgba(255,255,255,.1);
	padding-block: var(--irk-s3);
	font-size: var(--irk-fs-sm);
}
.irk-footer__links { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--irk-s3); }
@media (max-width: 767px) {
	.irk-footer__grid { grid-template-columns: 1fr; gap: var(--irk-s4); padding-block: var(--irk-s6) var(--irk-s4); }
	.irk-pagehead { padding-block: var(--irk-s6) var(--irk-s4); }
	.irk-page { padding-block: var(--irk-s4) var(--irk-s6); }
}
