/* Opérations Digestives — annuaire des médecins chirurgien digestif. Identité « nuit » : bleu nuit, croissant de lune, ambre ; titres serif, texte système (aucune police distante). */
:root,:root:not([data-theme="light"]),:root[data-theme="dark"]{
  --fond:#f6f7fb!important;--encre:#18353A!important;--doux:#53666A!important;--filet:#D8E1DD!important;--surf:#e9edf7!important;
  --accent:#236B68!important;--accent-txt:#236B68!important;--sur-accent:#fff!important;color-scheme:light!important;
  --o-nuit:#14343B;--o-nuit2:#20525A;--o-lune:#F4EDE2;--o-ambre:#D17B49;--o-ciel:#E8F1EF;--o-encre:#18353A;--o-gris:#53666A;--o-ligne:#D8E1DD;--o-bleu:#236B68;
  --o-serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--o-sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
body.od-site{background:#fff!important;color:var(--o-encre)!important;font-family:var(--o-sans)!important;margin:0}
body.od-site main#contenu{display:block}
.od-sr{position:absolute;left:-9999px}
.od-ic{vertical-align:-3px;flex:none}
.od-bande{width:min(1160px,100% - 40px);margin-inline:auto}
.od-site a{color:var(--o-bleu)}
.od-site h1,.od-site h2,.od-site h3{font-family:var(--o-serif);color:var(--o-encre)}

/* ── en-tête ── */
.od-tete{position:sticky;top:0;z-index:50;background:var(--o-nuit);color:#fff;border-bottom:1px solid #ffffff22}
.od-tete .od-bande{display:flex;align-items:center;gap:22px;min-height:64px}
.od-marque{display:flex;align-items:center;gap:10px;color:#fff!important;text-decoration:none;font-family:var(--o-serif);font-size:1.3rem;font-weight:700;letter-spacing:.01em}
.od-marque svg{display:block}
.od-marque b{color:var(--o-ambre);font-weight:700}
.od-nav{display:flex;gap:4px;margin-left:auto;align-items:center}
.od-nav a{color:#dfe6fb!important;text-decoration:none;padding:9px 13px;border-radius:999px;font-size:.95rem}
.od-nav a:hover{background:#ffffff1a;color:#fff!important}
.od-nav .od-btn{background:var(--o-ambre);color:var(--o-nuit)!important;font-weight:700;margin-left:6px}
.od-nav .od-btn:hover{background:#ffc766}
.od-menu-m{display:none;margin-left:auto}
.od-menu-m summary{list-style:none;cursor:pointer;color:#fff;padding:8px 12px;border:1px solid #ffffff44;border-radius:999px;font-size:.95rem}
.od-menu-m summary::-webkit-details-marker{display:none}
.od-menu-m nav{position:absolute;left:0;right:0;top:64px;background:var(--o-nuit2);padding:12px 20px 18px;display:grid;gap:4px}
.od-menu-m a{color:#fff!important;text-decoration:none;padding:12px 6px;border-bottom:1px solid #ffffff1f}
@media(max-width:820px){.od-nav{display:none}.od-menu-m{display:block}}

/* ── boutons ── */
.od-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 22px;border-radius:999px;border:2px solid var(--o-nuit);background:var(--o-nuit);color:#fff!important;font:700 1rem var(--o-sans);text-decoration:none!important;cursor:pointer}
.od-btn:hover{background:var(--o-nuit2);border-color:var(--o-nuit2)}
.od-btn--grand{min-height:54px;padding:0 30px;font-size:1.06rem}
.od-btn--pleine{width:100%}
.od-btn--contour{background:transparent;color:var(--o-nuit)!important}
.od-btn--contour:hover{background:var(--o-ciel);border-color:var(--o-nuit)}
.od-btn--citron,.od-btn--ambre{background:var(--o-ambre);border-color:var(--o-ambre);color:var(--o-nuit)!important}
.od-btn--citron:hover{background:#ffc766;border-color:#ffc766}

/* ── fil d'Ariane + en-têtes de page ── */
.od-fil{background:var(--o-ciel);border-bottom:1px solid var(--o-ligne);font-size:.875rem}
.od-fil ol{list-style:none;margin:0;padding:12px 0;display:flex;flex-wrap:wrap;gap:6px}
.od-fil li+li::before{content:"›";margin-right:6px;color:var(--o-gris)}
.od-fil a{text-decoration:none}.od-fil a:hover{text-decoration:underline}
.od-fil li[aria-current]{color:var(--o-gris)}
.od-entete{position:relative;overflow:hidden;background:radial-gradient(circle at 88% -20%,#2c4796 0,transparent 55%),var(--o-nuit);color:#fff;padding-block:clamp(34px,4vw,64px) clamp(30px,3vw,48px)}
.od-entete::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;box-shadow:inset -38px 12px 0 0 #F4EDE2;opacity:.16;pointer-events:none}
.od-entete h1{font-weight:700;font-size:clamp(2rem,1.3rem + 2.8vw,3.5rem);line-height:1.06;color:#fff!important;margin:0 0 14px;max-width:24ch;text-wrap:balance}
.od-chapo{font-size:clamp(1rem,.95rem + .25vw,1.18rem);color:#52636d;max-width:64ch;margin:0 0 20px;line-height:1.6}
.od-hero-sur{margin:0 0 14px}
.od-hero-sur span{display:inline-block;padding:5px 12px;border:1px solid #ffffff44;border-radius:999px;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--o-ambre)}
.od-surligne{color:var(--o-ambre)}
.od-entete a{color:#fff}
.od-recherche{display:flex;gap:10px;flex-wrap:wrap;max-width:700px;margin:6px 0 0}
.od-recherche input{flex:1 1 280px;min-height:56px;padding:0 22px;border:2px solid transparent;border-radius:999px;background:#fff;font:inherit;font-size:1.05rem;color:var(--o-encre)}
.od-recherche .od-btn{min-height:56px;background:var(--o-ambre);border-color:var(--o-ambre);color:var(--o-nuit)!important}
.od-nom{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px;font-size:.95rem;color:#c3cdea}
.od-nom input{min-height:44px;padding:0 16px;border:1.5px solid #ffffff55;border-radius:999px;background:#ffffff14;font:inherit;color:#fff}
.od-nom .od-btn--contour{color:#fff!important;border-color:#ffffff66;min-height:44px}
.od-nom .od-btn--contour:hover{background:#ffffff22}
input:focus,select:focus,textarea:focus{outline:3px solid #D17B4988;outline-offset:1px}

/* ── sections ── */
.od-section{padding-block:clamp(32px,4vw,60px)}
.od-section-blanc{background:#fff}
.od-section-lavande{background:var(--o-ciel)}
.od-titre-section h2{font-size:clamp(1.4rem,1.1rem + 1vw,2rem);margin:0 0 6px;text-transform:none}
.od-titre-section{margin-bottom:6px}
.od-titre-section h2::first-letter{text-transform:uppercase}
.od-sous{color:var(--o-gris);margin:0 0 18px}
.od-cols{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(24px,3vw,48px);align-items:start}
@media(max-width:900px){.od-cols{grid-template-columns:1fr}}
.od-carte{background:#fff;border:1px solid var(--o-ligne);border-radius:18px;padding:22px;margin-bottom:18px;box-shadow:0 8px 26px #14343B0d}
.od-carte h2{font-size:1.2rem;margin:0 0 8px}
.od-carte p{margin:0 0 14px;color:var(--o-gris);line-height:1.55}
.od-lien{font-weight:700;text-decoration:none}.od-lien:hover{text-decoration:underline}
.od-source,.od-aide{font-size:.85rem;color:var(--o-gris);line-height:1.5}
.od-avert{background:var(--o-lune);border-left:4px solid var(--o-ambre);padding:14px 16px;border-radius:8px;font-size:.92rem;color:#4a3d1a;line-height:1.55}

/* ── listes ── */
.od-liste{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:10px}
.od-liste.od-deux{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.od-ligne{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--o-ligne);border-radius:14px;padding:12px 14px}
.od-ligne:hover{border-color:var(--o-bleu);box-shadow:0 6px 18px #236B681a}
.od-ligne>div{flex:1;min-width:0}
.od-ligne a{text-decoration:none;color:var(--o-encre)}
.od-ligne b{display:block;font-size:1.02rem}
.od-ligne small{color:var(--o-gris);font-size:.85rem}
.od-init{width:44px;height:44px;border-radius:50%;background:var(--o-nuit);color:var(--o-ambre);display:grid;place-items:center;font:700 .95rem var(--o-serif);flex:none}
.od-fl{color:var(--o-bleu)}
.od-puces{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.od-puces a{display:inline-flex;gap:8px;align-items:baseline;padding:8px 14px;border-radius:999px;border:1px solid var(--o-ligne);background:#fff;text-decoration:none;color:var(--o-encre)}
.od-puces a:hover{border-color:var(--o-bleu);background:var(--o-ciel)}
.od-puces small{color:var(--o-gris);font-weight:700}
.od-grille-dep{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}
.od-grille-dep a{display:block;padding:12px 14px;border-radius:12px;border:1px solid var(--o-ligne);background:#fff;text-decoration:none;color:var(--o-encre)}
.od-grille-dep a:hover{border-color:var(--o-bleu)}
.od-grille-dep small{display:block;color:var(--o-gris)}
.od-pagination{display:flex;gap:14px;align-items:center;margin:8px 0 20px}
.od-pagination a{font-weight:700;text-decoration:none}
.od-dossiers{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.od-dossiers a{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:14px;background:#fff;border:1px solid var(--o-ligne);text-decoration:none;color:var(--o-encre);font-weight:600;line-height:1.35}
.od-dossiers a:hover{border-color:var(--o-bleu)}
.od-dossiers svg{color:var(--o-bleu);margin-top:2px}

/* ── fiche, lecture ── */
.od-badges{margin:0 0 12px}.od-statut{display:inline-block;padding:5px 12px;border-radius:999px;background:var(--o-ambre);color:var(--o-nuit);font-weight:700;font-size:.85rem}
.od-h2{font-size:1.4rem;margin:26px 0 10px}
.od-def{display:grid;grid-template-columns:170px 1fr;gap:10px 18px;margin:0 0 18px}
.od-def dt{color:var(--o-gris);font-weight:700}.od-def dd{margin:0}
@media(max-width:560px){.od-def{grid-template-columns:1fr;gap:2px}.od-def dd{margin-bottom:10px}}
.od-lecture{max-width:820px}.od-lecture p,.od-lecture li{line-height:1.7;font-size:1.05rem}
.od-verdict{background:var(--o-ciel);border-left:4px solid var(--o-bleu);padding:16px 18px;border-radius:10px;margin-bottom:22px;line-height:1.6}
.od-verdict b{display:block;margin-bottom:4px;font-family:var(--o-serif)}
.od-coches{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:10px}
.od-coches li{padding-left:28px;position:relative}
.od-coches li::before{content:"";position:absolute;left:0;top:.55em;width:16px;height:9px;border-left:3px solid var(--o-bleu);border-bottom:3px solid var(--o-bleu);transform:rotate(-45deg) scale(.85)}
.od-actions{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}
.od-ok{background:var(--o-lune);border-radius:12px;padding:16px;border:1px solid #ecd9a5}

/* ── formulaire ── */
.od-form{display:grid;gap:16px}
.od-champ label{display:block;font-weight:700;margin-bottom:6px;font-size:.95rem}
.od-champ input[type=text],.od-champ input[type=tel],.od-champ input[type=email],.od-champ select,.od-champ textarea{width:100%;box-sizing:border-box;min-height:50px;padding:10px 14px;border:1.5px solid #aeb7d0;border-radius:12px;background:#fff;font:inherit;color:var(--o-encre)}
.od-champ textarea{min-height:110px}
.od-duo{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:640px){.od-duo{grid-template-columns:1fr}}
.od-radios{display:grid;gap:8px}.od-radios label{display:flex;gap:10px;align-items:center;font-weight:500;padding:12px 14px;border:1.5px solid var(--o-ligne);border-radius:12px;cursor:pointer}
.od-coche{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important}
.od-alerte{background:#fde8e4;border:1px solid #e8a396;color:#7a1f10;padding:12px 14px;border-radius:10px}
.od-large{max-width:none}

/* ── bandeau d'appel ── */
.od-cta{background:var(--o-nuit);color:#fff;padding-block:34px}
.od-cta .od-bande{display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.od-cta h2{color:#fff!important;margin:0 0 6px}.od-cta p{margin:0;color:#c9d3f0}

/* ── accueil ── */
.od-hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 80% 10%,#2f4aa0 0,transparent 50%),radial-gradient(circle at 10% 100%,#20525A 0,transparent 55%),var(--o-nuit);padding-block:clamp(44px,6vw,96px)}
.od-hero .od-bande{position:relative;z-index:1}
.od-hero h1{color:#fff!important;font-size:clamp(2.2rem,1.4rem + 3.6vw,4.2rem);line-height:1.04;margin:0 0 18px;max-width:18ch;text-wrap:balance}
.od-hero .od-chapo{font-size:clamp(1.05rem,1rem + .4vw,1.3rem);max-width:58ch;color:#d4ddf6}
.od-lune{position:absolute;right:max(24px,6vw);top:36px;width:min(260px,34vw);height:auto;opacity:.95;z-index:0}
@media(max-width:700px){.od-lune{opacity:.35;top:16px}}
.od-onde{position:absolute;left:0;right:0;bottom:0;height:70px;opacity:.28;z-index:0}
.od-chiffres{list-style:none;margin:30px 0 0;padding:0;display:flex;gap:14px 34px;flex-wrap:wrap}
.od-chiffres li b{display:block;font:700 clamp(1.6rem,1.2rem + 1.6vw,2.4rem) var(--o-serif);color:var(--o-ambre)}
.od-chiffres li span{color:#c9d3f0;font-size:.92rem}
.od-cartes{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.od-cartes a{display:block;text-decoration:none;color:var(--o-encre);background:#fff;border:1px solid var(--o-ligne);border-radius:18px;padding:22px;height:100%;box-sizing:border-box}
.od-cartes a:hover{border-color:var(--o-bleu);box-shadow:0 10px 28px #236B681f}
.od-cartes b{display:block;font:700 1.2rem var(--o-serif);margin-bottom:8px}
.od-cartes span{color:var(--o-gris);line-height:1.55;display:block}
.od-cartes i{display:inline-block;margin-bottom:12px;color:var(--o-ambre);background:var(--o-nuit);width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-style:normal}

/* ── pied de page ── */
.od-pied{background:#0b1430;color:#c3cdea;padding-block:44px 24px;margin-top:0}
.od-pied .od-bande{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}
@media(max-width:820px){.od-pied .od-bande{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.od-pied .od-bande{grid-template-columns:1fr}}
.od-pied h2{font:700 .85rem var(--o-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--o-ambre)!important;margin:0 0 12px}
.od-pied ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.od-pied a{color:#dfe6fb;text-decoration:none}.od-pied a:hover{text-decoration:underline}
.od-pied .od-marque{margin-bottom:10px}
.od-pied p{margin:0 0 8px;line-height:1.55;font-size:.92rem}
.od-bas{width:min(1160px,100% - 40px);margin:30px auto 0;padding-top:18px;border-top:1px solid #ffffff22;font-size:.82rem;color:#97a4cc;display:block!important}
.od-credit{font-size:.82rem}

/* ── articles existants : lisibilité sous le nouvel habillage ── */
body.od-site .sb-nav-mobile{display:none!important}
.od-prose{max-width:860px;line-height:1.7}
.od-h1{font:700 clamp(2rem,1.3rem + 2.4vw,3.3rem)/1.12 var(--o-serif);color:var(--o-encre);margin:0 0 18px;text-wrap:balance}
.od-article-date{color:var(--o-gris);font-size:.9rem;margin:0 0 22px}
.od-article-body{font-size:1.05rem;line-height:1.78;overflow-wrap:anywhere}
.od-article-body>*{max-width:100%}
.od-article-body h2,.od-article-body h3{line-height:1.25;margin:1.8em 0 .55em}
.od-article-body p,.od-article-body ul,.od-article-body ol{margin:0 0 1.1em}
.od-article-body img,.od-article-image img{max-width:100%;height:auto;border-radius:12px}
.od-article-image{margin:0 0 28px}.od-article-image img{display:block;width:100%}
.od-article-body table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}
.od-article-body th,.od-article-body td{padding:9px 12px;border:1px solid var(--o-ligne);text-align:left}
.od-article-nav{margin-top:36px;padding-top:18px;border-top:1px solid var(--o-ligne)}
.od-articles-liste{list-style:none;margin:24px 0;padding:0;display:grid;gap:18px}
.od-articles-liste>li{padding:22px;border:1px solid var(--o-ligne);border-radius:16px;background:#fff}
.od-articles-liste h2{font-size:1.4rem;line-height:1.25;margin:0 0 8px}
.od-articles-liste h2 a{color:var(--o-encre);text-decoration:none}.od-articles-liste h2 a:hover{text-decoration:underline}
.od-pagination{margin:24px 0}
body.od-site .od-page-contenu{font-size:1rem;line-height:1.7}
body.od-site .od-page-contenu h2{margin-top:1.8em}
body.od-site .od-page-contenu a{overflow-wrap:anywhere}
