:root{--red:#df321d;--cream:#fff0d6;--ink:#191613}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #2471ef;outline-offset:5px}.skip-link{position:absolute;top:-100px;left:20px;background:white;padding:15px;z-index:9}.skip-link:focus{top:20px}.demo-bar{background:var(--ink);color:var(--cream);display:flex;justify-content:space-between;padding:10px 4%;font-size:12px;gap:20px}.demo-bar a{text-decoration:underline}header{background:var(--red);display:flex;align-items:center;gap:35px;padding:22px 4%;border-bottom:2px solid var(--ink)}.logo{font:52px/.9 Impact,'Arial Black',sans-serif;letter-spacing:-2px}.logo span{font-family:Arial;font-size:40px;margin-left:9px}nav{display:flex;gap:32px;margin-left:auto;font-weight:bold}.basket{border:2px solid var(--ink);background:var(--ink);color:var(--cream);padding:13px 20px;font-weight:bold}.basket span{display:inline-grid;place-items:center;min-width:25px;background:var(--cream);color:var(--ink);margin-left:12px;border-radius:50%}.hero{position:relative;background:var(--red);padding:30px 4% 55px;display:grid;grid-template-columns:1.18fr 1fr;gap:28px;overflow:hidden}.hero-title{z-index:1}.hero-title>p{font-weight:bold;letter-spacing:1px;margin:0 0 20px;font-size:13px}.hero h1{font:clamp(105px,14.5vw,225px)/.82 Impact,'Arial Black',sans-serif;letter-spacing:-.025em;margin:0}.hero h1 span{color:var(--cream)}.hero-bottom{display:flex;gap:30px;align-items:end;margin-top:35px}.hero-bottom p{font-size:18px;line-height:1.4;max-width:250px}.pill{display:inline-flex;align-items:center;background:var(--cream);font-weight:bold;border:2px solid var(--ink);padding:18px 22px;box-shadow:5px 5px 0 var(--ink);transition:transform .2s,box-shadow .2s}.pill:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--ink)}.hero-photo{position:relative;align-self:stretch;margin-top:25px;min-height:400px;transform:rotate(3deg);border:8px solid var(--cream);box-shadow:10px 10px 0 var(--ink)}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover}.seal{position:absolute;right:-15px;top:-25px;border-radius:50%;width:115px;height:115px;display:grid;place-content:center;text-align:center;line-height:1.3;background:var(--ink);color:var(--cream);font-size:15px;font-weight:bold;transform:rotate(-12deg);border:3px solid var(--cream)}.photo-caption{position:absolute;bottom:0;left:0;right:0;background:var(--cream);padding:12px 15px;font-size:12px;font-weight:bold}.ribbon{background:var(--ink);color:var(--cream);display:flex;justify-content:space-around;gap:20px;align-items:center;padding:20px 3%;font:clamp(22px,3vw,44px)/1 Impact,'Arial Black',sans-serif}.ribbon b{color:var(--red)}.section{padding:85px 5%}h2,h3{font-family:Impact,'Arial Black',sans-serif;font-weight:400;line-height:1;letter-spacing:-.02em}h2 em{font-style:normal;color:var(--red)}.section-head{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:end;gap:25px;margin-bottom:40px}.section-head h2{font-size:clamp(45px,6vw,88px);margin:0}.section-head>p:first-child{font-size:13px;font-weight:bold}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.menu-grid article{border-top:3px solid var(--ink);padding-top:14px}.food-photo{height:340px;position:relative;overflow:hidden;background:var(--red)}.food-photo img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.menu-grid article:hover img{transform:scale(1.035)}.food-photo>span{position:absolute;bottom:15px;left:15px;background:var(--cream);padding:8px 12px;font-weight:bold;font-size:12px}.food-info{display:flex;align-items:center;justify-content:space-between;margin:20px 0 10px}.food-info h3{font-size:40px;margin:0}.food-info>b{font-size:24px}.menu-grid article>p{min-height:78px;margin:0 0 20px}.menu-grid button{display:flex;justify-content:space-between;width:100%;border:2px solid var(--ink);padding:15px;background:transparent;font-weight:bold;transition:background .2s,color .2s}.menu-grid button:hover,.menu-grid button.added{background:var(--ink);color:var(--cream)}.menu-note{font-size:13px;max-width:760px;margin-top:30px}.spirit{display:grid;grid-template-columns:1.1fr 1fr;background:var(--ink);color:var(--cream)}.spirit>img{width:100%;height:100%;min-height:620px;object-fit:cover}.spirit>div{padding:60px 10%}.spirit h2{font-size:clamp(48px,5.5vw,82px);margin:30px 0}.spirit .body{font-size:18px;max-width:440px}.spirit a{display:block;margin-top:30px;text-decoration:underline;text-underline-offset:6px}.story{display:grid;grid-template-columns:.35fr 1fr 1fr;gap:50px;align-items:center}.big-star{font-size:150px;color:var(--red)}.story h2{font-size:65px;margin:20px 0}.story ol{list-style:none;padding:0}.story li{border-top:2px solid;padding:20px 0 15px 42px;position:relative}.story li>span{position:absolute;left:0;font-weight:bold}.story li>b{font-size:22px}.story li p{margin-bottom:0}.contact{background:var(--red);display:grid;grid-template-columns:1.2fr 1fr;gap:8%}.contact h2{font-size:clamp(48px,5.6vw,80px);margin:25px 0}.contact h2 em{color:var(--cream)}.contact p{font-size:17px}.contact a{display:inline-block;margin-top:20px;border-bottom:2px solid;font-weight:bold}.contact-card{border:2px solid var(--ink);background:var(--cream);padding:32px;box-shadow:8px 8px 0 var(--ink)}.contact-card>span{font-size:13px;font-weight:bold}.contact-card h3{font-size:38px;margin:20px 0}.contact fieldset{border:0;padding:0;margin:0}.contact label{display:block;font-weight:bold;margin-bottom:16px}.contact input,.contact textarea{width:100%;background:transparent;color:var(--ink);border:1px solid var(--ink);padding:12px;margin-top:7px}.contact input::placeholder,.contact textarea::placeholder{color:#62574a}.contact button{background:var(--ink);color:var(--cream);border:0;padding:15px 20px;font-weight:bold}#contact-status{font-size:13px}footer{display:flex;align-items:center;gap:35px;padding:40px 5%;border-top:2px solid}footer p{flex:1;font-size:14px}footer a{font-weight:bold}dialog{width:min(620px,94vw);max-height:90vh;background:var(--cream);color:var(--ink);border:3px solid;padding:30px}dialog::backdrop{background:#191613c9}dialog h2{font-size:50px;margin:25px 0}.close{float:right;border:1px solid;background:none;padding:8px 12px}.cart-row{padding:18px 0;border-top:1px solid;display:flex;gap:20px;justify-content:space-between;align-items:center}.cart-row button{background:none;border:1px solid;padding:8px 12px}.total{display:flex;justify-content:space-between;font-size:22px;border-top:3px solid;padding-top:20px}#confirm{width:100%;padding:16px;background:var(--ink);color:var(--cream);border:0;font-weight:bold}#confirm:disabled{background:#756d60;cursor:default}#cart-status{font-size:14px}.reveal{opacity:0;transform:translateY(30px);transition:opacity .65s,transform .65s}.reveal.visible{opacity:1;transform:none}.hero h1{animation:headline .8s both}.hero-photo{animation:photo .9s .15s both}@keyframes headline{from{transform:translateY(35px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes photo{from{transform:translateY(35px) rotate(0);opacity:0}to{transform:translateY(0) rotate(3deg);opacity:1}}@media(max-width:800px){header{flex-wrap:wrap;gap:18px}.logo{font-size:42px}nav{order:3;width:100%;justify-content:space-between;border-top:1px solid;padding-top:15px;font-size:15px}.basket{margin-left:auto;font-size:14px}.demo-bar{font-size:11px;align-items:center}.hero{grid-template-columns:1fr;padding:30px 6% 45px;gap:35px}.hero h1{font-size:25vw}.hero-bottom{margin-top:20px;align-items:center;gap:20px}.hero-bottom p{font-size:16px}.pill{font-size:14px;padding:14px}.hero-photo{min-height:360px;margin:0 8px}.seal{width:90px;height:90px;font-size:12px}.ribbon{font-size:20px;gap:12px}.ribbon span:nth-of-type(3),.ribbon b:last-child{display:none}.section{padding:55px 6%}.section-head{grid-template-columns:1fr;gap:14px}.section-head h2{font-size:52px}.section-head p{margin:0}.menu-grid{grid-template-columns:1fr;gap:40px}.food-photo{height:330px}.menu-grid article>p{min-height:0}.spirit{grid-template-columns:1fr}.spirit>img{min-height:0;height:370px}.spirit>div{padding:40px 7%}.spirit h2{font-size:54px}.story{grid-template-columns:1fr;gap:20px}.big-star{font-size:75px;line-height:1}.story h2{font-size:58px}.contact{grid-template-columns:1fr;gap:35px}.contact h2{font-size:49px}.contact-card{padding:22px}footer{flex-wrap:wrap;gap:22px}footer p{flex-basis:100%;order:3}dialog{padding:22px}.cart-row{font-size:15px;gap:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
.add-status{padding:14px 0;border-top:1px solid;margin:0 0 25px;font-size:15px}.spirit h2 em{color:#ff805e}.menu-grid button{background:var(--ink);color:var(--cream)}.menu-grid button:hover{background:var(--red);color:var(--ink)}
.menu-cart{margin-top:32px;background:var(--ink);color:var(--cream);border:2px solid;padding:17px 24px;font-weight:bold}.menu-cart:hover{background:var(--red);color:var(--ink)}
/* Emblème original : flamme pleine et cœur en réserve, sans pictogramme typographique. */
.logo{display:inline-flex;align-items:center;gap:12px}.logo .braise-mark{width:34px;height:43px;filter:brightness(0)}.seal .braise-mark{width:21px;height:27px;margin:3px auto}.big-star .braise-mark{width:110px;height:140px}.ribbon{display:block;padding:0;overflow:hidden}.ribbon-window{overflow:hidden;padding:23px 0}.ribbon-track{display:flex;width:max-content;animation:braise-ticker 30s linear infinite;will-change:transform}.ribbon-group{display:flex;align-items:center;justify-content:space-around;gap:42px;padding-right:42px;flex-shrink:0;min-width:100vw}.ribbon-group span{display:block!important;white-space:nowrap}.ribbon-group .braise-mark{width:30px;height:38px;flex-shrink:0}.ribbon-controls{border-top:1px solid #fff0d647;padding:8px 5%;display:flex;justify-content:flex-end}.ribbon-controls button{font:13px/1.4 Arial,sans-serif;color:var(--cream);background:transparent;border:1px solid #fff0d6;padding:7px 12px}.ribbon:hover .ribbon-track,.ribbon:focus-within .ribbon-track,.ribbon.is-paused .ribbon-track,.ribbon.offscreen .ribbon-track{animation-play-state:paused}@keyframes braise-ticker{to{transform:translateX(-50%)}}@media(max-width:800px){.logo{gap:7px}.logo .braise-mark{width:26px;height:33px}.ribbon-group{gap:26px;padding-right:26px}.ribbon-group .braise-mark{width:22px;height:28px}.big-star .braise-mark{width:60px;height:76px}.ribbon-controls button{font-size:12px}}@media(prefers-reduced-motion:reduce){.ribbon-track{width:100%;animation:none;will-change:auto}.ribbon-group{min-width:0;width:100%;padding:0 5%;gap:18px;flex-wrap:wrap;justify-content:center}.ribbon-group+ .ribbon-group{display:none}.ribbon-controls{display:none}}
