:root{box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-padding-top:calc(var(--nav-h) + 16px)}
body{margin:0;padding:0}img{max-width:100%;height:auto}[hidden]{display:none!important}
/* Chaoma events · charte 2026 : Ivory comme fond, Butter Cream comme lumière, Charcoal Ink pour le texte,
   Antique Gold et Champagne en accents. Lora pour titres et texte, Montserrat pour les petites étiquettes,
   Pinyon Script réservé à de rares touches. */
:root{
  /* Palette officielle */
  --butter:#F0E7B0; --ink:#35363A; --ivory:#FBF8EC; --sand:#E7DCC0; --antique:#8F7232; --champ:#CDB57A;
  /* Rôles */
  --bg:var(--ivory); --surface:#F6F0DC; --surface-2:#FFFDF5; --line:#E1D5B4;
  --fg:var(--ink); --muted:#6B6A66;
  --champagne:var(--antique);          /* accent texte (lisible sur Ivory) */
  --gold:var(--antique); --gold-soft:var(--antique);
  --ok:#5F7350; --warn:#8F7232; --full:#9A4B3E; --err:#A5483A;
  --f-script:"Pinyon Script",cursive;
  --f-serif:"Lora",Georgia,serif;
  --f-sans:"Montserrat",system-ui,sans-serif;
  --r:10px; --nav-h:88px;
  --gx:max(16px, env(safe-area-inset-left,0px)); --gy:max(16px, env(safe-area-inset-right,0px));
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--fg);font-family:var(--f-serif);font-size:16.5px;line-height:1.65;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--bg)}
h1,h2,h3{font-family:var(--f-serif);font-weight:400;line-height:1.16;text-wrap:balance;margin:0;color:var(--fg)}
h1{font-size:clamp(2.2rem,5vw,4rem)}
h2{font-size:clamp(1.8rem,3.4vw,2.7rem)}
h3{font-size:1.45rem}
p{margin:0}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--antique);outline-offset:3px}
.wrap{max-width:1180px;margin:0 auto;padding-left:var(--gx);padding-right:var(--gy)}
/* Accent de section : Lora italique (l'écriture Pinyon reste réservée à .pinyon) */
.script{font-family:var(--f-serif);font-style:italic;color:var(--antique);font-weight:400;font-size:clamp(1.15rem,2vw,1.35rem);line-height:1.2}
.pinyon{font-family:var(--f-script);font-style:normal;color:var(--ink);font-weight:400;line-height:1}
.eyebrow{font-family:var(--f-sans);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--antique);font-weight:600}
.lead{color:var(--muted);font-size:1.08rem;max-width:62ch}
.muted{color:var(--muted)}
[data-lucide]{width:20px;height:20px;stroke-width:1.5}

/* ---------- NAV ---------- */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(251,248,236,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;gap:20px;height:var(--nav-h)}
.logo{display:flex;flex-direction:column;align-items:center;text-decoration:none;line-height:1;cursor:pointer;background:none;border:0;padding:0;flex:none}
.logo img{width:150px;min-width:140px;height:auto;display:block}
.tabs{display:flex;gap:2px;margin:0 auto;list-style:none;padding:0}
.tab{font-family:var(--f-sans);background:none;border:0;padding:10px 13px;font-size:.8rem;font-weight:500;letter-spacing:.02em;color:var(--muted);cursor:pointer;position:relative;border-radius:8px;transition:color .3s,background .3s;white-space:nowrap}
.tab:hover{color:var(--fg);background:rgba(240,231,176,.45)}
.tab[aria-selected="true"]{color:var(--ink);font-weight:600}
.tab[aria-selected="true"]::after{content:"";position:absolute;left:13px;right:13px;bottom:3px;height:1.5px;background:var(--champ)}
.btn{font-family:var(--f-sans);display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 22px;border-radius:8px;font-weight:600;font-size:.84rem;letter-spacing:.01em;cursor:pointer;border:1px solid transparent;text-decoration:none;transition:all .3s;white-space:nowrap}
.btn-gold{background:var(--ink);color:var(--ivory)}
.btn-gold:hover{background:var(--antique);box-shadow:0 10px 26px -12px rgba(143,114,50,.6)}
.btn-ghost{border-color:rgba(53,54,58,.28);color:var(--ink);background:transparent}
.btn-ghost:hover{border-color:var(--antique);color:var(--antique);background:rgba(240,231,176,.35)}
.btn-sm{padding:9px 16px;font-size:.8rem}
.btn:disabled{opacity:.4;cursor:not-allowed}
.nav-cta{flex:none}
.tabs-mobile{display:none}
@media (max-width:960px){
  .tabs{display:none}
  .nav-in{justify-content:space-between}
  .tabs-mobile{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;padding:0 0 8px;margin:0}
  .tabs-mobile::-webkit-scrollbar{display:none}
  .tabs-mobile .tab{padding:8px 12px;font-size:.78rem}
}
@media (max-width:420px){.nav-cta span{display:none}.nav-cta{padding:11px 13px}}

