/**
 * Effets personnalisés du thème OnlyTheBrain
 * Chargé à la fois pour l'éditeur et le front-end
 */

a{
    color:inherit;
}

a:hover:where(:not(.wp-block-button__link)){
    color:var(--wp--preset--color--bleu-roi);
}

/* ============================
   EFFETS HOVER BOX-SHADOW
   ============================ */

/* Classe générique pour tous les éléments avec ombre */
[style*="--wp--preset--shadow"] {
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

/* Effets hover spécifiques pour chaque type d'ombre */

/* Ombres noires - deviennent plus intenses au hover */
[style*="--wp--preset--shadow--ombre-noire-petite"]:hover {
    box-shadow: 6px 6px 0px rgba(0, 0, 0, 0.9) !important;
    transform: translate(-1px, -1px);
}

[style*="--wp--preset--shadow--ombre-noire-moyenne"]:hover {
    box-shadow: 8px 8px 0px rgba(0, 0, 0, 0.8) !important;
    transform: translate(-1px, -1px);
}

[style*="--wp--preset--shadow--ombre-noire-grande"]:hover {
    box-shadow: 10px 10px 0px rgba(0, 0, 0, 0.7) !important;
    transform: translate(-1px, -1px);
}

/* Ombres colorées - deviennent plus grandes au hover */
[style*="--wp--preset--shadow--ombre-bleu-roi"]:hover {
    box-shadow: 7px 7px 0px var(--wp--preset--color--bleu-roi) !important;
    transform: translate(-1px, -1px);
}

[style*="--wp--preset--shadow--ombre-bleu-ciel"]:hover {
    box-shadow: 7px 7px 0px var(--wp--preset--color--bleu-ciel) !important;
    transform: translate(-1px, -1px);
}

[style*="--wp--preset--shadow--ombre-jaune"]:hover {
    box-shadow: 7px 7px 0px var(--wp--preset--color--jaune) !important;
    transform: translate(-1px, -1px);
}

[style*="--wp--preset--shadow--ombre-grise"]:hover {
    box-shadow: 6px 6px 0px var(--wp--preset--color--gris) !important;
    transform: translate(-1px, -1px);
}

/* Ombres spéciales - effets créatifs au hover */
[style*="--wp--preset--shadow--ombre-double-bleu"]:hover {
    box-shadow: 6px 6px 0px var(--wp--preset--color--bleu-ciel), 12px 12px 0px var(--wp--preset--color--bleu-roi) !important;
    transform: translate(-4px, -4px);
}

[style*="--wp--preset--shadow--ombre-decalee-bleu-roi"]:hover {
    box-shadow: 10px 6px 0px var(--wp--preset--color--bleu-roi) !important;
    transform: translate(-1px, -1px);
}

[style*="--wp--preset--shadow--ombre-decalee-jaune"]:hover {
    box-shadow: 10px 6px 0px var(--wp--preset--color--jaune) !important;
    transform: translate(-1px, -1px);
}

/* Effets spéciaux pour les boutons avec ombres */
.wp-block-button__link[style*="--wp--preset--shadow"] {
    transition: all 0.3s ease;
}

.wp-block-button__link[style*="--wp--preset--shadow"]:hover {
    transform: translate(-2px, -2px);
}

/* Effet de "soulèvement" pour les cards/groupes */
.wp-block-group[style*="--wp--preset--shadow"]:hover,
.wp-block-cover[style*="--wp--preset--shadow"]:hover {
    transform: translate(-2px, -2px);
}

/* Animation d'apparition progressive */
[style*="--wp--preset--shadow"] {
    animation: shadowFadeIn 0.6s ease-out;
}

@keyframes shadowFadeIn {
    from {
        box-shadow: none;
        transform: translate(0, 0);
    }
    to {
        box-shadow: var(--current-shadow, inherit);
        transform: translate(0, 0);
    }
}

/* ============================
   RESPONSIVITÉ
   ============================ */

/* Réduction des effets sur mobile */
@media (max-width: 768px) {
    [style*="--wp--preset--shadow"]:hover {
        transform: translate(-1px, -1px) !important;
    }
    
    .wp-block-button__link[style*="--wp--preset--shadow"]:hover {
        transform: translate(-1px, -1px) !important;
    }
}

/* ============================
   ACCESSIBILITÉ
   ============================ */

/* Effet pour les éléments focusables */
[style*="--wp--preset--shadow"]:focus-visible {
    outline: 2px solid var(--wp--preset--color--bleu-roi);
    outline-offset: 2px;
}

/* Support pour les préférences de mouvement réduit */
@media (prefers-reduced-motion: reduce) {
    [style*="--wp--preset--shadow"],
    [style*="--wp--preset--shadow"]:hover {
        transition: none !important;
        transform: none !important;
        animation: none !important;
    }
}

/* ============================
   AUTRES EFFETS DU THÈME
   (Espace pour ajouter d'autres styles personnalisés)
   ============================ */ 

.is-full-height {
    height: 100%;
}

.link-wrapper{
    position:relative;
}

.link-wrapper .link-target a::before,
.link-wrapper  a.link-target::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    z-index:1;
}

