/*
Theme Name: kifmameche-elementor
Description: Thème indépendant, en-tête et navigation composés dans Elementor.
Version: 1.0.0
Text Domain: kifmameche-elementor
Requires PHP: 7.4
*/
*{box-sizing:border-box}body{margin:0;background:#080808;color:#f2efe8;font-family:Manrope,Arial,sans-serif;line-height:1.65}a{color:inherit}button,input{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #e1262f;outline-offset:4px}
.km-container{width:min(100% - 2 * var(--km-gutter),80rem);margin-inline:auto}.km-site-main{min-height:65vh}.kme-content{max-width:72rem;margin:auto;padding:2rem var(--km-gutter)}.km-visually-hidden,.km-skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.km-skip-link:focus{position:fixed;top:0;left:0;z-index:9999;background:#fff;color:#080808;padding:1rem}
.km-button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1rem;border:1px solid #e1262f;background:#e1262f;color:#fff;text-decoration:none;font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.08em}.km-button--secondary,.km-button--ghost{background:transparent;border-color:#918d84}.km-field__control{min-width:0;width:100%;padding:.75rem;border:1px solid #918d84;background:#121212;color:#f2efe8}
.elementor .kme-header-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:nowrap;width:min(100% - 2 * var(--km-gutter),80rem);max-width:none;min-height:4.5rem;margin:0 auto;padding:0;gap:1rem}
.kme-header-row>.elementor-element{margin:0;min-width:0;width:auto;--container-widget-width:auto;--container-widget-flex-grow:0}.kme-logo{order:1;flex-shrink:0}.kme-navigation{order:0}.kme-actions{order:3}.kme-logo .km-site-brand{min-width:0}.kme-navigation .km-nav--desktop{display:none}.km-header-actions{white-space:nowrap}.km-search-panel{position:absolute;top:100%;left:0;right:0}.km-nav-panel{height:100dvh}.km-nav-overlay{height:100dvh}.km-nav-panel,.km-nav-overlay{backdrop-filter:none}.admin-bar .km-site-header{top:32px}.admin-bar .km-nav-panel{padding-top:48px}
@media(min-width:1200px){.kme-navigation{order:2;flex:1}.kme-navigation .km-nav--desktop{display:flex;justify-content:center}.kme-logo .km-site-brand{min-width:10rem}}
@media(max-width:782px){.admin-bar .km-site-header{top:46px}}
@media(max-width:380px){.elementor .kme-header-row{gap:.25rem}.km-header-actions{padding-left:.25rem}.km-icon-btn{min-width:36px}.km-site-brand{font-size:1.25rem}}
.km-menu .menu-item-has-children{position:relative}.km-nav--desktop .km-menu li:hover>.sub-menu,.km-nav--desktop .km-menu li:focus-within>.sub-menu{display:block;position:absolute;top:100%;left:0;min-width:12rem;padding:1rem;list-style:none;background:#121212}.km-menu--mobile .sub-menu{display:block;list-style:none;padding-left:1rem}.km-menu--mobile .sub-menu a{font-size:1rem}
/* Elementor's responsive widget order must follow the reference header. */
.elementor .kme-header-row>.kme-logo{order:1!important}.elementor .kme-header-row>.kme-navigation{order:0!important}.elementor .kme-header-row>.kme-actions{order:3!important}
@media(min-width:1200px){.elementor .kme-header-row>.kme-navigation{order:2!important}}

/* Accueil : vidéo et superposition du header identiques à la V2. */
body.home .km-site-header{position:fixed;inset-inline:0;top:0;width:100%;border-bottom-color:transparent;background:linear-gradient(180deg,rgba(8,8,8,.5),rgba(8,8,8,.08));backdrop-filter:none;text-shadow:0 1px 14px rgba(0,0,0,.55)}
body.home .km-site-header.is-scrolled{background:rgba(8,8,8,.96);border-bottom-color:var(--km-color-border-strong);backdrop-filter:blur(12px)}
body.home .km-site-header:not(.is-scrolled) .km-menu a,body.home .km-site-header:not(.is-scrolled) .km-icon-btn{color:color-mix(in srgb,var(--km-color-bone) 88%,transparent)}
body.home.admin-bar .km-site-header{top:32px}@media(max-width:782px){body.home.admin-bar .km-site-header{top:46px}}
.elementor .kme-hero-section{padding:0;gap:0;width:100%;max-width:none;--container-widget-width:100%}.kme-hero-section .elementor-widget{width:100%;margin:0}
.kme-video-hero{position:relative;min-height:100svh;overflow:clip;isolation:isolate;background:#080808}
.kme-video-hero__media,.kme-video-hero__overlay{position:absolute;inset:0}
.kme-video-hero__media img,.kme-video-hero__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.84) contrast(1.08)}
.kme-video-hero__media video[hidden]{display:none}
.kme-video-hero__overlay{background:linear-gradient(180deg,rgba(8,8,8,.18) 0%,rgba(8,8,8,.34) 45%,rgba(8,8,8,.94) 100%),linear-gradient(90deg,rgba(8,8,8,.9) 0%,rgba(8,8,8,.58) 42%,rgba(8,8,8,.08) 78%);pointer-events:none}
.kme-video-hero:after{content:"";position:absolute;inset:0;opacity:.14;pointer-events:none;background-image:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.035) 3px 4px),repeating-linear-gradient(90deg,transparent 0 5px,rgba(255,255,255,.02) 5px 6px);mix-blend-mode:soft-light}
/* Vue intérieure du complément, image Elementor native. */
.elementor .kme-color-guide-hero .elementor-heading-title{font:600 clamp(42px,7vw,88px)/1.05 Oswald,sans-serif;color:#f2efe8}.elementor .kme-color-guide-advice .elementor-heading-title,.elementor .kme-color-guide-doubt .elementor-heading-title{font:600 clamp(30px,4vw,48px)/1.1 Oswald,sans-serif;color:inherit}.elementor .kme-color-guide-hero .elementor-widget-text-editor,.elementor .kme-color-guide-advice .elementor-widget-text-editor,.elementor .kme-color-guide-doubt .elementor-widget-text-editor{font-family:Manrope,sans-serif;color:inherit}
/* Guide des couleurs : contenu natif Elementor et cartes WooCommerce. */
.elementor .kme-color-guide-hero,.elementor .kme-color-guide-advice,.elementor .kme-color-guide-doubt{padding:72px max(24px,calc((100% - 1200px)/2));gap:24px;background:#121212;color:#f2efe8}.kme-color-guide-hero h1{font:600 clamp(42px,7vw,88px)/1.05 Oswald,sans-serif;color:#f2efe8;margin:0}.kme-color-guide-hero .elementor-widget-text-editor{max-width:65ch;font-size:18px}.kme-color-guide-hero p{margin:0 0 12px}.kme-color-guide-hero .elementor-button{background:#e1262f;color:#fff;border-radius:0;font:600 15px Oswald,sans-serif;text-transform:uppercase;padding:18px 24px}.elementor .kme-color-guide-advice{background:#f2efe8;color:#171717;padding-bottom:0}.kme-color-guide-advice h2,.kme-color-guide-doubt h2{font:600 clamp(30px,4vw,48px)/1.1 Oswald,sans-serif;color:inherit;margin:0}.kme-color-guide-advice ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;list-style:none;counter-reset:advice;padding:0;margin:8px 0 0}.kme-color-guide-advice li{counter-increment:advice;border-top:1px solid #17171740;padding-top:20px}.kme-color-guide-advice li:before{content:"0" counter(advice);display:block;color:#b71921;font:500 30px Oswald,sans-serif;margin-bottom:16px}.kme-color-guide-advice strong{font-size:18px}.kme-color-guide-advice p{margin:12px 0 0}.kme-color-guide-doubt .elementor-widget-text-editor{max-width:75ch}.kme-color-guide-scale .kme-color-card__media{aspect-ratio:1;background:#fff}.kme-color-guide-scale .kme-color-card__media img{object-fit:contain}.kme-color-guide-scale .kme-color-card__media:after{display:none}#les-six-teintes{scroll-margin-top:90px}@media(max-width:767px){.elementor .kme-color-guide-hero,.elementor .kme-color-guide-advice,.elementor .kme-color-guide-doubt{padding:48px 24px}.elementor .kme-color-guide-advice{padding-bottom:0}.kme-color-guide-advice ol{grid-template-columns:1fr;gap:24px}.kme-color-guide-hero .elementor-widget-text-editor{font-size:16px}}
.elementor .kme-cc-preview{padding:32px 24px;background:#121212;align-items:center;gap:0}.kme-cc-preview .elementor-widget-image{width:100%;max-width:500px}.kme-cc-preview img{display:block;width:100%;height:auto;object-fit:contain;margin:auto}
/* Explication du modèle : widgets texte et image Elementor. */
.elementor .kme-model-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"heading image" "copy image";column-gap:64px;row-gap:24px;align-items:center;padding:80px max(24px,calc((100% - 1200px)/2));color:#f2efe8}.kme-model-story .kme-model-heading{grid-area:heading;align-self:end;width:100%;margin:0}.kme-model-story .kme-model-copy{grid-area:copy;align-self:start;width:100%;margin:0}.kme-model-story .kme-model-image{grid-area:image;justify-self:center;width:100%;max-width:500px;margin:0}.kme-model-heading h2{font:600 clamp(32px,4vw,52px)/1.08 Oswald,sans-serif;color:#f2efe8;margin:0}.kme-model-eyebrow{font:600 12px Oswald,sans-serif;letter-spacing:.2em;color:#e1262f;margin:0 0 16px}.kme-model-copy{font-size:16px;line-height:1.7;color:#c8c3bb}.kme-model-copy ul{list-style:none;padding:0;margin:28px 0}.kme-model-copy li{padding:16px 0;border-top:1px solid #ffffff24}.kme-model-copy strong{font-size:18px;color:#f2efe8}.kme-model-note{font-size:14px;color:#a5a099}.kme-model-story p:last-child{margin-bottom:0}@media(max-width:767px){.elementor .kme-model-story{grid-template-columns:minmax(0,1fr);grid-template-areas:"heading" "image" "copy";gap:20px;padding:48px 24px}.kme-model-story .kme-model-image{max-width:360px}.kme-model-copy{font-size:15px}}
.elementor .kme-faq-section{padding:0;gap:0}.kme-faq{display:grid;grid-template-columns:1fr 1.4fr;gap:64px;padding:80px max(24px,calc((100% - 1200px)/2));background:#f2efe8;color:#171717}.kme-faq h2{font:600 clamp(32px,4vw,52px)/1.05 Oswald,sans-serif;color:#080808;margin:0 0 24px}.kme-faq-eyebrow{color:#b71921;font-size:12px;letter-spacing:.16em;font-weight:700}.kme-faq details{border-bottom:1px solid #08080833}.kme-faq summary{padding:22px 0;cursor:pointer;font-weight:700;font-size:17px}.kme-faq details p{padding:0 0 22px;margin:0;line-height:1.75}.kme-faq summary:focus-visible{outline:2px solid #b71921;outline-offset:4px}#faq{scroll-margin-top:72px}@media(max-width:767px){.kme-faq{grid-template-columns:1fr;gap:24px;padding:48px 24px}}
body.tax-product_cat.term-accessoires .elementor .kme-product-section{padding:0;gap:0;width:100%;max-width:none}body.tax-product_cat.term-accessoires .elementor-widget-heading{margin:0;padding:48px 24px 0;background:#17181a;width:100%}body.tax-product_cat.term-accessoires .elementor-widget-heading h1{font:600 clamp(36px,5vw,60px)/1.1 Oswald,sans-serif;text-transform:uppercase;color:#f2efe8}body.tax-product_cat.term-accessoires .kme-kit{padding-top:48px}
.elementor .kme-about-page{background:#f2efe8;color:#171717;min-height:55vh;padding:80px max(24px,calc((100% - 1000px)/2));gap:32px}.kme-about-page h1{font:600 clamp(38px,6vw,72px)/1.05 Oswald,sans-serif;text-transform:uppercase;color:#080808;margin:0}.kme-about-page .elementor-widget-text-editor{font-size:18px;line-height:1.8;max-width:70ch}@media(max-width:767px){.elementor .kme-about-page{padding:48px 24px}}

/* Logo recadre fourni par le proprietaire : proportions naturelles. */
.kme-logo-trial{display:block;width:230px;flex-shrink:0}
.km-site-brand .kme-logo-trial img{display:block;position:static;width:100%;height:auto;max-width:100%;}
.km-site-footer .km-site-brand:has(.kme-logo-trial){width:280px;max-width:100%}.km-site-footer .kme-logo-trial{width:100%}
@media(max-width:767px){.kme-logo-trial{width:150px}.km-site-footer .kme-logo-trial{width:250px;max-width:100%}}
.kme-shipping-reassurance{font-size:14px;line-height:1.7;padding:16px 0;border-top:1px solid #8885}.kme-shipping-reassurance a{text-decoration:underline;text-underline-offset:3px}
