/**
* Theme Name: Kinsey Child
* Description: This is a child theme of Kinsey, generated by Merlin WP.
* Author: <a href="https://artemsemkin.com">Artem Semkin</a>
* Template: kinsey
* Version: 2.01
*/

/* Carte entière */
.doctor-card{
  transition: box-shadow .25s ease;
  cursor: pointer;
}
.doctor-card:hover{
  box-shadow: 0 18px 40px rgba(0,0,0,.12);
}

/* Zone image (le cadre) */
.doctor-card .swatch__figure{
  position: relative;
  overflow: hidden;
  border-radius: 18px; /* ajuste selon ton design */
}

/* Zoom léger de l'image */
.doctor-card img.of-contain{
  transition: transform .45s ease;
  transform: translateZ(0) scale(1);
  will-change: transform;
}

.doctor-card:hover img.of-contain{
  transform: translateZ(0) scale(1.10); /* <- au lieu de 1.04 */
}

/* Cerclage bleu animé */
.doctor-card .swatch section-content{
  content:"";
  position:absolute;
  inset: 10px;              /* distance du bord */
  border-radius: 16px;      /* doit être un peu < swatch__figure */
  border: 5px solid #3D6BE3;
  opacity: 0;
  transform: scale(.985);
  transition: opacity .2s ease, transform .35s ease;
  pointer-events: none;
}

.doctor-card:hover .swatch section-content{
  opacity: 1;
  transform: scale(1);
  animation: ringPulse .9s ease-out;
}

@keyframes ringPulse{
  0%   { box-shadow: 0 0 0 0 rgba(61,107,227,.35); }
  70%  { box-shadow: 0 0 0 12px rgba(61,107,227,0); }
  100% { box-shadow: 0 0 0 0 rgba(61,107,227,0); }
}


/* Texte (nom + spécialité) en bleu au survol */
.doctor-card:hover h3,
.doctor-card:hover h3 *{
  color: #3D6BE3 !important;
  transition: color .25s ease;
}


/* LIQUID GLASS ACCUEIL */

.whitebtn .button__title {
    color:white!important;
}

.whitebtn .button__icon_before {
    color:white!important;
}

.whitebtn .knz-arrow-right{
    color:white!important;
}

.liquidglasselement {
    position: relative;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(9px) saturate(160%) brightness(1.05);
    -webkit-backdrop-filter: blur(9px) saturate(160%) brightness(1.05);
    border-radius: 20px 0px 0px 20px;
    border-right: 1px solid rgba(255, 255, 255, 0.58);
    padding: 2.2rem;
    color: #f0f0f0;
    box-shadow: none;
    opacity: 0;
    animation: liquidGlassReveal 700ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
    animation-delay: 370ms;
    will-change: opacity, transform, filter;
    transition:
        background 300ms cubic-bezier(0.2, 0, 0, 1),
        border-color 300ms cubic-bezier(0.2, 0, 0, 1),
        box-shadow 300ms cubic-bezier(0.2, 0, 0, 1),
        transform 300ms cubic-bezier(0.2, 0, 0, 1);
}

@keyframes liquidGlassReveal {
    from {
        opacity: 0;
        transform: translateX(-10px);
        filter: blur(2px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
        filter: blur(0);
    }
}

.liquidglasselement::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background:
        linear-gradient(
            to bottom,
            rgba(255, 255, 255, 0.7) 0%,
            rgba(255, 255, 255, 0.15) 26%,
            rgba(255, 255, 255, 0.05) 55%,
            rgba(255, 255, 255, 0) 100%
        );
    opacity: 0.35;
    pointer-events: none;
    mix-blend-mode: overlay;
    z-index: 0;
    transition: opacity 300ms cubic-bezier(0.2, 0, 0, 1);
}

.liquidglasselement::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    z-index: 0;
    box-shadow: 0 0 0 rgba(255, 255, 255, 0) inset;
    /* Transition plus longue pour un effet de "respiration" du glow interne */
    transition: box-shadow 500ms ease-out; 
}

