/* Kaya — direction « Éditorial » : grands titres, grosses images, blocs de couleur. Chargé après kaya.css et kaya-fx.css. */
:root{--radius:28px}
body{background:var(--cream)}

/* Bandeau + en-tête */
.announce{font-size:12.5px;font-weight:700;letter-spacing:.7px;text-transform:uppercase}
.header{background:rgba(248,243,234,.94);border-bottom:2px solid var(--navy)}
.header .container{min-height:84px}
.logo .word b{font-weight:900;font-size:30px;letter-spacing:-1px}
.nav a{font-weight:700;border-radius:0;padding:8px 14px;border-bottom:3px solid transparent}
.nav a:hover{background:transparent;border-bottom-color:var(--pink)}
.nav a.active{background:transparent;color:var(--navy);border-bottom-color:var(--navy)}
.search{background:#fff;border:2px solid var(--navy)}
.cart-link{padding:12px 20px}

/* Boutons */
.btn{min-height:58px;padding:0 34px;font-weight:800;font-size:16px}
.btn-sm{min-height:42px;padding:0 20px}

/* Hero */
.hero{background:var(--cream)}
.hero::before{background:var(--peach);opacity:.9;filter:none;width:560px;height:560px;left:auto;right:-160px;top:-120px;animation:none}
.hero::after{display:none}
.hero-inner{padding-top:40px;padding-bottom:84px;gap:56px}
.pill-tag{background:transparent;padding:0;font-size:13px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase}
.pill-tag i{width:36px;height:2px;border-radius:0;background:var(--navy)}
.hero h1{font-size:clamp(54px,8.2vw,120px);font-weight:900;letter-spacing:-.05em;line-height:.9;text-transform:uppercase}
.hero h1 .script{text-transform:none;font-size:1.05em;color:var(--pink)}
.hero p.lead{color:#4A5384;margin:26px 0 34px}
.hero-visual .frame{width:92%;aspect-ratio:4/5;max-height:640px;border-radius:48px 48px 48px 200px;box-shadow:none;background:#FFDBD1}
.float-card{left:auto;right:22px;bottom:26px;border-radius:22px;padding:16px 22px}
.float-card b{font-size:26px;font-weight:900;letter-spacing:-1px}

/* Réassurance */
.trust{border-top:2px solid var(--navy);border-bottom:2px solid var(--navy);background:var(--cream)}
.trust .container{gap:0;padding-top:0;padding-bottom:0}
.trust-item{padding:24px 22px;border-right:1px solid #D8D0C0}
.trust-item:first-child{padding-left:0}.trust-item:last-child{border-right:0}
.trust-item .ic{background:var(--peach)}
.trust-item b{font-weight:900;font-size:16px}

/* Sections */
.section{padding:88px 0 24px}
.section.alt{background:transparent;padding-bottom:24px}
.section-head{margin-bottom:34px}
.section-title{font-size:clamp(38px,5vw,68px);font-weight:900;letter-spacing:-.04em;line-height:.95;text-transform:uppercase}
.section-title .script{text-transform:none;color:var(--pink);font-size:1.05em}
.see-all{font-weight:800;border-bottom-width:3px}

/* Catégories */
.cat-tiles{gap:20px}
.cat-tile{border-radius:32px;transition:transform .35s cubic-bezier(.22,.8,.26,1)}
.cat-tile:hover{transform:translateY(-8px)}
.cat-tile .cap{right:auto;left:16px;bottom:16px;gap:12px;border-radius:999px;padding:12px 22px;font-weight:900}

/* Cartes produit */
.grid{gap:34px 22px}
.card .thumb{border-radius:28px;transition:transform .35s cubic-bezier(.22,.8,.26,1)}
.card:hover .thumb{transform:translateY(-6px)}
.card h3{font-size:18px;font-weight:800}
.price{font-size:22px;font-weight:900;letter-spacing:-.5px}
.mini-btn{width:46px;height:46px}
.chip{font-weight:800;padding:7px 14px}

/* Bande promo */
.section:has(.promo){padding:88px 0}
.promo{border-radius:48px;padding:clamp(32px,6vw,80px)}
.promo::after{width:300px;height:300px;right:-90px;top:-90px;opacity:1}
.promo h2{font-size:clamp(36px,5vw,64px);font-weight:900;letter-spacing:-.04em;line-height:.98;text-transform:uppercase}
.promo h2 .script{text-transform:none}
.promo .steps div{border-radius:24px;padding:20px 24px;font-size:18px;font-weight:700}
.promo .steps b{width:auto;height:auto;background:transparent;color:var(--pink);font-size:38px;font-weight:900;letter-spacing:-2px}

/* Pages internes */
.page-title{font-size:clamp(36px,4.6vw,60px);font-weight:900;letter-spacing:-.04em;text-transform:uppercase;line-height:.95}
.filters .list a{border-radius:999px}
.gallery .main{border-radius:40px}
.thumbs button{border-radius:18px}
.info h1{font-size:clamp(34px,4vw,52px);font-weight:900;letter-spacing:-.04em;line-height:.98;text-transform:uppercase}
.big-price{font-size:40px;font-weight:900;letter-spacing:-1.5px}
.opt span{border-radius:999px;border-color:var(--navy)}
.box{background:#fff;border:2px solid var(--navy);border-radius:28px}
.line img{border-radius:20px}

/* Pied de page clair */
.footer{background:var(--cream);color:var(--navy);border-top:2px solid var(--navy)}
.footer .brand{font-weight:900;font-size:40px;letter-spacing:-2px}
.footer p{color:#4A5384}
.footer h4{color:var(--navy);font-weight:800}
.footer a:hover{color:#E2709A}

@media (max-width:900px){
  .hero-inner{padding-bottom:56px}
    .trust-item{border-right:0;padding:16px 0}
  .section{padding:56px 0 12px}
}
.footer li{color:var(--navy)}
.footer .legal{border-top:1px solid #D8D0C0;color:#4A5384}

.badge-spin{position:absolute;left:0;top:34px;z-index:2;width:132px;height:132px;pointer-events:none}
.badge-spin svg{width:100%;height:100%;animation:badgespin 18s linear infinite}
@keyframes badgespin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.badge-spin svg{animation:none}}
