/* An editorial composition, with a dedicated touch experience. */
:root{--ease-out:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:110px}body{overflow-x:clip}main{overflow:clip}button,a,summary{touch-action:manipulation}button:disabled{cursor:default}
.eyebrow{font-size:12px!important}.button,.header-visit,.small-link{font-size:14px}.desktop-nav a{font-size:13px}.brand-type small{font-size:11px}.hero-values p{font-size:14px}.hero-values small{font-size:12px}.hero-scroll{font-size:12px}.hero h1>span{display:block;color:var(--paper)}.hero h1>.title-wine{color:#c64e64}.hero h1{line-height:1.02;letter-spacing:-.055em;margin:22px 0}.hero-content{padding-top:170px}.hero-intro{font-size:22px}.hero-values{margin:23px 0}.title-line{animation:title-unfold 1.1s var(--ease-out) both}.title-line:nth-child(2){animation-delay:.14s}.title-line:nth-child(3){animation-delay:.25s}
@keyframes title-unfold{from{clip-path:inset(0 0 100%);transform:translateY(25px)}to{clip-path:inset(0);transform:none}}
.button{position:relative;overflow:hidden}.button>span{transition:transform .35s var(--ease-out)}.button:hover>span{transform:translateX(5px)}
.selection{padding-top:35px;padding-bottom:100px}.meat-description{font-size:14px}.meat-body{padding-left:12px;padding-right:12px;min-height:225px}.discover{font-size:12px;min-height:32px}.meat-name{font-size:27px}.meat-card-dark .meat-name{font-size:24px}.store-content{padding-bottom:80px}.store-content .button{font-size:14px}.store-values>span{font-size:13px}.store-credit{font-size:12px;left:auto;right:270px;max-width:340px}.store-corner>span{font-size:10px}.prep-nav button{width:48px;height:48px}.prep-stage .prep-note{font-size:12px}.swipe-hint{display:none}.commitments-items details>p{font-size:16px}.commitments-items summary{font-size:15px;padding-top:5px}.commitment-icon{width:55px;height:55px}.craft-copy>p:not(.eyebrow){font-size:16px}.motion-enhanced .quote-word{color:#b1a596}.motion-enhanced .quote-word.ink-lit{color:#fff7ea}
.table-section{grid-template-columns:1.05fr 1fr;gap:28px 7%;padding:95px 7%;align-items:start}.table-section>div:first-child{grid-column:2;grid-row:1}.table-section h2{font-size:clamp(2.7rem,4.3vw,4.8rem)}.occasion-visual{grid-column:1;grid-row:1/4;align-self:stretch;min-height:540px;background-image:url('assets/products.jpg');background-size:auto 200%;background-position:82% bottom;position:relative;border-radius:240px 240px 12px 12px;overflow:hidden;isolation:isolate}.occasion-visual.food-chicken{background-position:18% bottom}.occasion-visual.food-beef{background-position:18% top}.occasion-visual:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#160c08d9);z-index:-1}.occasion-caption{position:absolute;left:8%;right:8%;bottom:36px;font-family:var(--hand);font-size:clamp(2rem,3vw,3rem);line-height:1.15;color:var(--paper);text-align:center;transform:rotate(-5deg)}.occasion-choice{grid-column:2;grid-row:2;align-self:start}.occasion-choice>button{font-size:24px;padding:20px 14px;min-height:145px}.occasion-choice>button span{font-size:14px;min-height:45px}.occasion-choice i{margin-top:8px}.occasion-answer{grid-column:2;grid-row:3;display:block}.occasion-answer p{max-width:none;font-size:16px}.occasion-answer strong{font-size:13px}.occasion-answer .small-link{font-size:14px;margin-top:22px}.visit-info p{font-size:16px}.visit-info .button{font-size:14px}.footer-main nav{font-size:14px}.footer-main nav a{padding:10px 0}.footer-bottom button{min-height:44px}.dialog-close{width:46px;height:46px}.dialog-copy>p,.dialog-copy ul,.dialog-tip p,.legal-dialog p{font-size:16px}.dialog-copy small{font-size:12px}.dialog-tip strong{font-size:14px}.dialog-copy .button{font-size:14px}.dialog-copy{padding:50px 30px 35px}.dialog-visual{min-height:650px}.product-dialog[open]{animation:dialog-arrive .45s var(--ease-out)}
@keyframes dialog-arrive{from{opacity:0;transform:translateY(35px) scale(.97)}to{opacity:1;transform:none}}
.mobile-dock{display:none}
@media(min-width:901px) and (max-width:1100px){.desktop-nav{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;width:46px;height:46px;padding:10px}.menu-toggle span{width:26px;height:1px;background:var(--paper)}.mobile-menu{display:flex;visibility:hidden;opacity:0;position:fixed;inset:0;background:var(--ink);z-index:35;flex-direction:column;justify-content:center;padding:100px 10% 30px;gap:24px}.mobile-menu.open{visibility:visible;opacity:1}.mobile-menu a{font-family:var(--serif);font-size:33px}.header-visit{margin-left:auto}}
@media(max-width:1100px){.menu-toggle{width:46px;height:46px}.site-header.menu-open{position:fixed;background:var(--ink)}.mobile-menu{overflow:auto;padding-top:120px;padding-bottom:max(40px,env(safe-area-inset-bottom));height:100dvh;gap:8px}.mobile-menu a{padding:10px 0;transform:translateY(16px);opacity:0;transition:opacity .35s,transform .5s var(--ease-out)}.mobile-menu.open a{opacity:1;transform:none}.mobile-menu.open a:nth-child(2){transition-delay:40ms}.mobile-menu.open a:nth-child(3){transition-delay:80ms}.mobile-menu.open a:nth-child(4){transition-delay:120ms}.mobile-menu.open a:nth-child(5){transition-delay:160ms}.mobile-menu.open a:nth-child(6){transition-delay:200ms}.selection{padding-bottom:75px}.meat-description{font-size:13px}.table-section{gap:25px 5%}.occasion-choice>button{font-size:21px;padding:18px 10px}.occasion-choice>button span{font-size:13px}.occasion-visual{min-height:570px}.footer-main nav{font-size:12px}.store-credit{right:220px;max-width:260px}}
@media(max-width:900px){.table-section{grid-template-columns:.9fr 1.1fr;padding:70px 6%}.table-section h2{font-size:40px}.table-section h2 br{display:block}.occasion-choice{grid-template-columns:1fr}.occasion-choice>button{min-height:0;padding:13px 18px}.occasion-choice>button+button{border-left:0;border-top:1px solid #cbbca7}.occasion-choice>button span{min-height:0;margin-top:3px}.occasion-choice i{position:absolute;right:14px;top:15px}.occasion-visual{min-height:650px}.store-credit{left:auto;right:20px;bottom:170px;max-width:240px}.hero-values small{font-size:12px}.meat-body{min-height:225px}}
@media(max-width:600px){
 html{scroll-padding-top:94px}.site-header,.site-header.fixed{height:80px;padding:13px 6%;gap:10px}.site-header .emblem{width:43px;height:43px}.site-header .brand-type{font-size:13px}.site-header .brand-type small{font-size:10px}.site-header.fixed{background:#100f0df5}.hero{height:auto;min-height:0;max-height:none;padding-top:290px}.hero-photo{inset:0 0 auto;height:470px}.hero-photo img{object-position:63% center;opacity:1;transform:translateY(var(--hero-mobile-y,0px)) scale(1.07)}.hero-shade{background:linear-gradient(180deg,#100f0d83 0%,#100f0d00 20%,#100f0d20 33%,#100f0df0 49%,#100f0d 67%)}.hero-content{margin:0;max-width:none;width:auto;padding:0 7% 102px;transform:none}.hero-content .eyebrow{font-size:12px!important;letter-spacing:.12em}.hero h1{font-size:clamp(3.45rem,14.4vw,5.2rem);line-height:1;letter-spacing:-.05em;margin:22px 0 23px}.hero h1>.title-wine{color:#efb5b7}.hero-intro{font-size:20px;line-height:1.5}.hero-values{gap:20px;margin:25px 0}.hero-values p{font-size:12px}.hero-values small{font-size:11px;max-width:110px}.value-icon{width:35px;height:35px}.hero-content>.button{font-size:14px;width:100%;max-width:360px;padding:17px 20px}.halal-seal{top:151px;bottom:auto;right:7%;width:91px;height:91px;background:#100f0d55;gap:3px}.halal-seal>span{font-size:8px;letter-spacing:0}.halal-seal strong{font-size:20px}.halal-seal i{font-size:19px}.hero-scroll{bottom:49px;left:7%;font-size:12px}.hero-scroll>span{width:15px;height:25px}.hero-scroll>span:after{left:5px;top:4px}.hero-wine-sweep{height:60px}.wave-hero{height:26px}.selection{padding:25px 6% 65px;gap:32px}.selection-intro{padding-top:15px}.selection-intro h2{font-size:clamp(2.3rem,10.6vw,3rem);line-height:1.08}.selection-intro .eyebrow{margin-bottom:18px}.selection-intro .small-link{font-size:14px}.meat-collection{gap:22px 12px}.meat-photo{height:clamp(165px,49vw,225px)}.meat-body{padding:20px 9px 25px;min-height:218px}.meat-name{font-size:25px}.meat-card-dark .meat-name{font-size:23px}.meat-description{font-size:13px}.meat-description br{display:none}.discover{font-size:12px}.meat-card:nth-child(even){margin-top:22px}.store-content{padding:55px 7% 36px}.store-content h2{font-size:clamp(2.4rem,11vw,3.2rem);line-height:1.06}.store-values>span{font-size:13px}.store-photo{margin:0 5%;width:90%;border-radius:80px 5px 5px 5px;overflow:hidden;aspect-ratio:1.42}.store-photo img{object-fit:cover;object-position:52% center}.store-credit{padding:15px 7% 25px;font-size:12px;max-width:none;background:transparent;color:#e0b8be}.preparations{padding:0}.prep-stage{padding:55px 6% 34px}.prep-intro h2{font-size:clamp(2.4rem,11vw,3.1rem)}.prep-stage .prep-note{font-size:12px;color:#bdb29f}.prep-gallery{scroll-padding:0 10vw}.prep-track{height:390px;gap:22px}.prep-card{width:73vw;scroll-snap-align:start;transform:translateY(var(--prep-y,0px));border-radius:100px 100px 10px 10px}.prep-card:nth-child(even){margin-top:0}.prep-card:hover,.prep-card:focus-visible{transform:translateY(-4px)}.prep-visual,.prep-copy{transform:none}.prep-visual{inset:-3% -12% 0}.prep-copy{left:24px;right:24px}.prep-title{font-size:32px}.prep-desc{font-size:15px}.prep-arrow{width:40px;height:40px}.prep-counter{font-size:13px}.swipe-hint{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#d1c2a8;margin:0 0 15px}.swipe-hint span{font-size:25px}.commitments{padding:55px 6%;border-radius:0 45px 0 0}.commitments-title h2{font-size:38px}.commitments-items{display:block;padding:0}.commitments-items details+details{border-left:0;border-top:1px solid #cec4b4}.commitments-items summary{flex-direction:row;text-align:left;gap:18px;padding:18px 0;font-size:16px;min-height:88px}.commitments-items summary br{display:none}.commitment-icon{flex-shrink:0;width:45px;height:45px}.commitment-plus{margin-left:auto;width:32px;text-align:center}.commitments-items details>p{text-align:left;font-size:16px;padding:0 0 22px 63px}.craft{padding:60px 7%;gap:35px}.craft-photo{height:365px;max-width:100%;border-radius:150px 150px 5px 5px}.craft-copy{padding:0}.craft-copy blockquote{font-size:clamp(2.5rem,11.7vw,3.3rem)}.craft-copy>p:not(.eyebrow){font-size:16px}.table-section{padding:60px 6%;grid-template-columns:1fr;gap:26px}.table-section>div:first-child{grid-column:1;grid-row:1}.table-section h2{font-size:42px;max-width:none}.table-section h2 br{display:none}.occasion-visual{grid-column:1;grid-row:2;min-height:0;height:360px;border-radius:170px 170px 8px 8px;background-size:auto 200%}.occasion-caption{bottom:26px;font-size:36px}.occasion-choice{grid-column:1;grid-row:3;grid-template-columns:repeat(3,minmax(0,1fr))}.occasion-choice>button{font-size:20px;min-height:154px;padding:15px 10px}.occasion-choice>button+button{border-top:0;border-left:1px solid #cbbca7}.occasion-choice>button span{font-size:12px;margin-top:9px}.occasion-choice i{position:static;margin-top:15px}.occasion-answer{grid-column:1;grid-row:4}.visit{padding-top:55px}.visit-info{padding:28px 24px}.visit-signature{padding:35px 10%;gap:25px}.visit-signature p{font-size:29px}.visit-signature .emblem{width:65px;height:65px}.footer-main nav{font-size:14px;gap:4px 15px}.footer-bottom,.footer-bottom button{font-size:12px}footer{padding-bottom:calc(105px + env(safe-area-inset-bottom))}.back-top{width:46px;height:46px}.mobile-dock{display:grid;grid-template-columns:1fr 1fr 1.15fr;position:fixed;bottom:0;left:0;right:0;z-index:32;padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:6px;background:#100f0df5;border-top:1px solid #dbc39d40;box-shadow:0 -5px 28px #0002;transform:translateY(110%);visibility:hidden;transition:transform .45s var(--ease-out),visibility .45s}.mobile-dock.is-visible{transform:none;visibility:visible}.mobile-dock a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-height:53px;border-radius:4px;font-size:12px;color:#e5dac7}.mobile-dock svg{width:20px;height:20px}.mobile-dock .dock-visit{background:var(--wine);color:#fff3e9}.locked .mobile-dock{transform:translateY(110%);visibility:hidden}.product-dialog{width:100%;max-width:100%;max-height:calc(100dvh - 20px);margin:auto 0 0;border-radius:28px 28px 0 0;border-bottom:0;padding-bottom:env(safe-area-inset-bottom);overscroll-behavior:contain}.product-dialog[open]{animation:sheet-arrive .45s var(--ease-out)}.dialog-visual{height:245px;min-height:245px;max-height:245px}.dialog-close{top:12px;margin:12px 12px -58px 0;width:46px;height:46px;box-shadow:0 2px 20px #0002}.dialog-copy{padding:30px 7% 35px}.dialog-copy h2{font-size:43px}.dialog-copy .button{font-size:14px}.legal-dialog{max-height:85dvh}.mobile-menu{justify-content:flex-start;padding-top:110px}.mobile-menu a{font-size:clamp(1.65rem,7.7vw,2.2rem);line-height:1.25;padding:13px 0}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
}
@keyframes sheet-arrive{from{transform:translateY(80px);opacity:0}to{transform:none;opacity:1}}
@media(max-width:360px){.hero-values{gap:12px}.hero-values>div{gap:7px}.hero-values p{font-size:11px}.hero-values small{font-size:10px}.hero h1{font-size:14vw}.meat-name{font-size:23px}.meat-card-dark .meat-name{font-size:21px}.meat-description{font-size:12px}.occasion-choice>button{font-size:18px;padding:13px 8px}.visit-signature{gap:20px}.visit-signature p{font-size:25px}}
@media(prefers-reduced-motion:reduce){.title-line,.product-dialog[open],.mobile-menu a{animation:none;transform:none}.mobile-dock,.quote-word{transition:none}.prep-card,.prep-card:hover{transform:none!important}}

@media(max-width:600px){.dialog-visual,.dialog-visual.prep-asset{background-size:200% 200%}.dialog-visual.food-beef,.dialog-visual.prep-merguez{background-position:left top}.dialog-visual.food-lamb,.dialog-visual.prep-brochettes{background-position:right top}.dialog-visual.food-chicken,.dialog-visual.prep-marinades{background-position:left bottom}.dialog-visual.food-prepared,.dialog-visual.prep-kefta{background-position:right bottom}}

/* Cadrage de la devanture MZR par beau temps. */
@media (min-width: 601px) {
  .storefront { min-height: 620px; }
  .store-photo img[src$="boutique-mzr-beau-temps.jpg"] { object-position: 50% 50%; }
}
@media (max-width: 600px) {
  .store-photo { aspect-ratio: 4 / 3; }
  .store-photo img[src$="boutique-mzr-beau-temps.jpg"] { object-fit: cover; object-position: 50% 50%; }
}