.link-wrapper a:not(.link-target):not(.link-target a) {
    position: relative;
    z-index: 2;
}

.link-wrapper.strict-wrapper{
    overflow:hidden
}

.link-wrapper.strict-wrapper .link-target a::before,
.link-wrapper.strict-wrapper a.link-target::before{
    content:'';
    position:absolute;
    top:-50vw;
    left:-50vw;
    right:-50vw;
    bottom:-50vw;
}

/* SHARE */

.sharer{
	position:relative;
	z-index:2;
}
.sharer button{
	font-family:inherit;
	padding:10px 20px;
	border-radius:4px;
	background:transparent;
	border:1px solid var(--wp--preset--color--bleu-roi);
}
.share-open{
	display:none;
	position:absolute;
	left:50%;
	top:100%;
	width:200px;
	background:white;
	border-radius:4px;
	padding:10px;
	transform: translate(-50%,-1px);
    box-shadow: 0 0 10px -4px black;
}
.sharer:hover .share-open,
.sharer:focus-within .share-open{
	display:block;
}

.sharer .st-btn{
	display:block !important;
	margin-right:0 !important
}

.sharer .st-btn + .st-btn{
	margin-top:.5rem;
}

.w-figcaption{
	font-size:var(--wp--preset--font-size--small);
	text-align:center;
	font-style:italic;
	color:var(--wp--preset--color--bleu-roi);
    margin-top:1em;
}

.featured-with-caption.wp-block-post-featured-image{
	height:auto !important;
}

iframe{
    display:block;
}

details {
    border: 4px solid var(--wp--preset--color--gris);
    padding: var(--wp--preset--spacing--30);
}
@media (min-width: 768px) {
    .two-columns,
    .three-columns{
        column-count:2;
        column-gap:var(--wp--preset--spacing--40);
    }

    .three-columns{
        column-count:3;
    }

    .two-columns details,
    .three-columns li{
        break-inside:avoid;
    }

    /* .sp-wrap-cpt h2{
        margin-top:0;
    } */
}

.menu-entete .wp-block-navigation-item__content {
    position: relative;
}

.menu-entete .wp-block-navigation-item:not(.current-menu-item) .wp-block-navigation-item__label {
    position: relative;
    background: linear-gradient(to right, var(--wp--preset--color--bleu-roi) 50%, var(--wp--preset--color--noir) 50%);
    background-size: 200% 100%;
    background-position: right bottom;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    transition: all 0.3s ease-out;
}

.menu-entete .wp-block-navigation-item__content:hover .wp-block-navigation-item__label,
.menu-entete .wp-block-navigation-item__content:focus-within .wp-block-navigation-item__label {
    background-position: left bottom;
}

.menu-entete .current-menu-item{
    font-weight:bold;
    color:var(--wp--preset--color--bleu-roi);
}

#cocopopup-overlay-contdown{
    z-index:10000;
}
.wp-block-cp-cocopopup{
    z-index:10001 !important;
}

.commerce-ouvert::before,
.commerce-ferme::before {
    content: '';
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid white;
    margin-right: 8px;
    display: inline-block;
}

.commerce-ouvert::before {
    background-color: #00ff00;
}

.commerce-ferme::before {
    background-color: #ff0000;
}

.tableberg-table-wrapper{
    overflow:auto !important;
}

.no-underline a,
a.no-underline{
    text-decoration: none !important;
}

.hover-video{
    z-index:2;
    position:relative;
}

.hover-video-hover{
    z-index:3;
    position:relative;
}

@media (max-width: 480px) {
    .hide-on-mobile{
        display:none;
    }
}


@media (min-width:1096px){
    .hide-on-desktop{
        display:none !important;
    }
}

@media (max-width:1095px){
    .hide-on-desktop{
        order:3;
    }
}

.legend-wrap{
    position:relative;
}

.legend-wrap .is-legend{
    background: rgba(0, 0, 0, .5);
    position: absolute;
    padding: 1em;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    border-radius: 8px;
    color: white;
    font-size: .9em;
    opacity:0;
    transition:opacity .3s ease;
}

.legend-wrap:hover .is-legend{
    opacity:1;
}

html {
    scroll-behavior: smooth;
	scroll-padding-top:calc( 100px + var(--wp-admin--admin-bar--height, 0px) + var(--wp--preset--spacing--20));
}