/* JC Tradition — Boulangerie Artisanale, Drap */
/* Généré le 28/04/2025 */


/* ═════════════ TOKENS ═════════════ */
:root {
  --red:#8a141d; --red-l:#b5202c; --red-xl:#c93040;
  --black:#000; --dark:#1a1a1a; --mid:#3a3a3a; --muted:#5a5a5a;
  --warm:#f0eaea; --white:#fff;
  --ease:cubic-bezier(0.16,1,0.3,1);
  --ease2:cubic-bezier(0.65,0,0.35,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:#fff;color:#000;font-family:'DM Sans',sans-serif;font-weight:300;overflow-x:hidden;cursor:none}
a{text-decoration:none;color:inherit} img{display:block;max-width:100%} button{cursor:none;font-family:'DM Sans',sans-serif}

/* ═════════════ CURSOR ═════════════ */
#cur{position:fixed;width:10px;height:10px;background:var(--red);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);mix-blend-mode:multiply;transition:width .3s,height .3s,background .3s}
#curR{position:fixed;width:38px;height:38px;border:1px solid var(--red);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .4s var(--ease),height .4s var(--ease),opacity .3s;opacity:.5}
body:has(a:hover) #cur,body:has(button:hover) #cur{width:18px;height:18px;background:#000}
body:has(a:hover) #curR,body:has(button:hover) #curR{width:54px;height:54px;opacity:.2}

/* ═════════════ INTRO ═════════════ */
#intro{position:fixed;inset:0;z-index:1000;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}
.ig{position:absolute;inset:-50%;width:200%;height:200%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.07'/%3E%3C/svg%3E");opacity:.4;animation:gs .4s steps(1) infinite;pointer-events:none}
@keyframes gs{0%{transform:translate(0,0)}25%{transform:translate(-2%,-3%)}50%{transform:translate(3%,1%)}75%{transform:translate(-1%,2%)}100%{transform:translate(2%,-1%)}}
.il{position:absolute;background:var(--red)} .il-h{height:1px;width:0;left:0} .il-h.t{top:28%} .il-h.b{bottom:28%;transform-origin:right} .il-v{width:1px;height:0;top:0} .il-v.l{left:12%;transform-origin:top} .il-v.r{right:12%;transform-origin:bottom}
.ilw{text-align:center;position:relative;z-index:2;clip-path:inset(0 100% 0 0)}
.intro-logo{font-family:'Playfair Display',serif;font-size:clamp(4rem,10vw,9rem);font-weight:700;color:#fff;letter-spacing:-.02em;line-height:.9}
.intro-logo span{color:var(--red);font-style:italic}
.intro-tag{font-size:clamp(.6rem,1vw,.72rem);letter-spacing:.35em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:1.2rem;opacity:0}
.intro-curtain{position:absolute;inset:0;background:#fff;transform:scaleY(0);transform-origin:bottom}

/* ═════════════ NAV ═════════════ */
#nav{position:fixed;top:0;left:0;right:0;z-index:500;padding:1.5rem 3.5rem;display:flex;align-items:center;justify-content:space-between;transition:padding .4s var(--ease),background .4s;opacity:0;background:linear-gradient(to bottom,rgba(0,0,0,.4) 0%,transparent 100%)}
#nav.scrolled{padding:1rem 3.5rem;background:rgba(255,255,255,.97);backdrop-filter:blur(16px);border-bottom:.5px solid rgba(138,20,29,.12)}
.nav-logo img{height:54px;width:auto;filter:drop-shadow(0 2px 6px rgba(0,0,0,.3));transition:transform .3s}
.nav-logo img:hover{transform:scale(1.05)}
.nav-links{display:flex;gap:2.2rem;list-style:none}
.nav-links a{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.85);transition:color .3s;position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-3px;left:0;right:0;height:.5px;background:var(--red);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease)}
.nav-links a:hover{color:var(--red-l)} .nav-links a:hover::after{transform:scaleX(1);transform-origin:left}
#nav.scrolled .nav-links a{color:#1a1a1a} #nav.scrolled .nav-links a:hover{color:var(--red)}



 
.nav-cta{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;border:.5px solid rgba(255,255,255,.8);padding:.55rem 1.4rem;color:#fff;transition:all .3s;background:transparent}
.nav-cta:hover{background:var(--red);border-color:var(--red)}
#nav.scrolled .nav-cta{border-color:#000;color:#000} #nav.scrolled .nav-cta:hover{background:var(--red);border-color:var(--red);color:#fff}
.nav-burger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:4px}
.nav-burger span{display:block;width:24px;height:1px;background:#fff;transition:all .3s}
#nav.scrolled .nav-burger span{background:#000}
#mob-nav{position:fixed;inset:0;z-index:800;background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;transform:translateX(100%);transition:transform .5s var(--ease)}
#mob-nav.open{transform:translateX(0)}
#mob-nav a{font-family:'Playfair Display',serif;font-size:clamp(2rem,6vw,3.2rem);font-weight:700;color:#fff;transition:color .3s}
#mob-nav a:hover{color:var(--red)}
#mob-nav .mob-close{position:absolute;top:1.5rem;right:2rem;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.4);background:none;border:none}
#nav.visible{opacity:1}

/* Styles de page */
main { display: block; }to{opacity:1;transform:none}}

/* ═════════════ REVEAL ═════════════ */
.rv{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}
.rv-img{opacity:0;clip-path:inset(0 0 100% 0);transition:opacity .8s var(--ease),clip-path 1s var(--ease)}
.rv-img.in{opacity:1;clip-path:inset(0 0 0% 0)}
.stg>*{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.stg.in>*:nth-child(1){opacity:1;transform:none;transition-delay:0s}
.stg.in>*:nth-child(2){opacity:1;transform:none;transition-delay:.07s}
.stg.in>*:nth-child(3){opacity:1;transform:none;transition-delay:.14s}
.stg.in>*:nth-child(4){opacity:1;transform:none;transition-delay:.21s}
.stg.in>*:nth-child(5){opacity:1;transform:none;transition-delay:.28s}
.stg.in>*:nth-child(6){opacity:1;transform:none;transition-delay:.35s}
.stg.in>*:nth-child(7){opacity:1;transform:none;transition-delay:.42s}
.stg.in>*:nth-child(8){opacity:1;transform:none;transition-delay:.49s}
.stg.in>*:nth-child(9){opacity:1;transform:none;transition-delay:.56s}

/* ═════════════ SHARED ═════════════ */
.s-tag{display:inline-flex;align-items:center;gap:.8rem;font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--red);margin-bottom:1.8rem}
.s-tag::before{content:'';display:block;width:2rem;height:.5px;background:var(--red)}
.btn-fill{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;background:#000;color:#fff;padding:1rem 2.4rem;border:none;position:relative;overflow:hidden;transition:all .3s;display:inline-block}
.btn-fill::before{content:'';position:absolute;inset:0;background:var(--red);transform:translateX(-100%);transition:transform .4s var(--ease)}
.btn-fill:hover::before{transform:translateX(0)} .btn-fill span{position:relative;z-index:1}
.btn-outline{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;border:.5px solid #000;padding:.9rem 2rem;color:#000;transition:all .3s;display:inline-block}
.btn-outline:hover{background:#000;color:#fff}

/* PAGE HERO */
.ph{height:72vh;min-height:520px;position:relative;overflow:hidden;display:flex;align-items:flex-end;background:#000}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.ph-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.15) 60%,transparent 100%)}
.ph-content{position:relative;z-index:2;padding:4rem 5rem;width:100%}
.ph-tag{font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:#fff;margin-bottom:.8rem;display:flex;align-items:center;gap:.8rem;opacity:.9}
.ph-tag::before{content:'';display:block;width:2rem;height:.5px;background:var(--red)}
.ph-title{font-family:'Playfair Display',serif;font-size:clamp(3rem,6vw,7rem);font-weight:700;line-height:.9;color:#fff;letter-spacing:-.03em}
.ph-title em{font-style:italic;color:var(--red-l)}

/* PHOTO PLACEHOLDERS */
.pp{background:#f8f3f3;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.pp img{width:100%;height:100%;object-fit:cover}
.pp.square{aspect-ratio:1} .pp.tall{aspect-ratio:2/3} .pp.wide{aspect-ratio:16/9} .pp.port{aspect-ratio:3/4} .pp.land{aspect-ratio:4/3}
.add-photo-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem}
.add-photo-label .icon{width:36px;height:36px;border:1.5px dashed rgba(138,20,29,.25);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:rgba(138,20,29,.25)}
.add-photo-label .txt{font-size:.58rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(138,20,29,.3)}

/* 9-photo grid */
.pg9-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.pg9-grid .pp{aspect-ratio:1}

/* FOOTER */
footer{background:#000;padding:4rem 5rem 2.5rem}
.ft{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:4rem;padding-bottom:3.5rem;border-bottom:.5px solid rgba(255,255,255,.08);margin-bottom:2rem}
.ft-brand{font-family:'Playfair Display',serif;font-size:1.8rem;font-weight:700;color:#fff;letter-spacing:-.02em;margin-bottom:.8rem}
.ft-brand em{color:var(--red);font-style:italic}
.ft-desc{font-size:.82rem;color:rgba(255,255,255,.5);line-height:1.8;max-width:260px}
.ft-h{font-size:.62rem;letter-spacing:.25em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:1.4rem}
.ft-links{list-style:none;display:flex;flex-direction:column;gap:.7rem}
.ft-links a{font-size:.83rem;color:rgba(255,255,255,.5);transition:color .3s}
.ft-links a:hover{color:var(--red-l)}
.ft-bottom{display:flex;justify-content:space-between;align-items:center}
.ft-copy{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.25)}
.ft-soc a{font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.4);transition:color .3s;margin-left:1.5rem}
.ft-soc a:hover{color:var(--red)}

/* ═══════════════════════════════════════════════
   PAGE 1 — ACCUEIL
═══════════════════════════════════════════════ */
.hero{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden}
.hero-l{display:flex;flex-direction:column;justify-content:center;padding:9rem 3.5rem 5rem 5rem;position:relative;z-index:2;background:#fff}
.hero-loc{font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem}
.hero-title{font-family:'Playfair Display',serif;font-size:clamp(3.2rem,5.2vw,6.2rem);font-weight:700;line-height:.92;letter-spacing:-.025em;margin-bottom:2.2rem;color:#000}
.hero-title .ln{overflow:hidden;display:block}
.hero-title .wd{display:inline-block;transform:translateY(110%);transition:transform 1s var(--ease)}
.hero-title .wd.in{transform:translateY(0)}
.hero-title em{color:var(--red);font-style:italic}
.hero-desc{font-size:.92rem;color:#4a4a4a;max-width:370px;line-height:1.85;margin-bottom:3rem}
.hero-acts{display:flex;align-items:center;gap:2rem}
.hero-bgtxt{position:absolute;bottom:-1.5rem;left:-1rem;font-family:'Playfair Display',serif;font-size:clamp(7rem,13vw,12rem);font-weight:900;color:rgba(138,20,29,.06);letter-spacing:-.05em;white-space:nowrap;pointer-events:none;user-select:none;z-index:0}
.hero-r{position:relative;overflow:hidden;background:#000}
.hero-r img{width:100%;height:100%;object-fit:cover;opacity:.78;transform:scale(1.06);transition:transform 10s ease}
.hero-r img.in{transform:scale(1.0)}
.hero-ov{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.25) 0%,transparent 55%)}
.hero-badge{position:absolute;bottom:3rem;left:-1.5rem;background:#fff;padding:1.4rem 1.8rem;border-left:2px solid var(--red);z-index:2;transform:translateX(-20px);opacity:0;transition:all .8s var(--ease) 1.6s}
.hero-badge.in{transform:translateX(0);opacity:1}
.hero-badge .lbl{font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:.3rem}
.hero-badge .val{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:500;color:#000}

/* MARQUEE */
.marq{background:#000;padding:.9rem 0;overflow:hidden}
.marq-inner{display:flex;width:max-content;animation:mq 28s linear infinite}
.marq-item{display:flex;align-items:center;gap:3rem;padding:0 3rem;font-size:.65rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.55);white-space:nowrap}
.marq-dot{color:var(--red);font-size:.4rem}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ABOUT — 2 col with Jeremy photo */
.about{padding:9rem 5rem;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.about-ttl{font-family:'Playfair Display',serif;font-size:clamp(2.4rem,3.5vw,4rem);font-weight:700;line-height:1.05;letter-spacing:-.02em;margin-bottom:2rem}
.about-ttl em{color:var(--red);font-style:italic}
.about-body{font-size:.9rem;color:#4a4a4a;line-height:1.9;margin-bottom:1.2rem}
.about-sig{font-family:'Cormorant',serif;font-size:2rem;font-style:italic;color:var(--red);margin-top:2rem}
.about-stats{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:3rem;padding-top:2.5rem;border-top:.5px solid #f0eaea}
.sn{font-family:'Playfair Display',serif;font-size:2.8rem;font-weight:700;color:var(--red);line-height:1}
.sl{font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:#5a5a5a;margin-top:.4rem}
.about-photo{width:100%;height:100%;min-height:550px;object-fit:cover;object-position:center top}

/* 9-photo section before testimonial */
.before-testi{padding:0 5rem 7rem}
.before-testi-ttl{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,2.5vw,2.8rem);font-weight:700;letter-spacing:-.02em;color:#000;margin-bottom:.5rem}
.before-testi-ttl em{color:var(--red);font-style:italic}
.before-testi-sub{font-size:.82rem;color:#5a5a5a;margin-bottom:2.5rem}

/* SERVICES */
.srv-sec{padding:0 5rem 9rem}
.srv-hd{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:4rem;padding-bottom:2rem;border-bottom:.5px solid #f0eaea}
.srv-ttl{font-family:'Playfair Display',serif;font-size:clamp(2.4rem,3.5vw,3.8rem);font-weight:700;letter-spacing:-.02em;color:#000}
.srv-ttl em{color:var(--red);font-style:italic}
.srv-cnt{font-family:'Cormorant',serif;font-size:.72rem;letter-spacing:.2em;color:#5a5a5a}
.srv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.srv-card{position:relative;overflow:hidden;aspect-ratio:3/4;background:#000;cursor:none}
.srv-card img{width:100%;height:100%;object-fit:cover;opacity:.58;transition:opacity .6s,transform .8s var(--ease)}
.srv-card:hover img{opacity:.38;transform:scale(1.06)}
.srv-card-body{position:absolute;inset:0;padding:1.8rem;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(to top,rgba(0,0,0,.88) 0%,transparent 52%)}
.srv-num{position:absolute;top:1.4rem;right:1.4rem;font-size:.6rem;letter-spacing:.22em;color:rgba(255,255,255,.3);text-transform:uppercase}
.srv-sub{font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;color:var(--red-l);margin-bottom:.5rem}
.srv-name{font-family:'Playfair Display',serif;font-size:1.75rem;font-weight:700;color:#fff;line-height:1.1;margin-bottom:.6rem}
.srv-desc{font-size:.8rem;color:rgba(255,255,255,.78);line-height:1.7;max-height:0;overflow:hidden;transition:max-height .5s var(--ease)}
.srv-card:hover .srv-desc{max-height:90px}
.srv-arr{position:absolute;bottom:1.5rem;right:1.5rem;width:38px;height:38px;border:.5px solid rgba(255,255,255,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.85rem;transform:translate(10px,10px);opacity:0;transition:all .4s var(--ease)}
.srv-card:hover .srv-arr{transform:none;opacity:1}

/* TESTIMONIAL */
.testi{background:#000;padding:8rem 5rem;position:relative;overflow:hidden;text-align:center}
.testi-bg{position:absolute;top:-3rem;right:-2rem;font-family:'Playfair Display',serif;font-size:18rem;font-weight:900;color:rgba(255,255,255,.02);line-height:1;pointer-events:none;user-select:none}
.testi-q{font-family:'Playfair Display',serif;font-size:clamp(1.9rem,3.2vw,3.2rem);font-weight:400;font-style:italic;color:#fff;line-height:1.35;max-width:780px;margin:0 auto;position:relative}
.testi-q::before{content:'"';font-size:7rem;line-height:0;color:var(--red);opacity:.35;position:absolute;top:1.5rem;left:-1.5rem;font-weight:900}
.testi-auth{margin-top:3rem;font-size:.67rem;letter-spacing:.25em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.testi-auth strong{color:var(--red-l)}

/* ═══ MACARON ANIMATION (Pâtisserie) ═══ */
@keyframes macaronFloat{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-12px) rotate(3deg)}}
@keyframes macaronPulse{0%,100%{box-shadow:0 0 0 0 rgba(138,20,29,.15)}50%{box-shadow:0 0 0 18px rgba(138,20,29,0)}}
.macaron-anim{display:flex;align-items:center;justify-content:center;margin:2rem 0}
.macaron-svg{animation:macaronFloat 3.5s ease-in-out infinite,macaronPulse 3.5s ease-in-out infinite}

/* ═══ BURGER ANIMATION (Cuisines) ═══ */
@keyframes burgerBounce{0%,100%{transform:translateY(0)}30%{transform:translateY(-16px)}60%{transform:translateY(-6px)}}
@keyframes burgerSizzle{0%,100%{filter:drop-shadow(0 4px 12px rgba(138,20,29,.25))}50%{filter:drop-shadow(0 8px 24px rgba(138,20,29,.5))}}
.burger-anim{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 0}
.burger-svg{animation:burgerBounce 2.5s ease-in-out infinite,burgerSizzle 2.5s ease-in-out infinite}

/* ═══ SALADE ANIMATION (À ta Sauce) ═══ */
@keyframes saladeSpin{0%{transform:rotate(-5deg) scale(1)}25%{transform:rotate(3deg) scale(1.05)}50%{transform:rotate(-5deg) scale(1)}75%{transform:rotate(3deg) scale(1.03)}100%{transform:rotate(-5deg) scale(1)}}
@keyframes saladeLeaf{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-8px) rotate(8deg)}}
.salade-anim{display:flex;align-items:center;justify-content:center;padding:3rem 0}
.salade-bowl{animation:saladeSpin 4s ease-in-out infinite}
.salade-leaf{animation:saladeLeaf 2s ease-in-out infinite}
.salade-leaf:nth-child(2){animation-delay:.4s}
.salade-leaf:nth-child(3){animation-delay:.8s}

/* ═══════════════════════════════════════════════
   PAGE 2 — BOULANGERIE
═══════════════════════════════════════════════ */
.intro2c{padding:7rem 5rem;display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start}
.intro2c-ttl{font-family:'Playfair Display',serif;font-size:clamp(2rem,3vw,3rem);font-weight:500;line-height:1.1;letter-spacing:-.02em;position:sticky;top:8rem}
.intro2c-ttl em{color:var(--red);font-style:italic}
.intro2c-body{font-size:.91rem;color:#4a4a4a;line-height:1.95}
.intro2c-body p{margin-bottom:1.4rem}
.prod-sec{padding:0 5rem 4rem}
.cat-hd{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:2.5rem;padding-bottom:1.4rem;border-bottom:.5px solid #f0eaea}
.cat-nm{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,2.5vw,2.4rem);font-weight:700;letter-spacing:-.02em;color:#000}
.cat-nm em{color:var(--red);font-style:italic}
.cat-ct{font-size:.68rem;letter-spacing:.2em;color:#5a5a5a;text-transform:uppercase}
.prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-bottom:5rem}
.prod-item{padding:1.8rem 2rem;position:relative;transition:background .3s}
.prod-item::after{content:'';position:absolute;inset:0;border:.5px solid #f0eaea;pointer-events:none}
.prod-item:hover{background:#000}
.prod-n{font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;color:var(--red);margin-bottom:.9rem}
.prod-name{font-family:'Playfair Display',serif;font-size:1.25rem;font-weight:500;color:#000;margin-bottom:.5rem;transition:color .3s;letter-spacing:-.01em}
.prod-desc{font-size:.79rem;color:#5a5a5a;line-height:1.7;margin-bottom:1.1rem;transition:color .3s}
.prod-price{font-family:'Cormorant',serif;font-size:1.05rem;color:var(--red);transition:color .3s}
.prod-item:hover .prod-name{color:#fff} .prod-item:hover .prod-desc{color:rgba(255,255,255,.65)} .prod-item:hover .prod-price{color:var(--red-l)}
.boul-ph-section{padding:0 5rem 8rem}
.boul-ph-ttl{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,2.5vw,2.5rem);font-weight:700;letter-spacing:-.02em;color:#000;margin-bottom:.4rem}
.boul-ph-ttl em{color:var(--red);font-style:italic}
.boul-ph-sub{font-size:.82rem;color:#5a5a5a;margin-bottom:2.5rem}

/* ═══════════════════════════════════════════════
   PAGE 3 — PÂTISSERIE
═══════════════════════════════════════════════ */
.pat-intro{padding:5rem 5rem 3rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}
.pat-img-col{position:sticky;top:8rem}
.pat-img-main{width:100%;aspect-ratio:4/3;object-fit:cover}
.pat-text{padding-top:1rem}
.pat-ttl{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,3vw,3.2rem);font-weight:700;line-height:1.05;letter-spacing:-.02em;margin-bottom:2rem}
.pat-ttl em{color:var(--red);font-style:italic}
.pat-body{font-size:.9rem;color:#4a4a4a;line-height:1.9;margin-bottom:1.2rem}
.pat-creations{padding:2rem 5rem 3rem}
.pat-creations-ttl{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,2.5vw,2.8rem);font-weight:700;letter-spacing:-.02em;color:#000;margin-bottom:3rem}
.pat-creations-ttl em{color:var(--red);font-style:italic}
.pat-masonry{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.pat-item{position:relative;overflow:hidden;background:#111;cursor:none}
.pat-item:nth-child(1){grid-column:1/3;aspect-ratio:2/1}
.pat-item:nth-child(2),.pat-item:nth-child(3){aspect-ratio:1}
.pat-item:nth-child(4),.pat-item:nth-child(5),.pat-item:nth-child(6){aspect-ratio:4/3}
.pat-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),opacity .4s;opacity:.85}
.pat-item:hover img{transform:scale(1.06);opacity:.65}
.pat-item-info{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:1.4rem;background:linear-gradient(to top,rgba(0,0,0,.82) 0%,transparent 50%);opacity:0;transition:opacity .4s}
.pat-item:hover .pat-item-info{opacity:1}
.pat-item-name{font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:500;color:#fff}
.pat-item-price{font-family:'Cormorant',serif;font-size:.95rem;color:var(--red-l);margin-top:.25rem}
.pat-ph-section{padding:0 5rem 7rem}
.pat-ph-ttl{font-family:'Playfair Display',serif;font-size:clamp(1.5rem,2vw,2rem);font-weight:700;letter-spacing:-.02em;color:#000;margin-bottom:.4rem}
.pat-ph-sub{font-size:.82rem;color:#5a5a5a;margin-bottom:2.5rem}

/* ═══════════════════════════════════════════════
   PAGE 4 — TRAITEUR
═══════════════════════════════════════════════ */
.trt-intro{padding:7rem 5rem;text-align:center;max-width:860px;margin:0 auto}
.trt-intro-ttl{font-family:'Playfair Display',serif;font-size:clamp(2.8rem,5vw,5.2rem);font-weight:700;line-height:.95;letter-spacing:-.03em;margin-bottom:2.2rem;color:#000}
.trt-intro-ttl em{color:var(--red);font-style:italic}
.trt-intro-body{font-size:.95rem;color:#4a4a4a;line-height:1.85}
.trt-events-top{padding:0 5rem;margin-bottom:1.2rem}
.trt-events{padding:0 5rem;display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-bottom:1.2rem}
.ev-card{position:relative;overflow:hidden;background:#000;cursor:none}
.ev-card.big{aspect-ratio:21/9} .ev-card.med{aspect-ratio:16/10}
.ev-card img{width:100%;height:100%;object-fit:cover;opacity:.52;transition:transform .8s var(--ease),opacity .5s}
.ev-card:hover img{transform:scale(1.05);opacity:.38}
.ev-ov{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.55) 0%,transparent 65%)}
.ev-content{position:absolute;bottom:2.2rem;left:2.5rem;right:2.5rem}
.ev-tag{font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;color:var(--red-l);margin-bottom:.6rem}
.ev-name{font-family:'Playfair Display',serif;font-size:clamp(1.4rem,3vw,2.4rem);font-weight:700;color:#fff;line-height:1.1;margin-bottom:.6rem}
.ev-desc{font-size:.8rem;color:rgba(255,255,255,.72);line-height:1.65}
.ev-cta{display:inline-flex;align-items:center;gap:.5rem;font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:#fff;border-bottom:.5px solid rgba(255,255,255,.3);padding-bottom:2px;margin-top:1rem;transition:color .3s,border-color .3s}
.ev-card:hover .ev-cta{color:var(--red-l);border-color:var(--red-l)}
.proc{background:#000;padding:8rem 5rem}
.proc-ttl{font-family:'Playfair Display',serif;font-size:clamp(2.4rem,4vw,4.2rem);font-weight:700;color:#fff;letter-spacing:-.02em;margin-bottom:5rem}
.proc-ttl em{color:var(--red);font-style:italic}
.proc-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.proc-step{padding:2.2rem 1.8rem;border-right:.5px solid rgba(255,255,255,.1)}
.proc-step:last-child{border-right:none}
.proc-num{font-family:'Playfair Display',serif;font-size:4.5rem;font-weight:900;color:rgba(255,255,255,.06);line-height:1;margin-bottom:-.8rem}
.proc-ttl2{font-family:'Playfair Display',serif;font-size:1.25rem;font-weight:500;color:#fff;margin-bottom:.9rem}
.proc-body{font-size:.8rem;color:rgba(255,255,255,.62);line-height:1.8}

/* ═══════════════════════════════════════════════
   PAGE 5 — LES CUISINES (Burger)
═══════════════════════════════════════════════ */
.cuis-concept{padding:7rem 5rem;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}
.cuis-concept-text .s-tag{margin-bottom:1.5rem}
.cuis-concept-ttl{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,3.5vw,4rem);font-weight:700;line-height:1.02;letter-spacing:-.025em;margin-bottom:2rem}
.cuis-concept-ttl em{color:var(--red);font-style:italic}
.cuis-concept-body{font-size:.9rem;color:#4a4a4a;line-height:1.9;margin-bottom:1.2rem}
.cuis-feats{display:flex;flex-direction:column;gap:0;margin-top:2.5rem}
.cuis-feat{display:flex;align-items:center;gap:1rem;padding:.85rem 0;border-bottom:.5px solid #f0eaea;font-size:.84rem;color:#3a3a3a}
.cuis-feat::before{content:'◆';font-size:.35rem;color:var(--red);flex-shrink:0}
/* Burger du mois */
.burger-mois{background:#000;padding:8rem 5rem;position:relative;overflow:hidden}
.burger-mois-inner{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}
.burger-mois-badge{position:absolute;top:3rem;right:3rem;width:90px;height:90px;border-radius:50%;background:var(--red);display:flex;flex-direction:column;align-items:center;justify-content:center;animation:burgerBadgeRotate 8s linear infinite}
.burger-mois-badge p{font-size:.52rem;letter-spacing:.18em;text-transform:uppercase;color:#fff;text-align:center;line-height:1.4}
@keyframes burgerBadgeRotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.burger-mois-ttl{font-family:'Playfair Display',serif;font-size:clamp(2.5rem,4vw,4.5rem);font-weight:700;color:#fff;letter-spacing:-.03em;margin-bottom:1.5rem;line-height:1}
.burger-mois-ttl em{color:var(--red-l);font-style:italic}
.burger-mois-name{font-family:'Playfair Display',serif;font-size:1.8rem;color:var(--red-l);font-style:italic;margin-bottom:1rem}
.burger-mois-body{font-size:.88rem;color:rgba(255,255,255,.65);line-height:1.9;margin-bottom:2rem}
.burger-mois-ingr{display:flex;flex-direction:column;gap:.5rem;margin-bottom:2.5rem}
.burger-ingr-item{display:flex;align-items:center;gap:.8rem;font-size:.82rem;color:rgba(255,255,255,.7)}
.burger-ingr-item::before{content:'';display:block;width:4px;height:4px;border-radius:50%;background:var(--red);flex-shrink:0}
.burger-mois-price{font-family:'Playfair Display',serif;font-size:2.5rem;color:var(--red-l);font-weight:700}
/* Carte */
.cuis-carte{padding:7rem 5rem 5rem}
.cuis-carte-ttl{font-family:'Playfair Display',serif;font-size:clamp(2rem,3vw,3.2rem);font-weight:700;letter-spacing:-.02em;color:#000;margin-bottom:4rem}
.cuis-carte-ttl em{color:var(--red);font-style:italic}
.cuis-items-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:.5px solid #f0eaea}
.cuis-item{padding:2rem;border-right:.5px solid #f0eaea;border-bottom:.5px solid #f0eaea;transition:background .3s}
.cuis-item:hover{background:#000}
.cuis-item-n{font-size:.57rem;letter-spacing:.22em;text-transform:uppercase;color:var(--red);margin-bottom:.8rem;opacity:.7}
.cuis-item-name{font-family:'Playfair Display',serif;font-size:1.25rem;color:#000;margin-bottom:.5rem;font-weight:500;transition:color .3s}
.cuis-item-desc{font-size:.8rem;color:#5a5a5a;line-height:1.7;margin-bottom:1rem;transition:color .3s}
.cuis-item-price{font-family:'Cormorant',serif;font-size:1.05rem;color:var(--red);transition:color .3s}
.cuis-item:hover .cuis-item-name{color:#fff} .cuis-item:hover .cuis-item-desc{color:rgba(255,255,255,.62)} .cuis-item:hover .cuis-item-price{color:var(--red-l)}
.cuis-ph{padding:0 5rem 5rem}
.cuis-process-ttl{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,2.5vw,2.8rem);font-weight:700;letter-spacing:-.02em;color:#000;margin-bottom:.4rem}
.cuis-process-body{font-size:.82rem;color:#5a5a5a;margin-bottom:2.5rem}

/* ═══════════════════════════════════════════════
   PAGE 6 — À TA SAUCE
═══════════════════════════════════════════════ */
.ats-hero-content{padding:7rem 5rem;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}
.ats-brand{font-family:'Playfair Display',serif;font-size:clamp(2.5rem,4vw,4.5rem);font-weight:900;line-height:.92;letter-spacing:-.04em;margin-bottom:1.2rem;color:#000}
.ats-brand em{color:var(--red);font-style:italic}
.ats-brand .sub{display:block;font-size:.38em;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:#5a5a5a;margin-top:.5rem;font-family:'DM Sans',sans-serif;font-style:normal}
.ats-tag{display:inline-block;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--red);border:.5px solid var(--red);padding:.35rem .8rem;margin-bottom:2rem}
.ats-body{font-size:.9rem;color:#4a4a4a;line-height:1.9;margin-bottom:1.2rem}
.ats-anim-col{display:flex;align-items:center;justify-content:center}
/* Carte */
.ats-carte{background:#000;padding:8rem 5rem}
.ats-carte-ttl{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,3.5vw,4rem);font-weight:700;color:#fff;letter-spacing:-.02em;margin-bottom:1rem}
.ats-carte-ttl em{color:var(--red);font-style:italic}
.ats-carte-sub{font-size:.85rem;color:rgba(255,255,255,.55);margin-bottom:4rem;max-width:500px;line-height:1.8}
.ats-items{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:.5px solid rgba(255,255,255,.08)}
.ats-item{padding:2rem;border-right:.5px solid rgba(255,255,255,.08);border-bottom:.5px solid rgba(255,255,255,.08);transition:background .3s}
.ats-item:hover{background:rgba(138,20,29,.1)}
.ats-item-n{font-size:.57rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(138,20,29,.6);margin-bottom:.8rem}
.ats-item-name{font-family:'Playfair Display',serif;font-size:1.3rem;color:#fff;margin-bottom:.5rem;font-weight:500}
.ats-item-desc{font-size:.8rem;color:rgba(255,255,255,.55);line-height:1.7;margin-bottom:1rem}
.ats-item-price{font-family:'Cormorant',serif;font-size:1.05rem;color:var(--red-l)}
/* Équipe */
.ats-team{padding:7rem 5rem 5rem}
.ats-team-ttl{font-family:'Playfair Display',serif;font-size:clamp(2rem,2.8vw,3rem);font-weight:700;letter-spacing:-.02em;color:#000;margin-bottom:3rem}
.ats-team-ttl em{color:var(--red);font-style:italic}
.ats-team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.team-card .team-img{width:100%;aspect-ratio:3/4;object-fit:cover;background:#f5f0f0;display:block}
.team-card .team-info{padding:1.4rem 0}
.team-name{font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:500;color:#000;margin-bottom:.3rem}
.team-role{font-size:.67rem;letter-spacing:.18em;text-transform:uppercase;color:var(--red)}
.team-bio{font-size:.8rem;color:#5a5a5a;line-height:1.7;margin-top:.6rem}
/* Photos */
.ats-photos{padding:0 5rem 6rem}
.ats-photos-ttl{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,2.5vw,2.8rem);font-weight:700;letter-spacing:-.02em;color:#000;margin-bottom:.4rem}
.ats-photos-sub{font-size:.82rem;color:#5a5a5a;margin-bottom:2.5rem}

/* ═══════════════════════════════════════════════
   PAGE 7 — CONTACT
═══════════════════════════════════════════════ */
.cont-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
.cont-l{background:#000;padding:9rem 5rem;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.cont-bg-txt{position:absolute;bottom:-3.5rem;right:-2rem;font-family:'Playfair Display',serif;font-size:14rem;font-weight:900;color:rgba(255,255,255,.025);line-height:1;pointer-events:none}
.cont-l-ttl{font-family:'Playfair Display',serif;font-size:clamp(2.8rem,5vw,4.8rem);font-weight:700;color:#fff;letter-spacing:-.03em;line-height:1;margin-bottom:1.8rem}
.cont-l-ttl em{color:var(--red);font-style:italic}
.cont-l-desc{font-size:.88rem;color:rgba(255,255,255,.6);line-height:1.85;max-width:360px}
.cont-info{margin-top:auto;padding-top:5rem;display:flex;flex-direction:column;gap:0}
.cont-row{padding:1.8rem 0;border-top:.5px solid rgba(255,255,255,.1);display:grid;grid-template-columns:90px 1fr;gap:1rem;align-items:start}
.cont-lbl{font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.32);padding-top:3px}
.cont-val{font-family:'Playfair Display',serif;font-size:1.05rem;color:#fff;line-height:1.5}
.cont-val a{color:var(--red-l);transition:color .3s} .cont-val a:hover{color:var(--red-xl)}
.cont-hours{display:grid;grid-template-columns:1fr 1fr;gap:.25rem 2rem}
.cont-hd{font-size:.78rem;color:rgba(255,255,255,.5)} .cont-ht{font-size:.78rem;color:#fff;text-align:right}
.cont-r{padding:9rem 5rem;display:flex;flex-direction:column;justify-content:center}
.cont-form-ttl{font-family:'Playfair Display',serif;font-size:2rem;font-weight:700;letter-spacing:-.02em;margin-bottom:3rem;color:#000}
.cont-form-ttl em{color:var(--red);font-style:italic}
.ff{margin-bottom:2rem;position:relative}
.ff label{display:block;font-size:.63rem;letter-spacing:.22em;text-transform:uppercase;color:#5a5a5a;margin-bottom:.6rem}
.ff input,.ff textarea,.ff select{width:100%;padding:1rem 0;background:transparent;border:none;border-bottom:.5px solid #f0eaea;font-family:'DM Sans',sans-serif;font-size:.93rem;color:#000;font-weight:300;outline:none;appearance:none;transition:border-color .3s}
.ff input:focus,.ff textarea:focus,.ff select:focus{border-bottom-color:var(--red)}
.ff textarea{min-height:110px;resize:vertical;line-height:1.7}
.ff-line{position:absolute;bottom:0;left:0;height:.5px;background:var(--red);width:0;transition:width .4s var(--ease)}
.ff input:focus~.ff-line,.ff textarea:focus~.ff-line{width:100%}
.ff-row{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.form-btn{font-family:'DM Sans',sans-serif;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;background:#000;color:#fff;border:none;padding:1.1rem 2.4rem;margin-top:.8rem;position:relative;overflow:hidden;transition:all .3s}
.form-btn::after{content:'';position:absolute;inset:0;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.form-btn:hover::after{transform:scaleX(1)} .form-btn span{position:relative;z-index:1}
.map-frame{width:100%;height:260px;border:none;margin-top:3rem;filter:grayscale(20%) contrast(.93)}

/* ═════════════ RESPONSIVE ═════════════ */
@media(max-width:1100px){
  .hero{grid-template-columns:1fr} .hero-r{height:65vw} .hero-bgtxt{display:none}
  .about{grid-template-columns:1fr;padding:5rem 3rem} .about-photo{min-height:360px;aspect-ratio:4/3}
  .before-testi{padding:0 3rem 5rem}
  .srv-sec{padding:0 3rem 6rem} .srv-grid{grid-template-columns:1fr 1fr}
  .testi{padding:5rem 3rem}
  .intro2c{grid-template-columns:1fr;padding:5rem 3rem;gap:3rem} .intro2c-ttl{position:static}
  .prod-sec{padding:0 3rem 4rem} .prod-grid{grid-template-columns:1fr 1fr}
  .boul-ph-section{padding:0 3rem 6rem}
  .pat-intro{grid-template-columns:1fr;padding:5rem 3rem 3rem;gap:3rem} .pat-img-col{position:static}
  .pat-creations{padding:2rem 3rem 3rem} .pat-masonry{grid-template-columns:1fr 1fr}
  .pat-item:nth-child(1){grid-column:1/3}
  .pat-ph-section{padding:0 3rem 5rem}
  .trt-intro{padding:5rem 3rem} .trt-events-top,.trt-events{padding:0 3rem}
  .trt-events{grid-template-columns:1fr}
  .proc{padding:5rem 3rem} .proc-steps{grid-template-columns:1fr 1fr}
  .cuis-concept{grid-template-columns:1fr;padding:5rem 3rem;gap:4rem}
  .burger-mois{padding:5rem 3rem} .burger-mois-inner{grid-template-columns:1fr;gap:3rem}
  .cuis-carte{padding:5rem 3rem 4rem} .cuis-items-grid{grid-template-columns:1fr 1fr}
  .cuis-ph{padding:0 3rem 4rem}
  .ats-hero-content{grid-template-columns:1fr;padding:5rem 3rem;gap:4rem}
  .ats-carte{padding:5rem 3rem} .ats-items{grid-template-columns:1fr 1fr}
  .ats-team{padding:5rem 3rem 4rem} .ats-team-grid{grid-template-columns:1fr 1fr}
  .ats-photos{padding:0 3rem 5rem}
  .cont-wrap{grid-template-columns:1fr} .cont-r{padding:5rem 3rem} .cont-l{padding:7rem 3rem 5rem}
  .ff-row{grid-template-columns:1fr}
  footer{padding:3.5rem 3rem 2rem} .ft{grid-template-columns:1fr 1fr;gap:3rem}
}
@media(max-width:768px){
  #nav{padding:1.2rem 1.5rem} .nav-links,.nav-cta{display:none} .nav-burger{display:flex}
  .hero-l{padding:7rem 1.5rem 3rem} .hero-r{height:70vw}
  .hero-badge{bottom:1.5rem;left:1.5rem}
  .about{padding:4rem 1.5rem} .before-testi{padding:0 1.5rem 4rem}
  .srv-sec{padding:0 1.5rem 5rem} .srv-grid{grid-template-columns:1fr}
  .testi{padding:4rem 1.5rem} .testi-q::before{left:0}
  .intro2c{padding:4rem 1.5rem} .prod-sec{padding:0 1.5rem 3rem} .prod-grid{grid-template-columns:1fr}
  .boul-ph-section{padding:0 1.5rem 5rem} .pg9-grid{grid-template-columns:1fr 1fr}
  .pat-intro{padding:4rem 1.5rem 2rem} .pat-creations{padding:1rem 1.5rem 2rem}
  .pat-masonry{grid-template-columns:1fr 1fr} .pat-ph-section{padding:0 1.5rem 4rem}
  .trt-intro{padding:4rem 1.5rem} .trt-events-top,.trt-events{padding:0 1.5rem}
  .ev-card.big{aspect-ratio:16/9} .proc{padding:4rem 1.5rem} .proc-steps{grid-template-columns:1fr}
  .cuis-concept{padding:4rem 1.5rem} .burger-mois{padding:4rem 1.5rem}
  .cuis-carte{padding:4rem 1.5rem 3rem} .cuis-items-grid{grid-template-columns:1fr}
  .cuis-ph{padding:0 1.5rem 4rem}
  .ats-hero-content{padding:4rem 1.5rem} .ats-carte{padding:4rem 1.5rem}
  .ats-items{grid-template-columns:1fr} .ats-team{padding:4rem 1.5rem 3rem}
  .ats-team-grid{grid-template-columns:1fr} .ats-photos{padding:0 1.5rem 4rem}
  .cont-l{padding:5rem 1.5rem 4rem} .cont-r{padding:4rem 1.5rem}
  footer{padding:3rem 1.5rem 2rem} .ft{grid-template-columns:1fr;gap:2.5rem}
  .ft-bottom{flex-direction:column;gap:1rem;text-align:center}
  .ph-content{padding:2.5rem 1.5rem}
}

/* ── Page transition ── */
main { animation: pageIn .5s cubic-bezier(0.16,1,0.3,1) both; }
@keyframes pageIn { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }

/* ── FIX : about page accueil — image visible immédiatement ── */
.about-r{position:relative;width:100%;height:100%;}
.about-r .about-photo{display:block;width:100%;height:auto;min-height:520px;max-height:680px;object-fit:cover;object-position:center top;}

/* ── FIX : pâtisserie — image latérale ── */
.pat-side-img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;}
.pat-img-col{position:sticky;top:8rem;}

/* ── FIX : cuisines — image à droite du concept ── */
.cuis-concept{align-items:stretch !important;}
.cuis-concept-img{position:relative;display:flex;align-items:stretch;}
.cuis-concept-img img{width:100%;height:100%;object-fit:cover;}

/* ── FIX : à ta sauce — image à droite du concept ── */
.ats-hero-content{align-items:stretch !important;}
.ats-concept-img{position:relative;display:flex;align-items:stretch;}
.ats-concept-img img{width:100%;height:100%;object-fit:cover;}

/* ── FIX : pâtisserie — réduire écart entre univers et créations ── */
.pat-intro{padding-bottom:2rem !important;}
.pat-creations{padding-top:3rem !important;}

/* Responsive: stack on mobile */
@media (max-width:1024px){
  .about-r .about-photo{min-height:auto;aspect-ratio:4/5;}
  .cuis-concept-img img,.ats-concept-img img{min-height:auto;aspect-ratio:4/5;}
  .pat-img-col{position:static;}
}
