/*
Theme Name: Blocksy Enfant
Version: 1.0
Description: A child theme of Blocksy
Template: blocksy
Author: Adrien
*/
@import url("../blocksy/style.css");

/* Homepage/editor parity: the theme stylesheet is the CTA source of truth. */
.qse-home-hero,
.qse-criteria-band,
.qse-home-section,
.qse-card-grid,
.qse-card,
.qse-final-buttons {
    box-sizing: border-box;
}

.home .entry-content .wp-block-button {
    overflow: visible;
}

.home .entry-content .wp-block-button .wp-element-button,
.home .entry-content .wp-block-button .wp-block-button__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: transform .22s ease, box-shadow .22s ease, filter .22s ease, background .22s ease, opacity .22s ease;
    will-change: transform, box-shadow, filter;
    transform: translateY(0) translateZ(0);
    backface-visibility: hidden;
}

.home .entry-content .wp-block-button:hover .wp-element-button,
.home .entry-content .wp-block-button:hover .wp-block-button__link,
.home .entry-content .wp-element-button:hover,
.home .entry-content .wp-block-button__link:hover {
    transform: translateY(-2px) translateZ(0);
    filter: brightness(1.05);
    box-shadow: 0 16px 34px rgba(20, 32, 51, 0.18) !important;
}

.home .entry-content .wp-block-button:focus-within .wp-element-button,
.home .entry-content .wp-block-button:focus-within .wp-block-button__link,
.home .entry-content .wp-element-button:focus-visible,
.home .entry-content .wp-block-button__link:focus-visible {
    outline: 2px solid rgba(47, 111, 237, 0.35);
    outline-offset: 3px;
}

.qse-card-grid {
    align-items: stretch;
}

.qse-card {
    height: 100%;
}

.home .qse-criteria-band {
    width: min(90vw, 1550px) !important;
    max-width: none !important;
    padding: 32px 42px 30px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.home .qse-home-section {
    width: min(90vw, 1550px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.home .qse-criteria-band .qse-criteria-shell {
    display: grid !important;
    grid-template-columns: minmax(0, 430px) minmax(0, 1fr) !important;
    gap: 20px !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
}

.home .qse-criteria-band .qse-reassurance-head {
    width: 100%;
    max-width: 430px;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left;
    align-self: center;
}

.home .qse-criteria-band .qse-reassurance-head > p:first-child {
    margin-left: 0 !important;
    margin-right: 0 !important;
    white-space: nowrap;
    font-size: clamp(22px, 1.2rem + ((1vw - 3.2px) * 0.35), 27px) !important;
    line-height: 1.08 !important;
}

.home .qse-criteria-band .qse-reassurance-head > p:last-child {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: none;
    font-size: 13.5px !important;
    line-height: 1.42 !important;
}

.home .qse-criteria-band .qse-reassurance-grid {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 14px !important;
    align-items: stretch !important;
    justify-content: center !important;
}

.home .qse-card-grid-2,
.home .qse-guides-section .qse-card-grid-3 {
    display: grid !important;
    align-items: stretch !important;
}

.home .qse-card-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px !important;
}

.home .qse-guides-section .qse-card-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px !important;
}

.home .qse-card-grid-2 > .qse-card,
.home .qse-guides-section .qse-card-grid-3 > .qse-card {
    min-width: 0;
    display: flex !important;
    flex-direction: column !important;
}

.home .qse-card-grid-2 > .qse-card h3,
.home .qse-guides-section .qse-card-grid-3 > .qse-card h3 {
    line-height: 1.35;
}

.home .qse-card-grid-2 > .qse-card p,
.home .qse-guides-section .qse-card-grid-3 > .qse-card p {
    line-height: 1.7;
}

.home .qse-card-grid-2 .wp-block-buttons,
.home .qse-guides-section .qse-card-grid-3 .wp-block-buttons {
    margin-top: auto !important;
    padding-top: 16px;
}

@media (max-width: 1100px) {
    .home .qse-card-grid-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .home .qse-guides-section .qse-card-grid-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 781px) {
    .home .qse-card-grid-2,
    .home .qse-guides-section .qse-card-grid-3 {
        grid-template-columns: 1fr !important;
    }

    .home .qse-card-grid-2 .wp-block-buttons,
    .home .qse-guides-section .qse-card-grid-3 .wp-block-buttons {
        width: 100%;
        justify-content: stretch !important;
    }

    .home .qse-card-grid-2 .wp-block-button,
    .home .qse-guides-section .qse-card-grid-3 .wp-block-button {
        width: 100%;
    }

    .home .qse-card-grid-2 .wp-block-button__link,
    .home .qse-card-grid-2 .wp-element-button,
    .home .qse-guides-section .qse-card-grid-3 .wp-block-button__link,
    .home .qse-guides-section .qse-card-grid-3 .wp-element-button {
        width: 100%;
    }
}


.home .qse-criteria-band .qse-reassurance-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    min-height: 132px;
    margin: 0 !important;
    padding: 20px 14px 18px !important;
    border-radius: 12px !important;
    background: #f9fafb !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 0 0 rgba(20, 32, 51, 0);
    transition: transform .18s ease, box-shadow .18s ease;
}