@media screen and (max-width: 768px) {
  .liquidglasselement {
    border-radius: 30px 30px 0px 0px;
    border-right: 0 !important;
  }
}
.liquidglasselement > * {
    position: relative;
    z-index: 1;
}

.text-xl {
    font-weight: 700;
}

/* MENU MOBILE  */

.header__wrapper-menu .menu-item {
	margin:0 auto!important;
	padding:20px!important;
}

.header__wrapper-menu .menu-button-appointment:hover {
	background: transparent !important;
	border-color: transparent !important;
	box-shadow: none !important;
	filter: none !important;
}

.header__wrapper-menu .menu-button-appointment::after {
	opacity: 0 !important;
}

.header__wrapper-menu{
	position: relative!important;
	margin:0 auto!important;
display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;  /* centre verticalement les éléments */
    align-items: center !important;      /* centre horizontalement les éléments */
    text-align: center !important;   
}

.header__wrapper-menu .menu-button-appointment{
	position: relative!important;
	top: 0px!important;
	margin:0 auto!important;
	height: auto;
	font-size: auto!important;
	font-weight: 600;
	padding: 0px;
	   text-align: left !important;   
	border-radius: 20px!important;
	z-index: 9999!important;
	background: transparent!important;
	border: 0px solid transparent !important;
	color: #000!important;
	box-shadow: none!important;
}

.header__wrapper-menu .menu-button-appointment a{
	padding:0px!important;
	margin:0px!important;
}

[data-arts-theme-text=light] .header__wrapper-menu .menu-button-appointment.current-menu-item, .header__wrapper-menu .menu-button-appointment .current-menu-item {
	border: 0px solid transparent!important;
	color: #000!important;
}

[data-arts-theme-text=dark] .header__wrapper-menu .menu-button-appointment.current-menu-item, .header__wrapper-menu .menu-button-appointment .current-menu-item {
	border: 0px solid transparent!important;
	color: #000!important;
}

/* PAGE SERVICES  */

.background-hover__content{
    padding:40px!important;
}


/* SUB MENU OU SOUS MENU  */
@media (min-width: 992px) {

#page-header .menu .sub-menu a{
	cursor:pointer;
}

#page-header .menu .sub-menu > li a{
	min-width:290px;
	padding:15px 24px;
	color:#333!important; /* Couleur de texte adaptée au fond clair */
}

#page-header .menu .sub-menu > li a {
	/* Annulation des bordures non nécessaires pour Liquid Glass */
	border:0px solid white;
	z-index:999999!important;
	border-radius:0px!important;
	/* Style Liquid Glass appliqué au lien du sous-menu */
    background: rgba(255, 255, 255, 0.5)!important;
    backdrop-filter: blur(8px) saturate(180%)!important;
    -webkit-backdrop-filter: blur(8px) saturate(180%)!important;
	border: 1px solid rgba(255, 255, 255, 0.4) !important;
    transition: background 0.3s ease, border-color 0.3s ease, filter 0.3s ease;
}

#page-header .menu .sub-menu > li a::before {
		border:10px solid white!important;
}

#page-header .menu .sub-menu > li a i {
	padding-right:10px;
}

#page-header .menu .sub-menu > li a:hover{
	/* Effet de survol Liquid Glass */
	background: rgba(255, 255, 255, 0.85) !important;
	border-color: rgba(200, 200, 200, 0.5) !important;
	filter: brightness(1.05);
	color:#0070eb!important;
	border-radius:0px!important;
}

#page-header .menu .sub-menu li a:hover:after {
	font-family:'kinsey';
	font-weight:400!important;
	font-size:8px!important;
    content: '\e800'!important;
    position: fixed;
    left: 253px;
    top: auto;
	margin-top:6px;
    transform: translateY(-50%);
    opacity: 0;
    animation: fadeInLeft 0.5s ease forwards;
}

