/* Vitrine boutique Chez Nina -- charte via var(--marque-*). Titres en serif (elegance). */
:root{ --cn-rose-clair:#FBEFF5; --cn-gris:#f4f2f5; --cn-ligne:#ece7ee; }
body{background:var(--marque-fond)}
img{max-width:100%;height:auto}
/* Mise en page LARGE (proche pleine largeur, comme la maquette) — surcharge le 1080px du thème. */
.wrap{max-width:1600px;padding-left:2rem;padding-right:2rem}
.cn-page{max-width:1120px}   /* le contenu editorial (pages, articles) reste lisible, pas trop large */
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;color:var(--marque-secondaire)}
.cn-center{text-align:center}

/* -- Bandeau reassurance -- */
.cn-topbar{background:linear-gradient(90deg,#c85a9c,var(--marque-primaire),#c85a9c);color:#fff;font-size:.84rem}
.cn-topbar-in{display:flex;gap:2rem;justify-content:center;padding:.55rem 1.2rem;flex-wrap:wrap;font-weight:500}

/* -- En-tete -- */
.cn-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--cn-ligne)}
.cn-header-in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:.9rem 1.2rem}
.cn-search{display:flex;align-items:center;background:var(--cn-gris);border-radius:24px;padding:.15rem .15rem .15rem .9rem;max-width:320px}
.cn-search input[type=search]{border:0;background:transparent;outline:none;font:inherit;padding:.4rem .3rem;width:100%}
.cn-search button{border:0;background:transparent;cursor:pointer;font-size:1rem;padding:.3rem .5rem}
.cn-logo{justify-self:center}
.cn-logo img{height:96px;width:auto;display:block}
.cn-logo span{font-family:Georgia,serif;font-weight:700;font-size:1.4rem;color:var(--marque-secondaire)}
.cn-account{justify-self:end;display:flex;gap:1.3rem}
.cn-account a{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--marque-texte);font-size:.7rem;position:relative}
.cn-account .cn-ic{font-size:1.15rem}
.cn-badge{position:absolute;top:-6px;right:-10px;background:var(--marque-primaire);color:#fff;border-radius:20px;font-size:.66rem;padding:.05rem .35rem;font-weight:700}

/* -- Menu -- */
.cn-nav{border-top:1px solid var(--cn-ligne)}
.cn-nav-in{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;padding:.7rem 1.2rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}
.cn-nav-in a{text-decoration:none;color:var(--marque-secondaire);font-weight:600;padding:.15rem 0;border-bottom:2px solid transparent}
.cn-nav-in a:hover,.cn-nav-in a.on{border-color:var(--marque-primaire);color:var(--marque-primaire)}
.cn-nav-in a.cn-phare{color:var(--marque-primaire)}

/* -- Boutons -- */
.cn-btn{display:inline-block;text-decoration:none;font-weight:700;border-radius:26px;padding:.7rem 1.5rem;font-size:.92rem;transition:transform .1s}
.cn-btn:hover{transform:translateY(-1px)}
.cn-btn-primary{background:linear-gradient(135deg,#9B72C7,var(--marque-primaire));color:#fff}
.cn-btn-ghost{background:#fff;color:var(--marque-secondaire);border:1.5px solid var(--marque-primaire)}

/* -- Hero -- */
.cn-hero{background:linear-gradient(120deg,var(--cn-rose-clair),#fff 70%)}
.cn-hero-in{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center;padding:3.5rem 1.2rem}
.cn-hero-txt h1{font-size:2.7rem;line-height:1.12;margin:0 0 1rem}
.cn-hero-txt h1 em{font-style:normal;background:linear-gradient(120deg,#9B72C7,var(--marque-primaire));-webkit-background-clip:text;background-clip:text;color:transparent}
.cn-hero-txt p{font-size:1.15rem;max-width:46ch;margin:0 0 1.6rem;color:#4a3f52}
.cn-hero-cta{display:flex;gap:.8rem;flex-wrap:wrap}
.cn-hero-visual{aspect-ratio:4/3;border-radius:24px;background:radial-gradient(circle at 60% 40%,var(--cn-rose-clair),#efd9e6 60%,#e6c9dc);display:flex;align-items:center;justify-content:center;box-shadow:0 20px 50px rgba(59,46,74,.12);overflow:hidden}
.cn-hero-visual span{font-size:6rem}
.cn-hero-visual.has-img{background:none}
.cn-hero-visual img{width:100%;height:100%;object-fit:cover;display:block}

/* -- Reassurance -- */
.cn-reass{border-bottom:1px solid var(--cn-ligne)}
.cn-reass-in{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.6rem 1.2rem;text-align:center}
.cn-reass-in strong{display:block;color:var(--marque-secondaire);font-size:.95rem}
.cn-reass-in span{font-size:.8rem;color:#7a7080}

/* -- Sections -- */
.cn-section{padding:3rem 1.2rem}
.cn-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.cn-sec-head h2{font-size:1.8rem;margin:0}
.cn-sec-sub{color:#7a7080;margin:.2rem 0 1.4rem}
.cn-seemore{text-decoration:none;color:var(--marque-primaire);font-weight:600;font-size:.9rem}
.cn-empty{background:var(--cn-rose-clair);border:1px dashed #e0bdd2;border-radius:14px;padding:2.2rem;text-align:center;color:#8a5f77;margin:1rem 0}

/* -- Grille produits -- */
.cn-prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:1.4rem}
.cn-prod{display:block;text-decoration:none;color:var(--marque-texte);background:#fff;border:1px solid var(--cn-ligne);border-radius:16px;overflow:hidden;transition:box-shadow .15s,transform .15s}
.cn-prod:hover{box-shadow:0 14px 30px rgba(59,46,74,.1);transform:translateY(-3px)}
.cn-prod-img img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:var(--cn-gris)}
.cn-prod-nom{display:block;padding:.8rem .9rem .1rem;font-weight:600}
.cn-prod-prix{display:block;padding:0 .9rem 1rem;color:var(--marque-primaire);font-weight:700}

/* -- Univers (categories) -- */
.cn-univers{background:var(--cn-rose-clair);padding:3rem 0}
.cn-univers h2{font-size:1.8rem;margin:0 0 1.6rem}
.cn-cat-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:1rem}
.cn-cat{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-decoration:none;color:var(--marque-secondaire);background:#fff;border-radius:16px;padding:1.2rem .5rem;border:1px solid var(--cn-ligne);transition:transform .12s,box-shadow .12s}
.cn-cat:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(59,46,74,.1)}
.cn-cat-ic{font-size:1.9rem}
.cn-cat-nom{font-size:.78rem;font-weight:600;text-align:center}

/* -- Pourquoi -- */
.cn-why-in{display:grid;grid-template-columns:.8fr 1.2fr;gap:2.5rem;align-items:center;padding:3.5rem 1.2rem}
.cn-why-media{aspect-ratio:1/1;border-radius:50%;background:radial-gradient(circle at 50% 40%,#efd9e6,#e6c9dc);display:flex;align-items:center;justify-content:center;max-width:320px;margin:0 auto;box-shadow:0 16px 40px rgba(59,46,74,.14)}
.cn-why-media span{font-family:Georgia,serif;font-size:4rem;font-weight:700;background:linear-gradient(135deg,#2F5AA8,#8A54C9 50%,#E24EA6);-webkit-background-clip:text;background-clip:text;color:transparent}
.cn-why-txt h2{font-size:1.9rem;margin:0 0 .8rem}
.cn-why-txt p{color:#4a3f52;font-size:1.05rem;max-width:52ch;margin:0 0 1.4rem}

/* -- Newsletter -- */
.cn-news{background:var(--marque-secondaire);color:#fff}
.cn-news-in{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;padding:2.6rem 1.2rem}
.cn-news-txt h2{color:#fff;margin:0 0 .3rem;font-size:1.6rem}
.cn-news-txt p{margin:0;opacity:.9}
.cn-news-form{display:flex;gap:.5rem;flex-wrap:wrap}
.cn-news-form input{border:0;border-radius:24px;padding:.75rem 1.1rem;font:inherit;min-width:260px}

/* -- Footer -- */
.cn-footer{background:#fff;border-top:1px solid var(--cn-ligne);margin-top:1rem}
.cn-footer-in{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:1.8rem;padding:3rem 1.2rem}
.cn-fbrand img{height:70px;width:auto}
.cn-fbrand p{margin:.7rem 0 .4rem;font-size:.9rem}
.cn-fbrand a{color:var(--marque-primaire);text-decoration:none}
.cn-social{display:flex;gap:.8rem;flex-wrap:wrap;font-size:.85rem}
.cn-fcol h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--marque-secondaire);margin:0 0 .9rem}
.cn-fcol ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.cn-fcol a{text-decoration:none;color:#6a6072;font-size:.9rem}
.cn-fcol a:hover{color:var(--marque-primaire)}
.cn-footer-bottom{border-top:1px solid var(--cn-ligne)}
.cn-fbottom-in{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.1rem 1.2rem;font-size:.78rem;color:#8a8092}
.cn-fbottom-in a{color:var(--marque-primaire);text-decoration:none}

/* -- Responsive -- */
@media(max-width:900px){
  .cn-header{position:static}              /* pas de header fixe sur mobile : il mangeait l'ecran */
  .cn-topbar{font-size:.72rem}
  .cn-topbar-in{padding:.4rem .8rem}
  .cn-header-in{grid-template-columns:auto 1fr auto;gap:.5rem;padding:.6rem .8rem}
  .cn-logo img{height:52px}
  .cn-search{grid-row:2;grid-column:1/4;max-width:none}
  .cn-account{gap:.7rem}
  .cn-account .cn-lb{display:none}         /* on garde les icones, on retire les libelles */
  .cn-nav-in{gap:.9rem;font-size:.72rem;padding:.5rem .8rem;overflow-x:auto;flex-wrap:nowrap;justify-content:flex-start}
  .cn-hero-in{grid-template-columns:1fr}
  .cn-hero-visual{order:-1;max-width:340px;margin:0 auto}
  .cn-reass-in{grid-template-columns:repeat(2,1fr)}
  .cn-prod-grid{grid-template-columns:repeat(2,1fr)}
  .cn-cat-grid{grid-template-columns:repeat(4,1fr)}
  .cn-why-in{grid-template-columns:1fr}
  .cn-footer-in{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .cn-hero-txt h1{font-size:2rem}
  .cn-cat-grid{grid-template-columns:repeat(2,1fr)}
  .cn-footer-in{grid-template-columns:1fr}
}

/* ===== Gabarits intérieurs (page, blog, recherche, 404, boutique) ===== */
.cn-pagehead{background:linear-gradient(120deg,var(--cn-rose-clair),#fff 75%);border-bottom:1px solid var(--cn-ligne);padding:2.6rem 1.2rem}
.cn-pagehead h1{font-size:2.1rem;margin:0}
.cn-ph-sub,.cn-meta{color:#8a7f92;margin:.3rem 0 0;font-size:.9rem}
.cn-page{padding:2.6rem 1.2rem;max-width:920px}
.cn-page-thumb{margin:0 0 1.6rem;border-radius:16px;overflow:hidden}
.cn-page-thumb img{width:100%;height:auto;display:block}

/* Contenu éditorial (the_content) */
.cn-content{font-size:1.05rem;color:#332c3b}
.cn-content h2{font-size:1.5rem;margin:2rem 0 .6rem}
.cn-content h3{font-size:1.2rem;margin:1.6rem 0 .5rem}
.cn-content p{margin:0 0 1rem}
.cn-content a{color:var(--marque-primaire)}
.cn-content ul,.cn-content ol{margin:0 0 1rem 1.3rem}
.cn-content li{margin:.3rem 0}
.cn-content img{max-width:100%;height:auto;border-radius:12px}
.cn-content blockquote{border-left:3px solid var(--marque-primaire);margin:1.4rem 0;padding:.3rem 0 .3rem 1.1rem;color:#6a5f72;font-style:italic}
.cn-content table{width:100%;border-collapse:collapse;margin:1rem 0}
.cn-content th,.cn-content td{border:1px solid var(--cn-ligne);padding:.5rem .7rem;text-align:left}

/* Grille d'articles (blog / recherche) */
.cn-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.cn-post-card{display:flex;flex-direction:column;text-decoration:none;color:var(--marque-texte);background:#fff;border:1px solid var(--cn-ligne);border-radius:16px;overflow:hidden;transition:box-shadow .15s,transform .15s}
.cn-post-card:hover{box-shadow:0 14px 30px rgba(59,46,74,.1);transform:translateY(-3px)}
.cn-post-thumb img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;background:var(--cn-gris)}
.cn-post-body{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.3rem}
.cn-post-date{font-size:.75rem;color:#a196ac;text-transform:uppercase;letter-spacing:.04em}
.cn-post-title{font-family:Georgia,serif;font-weight:700;font-size:1.1rem;color:var(--marque-secondaire)}
.cn-post-exc{font-size:.9rem;color:#6a6072}
.cn-pagination{margin-top:2rem;text-align:center}
.cn-pagination .page-numbers{display:inline-block;padding:.4rem .8rem;margin:.15rem;border:1px solid var(--cn-ligne);border-radius:8px;text-decoration:none;color:var(--marque-secondaire)}
.cn-pagination .page-numbers.current{background:var(--marque-primaire);color:#fff;border-color:var(--marque-primaire)}

/* 404 */
.cn-404{text-align:center;max-width:640px}
.cn-search-lg{max-width:420px;margin:1.4rem auto 0}
.cn-404 .cn-btn{margin:.3rem}

/* ===== Surcouche WooCommerce (boutique, produit, panier, compte) ===== */
.cn-shop{padding:2.6rem 1.2rem}
.woocommerce .woocommerce-breadcrumb{color:#a196ac;font-size:.85rem;margin-bottom:1.2rem}
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:Georgia,serif;font-size:1rem;color:var(--marque-secondaire)}
.woocommerce ul.products li.product .price{color:var(--marque-primaire);font-weight:700}
.woocommerce span.onsale{background:var(--marque-accent);color:#fff}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce .single_add_to_cart_button{
  background:linear-gradient(135deg,#9B72C7,var(--marque-primaire));color:#fff;border-radius:24px;padding:.65em 1.4em;font-weight:700;border:0;transition:filter .12s}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:var(--marque-secondaire);filter:none}
.woocommerce .product_meta,.woocommerce div.product .woocommerce-product-details__short-description{color:#4a3f52}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--marque-primaire)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--marque-primaire)!important}
.woocommerce-message::before,.woocommerce-info::before{color:var(--marque-primaire)}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span.current{color:var(--marque-secondaire)}
.woocommerce #respond input#submit.disabled,.woocommerce .widget_price_filter .ui-slider .ui-slider-range{background:var(--marque-primaire)}

/* ===== Page PRODUIT ===== */
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start}
.woocommerce div.product .woocommerce-product-gallery{width:100%!important;margin:0!important;float:none}
.woocommerce div.product .woocommerce-product-gallery img{border-radius:16px}
.woocommerce div.product .summary{margin:0!important;width:100%!important;float:none}
.woocommerce div.product .product_title{font-family:Georgia,serif;color:var(--marque-secondaire);font-size:2rem;margin:0 0 .5rem}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--marque-primaire);font-size:1.9rem;font-weight:700}
.woocommerce div.product .woocommerce-product-details__short-description{color:#4a3f52;margin:.8rem 0}
.woocommerce div.product form.cart{margin:1.3rem 0 .4rem}
.woocommerce .quantity .qty{padding:.55rem;border:1px solid var(--cn-ligne);border-radius:8px;width:4rem}
.cn-buynow{display:block!important;background:#fff!important;color:var(--marque-secondaire)!important;border:2px solid var(--marque-primaire)!important;border-radius:26px!important;text-align:center;margin-top:.6rem!important;font-weight:700}
.cn-buynow:hover{background:var(--cn-rose-clair)!important}
.cn-pdp-pay{margin:1rem 0 .5rem;font-size:.85rem;color:#6a6072}
.cn-pdp-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:.8rem 0;padding:1rem;background:var(--cn-rose-clair);border-radius:12px}
.cn-pdp-trust>div{text-align:center;font-size:.7rem;color:#7a7080;line-height:1.3}
.cn-pdp-trust span{font-size:1.3rem;display:block}
.cn-pdp-trust strong{display:block;color:var(--marque-secondaire);font-size:.8rem;margin:.15rem 0 .05rem}
.woocommerce div.product .woocommerce-tabs{grid-column:1/3;margin-top:1.2rem}
.woocommerce div.product .woocommerce-tabs ul.tabs{border:0;padding:0 0 .3rem;margin:0 0 1.4rem;display:flex;gap:1.6rem;flex-wrap:wrap;border-bottom:2px solid var(--cn-ligne)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent;border:0;padding:0 0 .6rem;margin:0;border-radius:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--marque-secondaire);font-weight:700;text-transform:uppercase;font-size:.82rem;letter-spacing:.03em;padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--marque-primaire);border-bottom:2px solid var(--marque-primaire);padding-bottom:.55rem}
.woocommerce div.product .woocommerce-tabs .panel h2{font-family:Georgia,serif;color:var(--marque-secondaire);font-size:1.3rem}
.woocommerce .related,.woocommerce .upsells{grid-column:1/3;margin-top:2.5rem}
.woocommerce .related>h2,.woocommerce .upsells>h2{font-family:Georgia,serif;color:var(--marque-secondaire);text-align:center;font-size:1.7rem;margin-bottom:1.4rem}

@media(max-width:820px){
  .woocommerce div.product{grid-template-columns:1fr;gap:1.5rem}
  .woocommerce div.product .woocommerce-tabs,.woocommerce .related,.woocommerce .upsells{grid-column:1}
  .cn-pdp-trust{grid-template-columns:1fr;text-align:left}
}
@media(max-width:900px){ .cn-post-grid{grid-template-columns:repeat(2,1fr)} }
@media(max-width:560px){ .cn-post-grid{grid-template-columns:1fr} .cn-page{padding:1.8rem 1.2rem} }