.home .qse-criteria-band .qse-reassurance-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(20, 32, 51, 0.08);
}

.qse-criteria-band .qse-reassurance-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    margin: 0 auto 6px !important;
    padding: 0 !important;
    border-radius: 999px;
    background: linear-gradient(180deg, #edf4ff 0%, #dfeafe 100%);
    box-shadow: inset 0 0 0 1px rgba(47, 111, 237, 0.12);
    color: #2f6fed !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

.qse-criteria-band .qse-reassurance-icon::before {
    content: "";
    display: block;
    width: 28px;
    height: 28px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 28px 28px;
}

.qse-criteria-band .qse-reassurance-icon--power::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%232f6fed' d='M13 2 6 13h4l-1 9 9-12h-5z'/%3E%3C/svg%3E");
}

.qse-criteria-band .qse-reassurance-icon--battery::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='7' width='16' height='10' rx='2' fill='none' stroke='%232f6fed' stroke-width='2'/%3E%3Crect x='20' y='10' width='2' height='4' rx='1' fill='%232f6fed'/%3E%3Crect x='6.5' y='10' width='8' height='4' rx='1' fill='%232f6fed'/%3E%3C/svg%3E");
}

.qse-criteria-band .qse-reassurance-icon--charge::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%232f6fed' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M7 7H6a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h1m6-10 4 4h-3v6h-2v-6H9l4-4Zm7 7v3'/%3E%3C/svg%3E");
}

.qse-criteria-band .qse-reassurance-icon--transport::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%232f6fed' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M8 8V7a4 4 0 0 1 8 0v1m-9 0h10a2 2 0 0 1 2 2v7H5v-7a2 2 0 0 1 2-2Zm3 5h4'/%3E%3C/svg%3E");
}

.qse-criteria-band .qse-reassurance-icon--ports::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%232f6fed' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M12 4v10m0-10 3 3m-3-3-3 3m0 7-3 3m3-3 3 3m0-3h6M9 17H5m7-3v6'/%3E%3Ccircle cx='18' cy='14' r='1.5' fill='%232f6fed'/%3E%3Crect x='4' y='16' width='2.5' height='2.5' rx='0.6' fill='%232f6fed'/%3E%3C/svg%3E");
}

.qse-criteria-band .qse-reassurance-icon svg {
    display: none;
}

.home .qse-criteria-band .qse-reassurance-card p {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.home .qse-guides-section .qse-card-grid {
    display: grid !important;
    gap: 24px !important;
    align-items: stretch;
}

.home .qse-guides-section .qse-card-grid-3 > .qse-card {
    display: flex !important;
    flex-direction: column !important;
}

.home .qse-guides-section .qse-card-grid-3 > .qse-card > p {
    flex: 1 1 auto;
    margin-bottom: 0;
}

.home .qse-guides-section .qse-card .wp-block-buttons {
    margin-top: auto !important;
    padding-top: 16px;
}

/* Homepage micro-pass, usage cards + intro image */
.home .qse-home-section .qse-card a[href="/station-electrique-portable-pour-camping/"],
.home .qse-home-section .qse-card a[href="/station-electrique-portable-pour-van/"],
.home .qse-home-section .qse-card a[href="/station-electrique-portable-pour-maison/"],
.home .qse-home-section .qse-card a[href="/station-electrique-portable-solaire/"],
.home .qse-home-section .qse-card a[href="/station-electrique-portable-puissante/"] {
    position: relative;
    white-space: nowrap;
    border-radius: 999px !important;
    color: #ffffff !important;
    background: linear-gradient(180deg, #2f6fed 0%, #225bcb 100%) !important;
    box-shadow: 0 10px 24px rgba(47, 111, 237, 0.18) !important;
    border: 0 !important;
}

.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-camping/"]),
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-van/"]),
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-maison/"]),
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-solaire/"]) {
    padding: 14px 14px 18px;
}

.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-camping/"]) > .wp-block-group:first-child,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-van/"]) > .wp-block-group:first-child,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-maison/"]) > .wp-block-group:first-child,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-solaire/"]) > .wp-block-group:first-child {
    min-height: 176px;
    padding: 12px;
    align-items: stretch !important;
}

.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-camping/"]) > .wp-block-group:first-child > p,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-van/"]) > .wp-block-group:first-child > p,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-maison/"]) > .wp-block-group:first-child > p,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-solaire/"]) > .wp-block-group:first-child > p {
    margin: 0;
    width: 100%;
    height: 100%;
    display: flex;
}