#page-header .sub-menu {
	border-radius:10px!important;
	padding:0px!important;
	color:#000!important;
	z-index:999999!important;
	background:transparent!important; 
	overflow:hidden!important;
	margin-top:0px!important;
	margin-left:350px!important;
	border-bottom:1px solid #fff!important;
    backdrop-filter: blur(8px) saturate(180%);
    -webkit-backdrop-filter: blur(8px) saturate(180%);
}


#page-header #menu-top-menu-1 li:hover > .sub-menu {
    display: block!important;
	transition:none!important;
}

#page-header ul.sub-menu {
    display: block!important;
	transition:none!important;
	-webkit-box-shadow: 0px 1px 17px 2px rgba(0,0,0,0.15)!important;
	box-shadow: 0px 1px 17px 2px rgba(0,0,0,0.15)!important;
	padding-bottom:0px!important;
}


#page-header .menu .sub-menu > li .current-menu-item a{
    content: ''!important;
	opacity: 0!important;
}

#page-header .menu .sub-menu .current-menu-item a{
	/* Style du lien actif (pas Liquid Glass pour le mettre en évidence) */
	background:#0070eb!important;
	color:#fff!important;
}

#page-header .menu .sub-menu .current-menu-item a:hover{
	background:#0070eb!important;
	color:#fff!important;
}

#page-header .menu .sub-menu .current-menu-item a:hover:after {
    content: ''!important;
	opacity: 0;
}

}


/* BOUTON DE LANGUE */
.menu > li:not(.menu-button-appointment) > a {
    position: relative!important;
    display: inline-flex!important;
    align-items: center;
    height: 41px;
    border-radius: 12px!important;
    text-transform: none!important;
    overflow: hidden!important;
    z-index: 9999!important;
    background: rgba(255, 255, 255, 0.3)!important;
    backdrop-filter: blur(5px) saturate(180%)!important;
    -webkit-backdrop-filter: blur(5px) saturate(180%)!important;
    border: 0px solid rgba(255, 255, 255, 0.4) !important;
    transition:
        background 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease,
        filter 0.3s ease;
}

.menu > li:not(.menu-button-appointment):hover > a {
    background: rgba(255, 255, 255, 0.85) !important;
    border-color: rgba(255, 255, 255, 0.4) !important;
    filter: brightness(1.05);
}

.menu > li:not(.menu-button-appointment) > a::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 12px;
    background: radial-gradient(
        ellipse at center,
        rgba(255, 255, 255, 0.5) 0%,
        rgba(255, 255, 255, 0) 70%
    );
    opacity: 0;
    transition: opacity 0.4s ease;
    pointer-events: none;
}

.menu > li:not(.menu-button-appointment):hover > a::after {
    opacity: 0.15;
}

.menu > li:not(.menu-button-appointment):hover > a {
    color: #007bff!important;
}


/* BOUTON PRENDRE RENDEZ-VOUS */
.menu-button-appointment {
	position: relative!important;
	top: 15px!important;
	margin-left: 15px!important;
	height: 41px;
	font-size: 15px!important;
	font-weight: 600;
	padding: 1px 11px 1px 11px!important;
	border-radius: 12px!important;
	z-index: 9999!important;
	text-transform: none!important;
	overflow: hidden!important;
	transition: all .2s ease-in-out!important;
	background: #3d6be3!important;
	border: 1px solid transparent !important;
	color: #fff!important;
	backdrop-filter: blur(1px) !important;
	-webkit-backdrop-filter: blur(1px) !important;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.10)!important;
    transition:
		background 0.45s ease,
		box-shadow 0.55s ease,
		border-color 0.55s ease,
		filter 0.55s ease;
}

