*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --ink:#1c1c1a;
  --terra:#C9877A;
  --terra-dark:#b36e61;
  --cream:#FAF7F0;
  --cream2:#F1EFE7;
  --border:#ece8df;
  --border-dark:#d9d4c9;
  --muted:#7a746b;
  --dark:#23211d;
  --green:#2e7d32;
  --green-bg:#e8f5e9;
  --orange:#e65100;
  --orange-bg:#fff3e0;
}

html, body {
  overflow-x: hidden;
  width: 100%;
}

html{scroll-behavior:smooth}
body{font-family:"Inter",system-ui,sans-serif;color:var(--dark);background:#fff;font-size:15px;line-height:1.6}
a{color:var(--ink);text-decoration:none}
img{display:block;max-width:100%}
h1,h2,h3,h4,h5{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;letter-spacing:-.01em;color:var(--ink)}

/* ── Utility & Container ── */
.w{
  width: 100%;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
}

.btn{font-weight:700;font-size:.86rem;border:none;border-radius:0;padding:14px 28px;cursor:pointer;text-decoration:none;display:inline-block;transition:.2s}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:#333}
.btn-outline{background:#fff;color:var(--ink);border:1.5px solid var(--border)}
.btn-outline:hover{border-color:var(--ink)}
.btn-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.6)}
.btn-ghost:hover{background:rgba(255,255,255,.08)}
.tag{color:#b5705f;font-weight:700;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px;display:block}

/* ── NAV WITH PATTERN ICONS (STRICT SINGLE LINE) ── */
.iyp-nav{position:sticky;top:0;z-index:100;background:rgba(250,247,240,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);width:100%}
.iyp-nav-inner{display:flex;align-items:center;height:68px;gap:8px;flex-wrap:nowrap;justify-content:space-between;white-space:nowrap;width:100%}
.iyp-logo{font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-weight:900;font-size:1.15rem;color:var(--ink);white-space:nowrap;letter-spacing:-0.03em;flex-shrink:0;text-decoration:none;display:flex;flex-direction:column}
.iyp-logo span{color:var(--terra)}
.iyp-navlinks{display:flex;gap:4px;list-style:none;align-items:center;flex-wrap:nowrap;white-space:nowrap;margin:0;padding:0}
.iyp-navlinks a{
  display:inline-flex;
  align-items:center;
  gap:4px;
  font-size:.76rem;
  font-weight:600;
  color:var(--muted);
  transition:.15s;
  white-space:nowrap;
  padding:4px 6px;
  border-radius:6px;
}
.iyp-navlinks a:hover{color:var(--ink);background:rgba(0,0,0,.03)}

/* ── BOUTONS MIS EN AVANT DANS LA NAVIGATION ── */
.nav-btn-catalog {
  background: var(--ink) !important;
  color: #fff !important;
  font-weight: 800 !important;
  border-radius: 7px !important;
  padding: 5px 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  transition: all 0.2s !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.12) !important;
  font-size: .76rem !important;
}
.nav-btn-catalog:hover {
  background: #333 !important;
  transform: translateY(-1px);
}
.nav-btn-catalog .nav-pill-tag {
  font-size: 0.58rem;
  background: #27AE60;
  color: #fff;
  padding: 1px 5px;
  border-radius: 8px;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.nav-btn-sim {
  font-weight: 800 !important;
  color: var(--ink) !important;
  background: rgba(154, 107, 61, 0.12) !important;
  border-radius: 7px !important;
  padding: 5px 10px !important;
  border: 1px solid rgba(154, 107, 61, 0.28) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  transition: all 0.2s !important;
  font-size: .76rem !important;
}
.nav-btn-sim:hover {
  background: rgba(154, 107, 61, 0.20) !important;
}
.nav-btn-sim .nav-pill-tag {
  font-size: 0.58rem;
  background: #9A6B3D;
  color: #fff;
  padding: 1px 5px;
  border-radius: 8px;
  font-weight: 800;
}

.iyp-nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}
.iyp-nav-user{
  font-size:.76rem;
  font-weight:700;
  color:var(--ink);
  background:#FAF8F5;
  border:1px solid var(--border);
  border-radius:7px;
  padding:6px 10px;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  gap:5px;
  transition:.15s;
}
.iyp-nav-user:hover{background:#fff;border-color:var(--ink)}

.iyp-cart{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  font-size:.82rem !important;
  font-weight:800 !important;
  background:var(--ink) !important;
  color:#fff !important;
  padding:7px 14px !important;
  white-space:nowrap !important;
  transition:.2s !important;
  border-radius:7px !important;
  flex-shrink:0 !important;
  box-shadow:0 2px 8px rgba(0,0,0,0.12) !important;
  cursor:pointer;
}
.iyp-cart:hover{background:#333 !important;transform:translateY(-1px)}
.iyp-cart svg{width:15px;height:15px;stroke:#fff;fill:none;stroke-width:2.2;flex-shrink:0}
.cart-count{background:var(--terra);color:#fff;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:800;flex-shrink:0}

@media (max-width: 1200px) {
  .nav-link-secondary { display: none !important; }
}

/* ── HERO & IMPACTFUL VALUE PROPS ── */
.iyp-hero{background:linear-gradient(120deg,var(--cream),var(--cream2));padding:50px 0 60px}
.iyp-hero-inner{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}
.eyebrow{font-weight:800;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px;display:flex;align-items:center;gap:10px;color:var(--ink)}
.eyebrow::before{content:"";width:28px;height:3px;background:var(--terra);display:inline-block;flex-shrink:0}
.iyp-hero h1{font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-weight:800;font-size:3.2rem;line-height:1.06;letter-spacing:-.03em;margin-bottom:20px;color:var(--ink)}
.iyp-hero h1 em{color:var(--terra);font-style:normal}
.hero-sub{font-size:.98rem;color:var(--muted);max-width:500px;margin-bottom:28px;line-height:1.7}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:34px}

/* ── 3 Cartes Impactantes (Prix, Direct Usine, Livraison) ── */
.hero-usp-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
  padding-top:24px;
  border-top:1px solid var(--border-dark);
}
.usp-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:10px;
  padding:14px 16px;
  display:flex;
  flex-direction:column;
  box-shadow:0 2px 8px rgba(0,0,0,.03);
}
.usp-card .usp-icon{
  width:28px;
  height:28px;
  border-radius:6px;
  background:var(--cream2);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1rem;
  margin-bottom:8px;
  color:var(--terra-dark);
}
.usp-card b{
  font-family:"Bricolage Grotesque";
  font-size:1.15rem;
  font-weight:800;
  color:var(--ink);
  line-height:1.15;
}
.usp-card span{
  font-size:.74rem;
  color:var(--muted);
  margin-top:3px;
  line-height:1.3;
}

.hero-visual{border-radius:18px;overflow:hidden;aspect-ratio:1/1;position:relative;box-shadow:0 12px 36px rgba(0,0,0,.08);background:#f0ece1}
.hero-visual img{width:100%;height:100%;object-fit:cover;display:block}

/* ── GUARANTEE BAR ── */
.gbar{background:#fff;border-bottom:1px solid var(--border);border-top:1px solid var(--border)}
.gbar-g{display:grid;grid-template-columns:repeat(5,1fr);padding:18px 0}
.gi{display:flex;gap:12px;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;padding:0 14px;border-right:1px solid var(--border)}
.gi:last-child{border-right:none}
.gi svg{width:20px;height:20px;flex-shrink:0;color:var(--terra);stroke:currentColor;fill:none;stroke-width:2}
.gi small{display:block;color:var(--muted);font-weight:400;font-size:.72rem;margin-top:2px}

/* ── SECTIONS ── */
.sec{padding:68px 0}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:34px;gap:20px}
.sec-head h2{font-weight:800;font-size:2.1rem;letter-spacing:-.02em;line-height:1.15}
.sec-head a{color:var(--ink);font-weight:700;font-size:.84rem;white-space:nowrap;opacity:.7;transition:.15s;flex-shrink:0}
.sec-head a:hover{opacity:1}

/* ── POSE TILES ── */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tile{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:3/2.2;display:block;background:var(--cream2)}
.tile img{width:100%;height:100%;object-fit:cover;transition:.45s}
.tile:hover img{transform:scale(1.06)}
.tov{position:absolute;inset:0;background:linear-gradient(to top,rgba(28,26,20,.75),rgba(28,26,20,.02) 60%);display:flex;align-items:flex-end;padding:22px 24px;color:#fff}
.tn{font-family:"Bricolage Grotesque";font-weight:800;font-size:1.35rem;display:block;margin-bottom:2px}
.ts{font-size:.78rem;opacity:.85}

/* ── CATALOGUE / SHOP ── */
.shop{background:var(--cream)}
.shop-layout{display:grid;grid-template-columns:250px 1fr;gap:24px;align-items:start}
.filters{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px;position:sticky;top:84px;margin-top:0}
.filters h4{font-family:"Inter";font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:16px 0 8px;font-weight:700}
.filters h4:first-child{margin-top:0}
.fo{display:flex;align-items:center;gap:9px;font-size:.84rem;margin:6px 0;cursor:pointer;user-select:none}
.fo input[type=radio]{accent-color:var(--ink);width:15px;height:15px;flex-shrink:0;cursor:pointer}
.fo .n{margin-left:auto;color:#b3ac9f;font-size:.72rem;padding-left:8px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.chip{border:1px solid var(--border);border-radius:20px;padding:5px 12px;font-size:.76rem;cursor:pointer;transition:.15s}
.chip:hover{border-color:var(--ink)}
.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.fil-footer{margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}
.fil-footer button{width:100%;background:var(--ink);color:#fff;border:none;padding:10px;font-weight:700;font-size:.82rem;cursor:pointer;border-radius:6px;transition:.15s}
.fil-footer button:hover{background:#333}
.bar{display:flex;justify-content:space-between;align-items:center;margin-top:0;margin-bottom:14px;font-size:.84rem;color:var(--muted);gap:12px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:8px 16px;box-shadow:0 1px 4px rgba(0,0,0,.02)}
.bar b{color:var(--ink)}
.sortw{display:flex;align-items:center;gap:8px;font-size:.80rem}
.sortw select{border:1px solid var(--border);padding:5px 10px;font-size:.80rem;background:#FAF8F5;cursor:pointer;color:var(--ink);border-radius:6px;outline:none}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ghead{grid-column:1/-1;padding:16px 0 6px;margin:0;border-top:1px solid var(--border)}
.ghead.ghead-first{padding-top:0;border-top:none}
.ghk{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block;margin-bottom:2px;font-weight:700}
.ght{font-family:"Bricolage Grotesque";font-size:1.35rem;font-weight:800;margin-bottom:2px;line-height:1.15}
.ghp{font-size:.80rem;color:var(--muted);margin:0}
.gall{grid-column:1/-1;text-align:center;padding:16px 0 4px;font-size:.82rem;font-weight:700}
.gall a{color:var(--ink)}

/* ── PRODUCT CARD WITH 5 PHOTOS SLIDER ── */
.card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:.22s;box-shadow:0 2px 10px rgba(0,0,0,.03)}
.card:hover{box-shadow:0 8px 26px rgba(0,0,0,.09);transform:translateY(-3px)}

/* Slider container */
.cm{aspect-ratio:1/1;overflow:hidden;background:var(--cream2);position:relative;display:block}
.cm-slider{width:100%;height:100%;position:relative}
.cm-slide{position:absolute;inset:0;opacity:0;transition:opacity .3s ease;pointer-events:none}
.cm-slide.active{opacity:1;pointer-events:all}
.cm-slide img{width:100%;height:100%;object-fit:cover}

/* Slider Controls */
.cm-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  border-radius:50%;
  background:rgba(255,255,255,.9);
  border:none;
  box-shadow:0 2px 6px rgba(0,0,0,.2);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:.8rem;
  color:var(--ink);
  opacity:0;
  transition:.2s;
  z-index:3;
}
.card:hover .cm-btn{opacity:1}
.cm-btn:hover{background:#fff;transform:translateY(-50%) scale(1.1)}
.cm-prev{left:8px}
.cm-next{right:8px}

.cm-dots{
  position:absolute;
  bottom:8px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  gap:5px;
  z-index:3;
}
.cm-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:rgba(255,255,255,.6);
  border:none;
  cursor:pointer;
  padding:0;
  transition:.2s;
}
.cm-dot.active{background:#fff;transform:scale(1.25);box-shadow:0 1px 3px rgba(0,0,0,.3)}

.cm-badge-count{
  position:absolute;
  bottom:8px;
  right:8px;
  background:rgba(0,0,0,.6);
  color:#fff;
  font-size:.6rem;
  font-weight:700;
  padding:2px 6px;
  border-radius:4px;
  z-index:3;
  backdrop-filter:blur(4px);
}

.tag2{position:absolute;top:11px;left:11px;background:var(--terra);color:#fff;font-size:.64rem;font-weight:700;padding:4px 9px;letter-spacing:.03em;border-radius:4px;z-index:3}

.cb{padding:14px;display:flex;flex-direction:column;flex:1}
.cn{font-family:"Bricolage Grotesque";font-weight:800;font-size:.88rem;color:var(--dark);line-height:1.22;margin-bottom:5px;display:block}
.csp{font-size:.68rem;color:var(--muted);line-height:1.45;margin-bottom:8px}
.csp i{opacity:.35;font-style:normal;margin:0 2px}
.stk{font-size:.72rem;display:flex;align-items:center;gap:5px;margin-bottom:10px}
.dot{display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}
.dg{background:var(--green)}.do{background:var(--orange)}.dr{background:var(--terra)}

/* ── Price Block (Prix initial barré en plus petit + Prix remisé en grand) ── */
.cp{margin-top:auto;padding-top:10px;border-top:1px solid var(--border)}
.cp-top{display:flex;align-items:center;gap:6px;margin-bottom:2px}
.cp-orig{font-size:.74rem;color:var(--muted);text-decoration:line-through;font-weight:500}
.cp-badge{display:inline-block;background:var(--terra);color:#fff;font-size:.60rem;font-weight:700;padding:2px 5px;border-radius:3px;letter-spacing:.02em}
.cp-disc-ttc{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:1.15rem;color:var(--ink);display:block;line-height:1.1}
.cp-disc-ht{font-size:.72rem;color:var(--muted);display:block;margin-top:2px}

/* ── Surface Input & Calculator ── */
.calc-row{margin-top:10px}
.calc-label{font-size:.68rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;display:block}
.calc-input-wrap{display:flex;align-items:center;border:1.5px solid var(--border);border-radius:6px;overflow:hidden;transition:.2s}
.calc-input-wrap:focus-within{border-color:var(--ink)}
.surf-input{flex:1;border:none;padding:8px 10px;font-size:.82rem;outline:none;background:#fff;width:100%;font-family:"Inter",sans-serif;color:var(--ink)}
.surf-input::placeholder{color:#c0bab3}
.surf-input.input-error{background:#fff5f5}
.calc-input-wrap span{padding:0 10px 0 0;font-size:.78rem;font-weight:700;color:var(--muted);white-space:nowrap}
.calc-detail{background:var(--cream);border-radius:8px;padding:8px 10px;margin-top:6px;display:none;border:1px solid var(--border)}
.cd-row{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;color:var(--muted);padding:2px 0}
.cd-row b{color:var(--ink);font-weight:700}
.cd-row.cd-total{padding-top:6px;margin-top:4px;border-top:1px solid var(--border)}
.cd-row.cd-total b{font-family:"Bricolage Grotesque",sans-serif;font-size:.90rem;color:var(--ink)}
.cd-row.cd-total span{font-weight:700;color:var(--ink)}

.add-to-cart-btn{display:block;width:100%;margin-top:10px;background:var(--ink);color:#fff;border:none;padding:10px 8px;font-weight:700;font-size:.78rem;cursor:pointer;transition:.2s;border-radius:6px;font-family:"Inter",sans-serif;letter-spacing:.02em}
.add-to-cart-btn:hover{background:#333}

/* ── PRO SECTION ── */
.pro{background:linear-gradient(120deg,#2f3527,#3d4533);color:#f3efe7;padding:76px 0}
.pro-inner{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}
.pro h2{font-weight:800;font-size:2.2rem;color:#fff;margin-bottom:16px;letter-spacing:-.02em;line-height:1.1}
.pro h2 em{color:var(--terra);font-style:normal}
.pro p{opacity:.85;max-width:480px;margin-bottom:24px;line-height:1.7;font-size:.98rem}
.pro-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:32px}
.stats{display:flex;gap:40px}
.stat b{font-family:"Bricolage Grotesque";font-size:2.1rem;display:block;color:#fff;line-height:1}
.stat span{font-size:.75rem;opacity:.7;margin-top:3px;display:block}
.pro-visual{border-radius:16px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 12px 36px rgba(0,0,0,.2)}
.pro-visual img{width:100%;height:100%;object-fit:cover}

/* ── BLOG ── */
.blog-sec{padding:68px 0;background:#fff}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.blog-card{border:1px solid var(--border);border-radius:14px;overflow:hidden;transition:.22s;display:flex;flex-direction:column}
.blog-card:hover{box-shadow:0 8px 26px rgba(0,0,0,.08);transform:translateY(-3px)}
.blog-img{aspect-ratio:16/9;overflow:hidden;background:var(--cream2);display:block}
.blog-img img{width:100%;height:100%;object-fit:cover;transition:.4s}
.blog-img:hover img{transform:scale(1.05)}
.blog-body{padding:22px 24px;flex:1;display:flex;flex-direction:column}
.blog-cat{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--terra);margin-bottom:8px;display:block}
.blog-title{font-family:"Bricolage Grotesque";font-weight:800;font-size:1.1rem;color:var(--ink);line-height:1.25;margin-bottom:10px;display:block}
.blog-title:hover{color:var(--terra)}
.blog-excerpt{font-size:.85rem;color:var(--muted);line-height:1.65;margin-bottom:16px;flex:1}
.blog-meta{font-size:.74rem;color:var(--muted);display:flex;align-items:center;gap:6px;margin-top:auto}

/* ── REVIEWS & TÉMOIGNAGES ── */
.rev-sec{padding:76px 0;background:var(--cream);text-align:center}
.rev-title{font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-size:2.2rem;font-weight:900;margin-bottom:6px;color:var(--ink);letter-spacing:-.02em}
.rev-sub{color:var(--muted);font-size:.92rem;margin-bottom:12px}
.stars-big{color:#F59E0B;font-size:1.4rem;letter-spacing:4px;margin-bottom:32px;display:block}
.rev-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;text-align:left;margin-top:10px;max-width:1080px;margin-left:auto;margin-right:auto}
.rcard{background:#fff;border:1px solid var(--border);border-radius:14px;padding:28px;box-shadow:0 4px 16px rgba(0,0,0,.03);display:flex;flex-direction:column;justify-content:space-between}
.rcard .stars{color:#F59E0B;font-size:.95rem;margin-bottom:12px;display:block;letter-spacing:2px}
.rcard p{font-size:.90rem;color:var(--dark);line-height:1.7;margin-bottom:18px;font-style:italic}
.rcard .author{font-size:.82rem;font-weight:800;color:var(--ink)}
.rcard .date{font-size:.74rem;color:var(--muted);font-weight:500;display:block;margin-top:2px}

/* ── FAQ ── */
.faq-sec{background:#fff;padding:76px 0}
.faq-sec h2{font-weight:800;font-size:2.1rem;margin-bottom:36px;text-align:center}
.faq-list{max-width:780px;margin:0 auto;display:flex;flex-direction:column;gap:4px}
.qa{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff}
.qa summary{padding:18px 22px;font-weight:600;font-size:.92rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;transition:.15s}
.qa summary:hover{background:var(--cream)}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";color:var(--terra);font-size:1.3rem;font-weight:300;flex-shrink:0;margin-left:16px}
.qa[open] summary{background:var(--cream)}
.qa[open] summary::after{content:"\2212"}
.qa-body{padding:4px 22px 18px;font-size:.88rem;color:var(--muted);line-height:1.7}

/* ── NEWSLETTER ── */
.nl-sec{padding:64px 0;background:var(--cream);text-align:center;border-top:1px solid var(--border)}
.nl-sec h2{font-size:1.85rem;margin-bottom:10px}
.nl-sec p{color:var(--muted);font-size:.92rem;margin-bottom:28px;max-width:460px;margin-left:auto;margin-right:auto}
.nl-form{display:flex;max-width:460px;margin:0 auto;box-shadow:0 4px 16px rgba(0,0,0,.06);border-radius:6px;overflow:hidden}
.nl-form input{flex:1;padding:14px 18px;border:1.5px solid var(--border);border-right:none;font-size:.88rem;outline:none;background:#fff}
.nl-form input:focus{border-color:var(--ink)}
.nl-form button{background:var(--ink);color:#fff;border:none;padding:14px 24px;font-weight:700;font-size:.84rem;cursor:pointer;white-space:nowrap;transition:.15s}
.nl-form button:hover{background:#333}

/* ── FOOTER ── */
.footer{background:var(--dark);color:rgba(255,255,255,.7);padding:68px 0 36px}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.footer-logo{font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-weight:900;font-size:1.3rem;color:#fff;margin-bottom:14px;display:block;letter-spacing:-0.03em}
.footer-logo span{color:var(--terra)}
.footer-desc{font-size:.84rem;line-height:1.7;max-width:270px;color:rgba(255,255,255,.6)}
.fcol h5{color:#fff;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;margin-bottom:16px}
.fcol ul{list-style:none}
.fcol li{margin-bottom:10px}
.fcol a{font-size:.83rem;color:rgba(255,255,255,.55);transition:.15s}
.fcol a:hover{color:#fff}
.footer-bot{border-top:1px solid rgba(255,255,255,.08);padding-top:24px;display:flex;justify-content:space-between;align-items:center;font-size:.76rem;color:rgba(255,255,255,.32);flex-wrap:wrap;gap:12px}
.langs{display:flex;gap:12px}
.langs a{color:rgba(255,255,255,.32);font-size:.76rem;transition:.15s}
.langs a:hover{color:#fff}
.pays{display:flex;gap:8px;align-items:center;margin-top:20px;flex-wrap:wrap}
.pay{background:rgba(255,255,255,.09);border-radius:5px;padding:5px 10px;font-size:.68rem;font-weight:700;color:rgba(255,255,255,.6)}

/* ── CART DRAWER ── */
#iyp-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:199;opacity:0;pointer-events:none;transition:opacity .28s}
#iyp-overlay.open{opacity:1;pointer-events:all}
#iyp-drawer{position:fixed;top:0;right:0;width:440px;max-width:100vw;height:100dvh;background:#fff;z-index:200;display:flex;flex-direction:column;transform:translateX(110%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:-8px 0 40px rgba(0,0,0,.15)}
#iyp-drawer.open{transform:translateX(0)}

.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border);flex-shrink:0}
.drawer-header h3{font-family:"Bricolage Grotesque",sans-serif;font-size:1.2rem;font-weight:800}
#drawer-close{background:none;border:1px solid var(--border);width:34px;height:34px;border-radius:50%;cursor:pointer;font-size:1.1rem;color:var(--muted);display:flex;align-items:center;justify-content:center;transition:.15s}
#drawer-close:hover{background:var(--cream);color:var(--ink)}

#drawer-items{flex:1;overflow-y:auto;padding:18px 24px;display:flex;flex-direction:column;gap:14px}
.drawer-empty{text-align:center;padding:48px 0;display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--muted)}
.drawer-empty p{font-size:.92rem}
.drawer-cta-empty{display:inline-block;margin-top:8px;background:var(--ink);color:#fff;padding:10px 22px;font-weight:700;font-size:.84rem;border-radius:6px}

.drawer-item{display:flex;gap:14px;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid var(--border)}
.drawer-item:last-child{border-bottom:none}
.di-body{flex:1;min-width:0}
.di-name{font-family:"Bricolage Grotesque",sans-serif;font-weight:700;font-size:.88rem;color:var(--ink);line-height:1.25;margin-bottom:4px}
.di-meta{font-size:.75rem;color:var(--muted);margin-bottom:4px}
.di-disc-badge{display:inline-block;background:var(--green-bg);color:var(--green);font-size:.68rem;font-weight:700;padding:2px 7px;border-radius:3px;margin-bottom:6px;letter-spacing:.03em}
.di-controls{display:flex;align-items:center;gap:8px;margin-top:6px}
.di-qty{background:var(--cream2);border:1px solid var(--border);width:26px;height:26px;border-radius:4px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:.15s}
.di-qty:hover{background:var(--border)}
.di-packs{font-size:.8rem;font-weight:600;color:var(--ink);min-width:56px;text-align:center}
.di-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}
.di-price{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:.98rem;color:var(--ink)}
.di-remove{background:none;border:none;color:#ccc;font-size:1.2rem;cursor:pointer;padding:0;line-height:1;margin-top:auto;transition:.15s}
.di-remove:hover{color:#e53e3e}

.drawer-footer{padding:20px 24px;border-top:1px solid var(--border);flex-shrink:0;background:var(--cream)}
.drawer-totals{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
.dt-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--muted)}
.dt-row b{color:var(--ink);font-weight:600}
.dt-row.savings{color:var(--green);font-size:.82rem}
.dt-row.savings b{color:var(--green)}
.dt-row.total{font-size:1rem;color:var(--ink);padding-top:10px;border-top:1px solid var(--border);margin-top:4px}
.dt-row.total b{font-family:"Bricolage Grotesque",sans-serif;font-size:1.25rem;font-weight:800}
.drawer-shipping{font-size:.76rem;color:var(--muted);margin-top:-6px;margin-bottom:14px}
.drawer-checkout{display:block;width:100%;background:var(--ink);color:#fff;border:none;padding:14px;font-weight:700;font-size:.92rem;cursor:pointer;text-align:center;transition:.15s;margin-bottom:8px;border-radius:6px}
.drawer-checkout:hover{background:#333}
.drawer-continue{display:block;width:100%;background:transparent;color:var(--ink);border:1.5px solid var(--border);padding:11px;font-weight:600;font-size:.84rem;cursor:pointer;text-align:center;transition:.15s;border-radius:6px}
.drawer-continue:hover{border-color:var(--ink)}

/* ── CHECKOUT & ORDER MODALS ── */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:300;display:none;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px)}
.modal-overlay.open{display:flex}
.modal-card{background:#fff;border-radius:16px;width:720px;max-width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 24px 60px rgba(0,0,0,.25);position:relative}
.modal-card-header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;border-bottom:1px solid var(--border);position:sticky;top:0;background:#fff;z-index:2}
.modal-card-header h3{font-family:"Bricolage Grotesque";font-weight:800;font-size:1.25rem}
.modal-card-close{background:none;border:1px solid var(--border);width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1.2rem;color:var(--muted);display:flex;align-items:center;justify-content:center}
.modal-card-body{padding:28px}

.chk-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:28px}
.chk-box{background:var(--cream);border:1px solid var(--border);border-radius:12px;padding:20px}
.chk-box h4{font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px;color:var(--ink)}
.chk-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border);font-size:.84rem}
.chk-item:last-child{border-bottom:none}
.chk-totals{margin-top:14px;padding-top:12px;border-top:1.5px solid var(--border);display:flex;flex-direction:column;gap:6px}

.chk-fld{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
.chk-fld label{font-size:.74rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.chk-fld input,.chk-fld select{border:1.5px solid var(--border);border-radius:6px;padding:9px 12px;font-size:.86rem;outline:none;background:#fff;color:var(--ink)}
.chk-fld input:focus,.chk-fld select:focus{border-color:var(--ink)}
.chk-fld-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}

.pay-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.pay-opt-btn{
  border:1.5px solid var(--border);
  background:#fff;
  border-radius:10px;
  padding:14px 12px;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  font-weight:700;
  font-size:.82rem;
  transition:.15s;
  color:var(--ink);
}
.pay-opt-btn:hover{border-color:var(--ink);background:var(--cream)}
.pay-opt-btn svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2;color:var(--terra)}

/* Confirmation Modal */
.conf-box{text-align:center;padding:20px 0}
.conf-icon{width:64px;height:64px;border-radius:50%;background:#e8f5e9;color:#2e7d32;display:grid;place-items:center;font-size:2rem;margin:0 auto 18px}
.conf-box h3{font-size:1.6rem;margin-bottom:8px}
.conf-ref-badge{display:inline-block;background:var(--cream2);padding:6px 14px;border-radius:6px;font-weight:800;font-size:1rem;color:var(--ink);margin:12px 0}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
  .w{padding:0 28px}
  .tiles{grid-template-columns:repeat(2,1fr)}
  .grid{grid-template-columns:repeat(2,1fr)}
  .blog-grid{grid-template-columns:repeat(2,1fr)}
  .shop-layout{grid-template-columns:1fr}
  .filters{display:none}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
  .chk-grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  .w{padding:0 20px}
  .iyp-hero{padding:36px 0}
  .iyp-hero-inner{grid-template-columns:1fr;gap:32px}
  .iyp-hero h1{font-size:2.3rem}
  .hero-usp-grid{grid-template-columns:1fr;gap:10px}
  .hero-visual{display:none}
  .gbar-g{grid-template-columns:repeat(2,1fr)}
  .gi{border-right:none;border-bottom:1px solid var(--border)}
  .tiles{grid-template-columns:1fr 1fr}
  .pro-inner{grid-template-columns:1fr}
  .pro-visual{display:none}
  .rev-grid{grid-template-columns:1fr}
  .blog-grid{grid-template-columns:1fr}
  .iyp-navlinks{display:none}
  .footer-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .grid{grid-template-columns:1fr}
  .tiles{grid-template-columns:1fr}
  .w{padding:0 16px}
  .iyp-hero h1{font-size:1.95rem}
  #iyp-drawer{width:100vw}
  .drawer-header{padding:16px 18px}
  #drawer-items{padding:12px 18px}
  .drawer-footer{padding:16px 18px}
}

/* ── TOPBAR RÉASSURANCE & ICONS SIZING ── */
.topbar-reassurance {
  background: #1A1816;
  color: #EAE4D9;
  font-size: 0.75rem;
  padding: 8px 0;
  border-bottom: 1px solid #2C2926;
}
.topbar-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
}
.topbar-left {
  display: flex;
  align-items: center;
  gap: 16px;
}
.topbar-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.topbar-item svg {
  width: 14px !important;
  height: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  color: #9A6B3D;
  flex-shrink: 0;
}
.topbar-right {
  display: flex;
  align-items: center;
  gap: 12px;
}
.badge-showroom {
  color: #9A6B3D;
  font-weight: 800;
  font-size: 0.72rem;
}
.btn-pro {
  background: #2C2926;
  color: #fff;
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-decoration: none;
  transition: background 0.2s;
}
.btn-pro:hover {
  background: #9A6B3D;
}

/* ── ARTICLE & PILLAR PAGES STYLES ── */
.article-hero {
  background: linear-gradient(135deg, var(--cream), var(--cream2));
  padding: 50px 0 60px;
  border-bottom: 1px solid var(--border);
}
.breadcrumb {
  font-size: 0.80rem;
  color: var(--muted);
  margin-bottom: 16px;
  display: flex;
  gap: 8px;
  align-items: center;
}
.breadcrumb a {
  color: var(--ink);
  text-decoration: underline;
}
.article-body {
  max-width: 900px;
  margin: 40px auto 60px;
  line-height: 1.8;
  font-size: 1.02rem;
  color: #2C2926;
}
.article-body h2 {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-size: 1.85rem;
  font-weight: 800;
  margin: 42px 0 16px;
  color: var(--ink);
  border-bottom: 2px solid var(--terra);
  padding-bottom: 8px;
}
.article-body h3 {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-size: 1.35rem;
  font-weight: 700;
  margin: 28px 0 12px;
  color: var(--ink);
}
.article-body p {
  margin-bottom: 20px;
}
.callout-box {
  background: #fff;
  border-left: 4px solid var(--terra);
  padding: 20px 24px;
  border-radius: 0 12px 12px 0;
  margin: 28px 0;
  box-shadow: 0 4px 15px rgba(0,0,0,0.03);
  border: 1px solid var(--border);
  border-left-width: 4px;
}
.step-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 20px;
  margin: 30px 0;
}
.step-card {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 22px;
  position: relative;
  box-shadow: 0 2px 8px rgba(0,0,0,0.03);
}
.step-num {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--ink);
  color: #fff;
  display: grid;
  place-items: center;
  font-weight: 800;
  font-size: 0.85rem;
  margin-bottom: 12px;
}
.step-card h4 {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-size: 1.05rem;
  font-weight: 700;
  margin-bottom: 8px;
  color: var(--ink);
}
.cta-banner {
  background: #1A1816;
  color: #fff;
  border-radius: 16px;
  padding: 28px 32px;
  margin: 40px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.08);
}
.comp-table {
  width: 100%;
  border-collapse: collapse;
  margin: 24px 0;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  font-size: 0.9rem;
}
.comp-table th, .comp-table td {
  padding: 12px 16px;
  border: 1px solid var(--border);
  text-align: left;
}
.comp-table th {
  background: var(--cream2);
  font-weight: 800;
  color: var(--ink);
}

