:root {
	--kna-brand: #ff7e00;
	--kna-brand-dark: #d86400;
	--kna-ink: #111827;
	--kna-ink-deep: #000087;
	--kna-muted: #667085;
	--kna-surface: #f7f8fa;
	--kna-border: #e5e7eb;
}

body {
	color: var(--kna-ink);
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

.site-description,
.ast-site-identity .site-description,
.site-header .site-description {
	display: none !important;
}

.main-header-bar,
.ast-builder-menu-1,
.site-primary-header-wrap {
	border-bottom: 1px solid var(--kna-border);
}

.ast-primary-header-bar {
	background: #fff;
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	backdrop-filter: saturate(180%) blur(10px);
}

.main-header-menu .menu-link:hover,
.main-header-menu .current-menu-item > .menu-link,
.main-header-menu .current-menu-ancestor > .menu-link {
	color: var(--kna-brand);
}

.main-header-menu .menu-link {
	font-size: 0.95rem;
	font-weight: 600;
	letter-spacing: 0.01em;
}

a {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.15em;
}

.ast-button,
.button,
button,
input[type="button"],
input[type="submit"] {
	border-radius: 0;
}

.ast-button:hover,
.button:hover,
button:hover,
input[type="button"]:hover,
input[type="submit"]:hover {
	background: var(--kna-brand-dark);
}

.kg-people-single {
	padding-top: 48px;
	padding-bottom: 72px;
}

.kg-people-single__article {
	max-width: 1080px;
}

.kg-people-single__header {
	align-items: start;
}

.kg-people-single__name {
	color: var(--kna-ink);
}

.kg-people-single__recognitions-list li,
.kg-people-single__testimonial {
	background: var(--kna-surface);
	border-color: var(--kna-brand);
}

.kg-people-single__vcard {
	background: var(--kna-ink);
}

.kg-people-single__vcard:hover {
	background: var(--kna-brand);
}

@media (max-width: 921px) {
	.kg-people-single__header {
		grid-template-columns: 1fr;
	}
}

/* ========================================================================
   STYLES MIGRÉS DEPUIS ELEMENTOR PAGE SETTINGS
   ------------------------------------------------------------------------
   Les blocs ci-dessous étaient à l'origine dans le Custom CSS des pages /
   templates Elementor (onglet Page Settings → Advanced → Custom CSS).
   Centralisés ici pour faciliter la maintenance.

   Chaque section est encadrée par ===== PAGE: X ===== pour repérage.
   ======================================================================== */

/* ===== PAGE : PEOPLE (id 1253) =====================================
 * Custom CSS de la page People (selectors body.post-type-archive-kg_avocat)
 * ============================================================ */

/* === KG PEOPLE FILTERS START === */
/* Filtres : borders bas seulement, mais select garde appearance native pour
   que le dropdown OS s'ouvre normalement (vers le bas) */
.kg-filtres .kg-avocats-filter-label {
}
.kg-filtres .kg-avocats-filter,
.kg-filtres .kg-avocats-filter--name {
    border: 0 !important;
    box-shadow: none !important;
}
.kg-filtres input.kg-avocats-filter::placeholder {
    color: #000087;
}
.kg-filtres input.kg-avocats-filter:focus {
}

/* Select : on garde l'appearance native pour le dropdown OS standard
   (s'ouvre toujours vers le bas, gestion clavier OK) */
.kg-filtres select.kg-avocats-filter {
    border: 0 !important;
    cursor: pointer;
}
.kg-filtres select.kg-avocats-filter:focus {
}
/* === KG PEOPLE FILTERS END === */

/* === KG PEOPLE GRID START === */
/* Grille avocats — 3 cols desktop, responsive */
.kg-avocats-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    padding: 0;
    list-style: none;
}
@media (max-width: 900px) {
    .kg-avocats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 32px 24px !important;
    }
}
@media (max-width: 480px) {
    .kg-avocats-grid {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }
}

/* Card */
.kg-avocats-card {
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
}
.kg-avocats-card__link {
    display: block;
    text-decoration: none !important;
    color: inherit;
    transition: opacity 0.25s ease;
}
.kg-avocats-card__link:hover {
    text-decoration: none !important;
    opacity: 0.92;
}

/* Photo */
.kg-avocats-card__photo {
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #f0f2f8;
    margin: 0 0 14px 0;
}
.kg-avocats-card__photo img,
.kg-avocats-card__photo picture {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    transition: transform 0.5s ease;
}
.kg-avocats-card__link:hover .kg-avocats-card__photo img {
    transform: scale(1.04);
}

/* Nom h3 */
.kg-avocats-card__name {
    margin: 0 0 4px 0;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 600;
    color: #000087;
    letter-spacing: 0.005em;
}

/* Role */
.kg-avocats-card__role {
    margin: 0;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #6b6f95;
}

/* No-match */
.kg-avocats-grid__no-match {
    grid-column: 1 / -1;
    text-align: center;
    padding: 48px 0;
    color: #000087;
    font-size: 14px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
/* === KG PEOPLE GRID END === */

/* === KG PEOPLE PHOTO RATIO START === */
/* Photos cards : paysage 4/3 (plus larges que hautes) */
.kg-avocats-card__photo {
    aspect-ratio: 4 / 3 !important;
}
.kg-avocats-card__photo img,
.kg-avocats-card__photo picture {
    aspect-ratio: 4 / 3 !important;
    object-position: center top !important;
}
/* === KG PEOPLE PHOTO RATIO END === */

/* === KG PEOPLE BUTTON START === */
.kg-avocats-reveal-actions {
    display: flex;
    justify-content: flex-end;
    margin: 32px 0 24px 0;
}
.kg-avocats-reveal-btn,
body.post-type-archive-kg_avocat button.kg-avocats-reveal-btn,
.kg-people-cta__btn {
    appearance: none !important;
    -webkit-appearance: none !important;
    transition: background 0.3s ease, color 0.3s ease;
}
.kg-avocats-reveal-btn::before,
.kg-avocats-reveal-btn::after,
.kg-people-cta__btn::before,
.kg-people-cta__btn::after {
    content: none !important;
    display: none !important;
}
.kg-avocats-reveal-btn:hover,
.kg-people-cta__btn:hover,
body.post-type-archive-kg_avocat button.kg-avocats-reveal-btn:hover,
.kg-avocats-reveal-btn[aria-expanded="true"] {
    text-decoration: none !important;
}
.kg-avocats-reveal-btn:focus-visible,
.kg-people-cta__btn:focus-visible {
    outline: 2px solid #000087;
    outline-offset: 3px;
}
/* === KG PEOPLE BUTTON END === */

/* === KG PEOPLE SEARCH ICON START === */
/* Icône loupe à droite du champ "Search by name" (opacity 40%) */
.kg-filtres input.kg-avocats-filter--name {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23000087' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.25'><circle cx='11' cy='11' r='8'/><path d='m21 21-4.3-4.3'/></svg>");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 14px 14px;
}
/* === KG PEOPLE SEARCH ICON END === */

/* === KG PEOPLE CUSTOM DROPDOWN START === */

/* Wrapper relatif pour positionner la liste */
.kg-filtres .kg-select-wrap {
    position: relative;
    display: block;
    width: 100%;
}

/* On masque visuellement le <select> natif mais on le garde dans le DOM
   pour la sync de valeur et la compatibilité avec le JS de filtrage */
.kg-filtres .kg-select-wrap select.kg-avocats-filter--expertise,
.kg-filtres .kg-select-wrap select.kg-avocats-filter--title {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    border: 0 !important;
    pointer-events: none !important;
}

/* Bouton "trigger" qui remplace visuellement le select */
.kg-filtres .kg-select-trigger {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: block;
    width: 100%;
    background: transparent;
    border: 0;
    padding: 11px 0 0 16px;
    text-align: left;
    cursor: pointer;
    color: #000087;
    font: inherit;
    font-weight: 300;
    text-transform: inherit;
    letter-spacing: normal;
    line-height: 1.4;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23000087' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.25'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat: no-repeat;
    background-position: right 10px bottom 1px;
    background-size: 20px 20px;
    transition: background-image 0.2s ease;
    box-shadow: none;
}
.kg-filtres .kg-select-trigger[aria-expanded="true"] {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23000087' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.25'><polyline points='18 15 12 9 6 15'/></svg>");
}
.kg-filtres .kg-select-trigger:focus-visible {
    outline: 2px solid #000087;
    outline-offset: 2px;
}

/* Liste des options (état fermé par défaut, animation à l'ouverture) */
.kg-filtres .kg-select-options {
    position: absolute;
    top: calc(100% + 5px);
    left: 0;
    right: 0;
    background: #ffffff;
    border-bottom: solid 1px #000087;
    list-style: none;
    margin: 5px 0 0 0;
    padding: 0;
    z-index: 1000;
    /* Animation : effet déroulement */
    max-height: 0;
    opacity: 0;
    transform: translateY(-6px);
    overflow: hidden;
    pointer-events: none;
    transition:
        max-height 0.8s cubic-bezier(0.4, 0, 0.2, 1),
        opacity 0.18s ease,
        transform 0.22s cubic-bezier(0.4, 0, 0.2, 1),
        padding 0.2s ease;
}
.kg-filtres .kg-select-options.is-open {
    max-height: 600px;
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
    padding: 0;
    overflow-y: auto;
}

/* Items */
.kg-filtres .kg-select-option {
    padding: 4px 16px;
    margin: 0;
    cursor: pointer;
    color: #000087;
    font-size: 12px;
    font-weight: 300;
    line-height: 18px;
    list-style: none;
    background: #ffffff;
    transition: background-color 0.12s ease;
}
.kg-filtres .kg-select-option:hover,
.kg-filtres .kg-select-option:focus {
    background-color: #f2f2f2;
}
.kg-filtres .kg-select-option[aria-selected="true"] {
    background-color: #f2f2f2;
    font-weight: 600;
}
/* === KG PEOPLE CUSTOM DROPDOWN END === */

/* === KG PEOPLE STRIP FILTER WIDGETS START === */
/* Filtres expertise (230f064) + title (e6bf553) :
   aucun padding ni shadow, ni sur le widget, ni sur son inner container */
.kg-filtres .elementor-widget:has(.kg-avocats-filter-label),
.kg-filtres .elementor-widget:has(.kg-avocats-filter-label) > .elementor-widget-container {
    padding: 0 !important;
}
/* === KG PEOPLE STRIP FILTER WIDGETS END === */

/* === KG PEOPLE TITLES UPPERCASE START === */
/* Dropdown "All titles" : items en majuscules */
.kg-filtres .kg-select-wrap:has(select.kg-avocats-filter--title) .kg-select-option {
    text-transform: uppercase;
}
/* === KG PEOPLE TITLES UPPERCASE END === */

/* === KG PEOPLE EXPERTISE FIRST UPPERCASE START === */
/* Dropdown "All expertises" : seul le 1er item ("All expertises") en maj.
   N'affecte PAS le trigger (qui reste dans sa casse naturelle). */
.kg-filtres .kg-select-wrap:has(select.kg-avocats-filter--expertise) .kg-select-option:first-child {
    text-transform: uppercase;
}
/* === KG PEOPLE EXPERTISE FIRST UPPERCASE END === */

/* === KG PEOPLE PHOTO HOVER OVERLAY START === */
.kg-avocats-card__photo {
    position: relative;
}
.kg-avocats-card__photo::after {
    content: "View profile";
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0, 255, 255, 0.5);
    color: #ffffff;
    font-size: 12px;
    line-height: 24px;
    font-weight: 800;
    letter-spacing: 2.4px;
    text-transform: uppercase;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}
.kg-avocats-card__link:hover .kg-avocats-card__photo::after,
.kg-avocats-card__link:focus-visible .kg-avocats-card__photo::after {
    opacity: 1;
}
/* === KG PEOPLE PHOTO HOVER OVERLAY END === */

/* === KG PEOPLE REVEAL BTN THIRD WIDTH START === */
/* "Show more experts" : wrapper à 1/3 du container, aligné à droite,
   en respectant la grille 3 cols / gap 36px (formule : calc(33.333% - 24px)).
   Le bouton remplit 100% du wrapper. */
.kg-avocats-reveal-actions {
    width: calc(33.333% - 24px);
    margin-left: auto;
}
.kg-avocats-reveal-actions .kg-avocats-reveal-btn,
.kg-avocats-reveal-actions button.kg-avocats-reveal-btn {
    width: 100% !important;
    display: block !important;
    text-align: center !important;
}
/* === KG PEOPLE REVEAL BTN THIRD WIDTH END === */

/* ----- end : PAGE : PEOPLE (id 1253) ----- */

/* ===== TEMPLATE : SINGLE AVOCAT — KG (id 1795) =====================================
 * Custom CSS du template Single Avocat (selectors .elementor-1795)
 * ============================================================ */

/* Custom CSS du template Elementor #1795 — ne contient
 * QUE les blocs marqués `KG XXX`. Toute règle legacy a été
 * supprimée par kg-css-clean-legacy.php le 2026-05-08 14:09 UTC.
 */

/* === KG TESTIMONIALS START === */
.kg-avocat-testimonials {
    margin: 32px 0 40px 0;
}
.kg-avocat-testimonials .kg-avocat-testimonial {
    margin: 0 0 24px 0;
    padding: 36px 30px;
    border: 0;
    border-top: 1px solid #000087;
    border-bottom: 1px solid #000087;
    background: transparent;
}

.kg-avocat-testimonials .kg-avocat-testimonial__author {
    display: block;
    text-align: right;
    margin-top: 8px;
}
@media (max-width: 768px) {
    .kg-avocat-testimonials .kg-avocat-testimonial__quote {
        font-size: 22px;
    }
}
/* === KG TESTIMONIALS END === */

/* === KG ACCORDION START === */
.kg-avocat-accordion {
    margin: 8px 0 24px 0;
}
.kg-avocat-accordion__item {
    border-bottom: 0;
    border-top: 0;
}
.kg-avocat-accordion__item:first-child { border-top: 0; }
.kg-avocat-accordion__item:last-child  { border-bottom: 0; }

/* Summary : layout flex avec icône à GAUCHE, hauteur min 112px,
   padding-left 36px = distance bord gauche → icône.
   gap 28px = espace entre icône et label. */
.kg-avocat-accordion__summary {
    display: flex;
    align-items: center;
    gap: 28px;
    padding: 0 16px 0 36px;
    min-height: 72px;
    cursor: pointer;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #000087;
    list-style: none;
    list-style-type: none;
    user-select: none;
    transition: color 0.2s ease, font-weight 0.1s ease;
}
.kg-avocat-accordion__summary:hover { color: #00006b; }

/* Graisse 600 quand le panneau est ouvert (transition 0.1s) */
body .kg-avocat-accordion__item[open] > .kg-avocat-accordion__summary {
    font-weight: 600 !important;
}
.kg-avocat-accordion__summary::-webkit-details-marker {
    display: none !important;
    content: "" !important;
}
.kg-avocat-accordion__summary::marker {
    display: none;
    content: "" !important;
}
.kg-avocat-accordion__summary::before {
    content: none !important;
    display: none !important;
}
.kg-avocat-accordion details > summary,
.kg-avocat-accordion details > summary::-webkit-details-marker {
    list-style: none;
}
.kg-avocat-accordion details > summary::-webkit-details-marker {
    display: none !important;
}

/* HTML : <label> avant <icon>. On inverse l'ordre visuel via flex order
   pour placer l'icône à GAUCHE sans toucher au markup. */
.kg-avocat-accordion__label {
    order: 2;
    flex: 1 1 auto;
}

/* ICÔNE +/-
   Fermé  : "+" (barre H + barre V visibles)
   Ouvert : "-" (barre H visible, barre V invisible via opacity) */
.kg-avocat-accordion__icon {
    order: 1;
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    position: relative;
    display: inline-block;
    color: currentColor;
}
.kg-avocat-accordion__icon::before,
.kg-avocat-accordion__icon::after {
    content: "";
    position: absolute;
    background-color: #00ffff;
    transition: opacity 0.25s ease;
}
.kg-avocat-accordion__icon::before {
    /* Barre horizontale (toujours visible) */
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px;
    transform: translateY(-50%);
}
.kg-avocat-accordion__icon::after {
    /* Barre verticale (cachée à l'ouverture) */
    top: 0;
    left: 50%;
    width: 2px;
    height: 100%;
    transform: translateX(-50%);
}
.kg-avocat-accordion__item[open] .kg-avocat-accordion__icon::after {
    opacity: 0;
}

/* Bouton "Read more / Read less" injecté par JS sous les accordéons limités à 3 items */
.kg-accordion-readmore {
    appearance: none;
    display: block;
    width: calc(33.333% - 24px);
    background: #00ffff;
    color: #000087;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    padding: 16px 38px;
    margin-top: 24px;
    margin-left: auto;
    font-family: "Figtree", sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    text-align: center;
    line-height: 1;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease;
}
.kg-accordion-readmore::before,
.kg-accordion-readmore::after {
    content: none;
    display: none;
}
.kg-accordion-readmore:hover {
    background: #000087;
    color: #00ffff;
    text-decoration: none;
}
.kg-accordion-readmore:focus-visible {
    outline: 2px solid #000087;
    outline-offset: 3px;
}

/* Content : aligné horizontalement avec le label.
   padding-left = 36 (bord → icône) + 16 (largeur icône) + 28 (gap) = 80px
   Animation : on override le `display:none` natif de <details> et on
   anime max-height + padding pour un effet "push down" fluide. */
.kg-avocat-accordion__content {
    color: #1a1f3d;
    font-size: 15px;
    line-height: 1.6;
    padding: 0 16px 22px 80px;
}
body.single-kg_avocat .kg-avocat-accordion__content,
body.single-kg_avocat .kg-avocat-accordion__content p {
    color: #000087;
}
body.single-kg_avocat .kg-avocat-accordion__summary {
    letter-spacing: 0;
}

/* Animation <details> : transition CSS sur block-size, valeur en pixels
   fournie par JS via la CSS variable --kg-acc-h. Pas d'interpolate-size
   nécessaire car on transitionne entre valeurs explicites (0 ↔ Npx).
   Le texte fait un fondu opacity en plus du déroulement. */
.kg-avocat-accordion__item::details-content {
    block-size: 0;
    overflow: clip;
    transition:
        block-size 0.5s cubic-bezier(0.4, 0, 0.2, 1),
        content-visibility 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    transition-behavior: allow-discrete;
}
.kg-avocat-accordion__item[open]::details-content {
    block-size: var(--kg-acc-h, auto);
}

/* Fondu doux du texte du contenu pour adoucir l'apparition / disparition.
   À l'ouverture : on attend que le volet soit déjà ~30% ouvert pour
   commencer à révéler le texte. À la fermeture : le texte disparait en
   premier, puis le volet se ferme. */
.kg-avocat-accordion__item .kg-avocat-accordion__content {
    opacity: 0;
    transform: translateY(-4px);
    transition:
        opacity 0.35s ease 0s,
        transform 0.35s ease 0s;
}
.kg-avocat-accordion__item[open] .kg-avocat-accordion__content {
    opacity: 1;
    transform: translateY(0);
    transition:
        opacity 0.35s ease 0.15s,
        transform 0.35s ease 0.15s;
}

/* === KG ACCORDION END === */

/* === KG RECOGNITIONS START === */
.kg-avocat-recognitions-wrap {
    position: relative !important;
    margin: 16px 0 40px 0;
    --kg-recognitions-visible: 3;
    --kg-recognitions-gap: 24px;
}
.kg-avocat-recognitions-wrap.is-carousel {
    padding: 0 36px;
}

.kg-avocat-recognitions {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: var(--kg-recognitions-gap);
    list-style: none;
    margin: 0;
    padding: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
}
.kg-avocat-recognitions::-webkit-scrollbar { display: none !important; }
.kg-avocat-recognitions-wrap:not(.is-carousel) .kg-avocat-recognitions {
    overflow: visible;
}

.kg-avocat-recognition {
    flex: 0 0 calc((100% - (var(--kg-recognitions-visible) - 1) * var(--kg-recognitions-gap)) / var(--kg-recognitions-visible)) !important;
    min-width: 0;
    margin: 0;
    padding: 0;
    list-style: none;
    scroll-snap-align: start;
}

/* Card SANS bordure, centrée */
.kg-avocat-recognition__link {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 14px;
    padding: 12px;
    text-decoration: none;
    color: inherit;
    border: 0 !important;
    background: transparent;
    transition: transform 0.2s ease;
    height: 100%;
    box-sizing: border-box;
}
.kg-avocat-recognition__link:hover {
    transform: translateY(-2px);
}
.kg-avocat-recognition__img {
    display: flex;
    justify-content: center;
    align-items: center;
}
.kg-avocat-recognition__img img {
    max-width: 130px;
    height: auto;
    display: block;
    margin: 0 auto;
}
.kg-avocat-recognition__text {
    text-align: center;
    width: 100%;
}
.kg-avocat-recognition__title {
    margin: 0;
    color: #000087;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 600;
    text-align: center;
}
.kg-avocat-recognition__title strong {
    font-weight: 600;
}
.kg-avocat-recognition__subtitle,
.kg-avocat-recognition__date {
    margin: 4px 0 0 0;
    color: #555a78;
    font-size: 12px;
    line-height: 1.5;
    text-align: center;
}

/* Flèches — override Astra/Elementor */
.kg-avocat-recognitions-wrap button.kg-avocat-recognitions__nav,
.kg-avocat-recognitions__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    margin: 0;
    padding: 0;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: #000087 !important;
    font-size: 0;
    line-height: 1;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    text-shadow: none;
    text-decoration: none;
    opacity: 1;
    transition: opacity 0.2s ease;
    transform-origin: center;
}
.kg-avocat-recognitions-wrap button.kg-avocat-recognitions__nav:focus,
.kg-avocat-recognitions__nav:focus {
    outline: 0;
    background: transparent !important;
    box-shadow: none !important;
}
.kg-avocat-recognitions__nav:focus-visible {
    outline: 1px dotted #000087;
    outline-offset: 4px;
}
.kg-avocat-recognitions__nav svg {
    display: block;
    width: 20px;
    height: 20px;
    stroke: currentColor;
    fill: none;
}
.kg-avocat-recognitions__nav--prev { left: 0; }
.kg-avocat-recognitions__nav--next { right: 0; }

@media (max-width: 768px) {
    .kg-avocat-recognitions-wrap {
        --kg-recognitions-visible: 1.2;
    }
    .kg-avocat-recognitions-wrap.is-carousel {
        padding: 0 26px;
    }
    .kg-avocat-recognitions__nav { width: 22px; height: 22px; }
    .kg-avocat-recognitions__nav svg { width: 16px; height: 16px; }
}
/* === KG RECOGNITIONS END === */

/* === KG RECOGNITIONS NOSHADOW START === */
.kg-avocat-recognition,
.kg-avocat-recognition__link,
.kg-avocat-recognition__img,
.kg-avocat-recognition__img img,
.kg-avocat-recognitions a,
.kg-avocat-recognitions img {
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    filter: none !important;
}
.kg-avocat-recognition__link:hover,
.kg-avocat-recognition__link:focus {
    box-shadow: none !important;
}
/* === KG RECOGNITIONS NOSHADOW END === */

/* === KG REVEAL START === */
/* ──────────────────────────────────────────────────────────────────
   GRID — 3 cards par ligne desktop, fold sous 900px
   ────────────────────────────────────────────────────────────────── */
.kg-avocat-related-events,
.kg-avocat-related-news,
.kg-events-upcoming-list,
.kg-events-archive-grid,
.kg-event-related__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px 32px;
}

/* ──────────────────────────────────────────────────────────────────
   CARD — accent cyan top + layout vertical
   ────────────────────────────────────────────────────────────────── */
.kg-avocat-related-events .kg-avocat-related-event,
.kg-avocat-related-news .kg-avocat-related-news__item,
.kg-events-upcoming-list .kg-events-upcoming-card,
body.post-type-archive-kg_event .kg-events-archive-grid .kg-events-archive-card,
.kg-event-related__list .kg-event-related__item {
    position: relative;
    margin: 0;
    padding: 14px 0 0 0;
    border: 0;
    list-style: none;
}.kg-avocat-related-events .kg-avocat-related-event::before,
.kg-avocat-related-news .kg-avocat-related-news__item::before,
.kg-events-upcoming-list .kg-events-upcoming-card::before,
body.post-type-archive-kg_event .kg-events-archive-grid .kg-events-archive-card::before,
.kg-event-related__list .kg-event-related__item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 70px;
    height: 3px;
    background: #28D4DC;
}.kg-avocat-related-event__link,
.kg-avocat-related-news__link,
.kg-events-upcoming-card__link,
body.post-type-archive-kg_event .kg-events-archive-card__link,
.kg-event-related__link {
    display: flex;
    flex-direction: column;
    gap: 18px;
    text-decoration: none;
    color: inherit;
}

/* Image preview top */
.kg-avocat-related-event__img,
.kg-avocat-related-news__img,
.kg-events-upcoming-card__img,
body.post-type-archive-kg_event .kg-events-archive-card__img,
.kg-event-related__img {
    width: 100%;
    overflow: hidden;
    background: #f4f5fa;
}.kg-avocat-related-event__img img,
.kg-avocat-related-news__img img,
body.post-type-archive-kg_event .kg-events-archive-card__img img,
.kg-event-related__img img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    transition: transform 0.4s ease;
}.kg-avocat-related-event__link:hover .kg-avocat-related-event__img img,
.kg-avocat-related-news__link:hover .kg-avocat-related-news__img img,
.kg-events-upcoming-card__link:hover .kg-events-upcoming-card__img img,
body.post-type-archive-kg_event .kg-events-archive-card__link:hover .kg-events-archive-card__img img,
.kg-event-related__link:hover .kg-event-related__img img {
    transform: none;
}

/* Bloc texte */
.kg-avocat-related-event__text,
.kg-avocat-related-news__text,
body.post-type-archive-kg_event .kg-events-archive-card__body,
.kg-event-related__body {
    display: block;
    width: 100%;
    margin-top: 16px;
}

/* Meta : date à gauche, organisateur à droite */
.kg-avocat-related-event__meta,
.kg-avocat-related-news__meta,
.kg-events-upcoming-card__meta,
body.post-type-archive-kg_event .kg-events-archive-card__meta,
.kg-event-related__meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin: 0 0 14px 0;
    padding-bottom: 16px;
    border-bottom: 1px solid #c8cce0;
    color: #4d4f6b;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}.kg-avocat-related-event__date,
.kg-avocat-related-news__date,
.kg-events-upcoming-card__date,
body.post-type-archive-kg_event .kg-events-archive-card__date,
.kg-event-related__date {
    color: inherit;
    font-weight: 500;
    font-variant-numeric: tabular-nums;
}.kg-avocat-related-event__org,
.kg-avocat-related-news__org,
.kg-events-upcoming-card__loc,
body.post-type-archive-kg_event .kg-events-archive-card__loc,
.kg-event-related__loc {
    color: inherit;
    font-weight: 600;
    letter-spacing: 0.1em;
}

/* Title */
.kg-avocat-related-event__title,
.kg-avocat-related-news__title-item,
.kg-events-upcoming-card__title,
body.post-type-archive-kg_event .kg-events-archive-card__title,
.kg-event-related__title {
    margin: 0 0 16px 0;
    color: #000087;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 700;
    letter-spacing: -0.01em;
    transition: color 0.2s ease;
}.kg-avocat-related-event__link:hover .kg-avocat-related-event__title,
.kg-avocat-related-news__link:hover .kg-avocat-related-news__title-item,
.kg-events-upcoming-card__link:hover .kg-events-upcoming-card__title,
body.post-type-archive-kg_event .kg-events-archive-card__link:hover .kg-events-archive-card__title,
.kg-event-related__link:hover .kg-event-related__title {
    color: #00006b;
    text-decoration: none;
}

/* Excerpt — bleu pâle, line-clamp 5 */
.kg-avocat-related-event__excerpt,
.kg-avocat-related-news__excerpt,
.kg-events-upcoming-card__excerpt,
body.post-type-archive-kg_event .kg-events-archive-card__excerpt,
.kg-event-related__excerpt {
    margin: 0;
    color: rgba(0, 0, 135, 0.8);
    font-size: 16px;
    line-height: 22px;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ──────────────────────────────────────────────────────────────────
   « READ MORE » — bouton legacy KG sober
   ────────────────────────────────────────────────────────────────── */
.kg-avocat-reveal-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 28px;
    grid-column: 1 / -1; /* span sur toute la grille */
}.kg-avocat-related-events-wrap > .kg-avocat-reveal-actions,
.kg-avocat-related-news-wrap > .kg-avocat-reveal-actions,
.kg-events-upcoming-list-wrap > .kg-avocat-reveal-actions,
.kg-events-archive-grid-wrap > .kg-avocat-reveal-actions,
.kg-event-related > .kg-avocat-reveal-actions {
    grid-column: auto;
}
.kg-avocat-reveal-btn {
    appearance: none;
    background: transparent;
    border: 0;
    padding: 4px 0;
    color: #000087;
    font-family: inherit;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 6px;
    text-decoration-thickness: 1px;
    transition: color 0.2s ease, text-underline-offset 0.2s ease;
}
.kg-avocat-reveal-btn::after {
    content: "›";
    display: inline-block;
    margin-left: 8px;
    font-size: 16px;
    line-height: 1;
    vertical-align: middle;
    transition: transform 0.2s ease;
}
.kg-avocat-reveal-btn:hover {
    color: #00006b;
    text-underline-offset: 4px;
}
.kg-avocat-reveal-btn:hover::after {
    transform: translateX(3px);
}
.kg-avocat-reveal-btn[aria-expanded="true"]::after {
    content: "‹";
    transform: rotate(90deg);
}
.kg-avocat-reveal-btn:focus-visible {
    outline: 1px dotted #000087;
    outline-offset: 4px;
}
/* === KG REVEAL END === */

/* === KG REVEAL BTN START === */
.kg-avocat-reveal-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 32px;
}

/* Bouton CTA cyan plein, texte bleu KG, format rectangle sans bord */
.kg-avocat-related-events-wrap .kg-avocat-reveal-btn,
.kg-avocat-related-news-wrap .kg-avocat-reveal-btn,
button.kg-avocat-reveal-btn,
.kg-avocat-reveal-btn,
.kg-events-upcoming-list-wrap .kg-avocat-reveal-btn,
.kg-events-archive-grid-wrap .kg-avocat-reveal-btn,
.kg-event-related .kg-avocat-reveal-btn {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline-block;
    background: #00FFFF !important;
    background-color: #00FFFF !important;
    background-image: none !important;
    color: #000087 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 16px 38px !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    text-underline-offset: 0 !important;
    line-height: 1 !important;
    cursor: pointer;
    transition: background 0.3s ease, color 0.3s ease;
}

/* Pas de flèche / chevron : le label parle de lui-même (style legacy KG) */
.kg-avocat-reveal-btn::after,
.kg-avocat-reveal-btn::before {
    content: none !important;
    display: none !important;
}.kg-avocat-related-events-wrap .kg-avocat-reveal-btn:hover,
.kg-avocat-related-news-wrap .kg-avocat-reveal-btn:hover,
button.kg-avocat-reveal-btn:hover,
.kg-avocat-reveal-btn:hover,
.kg-events-upcoming-list-wrap .kg-avocat-reveal-btn:hover,
.kg-events-archive-grid-wrap .kg-avocat-reveal-btn:hover,
.kg-event-related .kg-avocat-reveal-btn:hover {
    background: #000087 !important;
    background-color: #000087 !important;
    color: #00FFFF !important;
    text-decoration: none !important;
}

.kg-avocat-reveal-btn:focus,
.kg-avocat-reveal-btn:focus-visible {
    outline: 2px solid #000087;
    outline-offset: 3px;
}

