  :root{
    --espresso:#241307;
    --espresso-2:#341b0c;
    --ivory:#FBF3E4;
    --ivory-dim:#e9dcc4;
    --honey:#E8940C;
    --honey-light:#F6C453;
    --rust:#B34A1D;
    --teal:#1B6E6E;
    --indigo:#332C74;
    --line: rgba(251,243,228,0.14);
    --shadow: 0 20px 50px -20px rgba(0,0,0,0.55);
    --radius: 18px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;overflow-x:hidden;max-width:100%;}
  body{overflow-x:hidden;max-width:100%;
    margin:0;
    background:var(--espresso);
    color:var(--ivory);
    font-family:'Manrope',sans-serif;
    font-weight:400;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  h1,h2,h3,.serif{font-family:'Fraunces',serif;}
  a{color:inherit;}
  img{display:block;max-width:100%;}
  .wrap{max-width:1180px;margin:0 auto;padding:0 28px;}
  .eyebrow{
    font-family:'Manrope',sans-serif;
    text-transform:uppercase;
    letter-spacing:.22em;
    font-size:12.5px;
    font-weight:700;
    color:var(--honey-light);
    display:inline-flex;
    align-items:center;
    gap:10px;
  }
  .eyebrow::before{content:"";width:26px;height:1px;background:var(--honey-light);display:inline-block;}
  section{position:relative;}
  .btn{
    display:inline-flex;align-items:center;gap:10px;
    padding:15px 28px;border-radius:999px;
    font-family:'Manrope',sans-serif;font-weight:700;font-size:14.5px;
    letter-spacing:.02em;
    text-decoration:none;cursor:pointer;border:1px solid transparent;
    transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
  }
  .btn:hover{transform:translateY(-2px);}
  .btn-primary{background:linear-gradient(135deg,var(--honey),#c9750a);color:#241307;box-shadow:0 14px 30px -10px rgba(232,148,12,0.55);}
  .btn-primary:hover{box-shadow:0 18px 36px -10px rgba(232,148,12,0.7);}
  .btn-ghost{border-color:var(--line);color:var(--ivory);background:transparent;}
  .btn-ghost:hover{border-color:var(--honey-light);background:rgba(246,196,83,0.08);}
  .btn-dark{background:var(--espresso);color:var(--ivory);border-color:rgba(255,255,255,0.15);}

  /* honeycomb svg mark */
  .mark{width:34px;height:34px;flex:none;}
  .mark path{stroke:var(--honey-light);stroke-width:5;fill:none;stroke-linecap:round;stroke-linejoin:round;}

  /* ===== NAV ===== */
  header{
    position:fixed;top:0;left:0;right:0;z-index:250;
    background:rgba(36,19,7,0.72);
    backdrop-filter:blur(14px);
    border-bottom:1px solid var(--line);
  }
  nav{display:flex;align-items:center;justify-content:space-between;padding:16px 28px;max-width:1180px;margin:0 auto;}
  .brand{display:flex;align-items:center;gap:12px;text-decoration:none;}
  .brand-word{font-family:'Fraunces',serif;font-size:19px;line-height:1;}
  .brand-word span{display:block;font-style:italic;color:var(--honey-light);font-size:15px;margin-top:1px;}
  .nav-links{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:600;}
  .nav-links a{text-decoration:none;opacity:.85;transition:opacity .2s;}
  .nav-links a.active{opacity:1;font-weight:700;color:var(--honey);border-bottom:2px solid var(--honey);padding-bottom:3px;}
  .nav-links a:hover{opacity:1;color:var(--honey-light);}

  /* ===== MENU MOBILE (hamburger) ===== */
  .menu-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:38px;height:38px;border:none;background:transparent;cursor:pointer;padding:0;flex-shrink:0;}
  .menu-toggle span{display:block;width:22px;height:2px;background:var(--ivory);border-radius:2px;transition:transform .25s,opacity .25s;}
  .menu-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .menu-toggle.active span:nth-child(2){opacity:0;}
  .menu-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .nav-overlay{display:none;position:fixed;inset:0;background:rgba(15,8,3,0.55);z-index:190;}
  .nav-overlay.open{display:block;}
  .nav-cta{display:flex;align-items:center;gap:14px;}
  .nav-cta .btn{white-space:nowrap;}
  .burger{display:none;background:none;border:none;color:var(--ivory);font-size:24px;cursor:pointer;}

  /* ===== HERO ===== */
  .hero{
    padding:168px 0 100px;
    position:relative;
    background:
      radial-gradient(ellipse 900px 500px at 82% -10%, rgba(232,148,12,0.28), transparent 60%),
      radial-gradient(ellipse 700px 700px at -10% 90%, rgba(51,44,116,0.28), transparent 60%),
      var(--espresso);
    overflow:hidden;
  }
  .hero-comb{position:absolute;inset:0;opacity:.5;pointer-events:none;}
  .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center;position:relative;z-index:2;}
  .hero h1{font-size:clamp(42px,6vw,74px);line-height:1.02;font-weight:600;margin:22px 0 22px;letter-spacing:-.01em;}
  .hero h1 em{font-style:italic;font-weight:400;color:var(--honey-light);}
  .hero p.lead{font-size:18px;line-height:1.65;color:var(--ivory-dim);max-width:520px;margin:0 0 34px;}
  .hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:46px;}
  .hero-stats{display:flex;gap:34px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:26px;}
  .hero-stats div{font-size:12.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ivory-dim);font-weight:700;display:flex;align-items:center;gap:8px;}
  .hero-stats div::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--honey);}

  .hero-photo{position:relative;}
  .hero-photo-frame{
    position:relative;border-radius:26px;overflow:hidden;
    box-shadow:var(--shadow);
    aspect-ratio:4/5;
  }
  .hero-photo-frame img{width:100%;height:100%;object-fit:cover;}
  .hero-badge{
    position:absolute;bottom:-26px;left:-26px;
    background:var(--ivory);color:var(--espresso);
    border-radius:20px;padding:20px 22px;
    box-shadow:var(--shadow);
    width:198px;
  }
  .hero-badge .num{font-family:'Fraunces',serif;font-size:30px;line-height:1;font-weight:600;color:var(--rust);}
  .hero-badge .cap{font-size:11.5px;text-transform:uppercase;letter-spacing:.07em;font-weight:700;color:#6b5a44;margin-top:6px;}
  .hero-tag{
    position:absolute;top:22px;right:22px;
    background:rgba(36,19,7,0.72);backdrop-filter:blur(6px);
    border:1px solid rgba(251,243,228,0.25);
    color:var(--ivory);
    font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
    padding:9px 14px;border-radius:999px;
  }

  /* section headers */
  .sec-head{max-width:640px;margin-bottom:56px;}
  .sec-head h2{font-size:clamp(30px,4vw,44px);font-weight:600;line-height:1.1;margin:16px 0 14px;}
  .sec-head h2 em{font-style:italic;color:var(--honey-light);font-weight:400;}
  .sec-head p{color:var(--ivory-dim);font-size:16.5px;line-height:1.6;}
  .center{text-align:center;margin-left:auto;margin-right:auto;}

  /* ===== PHILOSOPHY ===== */
  .philo{padding:120px 0;}

  /* ===== À PROPOS — fondatrice ===== */
  .about{padding:120px 0;position:relative;overflow:hidden;}
  .about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;align-items:center;position:relative;}
  .about-text p{color:var(--ivory-dim);font-size:16px;line-height:1.75;margin:0 0 18px;}
  .about-text p:first-of-type::first-letter{
    font-family:'Fraunces',serif;font-size:52px;font-weight:600;color:var(--honey-light);
    float:left;line-height:.8;margin:6px 10px 0 0;
  }
  .about-signature{margin-top:28px;display:flex;align-items:center;gap:14px;}
  .about-signature .sig-name{font-family:'Fraunces',serif;font-style:italic;font-size:22px;color:var(--honey-light);}
  .about-signature .sig-role{font-size:12px;color:var(--ivory-dim);line-height:1.5;}

  .about-video-wrap{margin:26px 0;}
  .about-video{
    width:100%;max-width:480px;border-radius:18px;display:block;
    box-shadow:var(--shadow);border:1px solid rgba(251,243,228,0.15);background:#000;
  }
  .about-video-caption{
    display:block;margin-top:10px;font-family:'Fraunces',serif;font-style:italic;
    font-size:13px;color:var(--ivory-dim);max-width:480px;
  }

  .about-photo-wrap{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:30px;}
  .about-photo-frame{
    position:relative;width:100%;max-width:320px;aspect-ratio:4/5;border-radius:26px;overflow:hidden;
    box-shadow:var(--shadow);border:1px solid rgba(251,243,228,0.15);
    background:linear-gradient(150deg,#3a2412,#1c0f05);
  }
  .about-photo-frame img{width:100%;height:100%;object-fit:cover;display:block;}
  .about-photo-placeholder{
    width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
    color:var(--ivory-dim);
  }
  .about-photo-placeholder .initials{
    width:104px;height:104px;border-radius:50%;background:linear-gradient(135deg,var(--honey),#c9750a);
    color:var(--espresso);font-family:'Fraunces',serif;font-size:38px;font-weight:600;
    display:flex;align-items:center;justify-content:center;
  }
  .about-photo-placeholder small{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;}
  .about-photo-tag{
    position:absolute;bottom:-16px;left:50%;transform:translateX(-50%);white-space:nowrap;
    background:var(--ivory);color:var(--espresso);padding:10px 20px;border-radius:999px;
    font-family:'Fraunces',serif;font-size:14px;font-weight:600;box-shadow:var(--shadow);
  }

  /* bees */
  .bee{position:absolute;width:26px;height:26px;pointer-events:none;filter:drop-shadow(0 4px 8px rgba(0,0,0,0.35));}
  .bee svg{width:100%;height:100%;}
  .bee-1{top:-6%;left:6%;animation:beefloat1 5.5s ease-in-out infinite;}
  .bee-2{top:14%;right:-4%;animation:beefloat2 6.5s ease-in-out infinite;animation-delay:.6s;}
  .bee-3{bottom:10%;left:-6%;animation:beefloat1 6s ease-in-out infinite;animation-delay:1.4s;}
  .bee-4{bottom:-4%;right:12%;animation:beefloat2 5s ease-in-out infinite;animation-delay:2s;}
  @keyframes beefloat1{
    0%,100%{transform:translate(0,0) rotate(-6deg);}
    50%{transform:translate(8px,-14px) rotate(8deg);}
  }
  @keyframes beefloat2{
    0%,100%{transform:translate(0,0) rotate(6deg);}
    50%{transform:translate(-10px,-10px) rotate(-8deg);}
  }

  /* arrow (contenue dans la colonne photo, ne croise jamais le texte) */
  .about-arrow-mini{position:relative;width:100%;max-width:280px;display:flex;flex-direction:column;align-items:flex-start;margin-bottom:6px;}
  .about-arrow-caption{
    font-family:'Fraunces',serif;font-style:italic;font-size:15px;line-height:1.4;
    color:var(--honey);margin-bottom:4px;
  }
  .mini-arrow-svg{width:100%;height:70px;overflow:visible;}
  .mini-arrow-path{
    fill:none;stroke:var(--honey);stroke-width:2.5;stroke-linecap:round;
    stroke-dasharray:6 8;animation:dashflow 2.2s linear infinite;opacity:1;
  }
  @keyframes dashflow{to{stroke-dashoffset:-28;}}
  @media (max-width:980px){
    .about-grid{grid-template-columns:1fr;}
    .about-photo-wrap{order:-1;margin-bottom:20px;}
  }
  .philo-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center;}
  .philo-photo{border-radius:22px;overflow:hidden;box-shadow:var(--shadow);aspect-ratio:3/4;}
  .philo-photo img{width:100%;height:100%;object-fit:cover;}
  .feat-list{display:flex;flex-direction:column;gap:0;}
  .feat{
    display:grid;grid-template-columns:52px 1fr;gap:20px;
    padding:26px 0;border-top:1px solid var(--line);
  }
  .feat:last-child{border-bottom:1px solid var(--line);}
  .feat .hex{
    width:52px;height:52px;border-radius:14px;
    background:rgba(232,148,12,0.12);
    display:flex;align-items:center;justify-content:center;
  }
  .feat .hex svg{width:26px;height:26px;stroke:var(--honey-light);fill:none;stroke-width:1.6;}
  .feat h3{margin:2px 0 6px;font-size:19px;font-weight:600;font-family:'Fraunces',serif;}
  .feat p{margin:0;color:var(--ivory-dim);font-size:14.5px;line-height:1.55;}

  /* ===== OFFERS ===== */
  .offers{padding:120px 0;background:linear-gradient(180deg, transparent, rgba(0,0,0,0.18) 8%, rgba(0,0,0,0.18) 92%, transparent);}

  /* tableau comparatif des formules */
  .compare-table-wrap{overflow-x:auto;border-radius:18px;border:1px solid var(--line);}
  .compare-table{width:100%;border-collapse:collapse;min-width:620px;font-size:13.5px;}
  .compare-table th, .compare-table td{padding:13px 16px;text-align:center;border-bottom:1px solid var(--line);}
  .compare-table thead th{
    background:rgba(251,243,228,0.04);font-family:'Fraunces',serif;font-size:15px;font-weight:600;
    color:var(--tier-c,var(--ivory));border-bottom:2px solid var(--tier-c,var(--line));
  }
  .compare-feature-col{text-align:left !important;color:var(--ivory-dim);font-weight:600;min-width:230px;}
  .compare-table td:first-child{text-align:left;color:var(--ivory-dim);font-size:13px;}
  .compare-table td.yes{color:var(--teal);font-weight:800;font-size:16px;}
  .compare-table td.no{color:rgba(251,243,228,0.25);}
  .compare-table td.opt{
    color:var(--honey-light);font-weight:800;font-size:16px;
    display:table-cell;background:transparent;border:none;
    padding:13px 16px;cursor:default;width:auto;min-width:0;
  }
  .compare-price-row td{font-family:'Fraunces',serif;font-weight:600;color:var(--ivory);background:rgba(251,243,228,0.03);}
  .compare-price-row td:first-child{color:var(--ivory-dim);font-weight:600;font-family:'Manrope',sans-serif;}
  .compare-legend{display:flex;justify-content:center;gap:24px;margin-top:18px;font-size:12px;color:var(--ivory-dim);flex-wrap:wrap;}
  @media (max-width:700px){
    .compare-feature-col{min-width:170px;}
    .compare-table-wrap{position:relative;}
    .compare-table th.compare-feature-col,
    .compare-table td:first-child{
      position:sticky;left:0;z-index:2;
      background:var(--espresso-2);
      box-shadow:2px 0 6px rgba(0,0,0,0.35);
    }
    .compare-table thead th.compare-feature-col{background:var(--espresso-2);z-index:3;}
    .compare-price-row td:first-child{background:var(--espresso-2);}
    .compare-table td.opt{padding:13px 10px;}
    .compare-table td.yes, .compare-table td.no{padding:13px 10px;}
  }
  .tier-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
  .tier{
    border-radius:22px;padding:26px 24px 28px;
    background:rgba(251,243,228,0.03);
    border:1px solid var(--line);
    display:flex;flex-direction:column;
    transition:transform .3s ease, border-color .3s ease, background .3s ease;
    position:relative;
  }
  .tier:hover{transform:translateY(-6px);border-color:var(--tier-c,var(--honey));background:rgba(251,243,228,0.05);}
  .tier .popular{position:absolute;top:-13px;right:22px;background:var(--rust);color:var(--ivory);font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:999px;box-shadow:0 8px 18px -6px rgba(179,74,29,.7);}
  .tier-photo{border-radius:14px;overflow:hidden;aspect-ratio:4/3;margin-bottom:18px;position:relative;}
  .tier-photo img{width:100%;height:100%;object-fit:cover;}
  .tier-photo::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08);}
  .tier-dot{width:9px;height:9px;border-radius:50%;background:var(--tier-c,var(--honey));display:inline-block;margin-right:8px;}
  .tier-name{font-family:'Fraunces',serif;font-size:23px;font-weight:600;margin:2px 0 2px;}
  .tier-sub{font-style:italic;color:var(--ivory-dim);font-size:13.5px;margin-bottom:14px;font-family:'Fraunces',serif;}
  .tier-price{font-family:'Fraunces',serif;font-size:29px;font-weight:600;color:var(--tier-c,var(--honey));margin-bottom:4px;}
  .tier-price small{font-family:'Manrope',sans-serif;font-size:12px;font-weight:700;color:var(--ivory-dim);text-transform:uppercase;letter-spacing:.05em;}
  .tier-list{list-style:none;margin:16px 0 22px;padding:0;font-size:13.6px;color:var(--ivory-dim);line-height:1.5;display:flex;flex-direction:column;gap:9px;flex:1;}
  .tier-list li{display:flex;gap:9px;align-items:flex-start;}
  .tier-list li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--tier-c,var(--honey));margin-top:7px;flex:none;}
  .tier-cta{margin-top:auto;text-align:center;padding:12px;border-radius:999px;border:1px solid var(--line);font-weight:700;font-size:13.5px;cursor:pointer;transition:.25s;background:transparent;color:var(--ivory);}
  .tier-cta:hover{background:var(--tier-c,var(--honey));color:var(--espresso);border-color:transparent;}

  /* ===== CONFIGURATOR ===== */
  .configurator{padding:120px 0;}
  .composer-inline{padding:36px 0 8px;border-top:1px dashed var(--line);margin-top:44px;}
  .composer-toggle-row{display:flex;justify-content:center;margin:-8px 0 8px;}
  #composer-toggle-btn .chev{display:inline-block;transition:transform .25s;margin-left:6px;}
  #composer-toggle-btn.open .chev{transform:rotate(180deg);}
  .config-box{
    border-radius:26px;border:1px solid var(--line);
    background:linear-gradient(160deg, rgba(251,243,228,0.045), rgba(251,243,228,0.01));
    padding:44px;display:grid;grid-template-columns:1.3fr .9fr;gap:48px;
  }
  .config-group{margin-bottom:30px;}
  .config-group:last-child{margin-bottom:0;}
  .config-group > label.title{display:block;font-family:'Fraunces',serif;font-size:16.5px;margin-bottom:14px;color:var(--honey-light);}
  .opt-row{display:flex;flex-wrap:wrap;gap:10px;}
  .opt{
    border:1px solid var(--line);border-radius:12px;padding:11px 16px;
    font-size:13.5px;font-weight:600;cursor:pointer;user-select:none;
    background:rgba(0,0,0,0.15);transition:.2s;
    display:flex;flex-direction:column;gap:2px;align-items:flex-start;
  }
  .opt small{font-weight:600;color:var(--ivory-dim);font-size:11.5px;}
  .opt:hover{border-color:var(--honey-light);}
  .opt.active{background:var(--honey);border-color:var(--honey);color:var(--espresso);}
  .opt.active small{color:rgba(36,19,7,0.7);}
  .qty-row{display:flex;align-items:center;gap:16px;}
  .qty-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ivory);font-size:18px;cursor:pointer;transition:.2s;}
  .qty-btn:hover{border-color:var(--honey-light);color:var(--honey-light);}
  .qty-val{font-family:'Fraunces',serif;font-size:26px;min-width:70px;text-align:center;}
  .qty-note{font-size:12.5px;color:var(--ivory-dim);}

  /* tier model gallery (inline, no redirect) */
  .gallery-hint{font-size:12px;color:var(--ivory-dim);margin:10px 0 0;}
  .tier-model-gallery{display:none;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px;}
  .tier-model-gallery.show{display:grid;}
  .tmg-item{border-radius:12px;overflow:hidden;border:1px solid var(--line);cursor:pointer;position:relative;background:rgba(0,0,0,0.15);transition:.2s;}
  .tmg-item:hover{border-color:var(--honey-light);}
  .tmg-item.active{border-color:var(--honey);box-shadow:0 0 0 2px rgba(232,148,12,0.35);}
  .tmg-item img{width:100%;aspect-ratio:1;object-fit:cover;display:block;}
  .tmg-item span{display:block;font-size:10.5px;font-weight:700;padding:6px 8px;color:var(--ivory);line-height:1.3;background:rgba(0,0,0,0.25);}
  .tmg-item.active::after{content:"✓";position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:var(--honey);color:var(--espresso);font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;}

  /* pack spécial */
  .pack-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
  .pack-item{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--ivory);transition:.2s;}
  .pack-item.picked{border-color:var(--honey);}
  .pack-item img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
  .pack-item-body{padding:12px 13px 14px;}
  .pack-item-body b{font-family:'Fraunces',serif;font-size:13.5px;font-weight:600;display:block;margin-bottom:4px;color:var(--espresso);}
  .pack-item-price{font-size:13px;color:var(--honey);font-weight:800;}
  .pack-item-price small{opacity:.8;font-weight:600;}
  .pack-qty-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px;}
  .pack-qty-btn{width:26px;height:26px;border-radius:50%;border:1px solid var(--espresso);background:transparent;color:var(--espresso);cursor:pointer;font-size:14px;line-height:1;}
  .pack-qty-btn:hover{border-color:var(--honey);color:var(--honey);}
  .pack-qty-val{font-family:'Fraunces',serif;font-size:15px;font-weight:600;color:var(--espresso);}
  @media (max-width:700px){.tier-model-gallery{grid-template-columns:repeat(2,1fr);}.pack-grid{grid-template-columns:1fr;}}

  /* panier (option) */
  .basket-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px;}
  .basket-item{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:rgba(0,0,0,0.15);cursor:pointer;transition:.2s;}
  .basket-item:hover{border-color:var(--honey-light);}
  .basket-item.active{border-color:var(--honey);box-shadow:0 0 0 2px rgba(232,148,12,0.3);}
  .basket-item img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
  .basket-item-body{padding:14px 15px 16px;display:flex;flex-direction:column;gap:4px;}
  .basket-item-body b{font-family:'Fraunces',serif;font-size:14.5px;font-weight:600;}
  .basket-item-price{font-size:12px;color:var(--ivory-dim);}
  .basket-item-note{font-size:10.5px;color:var(--honey-light);}
  @media (max-width:700px){.basket-grid{grid-template-columns:1fr;}}

  .config-summary{
    border-radius:20px;background:var(--ivory);color:var(--espresso);
    padding:34px;position:sticky;top:110px;height:max-content;
    box-shadow:var(--shadow);
  }
  .config-summary h3{font-family:'Fraunces',serif;font-size:20px;margin:0 0 4px;}
  .config-summary .sub{font-size:12.5px;color:#7a6a52;margin-bottom:22px;}
  .sum-line{display:flex;justify-content:space-between;font-size:13.5px;padding:9px 0;border-bottom:1px dashed rgba(36,19,7,0.15);color:#4a3d2c;}
  .sum-line span:last-child{font-weight:700;color:var(--espresso);}
  .sum-total{display:flex;justify-content:space-between;align-items:baseline;margin:22px 0 24px;}
  .sum-total .lbl{font-size:13px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:#7a6a52;}
  .sum-total .amt{font-family:'Fraunces',serif;font-size:34px;font-weight:600;color:var(--rust);}
  .config-summary .btn-primary{width:100%;justify-content:center;}
  .config-note{font-size:11.5px;color:#8a7b63;margin-top:14px;line-height:1.5;}

  /* ===== GALLERY ===== */
  .gallery{padding:120px 0;}

  /* ===== RÉALISATIONS (à venir) ===== */
  .realisations{padding:0 0 120px;}
  .real-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
  .real-tile{
    aspect-ratio:3/4;border-radius:16px;border:1px dashed rgba(251,243,228,0.22);
    background:linear-gradient(150deg, rgba(251,243,228,0.04), rgba(251,243,228,0.01));
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
    color:var(--ivory-dim);
  }
  .real-tile svg{width:26px;height:26px;stroke:var(--honey-light);opacity:.7;}
  .real-tile span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;}
  .real-note{
    text-align:center;color:var(--ivory-dim);font-size:13.5px;margin-top:26px;
  }
  .real-cta-row{text-align:center;margin-top:36px;}
  .real-photo-tile{
    aspect-ratio:3/4;border-radius:16px;overflow:hidden;position:relative;
    border:1px solid var(--line);
  }
  .real-photo-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
  .real-photo-tile:hover img{transform:scale(1.08);}
  .real-caption{
    position:absolute;bottom:0;left:0;right:0;padding:22px 12px 12px;
    background:linear-gradient(0deg, rgba(15,8,3,0.85), transparent);
    color:var(--ivory);font-family:'Fraunces',serif;font-size:12.5px;font-weight:600;
  }
  @media (max-width:980px){.real-grid{grid-template-columns:repeat(2,1fr);}}
  .hex-grid{
    display:grid;grid-template-columns:repeat(6,1fr);gap:2px;
  }
  .hex-item{
    aspect-ratio:.92;
    clip-path: polygon(25% 3%, 75% 3%, 100% 50%, 75% 97%, 25% 97%, 0% 50%);
    overflow:hidden;position:relative;
    margin: -6% 0;
  }
  .hex-item:nth-child(even){transform:translateY(28%);}
  .hex-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
  .hex-item:hover img{transform:scale(1.12);}

  /* ===== MODELES & TARIFS ===== */
  .models{padding:120px 0;background:linear-gradient(180deg, transparent, rgba(0,0,0,0.18) 8%, rgba(0,0,0,0.18) 92%, transparent);}
  .model-tabs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:44px;}
  .model-tab{
    border:1px solid var(--line);border-radius:999px;padding:10px 20px;
    font-size:13px;font-weight:700;cursor:pointer;background:transparent;color:var(--ivory);
    display:flex;align-items:center;gap:8px;transition:.2s;
  }
  .model-tab .dot{width:8px;height:8px;border-radius:50%;background:var(--tab-c,var(--honey));}
  .model-tab:hover{border-color:var(--tab-c,var(--honey-light));}
  .model-tab.active{background:var(--tab-c,var(--honey));color:var(--espresso);border-color:transparent;}
  .model-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
  .model-card{
    border-radius:18px;overflow:hidden;border:1px solid var(--line);
    background:rgba(251,243,228,0.03);
    display:none;
  }
  .model-card.show{display:block;}
  .model-photo{aspect-ratio:1/1;overflow:hidden;position:relative;}
  .model-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
  .model-card:hover .model-photo img{transform:scale(1.08);}
  .model-photo img, .extra-photo img{cursor:zoom-in;}
  .img-lightbox-overlay{
    display:none;position:fixed;inset:0;z-index:500;
    background:rgba(20,10,4,0.92);
    align-items:center;justify-content:center;padding:30px;
    cursor:zoom-out;
  }
  .img-lightbox-overlay.open{display:flex;}
  .img-lightbox-overlay img{max-width:min(700px,92vw);max-height:88vh;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,0.5);}
  .img-lightbox-close{
    position:absolute;top:22px;right:26px;width:42px;height:42px;border-radius:50%;
    background:rgba(251,243,228,0.12);color:var(--ivory);border:1px solid rgba(251,243,228,0.25);
    font-size:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;
  }
  .model-price-tag{
    display:inline-block;position:relative;top:auto;left:auto;bottom:auto;margin:10px 16px 0;
    background:rgba(36,19,7,0.9);
    color:var(--ivory);padding:8px 13px;border-radius:10px;
    font-family:'Fraunces',serif;font-weight:600;font-size:15px;
    border:1px solid rgba(251,243,228,0.18);
  }
  .model-price-tag small{display:block;font-family:'Manrope',sans-serif;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--honey-light);margin-bottom:1px;}
  .model-caption{padding:14px 16px 8px;font-size:12.5px;color:var(--ivory-dim);}
  .model-caption b{color:var(--ivory);font-family:'Fraunces',serif;font-size:14px;font-weight:600;display:block;margin-bottom:2px;}
  .model-actions{display:flex;gap:8px;padding:6px 16px 16px;}
  .model-btn{
    flex:1;min-width:0;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ivory);
    font-size:11.5px;font-weight:700;padding:9px 6px;cursor:pointer;transition:.2s;font-family:'Manrope',sans-serif;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  .model-btn:hover{border-color:var(--honey-light);color:var(--honey-light);}
  .model-btn-solid{background:var(--btn-c,var(--honey));color:var(--espresso);border-color:transparent;}
  .model-btn-solid:hover{filter:brightness(1.08);color:var(--espresso);}
  .model-load-more{display:flex;justify-content:center;margin-top:8px;}

  /* ===== CAROUSEL ===== */
  .carousel{position:relative;overflow:hidden;}
  .carousel-track{display:flex;transition:transform .5s cubic-bezier(.65,0,.35,1);height:100%;}
  .carousel-track img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;}
  .carousel-arrows{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:0 10px;pointer-events:none;opacity:0;transition:opacity .25s;}
  .carousel:hover .carousel-arrows{opacity:1;}
  .carousel-arrow{
    pointer-events:auto;width:32px;height:32px;border-radius:50%;
    background:rgba(36,19,7,0.65);border:1px solid rgba(251,243,228,0.3);
    color:var(--ivory);display:flex;align-items:center;justify-content:center;
    cursor:pointer;font-size:14px;backdrop-filter:blur(4px);
  }
  .carousel-arrow:hover{background:var(--honey);color:var(--espresso);border-color:transparent;}
  .carousel-dots{position:absolute;bottom:10px;left:0;right:0;display:flex;justify-content:center;gap:6px;}
  .carousel-dots span{width:6px;height:6px;border-radius:50%;background:rgba(251,243,228,0.4);cursor:pointer;transition:.2s;}
  .carousel-dots span.active{background:var(--honey-light);width:16px;border-radius:3px;}
  .carousel-count{
    position:absolute;top:10px;right:10px;
    background:rgba(36,19,7,0.65);color:var(--ivory);
    font-size:10.5px;font-weight:700;padding:4px 9px;border-radius:999px;
    border:1px solid rgba(251,243,228,0.2);
  }
  .carousel-name{
    position:absolute;bottom:10px;left:10px;right:44px;
    background:rgba(36,19,7,0.68);backdrop-filter:blur(4px);color:var(--ivory);
    font-family:'Fraunces',serif;font-size:12.5px;font-weight:600;
    padding:6px 11px;border-radius:9px;border:1px solid rgba(251,243,228,0.15);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }

  /* ===== ORDER FORM ===== */
  .order{padding:110px 0;}
  .order-box{
    border-radius:28px;border:1px solid var(--line);
    background:linear-gradient(160deg, rgba(251,243,228,0.05), rgba(251,243,228,0.01));
    padding:52px;
  }
  .order-box .sec-head{max-width:640px;margin-bottom:38px;}
  .order-form{display:flex;flex-direction:column;gap:18px;}
  .of-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
  .of-field{display:flex;flex-direction:column;gap:8px;}
  .of-field.of-full{grid-column:1 / -1;}
  .of-field label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--honey-light);}
  .of-field input, .of-field select, .of-field textarea{
    background:rgba(0,0,0,0.22);border:1px solid var(--line);border-radius:12px;
    padding:13px 15px;color:var(--ivory);font-family:'Manrope',sans-serif;font-size:14.5px;
    outline:none;transition:.2s;
  }
  .of-field input:focus, .of-field select:focus, .of-field textarea:focus{border-color:var(--honey-light);background:rgba(0,0,0,0.32);}
  .of-field textarea{resize:vertical;}
  .of-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F6C453' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:40px;}
  .of-submit{margin-top:8px;justify-content:center;width:100%;}
  .of-note{font-size:12px;color:var(--ivory-dim);text-align:center;margin:4px 0 0;}
  @media (max-width:700px){.of-row{grid-template-columns:1fr;}.order-box{padding:30px 24px;}}

  /* ===== EXTRAS ===== */
  .extras{padding:120px 0;}
  .extra-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
  .extra-card{
    border-radius:20px;overflow:hidden;border:1px solid var(--line);
    background:rgba(251,243,228,0.03);
    display:flex;flex-direction:column;
  }
  .extra-photo{aspect-ratio:16/10;overflow:hidden;}
  .extra-photo img{width:100%;height:100%;object-fit:cover;}
  .extra-body{padding:22px 22px 24px;flex:1;display:flex;flex-direction:column;}
  .extra-body h4{font-family:'Fraunces',serif;font-size:18px;margin:0 0 8px;}
  .extra-body p{font-size:13.5px;color:var(--ivory-dim);line-height:1.55;margin:0 0 16px;flex:1;}
  .extra-price{font-family:'Fraunces',serif;color:var(--honey-light);font-size:19px;font-weight:600;}

  /* ===== PROCESS ===== */
  .process{padding:120px 0;}
  .process-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;}
  .process-photo{border-radius:22px;overflow:hidden;box-shadow:var(--shadow);position:sticky;top:110px;height:max-content;aspect-ratio:3/4;}
  .process-photo img{width:100%;height:100%;object-fit:cover;}
  .steps{list-style:none;margin:0;padding:0;counter-reset:step;}
  .step{
    display:grid;grid-template-columns:44px 1fr;gap:20px;
    padding:22px 0;border-top:1px solid var(--line);
    counter-increment:step;
  }
  .step:last-child{border-bottom:1px solid var(--line);}
  .step::before{
    content:counter(step,decimal-leading-zero);
    font-family:'Fraunces',serif;font-size:15px;font-weight:600;color:var(--espresso);
    background:var(--honey-light);width:40px;height:40px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
  }
  .step p{margin:2px 0 0;font-size:14.5px;line-height:1.55;color:var(--ivory-dim);}

  /* ===== PARTNER ===== */
  .partner{padding:110px 0 130px;}

  /* ===== MES COMMANDES ===== */
  .my-orders{padding:110px 0 120px;}
  .orders-lookup{max-width:560px;margin:0 auto;}
  .orders-search-row{display:flex;gap:10px;flex-wrap:wrap;}
  .orders-search-row input{
    flex:1;min-width:160px;background:rgba(0,0,0,0.22);border:1px solid var(--line);border-radius:12px;
    padding:13px 15px;color:var(--ivory);font-family:'Manrope',sans-serif;font-size:14.5px;outline:none;
  }
  .orders-search-row select.phone-country{
    flex:0 0 100px;background:rgba(0,0,0,0.22);border:1px solid var(--line);border-radius:12px;
    padding:13px 8px;color:var(--ivory);font-family:'Manrope',sans-serif;font-size:14px;outline:none;
  }
  .orders-search-row input:focus{border-color:var(--honey-light);}
  #orders-results{margin-top:22px;display:flex;flex-direction:column;gap:12px;}
  .order-card{
    border:1px solid var(--line);border-radius:16px;padding:18px 20px;
    background:rgba(251,243,228,0.03);
  }
  .order-card-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px;}
  .order-card-ref{font-family:'Fraunces',serif;font-size:16px;font-weight:600;color:var(--honey-light);}
  .order-card-date{font-size:11.5px;color:var(--ivory-dim);}
  .order-card-detail{font-size:13px;color:var(--ivory-dim);line-height:1.6;white-space:pre-line;margin-bottom:10px;}
  .order-status{
    display:inline-flex;align-items:center;gap:7px;padding:6px 13px;border-radius:999px;
    font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;
  }
  .order-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;}
  .order-status.status-attente{background:rgba(232,148,12,0.15);color:var(--honey-light);}
  .order-status.status-entretien{background:rgba(124,147,168,0.2);color:#9fb3c8;}
  .order-status.status-attente-acompte{background:rgba(232,148,12,0.2);color:#f0aa2e;}
  .order-status.status-attente-etiquette{background:rgba(216,166,160,0.2);color:#e0b3ac;}
  .order-status.status-production{background:rgba(91,84,184,0.2);color:#9b93e0;}
  .order-status.status-livraison{background:rgba(27,110,110,0.2);color:var(--teal);}
  .order-status.status-attente-reliquat{background:rgba(232,148,12,0.22);color:#ffb84d;}
  .order-status.status-livree{background:rgba(46,140,80,0.2);color:#5fd08c;}
  .order-status.status-annulee{background:rgba(179,74,29,0.18);color:var(--rust);}
  .order-card-total{font-family:'Fraunces',serif;color:var(--ivory);font-weight:600;font-size:14.5px;margin-top:8px;}
  .orders-empty, .orders-loading{text-align:center;color:var(--ivory-dim);font-size:13.5px;padding:20px 0;}
  .partner-box{
    border-radius:28px;padding:60px;
    background:linear-gradient(135deg, var(--indigo), #241f52);
    display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;
    box-shadow:var(--shadow);
  }
  .partner-steps{display:flex;flex-direction:column;gap:18px;}
  .p-step{display:flex;gap:16px;align-items:flex-start;}
  .p-step .n{font-family:'Fraunces',serif;font-size:20px;font-weight:600;color:var(--honey-light);flex:none;width:32px;}
  .p-step p{margin:0;font-size:14px;line-height:1.55;color:rgba(251,243,228,0.85);}
  .partner-box h2{font-size:32px;margin:14px 0 16px;}
  .partner-box .eyebrow{color:var(--honey-light);}

  /* ===== FOOTER ===== */
  footer{padding:70px 0 40px;border-top:1px solid var(--line);}
  .foot-grid{display:grid;grid-template-columns:1.1fr 0.75fr 0.95fr 0.8fr 1.05fr;gap:28px;margin-bottom:56px;}
  .foot-brand p{color:var(--ivory-dim);font-size:13.5px;line-height:1.6;margin:16px 0 0;max-width:280px;}
  .foot-col h5{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--honey-light);margin:0 0 16px;}
  .foot-col a, .foot-col p{display:block;color:var(--ivory-dim);text-decoration:none;font-size:13.8px;margin-bottom:10px;line-height:1.5;}
  .foot-col a:hover{color:var(--ivory);}
  .foot-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;border-top:1px solid var(--line);padding-top:26px;font-size:12.5px;color:#8a7b63;}

  .whatsapp-fab{
    position:fixed;bottom:26px;right:26px;z-index:90;
    background:var(--honey);color:var(--espresso);
    width:58px;height:58px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 14px 30px -8px rgba(232,148,12,0.6);
    text-decoration:none;
    animation:pulse 2.6s infinite;
  }
  @keyframes pulse{0%,100%{box-shadow:0 14px 30px -8px rgba(232,148,12,0.6);}50%{box-shadow:0 14px 34px -4px rgba(232,148,12,0.85);}}

  @media (max-width:600px){
    .tier-grid{grid-template-columns:1fr;}
    .extra-grid{grid-template-columns:1fr;}
    .hex-grid{grid-template-columns:repeat(2,1fr);}
    .model-grid{grid-template-columns:1fr;}
    .model-actions{flex-direction:column;}
    .hero-badge{position:static;margin-top:18px;width:auto;}
    .foot-grid{grid-template-columns:1fr;}
    .config-box{padding:26px;}
    .resv-box{padding:18px;}
    .cal-day{font-size:11px;}
    .cal-day .dd{font-size:12px;}
    .resv-step-pill .n{display:none;}
    .cart-drawer{width:100vw;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .whatsapp-fab{animation:none;}
    *{transition:none !important;}
  }

  /* ===== CART BUTTON & DRAWER ===== */
  .mobile-tabbar{display:none;}
  .compare-scroll-hint{display:none;}
  .cart-btn{
    position:relative;width:44px;height:44px;border-radius:50%;
    border:1px solid var(--line);background:transparent;color:var(--ivory);
    display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s;flex:none;
  }
  .cart-btn:hover{border-color:var(--honey-light);color:var(--honey-light);}
  .cart-badge{
    position:absolute;top:-5px;right:-5px;background:var(--rust);color:var(--ivory);
    font-size:10.5px;font-weight:800;min-width:18px;height:18px;border-radius:999px;
    display:flex;align-items:center;justify-content:center;padding:0 4px;
  }
  .cart-overlay{
    position:fixed;inset:0;background:rgba(36,19,7,0.35);backdrop-filter:blur(2px);
    z-index:200;opacity:0;pointer-events:none;transition:opacity .3s;
  }
  .cart-overlay.open{opacity:1;pointer-events:auto;}
  .cart-drawer{
    position:fixed;top:0;right:0;bottom:0;width:min(440px,92vw);z-index:201;
    background:#FFFFFF;color:#2b2117;border-left:1px solid rgba(36,19,7,0.12);
    display:flex;flex-direction:column;
    transform:translateX(100%);transition:transform .35s cubic-bezier(.65,0,.35,1);
    box-shadow:-30px 0 60px -20px rgba(36,19,7,0.35);
  }
  .cart-drawer.open{transform:translateX(0);}
  .cart-head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid rgba(36,19,7,0.12);}
  .cart-head h3{font-family:'Fraunces',serif;font-size:20px;margin:0;color:#241307;}
  .cart-close{background:none;border:none;color:#241307;font-size:22px;cursor:pointer;width:34px;height:34px;border-radius:50%;transition:.2s;}
  .cart-close:hover{background:rgba(36,19,7,0.06);}
  .cart-body{flex:1;overflow-y:auto;padding:20px 24px;}
  .cart-empty{color:#6b5a44;font-size:14px;text-align:center;padding:50px 10px;}
  .cart-item{border-bottom:1px solid rgba(36,19,7,0.12);padding:16px 0;display:flex;gap:12px;}
  .cart-item-info{flex:1;}
  .cart-item-info b{font-family:'Fraunces',serif;font-size:15px;font-weight:600;display:block;margin-bottom:3px;color:#241307;}
  .cart-item-info span{font-size:12px;color:#6b5a44;display:block;line-height:1.5;}
  .cart-item-right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:8px;}
  .cart-item-price{font-family:'Fraunces',serif;color:var(--honey);font-weight:600;font-size:14.5px;}
  .cart-item-remove{background:none;border:none;color:#6b5a44;font-size:11.5px;cursor:pointer;text-decoration:underline;padding:0;}
  .cart-item-remove:hover{color:var(--rust);}
  .cart-foot{border-top:1px solid rgba(36,19,7,0.12);padding:20px 24px 26px;background:#FAF7F1;}
  .cart-line{display:flex;justify-content:space-between;font-size:13.5px;color:#6b5a44;padding:5px 0;}
  .cart-line b{color:#241307;font-weight:700;}
  .cart-total{display:flex;justify-content:space-between;align-items:baseline;margin:12px 0 16px;padding-top:12px;border-top:1px dashed rgba(36,19,7,0.18);}
  .cart-total .lbl{font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:#6b5a44;}
  .cart-total .amt{font-family:'Fraunces',serif;font-size:26px;color:var(--honey);font-weight:600;}
  .cart-policy{font-size:11.5px;line-height:1.6;color:#6b5a44;background:rgba(36,19,7,0.04);border:1px solid rgba(36,19,7,0.12);border-radius:12px;padding:12px 14px;margin-bottom:16px;}
  .cart-policy b{color:var(--honey);}
  .cart-customer{margin-bottom:16px;}
  .cart-field{margin-bottom:8px;}
  /* Sélecteur d'indicatif téléphonique, accolé au champ tel */
  .phone-row{display:flex;gap:6px;}
  .phone-row select.phone-country{flex:0 0 92px;border-radius:10px;border:1px solid var(--line);background:rgba(0,0,0,0.25);color:var(--ivory);font-size:13px;padding:0 6px;}
  .phone-row input[type="tel"]{flex:1;min-width:0;}
  .light-section .phone-row select.phone-country{background:#FAF7F1;border-color:rgba(36,19,7,0.18);color:#241307;}
  .cart-field input{
    width:100%;background:#FAF7F1;border:1px solid rgba(36,19,7,0.18);border-radius:10px;
    padding:10px 12px;color:#241307;font-family:'Manrope',sans-serif;font-size:13.5px;outline:none;transition:.2s;
  }
  .cart-field input:focus{border-color:var(--honey);}
  .cart-field input.field-invalid{border-color:var(--rust);}
  .field-invalid{border-color:var(--rust) !important;}
  .cart-field-hint{color:var(--rust);font-size:11.5px;margin:2px 0 10px;}
  .cart-confirm{padding:50px 30px;text-align:center;}
  .cart-pending{padding:50px 30px;text-align:center;}
  .cart-pending .cart-confirm-icon{font-size:22px;}
  .cart-confirm-icon{
    width:56px;height:56px;border-radius:50%;background:var(--teal);color:var(--ivory);
    font-size:26px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;
  }
  .cart-confirm h4{font-family:'Fraunces',serif;font-size:19px;margin:0 0 10px;}
  .cart-confirm p{font-size:13.5px;color:var(--ivory-dim);line-height:1.6;margin:0 0 6px;}
  .cart-confirm b{color:var(--honey-light);font-family:'Fraunces',serif;}
  .cart-confirm-sub{margin-top:10px !important;}
  .cart-confirm a{color:var(--honey-light);text-decoration:underline;}
  .cart-confirm .btn{margin-top:20px;}

  /* ===== RESERVATION / CALENDAR ===== */
  .reservation{padding:120px 0;background:linear-gradient(180deg, transparent, rgba(0,0,0,0.2) 6%, rgba(0,0,0,0.2) 94%, transparent);}
  .exclusivity-banner{
    display:flex;align-items:center;gap:14px;justify-content:center;
    background:rgba(232,148,12,0.09);border:1px solid rgba(232,148,12,0.3);
    border-radius:999px;padding:12px 26px;margin:0 auto 44px;max-width:fit-content;
    font-size:13px;font-weight:700;color:var(--honey-light);
  }
  .exclusivity-banner .pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--honey);animation:pulse2 1.8s infinite;flex:none;}
  @keyframes pulse2{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(232,148,12,0.5);}50%{opacity:.7;box-shadow:0 0 0 6px rgba(232,148,12,0);}}

  .resv-box{border-radius:28px;border:1px solid var(--line);background:linear-gradient(160deg, rgba(251,243,228,0.045), rgba(251,243,228,0.01));padding:44px;}

  /* ===== SELECTED MODEL BANNER ===== */
  .selected-model-banner{
    display:flex;align-items:center;gap:16px;
    background:linear-gradient(135deg, rgba(232,148,12,0.13), rgba(232,148,12,0.04));
    border:1px solid rgba(232,148,12,0.35);border-radius:18px;
    padding:14px 18px;margin-bottom:32px;max-width:620px;
  }
  .selected-model-banner.center{margin-left:auto;margin-right:auto;}
  .selected-model-banner img{width:56px;height:56px;border-radius:12px;object-fit:cover;flex:none;box-shadow:0 6px 16px -6px rgba(0,0,0,0.5);}
  .smb-text{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0;}
  .smb-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:var(--honey-light);}
  .smb-text b{font-family:'Fraunces',serif;font-size:16px;font-weight:600;color:var(--ivory);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .smb-change{font-size:12px;font-weight:700;color:var(--ivory-dim);text-decoration:underline;flex:none;white-space:nowrap;}
  .smb-change:hover{color:var(--honey-light);}
  .resv-steps-nav{display:flex;justify-content:space-between;margin-bottom:40px;gap:6px;flex-wrap:wrap;}
  .resv-step-pill{
    flex:1;min-width:110px;text-align:center;padding:10px 8px;border-radius:12px;
    border:1px solid var(--line);font-size:11px;font-weight:700;color:var(--ivory-dim);
    display:flex;flex-direction:column;align-items:center;gap:4px;
  }
  .resv-step-pill .n{width:24px;height:24px;border-radius:50%;background:rgba(251,243,228,0.08);display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-size:12px;color:var(--ivory-dim);}
  .resv-step-pill.active{border-color:var(--honey-light);color:var(--ivory);}
  .resv-step-pill.active .n{background:var(--honey);color:var(--espresso);}
  .resv-step-pill.done .n{background:var(--teal);color:var(--ivory);}
  .resv-step-pill.done{color:var(--ivory-dim);}

  .resv-panel{display:none;}
  .resv-panel.show{display:block;animation:fadein .35s ease;}
  @keyframes fadein{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}

  /* calendar widget */
  .cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:14px;}
  .cal-years{display:flex;gap:8px;}
  .cal-year-btn{border:1px solid var(--line);background:transparent;color:var(--ivory);padding:8px 16px;border-radius:999px;font-weight:700;font-size:13px;cursor:pointer;transition:.2s;}
  .cal-year-btn.active{background:var(--honey);color:var(--espresso);border-color:transparent;}
  .cal-month-nav{display:flex;align-items:center;gap:14px;}
  .cal-month-nav button{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ivory);cursor:pointer;font-size:15px;}
  .cal-month-nav button:hover{border-color:var(--honey-light);color:var(--honey-light);}
  .cal-month-label{font-family:'Fraunces',serif;font-size:19px;min-width:170px;text-align:center;}
  .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;}
  .cal-dow{text-align:center;font-size:11px;font-weight:700;color:var(--ivory-dim);text-transform:uppercase;letter-spacing:.05em;padding-bottom:6px;}
  .cal-day{
    aspect-ratio:1;border-radius:10px;border:1px solid var(--line);background:rgba(0,0,0,0.1);
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    font-size:13.5px;font-weight:600;cursor:pointer;transition:.15s;color:var(--ivory);gap:3px;
  }
  .cal-day .dd{font-family:'Fraunces',serif;font-size:15px;}
  .cal-day.disabled{opacity:.25;cursor:not-allowed;}
  .cal-day.empty{visibility:hidden;}
  .cal-day:not(.disabled):not(.empty):hover{border-color:var(--honey-light);background:rgba(232,148,12,0.1);}
  .cal-day .avail-dot{width:5px;height:5px;border-radius:50%;background:var(--teal);}
  .cal-day.full .avail-dot{background:var(--rust);}
  .cal-day.full{opacity:.55;}
  .cal-day.selected{background:var(--honey);border-color:transparent;color:var(--espresso);}
  .cal-day.selected .avail-dot{background:var(--espresso);}
  .cal-legend{display:flex;gap:20px;margin-top:18px;font-size:11.5px;color:var(--ivory-dim);flex-wrap:wrap;}
  .cal-legend span{display:inline-flex;align-items:center;gap:6px;}
  .cal-legend .sw{width:8px;height:8px;border-radius:50%;}

  .cal-status-box{margin-top:24px;border-radius:16px;padding:18px 20px;font-size:13.5px;line-height:1.6;}
  .cal-status-box.ok{background:rgba(27,110,110,0.14);border:1px solid rgba(27,110,110,0.4);color:var(--ivory);}
  .cal-status-box.full{background:rgba(179,74,29,0.14);border:1px solid rgba(179,74,29,0.4);color:var(--ivory);}
  .cal-status-box b{display:block;font-family:'Fraunces',serif;font-size:16px;margin-bottom:6px;}

  .resv-actions{display:flex;justify-content:space-between;margin-top:32px;gap:12px;}
  .resv-actions .btn-ghost{opacity:.9;}
  .resv-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:6px;}
  .resv-promo-row{display:grid;grid-template-columns:1fr auto;gap:10px;}
  .resv-promo-row input{min-width:0;}
  .resv-field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;}
  .resv-field.full{grid-column:1/-1;}
  .resv-field label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--honey-light);}
  .resv-field input,.resv-field select,.resv-field textarea{
    background:rgba(0,0,0,0.22);border:1px solid var(--line);border-radius:12px;padding:13px 15px;
    color:var(--ivory);font-family:'Manrope',sans-serif;font-size:14.5px;outline:none;transition:.2s;
  }
  .resv-field input:focus,.resv-field select:focus,.resv-field textarea:focus{border-color:var(--honey-light);}
  .color-swatches{display:flex;gap:10px;flex-wrap:wrap;}
  .swatch{width:32px;height:32px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:.2s;position:relative;}
  .swatch.active{border-color:var(--ivory);transform:scale(1.12);}
  .swatch.active::after{
    content:attr(data-pick-order);position:absolute;top:-6px;right:-6px;
    width:16px;height:16px;border-radius:50%;background:var(--honey);color:var(--espresso);
    font-size:9.5px;font-weight:800;display:flex;align-items:center;justify-content:center;font-family:'Manrope',sans-serif;
  }
  .resv-field input[type="file"]{
    background:rgba(0,0,0,0.22);border:1px dashed var(--line);border-radius:12px;padding:11px 13px;
    color:var(--ivory-dim);font-family:'Manrope',sans-serif;font-size:13px;
  }
  .resv-field input[type="file"]::file-selector-button{
    background:var(--honey);color:var(--espresso);border:none;border-radius:8px;padding:7px 12px;
    font-weight:700;font-size:12px;margin-right:10px;cursor:pointer;
  }

  .resv-recap{background:var(--ivory);color:var(--espresso);border-radius:20px;padding:28px;margin-top:10px;}
  .resv-recap .btn-ghost{border-color:rgba(36,19,7,0.3);color:var(--espresso);}
  .resv-recap .btn-ghost:hover{background:rgba(36,19,7,0.06);}
  .resv-recap h4{font-family:'Fraunces',serif;font-size:18px;margin:0 0 14px;}
  .resv-recap .rl{display:flex;justify-content:space-between;font-size:13px;padding:7px 0;border-bottom:1px dashed rgba(36,19,7,0.15);color:#4a3d2c;}
  .resv-recap .rl b{color:var(--espresso);}
  .rl{display:flex;justify-content:space-between;align-items:center;font-size:14px;padding:10px 0;border-bottom:1px dashed rgba(36,19,7,0.15);color:#5c4d3a;}
  .rl b{color:#241307;font-weight:700;}
  .resv-recap .rtotal{display:flex;justify-content:space-between;align-items:baseline;margin:16px 0;}
  .resv-recap .rtotal .amt{font-family:'Fraunces',serif;font-size:28px;color:var(--rust);font-weight:600;}
  .policy-box{background:rgba(36,19,7,0.06);border:1px solid rgba(36,19,7,0.12);border-radius:14px;padding:16px 18px;font-size:12.3px;line-height:1.65;color:#4a3d2c;margin-top:16px;}
  .policy-box b{color:var(--espresso);}
  .delivery-choice{display:flex;flex-direction:column;gap:10px;margin-top:14px;}
  .dc-opt{border:1px solid rgba(36,19,7,0.18);border-radius:12px;padding:13px 16px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;transition:.2s;}
  .dc-opt.active{border-color:var(--rust);background:rgba(179,74,29,0.06);}
  .dc-opt b{font-size:13.5px;}
  .dc-opt span{font-size:11.5px;color:#7a6a52;display:block;margin-top:2px;}
  .dc-opt .price{font-family:'Fraunces',serif;font-weight:600;color:var(--rust);white-space:nowrap;}
  .installment-box{background:rgba(27,110,110,0.08);border:1px solid rgba(27,110,110,0.3);border-radius:14px;padding:16px 18px;margin-top:14px;font-size:12.5px;color:#2b4a4a;line-height:1.6;}
  .installment-box b{color:var(--teal);}
  .installment-list{list-style:none;margin:10px 0 0;padding:0;}
  .installment-list li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed rgba(27,110,110,0.25);font-size:12.5px;}

  /* ============================================================
     SECTIONS À FOND BLANC (Accueil, Modèles, Composer, Devis,
     Notre histoire, Devenir partenaire, Nous contacter)
     ============================================================ */
  .light-section{background:#FFFFFF;color:#2b2117;}
  .light-section .eyebrow{color:var(--honey);font-weight:800;}
  .light-section .eyebrow::before{background:var(--honey);}
  .light-section .sec-head h2,
  .light-section h1{color:#241307;font-weight:700;}
  .light-section .sec-head h2 em,
  .light-section h1 em{color:var(--honey);font-weight:700;font-style:italic;}
  .light-section .sec-head p,
  .light-section p.lead{color:#5c4d3a;}
  .light-section .hero-stats div{color:#5c4d3a;border-color:rgba(36,19,7,0.15);}
  .light-section .hero-badge{border:2px solid #fff;box-shadow:0 20px 50px -20px rgba(36,19,7,0.35),0 0 0 1px rgba(36,19,7,0.08);}
  .light-section .hero-tag{background:rgba(36,19,7,0.78);}

  /* cartes / boîtes génériques */
  .light-section .feat{border-top-color:rgba(36,19,7,0.12);}
  .light-section .feat:last-child{border-bottom-color:rgba(36,19,7,0.12);}
  .light-section .feat h3{color:#241307;}
  .light-section .feat p{color:#5c4d3a;}
  .light-section .tier,
  .light-section .model-card,
  .light-section .extra-card,
  .light-section .order-box,
  .light-section .config-box,
  .light-section .resv-box{
    background:rgba(36,19,7,0.025);
    border-color:rgba(36,19,7,0.18);
  }
  .light-section .tier{border:1.5px solid rgba(36,19,7,0.22);}
  .light-section .tier:hover{border-color:var(--tier-c,var(--honey));background:rgba(36,19,7,0.045);}
  .light-section .tier-name,
  .light-section .model-caption b,
  .light-section .config-group label,
  .light-section .config-note,
  .light-section h3{color:#241307;}
  .light-section .tier-sub,
  .light-section .tier-list,
  .light-section .model-caption,
  .light-section .of-note,
  .light-section .p-step p,
  .light-section .config-note{color:#6b5a44;}
  .light-section .tier-cta{color:#241307;border-color:rgba(36,19,7,0.25);}
  .light-section .tier-cta:hover{color:#241307;}
  .light-section .tier .popular{background:var(--honey);color:#241307;}
  .light-section .of-field label{color:var(--honey);}
  .light-section .of-field input,
  .light-section .of-field select,
  .light-section .of-field textarea{
    background:#FAF7F1;border-color:rgba(36,19,7,0.18);color:#241307;
  }
  .light-section .of-field input:focus,
  .light-section .of-field select:focus,
  .light-section .of-field textarea:focus{border-color:var(--honey);background:#fff;}
  .light-section .of-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B34A1D' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;}
  .light-section .opt{background:#FAF7F1;border-color:rgba(36,19,7,0.18);color:#241307;}
  .light-section .opt small{color:#6b5a44;}
  .light-section .opt:hover{border-color:var(--honey);}
  .light-section .opt.active{background:var(--honey);border-color:var(--honey);color:#241307;}
  .light-section .qty-btn{border-color:rgba(36,19,7,0.25);color:#241307;}
  .light-section .qty-btn:hover{border-color:var(--honey);color:var(--honey);}
  .light-section .qty-val{color:#241307;}
  .light-section .qty-note{color:#6b5a44;}
  .light-section .gallery-hint{color:#6b5a44;}
  .light-section .tmg-item{background:#FAF7F1;border-color:rgba(36,19,7,0.18);}
  .light-section .config-summary{background:#FAF7F1 !important;border-color:rgba(36,19,7,0.18) !important;}
  .light-section .config-summary *{color:#241307;}
  .light-section .config-summary .sum-line span:first-child{color:#6b5a44;}
  .light-section .sum-total .lbl{color:#6b5a44 !important;}
  .light-section .sum-total .amt{color:var(--rust) !important;}
  .light-section .config-note{color:#6b5a44 !important;}
  .light-section .model-btn{border-color:rgba(36,19,7,0.25);color:#241307;}
  .light-section .model-btn:hover{border-color:var(--honey);color:var(--honey);}
  .light-section .extra-card p,
  .light-section .extra-card{color:#5c4d3a;}
  .light-section .extra-card h3{color:#241307;}
  .light-section .extra-price{color:var(--rust);}
  .light-section .carousel-count{color:#241307;}
  .light-section .about-text p{color:#3c3024;}
  .light-section .about-text p:first-of-type::first-letter{color:var(--honey);}
  .light-section .about-signature .sig-name{color:var(--honey);}
  .light-section .about-signature .sig-role{color:#6b5a44;}
  .light-section .selected-model-banner{background:#FAF7F1;border-color:rgba(36,19,7,0.18);}
  .light-section .smb-text,.light-section .smb-label,.light-section .smb-change{color:#241307;}
  .light-section .btn-ghost:hover{background:rgba(36,19,7,0.06);}
  .light-section .btn-ghost{border-color:rgba(36,19,7,0.3);color:#241307;}
  .light-section .exclusivity-banner{color:#6b5a44;border-color:rgba(36,19,7,0.18);}
  .light-section .step .n,
  .light-section .p-step .n{color:var(--honey);}
  .light-section .steps li p,
  .light-section .step p{color:#3c3024;}

  /* Portfolio : légendes toujours en blanc car posées sur une photo */
  .real-caption{color:var(--ivory) !important;}

  /* Modèles : contour reprenant la couleur de la formule active */
  .light-section .model-tab{color:#241307;border-color:rgba(36,19,7,0.22);}
  .light-section .model-tab.active{color:#241307;}
  .light-section .model-card{border:1.5px solid rgba(36,19,7,0.18);}
  .light-section .model-tab[data-tier="Standard"].active,
  .light-section .model-card[data-tier="Standard"]{border-color:#E8940C;}
  .light-section .model-tab[data-tier="Gold"].active,
  .light-section .model-card[data-tier="Gold"]{border-color:#F6C453;}
  .light-section .model-tab[data-tier="Diamond"].active,
  .light-section .model-card[data-tier="Diamond"]{border-color:#1B6E6E;}
  .light-section .model-tab[data-tier="Luxe"].active,
  .light-section .model-card[data-tier="Luxe"]{border-color:#332C74;}

  /* Comparatif détaillé — fond blanc + contour marron fin */
  .compare-wrap .sec-head h2,
  .compare-wrap h1{color:#241307;font-weight:700;}
  .compare-wrap .sec-head h2 em{color:var(--honey);font-weight:700;font-style:italic;}
  .compare-wrap .sec-head p{color:#5c4d3a;}
  .compare-wrap .eyebrow{color:var(--honey);font-weight:800;}
  .compare-wrap .eyebrow::before{background:var(--honey);}
  .compare-table-wrap{border:1.5px solid var(--espresso) !important;background:#fff;}
  .compare-table{background:#fff;}
  .compare-table th, .compare-table td{border-bottom-color:rgba(36,19,7,0.14);}
  .compare-table thead th{background:#FAF7F1 !important;color:var(--tier-c,#241307);}
  .compare-feature-col{color:#241307 !important;}
  .compare-table td:first-child{color:#3c3024 !important;}
  .compare-table td.yes{font-weight:800;}
  .compare-table tr td:nth-child(2).yes{color:#E8940C;}
  .compare-table tr td:nth-child(3).yes{color:#c98a1f;}
  .compare-table tr td:nth-child(4).yes{color:#1B6E6E;}
  .compare-table tr td:nth-child(5).yes{color:#5B54B8;}
  .compare-table td.opt{color:var(--honey) !important;font-weight:800;}
  .compare-table td.no{color:#241307;opacity:.5;}
  .compare-price-row td{background:#FAF7F1 !important;color:#241307 !important;}
  .compare-legend{color:#6b5a44;}
  .compare-legend span{color:#6b5a44;}

  /* Champ téléphone avec indicatif pays sélectionnable */
  .phone-field-group{display:flex;gap:8px;}
  .phone-field-group select.phone-code{
    flex:0 0 108px;border-radius:10px;font-size:13.5px;font-weight:600;
    padding:0 8px;cursor:pointer;
  }
  .phone-field-group input[type="tel"]{flex:1;min-width:0;}

  /* ===== Bloc mobile deplace ici pour garantir la priorite sur les regles de base ===== */
  @media (max-width:980px){
    .menu-toggle{display:flex;}
    nav{padding:14px 16px;gap:8px;}
    .brand-word{font-size:16px;}
    .brand-word span{font-size:12px;}
    .nav-cta{gap:8px;}
    .nav-cta .btn{padding:10px 14px;font-size:12.5px;}
    .cart-btn{width:34px;height:34px;flex-shrink:0;}
    .nav-links{
      position:fixed;top:0;right:0;height:100vh;width:78%;max-width:320px;
      background:#FAF7F1;
      display:flex;flex-direction:column;align-items:flex-start;gap:0;
      padding:100px 30px 30px;
      transform:translateX(100%);
      transition:transform .3s ease;
      z-index:200;
      box-shadow:-14px 0 40px rgba(0,0,0,0.25);
    }
    .nav-links.open{transform:translateX(0);}
    .nav-links a{width:100%;padding:17px 0;border-bottom:1px solid rgba(36,19,7,0.1);font-size:16px;opacity:1;color:#241307;}
    .nav-links a.active{border-bottom:1px solid var(--honey);color:var(--rust);font-weight:700;}
    .hero-grid,.philo-grid,.process-grid,.config-box,.partner-box{grid-template-columns:1fr;}
    .tier-grid{grid-template-columns:1fr;}
    .extra-grid{grid-template-columns:1fr;}
    .hex-grid{grid-template-columns:repeat(3,1fr);}
    .model-grid{grid-template-columns:1fr;}
    .foot-grid{grid-template-columns:1fr 1fr 1fr;}
    .process-photo{position:static;}
    .config-summary{position:static;}
    .resv-box{padding:28px;}
    .resv-field-grid{grid-template-columns:1fr;}
    .resv-promo-row{grid-template-columns:1fr;}
    .resv-steps-nav{gap:8px;}
    .resv-step-pill{min-width:80px;font-size:10px;}
    /* Comparatif détaillé : la colonne fixe de gauche doit rester dans le thème
       clair du reste du tableau, pas dans le thème sombre par défaut. */
    .light-section .compare-table th.compare-feature-col,
    .light-section .compare-table td:first-child{background:#FAF7F1 !important;}
    .light-section .compare-table thead th.compare-feature-col{background:#FAF7F1 !important;}
    .light-section .compare-price-row td:first-child{background:#FAF7F1 !important;}
    /* Section "Notre philosophie" retirée uniquement sur téléphone */
    #philosophie{display:none;}
    /* Pied de page radicalement simplifié sur téléphone : uniquement le copyright */
    footer .foot-grid{display:none;}
    footer .foot-bottom{justify-content:center;text-align:center;font-size:11px;padding:16px 0;border:none;}
    footer .foot-bottom span:last-child{display:none;}
    /* Réorganisation du header : menu, puis logo, puis bouton réserver — panier masqué ici */
    nav{flex-wrap:nowrap;}
    .menu-toggle{order:1;}
    .brand{order:2;margin-right:auto;margin-left:10px;}
    .nav-cta{order:3;}
    .cart-btn{display:none;}
    /* Barre de navigation fixe en bas (mobile uniquement) */
    body{padding-bottom:84px;}
    .mobile-tabbar{
      display:flex;position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom, 0px));
      z-index:9999;
      background:#FAF7F1;border-radius:20px;
      padding:9px 4px;
      box-shadow:0 8px 28px rgba(0,0,0,0.22);
      -webkit-transform:translateZ(0);transform:translateZ(0);
      will-change:transform;
    }
    .mobile-tabbar .tab-item{
      flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;
      color:#6b5a44;text-decoration:none;font-size:10.5px;font-weight:600;
      background:none;border:none;cursor:pointer;position:relative;padding:4px 0;
      font-family:'Manrope',sans-serif;
    }
    .mobile-tabbar .tab-item.active{color:var(--rust);}
    .mobile-tabbar .tab-badge{
      position:absolute;top:-2px;right:24%;background:var(--rust);color:#fff;
      font-size:9px;font-weight:800;min-width:15px;height:15px;border-radius:999px;
      display:flex;align-items:center;justify-content:center;padding:0 3px;
    }
    /* Bulle WhatsApp remontée juste au-dessus de la barre flottante du bas,
       pour qu'elle ne soit plus cachée derrière. */
    .whatsapp-fab{bottom:88px;right:18px;width:52px;height:52px;}
    /* Bouton "Voir mes commandes" centré et pleine largeur sur mobile,
       une fois que la ligne de recherche passe à la ligne suivante. */
    .orders-search-row{justify-content:center;}
    .orders-search-row #orders-search-btn{width:100%;}
    /* Réduit l'espace excessif entre les sections sur mobile */
    .models{padding:50px 0 30px;}
    .extras{padding:30px 0 50px;}
    .realisations{padding:0 0 50px;}
    .offers{padding:50px 0;}
    .process{padding:50px 0;}
    /* Indice visuel : le comparatif détaillé se défile horizontalement sur mobile */
    .compare-scroll-hint{
      display:flex;justify-content:flex-end;align-items:center;gap:4px;
      font-size:12px;font-weight:700;color:var(--espresso);opacity:0.75;
      margin-bottom:6px;
    }
    .compare-scroll-hint span{display:inline-block;animation:compare-scroll-nudge 1.4s ease-in-out infinite;}
    @keyframes compare-scroll-nudge{0%,100%{transform:translateX(0);}50%{transform:translateX(5px);}}
  }
