/* effea-minceur.com : l'assiette équilibrée (vert menthe, mandarine, crème) */
:root{--creme:#fff8ef;--menthe:#2fa37a;--menthe-f:#1f7a5a;--mandarine:#f28c28;--encre:#22302b;--gris:#64706b;--blanc:#ffffff;--trait:#efe3d2}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--creme);color:var(--encre);font:400 1.05rem/1.72 "Hanken Grotesk",system-ui,sans-serif}
a{color:var(--menthe-f)}
img{max-width:100%;height:auto;display:block}
.aller-assiette{position:absolute;left:-999px}.aller-assiette:focus{left:1rem;top:1rem;background:var(--blanc);padding:.5rem 1rem;z-index:9}
h1,h2,h3,h4{font-family:Urbanist,system-ui,sans-serif;font-weight:800;line-height:1.15;color:var(--encre)}

/* nappe */
.nappe{background:var(--blanc);border-bottom:4px dotted var(--trait)}
.nappe__in{max-width:1180px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem 2rem;padding:1rem clamp(1rem,4vw,2rem)}
.couvert{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--encre);font:800 1.4rem/1 Urbanist,sans-serif}
.couvert b{color:var(--menthe);margin-left:.15rem}
.couvert__assiette{width:36px;height:36px;border-radius:50%;background:conic-gradient(var(--menthe) 0 45%,var(--mandarine) 45% 72%,#e8c547 72%);box-shadow:inset 0 0 0 7px var(--blanc),0 0 0 2px var(--trait)}
.portions-nav{display:flex;flex-wrap:wrap;gap:.3rem}
.portions-nav a{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;border-radius:999px;color:var(--encre);text-decoration:none;font-weight:600;font-size:.88rem}
.portions-nav i{width:9px;height:9px;border-radius:50%;background:var(--t)}
.portions-nav a:hover,.portions-nav a[aria-current]{background:var(--creme);box-shadow:inset 0 0 0 2px var(--t)}

main{max-width:1180px;margin:0 auto;padding:0 clamp(1rem,4vw,2rem) 3rem}

/* menu du jour */
.menu-du-jour{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2.5rem;align-items:center;margin:3rem 0 1rem}
.menu-du-jour>*{min-width:0}
.menu-du-jour h1{margin:0;font-size:clamp(2.1rem,4.8vw,3.2rem)}
.menu-du-jour__txt>p{color:var(--gris);font-size:1.1rem}
.legende-assiette{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.3rem 1rem}
.legende-assiette a{display:flex;align-items:center;gap:.5rem;padding:.3rem 0;color:var(--encre);text-decoration:none;font-weight:600;border-bottom:1px dashed var(--trait)}
.legende-assiette i{width:12px;height:12px;border-radius:50%;background:var(--t);flex:none}
.legende-assiette span{margin-left:auto;color:var(--gris);font-weight:400;font-size:.85rem}
.assiette{position:relative;width:min(100%,420px);aspect-ratio:1;margin:0 auto;border-radius:50%;box-shadow:0 0 0 14px var(--blanc),0 0 0 16px var(--trait),0 20px 40px rgba(34,48,43,.12)}
.assiette__centre{position:absolute;inset:22%;border-radius:50%;overflow:hidden;box-shadow:0 0 0 8px var(--blanc)}
.assiette__centre img{width:100%;height:100%;object-fit:cover}

/* plats */
.service__t{margin:3rem 0 1.3rem;font-size:1.7rem}
.plats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:1.4rem}
.plats>li{min-width:0}
.plat{display:flex;flex-direction:column;height:100%;background:var(--blanc);border-radius:22px;overflow:hidden;text-decoration:none;color:var(--encre);box-shadow:0 2px 0 var(--trait)}
.plat__img img{width:100%;aspect-ratio:16/10;object-fit:cover}
.plat__r{display:flex;align-items:center;gap:.45rem;padding:.9rem 1.2rem 0;font-size:.76rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--gris)}
.plat__r i{width:10px;height:10px;border-radius:50%;background:var(--t)}
.plat__t{padding:.35rem 1.2rem .3rem;font:800 1.15rem/1.25 Urbanist,sans-serif;overflow-wrap:anywhere}
.plat__d{padding:0 1.2rem 1.2rem;color:var(--gris);font-size:.92rem;line-height:1.5}
.plat:hover{box-shadow:0 0 0 2px var(--t)}