/* État ouvert : on garde le label inversé (pas de chevron) */
.kg-avocat-reveal-btn[aria-expanded="true"] {
    background: #000087 !important;
    color: #00FFFF !important;
}
/* === KG REVEAL BTN END === */

/* === KG REVEAL CLEAN START === */
/* Pas de barre cyan au-dessus des cards */
.kg-avocat-related-events .kg-avocat-related-event::before,
.kg-avocat-related-news .kg-avocat-related-news__item::before,
.kg-events-upcoming-list .kg-events-upcoming-card::before,
body.post-type-archive-kg_event .kg-events-archive-grid .kg-events-archive-card::before,
.kg-event-related__list .kg-event-related__item::before {
    content: none !important;
    display: none !important;
}.kg-avocat-related-events .kg-avocat-related-event,
.kg-avocat-related-news .kg-avocat-related-news__item,
.kg-events-upcoming-list .kg-events-upcoming-card,
body.post-type-archive-kg_event .kg-events-archive-grid .kg-events-archive-card,
.kg-event-related__list .kg-event-related__item {
    padding-top: 0 !important;
}

/* Pas de ligne grise sous la meta */
.kg-avocat-related-event__meta,
.kg-avocat-related-news__meta,
.kg-events-upcoming-card__meta,
body.post-type-archive-kg_event .kg-events-archive-card__meta,
.kg-event-related__meta {
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 18px !important;
}
/* === KG REVEAL CLEAN END === */

/* === KG REVEAL POLISH START === */
/* Image preview à 100% naturel — pas de crop, pas de bande grise */
.kg-avocat-related-event__img,
.kg-avocat-related-news__img,
.kg-events-upcoming-card__img,
body.post-type-archive-kg_event .kg-events-archive-card__img,
.kg-event-related__img {
    background: transparent !important;
    overflow: visible !important;
}.kg-avocat-related-event__img img,
.kg-avocat-related-news__img img,
body.post-type-archive-kg_event .kg-events-archive-card__img img,
.kg-event-related__img img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: auto !important;
    object-fit: initial !important;
    display: block;
}

/* Restaure le séparateur fin entre meta (date | org) et titre */
.kg-avocat-related-event__meta,
.kg-avocat-related-news__meta,
.kg-events-upcoming-card__meta,
body.post-type-archive-kg_event .kg-events-archive-card__meta,
.kg-event-related__meta {
    border-bottom: 1px solid #c8cce0 !important;
    padding-bottom: 16px !important;
    margin-bottom: 16px !important;
}
/* === KG REVEAL POLISH END === */

/* === KG REVEAL COLOR START === */
/* Pas de soulignement au hover : ni sur le link, ni sur le titre, ni
   sur les enfants */
.kg-avocat-related-event__link,
.kg-avocat-related-event__link:hover,
.kg-avocat-related-event__link:focus,
.kg-avocat-related-news__link,
.kg-avocat-related-news__link:hover,
.kg-avocat-related-news__link:focus,
.kg-avocat-related-event__link:hover *,
.kg-avocat-related-news__link:hover *,
.kg-events-upcoming-card__link,
.kg-events-upcoming-card__link:hover,
.kg-events-upcoming-card__link:focus,
.kg-events-upcoming-card__link:hover *,
body.post-type-archive-kg_event .kg-events-archive-card__link,
body.post-type-archive-kg_event .kg-events-archive-card__link:hover,
body.post-type-archive-kg_event .kg-events-archive-card__link:focus,
body.post-type-archive-kg_event .kg-events-archive-card__link:hover *,
.kg-event-related__link,
.kg-event-related__link:hover,
.kg-event-related__link:focus,
.kg-event-related__link:hover * {
    text-decoration: none !important;
}.kg-avocat-related-event__link:hover .kg-avocat-related-event__title,
.kg-avocat-related-news__link:hover .kg-avocat-related-news__title-item,
.kg-events-upcoming-card__link:hover .kg-events-upcoming-card__title,
body.post-type-archive-kg_event .kg-events-archive-card__link:hover .kg-events-archive-card__title,
.kg-event-related__link:hover .kg-event-related__title {
    text-decoration: none !important;
    text-underline-offset: 0 !important;
    color: #000087 !important;
}

/* Tout en bleu KG : meta + date + org */
.kg-avocat-related-event__meta,
.kg-avocat-related-news__meta,
.kg-events-upcoming-card__meta,
body.post-type-archive-kg_event .kg-events-archive-card__meta,
.kg-event-related__meta {
    color: #000087 !important;
}.kg-avocat-related-event__date,
.kg-avocat-related-event__org,
.kg-avocat-related-news__date,
.kg-avocat-related-news__org,
.kg-events-upcoming-card__date,
.kg-events-upcoming-card__loc,
body.post-type-archive-kg_event .kg-events-archive-card__date,
body.post-type-archive-kg_event .kg-events-archive-card__loc,
.kg-event-related__date,
.kg-event-related__loc {
    color: #000087 !important;
    font-weight: 600;
}
/* === KG REVEAL COLOR END === */

/* === KG NEWS NO TOP BORDER START === */
.kg-avocat-related-news__link {
    border-top: 0 !important;
    padding-top: 0 !important;
}
.kg-avocat-related-news__item::before {
    content: none !important;
    display: none !important;
}
/* === KG NEWS NO TOP BORDER END === */

/* === KG SECTION HEADINGS START === */
.kg-section-heading,
.kg-section-heading .elementor-heading-title {
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 700;
}
/* === KG SECTION HEADINGS END === */

/* === KG HOVER STABLE START === */
.kg-hero-section a,
.kg-hero-section .elementor-heading-title,
.kg-avocat-side-info a,
.kg-avocat-side-info__item,
.kg-avocat-expertises a,
.kg-avocat-expertises__item,
.kg-avocat-share a {
    transition: color 0.2s ease, opacity 0.2s ease;
}
.kg-hero-section a:hover,
.kg-hero-section a:focus,
.kg-avocat-side-info a:hover,
.kg-avocat-side-info a:focus,
.kg-avocat-side-info__item:hover,
.kg-avocat-expertises a:hover,
.kg-avocat-expertises a:focus,
.kg-avocat-expertises__item:hover,
.kg-avocat-share a:hover,
.kg-avocat-share a:focus {
    font-weight: inherit !important;
}
.kg-avocat-expertises li {
    margin-bottom: 0 !important;
}.kg-avocat-related-event__link:hover .kg-avocat-related-event__title,
.kg-avocat-related-news__link:hover .kg-avocat-related-news__title-item,
.kg-events-upcoming-card__link:hover .kg-events-upcoming-card__title,
body.post-type-archive-kg_event .kg-events-archive-card__link:hover .kg-events-archive-card__title,
.kg-event-related__link:hover .kg-event-related__title {
    font-weight: 700 !important;
}
/* === KG HOVER STABLE END === */

/* === KG VARS START === */
:root {
    --kg-dark-blue: #000087;
    --kg-dark-blue-80: rgba(0, 0, 135, 0.80);
    --kg-cyan: #00ffff;
    --kg-grey: #d0d4e0;
}
/* === KG VARS END === */

/* === KG HERO IDENTITY START === */
.kg-hero__name .elementor-heading-title,
.kg-avocat-name {
    color: var(--kg-dark-blue);
    font-size: 28px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    letter-spacing: 0;
    margin: 0 0 6px 0;
}
.kg-avocat-role {
    display: block;
    color: var(--kg-dark-blue);
    font-size: 16px;
    font-weight: 300;
    line-height: 1.4;
    margin-top: 6px;
}
.kg-avocat-role-change {
    display: block;
    color: var(--kg-dark-blue);
    font-size: 13px;
    font-style: italic;
    margin-top: 4px;
}
/* === KG HERO IDENTITY END === */

/* === KG HERO PHOTO START === */
.kg-avocat-photo {
    width: 100%;
    height: auto;
    display: block;
}
.kg-avocat-photo img {
    width: 100%;
    height: auto;
    display: block;
}
/* === KG HERO PHOTO END === */

/* === KG HERO BIO START === */
.kg-avocat-bio {
    color: var(--kg-dark-blue);
    font-size: 16px;
    line-height: 1.65;
    margin: 24px 0 0 0;
}
.kg-avocat-bio p {
    margin-bottom: 16px;
    color: var(--kg-dark-blue);
}
.kg-avocat-bio p:last-child {
    margin-bottom: 0;
}
/* === KG HERO BIO END === */