.menu-button-appointment:hover {
	background: linear-gradient(135deg, #3f63cf 0%, #324fae 100%) !important;
	border-color: rgba(255, 255, 255, 0.25) !important;
	box-shadow:
		0 0 8px rgba(40, 70, 150, 0.25),
		0 0 18px rgba(40, 70, 150, 0.18),
		0 6px 18px rgba(0, 0, 0, 0.20) !important;
	filter: brightness(1.06) saturate(1.03);
}

.menu-button-appointment::after {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(
		ellipse at center,
		rgba(255, 255, 255, 0.12) 0%,
		rgba(255, 255, 255, 0) 70%
	);
	opacity: 0;
	transition: opacity 0.8s ease;
	pointer-events: none;
}

.menu-button-appointment:hover::after {
	opacity: 0.5;
}

.menu-button-appointment a {
	position: relative!important;
	padding: 6px 15px 17px!important;
	color: #fff!important;
	bottom: 2px!important;
	background: transparent!important;
	border-radius: 6px;
	transition: all 0.25s ease-in-out;
}

.menu-button-appointment a:hover {
}

[data-arts-theme-text] .menu-button-appointment {
	color: #fff!important;
}

[data-arts-theme-text=dark] .menu-button-appointment:hover {
	background: rgba(61, 107, 227, 0.98) !important;
}

[data-arts-theme-text=dark] .menu-button-appointment.current-menu-item {
	background: rgba(61, 107, 227, 0.25) !important;
	border: 1px solid #3d6be3!important;
	color: #3d6be3!important;
	backdrop-filter: blur(3px) !important;
	-webkit-backdrop-filter: blur(3px) !important;
}

[data-arts-theme-text=dark] .menu-button-appointment.current-menu-item a {
	background: transparent!important;
	color: #3d6be3!important;
}

[data-arts-theme-text=dark] .menu-button-appointment:hover {
	background-color: #2f58c8!important;
}

[data-arts-theme-text=dark] .menu-button-appointment.current-menu-item {
	background: rgba(255, 255, 255, 0.60) !important;
	border:1px solid #3d6be3!important;
	transition:none!important;
}

[data-arts-theme-text=dark] .menu-button-appointment.current-menu-item a {
    color: #3d6be3!important;
	transition:none!important;
}
/* MENU */

#page-header .menu a {
	font-weight:500!important;
}

#page-header .menu > li.current-menu-item > a {
  background-size: calc(100% - 2em) 0px!important;
	color:#016DF1!important;
  background-position: 0em calc(100% - 0.55em);
}
#page-header .menu > li > a:hover {
  background-size: calc(100% - 2em) 0px!important;
  background-position: 0em calc(100% - 0.55em);
}

#page-header .menu_hover > li > a:not(:hover) {
  background-position: calc(100% - 1em) calc(100% - 0.55em);
  background-size: 0% 0px;
}
#page-header .menu > li > a:not(:hover) {
  background-position: calc(100% - 1em) calc(100% - 0.55em);
  background-size: 0% 0px;
}


:root {
  --card-bg: #ffffff;
  --card-bg-hover: #f8fafc;
  --card-border: #e6ebf2;
  --title: #0b1220;
  --title-hover: #0b5cff;
  --meta: #526176;
  --badge-bg: #eef4ff;
  --badge: #0b5cff;
  --radius: 12px;
  --pad: 16px;
  --trans: 180ms ease;
}

/* Variante sombre */
@media (prefers-color-scheme: dark) {
  :root {
    --card-bg: #0f1724;
    --card-bg-hover: #111b2d;
    --card-border: #1d2a3c;
    --title: #e7eefc;
    --title-hover: #7aa7ff;
    --meta: #9aa9bc;
    --badge-bg: #16233a;
    --badge: #98b6ff;
  }
}


/* HEADER */

.header_sticky {
	padding-top:0px!important;
	max-height:65px!important;
	border-bottom: 0px solid rgba(0,112,237,0.14) !important;
	padding-bottom:0!important;
	box-shadow: none!important;
	opacity:1!important;
	border-radius:0px;
	background-color: transparent!important;
	margin:0px!important;
}