.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-camping/"]) > .wp-block-group:first-child img,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-van/"]) > .wp-block-group:first-child img,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-maison/"]) > .wp-block-group:first-child img,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-solaire/"]) > .wp-block-group:first-child img {
    display: block;
    width: 100% !important;
    min-width: 100%;
    height: 100% !important;
    min-height: 152px;
    object-fit: cover;
    object-position: center;
    border-radius: 14px;
    box-shadow: 0 12px 28px rgba(47, 111, 237, 0.10);
}

.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-camping/"]) > .wp-block-group:last-child,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-van/"]) > .wp-block-group:last-child,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-maison/"]) > .wp-block-group:last-child,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-solaire/"]) > .wp-block-group:last-child {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding-top: 12px !important;
}

.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-camping/"]) > .wp-block-group:last-child > p,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-van/"]) > .wp-block-group:last-child > p,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-maison/"]) > .wp-block-group:last-child > p,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-solaire/"]) > .wp-block-group:last-child > p {
    min-height: 52px;
}

.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-camping/"]) .wp-block-buttons,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-van/"]) .wp-block-buttons,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-pour-maison/"]) .wp-block-buttons,
.home .qse-home-section .qse-card:has(a[href="/station-electrique-portable-solaire/"]) .wp-block-buttons {
    margin-top: auto !important;
}

.home .qse-home-section img[alt="lifestyle_bivouac_station_electrique"] {
    display: block;
    width: 100% !important;
    height: 100% !important;
    min-height: 276px;
    object-fit: cover;
    object-position: center;
    border-radius: 18px;
    box-shadow: 0 16px 36px rgba(20, 32, 51, 0.14);
}

.home .qse-home-section img[alt="lifestyle_bivouac_station_electrique"]:first-child {
    margin: 0;
}

.home .qse-home-section p:has(> img[alt="lifestyle_bivouac_station_electrique"]) {
    margin: 0;
    width: 100%;
    height: 100%;
    display: flex;
}

.home .qse-home-section > .wp-block-group.has-background {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box;
}

.home .qse-home-section img[alt="Victor, Fondateur de Quelle-station-électrique.fr"] {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: 48% 45% !important;
    border-radius: 999px !important;
    margin: 0 !important;
    box-shadow: 0 12px 28px rgba(7, 19, 39, 0.22);
}

@media (min-width: 782px) {
    .home .qse-home-section img[alt="Victor, Fondateur de Quelle-station-électrique.fr"] {
        object-position: 42% 54% !important;
    }
}

.home .qse-home-section p:has(> img[alt="Victor, Fondateur de Quelle-station-électrique.fr"]) {
    margin: 0 !important;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.home .qse-home-section .wp-block-group[style*="width: 124px; height: 124px"] {
    padding: 6px !important;
    overflow: hidden !important;
}

@media (max-width: 1100px) {
    .home .qse-criteria-band {
        padding: 28px 24px !important;
    }

    .home .qse-criteria-band .qse-criteria-shell {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    .home .qse-criteria-band .qse-reassurance-head {
        max-width: none;
        text-align: center;
    }

    .home .qse-criteria-band .qse-reassurance-head > p:first-child,
    .home .qse-criteria-band .qse-reassurance-head > p:last-child {
        max-width: none;
        white-space: normal;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .home .qse-criteria-band .qse-reassurance-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 781px) {
    .home .qse-criteria-band {
        padding: 24px 20px !important;
    }

    .home .qse-criteria-band .qse-reassurance-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 520px) {
    .home .qse-criteria-band .qse-reassurance-grid {
        grid-template-columns: 1fr !important;
    }
}

#footer {
    margin-top: 28px;
    background: linear-gradient(180deg, #10264f 0%, #09162d 100%);
    border-top: 1px solid rgba(143, 181, 255, 0.22);
}

.qse-footer-links-wrap {
    padding-top: 38px;
    padding-bottom: 20px;
}

.qse-footer-links {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    max-width: 420px;
    margin: 0 auto;
    font-size: 14px;
    line-height: 1.6;
}

.qse-footer-links a {
    display: block;
    width: 100%;
    text-align: center;
    color: rgba(255, 255, 255, 0.9);
    text-decoration: none;
}

.qse-footer-links a:hover {
    color: #ffffff;
    text-decoration: none;
}

.ct-footer [data-row="bottom"] {
    padding-top: 0;
    padding-bottom: 22px;
}

.ct-footer [data-row="bottom"] .ct-container {
    border-top: 1px solid rgba(143, 181, 255, 0.16);
    padding-top: 18px;
}

.ct-footer-copyright {
    text-align: center;
    color: rgba(255, 255, 255, 0.68);
}
