@import url("./parts/00-base.css");
@import url("./parts/01-header.css");
@import url("./parts/02-components.css");
@import url("./parts/03-admin.css");
@import url("./parts/04-responsive-base.css");
@import url("./parts/05-premium.css");
@import url("./parts/06-home.css");
@import url("./parts/07-logo.css");
@import url("./parts/90-responsive.css");
@import url("./parts/99-spacing-finitions.css");

:root {
    --tpc-space-section-desktop: 46px;
    --tpc-space-section-mobile: 34px;
    --tpc-space-title-gap: 22px;
}

.section,
.category-description-section,
.products-section,
.product-main-buy-section,
.product-buy-section,
.product-editorial-blocks-section,
.product-recipes-section,
.product-story-section,
.product-reception-section,
.product-conservation-section,
.trust-block,
.home-recipes-section,
.professionals-home-section,
.cta-section,
.forest-categories-section,
.forest-ecosystems-section,
.concept-manifesto,
.concept-network-section,
.concept-journey-section,
.concept-freshness-section,
.concept-difference-section,
.concept-cta {
    padding-top: var(--tpc-space-section-desktop) !important;
    padding-bottom: var(--tpc-space-section-desktop) !important;
}

.hero + .trust-block,
.tf-hero-slider + .forest-categories-section,
.concept-hero + .concept-manifesto,
.category-hero + .category-description-section {
    padding-top: 34px !important;
}

.section-header,
.section-header.centered,
.section-title,
.product-editorial-header,
.product-recipes-header,
.product-story-header,
.product-reception-header,
.product-conservation-header,
.concept-section-title {
    margin-top: 0 !important;
    margin-bottom: var(--tpc-space-title-gap) !important;
}

.section-header > *:last-child,
.section-title > *:last-child,
.concept-section-title > *:last-child {
    margin-bottom: 0 !important;
}

.product-editorial-blocks-section,
.product-recipes-section,
.product-story-section,
.product-reception-section,
.product-conservation-section {
    padding-top: 36px !important;
    padding-bottom: 40px !important;
}

.product-editorial-blocks-section + .product-recipes-section,
.product-recipes-section + .product-story-section,
.product-story-section + .product-reception-section,
.product-reception-section + .product-conservation-section {
    margin-top: 0 !important;
}

#editorial-gallery.section-gallery,
#origin-gallery.section-gallery,
#tasting-gallery.section-gallery,
.section-gallery,
.origin-gallery {
    margin-top: 22px !important;
    margin-bottom: 0 !important;
}

.section-gallery + .section-header,
.origin-gallery + .section-header {
    margin-top: 0 !important;
}

.product-reception-note,
.product-conservation-note {
    margin-top: 24px !important;
    margin-bottom: 0 !important;
}

.product-recipes-grid,
.product-reception-grid,
.product-conservation-grid,
.product-editorial-blocks {
    margin-top: 24px !important;
}

.forest-categories-section {
    padding-top: 34px !important;
    padding-bottom: 38px !important;
}

.forest-ecosystems-section {
    padding-top: 36px !important;
    padding-bottom: 44px !important;
}

.forest-categories-grid,
.forest-ecosystems-grid,
.forest-univers-grid,
.tf-ecosystems-list {
    margin-top: 24px !important;
}

.trust-block,
.home-recipes-section,
.professionals-home-section,
.cta-section {
    padding-top: 42px !important;
    padding-bottom: 42px !important;
}

.home-recipes-grid,
.professionals-home-grid {
    margin-top: 24px !important;
}

.concept-manifesto,
.concept-network-section,
.concept-journey-section,
.concept-freshness-section,
.concept-difference-section,
.concept-cta {
    padding-top: 42px !important;
    padding-bottom: 42px !important;
}

@media (max-width: 768px) {
    .section,
    .category-description-section,
    .products-section,
    .product-main-buy-section,
    .product-buy-section,
    .product-editorial-blocks-section,
    .product-recipes-section,
    .product-story-section,
    .product-reception-section,
    .product-conservation-section,
    .trust-block,
    .home-recipes-section,
    .professionals-home-section,
    .cta-section,
    .forest-categories-section,
    .forest-ecosystems-section,
    .concept-manifesto,
    .concept-network-section,
    .concept-journey-section,
    .concept-freshness-section,
    .concept-difference-section,
    .concept-cta {
    padding-top: var(--tpc-space-section-mobile) !important;
    padding-bottom: var(--tpc-space-section-mobile) !important;
}

.hero + .trust-block,
    .tf-hero-slider + .forest-categories-section,
    .concept-hero + .concept-manifesto,
    .category-hero + .category-description-section {
    padding-top: 26px !important;
}

.section-header,
    .section-header.centered,
    .section-title,
    .product-editorial-header,
    .product-recipes-header,
    .product-story-header,
    .product-reception-header,
    .product-conservation-header,
    .concept-section-title {
    margin-bottom: 18px !important;
}

.product-editorial-blocks-section,
    .product-recipes-section,
    .product-story-section,
    .product-reception-section,
    .product-conservation-section {
    padding-top: 28px !important;
    padding-bottom: 32px !important;
}

#editorial-gallery.section-gallery,
    #origin-gallery.section-gallery,
    #tasting-gallery.section-gallery,
    .section-gallery,
    .origin-gallery {
    margin-top: 18px !important;
}

.product-recipes-grid,
    .product-reception-grid,
    .product-conservation-grid,
    .product-editorial-blocks,
    .forest-categories-grid,
    .forest-ecosystems-grid,
    .forest-univers-grid,
    .tf-ecosystems-list,
    .home-recipes-grid,
    .professionals-home-grid {
    margin-top: 18px !important;
}
}


/* =====================================================
   URGENCE — RECETTES ACCUEIL IMAGE PLEIN ÉCRAN
   Force la lightbox image à couvrir tout l'écran.
===================================================== */
.home-recipe-lightbox:not([hidden]) {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #050302 !important;
    z-index: 2147483000 !important;
}
.home-recipe-lightbox:not([hidden]) .home-recipe-lightbox-backdrop,
.home-recipe-lightbox:not([hidden]) .home-recipe-lightbox-figure,
.home-recipe-lightbox:not([hidden]) .home-recipe-lightbox-stage {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    border-radius: 0 !important;
    background: #050302 !important;
}
.home-recipe-lightbox:not([hidden]) .home-recipe-lightbox-stage {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    box-shadow: none !important;
    touch-action: none !important;
}
.home-recipe-lightbox:not([hidden]) #home-recipe-lightbox-img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 100vw !important;
    max-height: 100vh !important;
    max-height: 100dvh !important;
    object-fit: contain !important;
    border-radius: 0 !important;
}