.header{
	max-height:110px!important;
	margin:0px!important;
	padding:0px 0px!important;
}

.header__container{
  min-height:83px!important;
  max-height:83px!important;
  border-bottom: 0;         
  padding:10px 70px!important;
  border-radius:0;
  --glass-blur: 18px;         
  --fade-solid: 17%;        
  --fade-end: 96%; 
  --tint-top: 0.55; 
  --tint-bottom: 0.08;   
  background-color: rgba(255,255,255,0.35);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  position: relative;
  isolation: isolate;
}

@supports ((-webkit-mask-image: linear-gradient(#000, transparent)) or (mask-image: linear-gradient(#000, transparent))) {

  .header__container{
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background: transparent; 
  }

  .header__container::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:0;

    -webkit-backdrop-filter: blur(var(--glass-blur));
    backdrop-filter: blur(var(--glass-blur));

    -webkit-mask-image: linear-gradient(to bottom,
      rgba(0,0,0,1) 0%,
      rgba(0,0,0,1) var(--fade-solid),
      rgba(0,0,0,0) var(--fade-end)
    );
            mask-image: linear-gradient(to bottom,
      rgba(0,0,0,1) 0%,
      rgba(0,0,0,1) var(--fade-solid),
      rgba(0,0,0,0) var(--fade-end)
    );
  }
  .header__container::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:0;

    background: linear-gradient(
      to bottom,
      rgba(255,255,255,var(--tint-top)) 0%,
      rgba(255,255,255,var(--tint-bottom)) 70%,
      rgba(255,255,255,0) 100%
    );

    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.35); /* léger reflet haut (facultatif) */
  }
}

.header__container > *{
  position: relative;
  z-index: 1;
}

.header__burger{
	margin-top:10px!important;
	margin-right:-20px!important;
}

@media (max-width: 769px){
   .header__burger{
	margin-right:-60px!important;
}

}

/* LOGO */
@media (min-width: 1024px){
    .logo{
	margin-top:10px!important;
	margin-left:-15px!important;
	}
} 


@media (max-width: 1024px){
    .header_sticky .logo__img-primary {
        max-height: 40px !important;
        height: 40px !important;
    }
	.logo{
	margin-top:10px!important;
	margin-left:-15px!important;
	}
} 

@media (max-width: 769px){
    .header_sticky .logo__img-primary {
        max-height: 35px !important;
        height: 35px !important;
    }
	
	.logo{
	margin-top:10px!important;
	margin-left:-35px!important;
	}
}

@media (max-width: 480px){
    .header_sticky .logo__img-primary {
        max-height: 30px !important;
        height: 30px !important;
    }
	
	.logo{
	margin-top:10px!important;
	margin-left:-35px!important;
	}
}


 .logo__img-primary {
	    transition: all 0.3s ease-in-out !important;
}

.home-icon-post{
	position:absolute!important;
	right:0px;
	font-size:50px;
	top:0px;
}

.arrow-container {
	margin: 0 auto;
 	 width: 25px;
 	 animation: bounce 2600ms infinite cubic-bezier(0.445, 0.05, 0.55, 0.95);
  	cursor: pointer;
  	height: 20px;
	font-size:29px;
	color:#103d65;
}


@keyframes bounce {
  50% {
    transform: translateY(-10px);
  }
}




/* FOOTER */

.plusfontcolor{
  color:gray;
}

.footer-top {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
	padding-top:20px;
  margin: 40px 0;
}

.footer-logo img {
  max-height: 47px;
  width: auto;
  display: block;
}