/* rubrique */
.portion-titre{display:flex;gap:1.3rem;align-items:center;margin:2.8rem 0 1rem}
.portion-titre>span{flex:none;width:84px;height:84px;border-radius:50%;background:conic-gradient(var(--t) 0 30%,var(--trait) 30%);box-shadow:inset 0 0 0 10px var(--blanc),0 0 0 2px var(--trait)}
.portion-titre h1{margin:0;font-size:clamp(2rem,4.4vw,2.8rem)}
.portion-titre p{margin:.4rem 0 0;color:var(--gris)}

/* article */
.recette{max-width:880px;margin:2.5rem auto 0;background:var(--blanc);border-radius:24px;padding:clamp(1.2rem,4vw,2.8rem)}
.recette__tete{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:1.4rem;align-items:start;margin-bottom:1.6rem}
.recette__tete h1{margin:0;font-size:clamp(1.8rem,4.2vw,2.5rem)}
.etiquette-nutri{width:100%;border-collapse:collapse;border:3px solid var(--encre);font-size:.86rem}
.etiquette-nutri caption{text-align:left;font:800 1rem/1.3 Urbanist,sans-serif;padding:.4rem .6rem;background:var(--encre);color:#fff}
.etiquette-nutri th,.etiquette-nutri td{padding:.35rem .6rem;border-top:1px solid var(--encre);text-align:left}
.etiquette-nutri th{font-weight:600}
.etiquette-nutri td{text-align:right}
.recette__img{margin:0 0 1.8rem}
.recette__img img{width:100%;border-radius:16px}
.recette__texte{overflow-wrap:anywhere}
.recette__texte h2{font-size:1.5rem;margin:2.4rem 0 .8rem;display:flex;gap:.6rem;align-items:center}
.recette__texte h2::before{content:"";flex:none;width:14px;height:14px;border-radius:50%;background:var(--t,var(--menthe))}
.recette__texte h3{font-size:1.18rem;margin:1.8rem 0 .6rem;color:var(--menthe-f)}
.recette__texte p{margin:0 0 1.1rem}
.recette__texte ul,.recette__texte ol{padding-left:1.4rem;margin:0 0 1.2rem}
.recette__texte li{margin:.35rem 0}
.recette__texte li::marker{color:var(--mandarine)}
.recette__texte blockquote{margin:1.5rem 0;padding:1rem 1.3rem;background:var(--creme);border-radius:14px}
.recette__texte table{width:100%;border-collapse:collapse;margin:1.4rem 0;font-size:.95rem;display:block;overflow-x:auto}
.recette__texte th,.recette__texte td{border:1px solid var(--trait);padding:.55rem .7rem;text-align:left;vertical-align:top}
.recette__texte th{background:var(--menthe-f);color:#fff}
.recette__texte figure{margin:1.5rem 0}
.recette__texte details{margin:0 0 1.4rem;padding:.8rem 1rem;background:var(--creme);border-radius:12px}
.recette__texte summary{cursor:pointer;font-weight:600}
.recette__texte input,.recette__texte select,.recette__texte button{font:inherit;max-width:100%}

/* desserte : pied */
.desserte{margin-top:3rem;background:var(--menthe-f);color:#e6f4ee}
.desserte__in{max-width:1180px;margin:0 auto;padding:2.2rem clamp(1rem,4vw,2rem);display:grid;grid-template-columns:280px minmax(0,1fr);gap:1.6rem 3rem;align-items:start}
.desserte__etiquette{background:var(--blanc);color:var(--encre);border:3px solid var(--encre);padding:.2rem 0 0}
.desserte__titre{margin:0;padding:.3rem .7rem;font:800 1.15rem/1.2 Urbanist,sans-serif;border-bottom:6px solid var(--encre)}
.desserte__etiquette table{width:100%;border-collapse:collapse;font-size:.88rem}
.desserte__etiquette th,.desserte__etiquette td{padding:.3rem .7rem;border-bottom:1px solid var(--encre);text-align:left;font-weight:400}
.desserte__etiquette td{text-align:right;font-weight:600}
.desserte__etiquette a{color:var(--encre)}
.desserte__info p{margin:0 0 1rem}
.desserte__info nav{display:flex;flex-wrap:wrap;gap:.3rem 1.2rem}
.desserte__info a{color:#fff}
.desserte__an{margin-top:1.2rem!important;font-size:.85rem;opacity:.8}

@media (max-width:820px){
  .menu-du-jour,.desserte__in{grid-template-columns:minmax(0,1fr)}
  .recette__tete{grid-template-columns:minmax(0,1fr)}
}
