/*
Theme Name: Studio999
Theme URI: 
Author: Studio999
Author URI: 
Description: Theme perso
Requires at least: 7.0
Tested up to: 7.0
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: twentytwentyfive
Text Domain: studio999
Tags:
*/


header,
.wp-block-template-part[data-slug="header"] {
    position: sticky;
    top: 0;
    z-index: 999;
}

footer,
.wp-block-template-part[data-slug="footer"] {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.galerie .spectra-image-gallery > * {
    transition: transform 0.5s cubic-bezier(0.33, 1, 0.68, 1) !important;
    will-change: transform;
}

.galerie:hover .spectra-image-gallery > *:nth-child(1) { transform: translate(-40px, -30px) rotate(-6deg) !important; }
.galerie:hover .spectra-image-gallery > *:nth-child(2) { transform: translate(15px, -45px) rotate(4deg) !important; }
.galerie:hover .spectra-image-gallery > *:nth-child(3) { transform: translate(45px, -20px) rotate(-3deg) !important; }
.galerie:hover .spectra-image-gallery > *:nth-child(4) { transform: translate(50px, 25px) rotate(5deg) !important; }
.galerie:hover .spectra-image-gallery > *:nth-child(5) { transform: translate(30px, 50px) rotate(-4deg) !important; }
.galerie:hover .spectra-image-gallery > *:nth-child(6) { transform: translate(-20px, 45px) rotate(6deg) !important; }
.galerie:hover .spectra-image-gallery > *:nth-child(7) { transform: translate(-50px, 20px) rotate(-5deg) !important; }
.galerie:hover .spectra-image-gallery > *:nth-child(8) { transform: translate(-35px, -40px) rotate(3deg) !important; }

html {
    scroll-padding-top: 100px;
}

a:hover {
    text-decoration: none !important;
}

.wp-block-navigation a[aria-current="page"],
.wp-block-navigation .current-menu-item > a {
    font-weight: bold;
}

.wp-block-navigation a {
    position: relative;
}

.wp-block-navigation a::before {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--wp--preset--color--accent-3);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.3s cubic-bezier(0.33, 1, 0.68, 1);
}

.wp-block-navigation a:hover::before {
    transform: scaleX(1);
}

*:focus,
*:focus-visible,
*:active {
    outline: none !important;
    box-shadow: none !important;
}

.cards {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transition: color 0.55s ease;
}

.cards::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 10%;
    background: var(--wp--preset--color--accent-2);
    transform-origin: left;
    transform: scaleX(0);
    transition: transform 0.45s cubic-bezier(0.33, 1, 0.68, 1);
    z-index: -1;
}

.cards:hover::before {
    transform: scaleX(1);
}

.cards:hover {
    color: var(--wp--preset--color--base);
}

.carte1, .carte2, .carte3, .carte4 {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.carte1::before, .carte2::before, .carte3::before, .carte4::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 5px;
    transform-origin: left;
    transform: scaleX(0);
    transition: transform 0.45s cubic-bezier(0.33, 1, 0.68, 1);
    z-index: -1;
}


.wp-block-button__link,
.wp-element-button,
button,
input[type="submit"] {
    position: relative;
    transition: all 0.3s ease-in-out;
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.2);
    padding-block: 0.5rem;
    padding-inline: 1.25rem;
    background-color: #0a0a0a !important;
    border-radius: 9999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff !important;
    gap: 10px;
    font-weight: bold;
    border: 3px solid #ffffff4d !important;
    outline: none;
    overflow: hidden;
    font-size: 15px;
    cursor: pointer;
}

.wp-block-button__link:hover,
.wp-element-button:hover,
button:hover,
input[type="submit"]:hover {
    transform: scale(1.05);
    border-color: #fff9 !important;
}

.wp-block-button__link::before,
.wp-element-button::before,
button::before,
input[type="submit"]::before {
    content: "";
    position: absolute;
    width: 100px;
    height: 100%;
    background-image: linear-gradient(
        120deg,
        rgba(255, 255, 255, 0) 30%,
        rgba(255, 255, 255, 0.8),
        rgba(255, 255, 255, 0) 70%
    );
    top: 0;
    left: -100px;
    opacity: 0.6;
    pointer-events: none;
}

.wp-block-button__link:hover::before,
.wp-element-button:hover::before,
button:hover::before,
input[type="submit"]:hover::before {
    animation: shine 1.5s ease-out infinite;
}

@keyframes shine {
    0%  { left: -100px; }
    60% { left: 100%; }
    to  { left: 100%; }
}

.wp-block-button__link .icon,
.wp-element-button .icon {
    width: 24px;
    height: 24px;
    transition: all 0.3s ease-in-out;
}

.wp-block-button__link:hover .icon,
.wp-element-button:hover .icon {
    transform: translate(4px);
}

.zoom {
    transition: transform 0.3s cubic-bezier(0.33, 1, 0.68, 1),
                box-shadow 0.3s ease;
}

.zoom:hover {
    transform: translateY(-6px) scale(1.03);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12);
}

.carte1::before { background: cyan; }
.carte2::before { background: magenta; }
.carte3::before { background: yellow; }
.carte4::before { background: black; }

.carte1:hover::before,
.carte2:hover::before,
.carte3:hover::before,
.carte4:hover::before {
    transform: scaleX(1);
}