/* === KG HERO SIDE-INFO START === */
.kg-avocat-side-info {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.kg-avocat-side-info__item {
    color: var(--kg-dark-blue);
    font-size: 14px;
    line-height: 1.4;
}
.kg-avocat-side-info__item::before {
    display: none;
}
.kg-avocat-side-info__item a {
    transition: 0.1s ease;
}
/* Pas de font-weight change au hover */
.kg-avocat-side-info__item a:hover,
.kg-avocat-side-info__item a:focus {
    font-weight: 700 !important;
    text-decoration: none;
}

.kg-avocat-vcard {
    color: var(--kg-dark-blue) !important;
    text-decoration: none;
    font-size: 14px;
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
    text-transform: none !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    transition: opacity 0.2s ease;
}
.kg-avocat-vcard:hover,
.kg-avocat-vcard:focus {
    background: transparent !important;
    color: var(--kg-dark-blue) !important;
    font-weight: 400 !important;
    opacity: 0.65;
}
/* === KG HERO SIDE-INFO END === */

/* === KG HIDE SCROLL TOP START === */
#ast-scroll-top,
.ast-back-to-top,
.ast-scroll-top-icon,
.elementor-back-to-top,
.elementor-scroll-button,
.wpr-back-to-top-wrap,
.wpr-back-to-top,
.wpr-scroll-to-top,
[id*="scroll-top"],
[class*="back-to-top"],
[class*="scroll-to-top"] {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
/* === KG HIDE SCROLL TOP END === */

/* === KG HERO EXPERTISES START === */
.kg-avocat-expertise-label,
.kg-hero__expertise-label .elementor-heading-title {
    color: var(--kg-dark-blue);
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
.kg-hero__expertise-bar,
.kg-avocat-expertise-bar {
    margin: 0 !important;
    padding: 0 !important;
}
.kg-hero__expertise-bar .elementor-divider,
.kg-avocat-expertise-bar .elementor-divider {
    margin: 0 !important;
    padding: 4px 0 !important;
}
.kg-hero__expertise-bar .elementor-divider-separator,
.kg-avocat-expertise-bar .elementor-divider-separator {
    margin: 0 !important;
}
.kg-hero__expertises {
    margin-top: 8px !important;
}
.kg-avocat-expertises {
    list-style: none;
    margin: 8px 0 0 0;
    padding: 0;
}
.kg-avocat-expertises li,
.kg-avocat-expertises__item {
    margin-bottom: 0;
}
.kg-avocat-expertises li::before {
    display: none;
}
.kg-avocat-expertises a {
    transition: 0.1s ease;
}
.kg-avocat-expertises a:hover {
    font-weight: 700 !important;
    text-decoration: none;
}
/* === KG HERO EXPERTISES END === */

/* === KG HERO QRCODE START === */
.kg-avocat-qrcode {
    margin: 24px 0 0 0;
    color: var(--kg-dark-blue);
    padding-top: 8px;
}
.kg-avocat-qrcode__img {
    display: block;
    width: 130px !important;
    height: auto !important;
    margin: 0 0 8px 0;
}
.kg-avocat-qrcode__caption {
    font-size: 12px !important;
    color: var(--kg-dark-blue);
    margin: 0;
    font-weight: 400;
    letter-spacing: 0.02em;
}
/* === KG HERO QRCODE END === */

/* === KG HERO SHARE START === */

.kg-avocat-share li {
    margin: 0;
    padding: 0;
    list-style: none;
}
.kg-avocat-share li::before {
    display: none;
}
.kg-avocat-share {
    list-style: none;
    display: flex;
}
.kg-avocat-share__btn {
    display: inline-flex;
    align-items: center;
}
.kg-avocat-share__btn svg {
    display: block;
    pointer-events: none;
    fill: currentColor;
}
.kg-avocat-share__btn svg path,
.kg-avocat-share__btn svg circle {
    fill: currentColor;
}
/* === KG HERO SHARE END === */

/* === KG HERO VCARD START === */
.kg-avocat-vcard,
a.kg-avocat-vcard,
.kg-avocat-side-info__item .kg-avocat-vcard,
.kg-avocat-side-info__item a.kg-avocat-vcard {
    color: var(--kg-dark-blue) !important;
    text-decoration: none !important;
    font-size: 14px !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
    -webkit-filter: none !important;
    drop-shadow: none !important;
    outline: 0 !important;
    outline-offset: 0 !important;
    text-transform: none !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: 1.4;
    transition: opacity 0.2s ease;
}
.kg-avocat-vcard:hover,
.kg-avocat-vcard:focus,
.kg-avocat-vcard:focus-visible,
.kg-avocat-vcard:active,
a.kg-avocat-vcard:hover,
a.kg-avocat-vcard:focus,
a.kg-avocat-vcard:focus-visible,
a.kg-avocat-vcard:active {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--kg-dark-blue) !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
    outline: 0 !important;
    outline-offset: 0 !important;
    border: 0 !important;
    text-decoration: none !important;
    font-weight: 400 !important;
    opacity: 0.65;
    transform: none !important;
}
/* === KG HERO VCARD END === */

/* === KG NO WRAPPER SHADOW START === */
/* Hero selector triple-fallback */
.kg-hero-section, .elementor-element-4363149, .elementor-section:has(.kg-hero__photo),
.kg-hero-section, .elementor-element-4363149, .elementor-section:has(.kg-hero__photo) *,
.kg-hero-section, .elementor-element-4363149, .elementor-section:has(.kg-hero__photo) *::before,
.kg-hero-section, .elementor-element-4363149, .elementor-section:has(.kg-hero__photo) *::after,
.kg-hero-section, .elementor-element-4363149, .elementor-section:has(.kg-hero__photo) *:hover,
.kg-hero-section, .elementor-element-4363149, .elementor-section:has(.kg-hero__photo) *:focus,
.kg-hero-section, .elementor-element-4363149, .elementor-section:has(.kg-hero__photo) *:focus-visible,
.kg-hero-section, .elementor-element-4363149, .elementor-section:has(.kg-hero__photo) *:active {
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    -moz-box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
    -webkit-filter: none !important;
}
.kg-hero-section, .elementor-element-4363149, .elementor-section:has(.kg-hero__photo) img {
    box-shadow: none !important;
}
/* === KG NO WRAPPER SHADOW END === */

/* === KG HERO TIGHT SPACING START === */
/* Espacement serré entre widgets sidebar (cible desktop ET mobile) */
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__name,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__name.elementor-widget {
    margin: 0 0 2px 0 !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__role,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__role.elementor-widget {
    margin: 0 0 2px 0 !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__role-change,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__role-change.elementor-widget {
    margin: 0 0 16px 0 !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__share,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__share.elementor-widget {
    margin: 0 0 24px 0 !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertise-label,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertise-label.elementor-widget {
    margin: 0 0 4px 0 !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertise-bar,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertise-bar.elementor-widget {
    margin: 0 0 8px 0 !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertises,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertises.elementor-widget {
    margin: 0 0 24px 0 !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__side-info,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__side-info.elementor-widget {
    margin: 0 0 24px 0 !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__qrcode,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__qrcode.elementor-widget {
    margin: 0 0 12px 0 !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__photo,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__photo.elementor-widget {
    margin: 0 0 24px 0 !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__bio,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__bio.elementor-widget {
    margin: 0 0 24px 0 !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__testimonials,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__testimonials.elementor-widget {
    margin: 0 !important;
}

/* Override Elementor's default heading margins on the name h1 */
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__name h1.elementor-heading-title,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__name .elementor-heading-title {
    margin: 0 !important;
    padding: 0 !important;
}

/* Reset padding du widget container Elementor (peut ajouter du spacing) */
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero-section .elementor-widget-container {
    padding: 0 !important;
}
/* === KG HERO TIGHT SPACING END === */

/* === KG DESKTOP GRID START === */
@media (min-width: 1025px) {
    .kg-hero-section.kg-hero-section.kg-hero-section > .elementor-container > .elementor-column,
    .kg-hero-section.kg-hero-section.kg-hero-section > .elementor-container > .elementor-column > .elementor-widget-wrap,
    .kg-hero-section.kg-hero-section.kg-hero-section > .elementor-container > .elementor-column > .elementor-element-populated {
        width: 100% !important;
        max-width: 100% !important;
        flex-basis: 100% !important;
    }
    .kg-hero-section.kg-hero-section.kg-hero-section > .elementor-container > .elementor-column > .elementor-widget-wrap,
    .kg-hero-section.kg-hero-section.kg-hero-section > .elementor-container > .elementor-column > .elementor-element-populated {
        display: grid !important;
        grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) !important;
        grid-template-rows: repeat(10, min-content) !important;
        grid-auto-rows: min-content !important;
        grid-template-areas:
            'photo name'
            'photo role'
            'photo rolechange'
            'photo share'
            'photo expertiselabel'
            'photo expertisebar'
            'photo expertises'
            'bio sideinfo'
            'bio qrcode'
            'testimonials qrcode' !important;
        column-gap: 50px !important;
        row-gap: 0 !important;
        align-items: start !important;
        align-content: start !important;
    }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__photo {
        grid-area: photo !important;
        align-self: start !important;
        width: 100% !important;
    }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__name { grid-area: name !important; width: 100% !important; }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__role { grid-area: role !important; width: 100% !important; }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__role-change { grid-area: rolechange !important; width: 100% !important; }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__share { grid-area: share !important; width: 100% !important; }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertise-label { grid-area: expertiselabel !important; width: 100% !important; }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertise-bar { grid-area: expertisebar !important; width: 100% !important; }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertises { grid-area: expertises !important; width: 100% !important; }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__bio { grid-area: bio !important; width: 100% !important; }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__side-info { grid-area: sideinfo !important; width: 100% !important; }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__qrcode { grid-area: qrcode !important; width: 100% !important; }
    .kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__testimonials { grid-area: testimonials !important; width: 100% !important; }
}
/* === KG DESKTOP GRID END === */

/* === KG HIDE EMPTY WIDGETS START === */
/* Hide les widgets dont le contenu rendu est vide
   Excluant explicitement les dividers et les headings (qui peuvent avoir
   des containers techniquement "empty" mais sont décoratifs/sémantiques) */
.kg-hero-section.kg-hero-section.kg-hero-section .elementor-widget-shortcode:has(.elementor-shortcode:empty) {
    display: none !important;
}
.kg-hero-section.kg-hero-section.kg-hero-section .elementor-widget-html:has(> .elementor-widget-container:empty) {
    display: none !important;
}

/* Sécurité : forcer les dividers et headings à rester visibles même si
   leur container est techniquement matché par :empty */
.kg-hero-section.kg-hero-section.kg-hero-section .elementor-widget-divider,
.kg-hero-section.kg-hero-section.kg-hero-section .elementor-widget-heading,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertise-bar,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertise-label {
    display: block !important;
}

/* Le divider expertise-bar : assure visibilité dans la grid-cell */
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertise-bar .elementor-divider,
.kg-hero-section.kg-hero-section.kg-hero-section .kg-hero__expertise-bar .elementor-divider-separator {
    display: block !important;
    width: 100% !important;
    border-top-color: #000087 !important;
}
/* === KG HIDE EMPTY WIDGETS END === */

/* === KG DIVIDERS VISIBLE START === */
/* Force les dividers Elementor en pleine largeur */

body.single-kg_avocat .elementor-widget-divider {
    --divider-width: 100% !important;
    --divider-pattern-size: 100% !important;
    --divider-border-style: solid !important;
    --divider-border-width: 2px !important;
}

body.single-kg_avocat .elementor-widget-divider,
body.single-kg_avocat .elementor-widget-divider .elementor-widget-container {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* `.elementor-divider` : par defaut Elementor flex avec justify-content
   center et un max-width via --divider-width. On force stretch. */
body.single-kg_avocat .elementor-widget-divider .elementor-divider {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    justify-content: stretch !important;
    align-items: center !important;
    line-height: 0 !important;
}

/* Le span séparateur : flex: 1 pour stretch dans le flex container */
body.single-kg_avocat .elementor-widget-divider .elementor-divider-separator {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    flex: 1 1 100% !important;
    border-top-style: solid !important;
    border-top-color: inherit !important;
    height: 0 !important;
    margin: 0 !important;
}

/* Padding autour du divider (pour donner de l'air) */
body.single-kg_avocat .elementor-widget-divider .elementor-widget-container {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
}

/* Couleur du divider expertise-bar (sous le label EXPERTISE) — bleu KG */
body.single-kg_avocat .kg-hero__expertise-bar .elementor-divider-separator {
    border-top-color: #000087 !important;
}
body.single-kg_avocat .kg-hero__expertise-bar .elementor-widget-container {
    padding-top: 4px !important;
    padding-bottom: 12px !important;
}

/* Tous les autres dividers (sections 1-4 : Accordion / Recognitions / Events) — cyan */
body.single-kg_avocat .elementor-widget-divider:not(.kg-hero__expertise-bar) .elementor-divider-separator {
    border-top-color: #00ffff !important;
}
/* === KG DIVIDERS VISIBLE END === */

/* === KG RECOGNITIONS POLISH START === */
/* Pas de soulignement au survol des cards recognitions */
.kg-avocat-recognition__link,
.kg-avocat-recognition__link:hover,
.kg-avocat-recognition__link:focus,
.kg-avocat-recognition__link:hover *,
.kg-avocat-recognition__link:focus * {
    text-decoration: none !important;
    text-underline-offset: 0 !important;
}
.kg-avocat-recognition__title,
.kg-avocat-recognition__title strong,
.kg-avocat-recognition__title:hover,
.kg-avocat-recognition__subtitle,
.kg-avocat-recognition__date {
    text-decoration: none !important;
}

/* Mobile : 1 seule card visible (carousel) */
@media (max-width: 768px) {
    .kg-avocat-recognitions-wrap {
        --kg-recognitions-visible: 2 !important;
    }
}
/* === KG RECOGNITIONS POLISH END === */

/* === KG DIVIDERS EDGE TO EDGE START === */
/* Force les dividers à toucher les bords (pas de padding latéral) */
body.single-kg_avocat .elementor-widget-divider {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
body.single-kg_avocat .elementor-widget-divider .elementor-widget-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
body.single-kg_avocat .elementor-widget-divider .elementor-divider {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
/* === KG DIVIDERS EDGE TO EDGE END === */

/* === KG MOBILE RECOGNITIONS SCROLL START === */
@media (max-width: 768px) {
    /* 1 card visible et scroll horizontal touch (avec ou sans is-carousel) */
    .kg-avocat-recognitions-wrap {
        --kg-recognitions-visible: 2 !important;
        --kg-recognitions-gap: 16px !important;
        padding: 0 !important;
    }
    .kg-avocat-recognitions-wrap .kg-avocat-recognitions,
    .kg-avocat-recognitions-wrap.is-carousel .kg-avocat-recognitions,
    .kg-avocat-recognitions-wrap:not(.is-carousel) .kg-avocat-recognitions {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        gap: 16px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x mandatory !important;
        scroll-behavior: smooth !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
    }
    .kg-avocat-recognitions::-webkit-scrollbar {
        display: none !important;
    }
    .kg-avocat-recognitions-wrap .kg-avocat-recognition {
        flex: 0 0 calc((100% - (var(--kg-recognitions-visible) - 1) * var(--kg-recognitions-gap)) / var(--kg-recognitions-visible)) !important;
        min-width: 0 !important;
        max-width: none !important;
        scroll-snap-align: start !important;
    }

    /* Flèches masquées sur mobile (touch suffit) */
    .kg-avocat-recognitions__nav {
        display: none !important;
    }
}
/* === KG MOBILE RECOGNITIONS SCROLL END === */

/* === KG DIVIDERS FULL BLEED START === */
/* Dividers cyan étendus uniquement à droite (sections 1-4)
   — l'expertise-bar du hero (sous label EXPERTISE) NE déborde PAS */
body.single-kg_avocat .elementor-widget-divider:not(.kg-hero__expertise-bar) .elementor-divider-separator {
    width: calc(50vw + 50%) !important;
    max-width: calc(50vw + 50%) !important;
    min-width: calc(50vw + 50%) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Permettre le débordement à droite (uniquement pour les dividers cyan) */
body.single-kg_avocat .elementor-widget-divider:not(.kg-hero__expertise-bar) .elementor-divider,
body.single-kg_avocat .elementor-widget-divider:not(.kg-hero__expertise-bar) .elementor-widget-container,
body.single-kg_avocat .elementor-widget-divider:not(.kg-hero__expertise-bar) {
    overflow: visible !important;
}

/* Expertise-bar : reste contenue dans sa cellule (sous le label EXPERTISE) */
body.single-kg_avocat .kg-hero__expertise-bar .elementor-divider-separator {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
}

/* Évite la scrollbar horizontale due au débordement */
body.single-kg_avocat {
    overflow-x: hidden !important;
}
html:has(body.single-kg_avocat) {
    overflow-x: hidden !important;
}
/* === KG DIVIDERS FULL BLEED END === */

/* === KG SINGLE AVOCAT INNER MARGINS START === */
/* Zéro marges (h2/ul) sur widgets internes du template 1795 :
   - heading "Expertise" (73e4f1a)
   - widget expertises (98eb513) : heading interne + ul
   - widget share (b5dccd1) : ul + padding par défaut du browser */
.elementor-1795 .elementor-element-98eb513 .kg-elementor-expertises__heading,
.elementor-1795 .elementor-element-98eb513 .kg-avocat-expertises,
.elementor-1795 .elementor-element-b5dccd1 .kg-avocat-share {
    margin: 0 !important;
    padding: 0 !important;
}
/* === KG SINGLE AVOCAT INNER MARGINS END === */

/* ----- end : TEMPLATE : SINGLE AVOCAT — KG (id 1795) ----- */

/* === KG RECOGNITIONS LIST START === */
/* Liste simple des recognitions dans l'accordion (pas d'image, juste texte) */
.kg-avocat-recognitions-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.kg-avocat-recognitions-list__item {
    margin: 0 0 18px 0;
    font-size: 16px;
    line-height: 22px;
    color: #000087;
}
.kg-avocat-recognitions-list__item:last-child {
    margin-bottom: 0;
}
.kg-avocat-recognitions-list__title,
.kg-avocat-recognitions-list__sep,
.kg-avocat-recognitions-list__subtitle {
    color: #000087;
}
/* Title cliquable — vers la page de l'award */
.kg-avocat-recognitions-list__title {
    font-weight: 500;
    text-decoration: none;
    color: #000087;
    transition: opacity 0.2s ease;
}
.kg-avocat-recognitions-list__title:hover,
.kg-avocat-recognitions-list__title:focus-visible {
    text-decoration: underline;
    color: #000087;
    opacity: 0.8;
}
.kg-avocat-recognitions-list__subtitle {
    font-weight: 300;
}
/* === KG RECOGNITIONS LIST END === */

/* === KG RECOGNITIONS CAROUSEL TWEAKS START === */
/* Hide le bloc texte sous chaque logo (mais garde-le accessible aux screen readers) */
.kg-avocat-recognition__text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    border: 0 !important;
}

/* Pas d'effet de translation au hover */
.kg-avocat-recognition__link,
.kg-avocat-recognition__link:hover,
.kg-avocat-recognition__link:focus,
.kg-avocat-recognition__link:focus-visible {
    transform: none !important;
}
/* === KG RECOGNITIONS CAROUSEL TWEAKS END === */

/* === KG RECOGNITIONS NAV BELOW START === */
/* Flèches du carrousel recognitions : en dessous, centrées, plus grandes */
.kg-avocat-recognitions-wrap.is-carousel {
    padding-bottom: 60px;
}
.kg-avocat-recognitions-wrap button.kg-avocat-recognitions__nav,
.kg-avocat-recognitions__nav {
    /* Position : bottom au lieu de top:50% */
    top: auto !important;
    bottom: 0 !important;
    transform: none !important;
    /* Plus grandes */
    width: 36px !important;
    height: 36px !important;
    /* Couleur explicite */
    color: #000087 !important;
    opacity: 1;
}
.kg-avocat-recognitions__nav--prev {
    left: calc(50% - 40px) !important;
    right: auto !important;
}
.kg-avocat-recognitions__nav--next {
    left: calc(50% + 16px) !important;
    right: auto !important;
}
/* Hover : opacity 60%, pas de zoom, pas de décalage */
.kg-avocat-recognitions-wrap button.kg-avocat-recognitions__nav:hover,
.kg-avocat-recognitions__nav:hover {
    transform: none !important;
    opacity: 0.6 !important;
}
/* Icône légèrement plus grande */
.kg-avocat-recognitions__nav svg {
    width: 24px !important;
    height: 24px !important;
}
/* === KG RECOGNITIONS NAV BELOW END === */

/* === KG EVENTS META MARGIN START === */
/* Meta events/news : margin-bottom réduit, séparateur #000087 1px */
.kg-avocat-related-event__meta,
.kg-avocat-related-news__meta,
.kg-events-upcoming-card__meta,
body.post-type-archive-kg_event .kg-events-archive-card__meta,
.kg-event-related__meta {
    margin-bottom: 6px !important;
    padding-bottom: 5px !important;
    border-bottom: 1px solid #000087 !important;
}
/* === KG EVENTS META MARGIN END === */

/* === KG EVENTS TITLE SPACING START === */
/* Espace entre la ligne de séparation et le titre de l'article */
.kg-avocat-related-event__title,
.kg-avocat-related-news__title-item,
.kg-events-upcoming-card__title,
body.post-type-archive-kg_event .kg-events-archive-card__title,
.kg-event-related__title {
    margin-top: 20px !important;
}
/* === KG EVENTS TITLE SPACING END === */

/* === KG EVENTS META WEIGHT START === */
/* Meta (date - org) sur les événements + related news en weight 300 */
.kg-avocat-related-event__meta,
.kg-avocat-related-event__date,
.kg-avocat-related-event__org,
.kg-avocat-related-news__meta,
.kg-avocat-related-news__date,
.kg-avocat-related-news__org,
.kg-events-upcoming-card__meta,
.kg-events-upcoming-card__date,
.kg-events-upcoming-card__loc,
body.post-type-archive-kg_event .kg-events-archive-card__meta,
body.post-type-archive-kg_event .kg-events-archive-card__date,
body.post-type-archive-kg_event .kg-events-archive-card__loc,
.kg-event-related__meta,
.kg-event-related__date,
.kg-event-related__loc {
    font-weight: 300 !important;
}
/* === KG EVENTS META WEIGHT END === */

/* === KG CONTACT FULLWIDTH START === */
/* Toutes les pages utilisant le template "static-page" (Contact, Terms,
   Privacy, Cookie...) en pleine largeur. Override de la max-width: 1200px
   imposée par static-pages.css du plugin custom. */
.kg-static-page {
    max-width: none !important;
    padding: 0 !important;
}
/* === KG CONTACT FULLWIDTH END === */

/* === KG RECOGNITIONS LOGO SIZE START === */
/* Logos plus grands dans le carrousel recognitions */
.kg-avocat-recognition__img img {
    max-width: 280px !important;
    max-height: 215px;
    height: auto;
    object-fit: contain;
}

/* Responsive : sur les écrans ≤ 1366px (portables, laptops 13/15"),
   on plafonne à 200px pour garder une bonne densité visuelle. */
@media (max-width: 1366px) {
    .kg-avocat-recognition__img img {
        max-width: 200px !important;
        max-height: 155px;
    }
}

/* Mobile (≤ 767px) : 2 logos visibles à la fois. */
@media (max-width: 767px) {
    .kg-avocat-recognitions-wrap {
        --kg-recognitions-visible: 2;
    }
}
/* === KG RECOGNITIONS LOGO SIZE END === */

/* === KG RECOGNITIONS NAV RESPONSIVE START === */
/* Mobile : flèches cachées (swipe touch suffit) — override avec
   même spécificité que la règle de base pour battre son !important */
@media (max-width: 767px) {
    .kg-avocat-recognitions-wrap button.kg-avocat-recognitions__nav,
    .kg-avocat-recognitions__nav {
        display: none !important;
    }
}

/* Tablette (768-1024px) : flèches 20px plus bas → on augmente le padding-bottom
   du wrap. Comme les flèches sont en bottom:0, ça les pousse plus bas. */
@media (min-width: 768px) and (max-width: 1024px) {
    .kg-avocat-recognitions-wrap.is-carousel {
        padding-bottom: 80px !important;
    }
}
/* === KG RECOGNITIONS NAV RESPONSIVE END === */

/* === KG TESTIMONIAL MOBILE START === */
/* Mobile : citation testimonial plus petite */
@media (max-width: 767px) {
    .kg-avocat-testimonial__quote {
        font-size: 20px !important;
        line-height: 32px !important;
    }
}
/* === KG TESTIMONIAL MOBILE END === */

/* === KG EVENTS NEWS TITLE MOBILE START === */
/* Mobile + tablette : titre des events/news à 16/19px */
@media (max-width: 1024px) {
.kg-avocat-related-event__title,
.kg-avocat-related-news__title-item,
.kg-events-upcoming-card__title,
body.post-type-archive-kg_event .kg-events-archive-card__title,
.kg-event-related__title {
        font-size: 16px !important;
        line-height: 19px !important;
    }
}
/* === KG EVENTS NEWS TITLE MOBILE END === */

/* === KG EVENTS NEWS EXCERPT MOBILE START === */
/* Mobile + tablette : excerpt des events/news à 14/18px */
@media (max-width: 1024px) {
.kg-avocat-related-event__excerpt,
.kg-avocat-related-news__excerpt,
.kg-events-upcoming-card__excerpt,
body.post-type-archive-kg_event .kg-events-archive-card__excerpt,
.kg-event-related__excerpt {
        font-size: 14px !important;
        line-height: 18px !important;
    }
}
/* === KG EVENTS NEWS EXCERPT MOBILE END === */

/* === KG FIX BODY OVERFLOW STICKY START === */
/* Override l'overflow:hidden auto que jQuery UI Dialog laisse traîner
   sur body via les classes dialog-body / dialog-container.
   Sans cet override, position:sticky ne fonctionne plus car body
   devient le scroll container au lieu du viewport. */
body.dialog-body,
body.dialog-buttons-body,
body.dialog-container,
body.dialog-buttons-container {
    overflow: visible !important;
}
html.dialog-body,
html.dialog-buttons-body {
    overflow: visible !important;
}
/* === KG FIX BODY OVERFLOW STICKY END === */

/* === KG HEADER DIVIDER KEEP NATIVE START === */
/* Sur Single Avocat, les dividers DU HEADER (cyan bar du top notamment)
   doivent garder leur weight natif (30px), pas le 2px forcé sur les
   dividers du contenu de la fiche. */
body.single-kg_avocat .elementor-location-header .elementor-widget-divider {
    --divider-border-width: 30px !important;
}
body.single-kg_avocat .elementor-location-header .elementor-widget-divider .elementor-divider-separator {
    border-top-width: 30px !important;
}
body.single-kg_avocat .elementor-location-header .elementor-widget-divider .elementor-widget-container {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
/* === KG HEADER DIVIDER KEEP NATIVE END === */

/* === KG SITE CONTENT NO HORIZONTAL OVERFLOW START === */
/* Empêche le scroll horizontal causé par les éléments qui dépassent
   du container, SANS casser le position:sticky des descendants.
   `overflow-x: clip` clip le contenu mais ne crée pas de containing
   block qui bloque sticky (contrairement à `overflow: hidden`). */
.site-content {
    overflow-x: clip !important;
    overflow-y: visible !important;
}
/* === KG SITE CONTENT NO HORIZONTAL OVERFLOW END === */

/* ===== TEMPLATE : SINGLE NEWS — KG (id 2536) =====================================
 * Custom CSS du template Single News (selectors .elementor-2536)
 * ============================================================ */

/* ═════════════════════════════════════════════════════════════════════
 * COHÉRENCE STYLISTIQUE SINGLE NEWS ↔ /people/
 * Edit me directly here via Elementor → Settings → Advanced → Custom CSS
 * ═════════════════════════════════════════════════════════════════════ */

/* ─── Wrapper 2-col aside (KG-Nav) + content (matche /people/ V4 atomic) */
body.single-kg_news .kg-news-wrapper.elementor-section-boxed > .elementor-container {
	max-width: 1500px !important;
}
body.single-kg_news .kg-news-wrapper > .elementor-container > .elementor-col-25 {
	margin-top: -34px;
}
/* Padding 0 sur TOUS les widget-wrap du wrapper news (outer cols 25/75 ET
 * inner sections meta_row 66/33, body_row 66/33). Annule la règle Elementor
 * par défaut `.elementor-column-gap-default > .elementor-column > .elementor-element-populated { padding: 10px }`
 * qui décale le contenu (date, intro, body) de 10px à droite. */
body.single-kg_news .kg-news-wrapper .elementor-column > .elementor-widget-wrap.elementor-element-populated {
	padding-left: 0;
}
@media (max-width: 1024px) {
	body.single-kg_news .kg-news-wrapper .elementor-col-25 { max-width: 100%; }
	body.single-kg_news .kg-news-wrapper > .elementor-container > .elementor-col-25 { margin-top: 0; }
}

/* ─── Petites barres séparatrices cyan sous les headings (pattern Symfony .small-hr) */
body.single-kg_news .kg-news__sidebar-expertise .elementor-widget-heading::after,
body.single-kg_news .kg-news__sidebar-authors .kg-news-authors__heading::after,
body.single-kg_news .kg-news__sidebar-newsletter .kg-news-newsletter__heading::after,
body.single-kg_news .kg-news-related__heading::after {
	content: "";
	display: block;
	width: 30px;
	height: 2px;
	background-color: #00ffff;
	margin: 8px 0 16px;
}

/* ─── Typography sidebar labels (uppercase letter-spaced cohérent /people/) */
body.single-kg_news .kg-section-heading {
	font-size: 28px;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #000087;
	margin: 0 0 24px;
}
body.single-kg_news .kg-news__sidebar-expertise h3,
body.single-kg_news .kg-news__sidebar-expertise h4,
body.single-kg_news .kg-news__sidebar-authors .kg-news-authors__heading,
body.single-kg_news .kg-news__sidebar-newsletter .kg-news-newsletter__heading {
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #000087;
	margin: 0 0 12px;
}

/* ─── Date hero meta */
body.single-kg_news .kg-news__date {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #000087;
	margin: 0 0 12px;
}

/* ─── Reading time */
body.single-kg_news .kg-news__reading-time {
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #6b6f95;
	margin: 8px 0 24px;
}

/* ─── Introduction (chapeau) */
body.single-kg_news .kg-news__introduction p {
	color: #000087;
	margin: 0 0 24px;
}

/* ─── Body article */
body.single-kg_news .kg-news-body h2 {
	margin: 32px 0 12px;
}
body.single-kg_news .kg-news-body h3 {
	font-size: 18px;
	font-weight: 700;
	color: #000087;
	margin: 24px 0 8px;
}

/* ─── Related news = clone EXACT du widget kg-avocat-related-news utilisé
 *      sur les fiches avocat /people/. Markup et classes identiques.
 *      Defaults du widget knkg-avocat-related-news :
 *        cols 3 / col-gap 32 / row-gap 40
 *        card bg transparent, padding 0
 *        image aspect auto (naturelle), hover scale 1.04
 *        meta couleur #000087, séparateur " · " inséré entre date et org
 *        title couleur #000087
 *        excerpt couleur #6e6fb7, max 5 lignes */
body.single-kg_news .kg-news-related__grid {
	list-style: none;
	padding: 0;
	margin: 24px 0 0;
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	column-gap: 32px !important;
	row-gap: 40px !important;
}
@media (max-width: 1024px) {
	body.single-kg_news .kg-news-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}
@media (max-width: 767px) {
	body.single-kg_news .kg-news-related__grid {
		grid-template-columns: 1fr !important;
	}
}

/* Card : padding 0, bg transparent, no border */
body.single-kg_news .kg-news-related__item {
	padding: 0;
	background-color: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}
body.single-kg_news .kg-news-related__link {
	display: block;
	text-decoration: none;
	color: inherit;
}

/* Image preview désactivée — on garde uniquement le texte (date · KLEYR_GRASSO
 * + titre + excerpt) dans les cards related news. */
body.single-kg_news .kg-news-related__img {
	display: none;
}
body.single-kg_news .kg-news-related__img picture,
body.single-kg_news .kg-news-related__img img {
	position: absolute !important;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	max-width: none;
	display: block;
	object-fit: cover;
	object-position: center center;
	transition: transform 0.5s ease;
}
body.single-kg_news .kg-news-related__link:hover .kg-news-related__img img {
	transform: scale(1.04);
}

/* Meta line : date · KLEYR_GRASSO. Figtree 12px 700 uppercase letter-spaced */
body.single-kg_news .kg-news-related__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 8px;
	font-family: "Figtree", sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #000087;
	margin: 0 0 6px;
}
body.single-kg_news .kg-avocat-related-news__date,
body.single-kg_news .kg-avocat-related-news__org {
	display: inline;
}
body.single-kg_news .kg-avocat-related-news__org::before {
	content: "·";
	margin-right: 6px;
	color: #6e6fb7;
}

/* Title : Figtree 18px 700 line-height 24 color #000087 */
body.single-kg_news .kg-news-related__title {
	font-family: "Figtree", sans-serif;
	font-size: 18px;
	line-height: 24px;
	font-weight: 700;
	color: #000087;
	margin: 0 0 8px;
	letter-spacing: 0;
	text-transform: none;
}

/* Excerpt : Figtree 14px 400 line-height 21 color #6e6fb7, max 5 lignes */
body.single-kg_news .kg-news-related__excerpt {
	font-family: "Figtree", sans-serif;
	font-size: 14px;
	line-height: 21px;
	font-weight: 400;
	color: #6e6fb7;
	margin: 0;
	letter-spacing: 0;
	text-transform: none;
	display: -webkit-box;
	-webkit-line-clamp: 5;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Heading "RELATED NEWS" — typo /people/ kg-section-heading */
body.single-kg_news .kg-news-related__heading {
	font-family: "Figtree", sans-serif;
	font-size: 28px;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #000087;
	margin: 0 0 24px;
}

/* Espace en bas de la section related news avant le footer */
body.single-kg_news .kg-news-related {
	margin-bottom: 80px;
}

/* ═════════════════════════════════════════════════════════════════════
 * SIDEBAR KEY CONTACT — accordion
 * Fermé   : [+] [Name / Role]
 * Ouvert  : [−] [Name / Role] + photo + phone + email + bouton LINK TO BIO
 * ═════════════════════════════════════════════════════════════════════ */

/* Chevron à GAUCHE — "+" devient "−" au open via rotation */
.kg-sidebar-authors .kg-news-authors--accordion .kg-news-authors__chevron {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	font-size: 20px;
	font-weight: 400;
	line-height: 1;
	color: #000087;
	transition: transform 0.25s ease;
	flex-shrink: 0;
	margin-top: 2px;
}
.kg-sidebar-authors .kg-news-authors--accordion .kg-news-authors__details[open] .kg-news-authors__chevron {
	transform: rotate(45deg);
}

/* Item séparateurs subtils */
.kg-sidebar-authors .kg-news-authors--accordion .kg-news-authors__details {
	padding: 2px 0;
	border-top: 1px solid rgba(0, 0, 135, 0.12);
}
.kg-sidebar-authors .kg-news-authors--accordion .kg-news-authors__details:last-child {
	border-bottom: 1px solid rgba(0, 0, 135, 0.12);
}

/* Avatar dans la summary masqué (le V3 template peut en injecter
 * — la photo apparaît uniquement dans le detail quand ouvert) */
.kg-sidebar-authors .kg-news-authors--accordion .kg-news-authors__summary > .kg-news-authors__avatar {
	display: none;
}

/* Name + role dans la summary */
.kg-sidebar-authors .kg-news-authors--accordion .kg-news-authors__text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.kg-sidebar-authors .kg-news-authors__name {
	font-family: "Figtree", sans-serif;
	font-size: 14px;
	font-weight: 700;
	color: #000087;
	line-height: 1.3;
}
.kg-sidebar-authors .kg-news-authors__role {
	font-family: "Figtree", sans-serif;
	font-size: 12px;
	font-weight: 400;
	color: #6e6fb7;
	line-height: 1.3;
}

/* Detail (apparaît quand ouvert) */
.kg-sidebar-authors .kg-news-authors__detail {
	padding: 12px 0 4px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
/* Photo : large, rectangulaire 16:9, full width de la sidebar */
.kg-sidebar-authors .kg-news-authors__detail-avatar {
	margin: 0;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #f0f2f8;
	border-radius: 0;
}
.kg-sidebar-authors .kg-news-authors__detail-avatar img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: center top;
	border-radius: 0;
}

/* Contact list : phone + email + linkedin */
.kg-sidebar-authors .kg-news-authors__contact-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.kg-sidebar-authors .kg-news-authors__contact-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: "Figtree", sans-serif;
	font-size: 13px;
	font-weight: 500;
	color: #000087;
	text-decoration: none;
}
.kg-sidebar-authors .kg-news-authors__contact-link:hover {
	color: #6e6fb7;
}
.kg-sidebar-authors .kg-news-authors__contact-icon {
	flex-shrink: 0;
	color: #000087;
}

/* Bouton LINK TO BIO — cyan brand */
.kg-sidebar-authors .kg-news-authors__profile-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 24px;
	margin-top: 6px;
	background: #00FFFF;
	color: #000087;
	font-family: "Figtree", sans-serif;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 2.4px;
	text-transform: uppercase;
	text-decoration: none;
	transition: background 0.3s ease, color 0.3s ease;
	align-self: flex-start;
}
.kg-sidebar-authors .kg-news-authors__profile-btn:hover,
.kg-sidebar-authors .kg-news-authors__profile-btn:focus-visible {
	background: #000087;
	color: #00FFFF;
	font-weight: 800;
	text-decoration: none;
}

/* Heading "KEY CONTACT" — typo cohérente sidebar */
.kg-sidebar-authors .kg-news-authors__heading {
	font-family: "Figtree", sans-serif;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #000087;
	margin: 0 0 12px;
}

/* ----- end : TEMPLATE : SINGLE NEWS — KG (id 2536) ----- */

/* === KG NEWS BODY HR START === */
/* <hr /> dans le body : ligne séparatrice fine cyan. Mutualisé entre
   Single News (.kg-news-body) et Single Network / Expertise
   (.kg-news__introduction, le widget text-editor du corps). */
.kg-news-body hr,
.kg-news__introduction hr {
    display: block;
    width: 100%;
    height: 1px;
    border: 0;
    border-top: 1px solid #00e5e5;
    margin: 24px 0;
    background: transparent;
    opacity: 1;
}
/* === KG NEWS BODY HR END === */

/* === KG NEWS H1 NO AFTER START === */
/* Retire la barre cyan ::after du H1 article news + sidebars Key Contact + Stay Informed */
body.single-kg_news .kg-news__title::after,
body.single-kg_news .kg-news__title.elementor-widget-heading::after,
body.single-kg_news h1.elementor-heading-title::after,
body.single-kg_news .kg-news__sidebar-authors .kg-news-authors__heading::after,
body.single-kg_news .kg-news__sidebar-newsletter .kg-news-newsletter__heading::after {
    content: none !important;
    display: none !important;
}
/* === KG NEWS H1 NO AFTER END === */

/* === KG NEWS BODY BOLD AND LINKS START === */
/* Bold dans le body des news */
.kg-news-body strong,
.kg-news-body b {
    font-weight: 600 !important;
    color: #000087CC;
    font-size: 16px;
    line-height: 22px;
    text-decoration: none;
}

/* Liens dans le body des news : mêmes propriétés + underline */
.kg-news-body a {
    font-weight: 600 !important;
    color: #000087CC;
    font-size: 16px;
    line-height: 22px;
    text-decoration: underline;
}
.kg-news-body a:hover,
.kg-news-body a:focus-visible {
    color: #000087;
    text-decoration: underline;
}
/* === KG NEWS BODY BOLD AND LINKS END === */

/* === KG NEWS LANGS LINK START === */
/* Liens du language switcher news */
.kg-news-langs__link {
    font-weight: 600 !important;
    color: #000087 !important;
    font-size: 12px !important;
    line-height: 22px !important;
    text-decoration: none !important;
}
.kg-news-langs__link:hover,
.kg-news-langs__link:focus,
.kg-news-langs__link:focus-visible {
    text-decoration: none !important;
    color: #000087 !important;
}
/* === KG NEWS LANGS LINK END === */

/* === KG NEWS DATE START === */
/* Date de l'article news : weight 400, #000087, 12/22 */
.kg-news__date,
.kg-news__date .elementor-heading-title,
.kg-news__date h1,
.kg-news__date h2,
.kg-news__date h3,
.kg-news__date h4,
.kg-news__date h5,
.kg-news__date h6 {
    font-weight: 400 !important;
    color: #000087 !important;
    font-size: 12px !important;
    line-height: 22px !important;
}
/* Réduit l'espace entre la date et la ligne en dessous */
.kg-news__date {
    margin-bottom: 0 !important;
}
.kg-news__date .elementor-widget-container {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.kg-news__date .elementor-heading-title {
    margin: 0 !important;
}
/* === KG NEWS DATE END === */

/* === KG NEWS BODY LI START === */
/* <li> dans news body : ::before ">" en place du puce */
.kg-news-body ul {
    list-style: none !important;
    margin-left: 20px !important;
    padding-left: 18px !important;
}
.kg-news-body ul li {
    position: relative;
}
.kg-news-body ul li::before {
    content: ">";
    position: absolute;
    left: -18px;
    color: inherit;
}
/* === KG NEWS BODY LI END === */

/* === KG PEOPLE FILTERS MOBILE PADDING START === */
/* Mobile (≤767px) : espace 10px entre le titre du select et le border-bottom
   des filtres expertise + title sur la page People. */
@media (max-width: 767px) {
    .kg-filtres .elementor-widget-container:has(.kg-avocats-filter-label--expertise),
    .kg-filtres .elementor-widget-container:has(.kg-avocats-filter-label--title) {
        padding-bottom: 10px !important;
    }
}
/* === KG PEOPLE FILTERS MOBILE PADDING END === */

/* === KG REVEAL BTN RESPONSIVE START === */
/* Tablette (≤900px) : 2 colonnes dans la grille, gap 24px → tuile = calc(50% - 12px) */
@media (max-width: 900px) {
    .kg-avocats-reveal-actions {
        width: calc(50% - 12px) !important;
    }
}
/* Mobile (≤480px) : 1 colonne, tuile pleine largeur */
@media (max-width: 480px) {
    .kg-avocats-reveal-actions {
        width: 100% !important;
    }
}
/* === KG REVEAL BTN RESPONSIVE END === */

/* === KG RIGHT SIDEBAR GENERIC START === */
/* Styles génériques de la sidebar droite (class `.right-sidebar`).
   Réutilisable sur n'importe quelle page qui porte cette class. */

/* ─── Titres de section (H2 uniquement, pas H1/H3/H4) ──────────────────── */
.right-sidebar h2.elementor-heading-title,
.right-sidebar h2 {
    font-weight: 700 !important;
    color: #000087 !important;
    font-size: 12px !important;
    line-height: 6px !important;
    border-bottom: 1px solid #000087 !important;
    padding: 0 0 10px 0 !important;
    margin: 0 0 12px 0 !important;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
/* Sécurité : pas de border-bottom sur le wrapper du widget */
.right-sidebar .kg-section-heading,
.right-sidebar .kg-section-heading > .elementor-widget-container {
    border-bottom: 0 !important;
}

/* ─── Listes expertises (sidebar) ──────────────────────────────────────── */
.right-sidebar .kg-sidebar-expertises,
.right-sidebar .kg-news-expertise-list,
.right-sidebar .kg-avocat-expertises {
    list-style: none;
    margin: 0;
    padding: 0;
}
.right-sidebar .kg-sidebar-expertises li,
.right-sidebar .kg-news-expertise-list li,
.right-sidebar .kg-avocat-expertises li {
    margin: 0;
    padding: 0;
    list-style: none;
}
.right-sidebar .kg-sidebar-expertises li::before,
.right-sidebar .kg-sidebar-expertises li::marker,
.right-sidebar .kg-news-expertise-list li::before,
.right-sidebar .kg-news-expertise-list li::marker,
.right-sidebar .kg-avocat-expertises li::before,
.right-sidebar .kg-avocat-expertises li::marker {
    display: none !important;
    content: none !important;
}
.right-sidebar .kg-sidebar-expertises a,
.right-sidebar .kg-news-expertise-list a,
.right-sidebar .kg-avocat-expertises a {
    font-weight: 300 !important;
    color: #000087 !important;
    font-size: 12px !important;
    line-height: 14px !important;
    text-decoration: none !important;
    transition: font-weight 0.3s ease;
    display: inline-block;
}
.right-sidebar .kg-sidebar-expertises a:hover,
.right-sidebar .kg-sidebar-expertises a:focus-visible,
.right-sidebar .kg-news-expertise-list a:hover,
.right-sidebar .kg-news-expertise-list a:focus-visible,
.right-sidebar .kg-avocat-expertises a:hover,
.right-sidebar .kg-avocat-expertises a:focus-visible {
    font-weight: 600 !important;
    color: #000087 !important;
    text-decoration: none !important;
    opacity: 1 !important;
}

/* ─── Bloc Auteurs (Key Contact) ───────────────────────────────────────── */
.kg-sidebar-authors .kg-news-authors__name {
    font-weight: 300 !important;
    color: #000087 !important;
    font-size: 16px !important;
    line-height: 14px !important;
}
.kg-sidebar-authors .kg-news-authors__role {
    font-weight: 700 !important;
    color: #000087 !important;
    font-size: 12px !important;
    line-height: 10px !important;
}
.kg-sidebar-authors .kg-news-authors__contact-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.kg-sidebar-authors .kg-news-authors__contact-list li {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    display: flex !important;
}
.kg-sidebar-authors .kg-news-authors__contact-list a,
.kg-sidebar-authors .kg-news-authors__contact-link {
    font-weight: 400 !important;
    color: #000087 !important;
    font-size: 12px !important;
    line-height: 12px !important;
    text-decoration: none !important;
    transition: font-weight 0.15s ease;
    padding: 0 !important;
}
/* Icônes phone / email / linkedin : taille +3px (14 → 17) */
.kg-sidebar-authors .kg-news-authors__contact-icon {
    width: 17px !important;
    height: 17px !important;
    flex-shrink: 0;
}
.kg-sidebar-authors .kg-news-authors__contact-list a:hover,
.kg-sidebar-authors .kg-news-authors__contact-list a:focus-visible,
.kg-sidebar-authors .kg-news-authors__contact-link:hover,
.kg-sidebar-authors .kg-news-authors__contact-link:focus-visible {
    font-weight: 700 !important;
    color: #000087 !important;
    text-decoration: none !important;
}

/* ─── Chevron "+" plus grand + aligné en haut ──────────────────────────── */
.kg-sidebar-authors .kg-news-authors__summary {
    align-items: flex-start !important;
    position: relative;
    gap: 4px !important;
}
.kg-sidebar-authors .kg-news-authors__chevron {
    font-size: 26px !important;
    line-height: 1 !important;
    width: 28px !important;
    height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: flex-start !important;
    /* On utilise position offset (pas margin) pour décaler — sinon
       les margins négatives entrent en conflit avec le transform: rotate
       et créent un effet d'anim bizarre. */
    position: relative !important;
    left: -8px !important;
    top: -6px !important;
    margin: 0 !important;
}

/* ─── Bouton "Link to Bio" — full width ────────────────────────────────── */
.kg-sidebar-authors .kg-news-authors__profile-btn {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box;
    text-align: center;
    text-decoration: none;
}

/* ─── Fade-in / fade-out à l'ouverture du contact (Chrome 131+, Safari 18.2+) */
.kg-sidebar-authors .kg-news-authors__details {
    /* Permet de transitionner entre block-size 0 et auto (Chrome 129+,
       Safari 17.4+, Firefox 129+). Scope local pour éviter les effets
       de bord ailleurs. */
    interpolate-size: allow-keywords;
}
.kg-sidebar-authors .kg-news-authors__details::details-content {
    opacity: 0;
    block-size: 0;
    overflow: clip;
    transition:
        opacity 0.35s ease,
        block-size 0.4s cubic-bezier(0.4, 0, 0.2, 1),
        content-visibility 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    transition-behavior: allow-discrete;
}
.kg-sidebar-authors .kg-news-authors__details[open]::details-content {
    opacity: 1;
    block-size: auto;
}

/* ─── Bloc Newsletter (Stay Informed) — override les styles globaux ──── */
/* Titre H2 du newsletter : blanc, 24/24, weight 800, pas de border */
.kg-sidebar-newsletter h2.elementor-heading-title,
.kg-sidebar-newsletter .elementor-heading-title,
.kg-sidebar-newsletter h2 {
    font-weight: 800 !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 24px !important;
    border-bottom: 0 !important;
    padding: 0 !important;
    margin: 0 0 16px 0 !important;
    text-transform: none;
    letter-spacing: 0;
}

/* Contenu texte (text-editor) : blanc, 18/22, weight 800 */
.kg-sidebar-newsletter .elementor-widget-text-editor,
.kg-sidebar-newsletter .elementor-widget-text-editor p,
.kg-sidebar-newsletter .kg-newsletter-lead,
.kg-sidebar-newsletter .kg-newsletter-lead p {
    font-weight: 800 !important;
    color: #ffffff !important;
    font-size: 18px !important;
    line-height: 22px !important;
}

/* Bouton newsletter : style "CTA" complet du kit Elementor
   (cohérent avec les boutons CTA de la page People). Full-width sidebar. */
.kg-sidebar-newsletter .elementor-button,
.kg-sidebar-newsletter a.elementor-button {
    /* Couleurs (kit globals : bg secondary cyan, text primary blue) */
    background-color: #00FFFF !important;
    background-image: none !important;
    color: #000087 !important;
    /* Typo (kit globals) */
    font-family: Figtree, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none !important;
    /* Box */
    display: block !important;
    width: 100% !important;
    box-sizing: border-box;
    padding: 16px 24px !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    cursor: pointer;
    text-align: center;
    appearance: none !important;
    -webkit-appearance: none !important;
    transition: background-color 0.2s ease, color 0.2s ease;
}
.kg-sidebar-newsletter .elementor-button:hover,
.kg-sidebar-newsletter .elementor-button:focus-visible,
.kg-sidebar-newsletter a.elementor-button:hover,
.kg-sidebar-newsletter a.elementor-button:focus-visible {
    background-color: #000087 !important;
    color: #00FFFF !important;
    text-decoration: none !important;
}

/* Override global : aucun bouton .elementor-button (lien ou button) ne doit
   être souligné au hover (le kit Elementor force underline sur tous les
   <a>:hover via .elementor-kit-269 a:hover). */
a.elementor-button,
a.elementor-button:hover,
a.elementor-button:focus,
a.elementor-button:focus-visible,
a.elementor-button:active,
a.elementor-button:visited,
.elementor-kit-269 a.elementor-button:hover {
    text-decoration: none !important;
}

/* Liens tel: et mailto: dans la section "Get in touch" (page People) :
   pas de underline au hover (override du kit global). */
body.post-type-archive-kg_avocat .elementor-element-591211a a[href^="tel:"],
body.post-type-archive-kg_avocat .elementor-element-591211a a[href^="mailto:"],
body.post-type-archive-kg_avocat .elementor-element-591211a a[href^="tel:"]:hover,
body.post-type-archive-kg_avocat .elementor-element-591211a a[href^="mailto:"]:hover,
body.post-type-archive-kg_avocat .elementor-element-591211a a[href^="tel:"]:focus,
body.post-type-archive-kg_avocat .elementor-element-591211a a[href^="mailto:"]:focus,
body.post-type-archive-kg_avocat .elementor-element-591211a a[href^="tel:"]:focus-visible,
body.post-type-archive-kg_avocat .elementor-element-591211a a[href^="mailto:"]:focus-visible {
    text-decoration: none !important;
}
/* Le widget button d'Elementor wrap le <a> dans un <div class="elementor-button-wrapper">.
   On force ce wrapper en block + 100% pour que le bouton fasse vraiment toute la largeur. */
.kg-sidebar-newsletter .elementor-widget-button .elementor-button-wrapper {
    width: 100%;
}

/* ─── Container 43b9ba6 : image de fond carrée, toujours affichée entière */
.elementor-element-43b9ba6 {
    aspect-ratio: 1 / 1 !important;
    background-size: 100% auto !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    height: auto !important;
    min-height: 0 !important;
}
/* Sous 1100px : on libère le ratio, l'image passe en cover et la box
   s'adapte à la hauteur du contenu */
@media (max-width: 1100px) {
    .elementor-element-43b9ba6 {
        aspect-ratio: auto !important;
        background-size: cover !important;
        background-position: center center !important;
    }
}

/* ─── Retire les bordures englobant la box contact ─────────────────────── */
.kg-sidebar-authors .kg-news-authors__details,
.kg-sidebar-authors .kg-news-authors__item,
.kg-sidebar-authors .kg-news-authors__list {
    border: 0 !important;
}
/* === KG RIGHT SIDEBAR GENERIC END === */

/* === KG SELECT TRIGGER HOVER FIX START === */
/* Override des styles de hover sur <button> (Astra / Elementor kit)
   qui ajoutent un fond bleu indésirable sur le trigger du dropdown. */
.kg-filtres .kg-select-trigger,
.kg-filtres .kg-select-trigger:hover,
.kg-filtres .kg-select-trigger:focus,
.kg-filtres .kg-select-trigger:active,
.kg-filtres .kg-select-trigger[aria-expanded="true"] {
    background-color: transparent !important;
    color: #000087 !important;
    box-shadow: none !important;
    border: 0 !important;
}
/* === KG SELECT TRIGGER HOVER FIX END === */

/* === KG NEWS ARCHIVE (ex-Elementor page-settings) START === */
/* Transféré depuis Elementor page-settings (post 2818) le 2026-05-22 14:17 UTC */

/* ═══════════════════════════════════════════════════════════════════════
 * /news/ archive — clone visuel /people/ (body.post-type-archive-kg_avocat)
 * Scope : body.post-type-archive-kg_news + body.tax-kg_news_category
 * Tout est en !important pour battre les per-instance Elementor + kit
 * ═══════════════════════════════════════════════════════════════════════ */

/* ─── Wrapper : aside 25% + content 75%, max-width 1500px (= /people/) */
body.post-type-archive-kg_news .kg-news-archive-wrapper.elementor-section-boxed > .elementor-container,
body.tax-kg_news_category .kg-news-archive-wrapper.elementor-section-boxed > .elementor-container {
	max-width: 1500px !important;
}
body.post-type-archive-kg_news .kg-news-archive-wrapper > .elementor-container > .elementor-col-25,
body.tax-kg_news_category .kg-news-archive-wrapper > .elementor-container > .elementor-col-25 {
	margin-top: -34px !important;
}
body.post-type-archive-kg_news .kg-news-archive-wrapper .elementor-column > .elementor-widget-wrap.elementor-element-populated,
body.tax-kg_news_category .kg-news-archive-wrapper .elementor-column > .elementor-widget-wrap.elementor-element-populated {
	padding-left: 0 !important;
}

/* ─── Heading "NEWS" (h1) — typo /people/ kg-section-heading */
body.post-type-archive-kg_news .kg-news-archive__title .elementor-heading-title,
body.tax-kg_news_category .kg-news-archive__title .elementor-heading-title {
	font-family: "Figtree", sans-serif !important;
	font-size: 36px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	color: #000087 !important;
	letter-spacing: 0 !important;
	line-height: 42px !important;
	margin: 0 0 24px !important;
}

/* ─── Intro (chapeau) */
body.post-type-archive-kg_news .kg-news-archive__intro,
body.tax-kg_news_category .kg-news-archive__intro {
	margin: 0 !important;
}
body.post-type-archive-kg_news .kg-news-archive__intro p,
body.tax-kg_news_category .kg-news-archive__intro p {
	font-family: "Figtree", sans-serif !important;
	font-size: 16px !important;
	line-height: 1.55 !important;
	color: #000087 !important;
	margin: 0 !important;
}

/* ═══════════════════════════════════════════════════════════════════════
 * FILTERS — row 4 cols, inputs/selects border-bottom seul
 * Pattern miroir de /people/ kg-avocats-filter
 * ═══════════════════════════════════════════════════════════════════════ */
body.post-type-archive-kg_news .kg-news-archive__filters > .elementor-container,
body.tax-kg_news_category .kg-news-archive__filters > .elementor-container {
	max-width: none !important;
	gap: 36px !important;
	flex-wrap: wrap !important;
}
body.post-type-archive-kg_news .kg-news-archive__filter-col,
body.tax-kg_news_category .kg-news-archive__filter-col {
	min-width: 0 !important;
}
body.post-type-archive-kg_news .kg-news-archive__filter-col > .elementor-widget-wrap,
body.tax-kg_news_category .kg-news-archive__filter-col > .elementor-widget-wrap {
	padding: 0 !important;
}

/* Label wrapper invisible (juste pour accessibilité a11y) */
body.post-type-archive-kg_news .kg-news-filter-label,
body.tax-kg_news_category .kg-news-filter-label,
body.post-type-archive-kg_event .kg-events-filter-label {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	position: relative !important;
}

/* Input/select communs — border-bottom #000087, transparent, Figtree 14/300 */
body.post-type-archive-kg_news .kg-news-filter,
body.tax-kg_news_category .kg-news-filter,
body.post-type-archive-kg_event .kg-events-filter {
	display: block !important;
	width: 100% !important;
	padding: 8px 10px 8px 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	font-family: "Figtree", sans-serif !important;
	font-size: 14px !important;
	font-weight: 300 !important;
	color: #000087 !important;
	line-height: 21px !important;
	letter-spacing: 1px !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer !important;
	transition: border-color .2s ease !important;
}
body.post-type-archive-kg_news .kg-news-filter::placeholder,
body.tax-kg_news_category .kg-news-filter::placeholder,
body.post-type-archive-kg_event .kg-events-filter::placeholder {
	color: #000087 !important;
	opacity: 1 !important;
}
body.post-type-archive-kg_news .kg-news-filter:focus,
body.tax-kg_news_category .kg-news-filter:focus,
body.post-type-archive-kg_event .kg-events-filter:focus {
	outline: 0 !important;
	border-bottom-color: #000087 !important;
}
body.post-type-archive-kg_news input.kg-news-filter,
body.tax-kg_news_category input.kg-news-filter,
body.post-type-archive-kg_event input.kg-events-filter {
	cursor: text !important;
}

/* Select : chevron customisé (svg inline data URI), keep native appearance
 * pour OS dropdown qui descend normalement */
body.post-type-archive-kg_news select.kg-news-filter,
body.tax-kg_news_category select.kg-news-filter,
body.post-type-archive-kg_event select.kg-events-filter {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23000087' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.6'><polyline points='6 9 12 15 18 9'/></svg>") !important;
	background-repeat: no-repeat !important;
	background-position: right 4px center !important;
	background-size: 14px 14px !important;
	padding-right: 28px !important;
}

/* Loupe icon sur input keyword (= /people/ search icon) */
body.post-type-archive-kg_news input.kg-news-filter--keyword,
body.tax-kg_news_category input.kg-news-filter--keyword,
body.post-type-archive-kg_event input.kg-events-filter--keyword {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23000087' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.25'><circle cx='11' cy='11' r='8'/><path d='m21 21-4.3-4.3'/></svg>") !important;
	background-repeat: no-repeat !important;
	background-position: right 16px center !important;
	background-size: 16px 16px !important;
	padding-right: 28px !important;
}

/* ═══════════════════════════════════════════════════════════════════════
 * GRID news — 3 cols desktop, gap 36/48 (= /people/ kg-avocats-grid)
 * ═══════════════════════════════════════════════════════════════════════ */
body.post-type-archive-kg_news .kg-news-archive-grid-wrap,
body.tax-kg_news_category .kg-news-archive-grid-wrap {
	margin: 0 !important;
}
body.post-type-archive-kg_news .kg-news-archive-grid,
body.tax-kg_news_category .kg-news-archive-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	column-gap: 36px !important;
	row-gap: 48px !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
}
@media (max-width: 900px) {
	body.post-type-archive-kg_news .kg-news-archive-grid,
	body.tax-kg_news_category .kg-news-archive-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 32px 24px !important;
	}
}
@media (max-width: 767px) {
	body.post-type-archive-kg_news .kg-news-archive-grid,
	body.tax-kg_news_category .kg-news-archive-grid {
		grid-template-columns: 1fr !important;
		gap: 28px !important;
	}
}

/* ─── Card (= kg-avocats-card pattern) */
body.post-type-archive-kg_news .kg-news-archive-card,
body.tax-kg_news_category .kg-news-archive-card {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* Meta row : date | langs */
body.post-type-archive-kg_news .kg-news-archive-card__meta,
body.tax-kg_news_category .kg-news-archive-card__meta {
	display: flex !important;
	justify-content: space-between !important;
	align-items: baseline !important;
	margin: 0 0 20px !important;
	padding: 0 0 5px !important;
	border-bottom: 1px solid #000087 !important;
}
body.post-type-archive-kg_news .kg-news-archive-card__date,
body.tax-kg_news_category .kg-news-archive-card__date {
	font-family: "Figtree", sans-serif !important;
	font-size: 12px !important;
	line-height: 22px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	text-transform: uppercase !important;
	color: #000087 !important;
}
body.post-type-archive-kg_news .kg-news-archive-card__langs,
body.tax-kg_news_category .kg-news-archive-card__langs {
	display: flex !important;
	gap: 6px !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	font-family: "Figtree", sans-serif !important;
	font-size: 12px !important;
	line-height: 22px !important;
	font-weight: 400 !important;
	color: #000087 !important;
	letter-spacing: 0 !important;
	text-transform: uppercase !important;
}
body.post-type-archive-kg_news .kg-news-archive-card__lang,
body.tax-kg_news_category .kg-news-archive-card__lang {
	color: #000087 !important;
	font-size: 12px !important;
	line-height: 22px !important;
	font-weight: 400 !important;
	text-decoration: none !important;
	transition: font-weight .2s ease, color .2s ease !important;
}
body.post-type-archive-kg_news .kg-news-archive-card__lang:hover,
body.post-type-archive-kg_news .kg-news-archive-card__lang:focus-visible,
body.tax-kg_news_category .kg-news-archive-card__lang:hover,
body.tax-kg_news_category .kg-news-archive-card__lang:focus-visible {
	color: #000087 !important;
	font-weight: 700 !important;
}
body.post-type-archive-kg_news .kg-news-archive-card__lang.is-active,
body.tax-kg_news_category .kg-news-archive-card__lang.is-active {
	color: #000087 !important;
	font-weight: 700 !important;
}
body.post-type-archive-kg_news .kg-news-archive-card__lang-sep,
body.tax-kg_news_category .kg-news-archive-card__lang-sep {
	color: #000087 !important;
}

/* Link wrapper + Title + Excerpt (= name h3 + role) */
body.post-type-archive-kg_news .kg-news-archive-card__link,
body.tax-kg_news_category .kg-news-archive-card__link {
	display: block !important;
	text-decoration: none !important;
	color: inherit !important;
	transition: opacity .25s ease !important;
}
body.post-type-archive-kg_news .kg-news-archive-card__link:hover,
body.tax-kg_news_category .kg-news-archive-card__link:hover {
	text-decoration: none !important;
	opacity: 0.92 !important;
}
body.post-type-archive-kg_news .kg-news-archive-card__title,
body.tax-kg_news_category .kg-news-archive-card__title {
	font-family: "Figtree", sans-serif !important;
	font-size: 18px !important;
	line-height: 24px !important;
	font-weight: 700 !important;
	color: #000087 !important;
	letter-spacing: 0.005em !important;
	margin: 0 0 8px !important;
}
body.post-type-archive-kg_news .kg-news-archive-card__excerpt,
body.tax-kg_news_category .kg-news-archive-card__excerpt {
	font-family: "Figtree", sans-serif !important;
	font-size: 16px !important;
	line-height: 24px !important;
	font-weight: 400 !important;
	color: rgba(0, 0, 135, 0.8) !important;
	letter-spacing: 0 !important;
	margin: 0 !important;
}

/* No match */
body.post-type-archive-kg_news .kg-news-archive-grid__no-match,
body.tax-kg_news_category .kg-news-archive-grid__no-match {
	grid-column: 1 / -1 !important;
	text-align: center !important;
	padding: 48px 0 !important;
	color: #000087 !important;
	font-family: "Figtree", sans-serif !important;
	font-size: 14px !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
}

/* ═══════════════════════════════════════════════════════════════════════
 * "READ MORE NEWS" button (= kg-avocats-reveal-btn cyan plein)
 * ═══════════════════════════════════════════════════════════════════════ */
body.post-type-archive-kg_news .kg-news-archive-grid__actions,
body.tax-kg_news_category .kg-news-archive-grid__actions {
	display: flex !important;
	justify-content: flex-end !important;
	margin: 32px 0 24px !important;
	width: calc(33.333% - 24px) !important;
	margin-left: auto !important;
}
body.post-type-archive-kg_news .kg-news-archive-grid__more-btn,
body.post-type-archive-kg_news button.kg-news-archive-grid__more-btn,
body.tax-kg_news_category .kg-news-archive-grid__more-btn,
body.tax-kg_news_category button.kg-news-archive-grid__more-btn {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: block !important;
	width: 100% !important;
	background: #00FFFF !important;
	background-color: #00FFFF !important;
	background-image: none !important;
	color: #000087 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 16px 38px !important;
	font-family: "Figtree", sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	text-align: center !important;
	line-height: 1 !important;
	cursor: pointer !important;
	transition: background .2s ease, color .2s ease !important;
}
body.post-type-archive-kg_news .kg-news-archive-grid__more-btn::before,
body.post-type-archive-kg_news .kg-news-archive-grid__more-btn::after,
body.tax-kg_news_category .kg-news-archive-grid__more-btn::before,
body.tax-kg_news_category .kg-news-archive-grid__more-btn::after {
	content: none !important;
	display: none !important;
}
body.post-type-archive-kg_news .kg-news-archive-grid__more-btn:hover,
body.post-type-archive-kg_news .kg-news-archive-grid__more-btn[aria-expanded="true"],
body.tax-kg_news_category .kg-news-archive-grid__more-btn:hover,
body.tax-kg_news_category .kg-news-archive-grid__more-btn[aria-expanded="true"] {
	background: #000087 !important;
	background-color: #000087 !important;
	color: #00FFFF !important;
	text-decoration: none !important;
}
body.post-type-archive-kg_news .kg-news-archive-grid__more-btn:focus-visible,
body.tax-kg_news_category .kg-news-archive-grid__more-btn:focus-visible {
	outline: 2px solid #000087 !important;
	outline-offset: 3px !important;
}

/* ─── Newsletter CTA en bas */
body.post-type-archive-kg_news .kg-news-archive__newsletter,
body.tax-kg_news_category .kg-news-archive__newsletter {
	margin: 80px 0 0 !important;
}

/* ─── Responsive : sur mobile/tablet, reveal-btn full width */
@media (max-width: 900px) {
	body.post-type-archive-kg_news .kg-news-archive-grid__actions,
	body.tax-kg_news_category .kg-news-archive-grid__actions {
		width: 100% !important;
	}
}

/* ─── Padding aside col -34px corrigé pour aller jusque sous le logo
 * comme sur /people/. */
@media (max-width: 1024px) {
	body.post-type-archive-kg_news .kg-news-archive-wrapper .elementor-col-25,
	body.tax-kg_news_category .kg-news-archive-wrapper .elementor-col-25 {
		max-width: 100% !important;
	}
	body.post-type-archive-kg_news .kg-news-archive-wrapper > .elementor-container > .elementor-col-25,
	body.tax-kg_news_category .kg-news-archive-wrapper > .elementor-container > .elementor-col-25 {
		margin-top: 0 !important;
	}
}

/* === KG NEWS GET IN TOUCH START ===
 * Copie verbatim des styles V4 atomic de /people/ (#1253) extraits de
 * /wp-content/uploads/elementor/css/local-1253-frontend-desktop.css :
 *
 *   .e-7371e37-c2fc54e  → outer
 *   .e-591211a-827da85  → inner box
 *   .elementor-element-943b97a  → heading
 *   .elementor-element-caa455e  → text editor
 *   .elementor-element-018823f  → icon-list
 *
 * Les sélecteurs ont juste été ré-écrits sur les classes /news/ archive
 * équivalentes. */

/* OUTER : 75vw, min-height 650px, bg image */
body.post-type-archive-kg_news .kg-news-archive__get-in-touch,
body.tax-kg_news_category .kg-news-archive__get-in-touch {
	width: 75vw !important;
	min-height: 650px !important;
	padding: 0 !important;
	background-image: url("https://kleyrgrasso.knewledge.com/wp-content/uploads/2026/05/kg-get-in-touch-bg-1.jpg") !important;
	background-repeat: no-repeat !important;
	background-attachment: scroll !important;
	background-size: cover !important;
	background-position: 0% 0% !important;
	display: flex !important;
	margin: 80px 0 0 !important;
	max-width: none !important;
}
body.post-type-archive-kg_news .kg-news-archive__get-in-touch > .elementor-container,
body.tax-kg_news_category .kg-news-archive__get-in-touch > .elementor-container {
	max-width: none !important;
	width: 100% !important;
	padding: 0 !important;
}
body.post-type-archive-kg_news .kg-news-archive__get-in-touch > .elementor-container > .elementor-column,
body.tax-kg_news_category .kg-news-archive__get-in-touch > .elementor-container > .elementor-column {
	display: flex !important;
	align-items: flex-start !important;
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: none !important;
}

/* INNER BOX : largeur calc(75vw - 194px) pour fill l'outer après l'offset
 * left, matching le comportement V4 atomic de /people/. */
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-widget-wrap.elementor-element-populated,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-widget-wrap.elementor-element-populated {
	padding-block-start: 86px !important;
	padding-block-end: 92px !important;
	padding-inline-start: 58px !important;
	padding-inline-end: 0 !important;
	margin-block-start: 230px !important;
	margin-block-end: 0 !important;
	margin-inline-start: 194px !important;
	margin-inline-end: 0 !important;
	border-width: 6px !important;
	border-color: #00FFFF !important;
	border-style: solid !important;
	background-color: #0000872a !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	align-self: flex-start !important;
	flex: 1 1 auto !important;
	width: calc(75vw - 194px) !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

/* HEADING "Get in touch" — .elementor-element-943b97a */
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-widget-heading,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-widget-heading {
	width: 100% !important;
	max-width: 100% !important;
	text-align: start !important;
}
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-widget-heading .elementor-heading-title,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-widget-heading .elementor-heading-title {
	font-family: "Figtree", sans-serif !important;
	font-size: 35px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	font-style: normal !important;
	line-height: 32px !important;
	color: #FFFFFF !important;
	margin: 0 0 22px !important;
}

/* TEXT EDITOR — .elementor-element-caa455e */
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-widget-text-editor,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-widget-text-editor {
	color: #FFFFFF !important;
	margin: 0 0 22px !important;
	font-family: "Figtree", sans-serif !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
}
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-widget-text-editor p,
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .kg-people-cta__lead,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-widget-text-editor p,
body.tax-kg_news_category .kg-news-archive__get-in-touch .kg-people-cta__lead {
	color: #FFFFFF !important;
	margin: 0 !important;
}

/* ICON LIST — .elementor-element-018823f */
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-widget-icon-list,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-widget-icon-list {
	--e-icon-list-icon-size: 24px !important;
	--icon-vertical-offset: 0px !important;
}
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-icon-list-icon i,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-icon-list-icon i {
	color: #FFFFFF !important;
	transition: color 0.3s !important;
}
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-icon-list-icon svg,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-icon-list-icon svg {
	fill: #FFFFFF !important;
	transition: fill 0.3s !important;
}
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-icon-list-icon svg path,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-icon-list-icon svg path {
	fill: #FFFFFF !important;
}
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-icon-list-item > .elementor-icon-list-text,
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-icon-list-item > a,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-icon-list-item > .elementor-icon-list-text,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-icon-list-item > a {
	font-family: "Figtree", sans-serif !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	font-style: normal !important;
	line-height: 24px !important;
	color: #FFFFFF !important;
	text-decoration: none !important;
}
body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-icon-list-text,
body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-icon-list-text {
	color: #FFFFFF !important;
}

/* Responsive */
@media (max-width: 900px) {
	body.post-type-archive-kg_news .kg-news-archive__get-in-touch,
	body.tax-kg_news_category .kg-news-archive__get-in-touch {
		width: 100% !important;
		min-height: auto !important;
		background-attachment: scroll !important;
	}
	body.post-type-archive-kg_news .kg-news-archive__get-in-touch .elementor-widget-wrap.elementor-element-populated,
	body.tax-kg_news_category .kg-news-archive__get-in-touch .elementor-widget-wrap.elementor-element-populated {
		padding: 48px 32px !important;
		margin: 80px 16px 40px !important;
		max-width: none !important;
	}
}
/* === KG NEWS GET IN TOUCH END === */
/* === KG NEWS FILTERS ROW START ===
 * Layout 2 rows : Keyword/Expertise + Year/Type/SEARCH.
 * Inputs/selects border-bottom seul, navy blue.
 * Bouton SEARCH cyan plein full width de sa col. */

body.post-type-archive-kg_news .kg-news-archive__filters > .elementor-container,
body.tax-kg_news_category .kg-news-archive__filters > .elementor-container {
	max-width: none !important;
	gap: 50px !important;
	flex-wrap: wrap !important;
}
body.post-type-archive-kg_news .kg-news-archive__filters-row-1,
body.tax-kg_news_category .kg-news-archive__filters-row-1 {
	margin: 0 0 48px !important;
	padding: 0 !important;
}
body.post-type-archive-kg_news .kg-news-archive__filters-row-2,
body.tax-kg_news_category .kg-news-archive__filters-row-2 {
	margin: 0 0 48px !important;
	padding: 0 !important;
}
body.post-type-archive-kg_news .kg-news-archive__filter-col > .elementor-widget-wrap,
body.tax-kg_news_category .kg-news-archive__filter-col > .elementor-widget-wrap {
	padding: 0 !important;
}

/* Responsive : sur mobile, chaque filtre full width */
@media (max-width: 900px) {
	body.post-type-archive-kg_news .kg-news-archive__filter-col,
	body.tax-kg_news_category .kg-news-archive__filter-col {
		width: 100% !important;
		max-width: 100% !important;
		flex-basis: 100% !important;
	}
}
/* === KG NEWS FILTERS ROW END === */
/* === KG NEWS IS-FILTERED HIDE READ MORE START ===
 * Quand le wrapper a la classe `is-filtered` (posée par le JS AJAX dès
 * qu'un filtre est actif), on cache le bouton "Read more news" car
 * la query AJAX retourne déjà TOUTES les news matching. */
body.post-type-archive-kg_news .kg-news-archive-grid-wrap.is-filtered .kg-news-archive-grid__actions,
body.tax-kg_news_category .kg-news-archive-grid-wrap.is-filtered .kg-news-archive-grid__actions {
	display: none !important;
}
/* === KG NEWS IS-FILTERED HIDE READ MORE END === */
/* === KG NEWS ARCHIVE (ex-Elementor page-settings) END === */

/* === KG SELECT TRIGGER TYPO RESET START === */
/* Le `.kg-select-trigger` est un <button> mais sert d'UI form-control
   (remplace visuellement le <select> natif). Il NE doit PAS hériter de
   la typo bouton CTA du kit Elementor 269 :
       .elementor-kit-269 button { text-transform:uppercase; font-weight:700; letter-spacing:2.4px; ... }
   Cette règle réinitialise la typo héritée de `<button>` pour tous les
   dropdowns custom du site. */
button.kg-select-trigger,
.kg-select-trigger {
    text-transform: none !important;
    letter-spacing: normal !important;
    font-weight: 300 !important;
    background-color: transparent !important;
}
/* === KG SELECT TRIGGER TYPO RESET END === */

/* === KG NEWS CARD TYPO RESPONSIVE START === */
/* Tablette + mobile (≤900px) : titre + extrait des cards news plus compacts.
   Spécificité boostée (html body... .grid... .title) pour battre toute règle
   Astra h3 tablette potentielle. */
@media (max-width: 900px) {
    html body.post-type-archive-kg_news .kg-news-archive-grid h3.kg-news-archive-card__title,
    html body.tax-kg_news_category .kg-news-archive-grid h3.kg-news-archive-card__title {
        font-size: 16px !important;
        line-height: 19px !important;
    }
    html body.post-type-archive-kg_news .kg-news-archive-grid .kg-news-archive-card__excerpt,
    html body.tax-kg_news_category .kg-news-archive-grid .kg-news-archive-card__excerpt {
        font-size: 14px !important;
        line-height: 24px !important;
    }
}
/* === KG NEWS CARD TYPO RESPONSIVE END === */

/* === KG NEWS CARD MOBILE TWEAKS START === */
/* Mobile (≤767px) : ajustements card news */
@media (max-width: 767px) {
    /* Espace réduit entre le border du bloc meta et le titre */
    html body.post-type-archive-kg_news .kg-news-archive-card__meta,
    html body.tax-kg_news_category .kg-news-archive-card__meta {
        margin-bottom: 12px !important;
    }
    /* Date : 11px / 18px en mobile */
    html body.post-type-archive-kg_news .kg-news-archive-card__date,
    html body.tax-kg_news_category .kg-news-archive-card__date {
        font-size: 11px !important;
        line-height: 18px !important;
    }
    /* Sélecteur de langue : 12px / 14px (line-height resserré) */
    html body.post-type-archive-kg_news .kg-news-archive-card__lang,
    html body.tax-kg_news_category .kg-news-archive-card__lang,
    html body.post-type-archive-kg_news .kg-news-archive-card__langs,
    html body.tax-kg_news_category .kg-news-archive-card__langs {
        font-size: 12px !important;
        line-height: 14px !important;
    }
    /* Espace réduit entre le titre et l'extrait */
    html body.post-type-archive-kg_news .kg-news-archive-card__title,
    html body.tax-kg_news_category .kg-news-archive-card__title {
        margin-bottom: 4px !important;
    }
}
/* === KG NEWS CARD MOBILE TWEAKS END === */

/* === KG NEWS FILTERS MIRROR START === */
/* Styles génériques des filtres pour l'archive News.
   Mirror des règles `.kg-avocats-filter*` avec les selectors `.kg-news-filter*`.
   La flexbox englobante doit porter la class `.kg-filtres`. */

/* ── Filtres : pas de border (Elementor en ajoute déjà sur la div parente) */
.kg-filtres .kg-news-filter,
.kg-filtres .kg-news-filter--keyword,
.kg-filtres input.kg-news-filter--keyword,
.kg-filtres .kg-events-filter,
.kg-filtres .kg-events-filter--keyword,
.kg-filtres input.kg-events-filter--keyword {
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}
.kg-filtres input.kg-news-filter::placeholder,
.kg-filtres input.kg-events-filter::placeholder {
    color: #000087;
}

/* ── Select : appearance native (puis remplacé par dropdown custom) ──── */
.kg-filtres select.kg-news-filter,
.kg-filtres select.kg-events-filter {
    border: 0 !important;
    cursor: pointer;
}

/* ── Icône loupe + padding aligné sur les 3 dropdowns (= .kg-select-trigger) */
.kg-filtres input.kg-news-filter--keyword,
.kg-filtres input.kg-events-filter--keyword {
    padding-left: 16px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23000087' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.25'><circle cx='11' cy='11' r='8'/><path d='m21 21-4.3-4.3'/></svg>");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 14px 14px;
}

/* ── Dropdown custom : masquer les <select> news natifs (gardés pour la
       sync de valeur et la compat avec le JS de filtrage) ──────────────── */
.kg-filtres .kg-select-wrap select.kg-news-filter--expertise,
.kg-filtres .kg-select-wrap select.kg-news-filter--year,
.kg-filtres .kg-select-wrap select.kg-news-filter--category,
.kg-filtres .kg-select-wrap select.kg-events-filter--expertise {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    border: 0 !important;
    pointer-events: none !important;
}

/* ── Strip widgets Elementor englobant les filtres news (pas de padding) */
.kg-filtres .elementor-widget:has(.kg-news-filter-label),
.kg-filtres .elementor-widget:has(.kg-news-filter-label) > .elementor-widget-container,
.kg-filtres .elementor-widget:has(.kg-events-filter-label),
.kg-filtres .elementor-widget:has(.kg-events-filter-label) > .elementor-widget-container {
    padding: 0 !important;
}

/* ── Mobile : 10px entre titre du select et border-bottom ────────────── */
@media (max-width: 767px) {
    .kg-filtres .elementor-widget-container:has(.kg-news-filter-label--expertise),
    .kg-filtres .elementor-widget-container:has(.kg-news-filter-label--year),
    .kg-filtres .elementor-widget-container:has(.kg-news-filter-label--category),
    .kg-filtres .elementor-widget-container:has(.kg-events-filter-label--expertise) {
        padding-bottom: 10px !important;
    }
}

/* ── Year + Category + Expertise (en mobile) : forcer min-height ET
       désactiver le stretch flex, sinon le widget remplit la row avec son
       trigger de 31px coincé en haut → gap au-dessus du border-bottom.
       Expertise n'a besoin de ce fix qu'en mobile (1-col) car au-dessus
       il est dans la même row que Keyword qui tire la hauteur. ─────── */
.kg-filtres .elementor-widget:has(.kg-news-filter-label--year),
.kg-filtres .elementor-widget:has(.kg-news-filter-label--category),
.kg-filtres .elementor-widget:has(.kg-events-filter-label--expertise) {
    min-height: 41px !important;
    align-self: flex-start !important;
}
.kg-filtres .elementor-widget:has(.kg-news-filter-label--year) > .elementor-widget-container,
.kg-filtres .elementor-widget:has(.kg-news-filter-label--category) > .elementor-widget-container,
.kg-filtres .elementor-widget:has(.kg-events-filter-label--expertise) > .elementor-widget-container {
    height: auto !important;
    min-height: 41px !important;
}
@media (max-width: 767px) {
    .kg-filtres .elementor-widget:has(.kg-news-filter-label--expertise),
    .kg-filtres .elementor-widget:has(.kg-events-filter-label--expertise) {
        min-height: 41px !important;
        align-self: flex-start !important;
    }
    .kg-filtres .elementor-widget:has(.kg-news-filter-label--expertise) > .elementor-widget-container,
    .kg-filtres .elementor-widget:has(.kg-events-filter-label--expertise) > .elementor-widget-container {
        height: auto !important;
        min-height: 41px !important;
    }
}

/* ── Même fix pour la page People (filters Expertise + Title) en
       tablette et mobile (≤1024px) : sans le Name input qui tire la
       hauteur, les triggers collent au border-bottom. ─────────────── */
@media (max-width: 1024px) {
    .kg-filtres .elementor-widget:has(.kg-avocats-filter-label--expertise),
    .kg-filtres .elementor-widget:has(.kg-avocats-filter-label--title) {
        min-height: 41px !important;
        align-self: flex-start !important;
    }
    .kg-filtres .elementor-widget:has(.kg-avocats-filter-label--expertise) > .elementor-widget-container,
    .kg-filtres .elementor-widget:has(.kg-avocats-filter-label--title) > .elementor-widget-container {
        height: auto !important;
        min-height: 41px !important;
    }
}

/* ── Dropdowns "Category" + "Year" : items en majuscules ─────────────── */
.kg-filtres .kg-select-wrap:has(select.kg-news-filter--category) .kg-select-option,
.kg-filtres .kg-select-wrap:has(select.kg-news-filter--year) .kg-select-option {
    text-transform: uppercase;
}

/* ── Dropdown "Expertise" : 1er item ("All expertises") en maj uniquement */
.kg-filtres .kg-select-wrap:has(select.kg-news-filter--expertise) .kg-select-option:first-child,
.kg-filtres .kg-select-wrap:has(select.kg-events-filter--expertise) .kg-select-option:first-child {
    text-transform: uppercase;
}
/* === KG NEWS FILTERS MIRROR END === */

/* === KG SCROLLBAR CUSTOM START === */
/* Scrollbar globale : visible en permanence, bleu principal,
   gris au hover. WebKit (Chrome/Safari/Edge) + Firefox. */

/* Firefox */
html {
    scrollbar-color: #000087 transparent;
    scrollbar-width: thin;
}

/* WebKit (Chrome, Safari, Edge moderne) */
html::-webkit-scrollbar,
body::-webkit-scrollbar {
    width: 10px;
    height: 10px;
    background: transparent;
}
html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track {
    background: transparent;
}
html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb {
    background-color: #000087;
    border-radius: 0;
    transition: background-color 0.2s ease;
}
html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover {
    background-color: #6e6fb7;
}

/* Force la scrollbar à rester visible sur macOS / iOS WebKit
   (par défaut elle disparaît après inactivité) */
html {
    overflow-y: scroll;
}
/* === KG SCROLLBAR CUSTOM END === */

/* === KG SINGLE EXPERTISE (ex-Elementor page-settings) START === */
/* Transféré depuis Elementor page-settings (post 2843 — Single Expertise — KG)
   le 2026-05-26 08:35 UTC */

/* ═════════════════════════════════════════════════════════════════════
 * Single kg_practice (Expertise / Network) — clone visuel /news/ + /people/
 * Scope : body.single-kg_practice (toutes les pages expertise/network)
 * ═════════════════════════════════════════════════════════════════════ */

/* Wrapper outer : aside 25% + content 75%, max-width 1500px */
body.single-kg_practice .kg-expertise-wrapper.elementor-section-boxed > .elementor-container,
body.single-kg_practice .kg-network-wrapper.elementor-section-boxed > .elementor-container {
	max-width: 1500px !important;
}
body.single-kg_practice .kg-expertise-wrapper > .elementor-container > .elementor-col-25,
body.single-kg_practice .kg-network-wrapper > .elementor-container > .elementor-col-25 {
	margin-top: -34px !important;
}
body.single-kg_practice .kg-expertise-wrapper .elementor-column > .elementor-widget-wrap.elementor-element-populated,
body.single-kg_practice .kg-network-wrapper .elementor-column > .elementor-widget-wrap.elementor-element-populated {
	padding-left: 0 !important;
}

/* Intro HTML — texte propre, navy blue */
body.single-kg_practice .kg-expertise__intro,
body.single-kg_practice .kg-network__intro {
	margin: 0 0 50px !important;
}
body.single-kg_practice .kg-expertise__intro p,
body.single-kg_practice .kg-expertise__intro li,
body.single-kg_practice .kg-network__intro p,
body.single-kg_practice .kg-network__intro li {
	font-family: "Figtree", sans-serif !important;
	font-size: 16px !important;
	line-height: 1.55 !important;
	color: #000087 !important;
	margin: 0 0 14px !important;
}
body.single-kg_practice .kg-expertise__intro strong,
body.single-kg_practice .kg-network__intro strong { font-weight: 700 !important; }
body.single-kg_practice .kg-expertise__intro h2,
body.single-kg_practice .kg-expertise__intro h3,
body.single-kg_practice .kg-network__intro h2,
body.single-kg_practice .kg-network__intro h3 {
	font-family: "Figtree", sans-serif !important;
	font-weight: 700 !important;
	color: #000087 !important;
	margin: 24px 0 12px !important;
}
body.single-kg_practice .kg-expertise__intro h2,
body.single-kg_practice .kg-network__intro h2 { font-size: 22px !important; }
body.single-kg_practice .kg-expertise__intro h3,
body.single-kg_practice .kg-network__intro h3 { font-size: 18px !important; }

/* Avocats grid en bas */
body.single-kg_practice .kg-expertise__avocats-grid,
body.single-kg_practice .kg-network__avocats-grid {
	margin-top: 50px !important;
}

@media (max-width: 1024px) {
	body.single-kg_practice .kg-expertise-wrapper .elementor-col-25,
	body.single-kg_practice .kg-network-wrapper .elementor-col-25 {
		max-width: 100% !important;
	}
	body.single-kg_practice .kg-expertise-wrapper > .elementor-container > .elementor-col-25,
	body.single-kg_practice .kg-network-wrapper > .elementor-container > .elementor-col-25 {
		margin-top: 0 !important;
	}
}

/* === KG EXPERTISE BASE STYLES START === */
/* Custom CSS de base — overridable via les Style controls de chaque widget
   Elementor OU via ce Custom CSS lui-même. Classes alignées avec /news/ et
   /people/ pour que les règles soient cohérentes sur tout le site. */

/* FAQ (unique à expertise — pas d'analog /news/ ou /people/) */
.kg-expertise-faq__heading {
	font-family: "Figtree", sans-serif;
	font-size: 24px;
	font-weight: 700;
	color: #000087;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
.kg-expertise-faq__item {
	border-bottom: 1px solid rgba(0,0,135,0.12);
}
.kg-expertise-faq__item:first-child {
	border-top: 1px solid rgba(0,0,135,0.12);
}
.kg-expertise-faq__question,
.kg-expertise-faq__question-text {
	font-family: "Figtree", sans-serif;
	font-size: 15px;
	font-weight: 600;
	color: #000087;
}
.kg-expertise-faq__chevron {
	font-size: 22px;
	color: #000087;
}
.kg-expertise-faq__answer,
.kg-expertise-faq__answer p {
	font-family: "Figtree", sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: #000087;
}
.kg-expertise-faq__answer p {
	margin: 0 0 12px;
}

/* Related sections headings (générique reuse from related-news/events/recognitions widgets) */
.kg-elementor-news__heading {
	font-family: "Figtree", sans-serif;
	font-size: 24px;
	font-weight: 700;
	color: #000087;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

/* Related news/events meta (mêmes classes que /people/) */
.kg-avocat-related-news__meta,
.kg-avocat-related-event__meta,
.kg-events-upcoming-card__meta,
body.post-type-archive-kg_event .kg-events-archive-card__meta,
.kg-event-related__meta {
	font-family: "Figtree", sans-serif;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #6e6fb7;
}.kg-avocat-related-news__title-item,
.kg-avocat-related-event__title,
.kg-events-upcoming-card__title,
body.post-type-archive-kg_event .kg-events-archive-card__title,
.kg-event-related__title {
	font-family: "Figtree", sans-serif;
	font-weight: 700;
	color: #000087;
}

/* === KG EXPERTISE BASE STYLES END === */

/* === KG EXPERTISE NEWS-ALIGNED START === */
/* Mêmes selectors qu'/news/ pour title + intro → réutilisation directe du
   look /news/. Les Style controls de chaque widget overrident via {{WRAPPER}}. */

.kg-news__title {
	font-family: "Figtree", sans-serif;
	font-size: clamp(32px, 4vw, 56px);
	font-weight: 700;
	color: #000087;
	line-height: 1.1;
	letter-spacing: -0.01em;
	margin: 0 0 24px;
}
.kg-news__introduction {
	font-family: "Figtree", sans-serif;
	font-size: 18px;
	line-height: 1.6;
	color: #000087;
	margin: 0 0 32px;
}
.kg-news__introduction p {
	margin: 0 0 16px;
}
.kg-news__introduction p:last-child {
	margin-bottom: 0;
}
/* === KG EXPERTISE NEWS-ALIGNED END === */

/* === KG SINGLE EXPERTISE (ex-Elementor page-settings) END === */

/* === KG ELEMENTOR H1 KIT FALLBACK START === */
/* Astra reset (`h1{font-weight:inherit;line-height:1.2}`) écrase la typo H1
   du kit Elementor. On force la typo H1 du kit sur les heading widgets
   <h1>, avec spécificité (0,2,1) qui bat Astra (0,0,1) et l'éventuel
   `.elementor-kit-269 h1` (0,1,1). */
.elementor-widget-heading h1.elementor-heading-title {
    font-family: Figtree, sans-serif !important;
    font-weight: 700 !important;
    line-height: 42px !important;
}
/* === KG ELEMENTOR H1 KIT FALLBACK END === */

/* === KG NAV CONTAINER DIRECTION START === */
/* Le container du widget KG-Nav (logo + nav menu) doit être en colonne :
   logo au-dessus, nav en-dessous, chacun à la largeur complète du container.
   Le global class `g-823334f` ("kg-nav") définit `flex-direction: column`
   mais n'est pas toujours appliqué (rendu DOM : `kg-nav` au lieu de `g-XXX`).
   On force ici sur les 2 selectors possibles. */
.elementor-element.kg-nav,
.e-con.kg-nav,
.elementor-element[class*="e-5018b8c0"] {
    flex-direction: column !important;
    align-items: flex-start !important;
}
/* === KG NAV CONTAINER DIRECTION END === */

/* === KG NO CLICK OUTLINE START === */
/* Retire l'encadré pointillé du navigateur au clic sur tout élément
   interactif (liens, boutons, inputs…). On garde `:focus-visible` pour
   les utilisateurs au clavier (Tab) — l'outline n'apparaît qu'au tab,
   plus au clic souris. */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
input:focus:not(:focus-visible),
textarea:focus:not(:focus-visible),
select:focus:not(:focus-visible),
[role="button"]:focus:not(:focus-visible),
summary:focus:not(:focus-visible),
.elementor-button:focus:not(:focus-visible) {
    outline: none !important;
    box-shadow: none !important;
}
/* === KG NO CLICK OUTLINE END === */

/* === KG EXPERTISE FAQ ACTIVE LABEL START === */
/* Single Expertise (FAQ accordion) : intitulé en weight 600 quand l'item
   est actif (ouvert). Scopé à .kg-expertise-faq pour ne pas affecter les
   accordions du Single Avocat. */
.kg-expertise-faq .kg-avocat-accordion__item[open] .kg-avocat-accordion__label {
    font-weight: 600 !important;
}
/* === KG EXPERTISE FAQ ACTIVE LABEL END === */

/* === KG TESTIMONIAL HANGING QUOTE START === */
/* Guillemet d'ouverture suspendu : le « sort à gauche (position absolute),
   le texte du <p> est indenté pour que chaque ligne soit alignée à droite
   du guillemet. Partagé Single Avocat + Single Expertise. */
.kg-avocat-testimonial__quote {
    position: relative;
    padding-left: 0.62em;
}
.kg-avocat-testimonial__quote-open {
    position: absolute;
    left: 0;
    top: 0;
}
/* === KG TESTIMONIAL HANGING QUOTE END === */

/* === KG RELATED NEWS REVEAL BTN ONE COL START === */
/* Bouton "Read more news" : largeur d'UNE colonne, aligné dernière colonne.
   Breakpoints Elementor (tablette ≤1024, mobile ≤767), col-gap 32px.
   Unifié Single Avocat + Single Expertise. */
.kg-avocat-related-news-wrap .kg-avocat-reveal-btn {
    box-sizing: border-box;
    width: calc((100% - 64px) / 3);   /* 3 cols, col-gap 32px */
    text-align: center;
}
@media (max-width: 1024px) {
    .kg-avocat-related-news-wrap .kg-avocat-reveal-btn {
        width: calc((100% - 32px) / 2); /* 2 cols, col-gap 32px */
    }
}
@media (max-width: 767px) {
    .kg-avocat-related-news-wrap .kg-avocat-reveal-btn {
        width: 100%;                    /* 1 col */
    }
}
/* === KG RELATED NEWS REVEAL BTN ONE COL END === */

/* === KG RELATED EVENTS REVEAL BTN ONE COL START === */
/* Bouton "Read more events" : largeur d'UNE colonne, aligné dernière colonne.
   Gaps : desktop 36px (3 cols), tablette 24px (2 cols), mobile 1 col.
   Unifié Single Avocat + Single Expertise. */
/* La grille events utilise les breakpoints Elementor (tablette ≤1024,
   mobile ≤767) via les controls responsive du widget, et un col-gap fixe
   de 36px. On cale donc le bouton sur ces mêmes valeurs. */
.kg-avocat-related-events-wrap .kg-avocat-reveal-btn,
.kg-events-upcoming-list-wrap .kg-avocat-reveal-btn,
.kg-events-archive-grid-wrap .kg-avocat-reveal-btn,
.kg-event-related .kg-avocat-reveal-btn {
    box-sizing: border-box;
    width: calc((100% - 72px) / 3);   /* 3 cols, col-gap 36px */
    text-align: center;
}
@media (max-width: 1024px) {
.kg-avocat-related-events-wrap .kg-avocat-reveal-btn,
.kg-events-upcoming-list-wrap .kg-avocat-reveal-btn,
.kg-events-archive-grid-wrap .kg-avocat-reveal-btn,
.kg-event-related .kg-avocat-reveal-btn {
        width: calc((100% - 36px) / 2); /* 2 cols, col-gap 36px */
    }
}
@media (max-width: 767px) {
.kg-avocat-related-events-wrap .kg-avocat-reveal-btn,
.kg-events-upcoming-list-wrap .kg-avocat-reveal-btn,
.kg-events-archive-grid-wrap .kg-avocat-reveal-btn,
.kg-event-related .kg-avocat-reveal-btn {
        width: 100%;                    /* 1 col */
    }
}
/* === KG RELATED EVENTS REVEAL BTN ONE COL END === */

/* === KG NAV CLICK SUBMENU START === */
/* Sous-menus Elementor Nav (layout vertical) : ouverture au CLIC,
   en flow normal (push les items suivants vers le bas). */

.elementor-nav-menu .menu-item-has-children > .sub-menu {
    position: static !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    block-size: 0;
    overflow: clip;
    opacity: 0;
    margin: 0 !important;
    padding: 0 !important;
    interpolate-size: allow-keywords;
    transition:
        block-size 0.9s cubic-bezier(0.4, 0, 0.2, 1),
        opacity 0.9s ease;
}
.elementor-nav-menu .menu-item-has-children.kg-submenu-open > .sub-menu {
    block-size: auto;
    opacity: 1;
}
.elementor-nav-menu .menu-item-has-children:hover > .sub-menu {
    block-size: 0;
    opacity: 0;
}
.elementor-nav-menu .menu-item-has-children.kg-submenu-open:hover > .sub-menu {
    block-size: auto;
    opacity: 1;
}

.elementor-nav-menu .menu-item-has-children > a {
    cursor: pointer;
}

/* Chevron : masque le svg Elementor (fa-chevron-right épais) et dessine
   un chevron fin en CSS via border (2 traits en angle droit + rotate). */
.elementor-nav-menu .menu-item-has-children > a .sub-arrow > svg {
    display: none !important;
}
.elementor-nav-menu .menu-item-has-children > a .sub-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    margin-left: 2px;
    vertical-align: middle;
    line-height: 0;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23000087' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='9 6 15 12 9 18'/></svg>");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: transform 0.3s ease;
}
/* Ouvert : rotation 90deg → chevron pointe vers le bas */
.elementor-nav-menu .menu-item-has-children.kg-submenu-open > a .sub-arrow {
    transform: rotate(90deg);
}

/* Border-top + border-bottom sur le <ul.sub-menu> quand ouvert :
   trait au-dessus du premier sub-item ET en-dessous du dernier. */
.elementor-nav-menu .menu-item-has-children.kg-submenu-open > .sub-menu {
    border-top: 1px solid #000087 !important;
    border-bottom: 1px solid #000087 !important;
}

/* ─── Sub-menu items : typo + indent + espacement ──────────────────── */
.elementor-nav-menu .sub-menu > li > a {
    position: relative;
    padding-left: 15px !important;  /* texte décalé de 15px du parent (= largeur de la barre hover) */
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    font-family: Figtree, sans-serif !important;
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 300 !important;
    color: #000087 !important;
    background: transparent !important;
    text-transform: uppercase !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
    transition: font-weight 0.6s ease, color 0.6s ease !important;
}

/* Barre `::before` au hover/active : 15x3 cyan, collée à gauche
   (aligné avec les items parents) et à droite contre le sub-item text.
   Verticalement alignée avec le bas du texte (baseline + padding-bottom). */
.elementor-nav-menu .sub-menu > li > a::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 6px;        /* ≈ baseline du texte (padding-bottom 5 + 1px ajustement) */
    width: 15px;
    height: 3px;
    background-color: #00FFFF;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}
.elementor-nav-menu .sub-menu > li > a:hover::before,
.elementor-nav-menu .sub-menu > li > a:focus-visible::before {
    opacity: 1;
}

/* Hover + focus uniquement (PAS .current-menu-item) : weight 800, pas de bg, pas d'underline */
.elementor-nav-menu .sub-menu > li > a:hover,
.elementor-nav-menu .sub-menu > li > a:focus-visible {
    background: transparent !important;
    background-color: transparent !important;
    color: #000087 !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
}
/* Active / current-menu-item : on garde les styles normaux (pas de différence visuelle) */
.elementor-nav-menu .sub-menu > li > a:active,
.elementor-nav-menu .sub-menu > li.current-menu-item > a,
.elementor-nav-menu .sub-menu > li.current-menu-ancestor > a {
    background: transparent !important;
    background-color: transparent !important;
    color: #000087 !important;
    font-weight: 300 !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
}
/* === KG NAV CLICK SUBMENU END === */

/* === KG RELATED CARD DATE FONT FIX START === */
/* La date <time> est enfant direct du <a class="...__link"> qui hérite
   de .elementor-kit-269 a { font-size:16px }. Sans font-size direct sur
   __date, on hérite 16px. On force 12px + line-height 22px en cohérence
   avec __meta. !important pour battre la cascade Elementor Kit. */
.kg-avocat-related-event__date,
.kg-avocat-related-news__date,
.kg-events-upcoming-card__date,
body.post-type-archive-kg_event .kg-events-archive-card__date,
.kg-event-related__date {
    font-size: 12px !important;
    line-height: 22px !important;
}
/* === KG RELATED CARD DATE FONT FIX END === */

/* === KG RELATED CARD STRETCHED LINK OVERLAY START === */
/* Le <a class="__link"> est désormais vide et positionné absolute par-dessus
   toute la card pour éviter linvalide HTML5 <a> dans <a> causé par le

/* === KG RELATED CARD STRETCHED LINK OVERLAY START === */
/* Le <a class="__link"> est desormais vide et positionne absolute par-dessus
   toute la card pour eviter l invalide HTML5 a-dans-a cause par le
   lang switcher. Le switcher z-index superieur reste cliquable. */
.kg-avocat-related-event,
.kg-avocat-related-news__item,
.kg-events-upcoming-card,
body.post-type-archive-kg_event .kg-events-archive-card,
.kg-event-related__item {
    position: relative;
}.kg-avocat-related-event__link,
.kg-avocat-related-news__link,
.kg-events-upcoming-card__link,
body.post-type-archive-kg_event .kg-events-archive-card__link,
.kg-event-related__link {
    position: absolute;
    inset: 0;
    z-index: 1;
    text-indent: -9999px;
    overflow: hidden;
}.kg-avocat-related-event__meta .kg-news-langs,
.kg-avocat-related-news__meta .kg-news-langs,
.kg-events-upcoming-card__meta .kg-news-langs,
body.post-type-archive-kg_event .kg-events-archive-card__meta .kg-news-langs,
.kg-event-related__meta .kg-news-langs {
    position: relative;
    z-index: 2;
}.kg-avocat-related-event__img,
.kg-avocat-related-event__text,
.kg-avocat-related-news__img,
.kg-avocat-related-news__text,
.kg-events-upcoming-card__img,
.kg-events-upcoming-card__body,
body.post-type-archive-kg_event .kg-events-archive-card__img,
body.post-type-archive-kg_event .kg-events-archive-card__body,
.kg-event-related__img,
.kg-event-related__body {
    position: relative;
    z-index: 0;
    pointer-events: none;
}.kg-avocat-related-event__meta .kg-news-langs,
.kg-avocat-related-news__meta .kg-news-langs,
.kg-avocat-related-event__meta .kg-news-langs *,
.kg-avocat-related-news__meta .kg-news-langs *,
.kg-events-upcoming-card__meta .kg-news-langs,
.kg-events-upcoming-card__meta .kg-news-langs *,
body.post-type-archive-kg_event .kg-events-archive-card__meta .kg-news-langs,
body.post-type-archive-kg_event .kg-events-archive-card__meta .kg-news-langs *,
.kg-event-related__meta .kg-news-langs,
.kg-event-related__meta .kg-news-langs * {
    pointer-events: auto;
}.kg-avocat-related-event:has(.kg-avocat-related-event__link:hover) .kg-avocat-related-event__title,
.kg-avocat-related-news__item:has(.kg-avocat-related-news__link:hover) .kg-avocat-related-news__title-item,
.kg-events-upcoming-card:has(.kg-events-upcoming-card__link:hover) .kg-events-upcoming-card__title,
body.post-type-archive-kg_event .kg-events-archive-card:has(.kg-events-archive-card__link:hover) .kg-events-archive-card__title,
.kg-event-related__item:has(.kg-event-related__link:hover) .kg-event-related__title {
    color: #00006b;
}.kg-avocat-related-event:has(.kg-avocat-related-event__link:hover) .kg-avocat-related-event__img img,
.kg-avocat-related-news__item:has(.kg-avocat-related-news__link:hover) .kg-avocat-related-news__img img,
.kg-events-upcoming-card:has(.kg-events-upcoming-card__link:hover) .kg-events-upcoming-card__img img,
body.post-type-archive-kg_event .kg-events-archive-card:has(.kg-events-archive-card__link:hover) .kg-events-archive-card__img img,
.kg-event-related__item:has(.kg-event-related__link:hover) .kg-event-related__img img {
    transform: none;
}
/* === KG RELATED CARD STRETCHED LINK OVERLAY END === */

/* === KG GLOBAL CONTENT LIST CHEVRON START === */
/* Puce chevron ">" sur les <ul> de contenu (même style que Single News),
   appliqué sur tout le site dans les zones rédactionnelles. */
.elementor-widget-text-editor ul,
.elementor-widget-theme-post-content ul,
.entry-content ul,
.kg-news-body ul,
.kg-news__introduction ul {
    list-style: none !important;
    margin-left: 20px !important;
    padding-left: 18px !important;
}
.elementor-widget-text-editor ul > li,
.elementor-widget-theme-post-content ul > li,
.entry-content ul > li,
.kg-news-body ul > li,
.kg-news__introduction ul > li {
    position: relative;
    list-style: none !important;
}
.elementor-widget-text-editor ul > li::before,
.elementor-widget-theme-post-content ul > li::before,
.entry-content ul > li::before,
.kg-news-body ul > li::before,
.kg-news__introduction ul > li::before {
    content: ">";
    position: absolute;
    left: -18px;
    color: inherit;
}
/* === KG GLOBAL CONTENT LIST CHEVRON END === */

/* === KG LAST TESTIMONIAL NO BOTTOM MARGIN START === */
.kg-avocat-testimonials .kg-avocat-testimonial:last-child {
	margin-bottom: 0 !important;
}
.kg-hero__bio p:last-child {
	margin-bottom: 0 !important;
}
/* === KG LAST TESTIMONIAL NO BOTTOM MARGIN END === */

/* === KG CONTACT MAP FULL WIDTH START === */
.kg-contact-map {
	display: block !important;
	grid-template-columns: none !important;
	width: 100% !important;
	margin: 0 !important;
}
.kg-contact-map__image-link,
.kg-contact-map__iframe-wrap {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
}
.kg-contact-map__image {
	display: block;
	width: 100%;
	height: auto;
}
.kg-contact-map__iframe {
	display: block;
	width: 100%;
	border: 0;
}
/* === KG CONTACT MAP FULL WIDTH END === */

/* === KG BUNDLED SECTION CHROME START === */
/* Headings et séparateurs sont désormais rendus par les widgets Expertise
   (faq / recognitions / related-news / related-events) eux-mêmes. Styles
   uniformes ici. */
.kg-expertise-faq__heading,
.kg-expertise-recognitions__heading,
.kg-expertise-related-news__heading,
.kg-expertise-related-events__heading,
.kg-avocat-recognitions__heading,
.kg-avocat-related-news__heading,
.kg-avocat-related-events__heading,
.kg-events-upcoming-list__heading,
.kg-events-archive-grid__heading,
.kg-event-related__list__heading {
	font-family: "Figtree", sans-serif;
	font-size: 24px;
	font-weight: 700;
	color: #000087;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-top: 0;
	margin-bottom: 50px; /* gap title → content (default) */
	line-height: 1.2;
}
.kg-expertise-recognitions__heading,
.kg-avocat-recognitions__heading {
	margin-bottom: 20px; /* override Recognitions */
}

.kg-section-separator {
	border: 0 !important;
	border-top: 3px solid #00FFFF !important;
	margin-top: 100px !important;   /* gap content → separator (desktop) */
	margin-bottom: 0 !important;
	width: 100vw !important;
	display: block !important;
}
/* Responsive : sur Single Avocat, gap réduit en tablette et mobile */
@media (max-width: 1024px) {
	body.single-kg_avocat .kg-section-separator,
	body.single-kg_practice .kg-section-separator,
	body.single-kg_network .kg-section-separator {
		margin-top: 50px !important;
	}
}
/* Masque les e-con devenus vides après suppression naturelle d'un widget
   Expertise sans contenu. Scope = parents contenant déjà un widget knkg-expertise
   (pour ne pas affecter les e-con vides intentionnels du header/layout). */
.e-con:has([class*="elementor-widget-knkg-expertise-"]) > .e-con:not(:has(*)),
.e-con:has([class*="elementor-widget-knkg-avocat-"]) > .e-con:not(:has(*)) {
	display: none !important;
}

/* Masque le séparateur du DERNIER widget Expertise sur la page. Les widgets
   sont siblings au même niveau de containers — on cible le e-con qui wrappe
   directement un widget knkg-expertise-* ET qui n'a aucun sibling e-con
   suivant wrappant un autre widget knkg-expertise-*. */
.e-con:has(> [class*="elementor-widget-knkg-expertise-"]):not(:has(~ .e-con > [class*="elementor-widget-knkg-expertise-"])) .kg-section-separator,
.e-con:has(> [class*="elementor-widget-knkg-avocat-accordion"], > [class*="elementor-widget-knkg-avocat-recognitions"], > [class*="elementor-widget-knkg-avocat-related-"]):not(:has(~ .e-con > [class*="elementor-widget-knkg-avocat-accordion"], ~ .e-con > [class*="elementor-widget-knkg-avocat-recognitions"], ~ .e-con > [class*="elementor-widget-knkg-avocat-related-"])) .kg-section-separator {
	display: none !important;
}
body { overflow-x: clip; }

/* Divider standalone (Elementor divider widget) après testimonials :
   même rendu full-bleed que les .kg-section-separator bundlés. */
.kg-section-separator-standalone {
	margin-right: calc(50% - 50vw) !important;
	width: auto !important;
	max-width: none !important;
}
.kg-section-separator-standalone .elementor-divider,
.kg-section-separator-standalone .elementor-divider-separator {
	width: 100% !important;
	max-width: none !important;
}
.kg-section-separator-standalone .elementor-divider-separator {
	border-top-color: #00FFFF !important;
	border-top-width: 3px !important;
}
/* === KG BUNDLED SECTION CHROME END === */

/* === KG CONTACT BLOCK WIDGET START === */
.kg-contact-block {
	display: flex;
	flex-direction: column;
}
.kg-contact-block__row {
	display: flex;
	align-items: flex-start;
}
.kg-contact-block__icon-wrap {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	line-height: 1;
	transform: translateY(2px); /* décale l'icône vers le bas pour alignement optique avec la baseline du texte */
}
/* Le SVG inline output par Elementor n'a pas notre classe — on le force à
   remplir le wrap (taille pilotée par le widget) et hériter de la couleur. */
.kg-contact-block__icon-wrap svg {
	display: block;
	width: 100%;
	height: 100%;
	fill: currentColor;
}
.kg-contact-block__icon-wrap svg * {
	fill: inherit;
}
.kg-contact-block__icon-wrap i {
	display: block;
	font-size: inherit;
	line-height: 1;
}
.kg-contact-block__text { flex: 1 1 auto; }
/* Espace supplémentaire entre la boîte postale et le téléphone */
.kg-contact-block__row--po-box {
	margin-bottom: 16px;
}
.kg-contact-block__text address { font-style: normal; }
/* Liens visuellement identiques au texte normal (pas d'underline ni de
   changement de couleur au hover). */
.kg-contact-block__text a,
.kg-contact-block__text a:visited {
	color: inherit;
	text-decoration: none;
	border: 0;
	background: transparent;
	font: inherit;
	font-weight: inherit;
	font-size: inherit;
	font-family: inherit;
	line-height: inherit;
	letter-spacing: inherit;
}
.kg-contact-block__text a:hover,
.kg-contact-block__text a:focus {
	text-decoration: underline;
}
/* === KG CONTACT BLOCK WIDGET END === */

/* === KG PEOPLE CTA CONTACT UNIFORM START === */
/* Bloc « Get in touch » (widget icon-list partagé entre Contact, People
   Archive, etc.) : styles unifiés. Cible via la classe `kg-people-cta__contact`
   posée comme _css_classes sur le widget pour fonctionner sur toute page. */
.kg-people-cta__contact a,
.kg-people-cta__contact a:visited,
.kg-people-cta__contact a:hover,
.kg-people-cta__contact a:focus,
.kg-people-cta__contact a:focus-visible,
.kg-people-cta__contact a:active {
	text-decoration: none !important;
	border: 0 !important;
	background: transparent !important;
}
/* === KG PEOPLE CTA CONTACT UNIFORM END === */

/* === KG NAV BREAKPOINT FORCE START === */
/* Boundary unique à 768 : couvre tous les sub-pixels via .98 pour éviter
   l'overlap d'1px où hamburger + menu coexistent. */
@media (min-width: 767.01px) {
	.elementor-element-5030df83 .elementor-menu-toggle,
	.elementor-nav-menu--dropdown-mobile .elementor-menu-toggle {
		display: none !important;
	}
	.elementor-element-5030df83 .elementor-nav-menu--main,
	.elementor-nav-menu--dropdown-mobile .elementor-nav-menu--main {
		display: flex !important;
	}
}
@media (max-width: 767px) {
	.elementor-element-5030df83 .elementor-menu-toggle,
	.elementor-nav-menu--dropdown-mobile .elementor-menu-toggle {
		display: flex !important;
	}
	.elementor-element-5030df83 .elementor-nav-menu--main,
	.elementor-nav-menu--dropdown-mobile .elementor-nav-menu--main {
		display: none !important;
	}
}
/* === KG NAV BREAKPOINT FORCE END === */

/* === KG BURGER RIGHT ALIGN START === */
/* Burger collé à droite du container parent en mobile (≤767). */
@media (max-width: 767px) {
	.elementor-element-5030df83 {
		display: flex !important;
		justify-content: flex-end !important;
		width: 100% !important;
	}
	.elementor-element-5030df83 .elementor-menu-toggle {
		margin-left: auto !important;
		margin-right: 0 !important;
	}
}
/* === KG BURGER RIGHT ALIGN END === */

/* === KG MOBILE MENU UNIFY START === */
/* Le dropdown mobile d'Elementor (.elementor-nav-menu--dropdown) reçoit des
   styles par défaut (padding, background, font Elementor) qui diffèrent du
   menu desktop. On force le même rendu : typo Figtree, items uppercase 16px
   700, sous-items uppercase 12px 300, hover gras 800, chevron custom. */
.elementor-nav-menu--dropdown {
	background: transparent !important;
	box-shadow: none !important;
	padding: 0 !important;
}
.elementor-nav-menu--dropdown .elementor-nav-menu {
	background: transparent !important;
}
.elementor-nav-menu--dropdown .elementor-item,
.elementor-nav-menu--dropdown > ul > li > a {
	font-family: "Figtree", sans-serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 16px !important;
	text-transform: uppercase !important;
	color: #000087 !important;
	background: transparent !important;
	padding: 5px 0 !important;
	border: 0 !important;
}
.elementor-nav-menu--dropdown .sub-menu > li > a {
	font-family: "Figtree", sans-serif !important;
	font-size: 12px !important;
	font-weight: 300 !important;
	line-height: 16px !important;
	text-transform: uppercase !important;
	color: #000087 !important;
	background: transparent !important;
	padding: 5px 0 5px 15px !important;
	border: 0 !important;
}
.elementor-nav-menu--dropdown .sub-menu > li > a:hover,
.elementor-nav-menu--dropdown .sub-menu > li > a:focus-visible {
	font-weight: 800 !important;
	background: transparent !important;
}
/* Chevron submenu : remonter de 2px pour alignement optique avec la baseline */
.elementor-nav-menu .menu-item-has-children > a .sub-arrow {
	transform: translateY(-2px);
}
/* === KG MOBILE MENU UNIFY END === */

/* === KG NEWS CONTENT IMG NOSHADOW START === */
.kg-news-body img,
.kg-news-block img,
.kg-news__content img,
.kg-news-body figure,
.kg-news-block figure,
.kg-news__content figure,
.kg-news-body figure img,
.kg-news-block figure img,
.kg-news__content figure img {
	box-shadow: none !important;
	filter: none !important;
}
/* === KG NEWS CONTENT IMG NOSHADOW END === */

/* === KG NAV LANG SWITCHER CSS START === */
.elementor-nav-menu .kg-langs-wrap {
	list-style: none;
	margin: 24px 0 0;
	padding: 0;
	display: flex;
	flex-direction: row;
	gap: 12px;
}
.elementor-nav-menu .kg-langs-wrap li {
	margin: 0;
	padding: 0;
	list-style: none;
}
.elementor-nav-menu .kg-langs-wrap li a {
	padding: 0 !important;
}
.elementor-nav-menu .kg-langs-wrap .wpml-ls-native {
	font-family: "Figtree", sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: #000087;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
/* Langues non actives en 500, retour à 700 au survol */
.elementor-nav-menu .kg-langs-wrap li:not(.wpml-ls-current-language) .wpml-ls-native {
	font-weight: 500;
}
.elementor-nav-menu .kg-langs-wrap li:not(.wpml-ls-current-language) a:hover .wpml-ls-native,
.elementor-nav-menu .kg-langs-wrap li:not(.wpml-ls-current-language) a:focus .wpml-ls-native {
	font-weight: 700;
}
/* État actif : barre dessous + opacity pleine, autres en opacity réduite */
.elementor-nav-menu .kg-langs-wrap .wpml-ls-current-language .wpml-ls-native {
	border-bottom: 2px solid #00FFFF;
	padding-bottom: 2px;
}
.elementor-nav-menu .kg-langs-wrap li a:hover .wpml-ls-native {
	border-bottom: 2px solid #00FFFF;
	padding-bottom: 2px;
}
/* Pas de fond bleu secondaire au survol/active du <a> des langues */
.elementor-nav-menu .kg-langs-wrap li a,
.elementor-nav-menu .kg-langs-wrap li a:hover,
.elementor-nav-menu .kg-langs-wrap li a:focus,
.elementor-nav-menu .kg-langs-wrap li a:active,
.elementor-nav-menu .kg-langs-wrap li.current-menu-item a,
.elementor-nav-menu .kg-langs-wrap li.wpml-ls-current-language a {
	background: transparent !important;
	background-color: transparent !important;
}
/* === KG NAV LANG SWITCHER CSS END === */

/* === KG SINGLE NETWORK TEMPLATE CSS (transféré depuis page settings) START === */
/* ═════════════════════════════════════════════════════════════════════
 * Single kg_practice (Expertise / Network) — clone visuel /news/ + /people/
 * Scope : body.single-kg_practice (toutes les pages expertise/network)
 * ═════════════════════════════════════════════════════════════════════ */

/* Wrapper outer : aside 25% + content 75%, max-width 1500px */
body.single-kg_practice .kg-expertise-wrapper.elementor-section-boxed > .elementor-container,
body.single-kg_network .kg-expertise-wrapper.elementor-section-boxed > .elementor-container,
body.single-kg_practice .kg-network-wrapper.elementor-section-boxed > .elementor-container,
body.single-kg_network .kg-network-wrapper.elementor-section-boxed > .elementor-container {
	max-width: 1500px !important;
}
body.single-kg_practice .kg-expertise-wrapper > .elementor-container > .elementor-col-25,
body.single-kg_network .kg-expertise-wrapper > .elementor-container > .elementor-col-25,
body.single-kg_practice .kg-network-wrapper > .elementor-container > .elementor-col-25,
body.single-kg_network .kg-network-wrapper > .elementor-container > .elementor-col-25 {
	margin-top: -34px !important;
}
body.single-kg_practice .kg-expertise-wrapper .elementor-column > .elementor-widget-wrap.elementor-element-populated,
body.single-kg_network .kg-expertise-wrapper .elementor-column > .elementor-widget-wrap.elementor-element-populated,
body.single-kg_practice .kg-network-wrapper .elementor-column > .elementor-widget-wrap.elementor-element-populated,
body.single-kg_network .kg-network-wrapper .elementor-column > .elementor-widget-wrap.elementor-element-populated {
	padding-left: 0 !important;
}

/* H1 (term name) — typo /news/ archive title */
body.single-kg_practice .kg-expertise__title .elementor-heading-title,
body.single-kg_network .kg-expertise__title .elementor-heading-title,
body.single-kg_practice .kg-network__title .elementor-heading-title,
body.single-kg_network .kg-network__title .elementor-heading-title {
	font-family: "Figtree", sans-serif !important;
	font-size: 36px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	color: #000087 !important;
	letter-spacing: 0 !important;
	line-height: 42px !important;
	margin: 0 0 24px !important;
}

/* Intro HTML — texte propre, navy blue */
body.single-kg_practice .kg-expertise__intro,
body.single-kg_network .kg-expertise__intro,
body.single-kg_practice .kg-network__intro,
body.single-kg_network .kg-network__intro {
	margin: 0 0 50px !important;
}
body.single-kg_practice .kg-expertise__intro p,
body.single-kg_network .kg-expertise__intro p,
body.single-kg_practice .kg-expertise__intro li,
body.single-kg_network .kg-expertise__intro li,
body.single-kg_practice .kg-network__intro p,
body.single-kg_network .kg-network__intro p,
body.single-kg_practice .kg-network__intro li,
body.single-kg_network .kg-network__intro li {
	font-family: "Figtree", sans-serif !important;
	font-size: 16px !important;
	line-height: 1.55 !important;
	color: #000087 !important;
	margin: 0 0 14px !important;
}
body.single-kg_practice .kg-expertise__intro strong,
body.single-kg_network .kg-expertise__intro strong,
body.single-kg_practice .kg-network__intro strong,
body.single-kg_network .kg-network__intro strong { font-weight: 700 !important; }
body.single-kg_practice .kg-expertise__intro h2,
body.single-kg_network .kg-expertise__intro h2,
body.single-kg_practice .kg-expertise__intro h3,
body.single-kg_network .kg-expertise__intro h3,
body.single-kg_practice .kg-network__intro h2,
body.single-kg_network .kg-network__intro h2,
body.single-kg_practice .kg-network__intro h3,
body.single-kg_network .kg-network__intro h3 {
	font-family: "Figtree", sans-serif !important;
	font-weight: 700 !important;
	color: #000087 !important;
	margin: 24px 0 12px !important;
}
body.single-kg_practice .kg-expertise__intro h2,
body.single-kg_network .kg-expertise__intro h2,
body.single-kg_practice .kg-network__intro h2,
body.single-kg_network .kg-network__intro h2 { font-size: 22px !important; }
body.single-kg_practice .kg-expertise__intro h3,
body.single-kg_network .kg-expertise__intro h3,
body.single-kg_practice .kg-network__intro h3,
body.single-kg_network .kg-network__intro h3 { font-size: 18px !important; }

/* Avocats grid en bas */
body.single-kg_practice .kg-expertise__avocats-grid,
body.single-kg_network .kg-expertise__avocats-grid,
body.single-kg_practice .kg-network__avocats-grid,
body.single-kg_network .kg-network__avocats-grid {
	margin-top: 50px !important;
}

@media (max-width: 1024px) {
body.single-kg_practice .kg-expertise-wrapper .elementor-col-25,
body.single-kg_network .kg-expertise-wrapper .elementor-col-25,
body.single-kg_practice .kg-network-wrapper .elementor-col-25,
body.single-kg_network .kg-network-wrapper .elementor-col-25 {
		max-width: 100% !important;
	}
body.single-kg_practice .kg-expertise-wrapper > .elementor-container > .elementor-col-25,
body.single-kg_network .kg-expertise-wrapper > .elementor-container > .elementor-col-25,
body.single-kg_practice .kg-network-wrapper > .elementor-container > .elementor-col-25,
body.single-kg_network .kg-network-wrapper > .elementor-container > .elementor-col-25 {
		margin-top: 0 !important;
	}
}

/* === KG EXPERTISE TESTIMONIALS START === */
/* Mimic exact du style /people/ avocat-single. Bodoni Moda italic enqueued
   automatiquement par knkg_avocat_enqueue_bodoni_moda() qui détecte aussi
   les CPT kg_practice / kg_network. */
.kg-avocat-testimonials {
	margin: 48px 0 0 0;
}
.kg-avocat-testimonial {
	border-left: 3px solid #00FFFF;
	padding: 16px 0 16px 24px;
	margin: 0 0 32px 0;
	background: transparent;
}
.kg-avocat-testimonial__quote {
	font-family: "Bodoni Moda", Georgia, serif;
	font-style: italic;
	font-size: 28px;
	line-height: 36px;
	font-weight: 400;
	color: #000087;
	margin: 0;
}
.kg-avocat-testimonial__author {
	display: block;
	text-align: right;
	font-family: "Figtree", sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #000087;
	margin-top: 8px;
	font-style: normal;
}
@media (max-width: 767px) {
	.kg-avocat-testimonial__quote {
		font-size: 20px;
		line-height: 28px;
	}
}
/* === KG EXPERTISE TESTIMONIALS END === */
/* === KG SINGLE NETWORK TEMPLATE CSS END === */

/* === KG EVENTS ARCHIVE CSS (transféré depuis plugin events.css) START === */
/* ─── Archive ─────────────────────────────────────────────────── */

.kg-events-archive {
	padding: 0 0 4rem;
}

.kg-events-archive__hero {
	background: #f4f4f4;
	padding: 4rem 0 3rem;
	margin-bottom: 2rem;
}

.kg-events-archive__title {
	font-size: 2.4rem;
	margin: 0 0 0.5rem;
}

.kg-events-archive__intro {
	font-size: 1.05rem;
	color: #555;
	max-width: 60ch;
	margin: 0;
}

.kg-events-archive__container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1rem;
}

.kg-events-archive__filters {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 2rem;
	margin-bottom: 2rem;
	border-bottom: 1px solid #e0e0e0;
	padding-bottom: 1rem;
}

.kg-events-archive__tabs {
	display: flex;
	gap: 0;
}

.kg-events-archive__tab {
	display: inline-block;
	padding: 0.6rem 1.5rem;
	font-weight: 600;
	text-decoration: none;
	color: #555;
	border-bottom: 2px solid transparent;
	transition: color 0.2s, border-color 0.2s;
}

.kg-events-archive__tab.is-active,
.kg-events-archive__tab:hover {
	color: #111;
	border-bottom-color: #c8a26b;
}

.kg-events-archive__expertise {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-left: auto;
}

.kg-events-archive__expertise label {
	font-weight: 600;
	font-size: 0.9rem;
}

.kg-events-archive__expertise select {
	padding: 0.4rem 0.6rem;
	border: 1px solid #ccc;
	background: #fff;
	font-size: 0.95rem;
	min-width: 200px;
}

.kg-events-archive__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 2rem;
}

.kg-event-card {
	border: 1px solid #e0e0e0;
	background: #fff;
	transition: transform 0.2s, box-shadow 0.2s;
}

.kg-event-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
}

.kg-event-card__link {
	display: block;
	text-decoration: none;
	color: inherit;
}

.kg-event-card__media {
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #f4f4f4;
}

.kg-event-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.kg-event-card__body {
	padding: 1.2rem 1.5rem 1.5rem;
}

.kg-event-card__date {
	font-size: 0.85rem;
	color: #888;
	display: block;
}

.kg-event-card__location {
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	color: #c8a26b;
	margin: 0.4rem 0 0.8rem;
	font-weight: 600;
}

.kg-event-card__title {
	font-size: 1.15rem;
	margin: 0 0 0.6rem;
	line-height: 1.3;
}

.kg-event-card__excerpt {
	font-size: 0.9rem;
	color: #555;
	line-height: 1.5;
	margin: 0;
}

.kg-events-archive__empty {
	text-align: center;
	color: #888;
	font-style: italic;
	padding: 3rem 0;
}

.kg-events-archive__pagination {
	margin-top: 3rem;
	display: flex;
	justify-content: center;
	gap: 0.4rem;
}

.kg-events-archive__pagination a,
.kg-events-archive__pagination span {
	padding: 0.4rem 0.8rem;
	border: 1px solid #ddd;
	text-decoration: none;
	color: #555;
}

.kg-events-archive__pagination .current {
	background: #c8a26b;
	color: #fff;
	border-color: #c8a26b;
}

/* === KG EVENTS ARCHIVE CSS END === */

/* === KG FILTRES WIDGET GROW START === */
/* Force tous les widgets enfants directs de .kg-filtres à flex-grow pour
   se partager équitablement l'espace, même sans .elementor-widget__width-inherit. */
.kg-filtres > .elementor-widget {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	width: auto !important;
}
.kg-filtres .kg-events-filter-label,
.kg-filtres .kg-news-filter-label,
.kg-filtres .kg-avocats-filter-label {
	display: flex !important;
	width: 100% !important;
}
.kg-filtres .kg-events-filter,
.kg-filtres .kg-events-filter--keyword,
.kg-filtres input.kg-events-filter--keyword,
.kg-filtres .kg-select-wrap,
.kg-filtres .kg-select-trigger {
	width: 100% !important;
	box-sizing: border-box;
}
/* === KG FILTRES WIDGET GROW END === */

/* === KG EVENTS PAST IS-EXTRA START === */
/* Le PHP du shortcode events-archive ajoute .is-extra sur les past events
   au-delà de `past_per_page`. La règle qui les cachait était dans le bloc
   inline supprimé — on la réinjecte ici. */
body.post-type-archive-kg_event .kg-events-archive-card.is-extra {
	display: none;
}body.post-type-archive-kg_event [data-knkg-events-reveal].is-revealed .kg-events-archive-card.is-extra,
body.post-type-archive-kg_event [data-knkg-events-reveal].is-revealed-by-filter .kg-events-archive-card.is-extra {
	display: revert;
}body.post-type-archive-kg_event .kg-events-archive-card.is-filtered-out {
	display: none !important;
}
/* === KG EVENTS PAST IS-EXTRA END === */

/* === KG EVENTS PAST GRID GAP START === */
.kg-events-archive-grid {
	row-gap: 56px !important;
}
/* === KG EVENTS PAST GRID GAP END === */

/* === KG EVENTS FILTRES TABLET 2COLS START === */
/* En tablette (768-1024px) garder les 2 filtres events sur la même ligne
   comme en desktop (par défaut Elementor stacke les e-flexbox en tablette). */
@media (min-width: 768px) and (max-width: 1024px) {
	body.post-type-archive-kg_event .kg-filtres {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
	}
}
/* === KG EVENTS FILTRES TABLET 2COLS END === */

/* === KG EVENTS FILTRES MOBILE 100W START === */
/* En mobile (≤767px) les 2 filtres events stack en colonne, chacun 100%. */
@media (max-width: 767px) {
	body.post-type-archive-kg_event .kg-filtres {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
	}
	body.post-type-archive-kg_event .kg-filtres > .elementor-widget {
		width: 100% !important;
		flex: 0 0 auto !important;
	}
}
/* === KG EVENTS FILTRES MOBILE 100W END === */

/* === KG KEYWORD LABEL NO LETTERSPACING START === */
body.post-type-archive-kg_news .kg-news-filter--keyword,
body.tax-kg_news_category .kg-news-filter--keyword,
body.post-type-archive-kg_event .kg-events-filter--keyword,
.kg-news-filter--keyword,
.kg-events-filter--keyword {
	letter-spacing: 0 !important;
}
body.post-type-archive-kg_news .kg-news-filter--keyword::placeholder,
body.tax-kg_news_category .kg-news-filter--keyword::placeholder,
body.post-type-archive-kg_event .kg-events-filter--keyword::placeholder,
.kg-news-filter--keyword::placeholder,
.kg-events-filter--keyword::placeholder {
	letter-spacing: 0 !important;
}
/* === KG KEYWORD LABEL NO LETTERSPACING END === */

/* === KG EVENTS PLUGIN CSS (transféré depuis plugin events.css : Single/Sidebar/Modal/Form) START === */
/* ─── Single ──────────────────────────────────────────────────── */

.kg-event-single {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1rem 4rem;
}

.kg-event-single__hero {
	margin-bottom: 2rem;
}

.kg-event-single__media {
	aspect-ratio: 16 / 9;
	overflow: hidden;
	margin-bottom: 1.5rem;
	background: #f4f4f4;
}

.kg-event-single__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.kg-event-single__heading {
	max-width: 800px;
}

.kg-event-single__date {
	font-size: 0.95rem;
	color: #888;
	margin: 0 0 0.5rem;
}

.kg-event-single__time {
	margin-left: 0.5rem;
	color: #555;
}

.kg-event-single__title {
	font-size: 2rem;
	margin: 0 0 0.5rem;
	line-height: 1.2;
}

.kg-event-single__location {
	font-size: 1rem;
	color: #c8a26b;
	font-weight: 600;
	letter-spacing: 0.04em;
	margin: 0;
}

.kg-event-single__body {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	gap: 3rem;
}

@media (max-width: 768px) {
	.kg-event-single__body {
		grid-template-columns: 1fr;
	}
}

.kg-event-single__content {
	font-size: 1.05rem;
	line-height: 1.7;
}

.kg-event-single__content p {
	margin: 0 0 1rem;
}

/* ─── Sidebar ─────────────────────────────────────────────────── */

.kg-event-sidebar {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.kg-event-sidebar h3 {
	font-size: 0.85rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #888;
	margin: 0 0 0.8rem;
	border-bottom: 1px solid #e0e0e0;
	padding-bottom: 0.5rem;
}

.kg-event-sidebar__signup-btn {
	display: block;
	text-align: center;
	background: #00FFFF !important;
	color: #000087 !important;
	padding: 16px 38px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	cursor: pointer;
	border: 0 !important;
	border-radius: 0 !important;
	width: 100% !important;
	transition: background 0.3s ease, color 0.3s ease;
	box-sizing: border-box;
}

.kg-event-sidebar__signup-btn:hover {
	background: #000087 !important;
	color: #00FFFF !important;
}

.kg-event-sidebar__tags {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.kg-event-sidebar__tag {
	display: inline-block;
	padding: 0.3rem 0.8rem;
	background: #f4f4f4;
	color: #555;
	font-size: 0.85rem;
	text-decoration: none;
	border: 1px solid #e0e0e0;
	transition: background 0.2s;
}

.kg-event-sidebar__tag:hover {
	background: #c8a26b;
	color: #fff;
	border-color: #c8a26b;
}

.kg-event-sidebar__speakers-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.kg-event-sidebar__speaker-link {
	display: flex;
	gap: 0.8rem;
	align-items: center;
	text-decoration: none;
	color: inherit;
}

.kg-event-sidebar__speaker-photo img {
	border-radius: 50%;
	width: 60px;
	height: 60px;
	object-fit: cover;
}

.kg-event-sidebar__speaker-meta {
	display: flex;
	flex-direction: column;
}

.kg-event-sidebar__speaker-name {
	font-weight: 600;
	font-size: 0.95rem;
}

.kg-event-sidebar__speaker-role {
	font-size: 0.8rem;
	color: #888;
}

.kg-event-sidebar__share-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 0.8rem;
}

.kg-event-sidebar__share-list a {
	display: inline-block;
	padding: 0.4rem 0.8rem;
	border: 1px solid #ddd;
	color: #555;
	font-size: 0.85rem;
	text-decoration: none;
	transition: background 0.2s;
}

.kg-event-sidebar__share-list a:hover {
	background: #c8a26b;
	color: #fff;
	border-color: #c8a26b;
}

.kg-event-sidebar__more-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.8rem;
}

.kg-event-sidebar__more-list a {
	display: block;
	text-decoration: none;
	color: inherit;
	border-bottom: 1px solid #f0f0f0;
	padding-bottom: 0.6rem;
}

.kg-event-sidebar__more-list a:hover .kg-event-sidebar__more-title {
	color: #c8a26b;
}

.kg-event-sidebar__more-date {
	display: block;
	font-size: 0.8rem;
	color: #888;
	margin-bottom: 0.2rem;
}

.kg-event-sidebar__more-title {
	font-weight: 600;
	font-size: 0.95rem;
	transition: color 0.2s;
}

/* ─── Modal Save the date ─────────────────────────────────────── */

.kg-event-sidebar__modal {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.6);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 9999;
}

.kg-event-sidebar__modal-inner {
	background: #fff;
	max-width: 540px;
	width: 90%;
	max-height: 90vh;
	overflow-y: auto;
	padding: 2.5rem;
	position: relative;
}

.kg-event-sidebar__modal-close {
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
	background: transparent;
	border: none;
	font-size: 1.8rem;
	line-height: 1;
	cursor: pointer;
	color: #888;
}

.kg-event-sidebar__modal-close:hover {
	color: #111;
}

/* ─── Form ────────────────────────────────────────────────────── */

.kg-event-form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.kg-event-form__row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

@media (max-width: 480px) {
	.kg-event-form__row {
		grid-template-columns: 1fr;
	}
}

.kg-event-form__field {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
}

.kg-event-form__field span {
	font-size: 0.85rem;
	font-weight: 600;
	color: #555;
}

.kg-event-form__field input,
.kg-event-form__field textarea {
	padding: 0.6rem 0.8rem;
	border: 1px solid #ccc;
	font-size: 0.95rem;
	font-family: inherit;
	background: #fff;
}

.kg-event-form__field input:focus,
.kg-event-form__field textarea:focus {
	outline: 2px solid #c8a26b;
	outline-offset: -1px;
	border-color: #c8a26b;
}

.kg-event-form__submit {
	background: #111;
	color: #fff;
	padding: 0.9rem 1.5rem;
	border: none;
	font-weight: 600;
	font-size: 0.95rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background 0.2s;
}

.kg-event-form__submit:hover {
	background: #c8a26b;
}

.kg-event-form__success {
	background: #e6f5e6;
	border-left: 3px solid #2d8f2d;
	padding: 1rem;
	margin: 0;
	color: #2d6f2d;
}

.kg-event-form__error {
	background: #fbe9e9;
	border-left: 3px solid #b22;
	padding: 1rem;
	margin: 0;
	color: #911;
}
/* === KG EVENTS PLUGIN CSS END === */

/* === KG EVENTS PAST CARD GAP 0 START === */
body.post-type-archive-kg_event .kg-events-archive-card {
	gap: 0 !important;
}
/* === KG EVENTS PAST CARD GAP 0 END === */

/* === KG EVENTS FILTER REVEAL CSS START === */
[data-knkg-events-reveal].is-revealed-by-filter .kg-events-archive-card.is-extra {
	display: revert !important;
}
[data-knkg-events-reveal].is-revealed-by-filter .kg-events-archive-card.is-filtered-out {
	display: none !important;
}
/* === KG EVENTS FILTER REVEAL CSS END === */

/* === KG EVENTS STD ROW LAYOUT START === */
/* Save the Date row : date+texte à gauche (2/3), location+bouton à droite (1/3). */
body.post-type-archive-kg_event .kg-events-std-row {
	display: grid !important;
	grid-template-columns: 2fr 1fr !important;
	grid-template-areas:
		"date loc"
		"body cta" !important;
	column-gap: 72px !important;
	row-gap: 24px !important;
}
body.post-type-archive-kg_event .kg-events-std-row__meta {
	display: contents !important;
}
body.post-type-archive-kg_event .kg-events-std-row__date {
	grid-area: date !important;
}
body.post-type-archive-kg_event .kg-events-std-row__loc {
	grid-area: loc !important;
	text-align: right;
}
body.post-type-archive-kg_event .kg-events-std-row__body {
	grid-area: body !important;
}
body.post-type-archive-kg_event .kg-events-std-row__cta {
	grid-area: cta !important;
	display: flex !important;
	align-items: flex-end !important;
	justify-content: flex-end !important;
}
@media (max-width: 767px) {
	body.post-type-archive-kg_event .kg-events-std-row {
		grid-template-columns: 1fr 1fr !important;
		grid-template-areas:
			"date loc"
			"body body"
			"cta cta" !important;
	}
	body.post-type-archive-kg_event .kg-events-std-row__loc {
		text-align: right;
	}
	body.post-type-archive-kg_event .kg-events-std-row__cta {
		justify-content: flex-start !important;
	}
}
/* === KG EVENTS STD ROW LAYOUT END === */

/* === KG AVOCAT F149D3E ROW GAP START === */
/* Container f149d3e (Single Avocat — workaround pour bug invalid_value
   en édition responsive Elementor V4 sur les atomic widgets). */
@media (max-width: 1024px) {
	body.single-kg_avocat .elementor-element-f149d3e {
		row-gap: 50px !important;
	}
}
/* === KG AVOCAT F149D3E ROW GAP END === */

/* === KG AVOCAT ACCORDION TABLET TIGHTEN START === */
/* En tablette (≤1024), réduit l'espace entre le contenu de chaque item
   d'accordion et la ligne de séparation (border-bottom). */
@media (max-width: 1024px) {
	.kg-avocat-accordion__summary {
		min-height: 56px !important;
	}
	.kg-avocat-accordion__content {
		padding-bottom: 12px !important;
		font-size: 14px !important;
		line-height: 18px !important;
	}
}
/* === KG AVOCAT ACCORDION TABLET TIGHTEN END === */

/* === KG PEOPLE C226A46 GAP TABLET START === */
@media (max-width: 1024px) {
	body.post-type-archive-kg_avocat .elementor-element-c226a46 {
		gap: 50px !important;
	}
}
/* === KG PEOPLE C226A46 GAP TABLET END === */

/* === KG 9A97AA1 GAP TABLET START === */
@media (max-width: 1024px) {
	.e-9a97aa1-e9c9735 {
		gap: 50px !important;
	}
}
/* === KG 9A97AA1 GAP TABLET END === */

/* === KG NEWS GAP TABLET START === */
@media (max-width: 1024px) {
	.e-d3ce4a5-701628d,
	.e-0e7d03d-f4c2718 {
		gap: 50px !important;
	}
}
/* === KG NEWS GAP TABLET END === */

/* === KG EXPERTISE NETWORK GAP TABLET START === */
@media (max-width: 1024px) {
	.e-e38a2bf-9c6c2aa,
	.e-dd5d145-3c8406c {
		gap: 50px !important;
	}
}
/* === KG EXPERTISE NETWORK GAP TABLET END === */

/* === KG ED9E4C6 BA51B9E GAP TABLET START === */
@media (max-width: 1024px) {
	.e-ed9e4c6-f63efc2,
	.e-ba51b9e-07677d9 {
		gap: 50px !important;
	}
	/* Exclusions : ne pas appliquer sur Single News et Single Event */
	body.single-kg_news .e-ed9e4c6-f63efc2,
	body.single-kg_event .e-ed9e4c6-f63efc2,
	body.single-kg_news .e-ba51b9e-07677d9,
	body.single-kg_event .e-ba51b9e-07677d9 {
		gap: revert !important;
	}
}
/* === KG ED9E4C6 BA51B9E GAP TABLET END === */

/* === KG CONTACT E6E9293 GAP TABLET START === */
@media (max-width: 1024px) {
	.e-e6e9293-f47eafb {
		gap: 50px !important;
	}
}
/* === KG CONTACT E6E9293 GAP TABLET END === */

/* === KG STD ROW TITLE NO UNDERLINE START === */
body.post-type-archive-kg_event .kg-events-std-row__title,
body.post-type-archive-kg_event .kg-events-std-row__title a,
body.post-type-archive-kg_event .kg-events-std-row__title:hover,
body.post-type-archive-kg_event .kg-events-std-row__title a:hover,
body.post-type-archive-kg_event .kg-events-std-row__title a:focus,
body.post-type-archive-kg_event .kg-events-std-row__title a:focus-visible {
	text-decoration: none !important;
	border-bottom: 0 !important;
}
/* === KG STD ROW TITLE NO UNDERLINE END === */

/* === KG STD ROW TYPO INHERIT START === */
/* Save the Date — typo + responsive (couleurs héritées du kit Elementor). */
body.post-type-archive-kg_event .kg-events-std-row__title,
body.post-type-archive-kg_event .kg-events-std-row__title a {
	font-weight: 700 !important;
	font-size: 18px !important;
	line-height: 24px !important;
	color: inherit !important;
}
body.post-type-archive-kg_event .kg-events-std-row__excerpt {
	font-weight: 300 !important;
	font-size: 16px !important;
	line-height: 22px !important;
	color: inherit !important;
}
body.post-type-archive-kg_event .kg-events-std-row__date,
body.post-type-archive-kg_event .kg-events-std-row__loc {
	font-weight: 300 !important;
	font-size: 12px !important;
	line-height: 24px !important;
	color: inherit !important;
}
@media (max-width: 1024px) {
	body.post-type-archive-kg_event .kg-events-std-row__title,
	body.post-type-archive-kg_event .kg-events-std-row__title a {
		font-size: 16px !important;
		line-height: 19px !important;
	}
	body.post-type-archive-kg_event .kg-events-std-row__excerpt {
		font-size: 14px !important;
		line-height: 18px !important;
	}
}
/* === KG STD ROW TYPO INHERIT END === */

/* === KG STD ROW PADDING BOTTOM START === */
body.post-type-archive-kg_event .kg-events-std-row {
	padding-bottom: 40px !important;
}
/* === KG STD ROW PADDING BOTTOM END === */

/* === KG UPCOMING CARD GAP START === */
body.post-type-archive-kg_event .kg-events-upcoming-card {
    gap: 72px !important;
}
/* === KG UPCOMING CARD GAP END === */

/* === KG UPCOMING IMG SIMPLE START === */
body.post-type-archive-kg_event .kg-events-upcoming-card .kg-events-upcoming-card__img {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-height: 420px !important;
}
body.post-type-archive-kg_event .kg-events-upcoming-card .kg-events-upcoming-card__img img {
    transform: none !important;
    object-fit: contain !important;
    max-height: 420px !important;
    height: auto !important;
}

.kg-events-archive-grid{display:grid;gap:32px;}
	.kg-events-archive-grid--cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}
	.kg-events-archive-grid--cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}
	.kg-events-archive-grid--cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}
	@media (max-width: 991px){.kg-events-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
	@media (max-width: 600px){.kg-events-archive-grid{grid-template-columns:1fr;}}

	.kg-events-archive-card{position:relative;display:flex;flex-direction:column;gap:14px;}
	.kg-events-archive-card.is-extra{display:none;}
	[data-knkg-events-reveal].is-revealed .kg-events-archive-card.is-extra{display:flex;}
	.kg-events-archive-card.is-filtered-out{display:none !important;}
	.kg-events-archive-card__link{position:absolute;inset:0;z-index:1;text-indent:-9999px;overflow:hidden;}
	.kg-events-archive-card__img{position:relative;z-index:0;overflow:hidden;border-radius:4px;pointer-events:none;}
	.kg-events-archive-card__img img{display:block;width:100%;height:auto;transition:transform .3s ease;}
	.kg-events-archive-card:has(.kg-events-archive-card__link:hover) .kg-events-archive-card__img img{transform:scale(1.03);}
	.kg-events-archive-card__body{position:relative;z-index:0;pointer-events:none;}
	.kg-events-archive-card__meta{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;line-height:1.4;text-transform:uppercase;letter-spacing:0.06em;color:#000087;font-weight:500;margin:0 0 10px 0;}
	.kg-events-archive-card__title{margin:0 0 8px 0;color:#000087;font-size:22px;line-height:1.25;font-weight:700;letter-spacing:-0.01em;transition:color .2s ease;}
	.kg-events-archive-card:has(.kg-events-archive-card__link:hover) .kg-events-archive-card__title{color:#00006b;}
	.kg-events-archive-card__excerpt{margin:0;color:#6e6fb7;font-size:15px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;}

	.kg-events-std-list{display:flex;flex-direction:column;gap:72px;}
	.kg-events-std-row{display:grid;grid-template-columns:1fr auto;gap:16px;padding-bottom:24px;border-bottom:0.5px solid #000087;}
	.kg-events-std-row__meta{grid-column:1/-1;display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;text-transform:uppercase;letter-spacing:0.06em;color:#000087;font-weight:600;}
	.kg-events-std-row__title{margin:0 0 8px 0;color:#000087;font-size:24px;line-height:1.3;font-weight:700;}
	.kg-events-std-row__title a{color:inherit;text-decoration:none;}
	.kg-events-std-row__title a:hover{text-decoration:underline;}
	.kg-events-std-row__excerpt{margin:0;color:#000087;font-size:15px;line-height:1.55;}
	.kg-events-std-row__cta{display:flex;align-items:flex-end;justify-content:flex-end;}
	.kg-events-std-row__cta-btn{display:inline-block;padding:10px 20px;background:#000087;color:#fff;text-decoration:none;font-size:13px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;border-radius:2px;transition:background .2s ease;}
	.kg-events-std-row__cta-btn:hover{background:#00006b;color:#fff;text-decoration:none;}
	@media (max-width: 767px){.kg-events-std-row{grid-template-columns:1fr;}.kg-events-std-row__cta{justify-content:flex-start;}}
	.kg-events-archive-grid__actions{display:flex;justify-content:flex-end;margin-top:28px;}
	.kg-events-archive-reveal-btn{background:transparent;border:none;color:#000087;font-size:13px !important;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;padding:8px 0;}
	.kg-events-archive-reveal-btn:hover{opacity:0.75;}

	.kg-events-section-title{margin:0 0 24px 0;color:#000087;font-size:28px;line-height:1.2;font-weight:700;letter-spacing:0.02em;text-transform:uppercase;}

	.kg-events-filter-label{display:inline-flex;align-items:center;gap:8px;}
	.kg-events-filter{padding:8px 12px;border:1px solid #c8cce0;border-radius:2px;font-size:14px;color:#000087;background:#fff;min-width:200px;}
	.kg-events-archive__empty{color:#6e6fb7;font-size:16px;margin:0 0 24px 0;}

	/* ── UPCOMING CARD LARGE — pattern Symfony col-md-8 + col-md-4 ── */
	.kg-events-upcoming-list{display:flex;flex-direction:column;gap:48px;}
	.kg-events-upcoming-card{position:relative;display:grid;grid-template-columns:2fr 1fr;gap:72px;align-items:stretch;}
	.kg-events-upcoming-card__link{position:absolute;inset:0;z-index:1;text-indent:-9999px;overflow:hidden;}
	.kg-events-upcoming-card__img{position:relative;z-index:0;pointer-events:none;overflow:hidden;}
	.kg-events-upcoming-card__img img{display:block;width:100%;transition:transform .3s ease;}
	.kg-events-upcoming-card:has(.kg-events-upcoming-card__link:hover) .kg-events-upcoming-card__img img{transform:scale(1.03);}
	.kg-events-upcoming-card__img-placeholder{width:100%;height:280px;background:linear-gradient(135deg,#000087 0%,#00006b 100%);}
	.kg-events-upcoming-card__body{position:relative;z-index:0;pointer-events:none;display:flex;flex-direction:column;justify-content:center;color:#000087;}
	.kg-events-upcoming-card__meta{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;text-transform:uppercase;letter-spacing:0.06em;font-weight:600;color:#000087;margin:0 0 10px 0;}
	.kg-events-upcoming-card__title{margin:0 0 14px 0;color:#000087;font-size:26px;line-height:1.25;font-weight:700;letter-spacing:-0.01em;transition:color .2s ease;}
	.kg-events-upcoming-card:has(.kg-events-upcoming-card__link:hover) .kg-events-upcoming-card__title{color:#00006b;}
	.kg-events-upcoming-card__excerpt{margin:0 0 18px 0;color:#000087;font-size:15px;line-height:1.55;}
	.kg-events-upcoming-card__cta{display:inline-block;align-self:flex-start;padding:10px 24px;background:#000087;color:#fff;font-size:12px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;border-radius:2px;pointer-events:none;}
	.kg-events-upcoming-card:has(.kg-events-upcoming-card__link:hover) .kg-events-upcoming-card__cta{background:#00006b;}
	@media (max-width: 991px){.kg-events-upcoming-card{grid-template-columns:1fr;}}

	/* ── BLUE LINE SEPARATOR — pattern Symfony .blue-line ── */
	.kg-events-blue-line{display:block;width:100%;height:0;border:0;border-top:30px solid #00FFFF;margin:80px 0 40px 0;}

	/* ── Card past : small-hr divider entre meta et titre (Symfony) ── */
	.kg-events-archive-card--past .kg-events-archive-card__meta{padding-bottom:8px;border-bottom:0.5px solid #c8cce0;}

    /* ── CSS extra pour les sections + filters inline ───────── */
    .kg-events-archive-section{margin:0 0 32px 0;}
	.kg-events-archive-section__heading{margin:0 0 12px 0;color:#000087;font-size:32px;line-height:1.2;font-weight:700;text-transform:uppercase;letter-spacing:0.02em;}
	.kg-events-archive-section__intro{margin:0 0 28px 0;color:#000087;font-size:16px;line-height:1.6;}
	.kg-events-archive-section__intro p{margin:0 0 8px 0;}
	.kg-events-archive-section__filters{display:flex;flex-wrap:wrap;gap:16px;margin:0 0 32px 0;}

/* === KG UPCOMING IMG SIMPLE END === */

.kg-event-speakers__heading{margin:0 0 14px 0;color:#000087;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:0.1em;border-bottom:0.5px solid #000087;padding-bottom:8px;}
	.kg-event-speakers__list{list-style:none !important;padding:0 !important;margin:0;display:flex;flex-direction:column;gap:28px;}
	.kg-event-speakers__list li::before,.kg-event-speakers__list li::marker{content:none !important;display:none !important;}
	.kg-event-speakers__item{margin:0;padding-bottom:18px;border-bottom:0.5px solid #c8cce0;}
	.kg-event-speakers__item:last-child{border-bottom:none;}
	.kg-event-speakers__head{display:flex;align-items:center;gap:14px;margin-bottom:14px;}
	.kg-event-speakers__photo-wrap{flex-shrink:0;}
	.kg-event-speakers__photo{width:64px;height:64px;border-radius:50%;object-fit:cover;display:block;}
	.kg-event-speakers__head-txt{display:flex;flex-direction:column;gap:4px;}
	.kg-event-speakers__name{margin:0;color:#000087;font-size:16px;font-weight:700;letter-spacing:0.02em;}
	.kg-event-speakers__role{margin:0;color:#6e6fb7;font-size:12px;text-transform:uppercase;letter-spacing:0.08em;}
	.kg-event-speakers__contact{list-style:none !important;padding:0 !important;margin:0 0 12px 0;display:flex;flex-direction:column;gap:6px;}
	.kg-event-speakers__contact li{display:flex;align-items:center;gap:8px;color:#000087;font-size:13px;margin:0 !important;padding:0;}
	.kg-event-speakers__contact li::before,.kg-event-speakers__contact li::marker{content:none !important;display:none !important;}
	.kg-event-speakers__contact a{color:#000087;text-decoration:none;}
	.kg-event-speakers__contact a:hover{color:#00006b;text-decoration:underline;}
	.kg-event-speakers__icon{flex-shrink:0;}
	.kg-event-speakers__bio-btn{display:inline-block;padding:8px 18px;background:#000087;color:#fff !important;text-decoration:none !important;font-size:12px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;border-radius:2px;margin-top:4px;transition:background-color .2s ease;}
	.kg-event-speakers__bio-btn:hover{background:#00006b;color:#fff !important;text-decoration:none !important;}

/* === KG UPCOMING CTA BTN STYLE START === */
body.post-type-archive-kg_event .kg-events-upcoming-card__cta {
	background: #00FFFF !important;
	color: #000087 !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 16px 38px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
	text-align: center !important;
}
body.post-type-archive-kg_event .kg-events-upcoming-card:has(.kg-events-upcoming-card__link:hover) .kg-events-upcoming-card__cta {
	background: #000087 !important;
	color: #00FFFF !important;
}
/* === KG UPCOMING CTA BTN STYLE END === */

/* === KG SINGLE NEWS EVENT H1 LH START === */
body.single-kg_news .elementor-widget-heading h1.elementor-heading-title,
body.single-kg_event .elementor-widget-heading h1.elementor-heading-title {
	line-height: 32px !important;
}
/* === KG SINGLE NEWS EVENT H1 LH END === */

/* === KG EVENT SIGNUP CTA START === */
body.single-kg_event .kg-event-signup-cta {
	display: block !important;
	text-align: center !important;
	background: #00FFFF !important;
	color: #000087 !important;
	padding: 16px 38px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
	transition: background 0.3s ease, color 0.3s ease;
}
body.single-kg_event .kg-event-signup-cta:hover {
	background: #000087 !important;
	color: #00FFFF !important;
}
/* === KG EVENT SIGNUP CTA END === */

/* === KG PUBLICATION P SPACING START === */
/* Augmente l'espace entre paragraphes dans le corps des publications. */
.kg-news-body p,
.kg-news-block p,
.kg-news__content p,
.kg-event-single__content p,
.kg-event-single__body p {
	margin-bottom: 24px !important;
}
.kg-news-body p:last-child,
.kg-news-block p:last-child,
.kg-news__content p:last-child,
.kg-event-single__content p:last-child,
.kg-event-single__body p:last-child {
	margin-bottom: 0;
}
/* === KG PUBLICATION P SPACING END === */

/* === KG MORE EVENTS HEADING SPACING START === */
body.single-kg_event .kg-event-related__heading {
	margin-bottom: 32px !important;
}
/* === KG MORE EVENTS HEADING SPACING END === */

/* === KG SINGLE EVENT 1EA591E ROW GAP START === */
@media (max-width: 1024px) {
	body.single-kg_event .e-1ea591e-0803b2e {
		row-gap: 50px !important;
	}
}
/* === KG SINGLE EVENT 1EA591E ROW GAP END === */

/* === KG EVENT RELATED MOBILE 1COL START === */
@media (max-width: 767px) {
	body.single-kg_event .kg-event-related__list {
		grid-template-columns: 1fr !important;
	}
}
/* === KG EVENT RELATED MOBILE 1COL END === */


/* === KG PEOPLE FILTERS RESPONSIVE WIDTH START === */
/* Tablette/mobile : .kg-filtres passe en flex column ; les dropdowns custom
   (expertise/title) sont des blocs sans largeur intrinseque et s'effondrent a
   la largeur du chevron, alors que le champ texte garde sa taille. On force la
   pleine largeur des widgets/labels/wrap pour qu'ils s'affichent correctement.
   (Anciennement gere par les reglages responsive du widget sur la page 1253 ;
   centralise ici car /people/ est desormais rendu par le template archive 2935.) */
@media (max-width: 1024px) {
    .kg-filtres .elementor-widget:has(.kg-avocats-filter-label),
    .kg-filtres .elementor-widget:has(.kg-avocats-filter-label) > .elementor-widget-container,
    .kg-filtres .kg-avocats-filter-label,
    .kg-filtres .kg-avocats-filter-label .kg-select-wrap {
        width: 100% !important;
    }
}
/* === KG PEOPLE FILTERS RESPONSIVE WIDTH END === */


/* === KG EVENTS/RELATED META TYPO OVERRIDE START === */
/* Date + location in tile meta header: Archive Events + Related Events
   on Single Event / Expertise / Networks / Avocat. */
.kg-avocat-related-event__date,
.kg-avocat-related-event__org,
body.post-type-archive-kg_event .kg-events-archive-card__date,
body.post-type-archive-kg_event .kg-events-archive-card__loc,
.kg-event-related__date,
.kg-event-related__loc {
    font-weight: 400 !important;
    font-size: 12px !important;
    line-height: 22px !important;
    letter-spacing: 0 !important;
}
.kg-avocat-related-event__org,
body.post-type-archive-kg_event .kg-events-archive-card__loc,
.kg-event-related__loc {
    text-align: right !important;
}
/* === KG EVENTS/RELATED META TYPO OVERRIDE END === */


/* === KG AVOCAT RELATED NEWS META TYPO OVERRIDE START === */
/* Date + org in related-news tile meta header:
   Single Avocat / Single Expertise / Single Networks. */
body.single-kg_avocat .kg-avocat-related-news__date,
body.single-kg_avocat .kg-avocat-related-news__org,
body.single-kg_practice .kg-avocat-related-news__date,
body.single-kg_practice .kg-avocat-related-news__org,
body.single-kg_network .kg-avocat-related-news__date,
body.single-kg_network .kg-avocat-related-news__org {
    font-weight: 400 !important;
    font-size: 12px !important;
    line-height: 22px !important;
    letter-spacing: 0 !important;
}
body.single-kg_avocat .kg-avocat-related-news__org,
body.single-kg_practice .kg-avocat-related-news__org,
body.single-kg_network .kg-avocat-related-news__org {
    text-align: right !important;
}
/* === KG AVOCAT RELATED NEWS META TYPO OVERRIDE END === */


/* === KG CAREERS PAGE CSS (dé-scopé de page-1256 -> global EN/FR/DE 2026-06-19) START === */
/* Moved out of Page Settings > Advanced > Custom CSS so it is version-controlled.
   `selector` was replaced by `body.elementor-page-1256` (Elementor's resolution). */
/* ============================================================
 * CAREERS — Page base CSS (Symfony parity)
 * Editable depuis Page Settings → Advanced → Custom CSS
 * ============================================================ */

/* ===== Hero banner ===== */
.kg-careers-hero {
    position: relative;
    width: 100%;
    margin: 0 0 48px 0;
    overflow: hidden;
}
.kg-careers-hero img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 480px;
    object-fit: cover;
}
.kg-careers-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(0,0,135,0.4), rgba(0,0,135,0.15));
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
}
.kg-careers-hero__text {
    color: #fff;
    text-align: center;
    font-family: 'Bodoni Moda', serif;
    font-style: italic;
    font-weight: 500;
    font-size: 38px;
    line-height: 1.3;
    max-width: 900px;
    margin: 0;
    text-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
@media (max-width: 720px) {
    .kg-careers-hero__text { font-size: 22px; }
}

/* ===== Tabs ===== */
.kg-careers-tabs {
    margin-top: 8px;
}
.kg-careers-tabs__nav {
    display: flex;
    gap: 0;
    border-bottom: 1px solid #000087;
    margin: 24px 0 0 0;
    flex-wrap: wrap;
}
.kg-careers-tabs__btn {
    flex: 1;
    background: transparent !important;
    border: none !important;
    color: #000087 !important;
    padding: 16px 24px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: .04em !important;
    cursor: pointer;
    border-bottom: 1px solid transparent !important;
    margin-bottom: -1px;
    transition: all .2s;
    text-align: left !important;
    text-transform: lowercase !important;
    box-shadow: none !important;
}
@media (max-width: 768px) {
    .kg-careers-tabs__nav { flex-direction: column; border-bottom: none; }
    .kg-careers-tabs__btn { flex: 1 1 auto; width: 100%; margin-bottom: 0; border-bottom: 1px solid #000087 !important; }
    .kg-careers-tabs__btn:hover,
    .kg-careers-tabs__btn--active { border-bottom-color: #000087 !important; }
}
.kg-careers-tabs__btn::first-letter {
    text-transform: uppercase;
}
.kg-careers-tabs__btn:hover {
    background: #01ffff !important;
    border-bottom-color: #000087 !important;
}
.kg-careers-tabs__btn--active {
    background: #01ffff !important;
    border-bottom-color: #000087 !important;
    font-weight: 700 !important;
}
.kg-careers-tabs__panel {
    padding: 48px 0 0 0;
}
.kg-careers-tabs__section-title {
    font-family: 'Figtree', sans-serif !important;
    font-size: 24px !important;
    line-height: 32px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    text-transform: none !important;
    color: #000087;
    margin: 0 0 24px 0;
}
.kg-careers-tabs__discover {
    font-size: 18px;
    font-weight: 500;
    color: #000087;
    margin: 0 0 40px 0;
}

/* ===== Career items ===== */
.kg-careers-list {
    color: #000087;
}
.kg-careers-list__empty {
    text-align: center;
    color: #000087;
    font-size: 18px;
    padding: 48px 0;
}
.kg-careers-list:not(.kg-careers-list--empty) {
    margin: 8px 0 24px 0;
}
.kg-careers-list__item {
    border-bottom: 0;
    border-top: 0;
    padding: 0;
}
.kg-careers-list__item:first-child { border-top: 0; }
.kg-careers-list__item:last-child { border-bottom: 0; }
.kg-careers-list__item-summary {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 28px;
    padding: 0 16px 0 36px;
    min-height: 72px;
    cursor: pointer;
    font-family: inherit;
    font-size: 16px;
    font-weight: 300;
    line-height: 24px;
    letter-spacing: normal;
    text-transform: none;
    color: #000087;
    background: transparent;
    list-style: none;
    list-style-type: none;
    user-select: none;
    transition: color 0.2s ease, font-weight 0.1s ease;
}
.kg-careers-list__item-summary::-webkit-details-marker {
    display: none !important;
    content: "" !important;
}
.kg-careers-list__item-summary::marker {
    display: none;
    content: "" !important;
}
.kg-careers-list__item-summary:hover {
    color: #00006b;
}
.kg-careers-list__item-details[open] > .kg-careers-list__item-summary {
    font-weight: 600 !important;
}
.kg-careers-list__item-title {
    order: 2;
    flex: 1 1 auto;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    color: inherit;
    margin: 0;
}
.kg-careers-list__item-summary-icon {
    order: 1;
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    position: relative;
    display: inline-block;
    color: currentColor;
    font-size: 0;
    transform: none;
    transition: none;
}
.kg-careers-list__item-summary-icon::before,
.kg-careers-list__item-summary-icon::after {
    content: "";
    position: absolute;
    background-color: #00ffff;
    transition: opacity 0.25s ease;
}
.kg-careers-list__item-summary-icon::before {
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px;
    transform: translateY(-50%);
}
.kg-careers-list__item-summary-icon::after {
    top: 0;
    left: 50%;
    width: 2px;
    height: 100%;
    transform: translateX(-50%);
}
.kg-careers-list__item-details[open] .kg-careers-list__item-summary-icon::after {
    opacity: 0;
}
.kg-careers-list__item-details::details-content {
    block-size: 0;
    overflow: clip;
    transition: block-size 0.5s cubic-bezier(0.4, 0, 0.2, 1), content-visibility 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    transition-behavior: allow-discrete;
}
.kg-careers-list__item-details[open]::details-content {
    block-size: var(--kg-acc-h, auto);
}
.kg-careers-list__item-body {
    color: #000087;
    font-family: 'Figtree', sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 22px;
    padding: 0 16px 22px 80px;
}
.kg-careers-list__item-intro,
.kg-careers-list__item-description {
    color: #000087;
    font-family: 'Figtree', sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 22px;
    margin: 0 0 24px 0;
}
.kg-careers-list__item-description a {
    color: #000087;
    text-decoration: underline;
}
@media (max-width: 1024px) {
    .kg-careers-list__item-summary {
        min-height: 56px;
    }
    .kg-careers-list__item-body {
        padding-bottom: 12px;
    }
    .kg-careers-list__item-body,
    .kg-careers-list__item-intro,
    .kg-careers-list__item-description {
        font-size: 14px;
        line-height: 18px;
    }
}

/* ===== CF7 form ===== */
.kg-career-form-context { display: none; }
.kg-career-form-mandatory {
    font-size: 13px; color: #000087; margin: 0 0 20px 0;
}
.kg-career-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    margin-bottom: 16px;
}
.kg-career-form-field {
    min-width: 0;
}
.kg-career-form-field { display: block; width: 100%; }

.kg-careers-list .wpcf7-form input[type="text"],
.kg-careers-list .wpcf7-form input[type="email"],
.kg-careers-list .wpcf7-form input[type="tel"] {
    display: block; width: 100%; padding: 11px 0 8px 16px;
    border: none; border-bottom: 1px solid #000087;
    font-family: 'Figtree', sans-serif;
    font-size: 14px; font-weight: 300; line-height: 21px; letter-spacing: 1.4px;
    color: #000087; background: transparent;
    border-radius: 0; outline: none; box-shadow: none !important;
}
.kg-careers-list .wpcf7-form input::placeholder { color: #000087; opacity: 1; }
.kg-careers-list .wpcf7-form input:focus {
    border-bottom-color: #000087; box-shadow: none !important;
}

.kg-career-form-file-label {
    display: flex; align-items: center; gap: 12px;
    width: 100%; box-sizing: border-box;
    padding: 11px 46px 8px 16px;
    border: none; border-bottom: 1px solid #000087;
    background: transparent url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2062.5%2078.12%22%3E%3Cpath%20d%3D%22M62.47%2C20c-.02-.07-.04-.13-.06-.2%2C0-.03-.02-.06-.03-.09-.03-.07-.07-.14-.11-.2-.02-.02-.02-.05-.04-.06-.05-.09-.12-.16-.2-.23L43.28.46c-.07-.07-.15-.14-.23-.2-.02-.02-.05-.02-.06-.04-.06-.04-.13-.08-.2-.11-.03-.02-.06-.02-.09-.03-.06-.02-.13-.05-.2-.06-.09-.02-.2-.02-.3-.02H6.2C2.78%2C0%2C0%2C2.78%2C0%2C6.2v65.71c0%2C3.42%2C2.78%2C6.2%2C6.2%2C6.2h50.09c3.42%2C0%2C6.2-2.78%2C6.2-6.2V20.31c0-.1%2C0-.21-.02-.31h0ZM56.3%2C75H6.2c-1.7%2C0-3.08-1.38-3.08-3.08V6.2c0-1.7%2C1.38-3.08%2C3.08-3.08h34.42v12.55c0%2C3.42%2C2.78%2C6.2%2C6.2%2C6.2h12.55v50.05c0%2C1.7-1.38%2C3.08-3.08%2C3.08ZM48.44%2C57.81c0%2C.86-.7%2C1.56-1.56%2C1.56H15.62c-.86%2C0-1.56-.7-1.56-1.56s.7-1.56%2C1.56-1.56h31.25c.86%2C0%2C1.56.7%2C1.56%2C1.56ZM48.44%2C39.06c0%2C.86-.7%2C1.56-1.56%2C1.56H15.62c-.86%2C0-1.56-.7-1.56-1.56s.7-1.56%2C1.56-1.56h31.25c.86%2C0%2C1.56.7%2C1.56%2C1.56ZM14.06%2C20.31c0-.86.7-1.56%2C1.56-1.56h14.06c.86%2C0%2C1.56.7%2C1.56%2C1.56s-.7%2C1.56-1.56%2C1.56h-14.06c-.86%2C0-1.56-.7-1.56-1.56Z%22%20fill%3D%22%23000087%22%2F%3E%3C%2Fsvg%3E") no-repeat right 16px center;
    background-size: 14px auto;
    color: rgba(0, 0, 135, 0.3);
    font-family: 'Figtree', sans-serif;
    font-size: 14px; font-weight: 300; line-height: 21px; letter-spacing: 1.4px;
    cursor: pointer; box-shadow: none;
    transition: border-color .2s;
}
.kg-career-form-file-label:hover { border-bottom-color: #000087; }
.kg-careers-list .wpcf7-form-control-wrap { position: relative; }
.kg-careers-list .wpcf7-not-valid-tip {
    position: absolute; top: 100%; left: 0; margin-top: 6px; z-index: 2;
    font-size: 12px; line-height: 1.2;
}
.kg-career-form-file input[type="file"] {
    display: none !important;
}
.kg-career-form-file-label .wpcf7-form-control-wrap {
    flex: 0 0 0;
    width: 0;
    height: 0;
    min-width: 0;
    margin: 0;
    overflow: hidden;
}
.kg-career-form-file-text {
    flex: 1;
    min-width: 0;
    color: rgba(0, 0, 135, 0.3);
    transition: color 0.15s ease;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.kg-career-form-file-text.is-filled {
    color: #000087;
}

.kg-career-form-langs { margin: 24px 0; }

.kg-career-form-finish {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 32px;
    row-gap: 16px;
    align-items: start;
    margin: 24px 0;
}
.kg-career-form-finish .kg-career-form-langs { margin: 0; }
.kg-career-form-finish-left { grid-column: 1; grid-row: 1; }
.kg-career-form-finish-right {
    grid-column: 2; grid-row: 1; align-self: stretch;
    display: flex; flex-direction: column; justify-content: flex-end; gap: 24px;
}
.kg-career-form-submit { grid-column: 2; grid-row: 2; align-self: start; }
.kg-career-form-finish-right .wpcf7-acceptance {
    margin: 0;
}
.kg-career-form-legal p { margin-bottom: 0; }
.kg-career-form-turnstile p { margin: 0; }
@media (max-width: 768px) {
    .kg-career-form-finish { grid-template-columns: 1fr; row-gap: 24px; }
    .kg-career-form-finish-left,
    .kg-career-form-finish-right,
    .kg-career-form-submit { grid-column: 1; grid-row: auto; align-self: auto; }
}
.kg-career-form-langs > p:not(.kg-career-form-langs__title) { margin-bottom: 0; }
.kg-career-form-langs__title {
    font-size: 14px; color: #000087; margin: 0 0 12px 0; padding-left: 16px; font-weight: 500; letter-spacing: 1.4px;
}
.kg-career-form-langs .wpcf7-checkbox {
    display: flex; flex-direction: column; gap: 0;
    border-bottom: 1px solid #000087;
}
.kg-career-form-langs .wpcf7-list-item { margin: 0 !important; width: 100%; }
.kg-career-form-langs .wpcf7-list-item label {
    display: flex; flex-direction: row-reverse; justify-content: space-between; align-items: center;
    width: 100%; gap: 8px; padding: 10px 0 10px 16px; cursor: pointer; color: #000087;
    font-family: 'Figtree', sans-serif; font-size: 14px; font-weight: 300; line-height: 21px; letter-spacing: 1.4px;
}
.kg-career-form-langs .wpcf7-list-item input[type="checkbox"] {
    -webkit-appearance: none; appearance: none;
    width: 22px; height: 22px; margin: 0; flex: 0 0 auto;
    border: 1px solid #000087; border-radius: 0; background: #fff;
    cursor: pointer;
}
.kg-career-form-langs .wpcf7-list-item input[type="checkbox"]:checked {
    background: #000087 url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M5%2012l4%204L19%207%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") no-repeat center;
    background-size: 14px;
}

.kg-careers-list .wpcf7-acceptance { display: block; margin: 0; }
.kg-careers-list .wpcf7-acceptance .wpcf7-list-item { margin: 0; }
.kg-careers-list .wpcf7-acceptance label {
    display: flex; align-items: flex-start; gap: 14px;
    font-size: 14px; line-height: 1.4; color: #000087; cursor: pointer;
}
.kg-careers-list .wpcf7-acceptance input[type="checkbox"] {
    -webkit-appearance: none; appearance: none;
    flex: 0 0 22px; width: 22px; height: 22px; margin: 2px 0 0 0;
    border: 1px solid #000087; border-radius: 0; background: #fff;
    cursor: pointer;
}
.kg-careers-list .wpcf7-acceptance input[type="checkbox"]:checked {
    background: #000087 url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M5%2012l4%204L19%207%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") no-repeat center;
    background-size: 14px;
}

.kg-careers-list .wpcf7-submit {
    display: block; width: 100%; padding: 16px 38px;
    background: #00ffff; color: #000087; border: 0; box-shadow: none;
    font-size: 13px; font-weight: 700; letter-spacing: 0.18em;
    text-transform: uppercase; text-align: center; line-height: 1;
    cursor: pointer; border-radius: 0;
    transition: background .2s ease, color .2s ease; margin-top: 24px;
}
.kg-careers-list .wpcf7-submit:hover { background: #000087; color: #00ffff; }

@media (max-width: 768px) {
    .kg-career-form-row { grid-template-columns: 1fr; gap: 20px; }
}

.kg-careers-list__item-body strong,
.kg-careers-list__item-body b,
.kg-careers-list__item-intro strong,
.kg-careers-list__item-intro b,
.kg-careers-list__item-description strong,
.kg-careers-list__item-description b {
    font-weight: 500;
}

/* === KG CAREERS LIST CHEVRON START === */
.kg-careers-list__item-body ul,
.kg-careers-list__item-description ul,
.kg-careers-list__item-intro ul {
    list-style: none;
    margin-left: 20px;
    padding-left: 18px;
}
.kg-careers-list__item-body ul > li,
.kg-careers-list__item-description ul > li,
.kg-careers-list__item-intro ul > li {
    position: relative;
    list-style: none;
}
.kg-careers-list__item-body ul > li::before,
.kg-careers-list__item-description ul > li::before,
.kg-careers-list__item-intro ul > li::before {
    content: ">";
    position: absolute;
    left: -18px;
    color: inherit;
}
/* === KG CAREERS LIST CHEVRON END === */

/* === KG CAREERS FORM TITLE SPACE START === */
.kg-careers-list__item-form-title {
    margin-top: 64px;
}
/* === KG CAREERS FORM TITLE SPACE END === */

/* === KG CAREERS PAGE CSS (transferred from Elementor page 1256) END === */


/* === KG EVENTS UPCOMING + SAVE-THE-DATE META TYPO OVERRIDE START === */
/* Date + location in meta header of Upcoming Event & Save the Date widgets,
   Events archive template. */
body.post-type-archive-kg_event .kg-events-upcoming-card__date,
body.post-type-archive-kg_event .kg-events-upcoming-card__loc,
body.post-type-archive-kg_event .kg-events-std-row__date,
body.post-type-archive-kg_event .kg-events-std-row__loc {
    font-weight: 400 !important;
    font-size: 12px !important;
    line-height: 22px !important;
    letter-spacing: 0 !important;
}
body.post-type-archive-kg_event .kg-events-upcoming-card__loc,
body.post-type-archive-kg_event .kg-events-std-row__loc {
    text-align: right !important;
}
/* === KG EVENTS UPCOMING + SAVE-THE-DATE META TYPO OVERRIDE END === */


/* === KG SAVE THE DATE PAGE CSS (transferred from Elementor page 3528) START === */
/* Moved out of Page Settings > Advanced > Custom CSS so it is version-controlled.
   `selector` was replaced by `body.elementor-page-3528` (Elementor's resolution).
   NB: a widget-level custom CSS (elementor-element-b2f7648) still lives in Elementor. */
/* ============================================================
 * SAVE THE DATE — Page base CSS
 * Editable depuis Page Settings → Advanced → Custom CSS
 * ============================================================ */

/* === Event card === */
body.elementor-page-3528 .kg-savedate-event-block {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 32px;
    align-items: start;
    margin: 0 0 48px 0;
    padding: 0 0 32px 0;
    border-bottom: 1px solid rgba(0, 0, 135, .15);
    color: #000087;
}
body.elementor-page-3528 .kg-savedate-event-block__img {
    display: block;
    overflow: hidden;
    border-radius: 4px;
}
body.elementor-page-3528 .kg-savedate-event-block__img img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform .3s ease;
}
body.elementor-page-3528 .kg-savedate-event-block__img:hover img {
    transform: none;
}
body.elementor-page-3528 .kg-savedate-event-block__meta {
    align-self: center;
}
body.elementor-page-3528 .kg-savedate-event-block__title {
    font-size: 28px;
    line-height: 1.25;
    font-weight: 700;
    margin: 0 0 16px 0;
    color: #000087;
}
body.elementor-page-3528 .kg-savedate-event-block__title a {
    color: inherit;
    text-decoration: none;
}
body.elementor-page-3528 .kg-savedate-event-block__title a:hover {
    color: #00006b;
    text-decoration: underline;
}
body.elementor-page-3528 .kg-savedate-event-block__when,
body.elementor-page-3528 .kg-savedate-event-block__where {
    margin: 6px 0;
    font-size: 16px;
    color: #000087;
}

/* === Form === */
body.elementor-page-3528 .kg-savedate {
    color: #000087;
}
body.elementor-page-3528 .wpcf7-form {
    display: block;
}
body.elementor-page-3528 .kg-savedate-event-context {
    display: none;
}
body.elementor-page-3528 .kg-savedate-mandatory-hint {
    font-size: 13px;
    color: #000087;
    font-weight: 400;
    margin: 0 0 24px 0;
}

/* GRID 3-col rows */
body.elementor-page-3528 .kg-savedate-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 32px;
    margin-bottom: 32px;
}
body.elementor-page-3528 .kg-savedate-field {
    display: block;
    width: 100%;
}
body.elementor-page-3528 .kg-savedate-field .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

/* Thin underline-only inputs (Symfony style) */
body.elementor-page-3528 .kg-savedate input[type="text"],
body.elementor-page-3528 .kg-savedate input[type="email"],
body.elementor-page-3528 .kg-savedate input[type="tel"] {
    display: block;
    width: 100%;
    padding: 8px 0;
    border: none;
    border-bottom: 1px solid rgba(0, 0, 135, .35);
    font-size: 16px;
    color: #000087;
    background: transparent;
    border-radius: 0;
    outline: none;
    font-weight: 400;
    box-sizing: border-box;
}
body.elementor-page-3528 .kg-savedate input[type="text"]::placeholder,
body.elementor-page-3528 .kg-savedate input[type="email"]::placeholder,
body.elementor-page-3528 .kg-savedate input[type="tel"]::placeholder {
    color: #000087;
    opacity: 0.65;
}
body.elementor-page-3528 .kg-savedate input[type="text"]:focus,
body.elementor-page-3528 .kg-savedate input[type="email"]:focus,
body.elementor-page-3528 .kg-savedate input[type="tel"]:focus {
    border-bottom-color: #000087;
    border-bottom-width: 2px;
    padding-bottom: 7px;
}

/* Validation error messages — petit espace sous le champ */
/* Privacy acceptance */
body.elementor-page-3528 .kg-savedate .wpcf7-acceptance {
    display: block;
    margin: 8px 0 0 0;
    color: #000087;
}
body.elementor-page-3528 .kg-savedate .wpcf7-acceptance .wpcf7-list-item {
    margin: 0;
}
body.elementor-page-3528 .kg-savedate .wpcf7-acceptance label {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 400;
    color: #000087;
    cursor: pointer;
}
body.elementor-page-3528 .kg-savedate .wpcf7-acceptance input[type="checkbox"] {
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    margin: 2px 0 0 0;
    accent-color: #000087;
    cursor: pointer;
}

/* Submit button */
body.elementor-page-3528 .kg-savedate .wpcf7-submit {
    display: block;
    width: 100%;
    padding: 18px 28px;
    background: #01ffff;
    color: #000087;
    border: none;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    cursor: pointer;
    border-radius: 0;
    transition: background-color .2s;
    margin-top: 32px;
}
body.elementor-page-3528 .kg-savedate .wpcf7-submit:hover {
    background: #00e0e0;
}

/* CF7 response message */
/* Cloudflare Turnstile widget */
body.elementor-page-3528 .kg-savedate .cf7-cf-turnstile {
    margin: 16px 0;
}

/* Responsive */
@media (max-width: 900px) {
    body.elementor-page-3528 .kg-savedate-row {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
    }
}
@media (max-width: 720px) {
    body.elementor-page-3528 .kg-savedate-event-block {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 600px) {
    body.elementor-page-3528 .kg-savedate-row {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-bottom: 20px;
    }
}

/* === KG SAVE THE DATE PAGE CSS (transferred from Elementor page 3528) END === */


/* === KG SAVE THE DATE FORM — CAREERS STYLE (3-col) START === */
/* Mirrors the Careers form look; keeps the widget's 3-column row layout.
   !important to beat the Elementor widget Style-tab rules (.elementor-element-...). */
body.elementor-page-3528 .kg-savedate__form-wrap input[type="text"],
body.elementor-page-3528 .kg-savedate__form-wrap input[type="email"],
body.elementor-page-3528 .kg-savedate__form-wrap input[type="tel"] {
    padding: 11px 0 8px 16px !important;
    border: none !important; border-bottom: 1px solid #000087 !important;
    font-family: 'Figtree', sans-serif !important;
    font-size: 14px !important; font-weight: 300 !important; line-height: 21px !important; letter-spacing: 1.4px !important;
    color: #000087 !important; background: transparent !important; border-radius: 0 !important; outline: none !important; box-shadow: none !important;
}
body.elementor-page-3528 .kg-savedate__form-wrap input[type="text"]::placeholder,
body.elementor-page-3528 .kg-savedate__form-wrap input[type="email"]::placeholder,
body.elementor-page-3528 .kg-savedate__form-wrap input[type="tel"]::placeholder { color: #000087 !important; opacity: 1 !important; }
body.elementor-page-3528 .kg-savedate__form-wrap input[type="text"]:focus,
body.elementor-page-3528 .kg-savedate__form-wrap input[type="email"]:focus,
body.elementor-page-3528 .kg-savedate__form-wrap input[type="tel"]:focus { border-bottom: 1px solid #000087 !important; padding-bottom: 8px !important; box-shadow: none !important; }
body.elementor-page-3528 .kg-savedate__form-wrap .wpcf7-form-control-wrap { position: relative; }
body.elementor-page-3528 .kg-savedate__form-wrap .wpcf7-not-valid-tip { position: absolute !important; top: 100%; left: 0; margin-top: 6px; z-index: 2; font-size: 12px !important; line-height: 1.2 !important; }
body.elementor-page-3528 .kg-savedate__form-wrap .wpcf7-acceptance label { display: flex !important; align-items: flex-start !important; gap: 14px !important; font-size: 14px !important; line-height: 1.4 !important; color: #000087 !important; cursor: pointer; }
body.elementor-page-3528 .kg-savedate__form-wrap .wpcf7-acceptance input[type="checkbox"] { -webkit-appearance: none !important; appearance: none !important; flex: 0 0 22px !important; width: 22px !important; height: 22px !important; margin: 2px 0 0 0 !important; border: 1px solid #000087 !important; border-radius: 0 !important; background: #fff !important; cursor: pointer; }
body.elementor-page-3528 .kg-savedate__form-wrap .wpcf7-acceptance input[type="checkbox"]:checked { background: #000087 url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M5%2012l4%204L19%207%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") no-repeat center !important; background-size: 14px !important; }
body.elementor-page-3528 .kg-savedate__form-wrap .wpcf7-submit {
    display: block !important; width: calc((100% - 72px) / 3) !important; margin-left: auto !important; margin-right: 0 !important; padding: 16px 38px !important;
    background: #00ffff !important; color: #000087 !important; border: 0 !important; box-shadow: none !important;
    font-size: 13px !important; font-weight: 700 !important; letter-spacing: 0.18em !important;
    text-transform: uppercase !important; text-align: center !important; line-height: 1 !important;
    cursor: pointer; border-radius: 0 !important;
    transition: background .2s ease, color .2s ease; margin-top: 24px !important;
}
body.elementor-page-3528 .kg-savedate__form-wrap .wpcf7-submit:hover { background: #000087 !important; color: #00ffff !important; }
/* === KG SAVE THE DATE FORM — CAREERS STYLE (3-col) END === */


/* === KG SAVE THE DATE — FINISH LAYOUT (legal 2 cols left + verifier 1 col right) START === */
body.elementor-page-3528 .kg-savedate__form-wrap .kg-savedate-finish {
    display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 36px;
    align-items: start; margin: 24px 0;
}
body.elementor-page-3528 .kg-savedate__form-wrap .kg-savedate-finish-legal { grid-column: 1 / 3; }
body.elementor-page-3528 .kg-savedate__form-wrap .kg-savedate-finish-verify { grid-column: 3 / 4; }
body.elementor-page-3528 .kg-savedate__form-wrap .kg-savedate-row { column-gap: 36px !important; }
body.elementor-page-3528 .kg-savedate__form-wrap .kg-savedate-finish .wpcf7-acceptance { margin: 0 !important; }
body.elementor-page-3528 .kg-savedate__form-wrap .kg-savedate-finish .cf7-cf-turnstile { margin: 0 !important; }
/* === KG SAVE THE DATE — FINISH LAYOUT (legal 2 cols left + verifier 1 col right) END === */


/* === KG SAVE THE DATE — MOBILE SINGLE COLUMN START === */
@media (max-width: 768px) {
    body.elementor-page-3528 .kg-savedate__form-wrap .kg-savedate-row { grid-template-columns: 1fr !important; }
    body.elementor-page-3528 .kg-savedate__form-wrap .kg-savedate-finish { grid-template-columns: 1fr !important; }
    body.elementor-page-3528 .kg-savedate__form-wrap .kg-savedate-finish-legal,
    body.elementor-page-3528 .kg-savedate__form-wrap .kg-savedate-finish-verify { grid-column: auto !important; }
    body.elementor-page-3528 .kg-savedate__form-wrap .wpcf7-submit { width: 100% !important; margin-left: 0 !important; }
}
/* === KG SAVE THE DATE — MOBILE SINGLE COLUMN END === */


/* === KG SAVE THE DATE — EVENT CARD ON 3-COL GRID START === */
/* Align the Save the date Event Card to the form's 3-column grid:
   image = 1 column, event info = 2 columns, 36px gap.
   !important to beat the widget's inline 280px/1fr rule. */
body.elementor-page-3528 .kg-savedate-event-block {
    grid-template-columns: 1fr 1fr 1fr !important;
    gap: 36px !important;
}
body.elementor-page-3528 .kg-savedate-event-block__img { grid-column: 1 / 2 !important; }
body.elementor-page-3528 .kg-savedate-event-block__meta { grid-column: 2 / 4 !important; }
@media (max-width: 768px) {
    body.elementor-page-3528 .kg-savedate-event-block { grid-template-columns: 1fr !important; }
    body.elementor-page-3528 .kg-savedate-event-block__img,
    body.elementor-page-3528 .kg-savedate-event-block__meta { grid-column: auto !important; }
}
body.elementor-page-3528 .kg-savedate-event-block__title,
body.elementor-page-3528 .kg-savedate-event-block__title a {
    font-size: 18px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
    color: #000087 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}
/* === KG SAVE THE DATE — EVENT CARD ON 3-COL GRID END === */


/* === KG SAVE THE DATE — E38A2BF TABLET GAP 0 START === */
@media (max-width: 1024px) {
    body.elementor-page-3528 .e-e38a2bf-9c6c2aa { gap: 0px !important; }
}
/* === KG SAVE THE DATE — E38A2BF TABLET GAP 0 END === */


/* === KG NEWS ARCHIVE — FILTER TABLET MARGIN START === */
@media (max-width: 1024px) {
    body.post-type-archive-kg_news .elementor-element-8b8e68f,
    body.tax-kg_news_category .elementor-element-8b8e68f {
        margin-top: 30px !important;
        margin-bottom: 30px !important;
    }
}
/* === KG NEWS ARCHIVE — FILTER TABLET MARGIN END === */


/* === KG LEGAL PAGES — STRONG WEIGHT 500 START === */
/* Cookie policy (666), Privacy notice (663), Terms and conditions (660), Legal notice (657) */
body.page-id-666 strong,
body.page-id-663 strong,
body.page-id-660 strong,
body.page-id-657 strong {
    font-weight: 600 !important;
}
/* === KG LEGAL PAGES — STRONG WEIGHT 500 END === */


/* === KG LEGAL PAGES — UL MARGIN-BOTTOM START === */
/* Slightly reduce space below lists in legal page content (was 1.5em = 21px). */
.kg-static-legal__body ul { margin-bottom: 28px; }
.kg-static-legal__body ul > li:not(:last-child) { margin-bottom: 8px; }
/* === KG LEGAL PAGES — UL MARGIN-BOTTOM END === */

/* === KG LEGAL PAGES — H3 MARGIN-BOTTOM === */
.kg-static-legal__body h3 { margin-bottom: 8px; }


/* === KG LEGAL PAGES — NUMBERED LIST START === */
/* Numbered (ol) lists in legal content: space between items, no outer indent,
   wider gap between the number and the paragraph (CSS counter). */
.kg-static-legal__body ol {
    list-style: none;
    counter-reset: kglegal-ol;
    margin-left: 0;
    padding-left: 0;
}
.kg-static-legal__body ol > li {
    counter-increment: kglegal-ol;
    position: relative;
    padding-left: 28px;
    margin-bottom: 14px;
}
.kg-static-legal__body ol > li::before {
    content: counter(kglegal-ol) ".";
    position: absolute;
    left: 0;
    top: 0;
}
/* === KG LEGAL PAGES — NUMBERED LIST END === */


/* === KG AWARD BACK BUTTON START === */
body.single-kg_award .kg-award-single__back {
    appearance: none; -webkit-appearance: none;
    display: block; align-self: stretch; width: 100%; box-sizing: border-box; text-align: center;
    margin-top: 0;
    background: #00FFFF; color: #000087;
    border: 0; border-radius: 0; box-shadow: none;
    padding: 16px 38px;
    font-family: 'Figtree', sans-serif;
    font-size: 13px; font-weight: 700; letter-spacing: 0.18em;
    text-transform: uppercase; text-decoration: none; line-height: 1;
    cursor: pointer; transition: background .3s ease, color .3s ease;
}
body.single-kg_award .kg-award-single__back:hover { background: #000087; color: #00FFFF; text-decoration: none; }
body.single-kg_award .kg-award-single__back::before {
    content: "";
    display: inline-block;
    width: 7px; height: 7px;
    border-left: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    margin-right: 14px;
    vertical-align: middle;
    position: relative; top: -1px;
}
/* === KG AWARD BACK BUTTON END === */

/* === KG NEWSLETTER SIGNUP PAGE CSS (mirror of save-the-date 3528 rules) START === */

/* Newsletter pages (EN 3675 / FR 3676 / DE 3677) share the .kg-savedate-* markup
   with the save-the-date page 3528. ALL body.elementor-page-3528 rules below are
   mirrored verbatim with the newsletter scope, so both stay visually identical.
   If you edit the 3528 rules, please mirror the change here (or grep this block). */

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 32px;
    align-items: start;
    margin: 0 0 48px 0;
    padding: 0 0 32px 0;
    border-bottom: 1px solid rgba(0, 0, 135, .15);
    color: #000087;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__img {
    display: block;
    overflow: hidden;
    border-radius: 4px;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__img img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform .3s ease;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__img:hover img {
    transform: none;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__meta {
    align-self: center;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__title {
    font-size: 28px;
    line-height: 1.25;
    font-weight: 700;
    margin: 0 0 16px 0;
    color: #000087;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__title a {
    color: inherit;
    text-decoration: none;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__title a:hover {
    color: #00006b;
    text-decoration: underline;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__when, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__where {
    margin: 6px 0;
    font-size: 16px;
    color: #000087;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate {
    color: #000087;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .wpcf7-form {
    display: block;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-context {
    display: none;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-mandatory-hint {
    font-size: 13px;
    color: #000087;
    font-weight: 400;
    margin: 0 0 24px 0;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 32px;
    margin-bottom: 32px;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-field {
    display: block;
    width: 100%;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-field .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate input[type="text"], :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate input[type="email"], :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate input[type="tel"] {
    display: block;
    width: 100%;
    padding: 8px 0;
    border: none;
    border-bottom: 1px solid rgba(0, 0, 135, .35);
    font-size: 16px;
    color: #000087;
    background: transparent;
    border-radius: 0;
    outline: none;
    font-weight: 400;
    box-sizing: border-box;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate input[type="text"]::placeholder, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate input[type="email"]::placeholder, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate input[type="tel"]::placeholder {
    color: #000087;
    opacity: 0.65;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate input[type="text"]:focus, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate input[type="email"]:focus, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate input[type="tel"]:focus {
    border-bottom-color: #000087;
    border-bottom-width: 2px;
    padding-bottom: 7px;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate .wpcf7-acceptance {
    display: block;
    margin: 8px 0 0 0;
    color: #000087;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate .wpcf7-acceptance .wpcf7-list-item {
    margin: 0;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate .wpcf7-acceptance label {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 400;
    color: #000087;
    cursor: pointer;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate .wpcf7-acceptance input[type="checkbox"] {
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    margin: 2px 0 0 0;
    accent-color: #000087;
    cursor: pointer;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate .wpcf7-submit {
    display: block;
    width: 100%;
    padding: 18px 28px;
    background: #01ffff;
    color: #000087;
    border: none;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    cursor: pointer;
    border-radius: 0;
    transition: background-color .2s;
    margin-top: 32px;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate .wpcf7-submit:hover {
    background: #00e0e0;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate .cf7-cf-turnstile {
    margin: 16px 0;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap input[type="text"], :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap input[type="email"], :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap input[type="tel"] {
    padding: 11px 0 8px 16px !important;
    border: none !important;
    border-bottom: 1px solid #000087 !important;
    font-family: 'Figtree', sans-serif !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 21px !important;
    letter-spacing: 1.4px !important;
    color: #000087 !important;
    background: transparent !important;
    border-radius: 0 !important;
    outline: none !important;
    box-shadow: none !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap input[type="text"]::placeholder, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap input[type="email"]::placeholder, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap input[type="tel"]::placeholder {
    color: #000087 !important;
    opacity: 1 !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap input[type="text"]:focus, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap input[type="email"]:focus, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap input[type="tel"]:focus {
    border-bottom: 1px solid #000087 !important;
    padding-bottom: 8px !important;
    box-shadow: none !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .wpcf7-form-control-wrap {
    position: relative;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .wpcf7-not-valid-tip {
    position: absolute !important;
    top: 100%;
    left: 0;
    margin-top: 6px;
    z-index: 2;
    font-size: 12px !important;
    line-height: 1.2 !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .wpcf7-acceptance label {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    color: #000087 !important;
    cursor: pointer;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .wpcf7-acceptance input[type="checkbox"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    flex: 0 0 22px !important;
    width: 22px !important;
    height: 22px !important;
    margin: 2px 0 0 0 !important;
    border: 1px solid #000087 !important;
    border-radius: 0 !important;
    background: #fff !important;
    cursor: pointer;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .wpcf7-acceptance input[type="checkbox"]:checked {
    background: #000087 url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M5%2012l4%204L19%207%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") no-repeat center !important;
    background-size: 14px !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .wpcf7-submit {
    display: block !important;
    width: calc((100% - 72px) / 3) !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    padding: 16px 38px !important;
    background: #00ffff !important;
    color: #000087 !important;
    border: 0 !important;
    box-shadow: none !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    text-align: center !important;
    line-height: 1 !important;
    cursor: pointer;
    border-radius: 0 !important;
    transition: background .2s ease, color .2s ease;
    margin-top: 24px !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .wpcf7-submit:hover {
    background: #000087 !important;
    color: #00ffff !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 36px;
    align-items: start;
    margin: 24px 0;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish-legal {
    grid-column: 1 / 3;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish-verify {
    grid-column: 3 / 4;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-row {
    column-gap: 36px !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish .wpcf7-acceptance {
    margin: 0 !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish .cf7-cf-turnstile {
    margin: 0 !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block {
    grid-template-columns: 1fr 1fr 1fr !important;
    gap: 36px !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__img {
    grid-column: 1 / 2 !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__meta {
    grid-column: 2 / 4 !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__title, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__title a {
    font-size: 18px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
    color: #000087 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}


@media (max-width: 720px) {
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block {
    grid-template-columns: 1fr;
}
}

@media (max-width: 600px) {
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-row {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 20px;
}
}

@media (max-width: 768px) {
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-row {
    grid-template-columns: 1fr !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish {
    grid-template-columns: 1fr !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish-legal, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish-verify {
    grid-column: auto !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block {
    grid-template-columns: 1fr !important;
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__img, :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-event-block__meta {
    grid-column: auto !important;
}
}

:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .wpcf7-submit {
    width: calc(50% - 18px) !important;
    margin-left: auto !important;
    margin-right: 0 !important;
}
@media (max-width: 900px) {
    :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .wpcf7-submit {
        width: 100% !important;
        margin-left: 0 !important;
    }
}

@media (max-width: 1024px) {
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .e-e38a2bf-9c6c2aa {
    gap: 0px !important;
}
}

/* === Newsletter — Expertise multi-select grid === */
/* Look aligné sur "Languages spoken" du form career (page 1256) :
   liste verticale, label à gauche / checkbox carrée custom 22px à droite,
   coche SVG blanche sur fond #000087 au checked. */
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-expertises {
    margin: 32px 0 24px 0;
    max-width: 520px;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-expertises__label {
    font-size: 14px;
    color: #000087;
    margin: 0 0 12px 0;
    padding-left: 16px;
    font-weight: 500;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-expertises .wpcf7-checkbox {
    display: flex;
    flex-direction: column;
    gap: 0;
    border-bottom: 1px solid #000087;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-expertises .wpcf7-list-item {
    margin: 0 !important;
    width: 100%;
    display: block;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-expertises .wpcf7-list-item label {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    gap: 8px;
    padding: 6px 0 6px 16px;
    cursor: pointer;
    color: #000087;
    font-family: 'Figtree', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 21px;
    letter-spacing: 1.4px;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-expertises .wpcf7-list-item input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    width: 22px;
    height: 22px;
    margin: 0;
    flex: 0 0 auto;
    border: 1px solid #000087;
    border-radius: 0;
    background: #fff;
    cursor: pointer;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-expertises .wpcf7-list-item input[type="checkbox"]:checked {
    background: #000087 url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M5%2012l4%204L19%207%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") no-repeat center;
    background-size: 14px;
}


/* Variante newsletter : finish 2 colonnes — expertises à gauche,
   legal (acceptance) + turnstile empilés à droite, submit dessous. */
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish--nl {
    grid-template-columns: 1fr 1fr;
    gap: 36px;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish--nl .kg-savedate-finish-left,
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish--nl .kg-savedate-finish-right {
    grid-column: auto;
    min-width: 0;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish--nl .kg-savedate-finish-right {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-self: stretch;
    gap: 24px;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish--nl .kg-savedate-finish-legal,
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish--nl .kg-savedate-finish-verify {
    grid-column: auto;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish--nl .kg-savedate-expertises {
    margin: 0;
}
@media (max-width: 900px) {
    :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate__form-wrap .kg-savedate-finish--nl {
        grid-template-columns: 1fr !important;
    }
}

/* === Newsletter — Sidebar info block (under form) === */
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar {
	display: block;
	margin: 64px 0 0 0;
	padding: 32px 0 0 0;
	border-top: 1px solid rgba(0, 0, 135, .15);
	color: #000087;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar__logo {
	margin-bottom: 24px;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar__logo img {
	max-width: 200px;
	height: auto;
	display: block;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar__address,
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar__registry {
	font-size: 14px;
	line-height: 1.6;
	margin: 0 0 20px 0;
	color: #000087;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar__address strong {
	font-weight: 700;
	display: block;
	margin-bottom: 4px;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar__links {
	list-style: none;
	padding: 0;
	margin: 0 0 24px 0;
	display: flex;
	flex-wrap: wrap;
	gap: 16px 24px;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar__links li { margin: 0; }
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar__links a {
	font-size: 14px;
	font-weight: 600;
	color: #000087;
	text-decoration: none;
	transition: color .2s;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar__links a:hover {
	color: #00006b;
	text-decoration: underline;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar__contact-btn {
	display: inline-block;
	padding: 14px 32px;
	background: #01ffff;
	color: #000087 !important;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	text-decoration: none;
	font-size: 14px;
	transition: background-color .2s;
}
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677) .kg-savedate-sidebar__contact-btn:hover {
	background: #00e0e0;
}

/* === KG NEWSLETTER SIGNUP PAGE CSS (mirror of save-the-date 3528 rules) END === */



/* === KG CONTACT BLOCK FULL (page Contact — "Our office") START === */
/* Parité Symfony /en/contact `.section-side-info` (style.css prod) :
   lignes 12px navy Figtree, icônes 16px (paths Symfony exacts, currentColor)
   devant chaque entrée — placeholder invisible sur les lignes d'adresse
   secondaires pour l'alignement (pattern Symfony : svg opacity 0). */
.kg-contact-block--full,
.kg-contact-block--full * {
    text-transform: none !important;
    letter-spacing: 0 !important;
}
.kg-contact-block--full {
    color: #000087;
    font-family: 'Figtree', sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.6;
    margin-top: 8px;
}
.kg-contact-block--full .kg-contact-block__address {
    font-style: normal;
    margin: 0 0 10px 0;
}
.kg-contact-block--full .kg-contact-block__line,
.kg-contact-block--full .kg-contact-block__item,
.kg-contact-block--full .kg-contact-block__legal-line {
    display: flex;
    align-items: center;
    gap: 0;
    color: #000087;
    font-size: 12px;
    margin-bottom: 5px;
}
/* Espace entre les deux groupes d'adresse (rue+ville / BP+pays) — <br><br> Symfony */
.kg-contact-block--full .kg-contact-block__line--gap {
    margin-top: 14px;
}
.kg-contact-block--full .kg-contact-block__li-icon {
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    padding-right: 0;
    margin-right: 3px;
    color: #000087;
}
.kg-contact-block--full .kg-contact-block__li-icon--blank {
    visibility: hidden;
}
.kg-contact-block--full .kg-contact-block__contact {
    list-style: none;
    margin: 0 0 10px 0;
    padding: 0;
}
.kg-contact-block--full .kg-contact-block__item a,
.kg-contact-block--full .kg-contact-block__item a:visited {
    color: inherit;
    text-decoration: none;
    /* Neutralise la typo des liens du kit Elementor / Astra :
       les <a> doivent suivre le 12px du bloc, pas la taille globale. */
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
    text-transform: none !important;
}
.kg-contact-block--full .kg-contact-block__item a,
.kg-contact-block--full .kg-contact-block__item a:visited,
.kg-contact-block--full .kg-contact-block__item a:hover,
.kg-contact-block--full .kg-contact-block__item a:focus {
    text-decoration: none !important;
}
.kg-contact-block--full .kg-contact-block__label {
    font-weight: 400;
    margin-right: 3px;
}
.kg-contact-block--full .kg-contact-block__legal {
    margin-top: 14px;
}
/* === KG CONTACT BLOCK FULL (page Contact — "Our office") END === */


/* === KG HOME ACCORDION TITLE LOWERCASE START === */
body.home .kg-avocat-accordion__summary,
body.home .kg-avocat-accordion__label {
    text-transform: none !important;
    letter-spacing: 0 !important;
}
/* === KG HOME ACCORDION TITLE LOWERCASE END === */


/* === KG HOME ACCORDION CONTENT TYPO START === */
body.home .kg-avocat-accordion__content,
body.home .kg-avocat-accordion__content p {
    font-size: 16px !important;
    font-weight: 300 !important;
    line-height: 22px !important;
    color: #000087 !important;
}
body.home .kg-avocat-accordion__content h4 {
    font-size: 16px !important;
}
@media (max-width: 1024px) {
    body.home .kg-avocat-accordion__content,
    body.home .kg-avocat-accordion__content p,
    body.home .kg-avocat-accordion__content h4 {
        font-size: 14px !important;
        line-height: 18px !important;
    }
}
/* === KG HOME ACCORDION CONTENT TYPO END === */


/* === KG CONTACT PAGE LINKS NO UNDERLINE START === */
/* Pages Contact (EN 650 / FR 651 / DE 652) : aucun lien souligné,
   dans tous les états — parité Symfony (liens nus, couleur navy). */
:is(body.elementor-page-650, body.elementor-page-651, body.elementor-page-652) .elementor a,
:is(body.elementor-page-650, body.elementor-page-651, body.elementor-page-652) .elementor a:visited,
:is(body.elementor-page-650, body.elementor-page-651, body.elementor-page-652) .elementor a:hover,
:is(body.elementor-page-650, body.elementor-page-651, body.elementor-page-652) .elementor a:focus {
    text-decoration: none !important;
}
/* === KG CONTACT PAGE LINKS NO UNDERLINE END === */


/* === KG HOME PAGE CSS (transferred from Elementor page 282) START === */
/* === KG EVENTS MORE-BTN (match Read more news) === */
body.elementor-page-282 .kg-events-archive-grid__actions {
	display: flex !important;
	justify-content: flex-end !important;
	margin: 32px 0 24px !important;
	width: calc(33.333% - 24px) !important;
	margin-left: auto !important;
}
body.elementor-page-282 a.kg-events-archive-grid__more-btn,
body.elementor-page-282 .kg-events-archive-grid__more-btn {
	appearance: none !important;
	display: block !important;
	width: 100% !important;
	background: #00FFFF !important;
	color: #000087 !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 16px 38px !important;
	font-family: "Figtree", sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	text-align: center !important;
	line-height: 1 !important;
	cursor: pointer !important;
	transition: background .2s ease, color .2s ease !important;
}
body.elementor-page-282 a.kg-events-archive-grid__more-btn:hover,
body.elementor-page-282 .kg-events-archive-grid__more-btn:hover {
	background: #000087 !important;
	color: #00FFFF !important;
}
@media (max-width: 900px) {
	body.elementor-page-282 .kg-events-archive-grid__actions { width: 100% !important; }
}
/* === KG EVENTS MORE-BTN END === */
/* === KG HOME PAGE CSS (transferred from Elementor page 282) END === */


/* === KG NEWS CARD EXCERPT — TABLET TYPO START === */
@media (max-width: 1024px) {
    html body.post-type-archive-kg_news .kg-news-archive-grid .kg-news-archive-card__excerpt,
    html body.home .kg-news-archive-grid .kg-news-archive-card__excerpt {
        font-size: 14px !important;
        line-height: 18px !important;
    }
}
/* === KG NEWS CARD EXCERPT — TABLET TYPO END === */


/* === KG NEWS CARD TITLE — TABLET TYPO START === */
@media (max-width: 1024px) {
    html body.post-type-archive-kg_news .kg-news-archive-grid h3.kg-news-archive-card__title,
    html body.tax-kg_news_category .kg-news-archive-grid h3.kg-news-archive-card__title,
    html body.home .kg-news-archive-grid h3.kg-news-archive-card__title {
        font-size: 16px !important;
        line-height: 19px !important;
    }
}
/* === KG NEWS CARD TITLE — TABLET TYPO END === */


/* === KG HOME ACCORDION MARGIN-BOTTOM START === */
body.home .kg-avocat-accordion {
    margin-bottom: 0 !important;
}
/* === KG HOME ACCORDION MARGIN-BOTTOM END === */


/* === KG AWARD — E-ED9E4C6 TABLET GAP 0 START === */
@media (max-width: 1024px) {
    body.single-kg_award .e-ed9e4c6-f63efc2 {
        gap: 0px !important;
    }
}
/* === KG AWARD — E-ED9E4C6 TABLET GAP 0 END === */


/* === KG SINGLE AVOCAT — RELATED NEWS NO IMAGE START === */
body.single-kg_avocat .kg-avocat-related-news__img {
    display: none !important;
}
/* === KG SINGLE AVOCAT — RELATED NEWS NO IMAGE END === */


/* === KG NEWSLETTER — EXPERTISE CHOICES CAPITALIZE START === */
:is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677)
    .kg-savedate-expertises .wpcf7-list-item-label {
        text-transform: none !important;
}
/* === KG NEWSLETTER — EXPERTISE CHOICES CAPITALIZE END === */


/* === KG NEWSLETTER — EXPERTISE MOBILE FULL WIDTH START === */
@media (max-width: 1024px) {
    :is(body.elementor-page-3675, body.elementor-page-3676, body.elementor-page-3677)
        .kg-savedate-expertises {
            max-width: 100% !important;
            width: 100% !important;
    }
}
/* === KG NEWSLETTER — EXPERTISE MOBILE FULL WIDTH END === */

/* === COOKIEBOT — Reset text-transform imposé par le site === */
#CybotCookiebotDialog button,
#CybotCookiebotDialogBodyButtonDecline,
#CybotCookiebotDialogBodyLevelButtonLevelOptinDeclineAll,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection,
#CybotCookiebotDialogBodyLevelButtonCustomize,
#CybotCookiebotDialogFooter button,
.CybotCookiebotDialogBodyButton,
#CookiebotWidget button,
#CookiebotWidget .CookiebotWidget-btn {
    text-transform: none !important;
    letter-spacing: normal !important;
}
/* === COOKIEBOT END === */




/* === HOME — About us / Values — Read more btn 100% mobile === */
@media (max-width: 767px) {
	.elementor-282 .kg-accordion-readmore {
		width: 100%;
		text-align: center;
	}
}
/* === END === */