/* ---------- VIEWS ---------- */
.view{display:none;animation:fade .55s ease}
.view.on{display:block}
@keyframes fade{from{opacity:.001;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
.section{padding-block:clamp(56px,8vw,104px)}
.section.alt{background:var(--surface)}
.head{display:grid;gap:12px;margin-bottom:44px;max-width:760px}
.head.center{margin-inline:auto;text-align:center;justify-items:center}

/* ---------- AMBIANCES : tons dorés et chauds (direction photo), remplaçables par vos photos ---------- */
.ph{position:relative;overflow:hidden;background:var(--sand)}
.ph::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 120%,rgba(143,114,50,.18),transparent 60%);pointer-events:none}
.ph img{width:100%;height:100%;object-fit:cover;display:block}
.ph .ico{position:absolute;inset:0;display:grid;place-items:center;z-index:1}
.ph .ico [data-lucide]{width:44px;height:44px;stroke-width:1;color:rgba(53,54,58,.55)}
.ph-wedding{background:radial-gradient(circle at 30% 30%,rgba(251,248,236,.9) 0 1.5px,transparent 2.5px) 0 0/34px 34px,radial-gradient(ellipse at 50% 15%,#FBF8EC,transparent 60%),linear-gradient(170deg,#F0E7B0,#CDB57A)}
.ph-engage{background:radial-gradient(circle at 72% 28%,rgba(251,248,236,.85),transparent 45%),radial-gradient(ellipse at 20% 85%,rgba(205,181,122,.7),transparent 55%),linear-gradient(200deg,#F3E9CF,#E7DCC0)}
.ph-party{background:radial-gradient(circle,rgba(143,114,50,.35) 0 1.4px,transparent 2px) 0 0/22px 22px,radial-gradient(circle at 80% 20%,#FBF8EC,transparent 45%),linear-gradient(140deg,#F0E7B0,#E7DCC0)}
.ph-gift{background:repeating-linear-gradient(45deg,rgba(143,114,50,.09) 0 1.5px,transparent 1.5px 14px),linear-gradient(150deg,#FBF8EC,#E7DCC0)}
.ph-bar{background:radial-gradient(circle at 25% 75%,rgba(205,181,122,.75),transparent 45%),radial-gradient(circle at 75% 25%,#FBF8EC,transparent 40%),linear-gradient(160deg,#E7DCC0,#D8C9A0)}
.ph-scene{background:conic-gradient(from 200deg at 50% 110%,#E7DCC0,#F0E7B0,#CDB57A,#F0E7B0,#E7DCC0)}
.ph-paper{background:repeating-linear-gradient(0deg,rgba(143,114,50,.1) 0 1px,transparent 1px 18px),linear-gradient(170deg,#FFFDF5,#F0E7B0)}
.ph-seminar{background:linear-gradient(90deg,rgba(53,54,58,.06) 1px,transparent 1px) 0 0/40px 40px,radial-gradient(ellipse at 50% 0%,#FBF8EC,transparent 65%),linear-gradient(180deg,#E7DCC0,#D9CBA6)}
.ph-team{background:radial-gradient(ellipse at 50% 110%,rgba(143,114,50,.35),transparent 55%),radial-gradient(circle at 80% 20%,#FBF8EC,transparent 40%),linear-gradient(180deg,#F0E7B0,#E7DCC0)}
.ph-gala{background:radial-gradient(circle at 50% 0%,rgba(240,231,176,.6),transparent 50%),repeating-conic-gradient(from 0deg at 50% -20%,rgba(205,181,122,.18) 0 4deg,transparent 4deg 12deg),linear-gradient(180deg,#4A4A4C,#35363A)}
.ph-gala .ico [data-lucide]{color:rgba(240,231,176,.8)}
.ph-yoga{background:radial-gradient(circle at 50% 38%,#FBF8EC 0 18%,transparent 19%),radial-gradient(ellipse at 50% 100%,rgba(205,181,122,.7),transparent 55%),linear-gradient(180deg,#F0E7B0,#E7DCC0)}
.ph-popup{background:repeating-linear-gradient(90deg,rgba(53,54,58,.06) 0 1px,transparent 1px 26px),radial-gradient(circle at 30% 30%,#FBF8EC,transparent 45%),linear-gradient(160deg,#E7DCC0,#CDB57A)}
.ph-xmas{background:radial-gradient(circle,#F0E7B0 0 1.2px,transparent 1.6px) 0 0/28px 28px,radial-gradient(circle,rgba(205,181,122,.8) 0 .8px,transparent 1.2px) 14px 14px/28px 28px,radial-gradient(ellipse at 50% 100%,rgba(143,114,50,.5),transparent 55%),linear-gradient(180deg,#45464A,#35363A)}
.ph-xmas .ico [data-lucide]{color:rgba(240,231,176,.85)}

/* ---------- HERO (Butter Cream, comme la couverture de la charte) ---------- */
.hero{position:relative;overflow:hidden;background:var(--butter);border-bottom:1px solid var(--line)}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 60% 70% at 78% 40%,rgba(251,248,236,.75),transparent 70%),radial-gradient(ellipse 50% 60% at 10% 90%,rgba(205,181,122,.25),transparent 70%)}
.hero-in{position:relative;display:grid;grid-template-columns:1.25fr .9fr;gap:48px;align-items:center;padding-block:clamp(56px,9vw,112px)}
.hero-copy{display:grid;gap:22px;min-width:0}
.hero-copy h1 em{font-style:italic;color:var(--antique)}
.hero-copy .lead{color:#55554F}
.hero .btn-ghost{background:rgba(251,248,236,.5)}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.arch{position:relative;aspect-ratio:3/4;max-width:100%;width:100%;border-radius:999px 999px 14px 14px;border:1px solid rgba(143,114,50,.45);padding:12px}
.arch-in{width:100%;height:100%;border-radius:999px 999px 8px 8px;overflow:hidden;position:relative}
.arch-in .ph{position:absolute;inset:0}
.arch-cap{position:absolute;left:50%;bottom:30px;transform:translateX(-50%);z-index:2;text-align:center;width:84%}
.arch-cap .pinyon{font-size:2.6rem}
.arch-cap small{display:block;font-family:var(--f-sans);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);opacity:.75;margin-top:8px}
.sparkle{position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 30% 30%,#fff 0 1px,transparent 2px),radial-gradient(circle at 70% 22%,#fff 0 1px,transparent 2px),radial-gradient(circle at 52% 48%,#fff 0 1.2px,transparent 2px),radial-gradient(circle at 22% 58%,#fff 0 1px,transparent 2px),radial-gradient(circle at 80% 62%,#fff 0 1px,transparent 2px);animation:twinkle 4s ease-in-out infinite alternate}
@keyframes twinkle{from{opacity:.35}to{opacity:1}}
@media (max-width:860px){.hero-in{grid-template-columns:1fr}.arch{max-width:340px;margin-inline:auto}}

/* ---------- VALUES / TRUST ---------- */
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.value{background:var(--surface-2);padding:30px 26px;display:grid;gap:12px;align-content:start}
.value [data-lucide]{color:var(--antique);width:26px;height:26px}
.value h3{font-size:1.3rem}
.value p{color:var(--muted);font-size:.95rem}
@media (max-width:900px){.grid-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.grid-4{grid-template-columns:1fr}}
.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.trust-item{display:flex;gap:16px;align-items:center;padding:22px 0;border-top:1px solid var(--champ)}
.trust-item .num{font-family:var(--f-serif);font-size:2.4rem;color:var(--antique);line-height:1;min-width:84px}
.trust-item b{display:block;font-weight:600}
.trust-item span{color:var(--muted);font-size:.93rem}
@media (max-width:760px){.trust{grid-template-columns:1fr;gap:0}}
.about{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:end;margin-bottom:48px}
.about p{color:var(--muted)}
@media (max-width:800px){.about{grid-template-columns:1fr;gap:20px}}

/* ---------- CHIPS / FILTERS ---------- */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.chip{font-family:var(--f-sans);border:1px solid var(--line);background:var(--surface-2);color:var(--muted);padding:8px 16px;border-radius:999px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .3s}
.chip:hover{color:var(--fg);border-color:var(--champ)}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--ivory);border-color:var(--ink);font-weight:600}

/* ---------- CARDS ---------- */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:960px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.cards{grid-template-columns:1fr}}
.card{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:border-color .3s,transform .3s,box-shadow .3s}
.card:hover{border-color:var(--champ);transform:translateY(-3px);box-shadow:0 14px 30px -20px rgba(53,54,58,.35)}
.card .ph{aspect-ratio:16/10;max-width:100%}
.card-b{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1;min-width:0}
.card-b .tag{font-family:var(--f-sans);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--antique);font-weight:600}
.card-b p{color:var(--muted);font-size:.95rem}
.card-b ul{list-style:none;padding:0;margin:0;display:grid;gap:6px;font-size:.93rem}
.card-b li{display:flex;gap:9px;align-items:flex-start}
.card-b li [data-lucide]{width:16px;height:16px;color:var(--antique);flex:none;margin-top:5px}
.card-b .foot{margin-top:auto;padding-top:8px}
.card[hidden]{display:none}

.xp{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
@media (max-width:960px){.xp{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.xp{grid-template-columns:1fr}}
.xp-item{display:grid;gap:14px;align-content:start}
.xp-item .ph{aspect-ratio:4/5;max-width:100%;border-radius:999px 999px 10px 10px;border:1px solid var(--champ)}
.xp-item h3{font-size:1.25rem}
.xp-item p{color:var(--muted);font-size:.93rem}

.services{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.svc{display:flex;gap:16px;padding:24px 20px 24px 0;border-bottom:1px solid var(--line)}
.svc [data-lucide]{color:var(--antique);width:24px;height:24px;flex:none;margin-top:3px}
.svc b{font-family:var(--f-serif);font-size:1.2rem;font-weight:500;display:block}
.svc span{color:var(--muted);font-size:.93rem}
@media (max-width:860px){.services{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.services{grid-template-columns:1fr}}

/* ---------- B2B ---------- */
.b2b-list{display:grid;gap:22px}
.b2b{display:grid;grid-template-columns:320px 1fr;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.b2b .ph{min-height:220px}
.b2b-b{padding:30px;display:grid;gap:14px;min-width:0}
.b2b-b .cols{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px;list-style:none;padding:0;margin:0;font-size:.95rem;color:var(--muted)}
.b2b-b .cols li{display:flex;gap:8px}
.b2b-b .cols [data-lucide]{width:16px;height:16px;color:var(--antique);flex:none;margin-top:5px}
.case{border-left:2px solid var(--champ);padding:10px 16px;background:var(--surface);font-size:.93rem;border-radius:0 6px 6px 0}
.case b{font-family:var(--f-sans);color:var(--antique);font-weight:600;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;display:block;margin-bottom:2px}
@media (max-width:820px){.b2b{grid-template-columns:1fr}.b2b .ph{min-height:160px}.b2b-b .cols{grid-template-columns:1fr}}
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.why div{display:grid;gap:10px;align-content:start}
.why [data-lucide]{color:var(--antique);width:28px;height:28px}
.why b{font-family:var(--f-serif);font-size:1.3rem;font-weight:500}
.why p{color:var(--muted);font-size:.93rem}
@media (max-width:860px){.why{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.why{grid-template-columns:1fr}}
.cta-band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding:40px;border:1px solid var(--champ);border-radius:var(--r);background:var(--butter)}

/* ---------- AGENDA ---------- */
.ev{display:grid;grid-template-columns:300px 1fr auto;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:border-color .3s}
.ev:hover{border-color:var(--champ)}
.ev[hidden]{display:none}
.ev .ph{min-height:240px}
.ev-date{position:absolute;top:16px;left:16px;z-index:2;background:rgba(251,248,236,.94);border:1px solid var(--champ);border-radius:8px;padding:8px 12px;text-align:center;line-height:1.05}
.ev-date b{font-family:var(--f-serif);font-weight:500;font-size:1.6rem;color:var(--ink);display:block}
.ev-date small{font-family:var(--f-sans);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--antique);font-weight:600}
.ev-b{padding:28px;display:grid;gap:12px;align-content:start;min-width:0}
.ev-b h3 small{display:block;font-family:var(--f-serif);font-style:italic;font-weight:400;color:var(--antique);font-size:1.1rem;margin-top:6px}
.meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.9rem;color:var(--muted)}
.meta span{display:flex;align-items:center;gap:7px}
.meta [data-lucide]{width:16px;height:16px;color:var(--antique)}
.badge{font-family:var(--f-sans);display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:600;padding:5px 11px;border-radius:999px;background:var(--butter);color:var(--ink);border:1px solid var(--champ);width:fit-content}
.status{font-family:var(--f-sans);display:inline-flex;align-items:center;gap:7px;font-size:.74rem;font-weight:600}
.status::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.st-ok{color:var(--ok)} .st-warn{color:var(--warn)} .st-full{color:var(--full)}
.ev-side{padding:28px;border-left:1px solid var(--line);display:grid;gap:12px;align-content:center;justify-items:start;min-width:220px;background:var(--surface)}
.ev-side .from{font-family:var(--f-sans);font-size:.74rem;color:var(--muted)}
.ev-side .price{font-family:var(--f-serif);font-size:2.1rem;color:var(--ink);line-height:1;font-variant-numeric:tabular-nums}
.ev-side .price small{font-size:1rem;color:var(--muted)}
.bar{width:100%;height:4px;background:var(--line);border-radius:4px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--antique)}
.left{font-size:.84rem;color:var(--muted);font-variant-numeric:tabular-nums}
@media (max-width:980px){.ev{grid-template-columns:240px 1fr}.ev-side{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;min-width:0}}
@media (max-width:640px){.ev{grid-template-columns:1fr}.ev .ph{min-height:170px}.ev-side{grid-template-columns:1fr}}

/* ---------- MODAL ---------- */
.overlay{position:fixed;inset:0;z-index:100;background:rgba(53,54,58,.55);backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:calc(24px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.overlay[hidden]{display:none!important}
.modal{width:100%;max-width:640px;background:var(--ivory);border:1px solid var(--champ);border-radius:14px;overflow:hidden;animation:fade .35s ease;margin:auto 0;box-shadow:0 30px 60px -30px rgba(53,54,58,.5)}
.modal-h{position:relative;padding:28px 28px 22px;border-bottom:1px solid var(--line);background:var(--butter)}
.modal-h .x{position:absolute;top:16px;right:16px;background:rgba(251,248,236,.6);border:1px solid var(--champ);border-radius:8px;width:38px;height:38px;display:grid;place-items:center;cursor:pointer;color:var(--ink)}
.modal-h .x:hover{border-color:var(--antique);color:var(--antique)}
.modal-h .script{font-size:1.15rem!important}
.modal-b{padding:24px 28px 28px;display:grid;gap:22px}
.tickets{display:grid;gap:10px}
.ticket{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;cursor:pointer;transition:all .25s;background:var(--surface-2)}
.ticket:hover{border-color:var(--champ)}
.ticket input{accent-color:var(--antique);width:18px;height:18px;flex:none}
.ticket .t{flex:1;min-width:0}
.ticket .t b{display:block;font-weight:600}
.ticket .t span{font-size:.86rem;color:var(--muted)}
.ticket .p{font-family:var(--f-serif);font-size:1.25rem;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}
.ticket:has(input:checked){border-color:var(--antique);background:rgba(240,231,176,.45)}
.qty{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.stepper{display:flex;align-items:center;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface-2)}
.stepper button{width:44px;height:44px;background:transparent;border:0;cursor:pointer;color:var(--ink);display:grid;place-items:center}
.stepper button:hover:not(:disabled){background:var(--butter)}
.stepper button:disabled{opacity:.3;cursor:not-allowed}
.stepper output{min-width:48px;text-align:center;font-weight:600;font-variant-numeric:tabular-nums}
.total{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0 0;border-top:1px dashed var(--champ)}
.total b{font-family:var(--f-serif);font-weight:500;font-size:1.9rem;color:var(--ink);font-variant-numeric:tabular-nums}
.sec-t{font-family:var(--f-sans);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--antique);font-weight:600;margin-bottom:10px}

/* ---------- FORMS ---------- */
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fgrid .full{grid-column:1/-1}
@media (max-width:560px){.fgrid{grid-template-columns:1fr}}
.field{display:grid;gap:7px;min-width:0}
.field label,.flabel{font-family:var(--f-sans);font-size:.76rem;font-weight:600;color:var(--fg)}
.field label i{font-style:normal;color:var(--antique)}
.field input,.field select,.field textarea{width:100%;background:#FFFEF9;border:1px solid var(--line);border-radius:8px;padding:12px 14px;transition:border-color .25s}
.field textarea{min-height:110px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--antique);box-shadow:0 0 0 3px rgba(240,231,176,.8)}
.field input::placeholder,.field textarea::placeholder{color:#9C9A92}
.field .err{font-family:var(--f-sans);font-size:.74rem;color:var(--err);display:none}
.field.bad input,.field.bad select{border-color:var(--err)}
.field.bad .err{display:block}
.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg button{font-family:var(--f-sans);flex:1 1 140px;padding:12px 14px;border:1px solid var(--line);background:#FFFEF9;border-radius:8px;cursor:pointer;display:flex;gap:10px;align-items:center;justify-content:center;font-size:.84rem;color:var(--muted);transition:all .25s}
.seg button[aria-pressed="true"]{border-color:var(--antique);color:var(--ink);font-weight:600;background:var(--butter)}
.seg button:hover{border-color:var(--champ)}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tags .chip{display:inline-flex;align-items:center;gap:7px}
.tags .chip [data-lucide]{width:15px;height:15px}

.quote{display:grid;grid-template-columns:1.55fr 1fr;gap:32px;align-items:start}
@media (max-width:920px){.quote{grid-template-columns:1fr}}
.panel{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:clamp(22px,3vw,36px);min-width:0}
.path{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:28px}
.path button{text-align:left;padding:18px;border:1px solid var(--line);border-radius:10px;background:#FFFEF9;cursor:pointer;display:grid;gap:4px;transition:all .25s}
.path button b{font-family:var(--f-serif);font-size:1.2rem;font-weight:500;display:flex;gap:10px;align-items:center}
.path button span{font-size:.86rem;color:var(--muted)}
.path button[aria-pressed="true"]{border-color:var(--antique);background:var(--butter)}
.path button[aria-pressed="true"] b [data-lucide]{color:var(--antique)}
@media (max-width:560px){.path{grid-template-columns:1fr}}
.fstack{display:grid;gap:22px}
.contact-card{display:grid;gap:20px;position:sticky;top:calc(var(--nav-h) + 24px);background:var(--ink);border-color:var(--ink);color:var(--ivory)}
.contact-card .script{color:var(--butter)}
.c-row{display:flex;gap:14px;align-items:flex-start}
.c-row [data-lucide]{color:var(--champ);flex:none;margin-top:3px}
.c-row b{display:block;font-family:var(--f-sans);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--champ);font-weight:600}
.c-row a,.c-row span{color:var(--ivory);text-decoration:none;word-break:break-word}
.c-row a:hover{color:var(--butter)}
.contact-card [data-wa]{color:var(--butter)!important}
.copy{font-family:var(--f-sans);background:none;border:1px solid rgba(231,220,192,.35);border-radius:6px;padding:3px 9px;font-size:.7rem;color:var(--sand);cursor:pointer;margin-left:8px}
.copy:hover{color:var(--butter);border-color:var(--champ)}

/* confirmation */
.done{display:grid;gap:16px;justify-items:center;text-align:center;padding:12px 0}
.done .seal{width:76px;height:76px;border-radius:50%;border:1px solid var(--champ);background:var(--butter);display:grid;place-items:center;color:var(--antique)}
.done .seal [data-lucide]{width:34px;height:34px}
.ref{font-family:var(--f-serif);font-size:1.5rem;letter-spacing:.08em;color:var(--ink);border:1px dashed var(--antique);padding:8px 18px;border-radius:8px;font-variant-numeric:tabular-nums;background:var(--surface)}
.recap{width:100%;display:grid;gap:0;text-align:left;font-size:.93rem;border-top:1px solid var(--line)}
.recap div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}
.recap span{color:var(--muted)}
.recap b{font-weight:600;text-align:right}

/* ---------- FOOTER (Charcoal + logo Ivory) ---------- */
footer{background:var(--ink);color:var(--ivory)}
.foot-in{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:36px;padding-block:56px 32px}
.foot-in h4{font-family:var(--f-sans);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--champ);margin:0 0 14px;font-weight:600}
.foot-in ul{list-style:none;padding:0;margin:0;display:grid;gap:9px;font-size:.93rem}
.foot-in .muted{color:#CFC8B4}
.foot-in button.lk,.foot-in a{background:none;border:0;padding:0;color:#CFC8B4;cursor:pointer;text-decoration:none;text-align:left}
.foot-in button.lk:hover,.foot-in a:hover{color:var(--butter)}
.legal{font-family:var(--f-sans);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-block:20px;border-top:1px solid rgba(231,220,192,.15);font-size:.74rem;color:#A9A596}

.wa{position:fixed;z-index:40;right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));width:56px;height:56px;border-radius:50%;background:var(--ink);color:var(--butter);display:grid;place-items:center;box-shadow:0 10px 30px -10px rgba(53,54,58,.6);transition:transform .3s,background .3s}
.wa:hover{transform:scale(1.07);background:var(--antique)}
.wa [data-lucide]{width:26px;height:26px;stroke-width:1.8}
.toast{font-family:var(--f-sans);position:fixed;z-index:120;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--ivory);padding:10px 18px;border-radius:8px;font-size:.82rem;font-weight:600}
@media (max-width:820px){.foot-in{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.foot-in{grid-template-columns:1fr}}

/* ---------- Multi-pages ---------- */
a.tab{text-decoration:none;display:inline-block}
.tab[aria-current="page"]{color:var(--ink);font-weight:600}
.tab[aria-current="page"]::after{content:"";position:absolute;left:13px;right:13px;bottom:3px;height:1.5px;background:var(--champ)}
.hero h1 .kicker{display:block;font-family:var(--f-sans);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--antique);font-weight:600;margin-bottom:18px}
.arch-in img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.arch-in .shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(53,54,58,.55));z-index:1}
.arch-cap .pinyon{color:var(--ivory)} .arch-cap small{color:var(--ivory);opacity:.9}
.page-head{padding-block:clamp(48px,7vw,88px) clamp(28px,4vw,44px);background:var(--butter);border-bottom:1px solid var(--line)}
.page-head h1{font-size:clamp(2rem,4.4vw,3.3rem);max-width:22ch}
.page-head .lead{margin-top:14px;color:#55554F}
.crumbs{font-family:var(--f-sans);font-size:.74rem;color:var(--muted);margin-bottom:18px}
.crumbs a{color:var(--antique);text-decoration:none}.crumbs a:hover{text-decoration:underline}
.about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:center}
.about-grid .txt{display:grid;gap:16px;min-width:0}
.about-grid .txt p{color:var(--muted)}
.about-grid .txt p b{color:var(--ink);font-weight:600}
.about-grid figure{margin:0;border-radius:999px 999px 12px 12px;overflow:hidden;border:1px solid var(--champ);aspect-ratio:4/5;max-width:100%}
.about-grid figure img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:820px){.about-grid{grid-template-columns:1fr;gap:28px}.about-grid figure{max-width:340px}}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tile{display:grid;gap:10px;align-content:start;padding:28px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface-2);text-decoration:none;color:inherit;transition:border-color .3s,transform .3s}
.tile:hover{border-color:var(--champ);transform:translateY(-3px)}
.tile [data-lucide]{color:var(--antique);width:26px;height:26px}
.tile h3{font-size:1.35rem}.tile p{color:var(--muted);font-size:.95rem}
.tile .more{font-family:var(--f-sans);font-size:.78rem;font-weight:600;color:var(--antique);margin-top:6px}
@media (max-width:860px){.tiles{grid-template-columns:1fr}}
.method{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);counter-reset:m}
.method li{counter-increment:m;padding:26px 24px 26px 0;border-bottom:1px solid var(--line);display:grid;gap:6px;align-content:start}
.method li::before{content:counter(m,decimal-leading-zero);font-family:var(--f-sans);font-size:.72rem;font-weight:600;letter-spacing:.14em;color:var(--antique)}
.method b{font-family:var(--f-serif);font-weight:500;font-size:1.2rem}
.method span{color:var(--muted);font-size:.93rem}
@media (max-width:860px){.method{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.method{grid-template-columns:1fr}}
.zone{font-family:var(--f-sans);font-size:.82rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.zone span{border:1px solid var(--line);border-radius:999px;padding:5px 12px;background:var(--surface-2);color:var(--ink)}
.card .ph{aspect-ratio:4/3}
.card .ph img,.b2b .ph img,.ev .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.prose{max-width:70ch;display:grid;gap:14px}
.prose h2{font-size:1.5rem;margin-top:22px}
.prose p,.prose li{color:#4A4A48}
.contact-card{position:static}
.hint{font-family:var(--f-sans);font-size:.78rem;color:var(--muted)}
.ev-b .people{font-size:.93rem;color:var(--muted)}
.ev-b ol{margin:0;padding-left:20px;display:grid;gap:6px;font-size:.95rem}
.ev-b ol b{font-weight:600}
.soon{border:1px dashed var(--champ);border-radius:var(--r);padding:24px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin-top:22px}
.soon p{color:var(--muted);max-width:56ch}
@media (max-width:560px){#q-submit{white-space:normal;text-align:center;justify-self:stretch!important}}
/* Hero compact : tient dans l'écran d'un portable 13" */
.hero-in{padding-block:clamp(28px,4.5vh,56px);gap:clamp(28px,4vw,56px);grid-template-columns:1.3fr auto}
.hero-copy{gap:16px}
.hero-copy h1{font-size:clamp(2rem,min(4vw,6.6vh),3.6rem)}
.hero h1 .kicker{margin-bottom:12px}
.hero-copy .lead{font-size:1rem}
.hero-actions{margin-top:4px}
.arch{height:min(600px,calc(100svh - var(--nav-h) - 2*clamp(28px,4.5vh,56px)));width:auto;aspect-ratio:3/4;min-height:300px;justify-self:end}
@media (max-width:860px){.hero-in{grid-template-columns:1fr}.arch{height:auto;width:100%;max-width:340px;justify-self:center}}
.arch{height:min(600px,calc(100svh - var(--nav-h) - 2*clamp(28px,4.5vh,56px) - 8px))}
@media (max-width:1120px) and (min-width:961px){.nav-in{gap:12px}.tab{padding:10px 9px}.tab[aria-current="page"]::after{left:9px;right:9px}.nav-cta{padding:11px 16px}}

/* =====================================================================
   Couche « luxe » · novembre 2026
   En-tête Charcoal, fond Ivory, cartes festonnées reprises des fiches offres,
   Montserrat léger pour les noms de gammes (Chaoma Private / Corporate / Marketing).
   ===================================================================== */
:root{--nav-h:84px;--hair:rgba(143,114,50,.32);--surface:#F4EEDF;--r:6px;--sw:40px;--sh:12px}
body{background:var(--ivory)}
body::before{background:var(--ink)}
.btn{border-radius:4px}
.card,.panel,.b2b,.ev,.modal,.cta-band,.soon,.tile{border-radius:6px}

/* En-tête foncé */
.nav{background:var(--ink);border-bottom:1px solid rgba(205,181,122,.25);-webkit-backdrop-filter:none;backdrop-filter:none}
.nav .logo img{width:140px;min-width:140px}
.nav .tab{color:#D6CDB4;letter-spacing:.03em}
.nav .tab:hover{color:var(--ivory);background:rgba(251,248,236,.07)}
.nav .tab[aria-current="page"]{color:var(--ivory);font-weight:600}
.nav .tab[aria-current="page"]::after{background:var(--champ)}
.nav .btn-gold{background:var(--butter);color:var(--ink)}
.nav .btn-gold:hover{background:var(--ivory);box-shadow:none}
.nav :focus-visible{outline-color:var(--champ)}

/* Accueil : fond ivoire */
.hero{background:var(--ivory);border-bottom:1px solid var(--line)}
.hero-bg{display:none}
.hero-copy .lead{color:var(--muted)}
.hero .btn-ghost{background:transparent}
.arch{border-color:var(--champ)}

/* Ornement : filet doré */
.rule{display:flex;align-items:center;justify-content:center;gap:12px;color:var(--champ)}
.rule::before,.rule::after{content:"";height:1px;width:44px;background:currentColor}
.rule i{width:6px;height:6px;transform:rotate(45deg);background:currentColor;display:block}
.head.center .lead{margin-inline:auto}

/* En-tête des pages intérieures */
.page-head{background:var(--ivory);border-bottom:0;text-align:center;padding-block:clamp(44px,6vw,80px) clamp(28px,3.5vw,44px)}
.page-head .wrap{display:grid;justify-items:center;gap:8px}
.page-head h1{max-width:24ch;margin-inline:auto}
.page-head .lead{margin:8px auto 0;color:var(--muted)}
.crumbs{margin-bottom:10px}

/* Bandeaux de gamme + carte festonnée */
.band{padding-block:clamp(56px,7vw,96px)}
.band-sand{background:var(--sand)} .band-gold{background:var(--antique)} .band-champ{background:var(--champ)}
.scallop{position:relative;background:var(--ivory);margin-block:var(--sh)}
.scallop::before,.scallop::after{content:"";position:absolute;left:0;right:0;height:var(--sh);
  background:radial-gradient(ellipse 50% 100% at 50% 100%,var(--ivory) 98%,transparent 100%) center/var(--sw) var(--sh);background-repeat:round no-repeat}
.scallop::before{top:calc(1px - var(--sh))}
.scallop::after{bottom:calc(1px - var(--sh));transform:scaleY(-1)}
.scallop-in::before,.scallop-in::after{content:"";position:absolute;top:0;bottom:0;width:var(--sh);
  background:radial-gradient(ellipse 100% 50% at 100% 50%,var(--ivory) 98%,transparent 100%) center/var(--sh) var(--sw);background-repeat:no-repeat round}
.scallop-in::before{left:calc(1px - var(--sh))}
.scallop-in::after{right:calc(1px - var(--sh));transform:scaleX(-1)}
.scallop.sm{--sw:26px;--sh:8px}

.offer-card{max-width:1080px;margin-inline:auto}
.offer-card .scallop-in{display:grid;gap:30px;padding:clamp(36px,5vw,64px) clamp(22px,5vw,60px);text-align:center}
.fam{font-family:var(--f-sans);font-weight:300;font-size:clamp(1.9rem,3.6vw,2.7rem);letter-spacing:.01em;color:var(--ink);line-height:1.15;margin:0}
.fam-sub{color:var(--muted);max-width:58ch;margin:-14px auto 0}
.offers{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,3),1fr);text-align:left}
.offers li{padding:6px clamp(18px,2.4vw,32px);display:grid;gap:10px;align-content:start;border-left:1px solid var(--hair);min-width:0}
.offers li:first-child{border-left:0;padding-left:0}
.offers li:last-child{padding-right:0}
.offers .n{font-family:var(--f-serif);font-size:2.3rem;line-height:1;color:var(--antique)}
.offers h3{font-size:1.32rem;font-weight:600}
.offers p{color:#4A4A48;font-size:.98rem}
.offers .note{font-style:italic;color:var(--muted);font-size:.92rem}
.offers .badge-free{font-family:var(--f-sans);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--antique);border:1px solid var(--champ);border-radius:999px;padding:3px 10px;width:fit-content}
.go{font-family:var(--f-sans);font-size:.78rem;font-weight:600;color:var(--antique);text-decoration:none;letter-spacing:.03em}
.go:hover{text-decoration:underline;text-underline-offset:3px}
.offer-cta{font-style:italic;color:#4A4A48;max-width:62ch;margin-inline:auto}
.offer-cta a{color:var(--ink);text-underline-offset:3px}
@media (max-width:820px){
  .offers{grid-template-columns:1fr}
  .offers li{border-left:0;border-top:1px solid var(--hair);padding:22px 0}
  .offers li:first-child{border-top:0;padding-top:0}
}

/* Accueil : les trois gammes */
.fams{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.fam-tile{padding:26px 22px;border-radius:6px;display:grid}
.fam-tile .scallop-in{display:grid;gap:12px;align-content:start;padding:30px 24px;text-align:center;height:100%}
.fam-tile .fam{font-size:1.65rem}
.fam-tile p{color:var(--muted);font-size:.95rem}
.fam-list{list-style:none;padding:0;margin:4px 0 6px;display:grid;gap:0}
.fam-list li{font-family:var(--f-serif);font-size:1.05rem;padding:9px 0;border-top:1px solid var(--hair)}
.fam-list li:last-child{border-bottom:1px solid var(--hair)}
@media (max-width:900px){.fams{grid-template-columns:1fr;max-width:520px;margin-inline:auto}}

/* Bandeau prochain rendez-vous */
.next{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between;padding:22px 26px;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.next .t{display:grid;gap:2px;min-width:0}
.next .t b{font-family:var(--f-serif);font-weight:500;font-size:1.25rem}
.next .t span{color:var(--muted);font-size:.93rem}

/* Valeurs de marque (5) */
.grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden}
@media (max-width:1000px){.grid-5{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.grid-5{grid-template-columns:1fr}}

/* Bandeau d'appel : sable */
.cta-band{background:var(--sand);border-color:var(--sand)}

/* Formulaire : chips de gamme */
.mk{display:flex;flex-wrap:wrap;gap:8px}
.path button b{font-size:1.15rem}
@media (max-width:640px){
  .band .wrap{padding-left:max(28px,env(safe-area-inset-left,0px));padding-right:max(28px,env(safe-area-inset-right,0px))}
  .scallop{--sw:30px;--sh:9px}
  .fam-tile{padding:22px 20px}
}

/* En-tête ivoire, sans lignes de séparation entre les sections */
body::before{background:var(--ivory)}
.nav{background:var(--ivory);border-bottom:0}
.nav .tab{color:var(--muted)}
.nav .tab:hover{color:var(--ink);background:rgba(231,220,192,.45)}
.nav .tab[aria-current="page"]{color:var(--ink)}
.nav .btn-gold{background:var(--ink);color:var(--ivory)}
.nav .btn-gold:hover{background:var(--antique);color:var(--ivory)}
.nav :focus-visible{outline-color:var(--antique)}
.hero{border-bottom:0}
.next{border-top:0;border-bottom:0;background:var(--surface);border-radius:6px}

/* =====================================================================
   Proposition « luxe éditorial » · novembre 2026
   Logo centré, héros en deux volets (ivoire + photo pleine hauteur),
   grands blancs, filets dorés, aucun visuel de remplissage.
   ===================================================================== */
:root{--gx2:max(16px, env(safe-area-inset-left,0px));--gy2:max(16px, env(safe-area-inset-right,0px))}

/* Navigation : logo au centre */
.nav-in{display:grid;grid-template-columns:1fr auto 1fr;gap:16px}
.nav-l,.nav-r{display:flex;align-items:center;gap:4px;min-width:0}
.nav-r{justify-content:flex-end}
.nav .tabs{margin:0}
.nav .logo{justify-self:center}
@media (max-width:960px){
  .nav-in{grid-template-columns:auto 1fr}
  .nav-l{display:none}
  .nav .logo{justify-self:start}
}

/* Héros en deux volets */
.hero2{display:grid;grid-template-columns:1fr 1fr;background:var(--ivory);height:calc(100svh - var(--nav-h));min-height:520px;max-height:860px}
.hero2-copy{display:grid;align-content:center;gap:20px;padding-block:40px;
  padding-left:max(16px, calc((100vw - 1180px)/2 + 16px));padding-right:clamp(24px,5vw,72px);min-width:0}
.hero2-copy h1{font-size:clamp(2.2rem,min(4.2vw,7vh),4rem);line-height:1.08}
.hero2-copy h1 em{font-style:italic;color:var(--antique)}
.hero2-copy .lead{max-width:46ch;color:var(--muted)}
.hero2-copy .kicker{font-family:var(--f-sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--antique);font-weight:600}
.hero2-img{position:relative;overflow:hidden;min-width:0}
.hero2-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero2-img figcaption{position:absolute;left:28px;bottom:24px;z-index:1;color:var(--ivory);display:grid;gap:4px}
.hero2-img figcaption .pinyon{font-size:2.6rem;color:var(--ivory)}
.hero2-img figcaption small{font-family:var(--f-sans);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;opacity:.9}
.hero2-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(53,54,58,.5))}
@media (max-width:860px){
  .hero2{grid-template-columns:1fr;height:auto;max-height:none}
  .hero2-copy{padding:40px var(--gy2) 32px var(--gx2)}
  .hero2-img{height:min(62vh,440px)}
}

/* Phrase de marque */
.statement{text-align:center;padding-block:clamp(64px,9vw,120px) clamp(40px,6vw,72px)}
.statement p{font-family:var(--f-serif);font-style:italic;font-size:clamp(1.45rem,2.6vw,2.15rem);line-height:1.4;max-width:32ch;margin:18px auto 0;color:var(--ink)}

/* Exhale à la une */
.feature{background:var(--sand)}
.feature-in{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,72px);align-items:center;padding-block:clamp(56px,7vw,96px)}
.feature figure{margin:0;aspect-ratio:4/5;max-width:100%;overflow:hidden;border-radius:999px 999px 6px 6px}
.feature figure img{width:100%;height:100%;object-fit:cover;display:block}
.feature .txt{display:grid;gap:18px;min-width:0}
.feature h2{font-size:clamp(2.4rem,4.4vw,3.6rem);line-height:1}
.feature h2 small{display:block;font-style:italic;font-size:.42em;color:var(--antique);margin-top:10px;font-weight:400}
.facts{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:8px 32px;padding:16px 0;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.facts div{display:grid;gap:2px}
.facts dt{font-family:var(--f-sans);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--antique);font-weight:600}
.facts dd{margin:0;font-size:.98rem}
.temps{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.temps li{display:grid;grid-template-columns:96px 1fr;gap:12px;font-size:.97rem;color:#4A4A48}
.temps b{font-family:var(--f-sans);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);font-weight:600;padding-top:3px}
.buy{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.buy .price{font-family:var(--f-serif);font-size:2rem;line-height:1;font-variant-numeric:tabular-nums}
.buy .price small{font-size:.9rem;color:var(--muted)}
@media (max-width:860px){.feature-in{grid-template-columns:1fr}.feature figure{max-width:360px}.facts{grid-template-columns:1fr 1fr}}
@media (max-width:420px){.temps li{grid-template-columns:1fr;gap:2px}}

/* Comparatif des formules Chaoma Private */
.compare-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:6px;background:var(--surface-2)}
.compare{width:100%;min-width:600px;border-collapse:collapse;font-size:.95rem}
.compare th,.compare td{padding:16px 18px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle}
.compare tr:last-child td{border-bottom:0}
.compare thead th{font-family:var(--f-serif);font-weight:600;font-size:1.08rem;background:var(--surface);color:var(--ink)}
.compare thead th small{display:block;font-family:var(--f-sans);font-weight:500;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--antique);margin-top:4px}
.compare th[scope=row]{text-align:left;font-weight:400;color:#4A4A48}
.compare .y{color:var(--antique);font-size:1.1rem}
.compare .n{color:#B9B3A3}
.compare tfoot td,.compare tfoot th{background:var(--surface);font-style:italic}

/* Signature : liste sans visuels */
.sig{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,40px)}
.sig div{display:grid;gap:10px;align-content:start;padding-top:18px;border-top:1px solid var(--champ)}
.sig h3{font-size:1.2rem}
.sig p{color:var(--muted);font-size:.95rem}
@media (max-width:900px){.sig{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.sig{grid-template-columns:1fr}}

/* Infos pratiques Exhale */
.infos{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.infos div{padding:22px 24px 22px 0;border-bottom:1px solid var(--line);display:grid;gap:6px;align-content:start}
.infos dt{font-family:var(--f-sans);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--antique);font-weight:600}
.infos dd{margin:0;color:#4A4A48}
@media (max-width:820px){.infos{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.infos{grid-template-columns:1fr}}
.method.m3{grid-template-columns:repeat(3,1fr)}
@media (max-width:860px){.method.m3{grid-template-columns:1fr}}

/* =====================================================================
   Version maquettes · novembre 2026
   Tout en Lora, boutons pilule Charcoal, fond ivoire, sections crème chaud.
   ===================================================================== */
:root{--nav3:#F4F0E2;--warm:#FAF3E3;--bar:#C9B48C;--gold-dk:#6F5726}
body{font-family:var(--f-serif)}
.btn{border-radius:999px;font-family:var(--f-serif);font-weight:500;letter-spacing:0;font-size:.95rem}

/* Pilule */
.pill{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:var(--ink);color:var(--ivory);border:0;border-radius:999px;
  padding:12px 30px;font-family:var(--f-serif);font-size:1.02rem;line-height:1.3;text-decoration:none;cursor:pointer;transition:background .3s}
.pill:hover{background:#4A4B50;color:var(--ivory)}
.pill svg{flex:none}
.pill.wide{width:100%;padding:16px 32px;font-size:clamp(1rem,1.6vw,1.2rem);text-align:center}
.pill.wide span{flex:1}

/* Navigation */
.nav3{background:var(--nav3);border:0}
.nav3 .nav3-in{display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--nav-h)}
.nav3 .logo{justify-self:auto}
.nav3 .logo img{width:166px;min-width:140px}
.nav3-r{display:flex;align-items:center;gap:clamp(20px,3.6vw,56px)}
.nav3-links{display:flex;gap:clamp(20px,3.6vw,56px)}
.nav3 a.l3{font-family:var(--f-serif);font-size:1.05rem;color:var(--ink);text-decoration:none;white-space:nowrap}
.nav3 a.l3:hover{color:var(--antique)}
.nav3 a.l3[aria-current="page"]{font-weight:600}
.nav3 .tabs-mobile .tab{font-family:var(--f-serif);color:var(--ink);font-size:.95rem}
.nav3 .tabs-mobile .tab[aria-current="page"]{font-weight:600}
@media (max-width:960px){.nav3-links{display:none}.nav3 .logo img{width:140px}}
@media (max-width:420px){.nav3 .pill{padding:10px 16px;font-size:.88rem}}
body::before{background:var(--nav3)}

/* Sur-titres */
.eb3{margin:0;font-family:var(--f-serif);font-weight:600;font-size:.82rem;letter-spacing:.22em;text-transform:uppercase;color:var(--antique)}

/* Bloc Exhale (accueil + agenda) */
.ex3{display:grid;grid-template-columns:minmax(0,450px) minmax(0,1fr);gap:clamp(28px,4vw,48px);align-items:center}
.ex3 .poster{margin:0;border-radius:14px;overflow:hidden;aspect-ratio:425/471;max-width:100%;background:#2b2724}
.ex3 .poster img{width:100%;height:100%;object-fit:cover;display:block}
.ex3 .txt{display:grid;gap:16px;min-width:0}
.ex3 h2,.ex3 .ex-title{margin:0;font-weight:400;font-size:clamp(2.2rem,3.6vw,2.6rem);letter-spacing:.01em;line-height:1.05;color:#1E1E20}
.ex3 .ex-sub{margin:-8px 0 0;font-size:1.05rem}
.ex3 .ex-p{margin:0;font-size:1.02rem;line-height:1.55;color:#2E2E30}
.facts3{display:grid;grid-template-columns:1.6fr .8fr 1.3fr;gap:8px 20px;padding:10px 0;border-top:1px solid var(--champ);border-bottom:1px solid var(--champ)}
.facts3 div{display:grid;gap:2px;min-width:0}
.facts3 dt{font-weight:600;font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;color:var(--antique)}
.facts3 dd{margin:0;font-size:1.02rem}
.facts3 div:nth-child(2) dd{font-style:italic}
.acts3{list-style:none;margin:0;padding:6px 0 0;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:center;text-transform:uppercase;font-size:1rem;line-height:1.35}
.acts3 li.dot{width:10px;height:10px;border-radius:50%;background:var(--antique);flex:none}
.ex3 .act-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px 14px;margin-top:6px}
.ex3 .note{font-size:.85rem;color:#2E2E30}
.ex3 .note.it{font-style:italic}
@media (max-width:860px){.ex3{grid-template-columns:1fr}.ex3 .poster{max-width:420px;width:100%;justify-self:center}}
@media (max-width:560px){.facts3{grid-template-columns:1fr 1fr}.acts3{flex-direction:column}.acts3 li.dot{display:none}.ex3 .act-row{justify-content:flex-start}}

/* Héros accueil : ovale */
.hero3{background:var(--warm)}
.hero3-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28px,5vw,64px);align-items:center;padding-block:clamp(28px,3.5vw,36px)}
.hero3-copy{display:grid;gap:26px;min-width:0;padding-block:24px}
.hero3 h1{margin:0;font-weight:400;font-size:clamp(2rem,3.2vw,2.55rem);line-height:1.4}
.hero3 h1 .g{color:var(--antique)}
.oval{position:relative;aspect-ratio:510/570;max-width:100%;width:min(100%,520px);justify-self:center;border-radius:50%;overflow:hidden}
.oval img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.oval .cap{position:absolute;left:0;right:0;top:18%;text-align:center;color:var(--ivory);display:grid;gap:2px;text-shadow:0 1px 12px rgba(0,0,0,.35)}
.oval .cap .pinyon{font-size:clamp(2.2rem,4vw,3.3rem);color:var(--ivory)}
.oval .cap small{font-size:1.02rem}
@media (max-width:860px){.hero3-in{grid-template-columns:1fr}.oval{width:min(100%,400px)}}

/* Valeurs */
.vals3-head{display:grid;justify-items:center;gap:22px;text-align:center;margin-bottom:40px}
.vals3-head blockquote{margin:0;font-style:italic;font-size:clamp(1.4rem,2.4vw,1.9rem);line-height:1.45;max-width:36ch}
.vals3{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(20px,3vw,44px)}
.vals3 div{border-top:4px solid var(--bar);padding-top:12px;text-align:center;display:grid;gap:8px;align-content:start}
.vals3 h3{margin:0;font-weight:400;font-size:1.6rem}
.vals3 p{margin:0;font-size:1.08rem;line-height:1.45}
@media (max-width:1000px){.vals3{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:620px){.vals3{grid-template-columns:1fr}}

/* En-têtes de page */
.ph3{text-align:center;padding-block:clamp(48px,6vw,72px) clamp(28px,4vw,48px)}
.ph3 .wrap{display:grid;justify-items:center;gap:16px}
.ph3 h1{margin:0;font-weight:700;font-size:clamp(2rem,3.2vw,2.5rem)}
.ph3 h1.light{font-weight:400;font-size:clamp(1.7rem,2.6vw,2.05rem)}
.ph3 p{margin:0;max-width:62ch;font-size:1.05rem}

/* Carte événement (agenda) */
.ev3{background:var(--warm);border-radius:14px;padding:clamp(20px,3vw,40px)}
.ev3 .date3{margin:0;font-weight:600;font-size:clamp(1.2rem,2vw,1.6rem);letter-spacing:.16em;text-transform:uppercase;color:var(--antique)}
.price3{display:flex;align-items:center;gap:20px}
.price3 .lab{font-weight:600;font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;color:var(--antique);line-height:1.4;max-width:6em}
.price3 .num{font-size:clamp(2.2rem,3.4vw,2.8rem);letter-spacing:.12em;color:var(--antique);line-height:1}
.price3 .cur{font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--antique)}
.buy3{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;margin-top:8px}
.buy3 .go3{display:grid;justify-items:center;gap:8px}
.buy3 .go3 .pill{min-width:min(290px,100%)}

/* Infos pratiques */
.infos3{margin:0;border-top:1px solid var(--champ)}
.infos3 div{display:grid;grid-template-columns:260px minmax(0,1fr);gap:8px 24px;padding:16px 0;border-bottom:1px solid var(--champ)}
.infos3 dt{font-weight:600;font-size:.95rem;letter-spacing:.2em;text-transform:uppercase;color:var(--antique)}
.infos3 dd{margin:0;font-size:1.05rem;line-height:1.5}
.infos3 dd.it{font-style:italic}
.infos3 .lnk{background:none;border:0;padding:0;font:inherit;font-style:italic;color:var(--antique);text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-weight:600}
@media (max-width:700px){.infos3 div{grid-template-columns:1fr}}

/* Nos services */
.svc3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.6vw,32px)}
.svc3-card{border-radius:14px;padding:18px 20px 14px;display:flex;flex-direction:column;gap:12px}
.svc3-card .scallop{--sw:30px;--sh:10px;flex:1;margin:10px 0}
.svc3-card .scallop-in{display:grid;align-content:start;gap:12px;padding:20px 22px 26px;text-align:center;height:100%}
.svc3-card h2{margin:0;font-weight:400;font-size:clamp(1.6rem,2.3vw,1.9rem);line-height:1.2}
.svc3-card p{margin:0;font-size:1rem;line-height:1.4}
.svc3-card ul{list-style:none;margin:6px 0 0;padding:0;border-top:1px solid var(--champ)}
.svc3-card li{padding:12px 0;border-bottom:1px solid var(--champ);font-size:1.02rem}
.svc3-card .more{display:flex;align-items:center;justify-content:center;gap:10px;font-weight:600;font-size:.95rem;letter-spacing:.2em;text-transform:uppercase;text-decoration:none}
.svc3-card.c-sand{background:var(--sand)} .svc3-card.c-sand .more{color:var(--antique)}
.svc3-card.c-gold{background:var(--antique)} .svc3-card.c-gold .more{color:var(--ivory)}
.svc3-card.c-champ{background:var(--champ)} .svc3-card.c-champ .more{color:var(--gold-dk)}
.svc3-card .more:hover{text-decoration:underline;text-underline-offset:4px}
@media (max-width:960px){.svc3{grid-template-columns:1fr;max-width:460px;margin-inline:auto}}

/* Contact */
.ct3{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:32px;align-items:start}
.ct3 .panel{background:var(--warm);border:0;border-radius:14px}
.ct3 .side{display:grid;gap:22px;background:var(--warm);border-radius:14px;padding:clamp(24px,3vw,36px)}
.ct3 .side h2{margin:0;font-weight:400;font-size:1.6rem}
.ct3 .row3{display:grid;gap:2px}
.ct3 .row3 b{font-weight:600;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--antique)}
.ct3 .row3 span,.ct3 .row3 a{font-size:1.02rem;color:var(--ink);text-decoration:none;word-break:break-word}
.ct3 .copy{color:var(--antique);border-color:var(--champ);font-family:var(--f-serif)}
.ct3 .field input,.ct3 .field select,.ct3 .field textarea{background:var(--ivory);border-color:var(--champ);font-family:var(--f-serif)}
.ct3 .field label,.ct3 .flabel{font-family:var(--f-serif);font-size:.95rem}
.ct3 .seg button,.ct3 .chip{font-family:var(--f-serif);border-radius:999px;background:var(--ivory);border-color:var(--champ)}
.ct3 .seg button[aria-pressed="true"],.ct3 .chip[aria-pressed="true"]{background:var(--ink);color:var(--ivory);border-color:var(--ink)}
.ct3 h2.f{margin:0;font-weight:400;font-size:1.6rem}
@media (max-width:920px){.ct3{grid-template-columns:1fr}}
.section.tight{padding-block:clamp(20px,3vw,32px) clamp(56px,7vw,88px)}
.modal{border-radius:14px}
.modal-h{background:var(--warm)}
.wrap{padding-left:max(clamp(16px,3.6vw,44px),env(safe-area-inset-left,0px));padding-right:max(clamp(16px,3.6vw,44px),env(safe-area-inset-right,0px))}
.svc3-card .more{font-size:.8rem;letter-spacing:.16em;white-space:nowrap;gap:8px}
.svc3-card .more svg{width:24px}
.nav3 .pill{white-space:nowrap}
@media (max-width:480px){.nav3 .logo img{width:118px;min-width:118px}.nav3 .pill{padding:9px 14px;font-size:.84rem}.nav3 .nav3-in{gap:10px}}