.footer-button {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.footer-button .button + .button {
  margin-left: 25px;
}

/* Responsive tablette */
@media (max-width: 768px) {
  .footer-top {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .footer-logo img {
  margin-top:-20px!important;
}
	
  .footer-logo img {
    max-height: 47px;
    width: auto;
    display: block;
    margin: 0 auto; /* centre l'image horizontalement */
  }
	
}

.footer-container {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 20px !important;
  margin-top: 40px;
  align-items: start !important;
}

.footer-col h3 {
  font-weight: normal;
  margin-bottom: 10px;
}

.footer-col {
  padding:0px 20px;
}

.footer-col p,
.footer-col a {
  margin: 6px 0px;
  font-size: 16px;
  line-height: 1.5;
  color: #000;
  text-decoration: none;
}

.footer-col a:hover {
  text-decoration: underline;
}

.footer-bottom {
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
  font-size: 14px;
  flex-wrap: wrap;
}

.footer-bottom a {
  margin-right: 20px;
  text-decoration: underline;
  color: #000;
}

.footer-col p.text3footer {
    margin-top: 30px;
}

.footer-col p.text3-col2footer {
    margin-top: 30px;
}


/* Responsive tablette (iPad portrait, max-width ~ 992px) */
@media (max-width: 992px) {
  .footer-container {
    grid-template-columns: 1fr 1fr !important;
  }
}

/* Responsive mobile (max-width ~ 600px) */
@media (max-width: 600px) {

	.footer-col p.text3footer {
    margin-top: 0px;
}
	
	.footer-bottom > div {
  margin: 0 auto;
}
	
.footer-bottom a {
  margin-right: 0px;
}
	
.footer-bottom {
  display: flex;
  flex-direction: column;
}

/* Les liens l'un en dessous de l'autre */
.footer-bottom > div:first-child a {
  display: block;
}

/* Petit espace entre les deux liens (optionnel) */
.footer-bottom > div:first-child a + a {
  margin-top: 4px;
}

/* Copyright 20px sous le bloc de liens */
.footer-bottom > div:last-child {
  margin-top: 20px;
}
	
	.text3footer {
    margin-top:0px;
  }
	
  .footer-container {
    grid-template-columns: 1fr !important;
	    margin-top: 10px;
  }

.footer-container, .footer-col, .footer-bottom {
  text-align: center;
}
.footer-container h3, .footer-col h3, .footer-bottom h3{
  margin-top:30px;
}

	
	  .footer-button {
    display: flex;
    flex-direction: column;      /* un au-dessus de l’autre */
    align-items: center;         /* centrés horizontalement */
    justify-content: center;
    gap: 8px;                    /* espace entre les deux (mets 0 si tu veux collés) */
    margin-top: 20px;
  }

  .footer-button .button {
    margin: 0 !important;        /* on annule les marges globales éventuelles */
  }

}
.footer-dr-dereant{
  min-width:100%!important;
	margin: 0 auto;
}

.footer-button{
  display: flex;
    justify-content: center; 
    align-items: center; 
    text-align: center; 
}

.footer-collumn{
	padding:0px;
	color:black!important;
	font-size:18px;
	margin: 0px;
    align-items: center;
    justify-content: center;
    text-align: center; 
}

.footer-collumn2 {
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    justify-content: center; 
    padding: 0px;
    margin: 0px;
    height: 100%; 
    text-align: center;
}

.footer-collumn2 img {
    max-width: 100%; 
    height: auto; 
}


.copyright-bottom{
	font-size:14px;
	text-align:right!important;
	color:black;
}

.figure-member__avatar {
	border-radius:20px;
}

.figure-project__wrapper-img {
	border: 10px solid #e8f1f9!important;
	box-shadow: 0px 0px 0px 10px #f6f9fd!important;
	border-radius:45px;
}


.footer__divider{
    display:none
}

.footer__divider2 {
	margin-top:30px;
    border-bottom:1px solid #dfdfdf;
}

.wp-block-column .is-layout-flow .wp-block-column-is-layout-flow{
	text-align:right!important;
}

.footer__container.container-fluid{
    padding:0px!important;
    margin:0px!important;	
}

.footer__widget-area{
    padding:5px 60px 20px 60px!important;
    margin:0px!important;	
}
