/*
Theme Name: the7dtchild
Author: Dream-Theme
Author URI: http://dream-theme.com/
Description: The7 is perfectly scalable, performance and SEO optimized, responsive, retina ready multipurpose WordPress theme. It will fit every site – big or small. From huge corporate portals to studio or personal sites – The7 will become a great foundation for your next project!
Version: 1.0.0
License: This WordPress theme is comprised of two parts: (1) The PHP code and integrated HTML are licensed under the GPL license as is WordPress itself.  You will find a copy of the license text in the same directory as this text file. Or you can read it here: http://wordpress.org/about/gpl/ (2) All other parts of the theme including, but not limited to the CSS code, images, and design are licensed according to the license purchased. Read about licensing details here: http://themeforest.net/licenses/regular_extended
Template: dt-the7
*/
form.cart {
    display: none !important;
}

.ah-contacts-row {
    display: flex;
    gap: 32px;
    margin: 24px 0;
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
}

.ah-contact-card {
    background: #4B4B4B;
    padding: 25px 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    margin-bottom: 0;
    transition: box-shadow 0.2s;
    transition: background 0.25s, border-radius 0.25s;
    /* transition: all 0.25s ease; */
    z-index: 999;
}

.ah-contact-card.ah-sticky {
    box-shadow: 0 4px 12px rgb(243, 152, 15,);
    padding: 10px;
}

.ah-contact-card .ah-contact-name,
.ah-contact-card .ah-contact-role {
    transition: opacity 0.2s;
}
.ah-contact-card .hidden {
    display: none !important;
}


#ah-contact-sentinel {
    height: 1px;
    /* invisible, juste une ligne pour le repère */
}

.ah-avatar-placeholder {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #EBEBEB;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
}

.ah-contact-name {
    font-size: 1.02rem;
    font-weight: 400;
    color: #F3980F;
    margin-bottom: 2px;
    text-align: center;
    letter-spacing: 0.01em;
    flex-grow: 1;
}

.ah-contact-name span {
    font-size: 1.2em;
    text-align: center;
    font-weight: 500;
    color: #F3980F;
}

.ah-contact-role {
    font-size: 0.9em;
    text-align: center;
    font-weight: 300;
    color: #F3980F;
    margin-bottom: 10px;
}

/* === Actions (téléphone / WA / email) === */
.ah-contact-actions {
    position: relative;
    /* nécessaire pour la surimpression du chip */
    display: flex;
    gap: 16px;
    justify-content: center;
}

.ah-btn-tel,
.ah-btn-mail,
.ah-btn-wa {
    background: #383838;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: box-shadow .18s, background .13s, transform .18s;
    position: relative;
    outline: none;
    padding: 0;
}

.ah-btn-tel:hover,
.ah-btn-mail:hover,
.ah-btn-wa:hover {
    transform: translateY(-2px) scale(1.08);
}

.ah-btn-tel:hover svg path {
    stroke: #F3980F;
}

.ah-btn-mail:hover svg * {
    stroke: #F3980F;
}

.ah-btn-wa:hover svg path {
    fill: #F3980F;
}

.ah-btn-mail svg,
.ah-btn-tel svg,
.ah-btn-wa svg {
    width: 22px;
    height: 22px;
    display: block;
}


.ah-btn-tel.ah-sticky,
.ah-btn-mail.ah-sticky,
.ah-btn-wa.ah-sticky {
    background: #F3980F;
}


.ah-btn-tel.ah-sticky svg path {
    stroke: #383838;
}

.ah-btn-mail.ah-sticky svg * {
    stroke: #383838;
}

.ah-btn-wa.ah-sticky svg path {
    fill: #383838;
}

.ah-btn-tel.ah-sticky:hover svg path {
    stroke: #383838;
}

.ah-btn-mail.ah-sticky:hover svg * {
    stroke: #383838;
}

.ah-btn-wa.ah-sticky:hover svg path {
    fill: #383838;
}


/* --- Surimpression & flou lors de l'affichage du numéro --- */
.ah-contact-actions::after {
    content: "";
    position: absolute;
    inset: -6px;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    border-radius: 14px;
    opacity: 0;
    pointer-events: none;
    z-index: 1;
    transition: opacity .18s ease;
}


.ah-contact-actions.reveal-mode::after {
    opacity: 1;
    pointer-events: auto;
}

.ah-contact-actions.reveal-mode .ah-btn-tel,
.ah-contact-actions.reveal-mode .ah-btn-wa,
.ah-contact-actions.reveal-mode .ah-btn-mail {
    filter: blur(2px) saturate(0.9);
    opacity: .35;
    pointer-events: none;
    transform: none;
}

/* Chip du numéro (positionné au-dessus des boutons) */
.ah-btn-tel-reveal {
    display: none;
    position: absolute;
    left: 50%;
    bottom: -2px;
    transform: translateX(-50%);
    z-index: 10;
    background: #383838;
    color: #FFFFFF;
    border-radius: 999px;
    min-height: 44px;
    padding: 0 18px;
    line-height: 1;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: transform .16s ease, box-shadow .16s ease, opacity .16s ease;
    white-space: nowrap;
}

.ah-btn-tel-reveal:hover,
.ah-btn-tel-reveal:hover .ah-btn-tel-reveal::before {
    color: #F3980F;
}


.ah-btn-tel-reveal::before {
    content: "";
    width: 20px;
    height: 20px;
    mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="black" viewBox="0 0 24 24"><path d="M3 5a2 2 0 0 1 2-2h3.28a1 1 0 0 1 .97.76l.5 2a1 1 0 0 1-.29.98l-1.36 1.36a16 16 0 0 0 6.8 6.8l1.36-1.36a1 1 0 0 1 .98-.29l2 .5a1 1 0 0 1 .76.97V19a2 2 0 0 1-2 2A17 17 0 0 1 3 7V5z"/></svg>') center / contain no-repeat;
    background: #FFFFFF;
    display: inline-block;
}

.ah-contact-actions.reveal-mode .ah-btn-tel-reveal {
    display: inline-flex;
    animation: chipIn .22s cubic-bezier(.2, .9, .2, 1) both;
}

.ah-contact-actions.reveal-mode .ah-btn-tel-reveal:hover {
    transform: translateX(-50%) translateY(-1px);
    box-shadow: 0 14px 36px rgba(243, 152, 15, 0.24);
}

.ah-btn-tel-reveal.closing {
    /* l’animation sortante est jouée avant display:none (côté JS) */
    animation: chipOut .18s cubic-bezier(.2, .9, .2, 1) forwards;
}


@keyframes chipIn {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(8px) scale(.96);
    }

    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0) scale(1);
    }
}

@keyframes chipOut {
    from {
        opacity: 1;
        transform: translateX(-50%) translateY(0) scale(1);
    }

    to {
        opacity: 0;
        transform: translateX(-50%) translateY(6px) scale(.98);
    }
}

/* Respecte les préférences d’accessibilité */
@media (prefers-reduced-motion: reduce) {
    .ah-btn-tel-reveal {
        animation: none !important;
        transition: none !important;
    }
}

@media (max-width: 950px) {
    .ah-contacts-row {
        gap: 18px;
    }

    .ah-contact-card {
        min-width: 170px;
        padding: 20px 8vw 16px 8vw;
        max-width: 100vw;
    }
}

@media (max-width: 700px) {

    /* Chip (numéro) plus gros et plus lisible */
    .ah-btn-tel-reveal {
        bottom: -4px;
        /* un peu plus proche des icônes */
        min-height: 52px;
        padding: 0 22px;
        font-size: 18px;
        letter-spacing: .3px;
        box-shadow: 0 12px 28px rgba(34, 99, 247, .18), 0 1px 0 #e8eefc inset;
    }

    .ah-btn-tel-reveal::before {
        width: 22px;
        height: 22px;
    }
}

@media (max-width: 600px) {
    .ah-contacts-row {
        flex-direction: column;
        gap: 10px;
        margin: 24px 0 0 0;
    }

    .ah-contact-card {
        width: 95%;
        min-width: 0;
        margin: 0 auto;
        padding: 20px 12px 14px 12px;
    }

    .ah-btn-icon {
        width: 42px;
        height: 42px;
    }

    .ah-btn-tel-reveal {
        min-height: 50px;
        padding: 0 14px;
        font-weight: 700;
        bottom: 52%;
    }
}

.ah-avatar-img {
    border-radius: 50%;
}

.woocommerce div.product div.summary {
    margin-bottom: 0;
}