:root{--ink:#11150f;--ink2:#191f17;--khaki:#7d8657;--olive:#3f4b2e;--moss:#28321f;--sand:#d6c9aa;--cream:#f3efe5;--paper:#faf8f2;--rust:#8f5035;--line:rgba(17,21,15,.14);--white:#fff;--radius:26px;--shadow:0 24px 70px rgba(13,18,10,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,system-ui,sans-serif;line-height:1.6;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.24;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.05'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1320px,calc(100% - 48px));margin:auto}.eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:900;color:var(--khaki)}.eyebrow:before{content:"";width:34px;height:2px;background:currentColor}h1,h2,h3{font-family:"Barlow Condensed",sans-serif;line-height:.94;margin:0;text-transform:uppercase}h1{font-size:clamp(4.2rem,9vw,9.7rem);letter-spacing:-.045em}h2{font-size:clamp(3rem,6vw,6.4rem);letter-spacing:-.035em}h3{font-size:1.65rem}.site-header{position:fixed;inset:0 0 auto;z-index:60;background:rgba(17,21,15,.98);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 8px 30px rgba(0,0,0,.12);transition:.35s}.site-header.scrolled{background:rgba(17,21,15,.98);backdrop-filter:blur(18px);box-shadow:0 10px 35px rgba(0,0,0,.2)}.nav-wrap{height:94px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:14px;color:#fff;font-weight:900;letter-spacing:-.02em}.brand img{width:76px;height:68px;object-fit:contain;filter:drop-shadow(0 5px 12px rgba(0,0,0,.35))}.brand span{font-size:1.05rem;text-transform:uppercase}.main-nav{display:flex;align-items:center;gap:28px;color:#fff;font-size:.84rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.main-nav>a:not(.nav-cta){position:relative}.main-nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--sand);transition:.25s}.main-nav>a:hover:after{right:0}.nav-cta{background:var(--sand);color:var(--ink);padding:13px 19px;border-radius:999px}.nav-toggle{display:none;background:none;border:0;color:#fff;font-size:1.8rem}.hero{min-height:100vh;display:flex;align-items:center;position:relative;isolation:isolate;color:#fff;background:radial-gradient(circle at 74% 45%,rgba(214,201,170,.17),transparent 22%),linear-gradient(105deg,rgba(8,11,7,.98) 0 42%,rgba(20,26,16,.84) 61%,rgba(32,40,24,.92)),repeating-linear-gradient(135deg,#202819 0 26px,#1b2216 26px 52px);overflow:hidden}.hero:before{content:"";position:absolute;right:-6vw;bottom:-15vh;width:58vw;height:80vh;border:1px solid rgba(214,201,170,.18);border-radius:50%;box-shadow:0 0 0 70px rgba(214,201,170,.025),0 0 0 140px rgba(214,201,170,.018);transform:rotate(-12deg);z-index:-1}.hero:after{content:"BOILIE CONCEPT";position:absolute;left:-1vw;bottom:-5vh;font-family:"Barlow Condensed";font-size:18vw;font-weight:900;white-space:nowrap;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.055);z-index:-1}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:60px;align-items:center;padding:140px 0 80px}.hero-copy{position:relative;z-index:2}.hero h1{max-width:900px;margin:22px 0 26px}.hero h1 em{font-style:normal;color:var(--sand)}.hero p{max-width:650px;font-size:1.08rem;color:rgba(255,255,255,.7)}.hero-actions{display:flex;gap:13px;margin:32px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 23px;border-radius:999px;font-size:.86rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;border:1px solid transparent;transition:.25s}.btn:after{content:"↗";font-size:1rem}.btn-primary{background:var(--sand);color:var(--ink)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(214,201,170,.2)}.btn-ghost{border-color:rgba(255,255,255,.36);color:#fff}.btn-ghost:hover{background:#fff;color:var(--ink)}.btn-light{background:#fff;color:var(--ink)}.hero-points{display:flex;gap:8px;flex-wrap:wrap}.hero-points span{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);padding:8px 12px;border-radius:999px;font-size:.72rem;font-weight:800}.hero-visual{position:relative;min-height:610px;display:grid;place-items:center}.hero-logo-orbit{position:absolute;width:540px;height:540px;border-radius:50%;border:1px solid rgba(214,201,170,.22);animation:spin 30s linear infinite}.hero-logo-orbit:before,.hero-logo-orbit:after{content:"";position:absolute;border-radius:50%;border:1px dashed rgba(214,201,170,.18)}.hero-logo-orbit:before{inset:38px}.hero-logo-orbit:after{inset:85px}.hero-card{position:relative;width:min(100%,540px);aspect-ratio:1/1;background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);border-radius:48% 52% 42% 58% / 54% 45% 55% 46%;display:grid;place-items:center;box-shadow:0 45px 100px rgba(0,0,0,.35);animation:float 6s ease-in-out infinite}.hero-card img{width:88%;filter:drop-shadow(0 30px 30px rgba(0,0,0,.42))}.hero-stamp{position:absolute;right:1%;bottom:9%;width:138px;height:138px;border-radius:50%;background:var(--sand);color:var(--ink);display:grid;place-items:center;text-align:center;font-family:"Barlow Condensed";font-weight:900;text-transform:uppercase;transform:rotate(9deg);box-shadow:var(--shadow)}.hero-stamp:before{content:"";position:absolute;inset:7px;border:1px dashed var(--ink);border-radius:50%}.section{padding:112px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:50px}.section-head h2{max-width:850px}.section-intro{max-width:480px;color:#5c6256}.categories-section{background:var(--paper)}.category-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:repeat(2,280px);gap:18px}.category-card{position:relative;overflow:hidden;border-radius:var(--radius);padding:28px;color:#fff;background:linear-gradient(145deg,#38432a,#1b2117);border:1px solid rgba(255,255,255,.09);transition:.35s}.category-card:first-child{grid-row:span 2}.category-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 15%,rgba(214,201,170,.2),transparent 30%),repeating-linear-gradient(135deg,transparent 0 24px,rgba(255,255,255,.018) 24px 48px)}.category-card:after{content:attr(data-number);position:absolute;right:-5px;bottom:-54px;font-family:"Barlow Condensed";font-size:12rem;font-weight:900;color:rgba(255,255,255,.055)}.category-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.category-card .cat-icon{width:54px;height:54px;border:1px solid rgba(255,255,255,.2);border-radius:50%;display:grid;place-items:center;font-size:1.35rem}.category-card .cat-copy{position:absolute;left:28px;right:28px;bottom:26px;z-index:2}.category-card h3{font-size:clamp(2.1rem,3vw,3.5rem);margin-bottom:10px}.category-card p{max-width:360px;color:rgba(255,255,255,.65);margin:0}.category-card:nth-child(2){background:linear-gradient(145deg,#7e7459,#433b2d)}.category-card:nth-child(3){background:linear-gradient(145deg,#232821,#11140f)}.category-card:nth-child(4){background:linear-gradient(145deg,#6f503d,#34261e)}.section-dark{background:var(--ink);color:#fff;position:relative;overflow:hidden}.section-dark:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.035) 50%,transparent 50.2%),linear-gradient(transparent 49.8%,rgba(255,255,255,.035) 50%,transparent 50.2%);background-size:110px 110px}.product-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product-card{background:#f6f2e7;color:var(--ink);border-radius:24px;overflow:hidden;transition:.35s}.product-card:hover{transform:translateY(-8px)}.product-image{height:320px;background:linear-gradient(145deg,#cbc3ad,#ede7d8);position:relative;overflow:hidden}.product-image:after{content:"";position:absolute;inset:auto -10% -50% 20%;height:80%;border-radius:50%;border:1px solid rgba(17,21,15,.12)}.product-image img{width:100%;height:100%;object-fit:cover;transition:.5s}.product-card:hover .product-image img{transform:scale(1.05)}.placeholder{height:100%;display:grid;place-items:center;font-family:"Barlow Condensed";font-size:5rem;font-weight:900;color:rgba(17,21,15,.12)}.badge{position:absolute;top:16px;left:16px;background:var(--rust);color:#fff;padding:7px 11px;border-radius:999px;font-size:.68rem;font-weight:900;text-transform:uppercase;z-index:2}.product-body{padding:24px}.product-body small{font-size:.69rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:var(--olive)}.product-body h3{font-size:2rem;margin:8px 0}.product-body p{color:#666b60;font-size:.9rem;min-height:48px}.product-meta{display:flex;justify-content:space-between;align-items:center;padding-top:18px;border-top:1px solid var(--line)}.product-meta strong{font-size:1.3rem}.stock{font-size:.72rem;font-weight:900;color:var(--olive)}.story-section{background:var(--sand)}.story{display:grid;grid-template-columns:1.05fr .95fr;gap:90px;align-items:center}.story h2{max-width:700px}.story-copy{display:grid;grid-template-columns:1fr 1fr;gap:30px}.story-copy p{color:#4d5048}.story-stat{border-top:1px solid rgba(17,21,15,.25);padding-top:18px}.story-stat strong{display:block;font-family:"Barlow Condensed";font-size:3rem}.fish-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.fish-card{position:relative;border-radius:24px;overflow:hidden;min-height:380px;background:#252b20}.fish-card img{width:100%;height:100%;object-fit:cover;position:absolute}.fish-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 42%,rgba(0,0,0,.85))}.fish-card div{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;color:#fff}.fish-card strong,.fish-card span{display:block}.fish-card strong{font-family:"Barlow Condensed";font-size:1.7rem;text-transform:uppercase}.fish-card span{font-size:.8rem;color:rgba(255,255,255,.7)}.cta{padding:90px 0;background:var(--moss);color:#fff}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{max-width:900px}.newsletter{padding:85px 0;background:var(--khaki);color:#fff}.newsletter-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.newsletter h2{max-width:820px}.footer{background:#0c0f0b;color:#b9bdb4;padding:70px 0 22px}.footer-grid{display:grid;grid-template-columns:1.55fr 1fr 1fr 1fr;gap:55px}.footer-logo{width:180px;filter:drop-shadow(0 15px 25px rgba(0,0,0,.25));margin-bottom:20px}.footer h3{color:#fff;font-size:1.35rem;margin-bottom:16px}.footer a{display:block;margin:9px 0;font-size:.9rem}.footer a:hover{color:var(--sand)}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.1);margin-top:52px;padding-top:20px;font-size:.78rem}.catalog-hero,.page-hero{min-height:530px;display:flex;align-items:end;position:relative;color:#fff;background:linear-gradient(110deg,rgba(11,15,9,.95),rgba(31,40,22,.72)),repeating-linear-gradient(135deg,#39472c 0 30px,#303d25 30px 60px);padding:160px 0 70px;overflow:hidden}.catalog-hero.has-image{background-image:linear-gradient(90deg,rgba(7,10,6,.9),rgba(7,10,6,.2)),var(--banner);background-size:cover;background-position:center}.catalog-hero:after,.page-hero:after{content:"";position:absolute;right:-90px;bottom:-150px;width:520px;height:520px;border-radius:50%;border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 70px rgba(255,255,255,.025)}.catalog-hero-content{position:relative;z-index:2}.catalog-hero h1,.page-hero h1{font-size:clamp(4.2rem,9vw,8.5rem)}.catalog-hero p,.page-hero p{max-width:730px;font-size:1.05rem;color:rgba(255,255,255,.72)}.catalog-overlay{position:absolute;inset:0}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.catalog-toolbar select{border:1px solid var(--line);background:#fff;padding:12px 15px;border-radius:999px}.contact-grid,.product-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-form,.legal-content{background:#fff;padding:34px;border-radius:24px}.contact-form label{display:block;font-weight:800;margin:14px 0}.contact-form input,.contact-form textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:12px;margin-top:6px;font:inherit}.product-detail{padding:150px 0 120px;background:var(--cream)}.product-detail-image{background:#ddd4bf;border-radius:28px;overflow:hidden;min-height:520px}.product-detail-image img{width:100%;height:520px;object-fit:cover}.detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-meta span{padding:14px;background:#fff;border-radius:14px}.detail-price{font-size:2rem;font-weight:900}.alert{padding:13px 16px;border-radius:12px}.alert.success{background:#dce8d3}.alert.error{background:#f1d8d3}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:10px;top:10px;z-index:100;background:#fff;padding:10px}.text-link{font-weight:900}.empty-state{text-align:center;padding:70px;background:#fff;border-radius:24px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translateY(-14px) rotate(1deg)}}@media(max-width:1000px){.main-nav{display:none;position:absolute;left:24px;right:24px;top:84px;background:#11150f;padding:24px;border-radius:20px;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.nav-toggle{display:block}.hero-grid,.story,.contact-grid,.product-detail-grid{grid-template-columns:1fr}.hero-visual{min-height:500px}.category-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,270px)}.category-card:first-child{grid-row:auto}.product-grid,.fish-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.container{width:min(100% - 26px,1320px)}.nav-wrap{height:78px}.brand img{width:60px;height:54px}.brand span{display:none}.hero-grid{padding-top:110px}.hero{min-height:auto}.hero h1{font-size:4rem}.hero-visual{min-height:390px}.hero-card{width:340px}.hero-logo-orbit{width:355px;height:355px}.hero-stamp{width:100px;height:100px;font-size:.72rem}.section{padding:74px 0}.section-head,.cta-inner,.newsletter-inner{align-items:flex-start;flex-direction:column}.category-grid,.product-grid,.fish-grid,.footer-grid,.story-copy{grid-template-columns:1fr}.category-grid{grid-template-rows:none}.category-card{min-height:260px}.product-image{height:285px}.footer-bottom{flex-direction:column}.hero-actions{flex-direction:column}.btn{width:100%}.catalog-hero,.page-hero{min-height:440px;padding-top:130px}.catalog-toolbar{align-items:flex-start;flex-direction:column}.section-head h2{font-size:3.6rem}}

/* V5 — typographie affinée + contact vidéo */
h1{font-size:clamp(3.7rem,7.4vw,7.8rem)}
h2{font-size:clamp(2.35rem,4.2vw,4.65rem);line-height:1}
.section-head h2,.story h2,.cta h2,.newsletter h2{max-width:780px}
.section-intro{font-size:.98rem;max-width:610px}
.category-card h3{font-size:clamp(1.8rem,2.35vw,2.8rem)}
.story-stat strong{font-size:2.45rem}
.catalog-hero h1,.page-hero h1{font-size:clamp(3.55rem,7vw,6.7rem)}
.home-contact-section{background:linear-gradient(135deg,#171d14 0%,#242d1c 58%,#343426 100%);color:#fff;position:relative;overflow:hidden}
.home-contact-section:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;border:1px solid rgba(214,201,170,.13);right:-170px;top:-190px;box-shadow:0 0 0 65px rgba(214,201,170,.025),0 0 0 130px rgba(214,201,170,.018)}
.home-contact-head{position:relative;max-width:760px;margin-bottom:42px}
.home-contact-head h2{margin:12px 0 14px;max-width:720px}
.home-contact-head p{margin:0;color:rgba(255,255,255,.68);font-size:1rem;max-width:610px}
.home-contact-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:28px;align-items:stretch}
.home-contact-form{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(16px);padding:30px;border-radius:28px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.home-contact-form label{font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.72)}
.home-contact-form input,.home-contact-form textarea,.home-contact-form select{width:100%;margin-top:7px;padding:14px 15px;border-radius:13px;border:1px solid rgba(255,255,255,.13);background:rgba(8,11,7,.48);color:#fff;font:inherit;outline:none;transition:.2s}
.home-contact-form select{appearance:auto}
.home-contact-form select option{color:#111;background:#fff}
.home-contact-form input:focus,.home-contact-form textarea:focus,.home-contact-form select:focus{border-color:var(--sand);box-shadow:0 0 0 3px rgba(214,201,170,.11)}
.home-contact-form textarea{resize:vertical;min-height:145px}
.form-full{grid-column:1/-1}
.form-actions{display:flex;align-items:center;gap:18px}
.form-actions .btn{width:auto;border:0;cursor:pointer}
.form-actions span{font-size:.77rem;color:rgba(255,255,255,.5)}
.home-contact-media{position:relative;min-height:590px;border-radius:28px;overflow:hidden;background:#0b0e0a;border:1px solid rgba(255,255,255,.11);box-shadow:0 28px 75px rgba(0,0,0,.28)}
.home-contact-media video{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.home-contact-media:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 52%,rgba(7,9,6,.88))}
.video-caption{position:absolute;z-index:2;left:26px;right:26px;bottom:24px;display:flex;justify-content:space-between;align-items:end;gap:20px}
.video-caption strong{font-family:"Barlow Condensed";font-size:2rem;text-transform:uppercase}
.video-caption span{font-size:.75rem;color:rgba(255,255,255,.67);text-align:right}
@media(max-width:1000px){.home-contact-grid{grid-template-columns:1fr}.home-contact-media{min-height:460px}}
@media(max-width:650px){h1{font-size:3.45rem}h2{font-size:2.65rem}.section-head h2{font-size:2.65rem}.home-contact-form{grid-template-columns:1fr;padding:20px}.form-full{grid-column:auto}.form-actions{align-items:stretch;flex-direction:column}.form-actions .btn{width:100%}.home-contact-media{min-height:390px}.video-caption{align-items:flex-start;flex-direction:column}.video-caption span{text-align:left}}

/* V6 — icônes SVG des univers, sans numérotation décorative */
.category-card::after{content:none!important;display:none!important}
.category-card .cat-icon{position:relative;z-index:2;width:62px;height:62px;border-radius:18px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 14px 30px rgba(0,0,0,.12);backdrop-filter:blur(10px);transition:transform .3s ease,background .3s ease,border-color .3s ease}
.category-card .cat-icon svg{width:31px;height:31px;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 3px 8px rgba(0,0,0,.18))}
.category-card:hover .cat-icon{transform:translateY(-3px) scale(1.04);background:rgba(214,201,170,.16);border-color:rgba(214,201,170,.55)}
@media(max-width:650px){.category-card .cat-icon{width:56px;height:56px;border-radius:16px}.category-card .cat-icon svg{width:28px;height:28px}}

/* Catalogue global */
.catalog-category-nav{display:flex;flex-wrap:wrap;gap:.65rem;margin:0 0 1.5rem}
.catalog-category-nav a{display:inline-flex;align-items:center;min-height:42px;padding:.65rem 1rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.04);color:inherit;text-decoration:none;transition:.2s ease}
.catalog-category-nav a:hover,.catalog-category-nav a.active{background:var(--accent,#a9ad72);border-color:var(--accent,#a9ad72);color:#111}

/* Correctif V8 : le motif décoratif ne doit jamais bloquer les liens */
.section-dark::before{pointer-events:none;z-index:0}
.section-dark>.container{position:relative;z-index:1}
.section-dark .section-head,.section-dark .btn,.section-dark a{position:relative;z-index:2}


/* V9 — filtres des familles de bouillettes */
.subcategory-filter{display:flex;flex-wrap:wrap;gap:.65rem;margin:0 0 1.5rem;padding:.55rem;border:1px solid rgba(255,255,255,.09);background:rgba(21,26,17,.72);border-radius:18px;backdrop-filter:blur(12px)}
.subcategory-filter a{display:inline-flex;align-items:center;min-height:42px;padding:.65rem .95rem;border-radius:13px;color:rgba(255,255,255,.76);font-size:.9rem;font-weight:700;line-height:1.15;text-decoration:none;transition:.2s ease}
.subcategory-filter a:hover,.subcategory-filter a.active{background:#b7a36c;color:#12150f;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.product-subcategory{display:inline-flex;margin-bottom:.55rem;padding:.32rem .58rem;border:1px solid rgba(183,163,108,.32);border-radius:999px;color:#b7a36c;font-size:.72rem;font-weight:800;letter-spacing:.02em}
@media(max-width:720px){.subcategory-filter{display:grid;grid-template-columns:1fr}.subcategory-filter a{justify-content:center;text-align:center}}

/* V10 — page contact premium */
.contact-hero{position:relative;overflow:hidden;padding:170px 0 88px;color:#fff;background:radial-gradient(circle at 78% 40%,rgba(214,201,170,.16),transparent 25%),linear-gradient(110deg,#10140e 0%,#20291a 62%,#313a25 100%)}
.contact-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 34px,rgba(255,255,255,.018) 34px 68px);pointer-events:none}
.contact-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:60px;align-items:end}
.contact-hero h1{max-width:850px;margin:18px 0 22px;font-size:clamp(3.7rem,7vw,7rem)}
.contact-hero p{max-width:720px;margin:0;color:rgba(255,255,255,.7);font-size:1.04rem}
.contact-hero-badge{width:150px;height:150px;border-radius:34px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);backdrop-filter:blur(14px);transform:rotate(5deg)}
.contact-hero-badge svg{width:82px;height:82px;stroke:var(--sand);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.contact-premium-section{background:linear-gradient(180deg,#f5f1e7 0%,#ece6d8 100%)}
.contact-premium-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:30px;align-items:start}
.contact-panel{background:#fff;border:1px solid rgba(17,21,15,.09);border-radius:30px;padding:42px;box-shadow:0 24px 70px rgba(17,21,15,.08)}
.contact-panel-head{max-width:670px;margin-bottom:26px}
.contact-panel-head h2{margin:10px 0 14px;font-size:clamp(2.5rem,4vw,4.2rem)}
.contact-panel-head p{margin:0;color:#64695f}
.contact-form-premium{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form-premium label>span:first-child{display:block;margin-bottom:7px;font-size:.76rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:#4c5346}
.contact-form-premium input,.contact-form-premium textarea,.contact-form-premium select{width:100%;padding:15px 16px;border:1px solid rgba(17,21,15,.14);border-radius:14px;background:#faf8f2;color:var(--ink);font:inherit;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.contact-form-premium textarea{resize:vertical;min-height:170px}
.contact-form-premium input:focus,.contact-form-premium textarea:focus,.contact-form-premium select:focus{border-color:var(--olive);background:#fff;box-shadow:0 0 0 4px rgba(63,75,46,.1)}
.contact-field-full{grid-column:1/-1}
.contact-consent{display:flex!important;align-items:flex-start;gap:11px;padding:14px 16px;border-radius:14px;background:#f5f2e8;color:#656a60;font-size:.79rem;line-height:1.5}
.contact-consent input{width:18px!important;height:18px;margin-top:2px;accent-color:var(--olive);flex:0 0 auto}
.contact-consent a{text-decoration:underline;font-weight:800;color:var(--olive)}
.contact-submit{display:flex;align-items:center;gap:18px;padding-top:4px}
.contact-submit .btn{border:0;cursor:pointer}
.contact-submit small{color:#777b72}
.contact-side{display:grid;gap:18px}
.contact-video-card{position:relative;min-height:500px;overflow:hidden;border-radius:30px;background:#11150f;box-shadow:0 24px 70px rgba(17,21,15,.18)}
.contact-video-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.contact-video-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,11,7,.04) 25%,rgba(8,11,7,.86) 100%)}
.contact-video-copy{position:absolute;z-index:2;left:28px;right:28px;bottom:26px;color:#fff}
.contact-video-copy span{display:block;margin-bottom:7px;color:var(--sand);font-size:.72rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.contact-video-copy strong{display:block;max-width:420px;font-family:"Barlow Condensed";font-size:2.7rem;line-height:.95;text-transform:uppercase}
.contact-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-info-card{display:flex;align-items:center;gap:13px;min-width:0;padding:16px;border:1px solid rgba(17,21,15,.09);border-radius:18px;background:#fff;transition:.2s}
.contact-info-card:hover{transform:translateY(-3px);box-shadow:0 14px 35px rgba(17,21,15,.08)}
.contact-info-wide{grid-column:1/-1}
.contact-info-icon{width:46px;height:46px;flex:0 0 46px;border-radius:14px;display:grid;place-items:center;background:var(--moss);color:var(--sand)}
.contact-info-icon svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-info-card small{display:block;color:#777c72;font-size:.69rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.contact-info-card strong{display:block;overflow-wrap:anywhere;font-size:.88rem;line-height:1.35}
@media(max-width:1000px){.contact-hero-inner{grid-template-columns:1fr}.contact-hero-badge{display:none}.contact-premium-grid{grid-template-columns:1fr}.contact-side{grid-template-columns:1fr}.contact-video-card{min-height:460px}}
@media(max-width:650px){.contact-hero{padding:130px 0 65px}.contact-hero h1{font-size:3.45rem}.contact-panel{padding:24px;border-radius:22px}.contact-form-premium{grid-template-columns:1fr}.contact-field-full{grid-column:auto}.contact-submit{align-items:stretch;flex-direction:column}.contact-submit .btn{width:100%}.contact-video-card{min-height:390px;border-radius:22px}.contact-video-copy strong{font-size:2.15rem}.contact-info-grid{grid-template-columns:1fr}.contact-info-wide{grid-column:auto}}

/* V13 — correction lisibilité du consentement RGPD sur accueil et contact */
.home-contact-form .contact-consent,
.contact-form-premium .contact-consent{
    display:flex!important;
    align-items:flex-start;
    gap:13px;
    padding:17px 18px;
    border:1px solid rgba(63,75,46,.22);
    border-radius:15px;
    background:#f5f1e5;
    color:#20271b!important;
    font-size:.82rem;
    font-weight:600;
    line-height:1.55;
    letter-spacing:0;
    text-transform:none;
    cursor:pointer;
}
.home-contact-form .contact-consent span,
.contact-form-premium .contact-consent span{
    display:block;
    margin:0;
    color:#20271b!important;
    font-size:.82rem;
    font-weight:650;
    line-height:1.55;
    letter-spacing:0;
    text-transform:none;
}
.home-contact-form .contact-consent input[type="checkbox"],
.contact-form-premium .contact-consent input[type="checkbox"]{
    appearance:auto;
    width:21px!important;
    height:21px!important;
    min-width:21px;
    margin:1px 0 0!important;
    padding:0;
    border-radius:4px;
    accent-color:var(--olive);
    box-shadow:none;
    flex:0 0 21px;
    cursor:pointer;
}
.home-contact-form .contact-consent a,
.contact-form-premium .contact-consent a{
    color:#344626!important;
    font-weight:900;
    text-decoration:underline;
    text-underline-offset:3px;
}
.home-contact-form .contact-consent:hover,
.contact-form-premium .contact-consent:hover{
    border-color:rgba(63,75,46,.45);
    background:#faf7ee;
}
@media(max-width:650px){
    .home-contact-form .contact-consent,
    .contact-form-premium .contact-consent{padding:15px;font-size:.78rem}
    .home-contact-form .contact-consent span,
    .contact-form-premium .contact-consent span{font-size:.78rem}
}

/* V15 — harmonisation des fonds de la page d’accueil */
:root{
    --home-bg:#f3efe5;
    --home-card:#faf8f2;
    --home-dark:#1b2117;
}

/* Un seul fond principal clair pour assurer une continuité visuelle. */
.categories-section,
.section-dark,
.home-contact-section{
    background:var(--home-bg);
    color:var(--ink);
}

.categories-section{
    border-top:1px solid rgba(17,21,15,.06);
}

/* La sélection atelier n’est plus une rupture sombre. */
.section-dark{
    overflow:hidden;
    border-top:1px solid rgba(17,21,15,.07);
    border-bottom:1px solid rgba(17,21,15,.07);
}
.section-dark:before{
    opacity:.28;
    background:
        radial-gradient(circle at 90% 10%,rgba(125,134,87,.12),transparent 34%),
        linear-gradient(90deg,transparent 49.8%,rgba(17,21,15,.025) 50%,transparent 50.2%),
        linear-gradient(transparent 49.8%,rgba(17,21,15,.025) 50%,transparent 50.2%);
    background-size:auto,110px 110px,110px 110px;
}
.section-dark .eyebrow{color:var(--olive)}
.section-dark .btn-ghost{
    color:var(--ink);
    border-color:rgba(17,21,15,.28);
    background:rgba(255,255,255,.45);
}
.section-dark .btn-ghost:hover{
    color:#fff;
    background:var(--olive);
    border-color:var(--olive);
}

/* La fabrication devient la seule grande section sombre de l’accueil. */
.story-section{
    position:relative;
    overflow:hidden;
    background:var(--home-dark);
    color:#fff;
}
.story-section:before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 12% 20%,rgba(214,201,170,.13),transparent 34%),
        repeating-linear-gradient(135deg,transparent 0 36px,rgba(255,255,255,.014) 36px 72px);
}
.story-section>.container{position:relative;z-index:1}
.story-section .eyebrow{color:var(--sand)}
.story-section .story-copy p{color:rgba(255,255,255,.70)}
.story-section .story-stat{border-top-color:rgba(255,255,255,.20)}
.story-section .story-stat strong{color:var(--sand)}

/* Contact clair : contraste assuré par les cartes et la vidéo, pas par un nouveau fond. */
.home-contact-section{
    border-top:1px solid rgba(17,21,15,.07);
}
.home-contact-section:before{
    border-color:rgba(63,75,46,.11);
    box-shadow:0 0 0 65px rgba(63,75,46,.025),0 0 0 130px rgba(63,75,46,.016);
}
.home-contact-head h2{color:var(--ink)}
.home-contact-head p{color:#62685d}
.home-contact-section .eyebrow{color:var(--olive)}
.home-contact-form{
    background:rgba(250,248,242,.92);
    border-color:rgba(17,21,15,.10);
    box-shadow:0 24px 65px rgba(17,21,15,.08);
}
.home-contact-form label{
    color:#4d5447;
}
.home-contact-form input,
.home-contact-form textarea,
.home-contact-form select{
    border-color:rgba(17,21,15,.13);
    background:#fff;
    color:var(--ink);
}
.home-contact-form input:focus,
.home-contact-form textarea:focus,
.home-contact-form select:focus{
    border-color:var(--olive);
    box-shadow:0 0 0 4px rgba(63,75,46,.10);
}
.home-contact-form .form-actions span{color:#686e63}
.home-contact-form .alert.success{color:#24431e}
.home-contact-form .alert.error{color:#7a2f26}

/* Les sections claires gardent le même rythme et la même matière. */
body.home-page .section:not(.story-section):not(.hero){background-color:var(--home-bg)}

@media(max-width:650px){
    .section-dark .btn-ghost{background:#fff}
}


/* V16 — alternance premium kaki/anthracite sur la page d’accueil
   Suppression du fond crème uniforme et séparation nette des sections accolées. */
body.home-page{background:#171b15}

/* Nos univers : kaki profond, texte clair. */
body.home-page .categories-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 12%,rgba(214,201,170,.12),transparent 32%),
        linear-gradient(135deg,#526044 0%,#3e4a35 55%,#303a2a 100%);
    color:#fff;
    border:0;
}
body.home-page .categories-section:before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.32;
    background:repeating-linear-gradient(135deg,transparent 0 42px,rgba(255,255,255,.018) 42px 84px);
}
body.home-page .categories-section>.container{position:relative;z-index:1}
body.home-page .categories-section .eyebrow{color:var(--sand)}
body.home-page .categories-section .section-intro{color:rgba(255,255,255,.72)}

/* Sélection atelier : anthracite franc, clairement séparé de Nos univers. */
body.home-page .section-dark{
    position:relative;
    background:
        radial-gradient(circle at 88% 15%,rgba(125,134,87,.14),transparent 28%),
        linear-gradient(145deg,#1c211b 0%,#111510 100%);
    color:#fff;
    border:0;
    box-shadow:inset 0 1px rgba(255,255,255,.055),inset 0 -1px rgba(255,255,255,.04);
}
body.home-page .section-dark:before{
    opacity:.48;
    background:
        linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.026) 50%,transparent 50.2%),
        linear-gradient(transparent 49.8%,rgba(255,255,255,.026) 50%,transparent 50.2%);
    background-size:120px 120px;
}
body.home-page .section-dark .eyebrow{color:var(--sand)}
body.home-page .section-dark .btn-ghost{
    color:#fff;
    border-color:rgba(255,255,255,.34);
    background:rgba(255,255,255,.04);
}
body.home-page .section-dark .btn-ghost:hover{background:var(--sand);border-color:var(--sand);color:var(--ink)}

/* Atelier : olive terreux, distinct de l’anthracite précédent. */
body.home-page .story-section{
    background:
        radial-gradient(circle at 10% 20%,rgba(214,201,170,.14),transparent 32%),
        linear-gradient(120deg,#35412d 0%,#263220 62%,#20291b 100%);
    color:#fff;
}

/* Fishroom : kaki plus clair, sans crème. */
body.home-page .fishroom-home-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 84% 18%,rgba(214,201,170,.13),transparent 30%),
        linear-gradient(135deg,#657052 0%,#4d5942 52%,#3d4935 100%);
    color:#fff;
}
body.home-page .fishroom-home-section:before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(115deg,rgba(255,255,255,.025),transparent 38%);
}
body.home-page .fishroom-home-section>.container{position:relative;z-index:1}
body.home-page .fishroom-home-section .eyebrow{color:#e2d7bc}
body.home-page .fishroom-home-section .text-link{color:#fff}

/* Contact : retour anthracite, cartes claires pour la lisibilité. */
body.home-page .home-contact-section{
    position:relative;
    background:
        radial-gradient(circle at 15% 20%,rgba(125,134,87,.14),transparent 31%),
        linear-gradient(145deg,#1d231c 0%,#121611 100%);
    color:#fff;
    border:0;
}
body.home-page .home-contact-head h2{color:#fff}
body.home-page .home-contact-head p{color:rgba(255,255,255,.68)}
body.home-page .home-contact-section .eyebrow{color:var(--sand)}
body.home-page .home-contact-form{
    background:rgba(250,248,242,.97);
    border-color:rgba(255,255,255,.08);
    box-shadow:0 28px 75px rgba(0,0,0,.28);
}

/* Neutralise l’ancienne règle V15 qui imposait du crème à toutes les sections. */
body.home-page .section:not(.story-section):not(.hero){background-color:transparent}

@media(max-width:650px){
    body.home-page .section-dark .btn-ghost{background:rgba(255,255,255,.06);color:#fff}
}


/* V17 — page Notre histoire */
.history-hero{position:relative;overflow:hidden;min-height:520px;display:flex;align-items:flex-end;padding:170px 0 90px;background:radial-gradient(circle at 78% 20%,rgba(214,201,170,.18),transparent 30%),linear-gradient(135deg,#536047 0%,#303b2a 58%,#171c16 100%);color:#fff}
.history-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(135deg,transparent 0 48px,rgba(255,255,255,.018) 48px 96px)}
.history-hero-inner{position:relative;z-index:1;max-width:980px}.history-hero .eyebrow{color:var(--sand)}.history-hero h1{max-width:850px;margin:.35em 0 .25em;font-size:clamp(3.2rem,8vw,7.2rem);line-height:.9;letter-spacing:-.055em}.history-hero p{max-width:760px;margin:0;color:rgba(255,255,255,.73);font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.7}
.history-origin{background:#252c22;color:#fff}.history-split{display:grid;grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr);gap:8vw;align-items:start}.history-kicker{display:flex;align-items:center;gap:18px;color:var(--sand);text-transform:uppercase;letter-spacing:.14em;font-size:.78rem}.history-kicker span{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(214,201,170,.35);border-radius:50%}.history-copy-large h2{max-width:850px;margin:0 0 30px;font-size:clamp(2.2rem,5vw,4.6rem);line-height:1;letter-spacing:-.045em}.history-copy-large p{max-width:820px;color:rgba(255,255,255,.68);font-size:1.08rem;line-height:1.85}
.history-values{background:linear-gradient(135deg,#667255,#4b5742);color:#fff}.history-values .eyebrow{color:#e4d9be}.history-values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}.history-values-grid article{padding:38px 34px;border:1px solid rgba(255,255,255,.13);border-radius:24px;background:rgba(14,18,13,.16);backdrop-filter:blur(10px);transition:.25s ease}.history-values-grid article:hover{transform:translateY(-5px);background:rgba(14,18,13,.25)}.history-values-grid h3{margin:28px 0 12px;font-size:1.45rem}.history-values-grid p{margin:0;color:rgba(255,255,255,.68);line-height:1.7}.history-icon{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;border:1px solid rgba(214,201,170,.32);background:rgba(214,201,170,.09)}.history-icon svg{width:30px;height:30px;stroke:var(--sand);stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.history-workshop{background:linear-gradient(145deg,#171b16,#0f120e);color:#fff}.history-workshop-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9vw}.history-workshop .eyebrow{color:var(--sand)}.history-workshop h2{max-width:650px;margin-top:18px;font-size:clamp(2.2rem,4.6vw,4.4rem);line-height:1;letter-spacing:-.045em}.history-workshop p{margin:0 0 34px;color:rgba(255,255,255,.67);font-size:1.04rem;line-height:1.85}
.history-manifesto{background:radial-gradient(circle at 50% 0,rgba(214,201,170,.13),transparent 38%),linear-gradient(135deg,#414d36,#293322);color:#fff;text-align:center}.history-manifesto-inner{max-width:1050px}.history-manifesto .eyebrow{color:var(--sand)}.history-manifesto blockquote{margin:30px auto 42px;font-size:clamp(2rem,4.6vw,4.4rem);line-height:1.08;letter-spacing:-.04em;font-weight:700}.history-manifesto .btn{display:inline-flex}
@media(max-width:850px){.history-split,.history-workshop-grid{grid-template-columns:1fr;gap:42px}.history-values-grid{grid-template-columns:1fr}.history-hero{min-height:440px;padding:145px 0 70px}}
@media(max-width:600px){.history-hero h1{font-size:3.35rem}.history-values-grid article{padding:30px 25px}.history-kicker{margin-bottom:8px}}


/* V19 — tri catalogue moderne */
.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:34px 0 38px;padding:0;background:transparent}
.catalog-count{display:flex;align-items:center;gap:4px;color:var(--ink)}
.catalog-count strong{font-size:.9rem;font-weight:900}
.catalog-count span{font-size:.84rem;color:#697063}
.catalog-sort-form{display:flex;align-items:center;gap:12px;margin:0}
.catalog-sort-label{display:inline-flex;align-items:center;gap:8px;margin:0;color:#4d5545;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em;white-space:nowrap}
.catalog-sort-label svg{width:19px;height:19px;color:var(--olive)}
.catalog-sort-select{position:relative;min-width:220px}
.catalog-sort-select select{width:100%;height:54px;appearance:none;-webkit-appearance:none;padding:0 50px 0 20px;border:1px solid rgba(63,75,46,.24);border-radius:16px;background:rgba(255,255,255,.88);color:var(--ink);font:800 .88rem/1 Manrope,system-ui,sans-serif;cursor:pointer;outline:none;box-shadow:0 8px 28px rgba(17,21,15,.07);transition:border-color .22s,box-shadow .22s,transform .22s,background .22s}
.catalog-sort-select select:hover{border-color:rgba(63,75,46,.55);background:#fff;transform:translateY(-1px);box-shadow:0 12px 34px rgba(17,21,15,.1)}
.catalog-sort-select select:focus{border-color:var(--olive);background:#fff;box-shadow:0 0 0 4px rgba(63,75,46,.12),0 12px 34px rgba(17,21,15,.1)}
.catalog-sort-chevron{position:absolute;right:18px;top:50%;width:20px;height:20px;transform:translateY(-50%);pointer-events:none;color:var(--olive);transition:transform .22s}
.catalog-sort-select:focus-within .catalog-sort-chevron{transform:translateY(-50%) rotate(180deg)}
@media(max-width:650px){.catalog-toolbar{gap:16px}.catalog-count{align-items:flex-start;flex-direction:column;gap:0}.catalog-count span{font-size:.76rem}.catalog-sort-form{width:100%;align-items:flex-start;flex-direction:column;gap:8px}.catalog-sort-select{width:100%;min-width:0}.catalog-sort-select select{height:52px}.catalog-sort-label{font-size:.72rem}}

/* Pagination catalogue — 9 produits par page */
.catalog-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin:52px 0 0;padding-top:30px;border-top:1px solid rgba(17,21,15,.12)}
.pagination-pages{display:flex;align-items:center;justify-content:center;gap:8px}
.pagination-pages a,.pagination-pages span.active{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;font-size:.86rem;font-weight:900;transition:.22s}
.pagination-pages a{background:rgba(255,255,255,.72);border:1px solid rgba(63,75,46,.16);color:var(--ink);box-shadow:0 8px 22px rgba(17,21,15,.05)}
.pagination-pages a:hover{transform:translateY(-2px);background:#fff;border-color:rgba(63,75,46,.45);box-shadow:0 12px 28px rgba(17,21,15,.1)}
.pagination-pages span.active{background:var(--olive);color:#fff;box-shadow:0 12px 28px rgba(63,75,46,.25)}
.pagination-dots{padding:0 4px;color:#777e70;font-weight:900}
.pagination-arrow{min-height:48px;display:inline-flex;align-items:center;gap:9px;width:max-content;padding:0 18px;border-radius:15px;border:1px solid rgba(63,75,46,.2);background:rgba(255,255,255,.72);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;transition:.22s}
.pagination-arrow:last-child{justify-self:end}
.pagination-arrow svg{width:18px;height:18px}
a.pagination-arrow:hover{transform:translateY(-2px);background:var(--olive);border-color:var(--olive);color:#fff;box-shadow:0 12px 28px rgba(63,75,46,.22)}
.pagination-arrow.disabled{opacity:.38;cursor:not-allowed}
.pagination-summary{text-align:center;margin:16px 0 0;color:#697062;font-size:.78rem;font-weight:700}
@media(max-width:700px){.catalog-pagination{grid-template-columns:1fr 1fr;gap:14px}.pagination-pages{grid-column:1/-1;grid-row:1;flex-wrap:wrap}.pagination-arrow{grid-row:2;width:100%;justify-content:center}.pagination-arrow:last-child{justify-self:stretch}.pagination-pages a,.pagination-pages span.active{width:42px;height:42px;border-radius:12px}}


/* V21 — galerie multi-images produit */
.product-gallery{min-width:0}.product-gallery-main{background:#ddd4bf;border-radius:28px;overflow:hidden;min-height:520px;position:relative}.product-gallery-main img{width:100%;height:520px;object-fit:cover;transition:opacity .18s ease,transform .28s ease}.product-gallery-main img.switching{opacity:.35;transform:scale(.985)}.product-gallery-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}.product-thumb{appearance:none;border:2px solid transparent;padding:0;border-radius:15px;overflow:hidden;background:#d8cfba;cursor:pointer;aspect-ratio:1/1;transition:.22s}.product-thumb img{width:100%;height:100%;object-fit:cover}.product-thumb:hover{transform:translateY(-2px);border-color:rgba(63,75,46,.45)}.product-thumb.active{border-color:var(--olive);box-shadow:0 0 0 3px rgba(63,75,46,.14)}
.product-admin-main-image-preview{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-top:10px}.product-admin-main-image img{width:180px;height:135px;object-fit:cover;border-radius:14px;margin:0}.product-admin-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:14px;margin-top:12px}.product-admin-gallery-item{display:block!important;margin:0!important;padding:10px;border:1px solid rgba(17,21,15,.12);border-radius:16px;background:#fff}.product-admin-gallery-item img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:11px;margin-bottom:8px}.product-admin-gallery-item span{display:flex;align-items:center;gap:7px;font-size:.82rem}.product-admin-gallery-item input{width:auto!important;margin:0!important}.product-admin-remove-image{display:inline-flex!important;align-items:center!important;gap:8px!important;width:auto!important;padding:9px 11px!important;border:1px solid rgba(177,46,46,.28)!important;border-radius:10px!important;background:rgba(177,46,46,.08)!important;color:#a52b2b!important;font-weight:800!important;font-size:.8rem!important;cursor:pointer}.product-admin-remove-image input{width:auto!important;margin:0!important;accent-color:#a52b2b}.product-admin-main-image>small{display:block;margin-top:8px}
@media(max-width:650px){.product-gallery-main,.product-gallery-main img{min-height:360px;height:360px}.product-gallery-thumbs{grid-template-columns:repeat(4,minmax(0,1fr));overflow-x:auto}.product-thumb{min-width:72px}}

/* Product detail header and breadcrumb fixes */
.product-detail-content{min-width:0}
.product-detail-topline{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.back-link{display:inline-flex;align-items:center;gap:8px;width:max-content;padding:10px 15px;border:1px solid rgba(17,21,15,.14);border-radius:999px;background:#E2CC9B;color:#2B2B23;border-color:#C9AE73;font-size:.82rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;transition:.22s}
.back-link svg{width:17px;height:17px;flex:0 0 auto}
.back-link:hover{background:var(--olive);color:#fff;border-color:var(--olive);transform:translateX(-2px)}
.inline-badge{display:inline-flex;align-items:center;min-height:39px;padding:8px 13px;border-radius:999px;background:var(--rust);color:#fff;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.product-detail-content>h1{margin-top:0}
@media(max-width:650px){.product-detail{padding-top:112px}.product-detail-topline{margin-bottom:14px}.back-link{padding:9px 13px}}

/* V23 — libellé produit sans doublon catégorie / sous-catégorie */
.product-category-label{
    display:inline-flex;
    align-items:center;
    width:max-content;
    max-width:100%;
    margin:0 0 .65rem;
    color:#556043;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.12em;
    line-height:1.25;
    text-transform:uppercase;
}
.product-category-label.is-subcategory{
    padding:.38rem .66rem;
    border:1px solid rgba(183,163,108,.38);
    border-radius:999px;
    color:#9b844d;
    letter-spacing:.02em;
    text-transform:none;
}


/* V24 — tarifs dégressifs bouillettes classiques et solubles */
.product-price-stack{display:flex;flex-direction:column;align-items:flex-end;line-height:1.15;text-align:right}
.product-price-stack strong{white-space:nowrap}
.product-price-stack small{margin-top:5px;color:var(--olive);font-size:.68rem;font-weight:800;letter-spacing:0;text-transform:none}
.bulk-pricing{margin:24px 0;overflow:hidden;border:1px solid rgba(17,21,15,.13);border-radius:20px;background:#fff;box-shadow:0 14px 35px rgba(17,21,15,.08)}
.bulk-pricing-head,.bulk-pricing-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 18px}
.bulk-pricing-head{background:var(--ink2);color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.bulk-pricing-head strong{color:var(--sand)}
.bulk-pricing-row{border-top:1px solid rgba(17,21,15,.09)}
.bulk-pricing-row span{color:#52594d}
.bulk-pricing-row strong{font-size:1.18rem;white-space:nowrap}
.bulk-pricing-row.is-highlighted{background:rgba(125,134,87,.13)}
.bulk-pricing-row.is-highlighted strong{color:var(--olive)}
@media(max-width:650px){.product-meta{align-items:flex-end;gap:12px}.product-price-stack small{max-width:145px}.bulk-pricing-head,.bulk-pricing-row{padding:13px 14px}}

/* V25 — espace entre la description et le bouton de demande */
.product-request-btn{margin-top:32px}
@media(max-width:650px){.product-request-btn{margin-top:24px}}


/* V27 — fiche produit premium et SEO automatique */
.product-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:30px 0 0}
.product-fact{display:flex;align-items:center;gap:15px;min-height:96px;padding:18px;border:1px solid rgba(17,21,15,.11);border-radius:20px;background:rgba(255,255,255,.82);box-shadow:0 12px 30px rgba(17,21,15,.06)}
.product-fact-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:rgba(63,75,46,.1);color:var(--olive)}
.product-fact-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.product-fact small,.product-fact strong{display:block}.product-fact small{margin-bottom:4px;color:#697062;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.product-fact strong{font-size:.95rem;line-height:1.4}.product-fact.is-out .product-fact-icon{background:rgba(143,80,53,.12);color:var(--rust)}
.product-story{margin-top:58px;padding-top:42px;border-top:1px solid rgba(17,21,15,.14)}
.product-story-heading{display:grid;grid-template-columns:minmax(190px,.65fr) 1.35fr;align-items:end;gap:34px;margin-bottom:30px}
.product-story-heading .eyebrow{align-self:start}.product-story-heading h2{font-size:clamp(2.7rem,4.6vw,4.9rem);max-width:650px}
.product-story-copy{position:relative;padding:30px 32px 32px 38px;border:1px solid rgba(17,21,15,.1);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(214,201,170,.2));box-shadow:0 18px 45px rgba(17,21,15,.07);font-size:1rem;line-height:1.78}
.product-story-copy:before{content:"";position:absolute;left:0;top:28px;bottom:28px;width:4px;border-radius:0 4px 4px 0;background:var(--olive)}
.product-request-wrap{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:40px}.product-request-wrap .product-request-btn{margin-top:0}.product-request-wrap>span{max-width:330px;color:#687061;font-size:.78rem;line-height:1.5}
.seo-auto-note{display:flex;gap:10px;flex-direction:column;padding:16px 18px;border:1px solid rgba(63,75,46,.18);border-radius:15px;background:rgba(125,134,87,.09)}.seo-auto-note strong{color:#344127}.seo-auto-note span{color:#60675b;font-size:.84rem}
@media(max-width:750px){.product-facts{grid-template-columns:1fr}.product-story{margin-top:42px;padding-top:32px}.product-story-heading{grid-template-columns:1fr;gap:12px}.product-story-heading h2{font-size:3.15rem}.product-story-copy{padding:24px 22px 25px 28px}.product-request-wrap{align-items:stretch;flex-direction:column}.product-request-wrap>span{max-width:none}.product-request-wrap .btn{width:100%}}

/* V28 — fiche produit sans vide sous la galerie */
.product-story-wide{grid-column:1/-1;margin-top:72px;padding-top:52px}
.product-story-wide .product-story-heading{grid-template-columns:minmax(220px,.55fr) 1.45fr;max-width:1120px;margin-left:auto;margin-right:auto}
.product-story-layout{display:grid;grid-template-columns:minmax(240px,.55fr) 1.45fr;gap:56px;align-items:start;max-width:1120px;margin:0 auto}
.product-story-intro{position:sticky;top:130px;padding:26px 0 0}
.product-story-kicker{display:block;margin-bottom:14px;color:var(--olive);font-size:.72rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.product-story-intro p{max-width:300px;margin:0;color:#62675d;font-size:1rem;line-height:1.75}
.product-story-wide .product-story-copy{margin:0}
.product-story-wide .product-request-wrap{margin-top:36px;padding-top:0;border-top:0}
@media(max-width:1000px){.product-story-wide{margin-top:54px}.product-story-wide .product-story-heading,.product-story-layout{grid-template-columns:1fr;gap:18px}.product-story-intro{position:static;padding-top:0}.product-story-intro p{max-width:680px}.product-story-wide .product-story-copy{margin-top:8px}}

/* Notre histoire V30 — récit de société + production en images */
.history-company{background:#20271d;color:#fff}
.history-company-grid{display:grid;grid-template-columns:minmax(180px,.48fr) minmax(0,1.52fr);gap:8vw;align-items:start}
.history-company-index{position:sticky;top:135px;display:flex;flex-direction:column;gap:18px;color:var(--sand);text-transform:uppercase;letter-spacing:.14em;font-size:.78rem}
.history-company-index span{display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(214,201,170,.34);border-radius:50%;font-size:.9rem}
.history-company-copy .eyebrow{color:var(--sand)}
.history-company-copy h2{max-width:900px;margin:18px 0 34px;font-size:clamp(2.5rem,5vw,5rem);line-height:.98;letter-spacing:-.05em}
.history-rich-text{max-width:900px;color:rgba(255,255,255,.72);font-size:1.08rem;line-height:1.9}
.history-production{background:#111510;color:#fff;overflow:hidden}
.history-production-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:7vw;align-items:end;margin-bottom:52px}
.history-production-head .eyebrow{color:var(--sand)}
.history-production-head h2{max-width:800px;margin:15px 0 0;font-size:clamp(2.4rem,4.8vw,4.8rem);line-height:.98;letter-spacing:-.05em}
.history-production-head p{margin:0;color:rgba(255,255,255,.65);line-height:1.8}
.history-production-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:230px;gap:18px}
.history-production-card{position:relative;overflow:hidden;margin:0;border-radius:24px;background:#252c22;min-height:0}
.history-production-card img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .35s ease}
.history-production-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 46%,rgba(10,13,9,.88));pointer-events:none}
.history-production-card:hover img{transform:scale(1.045);filter:saturate(1.08)}
.history-production-card figcaption{position:absolute;z-index:2;left:24px;right:24px;bottom:20px;display:flex;align-items:center;gap:14px;color:#fff}
.history-production-card figcaption span{font-size:.72rem;letter-spacing:.16em;color:var(--sand)}
.history-production-card figcaption strong{font-size:1.05rem}
.history-production-card-1{grid-column:span 7;grid-row:span 2}
.history-production-card-2{grid-column:span 5}
.history-production-card-3{grid-column:span 5}
.history-production-card-4{grid-column:span 4}
.history-production-card-5{grid-column:span 4}
.history-production-card-6{grid-column:span 4}
.history-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
@media(max-width:900px){.history-company-grid,.history-production-head{grid-template-columns:1fr;gap:38px}.history-company-index{position:static;flex-direction:row;align-items:center}.history-production-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:260px}.history-production-card-1,.history-production-card-2,.history-production-card-3,.history-production-card-4,.history-production-card-5,.history-production-card-6{grid-column:span 1;grid-row:span 1}.history-production-card-1{grid-column:span 2}}
@media(max-width:600px){.history-production-grid{grid-template-columns:1fr;grid-auto-rows:250px}.history-production-card-1,.history-production-card-2,.history-production-card-3,.history-production-card-4,.history-production-card-5,.history-production-card-6{grid-column:span 1}.history-company-copy h2,.history-production-head h2{font-size:2.65rem}.history-rich-text{font-size:1rem}.history-production-card{border-radius:18px}}

/* V31 — partage des produits */
.product-card{position:relative}
.product-card-link{display:block;height:100%}
.product-share-trigger{font:inherit;border:0;cursor:pointer}
.product-share-trigger-card{position:absolute;z-index:5;top:16px;right:16px;display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 13px;border:1px solid rgba(255,255,255,.34);border-radius:999px;background:rgba(17,21,15,.78);color:#fff;font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;backdrop-filter:blur(12px);box-shadow:0 10px 24px rgba(0,0,0,.2);transition:.22s}
.product-share-trigger-card svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.product-share-trigger-card:hover,.product-share-trigger-card:focus-visible{transform:translateY(-2px);background:var(--sand);color:var(--ink);border-color:var(--sand);outline:none}
.product-share-section{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:32px;padding:20px 22px;border:1px solid rgba(17,21,15,.11);border-radius:20px;background:rgba(255,255,255,.66)}
.product-share-heading{display:flex;align-items:center;gap:13px}
.product-share-heading small,.product-share-heading strong{display:block}.product-share-heading small{color:#73796d;font-size:.65rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.product-share-heading strong{margin-top:2px;font-size:.92rem}
.product-share-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:rgba(63,75,46,.1);color:var(--olive)}
.product-share-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.product-share-trigger-detail{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:48px;padding:0 18px;border-radius:999px;background:var(--ink2);color:#fff;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.045em;transition:.22s}
.product-share-trigger-detail svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .22s}
.product-share-trigger-detail:hover,.product-share-trigger-detail:focus-visible{background:var(--olive);outline:none;transform:translateY(-2px)}.product-share-trigger-detail:hover svg{transform:translateX(3px)}
.share-dialog{width:min(520px,calc(100% - 28px));padding:0;border:0;border-radius:26px;background:#f8f5ec;color:var(--ink);box-shadow:0 35px 100px rgba(0,0,0,.36)}
.share-dialog::backdrop{background:rgba(8,11,7,.72);backdrop-filter:blur(5px)}
.share-dialog-inner{padding:28px}.share-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.share-dialog-head small{display:block;color:var(--olive);font-size:.68rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.share-dialog-head h2{margin-top:5px;font-size:2.15rem}.share-dialog-close{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid rgba(17,21,15,.13);border-radius:50%;background:#E2CC9B;color:#2B2B23;border-color:#C9AE73;cursor:pointer}.share-dialog-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.share-dialog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.share-option{display:flex;align-items:center;gap:12px;min-height:58px;padding:0 16px;border:1px solid rgba(17,21,15,.11);border-radius:16px;background:#E2CC9B;color:#2B2B23;border-color:#C9AE73;font-size:.82rem;font-weight:850;cursor:pointer;transition:.2s}.share-option:hover{transform:translateY(-2px);border-color:rgba(63,75,46,.42);box-shadow:0 10px 24px rgba(17,21,15,.08)}.share-option svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.share-copy-status{min-height:22px;margin:15px 0 0;color:var(--olive);font-size:.78rem;font-weight:800;text-align:center}
@media(max-width:650px){.product-share-trigger-card span{display:none}.product-share-trigger-card{width:42px;padding:0;justify-content:center}.product-share-section{align-items:stretch;flex-direction:column;padding:18px}.product-share-trigger-detail{width:100%}.share-dialog-grid{grid-template-columns:1fr}.share-dialog-inner{padding:22px}.share-dialog-head h2{font-size:1.8rem}}


/* V32 — formulaire contact kaki/anthracite et téléphone visible */
.home-contact-form{
    background:linear-gradient(145deg,rgba(42,50,37,.98),rgba(25,31,23,.98))!important;
    border:1px solid rgba(214,201,170,.18)!important;
    box-shadow:0 28px 80px rgba(0,0,0,.26)!important;
}
.home-contact-form label{color:rgba(255,255,255,.72)!important}
.home-contact-form input,
.home-contact-form textarea,
.home-contact-form select{
    background:rgba(10,14,9,.55)!important;
    border-color:rgba(214,201,170,.18)!important;
    color:#fff!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.home-contact-form input::placeholder,
.home-contact-form textarea::placeholder{color:rgba(255,255,255,.38)}
.home-contact-form select option{background:#1a2018;color:#fff}
.home-contact-form input:focus,
.home-contact-form textarea:focus,
.home-contact-form select:focus{
    border-color:var(--sand)!important;
    box-shadow:0 0 0 4px rgba(214,201,170,.12)!important;
}
.home-contact-form .form-actions span{color:rgba(255,255,255,.52)!important}
.home-contact-form .contact-consent{
    background:rgba(214,201,170,.10)!important;
    border-color:rgba(214,201,170,.24)!important;
    color:#f7f3e9!important;
}
.home-contact-form .contact-consent span{color:#f7f3e9!important}
.home-contact-form .contact-consent a{color:#e8d8b4!important}
.home-contact-form .contact-consent:hover{background:rgba(214,201,170,.15)!important;border-color:rgba(214,201,170,.42)!important}
.contact-phone-pill{display:inline-flex;align-items:center;gap:10px;margin-top:22px;padding:11px 16px;border:1px solid rgba(214,201,170,.28);border-radius:999px;background:rgba(214,201,170,.1);color:#fff;font-size:.82rem;font-weight:900;letter-spacing:.04em;transition:.22s}
.contact-phone-pill svg,.nav-phone svg,.footer-phone svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-phone-pill:hover{transform:translateY(-2px);background:var(--sand);color:var(--ink)}
.nav-phone{display:inline-flex;align-items:center;gap:8px;color:var(--sand);font-size:.78rem;white-space:nowrap}
.nav-phone:after{display:none!important}.nav-phone:hover{color:#fff}
.footer-phone{display:inline-flex!important;align-items:center;gap:9px;font-weight:850;color:var(--sand)!important}
.footer-phone:hover{color:#fff!important}
@media(max-width:1220px){.nav-phone span{display:none}.nav-phone{width:38px;height:38px;justify-content:center;border:1px solid rgba(214,201,170,.28);border-radius:50%}}
@media(max-width:900px){.main-nav .nav-phone{width:auto;height:auto;justify-content:flex-start;border:0;border-radius:0}.main-nav .nav-phone span{display:inline}}

.nav-cta{
display:inline-flex;
align-items:center;
justify-content:center;
height:48px;
padding:0 24px;
border-radius:14px!important;
background:linear-gradient(180deg,#cfbf98,#bda67c)!important;
font-weight:700;
letter-spacing:.4px;
box-shadow:0 8px 20px rgba(0,0,0,.18);
transition:.25s ease;
white-space:nowrap;
}
.nav-cta:hover{
transform:translateY(-2px);
background:linear-gradient(180deg,#d8c79f,#c4ad82)!important;
box-shadow:0 14px 28px rgba(0,0,0,.25);
}

/* V33 — correction visuelle et responsive du header */
.site-header .nav-wrap{
    gap:22px;
}
.site-header .brand{
    flex:0 0 auto;
    gap:10px;
    white-space:nowrap;
}
.site-header .brand img{
    width:64px;
    height:58px;
}
.site-header .brand span{
    font-size:.96rem;
    line-height:1;
    white-space:nowrap;
}
.site-header .main-nav{
    flex:1 1 auto;
    justify-content:flex-end;
    gap:20px;
    min-width:0;
    font-size:.76rem;
    letter-spacing:.025em;
}
.site-header .main-nav>a{
    flex:0 0 auto;
    white-space:nowrap;
    line-height:1.2;
}
.site-header .nav-phone{
    gap:7px;
    font-size:.72rem;
}
.site-header .nav-cta{
    height:46px;
    padding:0 20px;
    font-size:.75rem;
    line-height:1;
}

/* Le menu mobile s'active avant que les intitulés ne se coupent. */
@media(max-width:1180px){
    .site-header .nav-wrap{height:82px}
    .site-header .main-nav{
        display:none;
        position:absolute;
        left:24px;
        right:24px;
        top:72px;
        z-index:80;
        padding:22px;
        border:1px solid rgba(255,255,255,.10);
        border-radius:18px;
        background:rgba(17,21,15,.99);
        box-shadow:0 24px 60px rgba(0,0,0,.34);
        flex-direction:column;
        align-items:stretch;
        gap:4px;
        font-size:.82rem;
    }
    .site-header .main-nav.open{display:flex}
    .site-header .main-nav>a{
        width:100%;
        padding:12px 14px;
        border-radius:10px;
        white-space:nowrap;
    }
    .site-header .main-nav>a:not(.nav-cta):after{display:none}
    .site-header .main-nav>a:hover{background:rgba(255,255,255,.06)}
    .site-header .nav-phone{
        width:100%;
        height:auto;
        justify-content:flex-start;
        border:0;
        border-radius:10px;
    }
    .site-header .nav-phone span{display:inline}
    .site-header .nav-cta{
        width:100%;
        height:48px;
        margin-top:8px;
    }
    .site-header .nav-toggle{display:block}
}

@media(max-width:650px){
    .site-header .brand img{width:56px;height:50px}
    .site-header .brand span{display:inline;font-size:.84rem}
    .site-header .main-nav{left:13px;right:13px;top:68px}
}


/* Header alignment fix */
.site-header .container,
.header .container,
.navbar .container{
  max-width:1400px;
  margin:0 auto;
  padding:0 32px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.header-left{display:flex;align-items:center;gap:28px}
.header-menu{flex:1;display:flex;justify-content:center}
.header-menu ul{display:flex;align-items:center;gap:34px;margin:0;padding:0;flex-wrap:nowrap}
.header-right{display:flex;align-items:center;gap:24px;white-space:nowrap}

/* V35 — Sélection atelier : cartes sombres, sans fond crème */
body.home-page .section-dark .product-card{
    background:linear-gradient(155deg,#252b22 0%,#1b201a 100%);
    color:#fff;
    border:1px solid rgba(255,255,255,.09);
    box-shadow:0 22px 55px rgba(0,0,0,.26);
}
body.home-page .section-dark .product-card:hover{
    border-color:rgba(214,201,170,.28);
    box-shadow:0 30px 70px rgba(0,0,0,.34);
}
body.home-page .section-dark .product-image{
    background:linear-gradient(145deg,#343b30,#20261f);
}
body.home-page .section-dark .product-image:after{
    border-color:rgba(255,255,255,.09);
}
body.home-page .section-dark .product-body{
    background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0));
}
body.home-page .section-dark .product-body small,
body.home-page .section-dark .stock{
    color:var(--sand);
}
body.home-page .section-dark .product-body h3,
body.home-page .section-dark .product-meta strong{
    color:#fff;
}
body.home-page .section-dark .product-body p{
    color:rgba(255,255,255,.68);
}
body.home-page .section-dark .product-meta{
    border-top-color:rgba(255,255,255,.11);
}
body.home-page .section-dark .product-body .subcategory-badge,
body.home-page .section-dark .product-body .product-subcategory{
    background:rgba(214,201,170,.10);
    border-color:rgba(214,201,170,.35);
    color:var(--sand);
}
body.home-page .section-dark .product-card .tier-price-note,
body.home-page .section-dark .product-card .price-note{
    color:rgba(214,201,170,.85);
}


/* V36 — cartes sombres sur les catalogues et la Fishroom */
body.catalog-dark-page,
body.fishroom-dark-page{
    background:#141914;
    color:#fff;
}
body.catalog-dark-page main > .section,
body.fishroom-dark-page main > .section{
    background:
      radial-gradient(circle at 80% 5%,rgba(125,134,87,.10),transparent 28%),
      linear-gradient(180deg,#171d17 0%,#111510 100%);
}
body.catalog-dark-page .catalog-toolbar,
body.catalog-dark-page .catalog-count,
body.fishroom-dark-page .pagination-summary{
    color:rgba(255,255,255,.72);
}
body.catalog-dark-page .catalog-count strong{color:#fff}
body.catalog-dark-page .product-card{
    background:linear-gradient(155deg,#252b22 0%,#1b201a 100%);
    color:#fff;
    border:1px solid rgba(255,255,255,.09);
    box-shadow:0 22px 55px rgba(0,0,0,.26);
}
body.catalog-dark-page .product-card:hover{
    border-color:rgba(214,201,170,.30);
    box-shadow:0 30px 70px rgba(0,0,0,.36);
}
body.catalog-dark-page .product-image{
    background:linear-gradient(145deg,#343b30,#20261f);
}
body.catalog-dark-page .product-image:after{border-color:rgba(255,255,255,.09)}
body.catalog-dark-page .product-body{
    background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0));
}
body.catalog-dark-page .product-body h3,
body.catalog-dark-page .product-meta strong{color:#fff}
body.catalog-dark-page .product-body p{color:rgba(255,255,255,.68)}
body.catalog-dark-page .product-meta{border-top-color:rgba(255,255,255,.11)}
body.catalog-dark-page .stock,
body.catalog-dark-page .product-body small{color:var(--sand)}
body.catalog-dark-page .product-category-label,
body.catalog-dark-page .subcategory-badge,
body.catalog-dark-page .product-subcategory{
    background:rgba(214,201,170,.10);
    border-color:rgba(214,201,170,.35);
    color:var(--sand);
}
body.catalog-dark-page .product-card .tier-price-note,
body.catalog-dark-page .product-card .price-note{color:rgba(214,201,170,.86)}
body.catalog-dark-page .subcategory-filter a{
    background:rgba(255,255,255,.055);
    border-color:rgba(255,255,255,.12);
    color:rgba(255,255,255,.76);
}
body.catalog-dark-page .subcategory-filter a:hover,
body.catalog-dark-page .subcategory-filter a.active{
    background:var(--sand);
    border-color:var(--sand);
    color:var(--ink);
}
body.catalog-dark-page .catalog-sort-label{color:rgba(255,255,255,.72)}
body.catalog-dark-page .catalog-sort-select select{
    background:#242a22;
    color:#fff;
    border-color:rgba(214,201,170,.28);
}
body.catalog-dark-page .catalog-sort-chevron{color:var(--sand)}
body.catalog-dark-page .catalog-pagination a,
body.catalog-dark-page .catalog-pagination span,
body.fishroom-dark-page .catalog-pagination a,
body.fishroom-dark-page .catalog-pagination span{
    background:#242a22;
    color:#fff;
    border-color:rgba(255,255,255,.11);
}
body.catalog-dark-page .catalog-pagination .active,
body.fishroom-dark-page .catalog-pagination .active{
    background:var(--sand);
    color:var(--ink);
    border-color:var(--sand);
}
body.catalog-dark-page .catalog-pagination .disabled,
body.fishroom-dark-page .catalog-pagination .disabled{opacity:.38}
body.catalog-dark-page .empty-state,
body.fishroom-dark-page .empty-state{
    background:#20261f;
    color:#fff;
    border:1px solid rgba(255,255,255,.08);
}
body.fishroom-dark-page .fish-card{
    border:1px solid rgba(255,255,255,.09);
    box-shadow:0 22px 55px rgba(0,0,0,.30);
    transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;
}
body.fishroom-dark-page .fish-card:hover{
    transform:translateY(-7px);
    border-color:rgba(214,201,170,.30);
    box-shadow:0 30px 70px rgba(0,0,0,.40);
}
body.fishroom-dark-page .fish-card:after{
    background:linear-gradient(transparent 35%,rgba(10,13,9,.94));
}
body.fishroom-dark-page .fish-card p{color:rgba(255,255,255,.66)}
body.catalog-dark-page .pagination-summary{color:rgba(255,255,255,.58)}


/* V37 — fiche produit sombre, cohérente avec les catalogues */
body.product-dark-page{
    background:#141914;
    color:#fff;
}
body.product-dark-page main{
    background:
      radial-gradient(circle at 82% 4%,rgba(125,134,87,.12),transparent 28%),
      linear-gradient(180deg,#171d17 0%,#111510 100%);
}
body.product-dark-page .product-detail{
    background:transparent;
}
body.product-dark-page .product-gallery-main{
    background:linear-gradient(145deg,#343b30,#20261f);
    border:1px solid rgba(255,255,255,.09);
    box-shadow:0 25px 70px rgba(0,0,0,.32);
}
body.product-dark-page .product-thumb{
    background:#252b22;
    border-color:rgba(255,255,255,.12);
}
body.product-dark-page .product-thumb:hover,
body.product-dark-page .product-thumb.active{
    border-color:var(--sand);
    box-shadow:0 0 0 3px rgba(214,201,170,.14);
}
body.product-dark-page .product-detail-content h1,
body.product-dark-page .product-story-heading h2,
body.product-dark-page .detail-price{
    color:#fff;
}
body.product-dark-page .product-detail-content .lead,
body.product-dark-page .product-story-intro p,
body.product-dark-page .product-story-copy,
body.product-dark-page .product-request-wrap > span{
    color:rgba(255,255,255,.70);
}
body.product-dark-page .back-link{
    color:var(--sand);
}
body.product-dark-page .back-link:hover{
    color:#fff;
}
body.product-dark-page .inline-badge{
    background:rgba(214,201,170,.12);
    border:1px solid rgba(214,201,170,.35);
    color:var(--sand);
}
body.product-dark-page .bulk-pricing{
    background:linear-gradient(155deg,#252b22,#1b201a);
    border:1px solid rgba(255,255,255,.09);
    box-shadow:0 22px 55px rgba(0,0,0,.24);
}
body.product-dark-page .bulk-pricing-head,
body.product-dark-page .bulk-pricing-row{
    border-color:rgba(255,255,255,.10);
}
body.product-dark-page .bulk-pricing-head span,
body.product-dark-page .bulk-pricing-row span{
    color:rgba(255,255,255,.70);
}
body.product-dark-page .bulk-pricing-head strong,
body.product-dark-page .bulk-pricing-row strong{
    color:#fff;
}
body.product-dark-page .bulk-pricing-row.is-highlighted{
    background:rgba(214,201,170,.08);
}
body.product-dark-page .bulk-pricing-row.is-highlighted strong,
body.product-dark-page .bulk-pricing-row.is-highlighted span{
    color:var(--sand);
}
body.product-dark-page .product-fact{
    background:linear-gradient(155deg,#252b22,#1b201a);
    border:1px solid rgba(255,255,255,.09);
    box-shadow:0 18px 45px rgba(0,0,0,.22);
}
body.product-dark-page .product-fact small{
    color:var(--sand);
}
body.product-dark-page .product-fact strong{
    color:#fff;
}
body.product-dark-page .product-fact-icon{
    background:rgba(214,201,170,.10);
    color:var(--sand);
}
body.product-dark-page .product-story-wide{
    border-top-color:rgba(255,255,255,.12);
}
body.product-dark-page .product-story-copy{
    background:linear-gradient(155deg,#252b22,#1b201a);
    border:1px solid rgba(255,255,255,.09);
    box-shadow:0 24px 65px rgba(0,0,0,.25);
}
body.product-dark-page .product-story-copy:before{
    background:var(--khaki);
}
body.product-dark-page .product-story-kicker,
body.product-dark-page .eyebrow{
    color:var(--sand);
}
body.product-dark-page .product-request-wrap{
    border-top-color:rgba(255,255,255,.10);
}
body.product-dark-page .product-share-section{
    background:linear-gradient(155deg,#252b22,#1b201a);
    border-color:rgba(255,255,255,.09);
    box-shadow:0 18px 45px rgba(0,0,0,.20);
}
body.product-dark-page .product-share-heading small{
    color:rgba(255,255,255,.54);
}
body.product-dark-page .product-share-heading strong{
    color:#fff;
}
body.product-dark-page .product-share-icon{
    background:rgba(214,201,170,.10);
    color:var(--sand);
}
body.product-dark-page .product-share-trigger-detail{
    background:var(--sand);
    color:var(--ink);
}
body.product-dark-page .product-share-trigger-detail:hover,
body.product-dark-page .product-share-trigger-detail:focus-visible{
    background:#fff;
    color:var(--ink);
}
body.product-dark-page .placeholder{
    color:rgba(255,255,255,.12);
}
@media(max-width:700px){
  body.product-dark-page .product-facts{grid-template-columns:1fr}
  body.product-dark-page .product-story-wide{margin-top:44px}
}

/* V38 — Fishroom enrichie */
.fishroom-hero{min-height:610px;background:radial-gradient(circle at 85% 45%,rgba(214,201,170,.15),transparent 24%),linear-gradient(115deg,#090d09 0%,#182116 58%,#293222 100%)}
.fishroom-hero-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;position:relative;z-index:2}
.fishroom-hero-inner>div:first-child{max-width:800px}
.fishroom-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.fishroom-stats div{padding:22px 18px;border-radius:20px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);backdrop-filter:blur(10px)}
.fishroom-stats strong,.fishroom-stats span{display:block}.fishroom-stats strong{font-family:"Barlow Condensed";font-size:2.25rem;color:var(--sand);line-height:1}.fishroom-stats span{margin-top:8px;font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;color:rgba(255,255,255,.58)}
.fishroom-section-head h2{font-size:clamp(3rem,5vw,5.2rem)}
.fishroom-gallery-v2{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:310px;gap:20px}
.fish-card-v2{min-height:0;cursor:pointer;border-radius:26px;isolation:isolate}
.fish-card-v2.fish-card-featured{grid-column:span 2;grid-row:span 2}
.fish-card-v2 img{transition:transform .65s ease,filter .45s ease}
.fish-card-v2:hover img,.fish-card-v2:focus img{transform:scale(1.055);filter:saturate(1.08)}
.fish-card-v2:focus{outline:3px solid var(--sand);outline-offset:4px}
.fish-card-v2:after{background:linear-gradient(180deg,rgba(7,10,7,.04) 15%,rgba(7,10,7,.92) 100%)}
.fish-card-overlay{left:24px!important;right:24px!important;bottom:23px!important}
.fish-card-kicker{display:inline-flex!important;width:max-content;margin-bottom:8px;padding:6px 9px;border-radius:999px;background:rgba(214,201,170,.14);border:1px solid rgba(214,201,170,.28);color:var(--sand)!important;text-transform:uppercase;letter-spacing:.11em;font-size:.62rem!important;font-weight:900}
.fish-card-v2 strong{font-size:2rem!important}.fish-card-featured strong{font-size:clamp(2.6rem,4vw,4.5rem)!important}
.fish-card-v2 p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:10px 0 0;font-size:.84rem}
.fish-card-open{display:inline-flex;align-items:center;gap:8px;margin-top:15px;padding:9px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;font:inherit;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}
.fish-card-open svg{width:16px;height:16px}
.fishroom-lightbox{width:min(1180px,calc(100% - 34px));max-height:92vh;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:#171d17;color:#fff;box-shadow:0 35px 100px rgba(0,0,0,.6);overflow:hidden}
.fishroom-lightbox::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(7px)}
.fishroom-lightbox-grid{display:grid;grid-template-columns:1.2fr .8fr;min-height:620px}
.fishroom-lightbox-media{background:#0d110d}.fishroom-lightbox-media img{width:100%;height:100%;max-height:82vh;object-fit:contain}
.fishroom-lightbox-copy{padding:60px 42px;display:flex;flex-direction:column;justify-content:center}.fishroom-lightbox-copy h2{font-size:clamp(3rem,6vw,5.5rem);margin:20px 0}.fishroom-lightbox-meta{color:var(--sand);font-weight:800}.fishroom-lightbox-description{color:rgba(255,255,255,.72);white-space:pre-line}
.fishroom-lightbox-close{position:absolute;right:16px;top:16px;z-index:3;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(10,13,10,.72);color:#fff;font-size:1.8rem;cursor:pointer}
@media(max-width:950px){.fishroom-hero-inner{grid-template-columns:1fr}.fishroom-gallery-v2{grid-template-columns:repeat(2,1fr)}.fishroom-lightbox-grid{grid-template-columns:1fr}.fishroom-lightbox-copy{padding:32px}.fishroom-lightbox-media img{height:48vh}.fishroom-stats{max-width:650px}}
@media(max-width:650px){.fishroom-stats{grid-template-columns:1fr}.fishroom-gallery-v2{grid-template-columns:1fr;grid-auto-rows:390px}.fish-card-v2.fish-card-featured{grid-column:auto;grid-row:auto}.fish-card-featured strong{font-size:2.5rem!important}.fishroom-lightbox{max-height:94vh;overflow:auto}.fishroom-lightbox-media img{height:auto;max-height:52vh}.fishroom-lightbox-copy{padding:28px 22px}}

/* V39 Fishroom fixes */
.fishroom-stats-single{grid-template-columns:minmax(180px,260px);justify-content:end}
.fishroom-stats-single>div{min-height:118px}
.fishroom-lightbox-media{display:flex;align-items:center;justify-content:center;min-height:420px}
.fishroom-lightbox-media img[hidden]{display:none}
@media(max-width:950px){.fishroom-stats-single{justify-content:start}}


/* V40 — galerie multi-photos Fishroom */
.fishroom-lightbox-media{position:relative}
.fishroom-gallery-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(8,11,8,.72);color:#fff;font-size:2.1rem;line-height:1;cursor:pointer;backdrop-filter:blur(8px)}
.fishroom-gallery-nav:hover{background:var(--olive);color:#111}.fishroom-gallery-nav.prev{left:18px}.fishroom-gallery-nav.next{right:18px}
.fishroom-gallery-counter{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:4;padding:7px 12px;border-radius:999px;background:rgba(8,11,8,.72);color:#fff;font-weight:800;font-size:.78rem;backdrop-filter:blur(8px)}
@media(max-width:650px){.fishroom-gallery-nav{width:40px;height:40px;font-size:1.7rem}.fishroom-gallery-nav.prev{left:8px}.fishroom-gallery-nav.next{right:8px}}


/* Fishroom lightbox image reliability fix */
.fishroom-lightbox-media{
  position:relative;
  display:grid;
  place-items:center;
  min-height:620px;
  overflow:hidden;
  background:#0d110d;
}
.fishroom-lightbox-media img{
  display:block;
  width:100%;
  height:620px;
  max-height:82vh;
  object-fit:contain;
  object-position:center;
}
.fishroom-lightbox-media img[hidden]{display:none!important}
.fishroom-image-error{
  display:grid;
  place-items:center;
  min-height:220px;
  padding:30px;
  color:rgba(255,255,255,.62);
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.fishroom-image-error[hidden]{display:none!important}
@media(max-width:950px){
  .fishroom-lightbox-media{min-height:46vh}
  .fishroom-lightbox-media img{height:46vh;max-height:46vh}
}
@media(max-width:650px){
  .fishroom-lightbox-media{min-height:320px}
  .fishroom-lightbox-media img{height:320px;max-height:52vh}
}

/* V44 — galerie Fishroom multi-photos robuste */
.fishroom-lightbox-media{
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr) 64px;
  grid-template-rows:minmax(0,1fr) auto;
  align-items:center;
  gap:0;
  padding:18px 12px 12px;
  overflow:hidden;
}
.fishroom-lightbox-stage{
  position:relative;
  grid-column:2;
  grid-row:1;
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  min-height:520px;
  overflow:hidden;
  border-radius:18px;
  background:#0a0e0a;
  touch-action:pan-y;
}
.fishroom-lightbox-stage img{
  width:100%!important;
  height:100%!important;
  max-height:74vh!important;
  object-fit:contain!important;
  opacity:1;
  transition:opacity .18s ease;
}
.fishroom-lightbox-stage img.is-loading{opacity:.35}
.fishroom-gallery-nav{
  position:relative!important;
  top:auto!important;
  transform:none!important;
  justify-self:center;
  display:grid;
  place-items:center;
}
.fishroom-gallery-nav.prev{grid-column:1;grid-row:1;left:auto!important}
.fishroom-gallery-nav.next{grid-column:3;grid-row:1;right:auto!important}
.fishroom-gallery-nav:disabled{opacity:.25;cursor:not-allowed}
.fishroom-gallery-counter{
  position:absolute;
  right:14px;
  bottom:14px;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(8,11,8,.78);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.04em;
  backdrop-filter:blur(8px);
}
.fishroom-lightbox-thumbs{
  grid-column:1 / -1;
  grid-row:2;
  display:flex;
  gap:9px;
  justify-content:center;
  max-width:100%;
  padding:12px 4px 0;
  overflow-x:auto;
  scrollbar-width:thin;
}
.fishroom-lightbox-thumb{
  flex:0 0 72px;
  width:72px;
  height:58px;
  padding:3px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:10px;
  background:#161c16;
  cursor:pointer;
  opacity:.62;
  transition:.2s ease;
}
.fishroom-lightbox-thumb:hover,.fishroom-lightbox-thumb.active{
  opacity:1;
  border-color:var(--sand);
  box-shadow:0 0 0 2px rgba(200,183,141,.18);
}
.fishroom-lightbox-thumb img{width:100%;height:100%;object-fit:cover;border-radius:7px}
@media(max-width:950px){
  .fishroom-lightbox-media{grid-template-columns:48px minmax(0,1fr) 48px;padding:12px 6px 8px}
  .fishroom-lightbox-stage{min-height:42vh}
  .fishroom-lightbox-stage img{max-height:52vh!important}
}
@media(max-width:650px){
  .fishroom-lightbox-media{grid-template-columns:42px minmax(0,1fr) 42px}
  .fishroom-lightbox-stage{min-height:300px}
  .fishroom-lightbox-stage img{height:300px!important;max-height:48vh!important}
  .fishroom-lightbox-thumb{flex-basis:62px;width:62px;height:50px}
}

/* V45 — Galerie Fishroom : miniatures fiables et navigation nette */
.fishroom-lightbox-thumb.is-broken{display:none!important}
.fishroom-lightbox-thumbs{scrollbar-width:thin;scrollbar-color:rgba(210,194,151,.55) transparent}
.fishroom-lightbox-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.fishroom-gallery-nav:disabled{display:none!important}


/* V49 — Pages intérieures sombres, header et footer strictement inchangés */
/* Le thème est limité à <main> : aucune règle ne cible .site-header, .newsletter ou .footer. */
body.page-catalogue main,
body.page-contact main,
body.page-mentions-legales main,
body.page-confidentialite main,
body.page-cgv main{
  background:
    radial-gradient(circle at 82% 8%,rgba(125,134,87,.14),transparent 30%),
    linear-gradient(180deg,#10150f 0%,#151c14 55%,#111610 100%);
  color:#f5f3ec;
}

/* Catalogue */
body.page-catalogue main .catalog-hero{
  background:radial-gradient(circle at 78% 35%,rgba(214,201,170,.12),transparent 28%),linear-gradient(110deg,#0d110c,#1b2518 65%,#293321);
  color:#fff;
}
body.page-catalogue main .section{background:transparent!important}
body.page-catalogue main .catalog-category-nav a{
  color:rgba(255,255,255,.78);
  background:rgba(255,255,255,.045);
  border-color:rgba(255,255,255,.12);
}
body.page-catalogue main .catalog-category-nav a:hover,
body.page-catalogue main .catalog-category-nav a.active{
  color:#11150f;
  background:var(--sand);
  border-color:var(--sand);
}
body.page-catalogue main .catalog-count{color:#fff}
body.page-catalogue main .catalog-count span{color:rgba(255,255,255,.55)}
body.page-catalogue main .catalog-sort-label{color:rgba(255,255,255,.7)}
body.page-catalogue main .catalog-sort-select select{
  color:#fff;
  background:#1c241b;
  border-color:rgba(255,255,255,.14);
}
body.page-catalogue main .catalog-sort-select select option{background:#1c241b;color:#fff}
body.page-catalogue main .catalog-sort-chevron{color:var(--sand)}
body.page-catalogue main .product-card{
  background:linear-gradient(180deg,#21291f 0%,#191f18 100%);
  color:#fff;
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 18px 50px rgba(0,0,0,.18);
}
body.page-catalogue main .product-body p{color:rgba(255,255,255,.62)}
body.page-catalogue main .product-body small,
body.page-catalogue main .stock{color:var(--sand)}
body.page-catalogue main .product-meta{border-color:rgba(255,255,255,.12)}
body.page-catalogue main .product-meta strong{color:#fff}
body.page-catalogue main .catalog-pagination a,
body.page-catalogue main .catalog-pagination span{
  color:#fff;
  background:#1c241b;
  border-color:rgba(255,255,255,.12);
}
body.page-catalogue main .catalog-pagination .active{
  background:var(--sand);
  color:#11150f;
  border-color:var(--sand);
}
body.page-catalogue main .pagination-summary{color:rgba(255,255,255,.58)}
body.page-catalogue main .empty-state{background:#1b231a;color:#fff;border-color:rgba(255,255,255,.09)}

/* Contact — uniquement le contenu de la page */
body.page-contact main .home-contact-section{
  background:
    radial-gradient(circle at 88% 12%,rgba(214,201,170,.09),transparent 28%),
    linear-gradient(145deg,#10150f,#1b2419)!important;
  color:#fff;
}
body.page-contact main .home-contact-section:before{opacity:.35}
body.page-contact main .home-contact-head h2{color:#fff}
body.page-contact main .home-contact-head p{color:rgba(255,255,255,.66)}
body.page-contact main .home-contact-section .eyebrow{color:var(--sand)}
body.page-contact main .home-contact-form{
  background:linear-gradient(180deg,rgba(35,44,32,.96),rgba(24,31,23,.98))!important;
  border-color:rgba(255,255,255,.12)!important;
  box-shadow:0 30px 80px rgba(0,0,0,.28);
}
body.page-contact main .home-contact-form label{color:rgba(255,255,255,.74)!important}
body.page-contact main .home-contact-form input,
body.page-contact main .home-contact-form textarea,
body.page-contact main .home-contact-form select{
  color:#fff!important;
  background:#111711!important;
  border-color:rgba(255,255,255,.14)!important;
}
body.page-contact main .home-contact-form select option{background:#111711;color:#fff}
body.page-contact main .home-contact-form input:focus,
body.page-contact main .home-contact-form textarea:focus,
body.page-contact main .home-contact-form select:focus{
  border-color:var(--sand)!important;
  box-shadow:0 0 0 4px rgba(214,201,170,.1)!important;
}
body.page-contact main .home-contact-form .contact-consent{
  background:#20291e!important;
  color:rgba(255,255,255,.76)!important;
  border:1px solid rgba(255,255,255,.11)!important;
}
body.page-contact main .home-contact-form .contact-consent span{color:rgba(255,255,255,.76)!important}
body.page-contact main .home-contact-form .contact-consent a{color:var(--sand)!important}
body.page-contact main .home-contact-form .form-actions span{color:rgba(255,255,255,.55)}
body.page-contact main .contact-phone-pill{color:#11150f;background:var(--sand);border-color:var(--sand)}

/* Pages légales */
body.page-mentions-legales main .page-hero,
body.page-confidentialite main .page-hero,
body.page-cgv main .page-hero{
  color:#fff;
  background:radial-gradient(circle at 82% 25%,rgba(214,201,170,.12),transparent 26%),linear-gradient(110deg,#0d110c,#1b2518 70%,#283221);
}
body.page-mentions-legales main .section,
body.page-confidentialite main .section,
body.page-cgv main .section{background:transparent!important}
body.page-mentions-legales main .legal-content,
body.page-confidentialite main .legal-content,
body.page-cgv main .legal-content{
  max-width:1050px;
  padding:clamp(28px,5vw,64px);
  border-radius:28px;
  color:rgba(255,255,255,.76);
  background:linear-gradient(180deg,#1d251c,#171e17);
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 28px 80px rgba(0,0,0,.22);
}
body.page-mentions-legales main .legal-content h1,
body.page-mentions-legales main .legal-content h2,
body.page-mentions-legales main .legal-content h3,
body.page-confidentialite main .legal-content h1,
body.page-confidentialite main .legal-content h2,
body.page-confidentialite main .legal-content h3,
body.page-cgv main .legal-content h1,
body.page-cgv main .legal-content h2,
body.page-cgv main .legal-content h3{color:#fff}
body.page-mentions-legales main .legal-content a,
body.page-confidentialite main .legal-content a,
body.page-cgv main .legal-content a{color:var(--sand);text-decoration:underline}
body.page-mentions-legales main .legal-content hr,
body.page-confidentialite main .legal-content hr,
body.page-cgv main .legal-content hr{border-color:rgba(255,255,255,.1)}

@media(max-width:700px){
  body.page-mentions-legales main .legal-content,
  body.page-confidentialite main .legal-content,
  body.page-cgv main .legal-content{border-radius:20px;padding:24px}
}


/* V50 — Salon de la pêche de Montluçon */
.montlucon-event-section{position:relative;overflow:hidden;padding:clamp(68px,8vw,116px) 0;color:#fff;background:radial-gradient(circle at 84% 18%,rgba(213,193,145,.16),transparent 28%),linear-gradient(135deg,#171d15 0%,#27301f 52%,#131812 100%)}
.montlucon-event-section:before{content:"";position:absolute;inset:0;opacity:.13;pointer-events:none;background:repeating-linear-gradient(135deg,transparent 0 34px,rgba(255,255,255,.08) 34px 35px)}
.montlucon-event-card{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);min-height:520px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:34px;background:rgba(12,16,11,.52);box-shadow:0 38px 100px rgba(0,0,0,.34)}
.montlucon-event-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(38px,6vw,86px)}
.montlucon-event-kicker{display:inline-flex;align-items:center;gap:11px;margin-bottom:24px;color:#d8c89f;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.montlucon-event-kicker svg,.montlucon-event-meta svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.montlucon-event-copy h2{max-width:760px;margin:0;color:#fff;font-size:clamp(2.7rem,5.2vw,5.6rem);line-height:.94;letter-spacing:-.035em}
.montlucon-event-copy>p{max-width:680px;margin:28px 0 0;color:rgba(255,255,255,.7);font-size:clamp(1rem,1.3vw,1.16rem);line-height:1.75}
.montlucon-event-meta{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}.montlucon-event-meta span{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:10px 15px;color:#fff;font-weight:700;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.06)}
.montlucon-event-button{gap:12px;color:#11150f!important;background:linear-gradient(180deg,#dfd0a8,#c7b486)!important;border-color:transparent!important}.montlucon-event-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.montlucon-event-visual{position:relative;min-height:520px;overflow:hidden;background:#0c110c}.montlucon-event-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,16,11,.52),transparent 38%),linear-gradient(0deg,rgba(8,11,8,.32),transparent 45%);pointer-events:none}.montlucon-event-visual img{width:100%;height:100%;min-height:520px;object-fit:cover}
.montlucon-event-placeholder{display:flex;flex-direction:column;justify-content:center;width:100%;height:100%;min-height:520px;padding:60px;background:radial-gradient(circle at 70% 30%,rgba(222,205,158,.22),transparent 25%),repeating-linear-gradient(135deg,transparent 0 28px,rgba(255,255,255,.035) 28px 29px),linear-gradient(145deg,#39432d,#151b13)}
.montlucon-event-placeholder span{color:#d9c99d;font-size:clamp(1.1rem,2vw,1.7rem);font-weight:800;letter-spacing:.2em;text-transform:uppercase}.montlucon-event-placeholder strong{margin:18px 0;color:#fff;font-size:clamp(3.4rem,7vw,7.6rem);line-height:.82;letter-spacing:-.05em;text-transform:uppercase}.montlucon-event-placeholder small{color:rgba(255,255,255,.64);font-size:1rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.montlucon-event-stamp{position:absolute;right:28px;bottom:28px;z-index:2;display:grid;place-items:center;width:132px;height:132px;padding:16px;color:#172014;text-align:center;font-size:.72rem;font-weight:800;letter-spacing:.08em;line-height:1.45;text-transform:uppercase;border-radius:50%;background:#d9c99d;border:7px double rgba(23,32,20,.45);transform:rotate(-7deg);box-shadow:0 18px 42px rgba(0,0,0,.25)}.montlucon-event-stamp strong{font-size:1rem}
@media(max-width:920px){.montlucon-event-card{grid-template-columns:1fr}.montlucon-event-visual,.montlucon-event-visual img,.montlucon-event-placeholder{min-height:390px}}
@media(max-width:560px){.montlucon-event-section{padding:52px 0}.montlucon-event-card{border-radius:24px}.montlucon-event-copy{padding:32px 24px 38px}.montlucon-event-copy h2{font-size:clamp(2.35rem,13vw,3.65rem)}.montlucon-event-meta{flex-direction:column;align-items:stretch;width:100%}.montlucon-event-meta span{border-radius:14px}.montlucon-event-visual,.montlucon-event-visual img,.montlucon-event-placeholder{min-height:320px}.montlucon-event-placeholder{padding:34px 26px}.montlucon-event-stamp{right:18px;bottom:18px;width:104px;height:104px;font-size:.62rem}}

/* V51 — Salon Montluçon : version compacte et mieux équilibrée */
.montlucon-event-section{
  padding:clamp(46px,5vw,72px) 0;
  background:
    radial-gradient(circle at 88% 18%,rgba(213,193,145,.10),transparent 28%),
    linear-gradient(135deg,#151a13 0%,#222a1c 58%,#121611 100%);
}
.montlucon-event-section .container{max-width:1320px}
.montlucon-event-card{
  grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);
  min-height:360px;
  border-radius:26px;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
}
.montlucon-event-copy{
  padding:clamp(34px,4.5vw,58px);
}
.montlucon-event-kicker{
  margin-bottom:16px;
  font-size:.7rem;
  letter-spacing:.14em;
}
.montlucon-event-copy h2{
  max-width:720px;
  font-size:clamp(2.35rem,3.6vw,4.15rem);
  line-height:.98;
  letter-spacing:-.028em;
}
.montlucon-event-copy>p{
  max-width:650px;
  margin-top:20px;
  font-size:clamp(.96rem,1.05vw,1.08rem);
  line-height:1.65;
}
.montlucon-event-meta{margin:22px 0 24px}
.montlucon-event-meta span{
  min-height:40px;
  padding:8px 13px;
  font-size:.88rem;
}
.montlucon-event-button{
  min-height:48px;
  padding:13px 20px!important;
  border-radius:14px!important;
  font-size:.82rem!important;
}
.montlucon-event-visual,
.montlucon-event-visual img,
.montlucon-event-placeholder{
  min-height:360px;
}
.montlucon-event-placeholder{
  padding:40px 44px;
  justify-content:center;
  background:
    radial-gradient(circle at 76% 26%,rgba(222,205,158,.15),transparent 26%),
    repeating-linear-gradient(135deg,transparent 0 30px,rgba(255,255,255,.028) 30px 31px),
    linear-gradient(145deg,#333d29,#161c14);
}
.montlucon-event-placeholder span{
  font-size:clamp(.9rem,1.3vw,1.2rem);
  letter-spacing:.18em;
}
.montlucon-event-placeholder strong{
  margin:14px 0 12px;
  font-size:clamp(2.8rem,4.6vw,5.2rem);
  line-height:.88;
  letter-spacing:-.04em;
}
.montlucon-event-placeholder small{
  font-size:.82rem;
  letter-spacing:.14em;
}
.montlucon-event-stamp{
  right:20px;
  bottom:20px;
  width:92px;
  height:92px;
  padding:12px;
  border-width:5px;
  font-size:.55rem;
}
.montlucon-event-stamp strong{font-size:.78rem}
@media(max-width:920px){
  .montlucon-event-card{grid-template-columns:1fr;min-height:0}
  .montlucon-event-copy{padding:38px 34px}
  .montlucon-event-copy h2{font-size:clamp(2.4rem,8vw,3.7rem)}
  .montlucon-event-visual,
  .montlucon-event-visual img,
  .montlucon-event-placeholder{min-height:300px}
}
@media(max-width:560px){
  .montlucon-event-section{padding:38px 0}
  .montlucon-event-card{border-radius:20px}
  .montlucon-event-copy{padding:28px 22px 32px}
  .montlucon-event-copy h2{font-size:clamp(2.05rem,11.5vw,3rem)}
  .montlucon-event-copy>p{font-size:.94rem}
  .montlucon-event-visual,
  .montlucon-event-visual img,
  .montlucon-event-placeholder{min-height:250px}
  .montlucon-event-placeholder{padding:28px 24px}
  .montlucon-event-placeholder strong{font-size:clamp(2.5rem,14vw,3.8rem)}
  .montlucon-event-stamp{width:78px;height:78px;right:14px;bottom:14px}
}


/* V53 — Bandeau commandes sans zones vides */
:root{--announcement-height:36px}
.announcement-bar{
  position:fixed;
  inset:0 0 auto;
  z-index:75;
  height:var(--announcement-height);
  overflow:hidden;
  color:#161a12;
  background:linear-gradient(90deg,#d9c99f,#c7b481,#d9c99f);
  border-bottom:1px solid rgba(17,21,15,.22);
  box-shadow:0 3px 12px rgba(0,0,0,.12);
}
.announcement-viewport{
  width:100%;
  height:100%;
  overflow:hidden;
  display:flex;
  align-items:center;
}
.announcement-track{
  display:flex;
  align-items:center;
  flex:none;
  width:max-content;
  height:100%;
  transform:translate3d(0,0,0);
  will-change:transform;
}
.announcement-track.is-ready{
  animation:announcement-scroll var(--announcement-duration,28s) linear infinite;
}
.announcement-bar:hover .announcement-track,
.announcement-bar:focus-within .announcement-track{animation-play-state:paused}
.announcement-lane{
  display:flex;
  align-items:center;
  flex:none;
  min-width:max-content;
  height:100%;
}
.announcement-item{
  display:flex;
  align-items:center;
  flex:none;
  gap:24px;
  padding:0 24px 0 0;
  min-width:max-content;
  white-space:nowrap;
  font-size:.73rem;
  font-weight:900;
  letter-spacing:.085em;
  line-height:1;
  text-transform:uppercase;
}
.announcement-message{display:inline-flex;align-items:center;gap:10px}
.announcement-message svg{
  width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round
}
.announcement-contact{font-weight:900}
.announcement-separator{opacity:.55}
body.has-announcement .site-header{top:var(--announcement-height)}
@keyframes announcement-scroll{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(calc(-1 * var(--announcement-distance)),0,0)}
}
@media(prefers-reduced-motion:reduce){
  .announcement-track.is-ready{animation:none;transform:none}
  .announcement-lane:nth-child(2){display:none}
}
@media(max-width:650px){
  :root{--announcement-height:32px}
  .announcement-item{gap:18px;padding-right:18px;font-size:.66rem;letter-spacing:.065em}
  .announcement-message svg{width:15px;height:15px}
  body.has-announcement .site-header .main-nav{top:68px}
}



/* V54 — Fishroom : fenêtre toujours centrée et croix entièrement visible */
.fishroom-lightbox[open]{
  position:fixed!important;
  inset:50% auto auto 50%!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  width:min(1180px,calc(100vw - 32px))!important;
  height:min(760px,calc(100dvh - 32px))!important;
  max-height:calc(100dvh - 32px)!important;
  box-sizing:border-box;
  overflow:hidden!important;
}
.fishroom-lightbox-grid{
  height:100%!important;
  min-height:0!important;
  overflow:hidden;
}
.fishroom-lightbox-media{
  min-height:0!important;
  height:100%!important;
  box-sizing:border-box;
}
.fishroom-lightbox-stage{
  min-height:0!important;
  height:100%!important;
}
.fishroom-lightbox-copy{
  min-height:0;
  max-height:100%;
  overflow-y:auto;
  padding-top:72px!important;
  padding-bottom:42px!important;
  scrollbar-width:thin;
}
.fishroom-lightbox-close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  z-index:30!important;
  display:grid!important;
  place-items:center!important;
  width:44px!important;
  height:44px!important;
  min-width:44px;
  min-height:44px;
  padding:0!important;
  line-height:1!important;
  font-size:1.9rem!important;
  border-radius:50%!important;
  transform:none!important;
}
@media(max-width:950px){
  .fishroom-lightbox[open]{
    height:min(920px,calc(100dvh - 20px))!important;
    max-height:calc(100dvh - 20px)!important;
    width:calc(100vw - 20px)!important;
  }
  .fishroom-lightbox-grid{
    grid-template-columns:1fr!important;
    grid-template-rows:minmax(320px,52%) minmax(0,48%);
    overflow:auto;
  }
  .fishroom-lightbox-media{height:auto!important;min-height:320px!important}
  .fishroom-lightbox-copy{height:auto;max-height:none;padding:56px 26px 30px!important}
}
@media(max-width:650px){
  .fishroom-lightbox[open]{
    inset:10px 10px auto 10px!important;
    transform:none!important;
    width:auto!important;
    height:calc(100dvh - 20px)!important;
    max-height:calc(100dvh - 20px)!important;
    border-radius:20px!important;
  }
  .fishroom-lightbox-close{
    top:10px!important;
    right:10px!important;
    width:42px!important;
    height:42px!important;
  }
  .fishroom-lightbox-grid{
    grid-template-rows:minmax(280px,48%) minmax(0,52%);
  }
}

/* V55 — Fishroom : modale premium, équilibrée et confortable */
.fishroom-lightbox[open]{
  width:min(1120px,calc(100vw - 48px))!important;
  height:min(700px,calc(100dvh - 48px))!important;
  max-height:calc(100dvh - 48px)!important;
  border-radius:24px!important;
  border:1px solid rgba(218,202,157,.18)!important;
  background:#121812!important;
  box-shadow:0 40px 120px rgba(0,0,0,.72)!important;
}
.fishroom-lightbox-grid{
  grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr)!important;
  height:100%!important;
  background:#121812;
}
.fishroom-lightbox-media{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr) 52px!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  gap:14px 10px!important;
  height:100%!important;
  min-height:0!important;
  padding:24px 18px 18px!important;
  background:
    radial-gradient(circle at 50% 45%,rgba(88,104,68,.14),transparent 52%),
    #0b100b!important;
  border-right:1px solid rgba(255,255,255,.07);
}
.fishroom-lightbox-stage{
  grid-column:2!important;
  grid-row:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%;
  height:100%!important;
  min-height:0!important;
  overflow:hidden;
  border-radius:18px;
  background:#080c08;
}
.fishroom-lightbox-stage img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  border-radius:14px;
}
.fishroom-gallery-nav{
  position:static!important;
  align-self:center;
  justify-self:center;
  transform:none!important;
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.15)!important;
  background:rgba(255,255,255,.055)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.fishroom-gallery-nav.prev{grid-column:1!important;grid-row:1!important}
.fishroom-gallery-nav.next{grid-column:3!important;grid-row:1!important}
.fishroom-gallery-nav:hover{background:#d8c89f!important;color:#141812!important;border-color:#d8c89f!important}
.fishroom-gallery-counter{
  left:16px!important;
  bottom:14px!important;
  transform:none!important;
  min-width:64px;
  text-align:center;
  background:rgba(6,9,6,.82)!important;
  border:1px solid rgba(255,255,255,.09);
}
.fishroom-lightbox-thumbs{
  grid-column:1 / -1!important;
  grid-row:2!important;
  width:100%;
  min-height:68px;
  max-height:76px;
  padding:7px 4px 2px!important;
  justify-content:center!important;
  overflow-x:auto;
  overflow-y:hidden;
}
.fishroom-lightbox-thumb{
  flex:0 0 68px!important;
  width:68px!important;
  height:58px!important;
  border-radius:10px!important;
  opacity:.62;
  transition:opacity .2s ease,transform .2s ease,border-color .2s ease;
}
.fishroom-lightbox-thumb:hover,.fishroom-lightbox-thumb.active{
  opacity:1;
  transform:translateY(-2px);
}
.fishroom-lightbox-copy{
  position:relative;
  display:block!important;
  height:100%;
  max-height:none!important;
  min-height:0;
  padding:58px 42px 38px!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  background:linear-gradient(180deg,#192019 0%,#151b15 100%);
  scrollbar-width:thin;
  scrollbar-color:rgba(216,200,159,.52) rgba(255,255,255,.04);
}
.fishroom-lightbox-copy::-webkit-scrollbar{width:8px}
.fishroom-lightbox-copy::-webkit-scrollbar-track{background:rgba(255,255,255,.035)}
.fishroom-lightbox-copy::-webkit-scrollbar-thumb{background:rgba(216,200,159,.42);border-radius:999px}
.fishroom-lightbox-copy:after{
  content:"";
  position:sticky;
  display:block;
  left:0;
  right:0;
  bottom:-38px;
  height:38px;
  margin-top:12px;
  pointer-events:none;
  background:linear-gradient(transparent,#151b15);
}
.fishroom-lightbox-copy .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:11px;
  margin:0 54px 22px 0!important;
  color:#aebb7c!important;
  font-size:.72rem!important;
  letter-spacing:.18em!important;
}
.fishroom-lightbox-copy h2{
  margin:0 0 26px!important;
  color:#fff!important;
  font-size:clamp(2.6rem,4.2vw,4.7rem)!important;
  line-height:.94!important;
  letter-spacing:-.03em!important;
  overflow-wrap:anywhere;
}
.fishroom-lightbox-meta{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  margin:0 0 26px!important;
  padding:9px 13px;
  color:#dbcba4!important;
  font-size:.9rem;
  font-weight:800!important;
  border:1px solid rgba(219,203,164,.18);
  border-radius:999px;
  background:rgba(219,203,164,.07);
}
.fishroom-lightbox-description{
  margin:0!important;
  color:rgba(255,255,255,.72)!important;
  font-size:1rem;
  line-height:1.72!important;
  white-space:pre-line;
}
.fishroom-lightbox-close{
  position:absolute!important;
  top:16px!important;
  right:16px!important;
  width:42px!important;
  height:42px!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.16)!important;
  background:rgba(5,8,5,.7)!important;
  backdrop-filter:blur(10px);
  box-shadow:0 8px 24px rgba(0,0,0,.3);
}
.fishroom-lightbox-close:hover{background:#d8c89f!important;color:#111!important;border-color:#d8c89f!important}

@media(max-width:950px){
  .fishroom-lightbox[open]{
    width:calc(100vw - 24px)!important;
    height:calc(100dvh - 24px)!important;
    max-height:calc(100dvh - 24px)!important;
  }
  .fishroom-lightbox-grid{
    grid-template-columns:1fr!important;
    grid-template-rows:minmax(360px,55%) minmax(0,45%)!important;
    overflow:hidden!important;
  }
  .fishroom-lightbox-media{
    height:100%!important;
    min-height:0!important;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.07);
  }
  .fishroom-lightbox-copy{
    height:100%!important;
    max-height:100%!important;
    padding:44px 28px 30px!important;
  }
  .fishroom-lightbox-copy h2{font-size:clamp(2.3rem,8vw,4.2rem)!important}
}
@media(max-width:650px){
  .fishroom-lightbox[open]{
    inset:8px!important;
    width:auto!important;
    height:calc(100dvh - 16px)!important;
    max-height:calc(100dvh - 16px)!important;
    border-radius:18px!important;
  }
  .fishroom-lightbox-grid{
    grid-template-rows:minmax(290px,46%) minmax(0,54%)!important;
  }
  .fishroom-lightbox-media{
    grid-template-columns:38px minmax(0,1fr) 38px!important;
    gap:8px 4px!important;
    padding:14px 8px 10px!important;
  }
  .fishroom-gallery-nav{width:36px!important;height:36px!important;font-size:1.45rem!important}
  .fishroom-lightbox-thumbs{min-height:56px;max-height:62px}
  .fishroom-lightbox-thumb{flex-basis:56px!important;width:56px!important;height:48px!important}
  .fishroom-lightbox-copy{padding:38px 20px 26px!important}
  .fishroom-lightbox-copy h2{font-size:clamp(2rem,12vw,3.15rem)!important;margin-bottom:18px!important}
  .fishroom-lightbox-description{font-size:.94rem;line-height:1.62!important}
  .fishroom-lightbox-close{top:10px!important;right:10px!important;width:38px!important;height:38px!important}
}


/* V57 — Vidéos Fishroom */
.fish-card-v2>video,.fish-card>video{width:100%;height:100%;object-fit:cover;display:block;background:#080c08}
.fish-video-badge{position:absolute;z-index:3;top:18px;left:18px;padding:8px 12px;border-radius:999px;background:rgba(5,8,5,.78);border:1px solid rgba(255,255,255,.16);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(8px)}
.fishroom-lightbox-stage video{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;border-radius:14px;background:#050805}
.fishroom-lightbox-thumb{position:relative;overflow:hidden}.fishroom-lightbox-thumb video{width:100%;height:100%;object-fit:cover;pointer-events:none}.video-thumb-icon{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(0,0,0,.68);color:#fff;font-size:.7rem}

/* V58 — Recherche et pagination compacte Fishroom */
.fishroom-search{
  margin:0 0 34px;
  padding:22px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:22px;
  background:linear-gradient(145deg,#20261f,#171c17);
  box-shadow:0 20px 50px rgba(0,0,0,.22);
}
.fishroom-search>label{
  display:block;
  margin:0 0 11px;
  color:#fff;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.fishroom-search-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto;
  align-items:center;
  gap:10px;
  min-height:58px;
  padding:7px 8px 7px 17px;
  border:1px solid rgba(214,201,170,.24);
  border-radius:17px;
  background:#111611;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.fishroom-search-row:focus-within{
  border-color:rgba(214,201,170,.72);
  box-shadow:0 0 0 4px rgba(214,201,170,.09);
}
.fishroom-search-icon{display:grid;place-items:center;color:var(--sand)}
.fishroom-search-icon svg{width:22px;height:22px}
.fishroom-search input{
  width:100%;
  min-width:0;
  padding:0 6px;
  color:#fff;
  font:inherit;
  border:0;
  outline:0;
  background:transparent;
}
.fishroom-search input::placeholder{color:rgba(255,255,255,.42)}
.fishroom-search button,
.fishroom-search-clear{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:43px;
  padding:0 18px;
  border-radius:12px;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  white-space:nowrap;
}
.fishroom-search button{
  color:#161a13;
  border:0;
  background:var(--sand);
  cursor:pointer;
}
.fishroom-search button:hover{filter:brightness(1.06)}
.fishroom-search-clear{
  color:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.11);
  background:rgba(255,255,255,.045);
}
.fishroom-search-result{margin:13px 2px 0;color:rgba(255,255,255,.6);font-size:.9rem}
.fishroom-search-result strong{color:#fff}

.fishroom-pagination .pagination-pages{
  max-width:100%;
  flex-wrap:nowrap;
}
.fishroom-pagination .pagination-dots{
  display:grid;
  place-items:center;
  min-width:28px;
  color:rgba(255,255,255,.55);
  background:transparent!important;
  border:0!important;
}
@media(max-width:800px){
  .fishroom-search-row{grid-template-columns:auto minmax(0,1fr) auto}
  .fishroom-search-clear{grid-column:2/3;justify-self:start;min-height:34px;padding:0 11px}
  .fishroom-search button{grid-column:3;grid-row:1/3;align-self:stretch}
}
@media(max-width:560px){
  .fishroom-search{padding:15px;border-radius:17px}
  .fishroom-search-row{grid-template-columns:auto minmax(0,1fr);padding:10px 12px;gap:8px}
  .fishroom-search button{grid-column:1/-1;grid-row:auto;width:100%;min-height:45px}
  .fishroom-search-clear{grid-column:1/-1;justify-self:start}
  .fishroom-pagination .pagination-pages{gap:6px}
  .fishroom-pagination .pagination-pages a,
  .fishroom-pagination .pagination-pages span.active{width:39px;height:39px;border-radius:11px}
  .fishroom-pagination .pagination-dots{min-width:18px}
}


/* V60 — Actions J’aime et partage Fishroom */
.fish-card-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:14px}
.fish-card-actions .fish-card-open{margin:0!important}
.fish-like-button,.fish-share-button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;
  color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(10,14,10,.62);
  backdrop-filter:blur(10px);font:inherit;font-size:.72rem;font-weight:900;cursor:pointer;transition:.2s ease
}
.fish-share-button{width:42px;padding:0}
.fish-like-button svg,.fish-share-button svg{width:18px;height:18px;flex:none}
.fish-like-button:hover,.fish-share-button:hover{transform:translateY(-1px);border-color:#d9c99d;background:#d9c99d;color:#151914}
.fish-like-button.liked{color:#151914;border-color:#d9c99d;background:#d9c99d}
.fish-like-button.liked svg{fill:#8f3d37}
.fish-like-button:disabled{opacity:.55;cursor:wait}
.fishroom-lightbox-actions{display:flex;align-items:center;gap:10px;margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1)}
.fishroom-lightbox-actions .fish-like-button,.fishroom-lightbox-actions .fish-share-button{width:auto;min-height:48px;padding:0 18px;background:rgba(255,255,255,.06)}
.fishroom-lightbox-actions .fish-like-button strong{font-size:.8rem;color:#d9c99d}
.fishroom-lightbox-actions .fish-share-button{gap:9px}
.fishroom-toast{
  position:fixed;left:50%;bottom:28px;z-index:99999;max-width:min(90vw,420px);padding:13px 18px;
  color:#151914;font-weight:850;text-align:center;border-radius:12px;background:#d9c99d;
  box-shadow:0 18px 50px rgba(0,0,0,.35);opacity:0;pointer-events:none;transform:translate(-50%,18px);
  transition:.24s ease
}
.fishroom-toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:560px){
  .fish-card-actions{gap:7px}
  .fish-card-actions .fish-card-open{flex:1}
  .fishroom-lightbox-actions{align-items:stretch;flex-direction:column}
  .fishroom-lightbox-actions .fish-like-button,.fishroom-lightbox-actions .fish-share-button{width:100%}
}


/* V61 — Fishroom actions, search and larger readable cards */
.fishroom-section .container{max-width:1480px}
.fishroom-search-v59{max-width:980px!important;margin:0 auto 42px!important}
.fishroom-gallery-v2{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:520px!important;gap:24px!important}
.fish-card-v2,.fish-card-v2.fish-card-featured{grid-column:auto!important;grid-row:auto!important;min-height:520px!important}
.fish-card-v2 .fish-card-overlay{padding:30px!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;min-height:100%!important}
.fish-card-v2 strong,.fish-card-featured strong{font-size:clamp(2rem,3vw,3.15rem)!important;line-height:.96!important;max-width:90%!important}
.fish-card-v2 p{display:block!important;max-width:90%!important;max-height:4.8em!important;overflow:hidden!important;font-size:1rem!important;line-height:1.6!important;color:rgba(255,255,255,.78)!important}
.fish-card-actions{position:relative!important;z-index:8!important;margin-top:20px!important;gap:10px!important}
.fish-card-actions button{pointer-events:auto!important;position:relative!important;z-index:9!important}
.fish-card-open,.fish-like-button,.fish-share-button{min-height:46px!important}
.fish-like-button,.fish-share-button{background:rgba(12,16,12,.88)!important;border-color:rgba(255,255,255,.25)!important}
.fish-share-button{width:46px!important}
.fishroom-share-page{background:linear-gradient(145deg,#111610,#20271c);color:#fff;min-height:70vh}
.fishroom-share-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:28px;background:#151b14;box-shadow:0 35px 90px rgba(0,0,0,.35)}
.fishroom-share-image img{width:100%;height:100%;min-height:650px;object-fit:cover}
.fishroom-share-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(35px,5vw,72px)}
.fishroom-share-copy h1{font-size:clamp(3rem,6vw,6rem);line-height:.9;margin:18px 0 24px}.fishroom-share-copy p{color:rgba(255,255,255,.72);line-height:1.75}.fishroom-share-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
@media(max-width:900px){.fishroom-gallery-v2{grid-template-columns:1fr!important;grid-auto-rows:480px!important}.fish-card-v2,.fish-card-v2.fish-card-featured{min-height:480px!important}.fishroom-share-card{grid-template-columns:1fr}.fishroom-share-image img{min-height:360px;max-height:520px}}
@media(max-width:560px){.fishroom-gallery-v2{grid-auto-rows:450px!important}.fish-card-v2,.fish-card-v2.fish-card-featured{min-height:450px!important}.fish-card-v2 .fish-card-overlay{padding:22px!important}.fish-card-v2 strong{font-size:2.1rem!important}.fish-card-v2 p{font-size:.9rem!important;max-width:100%!important}.fishroom-search-v59-inner{padding:13px!important}}


/* V63 — Bouton Partager de la modale Fishroom */
.fishroom-lightbox-actions .fish-share-button.fish-share-button-modal{
  width:auto!important;
  min-width:132px!important;
  padding:0 18px!important;
  gap:10px!important;
  flex:none!important;
  white-space:nowrap!important;
}
.fishroom-lightbox-actions .fish-share-button.fish-share-button-modal svg{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
}
.fishroom-lightbox-actions .fish-share-button.fish-share-button-modal span{
  display:inline-block!important;
  line-height:1!important;
}
@media(max-width:560px){
  .fishroom-lightbox-actions .fish-share-button.fish-share-button-modal{
    width:100%!important;
  }
}

/* V64 — Actions Fishroom : états, survols et menu de partage */
.fishroom-lightbox-actions .fish-like-button,
.fishroom-lightbox-actions .fish-share-button{
  color:#f7f4eb!important;
  background:#20261e!important;
  border:1px solid rgba(217,201,157,.34)!important;
  opacity:1!important;
}
.fishroom-lightbox-actions .fish-like-button:hover,
.fishroom-lightbox-actions .fish-share-button:hover,
.fishroom-lightbox-actions .fish-like-button:focus-visible,
.fishroom-lightbox-actions .fish-share-button:focus-visible{
  color:#171b15!important;
  background:#d9c99d!important;
  border-color:#d9c99d!important;
  box-shadow:0 10px 28px rgba(0,0,0,.24)!important;
}
.fishroom-lightbox-actions .fish-like-button.liked{
  color:#fff!important;
  background:#7d342f!important;
  border-color:#a7554d!important;
}
.fishroom-lightbox-actions .fish-like-button.liked:hover{
  color:#fff!important;
  background:#934139!important;
  border-color:#bd6a61!important;
}
.fishroom-lightbox-actions .fish-like-button.liked svg{fill:#e8a49d!important;color:#fff!important}
.fishroom-lightbox-actions .fish-like-button strong{color:#eadbb4!important}
.fishroom-lightbox-actions .fish-like-button.is-loading{opacity:.6!important;pointer-events:none!important}
.fishroom-share-menu{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px;padding:12px;
  border:1px solid rgba(255,255,255,.1);border-radius:16px;background:#10150f;
  box-shadow:0 18px 45px rgba(0,0,0,.34)
}
.fishroom-share-menu[hidden]{display:none!important}
.fishroom-share-option,.fishroom-share-menu .fishroom-share-copy{
  display:flex;align-items:center;justify-content:center;min-height:42px;padding:0 12px;border-radius:11px;
  color:#fff!important;text-decoration:none!important;font:inherit;font-size:.78rem;font-weight:850;
  border:1px solid rgba(255,255,255,.11);background:#1b2119;cursor:pointer
}
.fishroom-share-option:hover,.fishroom-share-menu .fishroom-share-copy:hover{color:#171b15!important;background:#d9c99d;border-color:#d9c99d}
@media(max-width:560px){.fishroom-share-menu{grid-template-columns:1fr}}


/* V70 — réseaux sociaux dans le footer */
.footer-socials{display:flex;align-items:center;gap:9px;margin-top:18px}
.footer-socials a{display:grid!important;place-items:center;width:42px;height:42px!important;padding:0!important;border:1px solid rgba(255,255,255,.13);border-radius:50%;color:#f3ead2!important;background:rgba(255,255,255,.045);transition:.2s ease}
.footer-socials a:hover{color:#172016!important;border-color:#d9c99d;background:#d9c99d;transform:translateY(-2px)}
.footer-socials svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.footer-socials svg path{fill:currentColor;stroke:none}
.footer-socials svg rect,.footer-socials svg circle{fill:none;stroke:currentColor}


/* V72 — contact ancré, visible sous le header et pièces jointes */
body.page-contact main .home-contact-section{
  padding-top:calc(112px + 94px + var(--announcement-height,0px))!important;
  scroll-margin-top:calc(94px + var(--announcement-height,0px));
}
.home-contact-section{scroll-margin-top:calc(94px + var(--announcement-height,0px))}
.contact-attachments{display:grid!important;gap:10px}
.contact-attachments-title{font-size:.76rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.contact-upload-box{
  position:relative;display:grid!important;place-items:center;min-height:155px;padding:22px;
  border:1.5px dashed rgba(214,201,170,.35);border-radius:18px;
  background:rgba(255,255,255,.035);text-align:center;cursor:pointer;transition:.22s ease
}
.contact-upload-box:hover{border-color:var(--sand);background:rgba(214,201,170,.08)}
.contact-upload-box input{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;cursor:pointer}
.contact-upload-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:10px;border-radius:14px;color:var(--sand);background:rgba(214,201,170,.1)}
.contact-upload-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-upload-box strong{color:#fff;font-size:.9rem}
.contact-upload-box small{max-width:440px;margin-top:5px;color:rgba(255,255,255,.5);font-size:.72rem;line-height:1.5}
.contact-files-list{display:grid!important;gap:7px}
.contact-files-list>span{display:grid;grid-template-columns:27px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 11px;border-radius:11px;background:rgba(255,255,255,.055)}
.contact-files-list b{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;color:#151a13;background:var(--sand);font-size:.7rem}
.contact-files-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:rgba(255,255,255,.78);font-size:.75rem}
.contact-files-list small{color:rgba(255,255,255,.45);font-size:.68rem}
.home-contact-form .alert{scroll-margin-top:calc(110px + var(--announcement-height,0px))}
@media(max-width:900px){
  body.page-contact main .home-contact-section{padding-top:calc(82px + var(--announcement-height,0px) + 66px)!important}
}


/* V73 — Cloudflare Turnstile sombre dans les formulaires */
.contact-turnstile{display:flex;align-items:center;min-height:68px;padding:12px 14px;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:rgba(5,9,5,.34);overflow:hidden}
.contact-turnstile .cf-turnstile{width:100%;max-width:100%}
.contact-turnstile iframe{max-width:100%!important}
.turnstile-config-warning{width:100%;padding:12px 14px;border:1px solid rgba(215,166,59,.28);border-radius:11px;color:#ead8a5;background:rgba(215,166,59,.08);font-size:.78rem;font-weight:750}
@media(max-width:380px){.contact-turnstile{padding:10px 7px}}

/* Footer premium v74 */
.footer{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,#090c09 0%,#10150f 55%,#0a0d0a 100%);color:rgba(245,244,238,.68);padding:82px 0 24px;border-top:1px solid rgba(214,201,170,.12)}
.footer:before{content:"";position:absolute;inset:0;z-index:-2;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,#000,transparent 75%)}
.footer-glow{position:absolute;z-index:-1;width:520px;height:520px;right:-210px;top:-270px;border-radius:50%;background:radial-gradient(circle,rgba(214,201,170,.13),transparent 67%);filter:blur(8px);pointer-events:none}
.footer-main{display:grid;grid-template-columns:minmax(280px,1.45fr) repeat(3,minmax(150px,1fr));gap:clamp(34px,5vw,76px);align-items:start}
.footer-brand-block{max-width:360px}.footer-brand{display:inline-flex!important;margin:0 0 24px!important}.footer-logo{width:184px;margin:0;filter:drop-shadow(0 18px 28px rgba(0,0,0,.42));transition:transform .3s ease}.footer-brand:hover .footer-logo{transform:translateY(-3px)}
.footer-description{max-width:340px;margin:0;color:rgba(245,244,238,.72);font-size:.96rem;line-height:1.75}
.footer-signature{display:flex;align-items:center;gap:11px;margin-top:22px;color:var(--sand);font-size:.7rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.footer-signature span{width:32px;height:1px;background:currentColor}
.footer-column h3{position:relative;color:#fff;font-size:1.22rem;letter-spacing:.035em;margin:8px 0 25px;padding-bottom:15px}.footer-column h3:after{content:"";position:absolute;left:0;bottom:0;width:30px;height:2px;border-radius:99px;background:var(--sand)}
.footer-column>a:not(.footer-contact-link):not(.footer-socials a){display:table;margin:0 0 12px;color:rgba(245,244,238,.66);font-size:.89rem;transition:color .2s ease,transform .2s ease}.footer-column>a:not(.footer-contact-link):not(.footer-socials a):hover{color:#fff;transform:translateX(4px)}
.footer-contact-link{display:flex!important;align-items:center;gap:12px;margin:0 0 14px!important;color:rgba(245,244,238,.76)!important;font-size:.88rem!important;line-height:1.45;word-break:break-word;transition:color .2s ease}.footer-contact-link:hover{color:var(--sand)!important}.footer-contact-link svg{flex:0 0 18px;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.footer-phone{font-weight:850;color:var(--sand)!important}.footer-address{margin-top:3px;color:rgba(245,244,238,.58);font-size:.84rem;line-height:1.65}
.footer-socials{display:flex;align-items:center;gap:10px;margin-top:24px}.footer-socials a{display:grid!important;place-items:center;width:42px;height:42px!important;margin:0!important;padding:0!important;border:1px solid rgba(255,255,255,.13);border-radius:14px;color:#f3ead2!important;background:rgba(255,255,255,.04);transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease}.footer-socials a:hover{color:#11150f!important;border-color:var(--sand);background:var(--sand);transform:translateY(-3px)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:58px;padding-top:22px;border-top:1px solid rgba(255,255,255,.09);font-size:.74rem;color:rgba(245,244,238,.48)}.footer-bottom-right{display:flex;align-items:center;gap:18px}.footer-admin-link{display:grid!important;place-items:center;width:31px;height:31px;margin:0!important;border:1px solid rgba(255,255,255,.1);border-radius:50%;color:rgba(245,244,238,.42)!important;background:rgba(255,255,255,.025);transition:.2s ease}.footer-admin-link:hover{color:var(--sand)!important;border-color:rgba(214,201,170,.45);background:rgba(214,201,170,.08);transform:translateY(-2px)}.footer-admin-link svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:1000px){.footer-main{grid-template-columns:1.25fr 1fr 1fr}.footer-contact{grid-column:2/4}.footer-brand-block{grid-row:1/3}}
@media(max-width:700px){.footer{padding-top:62px}.footer-main{grid-template-columns:1fr 1fr;gap:38px 26px}.footer-brand-block{grid-column:1/-1;grid-row:auto;max-width:none}.footer-contact{grid-column:1/-1}.footer-bottom{align-items:flex-start;flex-direction:column;margin-top:42px}.footer-bottom-right{width:100%;justify-content:space-between}.footer-logo{width:165px}}
@media(max-width:420px){.footer-main{grid-template-columns:1fr}.footer-brand-block,.footer-contact{grid-column:auto}.footer-column h3{margin-top:0}.footer-bottom-right{align-items:flex-start}.footer-bottom-right>span{max-width:220px}}

/* V75 — respiration sous le header et en-tête Contact mieux équilibré */
@media (min-width:1001px){
  body.home-page .hero-grid{
    padding-top:190px;
  }

  body.page-contact main .home-contact-section{
    padding-top:calc(152px + 94px + var(--announcement-height,0px))!important;
  }

  body.page-contact main .home-contact-head{
    max-width:1120px;
    margin-bottom:48px;
  }

  body.page-contact main .home-contact-head h2{
    max-width:1120px;
    font-size:clamp(4.2rem,5.8vw,6.35rem);
    line-height:.92;
    text-wrap:balance;
  }

  body.page-contact main .home-contact-head p{
    max-width:760px;
  }
}

@media (min-width:651px) and (max-width:1000px){
  body.home-page .hero-grid{padding-top:165px}
  body.page-contact main .home-contact-section{
    padding-top:calc(112px + 82px + var(--announcement-height,0px))!important;
  }
  body.page-contact main .home-contact-head,
  body.page-contact main .home-contact-head h2{max-width:900px}
}

/* V76 — page Contact : en-tête pleine largeur, sans vide inutile à droite */
@media (min-width:1001px){
  body.page-contact main .home-contact-section{
    padding-top:calc(150px + 94px + var(--announcement-height,0px))!important;
  }

  body.page-contact main .home-contact-section>.container{
    width:min(1420px,calc(100% - 64px));
  }

  body.page-contact main .home-contact-head{
    width:100%;
    max-width:none!important;
    margin:0 0 52px;
    padding-right:0;
  }

  body.page-contact main .home-contact-head .eyebrow{
    margin-bottom:18px;
  }

  body.page-contact main .home-contact-head h2{
    width:100%;
    max-width:1280px!important;
    margin:0 0 22px;
    font-size:clamp(4rem,5vw,5.65rem)!important;
    line-height:.94!important;
    letter-spacing:-.035em;
    text-wrap:balance;
  }

  body.page-contact main .home-contact-head p{
    width:100%;
    max-width:820px!important;
    margin:0 0 22px;
    font-size:1.04rem;
    line-height:1.65;
  }

  body.page-contact main .contact-phone-pill{
    margin-top:0;
  }

  body.page-contact main .home-contact-grid{
    grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
    gap:34px;
  }
}

@media (min-width:1180px){
  body.page-contact main .home-contact-head h2{
    max-width:1380px!important;
    font-size:clamp(4.2rem,4.85vw,5.8rem)!important;
  }
}

@media (min-width:651px) and (max-width:1000px){
  body.page-contact main .home-contact-head{
    width:100%;
    max-width:none!important;
  }
  body.page-contact main .home-contact-head h2{
    width:100%;
    max-width:none!important;
    font-size:clamp(3.5rem,8vw,5.2rem);
    text-wrap:balance;
  }
  body.page-contact main .home-contact-head p{max-width:720px!important}
}

@media (max-width:650px){
  body.page-contact main .home-contact-head,
  body.page-contact main .home-contact-head h2{
    width:100%;
    max-width:none!important;
  }
  body.page-contact main .home-contact-head h2{
    font-size:clamp(2.85rem,14vw,4rem);
    line-height:.96;
    text-wrap:balance;
  }
}

/* V77 — correction définitive de l’en-tête Contact : largeur réellement exploitée */
@media (min-width:1001px){
  body.page-contact main .home-contact-section>.container{
    width:min(1500px,calc(100% - 72px))!important;
  }

  body.page-contact main .home-contact-head{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0 0 42px!important;
  }

  body.page-contact main .home-contact-head h2{
    display:block!important;
    width:min(100%,1320px)!important;
    max-width:none!important;
    margin:18px 0 20px!important;
    font-size:clamp(4rem,4.75vw,5.55rem)!important;
    line-height:.93!important;
    letter-spacing:-.04em!important;
    text-wrap:wrap!important;
    white-space:normal!important;
  }

  body.page-contact main .home-contact-head p{
    width:min(100%,900px)!important;
    max-width:none!important;
    margin:0 0 20px!important;
  }

  body.page-contact main .home-contact-grid{
    width:100%!important;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;
    gap:30px!important;
  }
}

@media (min-width:1350px){
  body.page-contact main .home-contact-head h2{
    width:min(100%,1420px)!important;
    font-size:clamp(4.35rem,4.55vw,5.7rem)!important;
  }
}

/* V78 — ACCUEIL : titre de la section Contact réellement sur toute la longueur */
@media (min-width:1101px){
  body.home-page .home-contact-section > .container{
    width:min(1500px,calc(100% - 72px))!important;
  }

  body.home-page .home-contact-head{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0 0 44px!important;
    padding:0!important;
  }

  body.home-page .home-contact-head .eyebrow{
    margin-bottom:18px!important;
  }

  body.home-page .home-contact-head h2{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0 0 20px!important;
    font-size:clamp(3.55rem,4vw,4.55rem)!important;
    line-height:.94!important;
    letter-spacing:-.035em!important;
    white-space:nowrap!important;
    text-wrap:nowrap!important;
  }

  body.home-page .home-contact-head p{
    width:100%!important;
    max-width:880px!important;
    margin:0 0 20px!important;
  }

  body.home-page .home-contact-grid{
    width:100%!important;
    grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr)!important;
    gap:30px!important;
  }
}

@media (min-width:801px) and (max-width:1100px){
  body.home-page .home-contact-head,
  body.home-page .home-contact-head h2{
    width:100%!important;
    max-width:none!important;
  }

  body.home-page .home-contact-head h2{
    font-size:clamp(3.2rem,6.3vw,4.35rem)!important;
    line-height:.95!important;
    white-space:normal!important;
    text-wrap:wrap!important;
  }
}

@media (max-width:800px){
  body.home-page .home-contact-head,
  body.home-page .home-contact-head h2{
    width:100%!important;
    max-width:none!important;
  }

  body.home-page .home-contact-head h2{
    white-space:normal!important;
    text-wrap:balance!important;
  }
}



/* Gestionnaire de consentement RGPD / CNIL */
.footer-cookie-settings{appearance:none;border:0;background:none;color:inherit;font:inherit;text-align:left;padding:0;cursor:pointer;opacity:.84;transition:opacity .2s,color .2s}
.footer-cookie-settings:hover,.footer-cookie-settings:focus-visible{color:var(--sand);opacity:1}
.cookie-dialog-open{overflow:hidden}
.cookie-consent{position:fixed;inset:0;z-index:100000;display:grid;align-items:end;padding:20px}
.cookie-consent[hidden]{display:none!important}
.cookie-consent__backdrop{position:absolute;inset:0;background:rgba(3,7,4,.58);backdrop-filter:blur(3px)}
.cookie-consent__panel{position:relative;width:min(1120px,100%);margin:0 auto;padding:26px;background:linear-gradient(145deg,#172017,#0f150f);border:1px solid rgba(216,195,145,.34);border-radius:22px;box-shadow:0 24px 80px rgba(0,0,0,.58);color:#f7f4eb}
.cookie-consent__brand,.cookie-consent__header{display:flex;align-items:center;gap:14px}
.cookie-consent__header{justify-content:space-between}
.cookie-consent__icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(216,195,145,.45);border-radius:50%;color:#d8c391;background:rgba(216,195,145,.08)}
.cookie-consent__eyebrow{display:block;margin-bottom:3px;color:#d8c391;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.cookie-consent h2{margin:0;font-size:clamp(1.45rem,2.8vw,2.15rem);line-height:1.05;color:#fff}
.cookie-consent p{max-width:920px;margin:18px 0 0;color:rgba(255,255,255,.82);line-height:1.55}
.cookie-consent__legal{font-size:.83rem!important;color:rgba(255,255,255,.62)!important}
.cookie-consent a{color:#ead8aa;text-decoration:underline;text-underline-offset:3px}
.cookie-consent__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:11px;margin-top:24px}
.cookie-consent__actions--main{align-items:stretch}
.cookie-button{min-height:46px;padding:11px 19px;border:1px solid rgba(216,195,145,.5);border-radius:999px;font:inherit;font-weight:800;cursor:pointer;transition:transform .18s,border-color .18s,background .18s,color .18s}
.cookie-button:hover{transform:translateY(-1px)}
.cookie-button:focus-visible,.cookie-consent__close:focus-visible,.cookie-switch input:focus-visible+span{outline:3px solid #fff;outline-offset:3px}
.cookie-button--secondary{background:transparent;color:#fff}
.cookie-button--secondary:hover{background:rgba(216,195,145,.1);border-color:#d8c391}
.cookie-button--primary{background:#d8c391;color:#12170f;border-color:#d8c391}
.cookie-button--primary:hover{background:#ead8aa;border-color:#ead8aa}
.cookie-consent__close{width:42px;height:42px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:transparent;color:#fff;font-size:1.65rem;cursor:pointer}
.cookie-category{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;margin-top:13px;padding:17px 18px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.1);border-radius:15px}
.cookie-category__text{display:grid;gap:5px}
.cookie-category__text strong{color:#fff;font-size:1rem}
.cookie-category__text span{color:rgba(255,255,255,.66);font-size:.86rem;line-height:1.42}
.cookie-category__status{white-space:nowrap;color:#d8c391;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.cookie-switch{position:relative;display:inline-flex;width:54px;height:30px}
.cookie-switch input{position:absolute;opacity:0;pointer-events:none}
.cookie-switch span{position:absolute;inset:0;border-radius:999px;background:#3d463d;border:1px solid rgba(255,255,255,.17);cursor:pointer;transition:.2s}
.cookie-switch span:before{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.35);transition:.2s}
.cookie-switch input:checked+span{background:#d8c391;border-color:#d8c391}
.cookie-switch input:checked+span:before{transform:translateX(24px);background:#10150f}
[data-cookie-placeholder]:not(.cookie-media-loaded){position:relative;min-height:220px;background:#121812;border:1px dashed rgba(216,195,145,.38)}
[data-cookie-placeholder]:not(.cookie-media-loaded):after{content:"Ce contenu externe est bloqué jusqu’à votre consentement.";position:absolute;inset:0;display:grid;place-items:center;padding:24px;text-align:center;color:rgba(255,255,255,.72)}
@media(max-width:760px){
  .cookie-consent{padding:10px;align-items:end}
  .cookie-consent__panel{max-height:calc(100dvh - 20px);overflow:auto;padding:20px;border-radius:18px}
  .cookie-consent__actions{display:grid;grid-template-columns:1fr;margin-top:20px}
  .cookie-consent__actions--main .cookie-button{width:100%}
  .cookie-category{grid-template-columns:1fr auto;padding:15px}
  .cookie-category__text span{font-size:.8rem}
}
@media(prefers-reduced-motion:reduce){.cookie-button,.cookie-switch span,.cookie-switch span:before{transition:none}}

/* Footer v80 — structure réorganisée et alignements harmonisés */
.footer{padding:76px 0 24px}
.footer-main{grid-template-columns:minmax(250px,1.35fr) repeat(3,minmax(135px,.78fr)) minmax(220px,1.05fr);gap:clamp(26px,3.6vw,58px)}
.footer-brand-block{max-width:330px}
.footer-brand{margin-bottom:18px!important}
.footer-logo{width:170px}
.footer-description{max-width:310px;line-height:1.68}
.footer-signature{margin-top:20px;white-space:nowrap}
.footer-column h3{font-size:1.05rem;margin:4px 0 21px;padding-bottom:13px}
.footer-column>a:not(.footer-contact-link):not(.footer-socials a),.footer-cookie-settings{display:table;margin:0 0 11px;color:rgba(245,244,238,.68);font-size:.86rem;line-height:1.45}
.footer-cookie-settings{width:auto}
.footer-contact{min-width:0}
.footer-contact-link{margin-bottom:12px!important}
.footer-socials{margin-top:20px}
.footer-bottom{margin-top:48px;padding-top:20px}

@media(max-width:1180px){
  .footer-main{grid-template-columns:minmax(250px,1.2fr) repeat(2,minmax(150px,1fr));gap:42px 34px}
  .footer-brand-block{grid-row:1/3}
  .footer-legal{grid-column:2}
  .footer-contact{grid-column:3;grid-row:1/3}
}

@media(max-width:820px){
  .footer-main{grid-template-columns:1fr 1fr;gap:40px 30px}
  .footer-brand-block{grid-column:1/-1;grid-row:auto;max-width:none}
  .footer-contact{grid-column:1/-1;grid-row:auto}
}

@media(max-width:700px){
  .footer{padding-top:58px}
  .footer-main{grid-template-columns:1fr;text-align:center;gap:34px}
  .footer-brand-block,.footer-contact,.footer-legal{grid-column:auto}
  .footer-brand-block{display:flex;flex-direction:column;align-items:center}
  .footer-description{max-width:420px}
  .footer-signature{justify-content:center;white-space:normal}
  .footer-column{display:flex;flex-direction:column;align-items:center}
  .footer-column h3{width:100%;text-align:center;margin-bottom:17px}
  .footer-column h3:after{left:50%;transform:translateX(-50%)}
  .footer-column>a:not(.footer-contact-link):not(.footer-socials a),.footer-cookie-settings{display:block;margin-left:auto;margin-right:auto;text-align:center}
  .footer-contact-link{justify-content:center;text-align:center}
  .footer-address{text-align:center}
  .footer-socials{justify-content:center}
  .footer-bottom{align-items:center;text-align:center}
  .footer-bottom-right{justify-content:center;gap:14px;flex-wrap:wrap}
}

/* Footer v81 — centrage mobile complet et prioritaire */
@media (max-width: 768px){
  .footer{
    padding:56px 0 24px;
    text-align:center;
  }
  .footer .footer-main{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:38px;
    width:100%;
    justify-items:center;
    text-align:center;
  }
  .footer .footer-brand-block,
  .footer .footer-column,
  .footer .footer-contact,
  .footer .footer-legal{
    grid-column:1 !important;
    grid-row:auto !important;
    width:100%;
    max-width:100%;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
  }
  .footer .footer-brand{
    display:flex;
    justify-content:center;
    width:100%;
    margin:0 auto 18px !important;
  }
  .footer .footer-logo{
    display:block;
    width:min(170px,52vw);
    margin:0 auto;
  }
  .footer .footer-description{
    width:100%;
    max-width:390px;
    margin:0 auto;
    text-align:center;
  }
  .footer .footer-signature{
    width:100%;
    justify-content:center;
    margin:20px auto 0;
    text-align:center;
    white-space:normal;
  }
  .footer .footer-signature span{
    flex:0 0 32px;
  }
  .footer .footer-column h3{
    width:100%;
    margin:0 0 18px;
    text-align:center;
  }
  .footer .footer-column h3::after{
    left:50%;
    transform:translateX(-50%);
  }
  .footer .footer-column > a:not(.footer-socials a),
  .footer .footer-cookie-settings{
    display:flex;
    width:fit-content;
    max-width:100%;
    margin:0 auto 11px !important;
    justify-content:center;
    text-align:center;
  }
  .footer .footer-contact-link{
    align-items:center;
    justify-content:center;
    text-align:center;
  }
  .footer .footer-contact-link span{
    text-align:center;
  }
  .footer .footer-address{
    width:100%;
    max-width:390px;
    margin:2px auto 0;
    text-align:center;
  }
  .footer .footer-socials{
    width:100%;
    margin:20px auto 0;
    justify-content:center;
  }
  .footer .footer-bottom{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:15px;
    width:calc(100% - 32px);
    margin:42px auto 0;
    padding-top:22px;
    text-align:center;
  }
  .footer .footer-bottom > span{
    width:100%;
    text-align:center;
  }
  .footer .footer-bottom-right{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    width:100%;
    text-align:center;
  }
  .footer .footer-bottom-right > span{
    max-width:none;
    width:100%;
    text-align:center;
  }
  .footer .footer-admin-link{
    margin:0 auto !important;
  }
}


/* Mobile hero spacing fix */
@media (max-width:768px){
  .hero,
  .hero-section,
  .page-hero,
  .hero-home{
    padding-top:110px !important;
  }
  .hero .eyebrow,
  .hero .hero-badge,
  .hero-tagline,
  .hero-subtitle{
    margin-top:22px !important;
  }
}

/* V97 — fiche produit mobile : contenu toujours sous le bandeau et le header fixes */
@media (max-width:650px){
  body.product-dark-page .product-detail{
    padding-top:calc(var(--announcement-height, 0px) + 78px + 24px)!important;
  }
  body.product-dark-page:not(.has-announcement) .product-detail{
    padding-top:102px!important;
  }
  body.product-dark-page .product-gallery-main{
    scroll-margin-top:calc(var(--announcement-height, 0px) + 78px + 16px);
  }
}

/* V98 — bouton retour catégorie : contraste renforcé sur les fiches produit sombres */
body.product-dark-page .product-detail-topline .back-link{
  background:linear-gradient(180deg,#ead8a9 0%,#d9bd78 100%)!important;
  border:1px solid #f2dfaa!important;
  color:#171b14!important;
  box-shadow:0 7px 18px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.42)!important;
  text-shadow:none!important;
  font-weight:950!important;
  letter-spacing:.055em!important;
  opacity:1!important;
}
body.product-dark-page .product-detail-topline .back-link span,
body.product-dark-page .product-detail-topline .back-link svg{
  color:#171b14!important;
  opacity:1!important;
}
body.product-dark-page .product-detail-topline .back-link svg path{
  stroke:currentColor!important;
}
body.product-dark-page .product-detail-topline .back-link:hover,
body.product-dark-page .product-detail-topline .back-link:focus-visible{
  background:linear-gradient(180deg,#f2dfaa 0%,#e0c37d 100%)!important;
  border-color:#fff0c4!important;
  color:#10130e!important;
  box-shadow:0 10px 24px rgba(0,0,0,.30),0 0 0 3px rgba(226,204,155,.20)!important;
}
body.product-dark-page .product-detail-topline .back-link:hover span,
body.product-dark-page .product-detail-topline .back-link:hover svg,
body.product-dark-page .product-detail-topline .back-link:focus-visible span,
body.product-dark-page .product-detail-topline .back-link:focus-visible svg{
  color:#10130e!important;
}
body.product-dark-page .product-detail-topline .back-link:active{
  transform:translateX(-1px) translateY(1px)!important;
  box-shadow:0 4px 12px rgba(0,0,0,.24)!important;
}
@media(max-width:650px){
  body.product-dark-page .product-detail-topline .back-link{
    min-height:46px;
    padding:11px 17px!important;
    font-size:.86rem!important;
  }
}

/* V99 — respiration entre l'en-tête fixe et les fiches produit */
body.product-dark-page .product-detail{
  padding-top:166px;
}
body.product-dark-page.has-announcement .product-detail{
  padding-top:calc(var(--announcement-height, 34px) + 94px + 48px);
}
@media (max-width:650px){
  body.product-dark-page .product-detail,
  body.product-dark-page:not(.has-announcement) .product-detail{
    padding-top:calc(78px + 36px)!important;
  }
  body.product-dark-page.has-announcement .product-detail{
    padding-top:calc(var(--announcement-height, 34px) + 78px + 36px)!important;
  }
}

/* V101 — Fishroom : modale responsive + visualisation photo grand format */
.fishroom-lightbox[open]{
  width:min(1180px,calc(100vw - 40px))!important;
  height:auto!important;
  max-height:min(760px,calc(100dvh - 40px))!important;
  overflow:hidden!important;
  border-radius:22px!important;
}
.fishroom-lightbox-grid{
  grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr)!important;
  min-height:min(650px,calc(100dvh - 40px))!important;
  max-height:min(760px,calc(100dvh - 40px))!important;
}
.fishroom-lightbox-media{
  grid-template-columns:46px minmax(0,1fr) 46px!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  padding:20px 14px 16px!important;
}
.fishroom-lightbox-stage{
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:390px!important;
  max-height:590px!important;
  aspect-ratio:16/10!important;
  align-self:center!important;
  border-radius:16px!important;
}
.fishroom-lightbox-stage img,.fishroom-lightbox-stage video{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  border-radius:12px!important;
}
.fishroom-zoom-button{
  position:absolute!important;
  right:14px!important;
  bottom:14px!important;
  z-index:6!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  height:38px!important;
  padding:0 13px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:999px!important;
  background:rgba(5,8,5,.78)!important;
  color:#fff!important;
  font-size:.72rem!important;
  font-weight:850!important;
  backdrop-filter:blur(9px)!important;
  cursor:zoom-in!important;
}
.fishroom-zoom-button[hidden]{display:none!important}
.fishroom-zoom-button svg{width:16px!important;height:16px!important}
.fishroom-zoom-button:hover{background:#d8c89f!important;color:#111!important}
.fishroom-lightbox-stage>img:not([hidden]){cursor:zoom-in!important}
.fishroom-lightbox-thumbs{min-height:58px!important;max-height:66px!important;padding-top:8px!important}
.fishroom-lightbox-thumb{flex-basis:62px!important;width:62px!important;height:52px!important}
.fishroom-lightbox-copy{
  padding:58px 34px 32px!important;
  overflow-y:auto!important;
}
.fishroom-lightbox-copy h2{font-size:clamp(2.4rem,3.8vw,4.15rem)!important;margin-bottom:22px!important}
.fishroom-lightbox-description{font-size:.96rem!important;line-height:1.65!important}

.fishroom-image-viewer{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:rgba(3,5,3,.96)!important;
  overflow:hidden!important;
}
.fishroom-image-viewer::backdrop{background:rgba(0,0,0,.92)!important;backdrop-filter:blur(8px)}
.fishroom-image-viewer[open]{display:grid!important;grid-template-rows:minmax(0,1fr) auto!important}
.fishroom-image-viewer-stage{display:flex!important;align-items:center!important;justify-content:center!important;min-height:0!important;padding:58px 24px 18px!important}
.fishroom-image-viewer-stage img{display:block!important;max-width:100%!important;max-height:calc(100dvh - 116px)!important;width:auto!important;height:auto!important;object-fit:contain!important;box-shadow:0 24px 80px rgba(0,0,0,.5)!important}
.fishroom-image-viewer-close{position:fixed!important;top:18px!important;right:18px!important;z-index:10!important;display:grid!important;place-items:center!important;width:46px!important;height:46px!important;padding:0!important;border:1px solid rgba(255,255,255,.2)!important;border-radius:50%!important;background:rgba(16,20,16,.82)!important;color:#fff!important;font-size:2rem!important;line-height:1!important;cursor:pointer!important}
.fishroom-image-viewer-close:hover{background:#d8c89f!important;color:#111!important}
.fishroom-image-viewer-footer{display:flex!important;align-items:center!important;justify-content:center!important;gap:14px!important;min-height:48px!important;padding:8px 70px 14px!important;color:rgba(255,255,255,.76)!important;font-size:.82rem!important}
.fishroom-image-viewer-title{font-weight:800!important;color:#fff!important}
.fishroom-image-viewer-counter{color:#d8c89f!important;font-weight:850!important}

@media(max-width:950px){
  .fishroom-lightbox[open]{
    inset:10px!important;
    width:auto!important;
    height:auto!important;
    max-height:calc(100dvh - 20px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
  }
  .fishroom-lightbox-grid{
    display:block!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .fishroom-lightbox-media{
    display:grid!important;
    height:auto!important;
    min-height:0!important;
    padding:16px 12px 12px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
  }
  .fishroom-lightbox-stage{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:16/10!important;
  }
  .fishroom-lightbox-copy{
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    padding:38px 28px 30px!important;
  }
}
@media(max-width:650px){
  .fishroom-lightbox[open]{
    inset:6px!important;
    max-height:calc(100dvh - 12px)!important;
    border-radius:16px!important;
  }
  .fishroom-lightbox-media{
    grid-template-columns:34px minmax(0,1fr) 34px!important;
    gap:7px 4px!important;
    padding:56px 6px 10px!important;
  }
  .fishroom-lightbox-stage{aspect-ratio:4/3!important;border-radius:13px!important}
  .fishroom-lightbox-stage img,.fishroom-lightbox-stage video{border-radius:10px!important}
  .fishroom-gallery-nav{width:32px!important;height:32px!important}
  .fishroom-lightbox-thumbs{min-height:52px!important;max-height:58px!important}
  .fishroom-lightbox-thumb{flex-basis:54px!important;width:54px!important;height:46px!important}
  .fishroom-gallery-counter{left:9px!important;bottom:9px!important;font-size:.74rem!important}
  .fishroom-zoom-button{right:9px!important;bottom:9px!important;width:36px!important;height:36px!important;padding:0!important;justify-content:center!important}
  .fishroom-zoom-button span{display:none!important}
  .fishroom-lightbox-copy{padding:30px 18px 26px!important}
  .fishroom-lightbox-copy .eyebrow{margin-bottom:16px!important}
  .fishroom-lightbox-copy h2{font-size:clamp(2rem,11vw,3rem)!important;margin-bottom:16px!important}
  .fishroom-lightbox-meta{margin-bottom:20px!important}
  .fishroom-lightbox-description{font-size:.94rem!important;line-height:1.58!important}
  .fishroom-lightbox-close{position:fixed!important;top:15px!important;right:15px!important;z-index:20!important;width:40px!important;height:40px!important}
  .fishroom-image-viewer-stage{padding:58px 8px 10px!important}
  .fishroom-image-viewer-stage img{max-height:calc(100dvh - 105px)!important}
  .fishroom-image-viewer-close{top:12px!important;right:12px!important;width:42px!important;height:42px!important}
  .fishroom-image-viewer-footer{padding:6px 56px 12px!important;font-size:.76rem!important;white-space:nowrap!important;overflow:hidden!important}
  .fishroom-image-viewer-title{overflow:hidden!important;text-overflow:ellipsis!important}
}


/* V102 — Fishroom mobile : modale réellement adaptée + fermeture propre */
.fishroom-lightbox{position:relative!important}
.fishroom-lightbox-close,
.fishroom-image-viewer-close{
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  line-height:0!important;
}
.fishroom-lightbox-close svg,
.fishroom-image-viewer-close svg{
  display:block!important;
  width:18px!important;
  height:18px!important;
  pointer-events:none!important;
}

@media(max-width:650px){
  .fishroom-lightbox[open]{
    position:fixed!important;
    inset:10px!important;
    width:calc(100vw - 20px)!important;
    height:auto!important;
    max-width:none!important;
    max-height:calc(100dvh - 20px)!important;
    margin:0!important;
    border-radius:20px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    box-shadow:0 22px 70px rgba(0,0,0,.72)!important;
  }
  .fishroom-lightbox-grid{
    display:block!important;
    width:100%!important;
    min-height:0!important;
    max-height:none!important;
  }
  .fishroom-lightbox-close{
    position:absolute!important;
    top:12px!important;
    right:12px!important;
    z-index:50!important;
    width:34px!important;
    height:34px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:50%!important;
    background:rgba(7,10,7,.82)!important;
    box-shadow:0 5px 18px rgba(0,0,0,.4)!important;
    backdrop-filter:blur(8px)!important;
  }
  .fishroom-lightbox-close svg{width:16px!important;height:16px!important}
  .fishroom-lightbox-media{
    grid-template-columns:28px minmax(0,1fr) 28px!important;
    gap:6px!important;
    min-height:0!important;
    padding:50px 10px 12px!important;
    background:#0b100b!important;
  }
  .fishroom-lightbox-stage{
    width:100%!important;
    min-height:0!important;
    aspect-ratio:4/3!important;
    border-radius:14px!important;
    background:#070b07!important;
  }
  .fishroom-lightbox-stage img,
  .fishroom-lightbox-stage video{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
  }
  .fishroom-gallery-nav{
    width:28px!important;
    height:36px!important;
    min-width:28px!important;
    font-size:1.25rem!important;
    border-radius:10px!important;
  }
  .fishroom-lightbox-thumbs{
    min-height:48px!important;
    max-height:none!important;
    padding:9px 0 0!important;
  }
  .fishroom-lightbox-thumb{
    flex:0 0 50px!important;
    width:50px!important;
    height:44px!important;
    border-radius:10px!important;
  }
  .fishroom-gallery-counter{
    left:8px!important;
    bottom:8px!important;
    min-height:30px!important;
    padding:0 12px!important;
    font-size:.7rem!important;
  }
  .fishroom-zoom-button{
    right:8px!important;
    bottom:8px!important;
    width:32px!important;
    height:32px!important;
  }
  .fishroom-zoom-button svg{width:14px!important;height:14px!important}
  .fishroom-lightbox-copy{
    padding:24px 18px 22px!important;
    background:#171d17!important;
  }
  .fishroom-lightbox-copy .eyebrow{
    margin-bottom:12px!important;
    font-size:.67rem!important;
    letter-spacing:.16em!important;
  }
  .fishroom-lightbox-copy h2{
    margin:0 0 14px!important;
    font-size:clamp(2rem,10.5vw,2.75rem)!important;
    line-height:.94!important;
  }
  .fishroom-lightbox-meta{
    width:max-content!important;
    max-width:100%!important;
    margin:0 0 18px!important;
    padding:8px 13px!important;
    font-size:.8rem!important;
  }
  .fishroom-lightbox-description{
    margin:0!important;
    font-size:.9rem!important;
    line-height:1.55!important;
  }
  .fishroom-lightbox-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin-top:22px!important;
    padding-top:18px!important;
  }
  .fishroom-lightbox-actions .fish-like-button,
  .fishroom-lightbox-actions .fish-share-button{
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    padding:0 12px!important;
    border-radius:14px!important;
    font-size:.76rem!important;
  }
  .fishroom-image-viewer-close{
    top:14px!important;
    right:14px!important;
    width:36px!important;
    height:36px!important;
  }
  .fishroom-image-viewer-close svg{width:17px!important;height:17px!important}
}

@media(max-width:390px){
  .fishroom-lightbox[open]{inset:6px!important;width:calc(100vw - 12px)!important;max-height:calc(100dvh - 12px)!important;border-radius:17px!important}
  .fishroom-lightbox-close{top:10px!important;right:10px!important;width:32px!important;height:32px!important}
  .fishroom-lightbox-media{grid-template-columns:24px minmax(0,1fr) 24px!important;padding:46px 6px 10px!important}
  .fishroom-lightbox-copy{padding:22px 15px 20px!important}
  .fishroom-lightbox-actions{grid-template-columns:1fr!important}
}

/* V103 — Fishroom : descriptions longues entièrement lisibles */
@media (min-width:951px){
  .fishroom-lightbox[open]{
    height:min(760px,calc(100dvh - 40px))!important;
    max-height:calc(100dvh - 40px)!important;
    overflow:hidden!important;
  }
  .fishroom-lightbox-grid{
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
  }
  .fishroom-lightbox-media{
    min-height:0!important;
    height:100%!important;
    overflow:hidden!important;
  }
  .fishroom-lightbox-copy{
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    max-height:100%!important;
    box-sizing:border-box!important;
    justify-content:flex-start!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
    padding-top:54px!important;
    padding-bottom:34px!important;
  }
  .fishroom-lightbox-copy .eyebrow,
  .fishroom-lightbox-copy h2,
  .fishroom-lightbox-meta,
  .fishroom-lightbox-description,
  .fishroom-lightbox-actions,
  .fishroom-share-menu{
    flex:0 0 auto!important;
  }
  .fishroom-lightbox-description{
    display:block!important;
    max-height:none!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:pre-line!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  .fishroom-lightbox-actions{
    margin-top:26px!important;
  }
}

/* Tablette/mobile : le contenu complet défile dans la modale, sans texte coupé */
@media (max-width:950px){
  .fishroom-lightbox-copy{
    justify-content:flex-start!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .fishroom-lightbox-description{
    display:block!important;
    max-height:none!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:pre-line!important;
    overflow-wrap:anywhere!important;
  }
}


/* V55 — Stabilité visuelle / Core Web Vitals (CLS) */
html{overflow-y:scroll}
img,video{height:auto}
.brand img{aspect-ratio:76/68}
.hero-card img{aspect-ratio:1024/780;height:auto}
.footer-logo{aspect-ratio:1024/780;height:auto}
.product-image img,.fish-card img,.montlucon-event-visual img,.product-detail-image img{height:100%}
@media(max-width:650px){.brand img{aspect-ratio:60/54}}

/* V100 — Catalogue : suppression du fond crème des visuels produits */
body.page-catalogue main .product-image{
  background:linear-gradient(145deg,#343b30 0%,#20261f 100%)!important;
}
body.page-catalogue main .product-image:after{
  border-color:rgba(255,255,255,.09)!important;
}
body.page-catalogue main .product-image .placeholder{
  color:rgba(255,255,255,.16)!important;
}

/* V64 — Fishroom : la Prise à la une se distingue clairement des autres prises */
@media(min-width:901px){
  .fishroom-gallery-v2 .fish-card-v2.fish-card-featured{
    grid-column:1 / -1!important;
    min-height:620px!important;
  }
  .fishroom-gallery-v2 .fish-card-featured .fish-card-overlay{
    padding:44px 48px!important;
  }
  .fishroom-gallery-v2 .fish-card-featured strong{
    font-size:clamp(3.2rem,5vw,5.6rem)!important;
    max-width:72%!important;
  }
  .fishroom-gallery-v2 .fish-card-featured p{
    max-width:62%!important;
    font-size:1.08rem!important;
  }
}
.fishroom-gallery-v2 .fish-card-featured{
  border:1px solid rgba(215,190,125,.72)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.34),0 0 0 1px rgba(215,190,125,.12) inset!important;
}
.fishroom-gallery-v2 .fish-card-featured::after{
  content:"À LA UNE";
  position:absolute;
  top:22px;
  right:22px;
  z-index:7;
  padding:10px 15px;
  border-radius:999px;
  background:rgba(210,187,126,.95);
  color:#11150f;
  font-size:.72rem;
  line-height:1;
  font-weight:900;
  letter-spacing:.11em;
  box-shadow:0 8px 24px rgba(0,0,0,.24);
}
.fishroom-gallery-v2 .fish-card-featured .fish-card-kicker{
  background:rgba(210,187,126,.94)!important;
  color:#151910!important;
  border-color:rgba(255,255,255,.18)!important;
  font-weight:900!important;
}
@media(max-width:900px){
  .fishroom-gallery-v2 .fish-card-featured{
    min-height:530px!important;
  }
  .fishroom-gallery-v2 .fish-card-featured strong{
    font-size:clamp(2.55rem,8vw,3.8rem)!important;
  }
}
@media(max-width:560px){
  .fishroom-gallery-v2 .fish-card-featured{min-height:500px!important}
  .fishroom-gallery-v2 .fish-card-featured::after{top:14px;right:14px;padding:8px 11px;font-size:.62rem}
  .fishroom-gallery-v2 .fish-card-featured strong{font-size:2.55rem!important}
}

/* V65 — Fishroom : mise en avant élégante + case de fin */
@media(min-width:901px){
  .fishroom-gallery-v2 .fish-card-v2.fish-card-featured{
    grid-column:1 / -1!important;
    min-height:430px!important;
    max-height:430px!important;
  }
  .fishroom-gallery-v2 .fish-card-featured img,
  .fishroom-gallery-v2 .fish-card-featured video{
    object-position:center 42%!important;
  }
  .fishroom-gallery-v2 .fish-card-featured .fish-card-overlay{
    padding:34px 38px!important;
    background:linear-gradient(90deg,rgba(8,12,8,.86) 0%,rgba(8,12,8,.54) 45%,rgba(8,12,8,.08) 78%)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured strong{
    font-size:clamp(2.6rem,4vw,4.1rem)!important;
    max-width:62%!important;
  }
  .fishroom-gallery-v2 .fish-card-featured p{
    max-width:58%!important;
    font-size:1rem!important;
  }
}
.fishroom-gallery-v2 .fish-card-featured{
  border:1px solid rgba(215,190,125,.52)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.30),0 0 0 1px rgba(215,190,125,.08) inset!important;
}
.fishroom-gallery-v2 .fish-card-featured::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  border-top:4px solid rgba(214,190,126,.95);
  border-radius:inherit;
}
.fishroom-gallery-v2 .fish-card-featured::after{
  content:"PRISE À LA UNE";
  position:absolute;
  top:20px;
  right:20px;
  z-index:7;
  padding:9px 13px;
  border-radius:10px;
  background:#d4bd7e;
  color:#10140f;
  font-size:.68rem;
  line-height:1;
  font-weight:900;
  letter-spacing:.10em;
  box-shadow:0 8px 22px rgba(0,0,0,.22);
}
.fishroom-gallery-v2 .fish-card-featured .fish-card-kicker{
  background:rgba(212,189,126,.16)!important;
  color:#ead9aa!important;
  border-color:rgba(212,189,126,.46)!important;
  font-weight:900!important;
}
.fishroom-filler-card{
  min-height:520px;
  border:1px solid rgba(215,190,125,.24);
  border-radius:24px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 18%,rgba(211,188,124,.13),transparent 34%),
    linear-gradient(145deg,#20281f 0%,#111610 100%);
  display:grid;
  place-items:center;
  position:relative;
}
.fishroom-filler-card::before{
  content:"";
  position:absolute;
  inset:14px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:18px;
  pointer-events:none;
}
.fishroom-filler-inner{
  width:min(82%,430px);
  text-align:center;
  position:relative;
  z-index:1;
  padding:36px 24px;
}
.fishroom-filler-inner img{
  width:110px;
  height:auto;
  margin:0 auto 18px;
  object-fit:contain;
  opacity:.95;
}
.fishroom-filler-inner span{
  display:block;
  color:#d4bd7e;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:12px;
}
.fishroom-filler-inner strong{
  display:block;
  color:#fff;
  font-size:clamp(2rem,3vw,3.15rem);
  line-height:.96;
  text-transform:uppercase;
  margin-bottom:18px;
}
.fishroom-filler-inner p{
  margin:0 auto;
  color:rgba(255,255,255,.70);
  max-width:340px;
  line-height:1.55;
}
@media(max-width:900px){
  .fishroom-gallery-v2 .fish-card-featured{
    min-height:480px!important;
    max-height:none!important;
  }
  .fishroom-gallery-v2 .fish-card-featured::after{
    top:14px;
    right:14px;
    padding:8px 10px;
    font-size:.61rem;
  }
  .fishroom-filler-card{display:none!important}
}

/* V66 — Fishroom : mise en avant premium, compacte et grille toujours complète */
/* La prise à la une garde la hauteur d'une carte : elle se distingue sans déformer la galerie. */
@media (min-width:901px){
  .fishroom-gallery-v2 .fish-card-v2.fish-card-featured{
    grid-column:1 / -1!important;
    grid-row:auto!important;
    min-height:420px!important;
    height:420px!important;
    max-height:420px!important;
    border-radius:24px!important;
    border:1px solid rgba(214,190,126,.58)!important;
    box-shadow:0 22px 58px rgba(0,0,0,.34),0 0 0 1px rgba(214,190,126,.06) inset!important;
    overflow:hidden!important;
  }
  .fishroom-gallery-v2 .fish-card-featured>img,
  .fishroom-gallery-v2 .fish-card-featured>video{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 43%!important;
    filter:saturate(.98) contrast(1.02)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured .fish-card-overlay{
    left:0!important;
    right:0!important;
    top:0!important;
    bottom:0!important;
    min-height:100%!important;
    padding:34px 42px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:flex-start!important;
    background:
      linear-gradient(90deg,rgba(7,11,7,.91) 0%,rgba(7,11,7,.72) 31%,rgba(7,11,7,.30) 57%,rgba(7,11,7,.05) 78%),
      linear-gradient(0deg,rgba(6,9,6,.48),transparent 52%)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured .fish-card-overlay>*{
    max-width:min(620px,54%)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured strong{
    margin-top:4px!important;
    color:#fff!important;
    font-size:clamp(2.7rem,3.7vw,4rem)!important;
    line-height:.92!important;
    letter-spacing:-.025em!important;
    text-shadow:0 5px 20px rgba(0,0,0,.28)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured p{
    margin-top:10px!important;
    max-width:min(660px,58%)!important;
    font-size:.94rem!important;
    line-height:1.55!important;
    color:rgba(255,255,255,.76)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured .fish-card-actions{
    max-width:none!important;
    margin-top:16px!important;
  }
}

/* Signature "à la une" : une seule information, lisible, sans double badge parasite. */
.fishroom-gallery-v2 .fish-card-featured::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  pointer-events:none!important;
  border-top:3px solid #d6c07f!important;
  border-radius:inherit!important;
  box-shadow:inset 0 0 0 1px rgba(214,192,127,.07)!important;
}
.fishroom-gallery-v2 .fish-card-featured::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(5,8,5,.04) 20%,rgba(5,8,5,.36) 100%)!important;
}
.fishroom-gallery-v2 .fish-card-featured .fish-card-kicker{
  position:relative!important;
  z-index:5!important;
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  padding:7px 11px!important;
  margin:0 0 9px!important;
  border:1px solid rgba(219,198,139,.58)!important;
  border-radius:999px!important;
  background:rgba(31,35,23,.76)!important;
  color:#ead7a1!important;
  box-shadow:0 6px 18px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(8px)!important;
  font-size:.65rem!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
}
.fishroom-gallery-v2 .fish-card-featured .fish-card-kicker::before{
  content:"★";
  margin-right:7px;
  color:#d6c07f;
  font-size:.72rem;
}

/* Cartes normales : dimensions strictement homogènes pour éviter tout trou visuel. */
@media (min-width:901px){
  .fishroom-gallery-v2{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:520px!important;
    gap:24px!important;
    align-items:stretch!important;
  }
  .fishroom-gallery-v2 .fish-card-v2:not(.fish-card-featured){
    min-height:520px!important;
    height:520px!important;
    max-height:520px!important;
  }
}

/* Annule définitivement l'ancienne carte décorative V65 si un cache HTML la conserve. */
.fishroom-filler-card{display:none!important}

@media (max-width:900px){
  .fishroom-gallery-v2 .fish-card-v2.fish-card-featured{
    grid-column:auto!important;
    min-height:480px!important;
    height:auto!important;
    max-height:none!important;
    border-color:rgba(214,190,126,.48)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured .fish-card-overlay{
    background:linear-gradient(180deg,rgba(7,11,7,.06) 22%,rgba(7,11,7,.92) 100%)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured strong{font-size:clamp(2.2rem,8vw,3.2rem)!important}
}

/* V67 — Fishroom : carte "Prise à la une" premium mais strictement intégrée à la grille.
   Même format que les autres fiches = aucune ligne cassée, aucun emplacement vide artificiel. */
@media (min-width:901px){
  .fishroom-gallery-v2{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:520px!important;
    gap:24px!important;
    align-items:stretch!important;
  }
  .fishroom-gallery-v2 .fish-card-v2,
  .fishroom-gallery-v2 .fish-card-v2.fish-card-featured,
  .fishroom-gallery-v2 .fish-card-v2:not(.fish-card-featured){
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    min-height:520px!important;
    height:520px!important;
    max-height:520px!important;
    border-radius:24px!important;
  }

  /* À la une : différence visuelle nette, sans changer la taille de la fiche. */
  .fishroom-gallery-v2 .fish-card-v2.fish-card-featured{
    border:2px solid rgba(216,193,127,.92)!important;
    box-shadow:
      0 22px 54px rgba(0,0,0,.34),
      0 0 0 1px rgba(216,193,127,.16) inset,
      0 0 30px rgba(216,193,127,.08)!important;
    isolation:isolate!important;
  }
  .fishroom-gallery-v2 .fish-card-featured>img,
  .fishroom-gallery-v2 .fish-card-featured>video{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
    filter:saturate(1.04) contrast(1.03)!important;
    transform:scale(1.002)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured .fish-card-overlay{
    position:absolute!important;
    inset:0!important;
    min-height:100%!important;
    padding:30px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:flex-start!important;
    background:linear-gradient(180deg,rgba(5,8,5,.03) 22%,rgba(5,8,5,.16) 46%,rgba(5,8,5,.92) 100%)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured .fish-card-overlay>*{
    max-width:90%!important;
  }
  .fishroom-gallery-v2 .fish-card-featured strong{
    font-size:clamp(2rem,3vw,3.15rem)!important;
    line-height:.96!important;
    max-width:90%!important;
    color:#fff!important;
    letter-spacing:-.02em!important;
  }
  .fishroom-gallery-v2 .fish-card-featured p{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
    margin:10px 0 0!important;
    max-width:90%!important;
    max-height:none!important;
    font-size:1rem!important;
    line-height:1.6!important;
    color:rgba(255,255,255,.78)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured .fish-card-actions{
    max-width:none!important;
    margin-top:12px!important;
  }
}

/* Double cadre discret spécifique à la une. */
.fishroom-gallery-v2 .fish-card-featured::before{
  content:""!important;
  position:absolute!important;
  inset:8px!important;
  z-index:4!important;
  pointer-events:none!important;
  border:1px solid rgba(234,216,164,.48)!important;
  border-radius:17px!important;
  box-shadow:none!important;
}
/* On supprime tous les anciens pseudo-badges / voiles des V64-V66. */
.fishroom-gallery-v2 .fish-card-featured::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(6,9,6,.02) 18%,rgba(6,9,6,.14) 54%,rgba(6,9,6,.48) 100%)!important;
  border-radius:inherit!important;
  padding:0!important;
  box-shadow:none!important;
}
.fishroom-gallery-v2 .fish-card-featured .fish-card-kicker{
  position:relative!important;
  z-index:6!important;
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  margin:0 0 10px!important;
  padding:7px 11px!important;
  border:1px solid rgba(229,207,144,.72)!important;
  border-radius:999px!important;
  background:rgba(20,25,17,.72)!important;
  color:#ead49a!important;
  box-shadow:0 8px 22px rgba(0,0,0,.20)!important;
  backdrop-filter:blur(7px)!important;
  font-size:.66rem!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}
.fishroom-gallery-v2 .fish-card-featured .fish-card-kicker::before{
  content:"★"!important;
  margin-right:7px!important;
  color:#e2c77c!important;
  font-size:.72rem!important;
}

/* Aucun faux remplissage : uniquement des fiches poisson venant de la base. */
.fishroom-filler-card{display:none!important}

@media (max-width:900px){
  .fishroom-gallery-v2 .fish-card-v2.fish-card-featured{
    grid-column:auto!important;
    grid-row:auto!important;
    min-height:480px!important;
    height:480px!important;
    max-height:480px!important;
    border:2px solid rgba(216,193,127,.82)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured .fish-card-overlay{
    padding:26px!important;
    background:linear-gradient(180deg,rgba(5,8,5,.03) 22%,rgba(5,8,5,.17) 45%,rgba(5,8,5,.93) 100%)!important;
  }
  .fishroom-gallery-v2 .fish-card-featured strong{
    font-size:clamp(2rem,7vw,2.75rem)!important;
  }
}
@media (max-width:560px){
  .fishroom-gallery-v2 .fish-card-v2.fish-card-featured{
    min-height:450px!important;
    height:450px!important;
    max-height:450px!important;
  }
  .fishroom-gallery-v2 .fish-card-featured .fish-card-overlay{padding:22px!important}
  .fishroom-gallery-v2 .fish-card-featured::before{inset:7px!important;border-radius:16px!important}
}

/* V68 — respiration entre le texte des fiches Fishroom et les boutons d'action. */
.fishroom-gallery-v2 .fish-card-v2 .fish-card-actions{
  margin-top:22px!important;
}
.fishroom-gallery-v2 .fish-card-v2 .fish-card-overlay p + .fish-card-actions{
  margin-top:24px!important;
}
@media (max-width:560px){
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-actions,
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-overlay p + .fish-card-actions{
    margin-top:18px!important;
  }
}

/* V69 — Fishroom mobile : mise en page compacte, lisible et sans bloc noir. */
@media (max-width:560px){
  .fishroom-gallery-v2{
    grid-template-columns:1fr!important;
    grid-auto-rows:auto!important;
    gap:18px!important;
  }
  .fishroom-gallery-v2 .fish-card-v2,
  .fishroom-gallery-v2 .fish-card-v2.fish-card-featured,
  .fishroom-gallery-v2 .fish-card-v2:not(.fish-card-featured){
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:4/5!important;
    border-radius:22px!important;
    overflow:hidden!important;
  }
  .fishroom-gallery-v2 .fish-card-v2>img,
  .fishroom-gallery-v2 .fish-card-v2>video,
  .fishroom-gallery-v2 .fish-card-featured>img,
  .fishroom-gallery-v2 .fish-card-featured>video{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-overlay,
  .fishroom-gallery-v2 .fish-card-featured .fish-card-overlay{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    padding:20px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:flex-start!important;
    background:linear-gradient(180deg,rgba(5,8,5,0) 30%,rgba(5,8,5,.12) 48%,rgba(5,8,5,.86) 78%,rgba(5,8,5,.96) 100%)!important;
    box-shadow:none!important;
    border:0!important;
  }
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-overlay>*{
    max-width:100%!important;
  }
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-kicker{
    margin:0 0 8px!important;
    padding:6px 10px!important;
    font-size:.60rem!important;
  }
  .fishroom-gallery-v2 .fish-card-v2 strong,
  .fishroom-gallery-v2 .fish-card-featured strong{
    margin:0!important;
    font-size:clamp(1.85rem,9vw,2.35rem)!important;
    line-height:1!important;
    max-width:100%!important;
  }
  .fishroom-gallery-v2 .fish-card-v2 p,
  .fishroom-gallery-v2 .fish-card-featured p{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
    margin:9px 0 0!important;
    max-width:100%!important;
    max-height:3.05em!important;
    font-size:.88rem!important;
    line-height:1.5!important;
  }
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-actions,
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-overlay p + .fish-card-actions,
  .fishroom-gallery-v2 .fish-card-featured .fish-card-actions{
    width:100%!important;
    max-width:100%!important;
    margin-top:14px!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    flex-wrap:nowrap!important;
  }
  .fishroom-gallery-v2 .fish-card-open{
    flex:1 1 auto!important;
    min-width:0!important;
    min-height:44px!important;
    height:44px!important;
    padding:0 14px!important;
    white-space:nowrap!important;
    font-size:.72rem!important;
  }
  .fishroom-gallery-v2 .fish-like-button,
  .fishroom-gallery-v2 .fish-share-button{
    flex:0 0 44px!important;
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
  }
  .fishroom-gallery-v2 .fish-card-featured::before{
    inset:7px!important;
    border-radius:16px!important;
  }
}

@media (max-width:380px){
  .fishroom-gallery-v2 .fish-card-v2,
  .fishroom-gallery-v2 .fish-card-v2.fish-card-featured,
  .fishroom-gallery-v2 .fish-card-v2:not(.fish-card-featured){aspect-ratio:3/4!important}
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-overlay,
  .fishroom-gallery-v2 .fish-card-featured .fish-card-overlay{padding:17px!important}
  .fishroom-gallery-v2 .fish-card-v2 strong,
  .fishroom-gallery-v2 .fish-card-featured strong{font-size:1.75rem!important}
  .fishroom-gallery-v2 .fish-card-open{padding:0 10px!important;font-size:.66rem!important}
}

/* V70 — Fishroom mobile : barre d'actions compacte et propre. */
@media (max-width:560px){
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-actions,
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-overlay p + .fish-card-actions,
  .fishroom-gallery-v2 .fish-card-featured .fish-card-actions{
    width:auto!important;
    max-width:100%!important;
    margin-top:16px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    flex-wrap:nowrap!important;
  }
  .fishroom-gallery-v2 .fish-card-open{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    height:40px!important;
    min-height:40px!important;
    padding:0 14px!important;
    border-radius:999px!important;
    font-size:.68rem!important;
    line-height:1!important;
    white-space:nowrap!important;
    gap:7px!important;
  }
  .fishroom-gallery-v2 .fish-like-button,
  .fishroom-gallery-v2 .fish-share-button{
    flex:0 0 40px!important;
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0!important;
    border-radius:50%!important;
  }
  .fishroom-gallery-v2 .fish-card-actions svg{
    width:17px!important;
    height:17px!important;
    flex:0 0 17px!important;
  }
  .fishroom-gallery-v2 .fish-like-button .fish-like-count{
    font-size:.72rem!important;
  }
}
@media (max-width:360px){
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-actions,
  .fishroom-gallery-v2 .fish-card-featured .fish-card-actions{gap:6px!important}
  .fishroom-gallery-v2 .fish-card-open{height:38px!important;min-height:38px!important;padding:0 11px!important;font-size:.63rem!important}
  .fishroom-gallery-v2 .fish-like-button,
  .fishroom-gallery-v2 .fish-share-button{flex-basis:38px!important;width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important}
}

/* V71 — Fishroom mobile : vraie respiration entre le texte et les actions. */
@media (max-width:560px){
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-actions,
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-overlay p + .fish-card-actions,
  .fishroom-gallery-v2 .fish-card-featured .fish-card-actions{
    margin-top:28px!important;
  }
  .fishroom-gallery-v2 .fish-card-v2 p,
  .fishroom-gallery-v2 .fish-card-featured p{
    margin-bottom:0!important;
  }
}
@media (max-width:380px){
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-actions,
  .fishroom-gallery-v2 .fish-card-v2 .fish-card-overlay p + .fish-card-actions,
  .fishroom-gallery-v2 .fish-card-featured .fish-card-actions{
    margin-top:24px!important;
  }
}

/* Fishroom banner administrable */
.fishroom-hero.has-image{background-image:linear-gradient(90deg,rgba(7,10,6,.9),rgba(7,10,6,.34)),var(--fishroom-banner);background-size:cover;background-position:center}

/* Bannières — centrage strict sur mobile */
@media (max-width: 650px){
  .catalog-hero.has-image,
  .fishroom-hero.has-image{
    background-position: center center !important;
    background-size: cover !important;
  }
}

/* V101 — cadrage fiable des bannières sur mobile */
.history-hero{
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}

@media (max-width:650px){
  .catalog-hero.has-image,
  .fishroom-hero.has-image,
  .history-hero{
    background-size:cover !important;
    background-position:50% 50% !important;
    background-repeat:no-repeat !important;
  }
}


/* V97 — image de fond administrable du hero de la page d’accueil */
body.home-page .hero.has-background{
  background-image:
    radial-gradient(circle at 74% 45%,rgba(214,201,170,.14),transparent 24%),
    linear-gradient(105deg,rgba(8,11,7,.94) 0 38%,rgba(12,17,10,.78) 58%,rgba(20,27,16,.76) 100%),
    var(--hero-background);
  background-size:auto,auto,cover;
  background-repeat:no-repeat,no-repeat,no-repeat;
  background-position:center,center,center center;
}
@media(max-width:650px){
  body.home-page .hero.has-background{
    background-image:
      linear-gradient(180deg,rgba(8,11,7,.84) 0%,rgba(8,11,7,.72) 48%,rgba(8,11,7,.82) 100%),
      var(--hero-background);
    background-size:auto,cover;
    background-repeat:no-repeat,no-repeat;
    background-position:center,center center;
  }
}

/* V104 — Images de fond administrables pour les fiches « Nos univers » */
.category-card.has-category-image{
  background-image:linear-gradient(180deg,rgba(8,12,7,.22) 0%,rgba(8,12,7,.38) 42%,rgba(8,12,7,.86) 100%),var(--category-bg)!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
.category-card.has-category-image::before{
  background:linear-gradient(135deg,rgba(255,255,255,.035),transparent 45%),radial-gradient(circle at 85% 15%,rgba(214,201,170,.14),transparent 32%);
}
.category-card.has-category-image .cat-copy p{color:rgba(255,255,255,.82)}
.category-card.has-category-image .cat-icon{background:rgba(14,18,12,.34);border-color:rgba(255,255,255,.32)}

/* Newsletter CTA: integrated dark/khaki style instead of white */
.newsletter .newsletter-contact-btn{background:rgba(70,78,48,.58);color:#fff;border-color:rgba(232,218,177,.72);box-shadow:0 10px 28px rgba(17,21,15,.14);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.newsletter .newsletter-contact-btn:hover{background:rgba(93,103,62,.78);color:#fff;border-color:var(--sand);transform:translateY(-2px)}

/* V105 — Accueil mobile : rapproche l'accroche du header */
@media (max-width:650px){
  body.home-page .hero-grid{
    padding-top:48px !important;
  }
  body.home-page .hero .eyebrow{
    margin-top:0 !important;
  }
}


/* V104 — Bannière administrable du catalogue général + CTA Notre histoire */
body.page-catalogue main .catalog-hero.has-image{
  background-image:linear-gradient(90deg,rgba(7,10,6,.88),rgba(7,10,6,.42)),var(--catalog-banner);
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}
.history-actions .history-catalog-btn{
  background:rgba(17,21,15,.32);
  border-color:rgba(214,201,170,.72);
  color:#fff;
  backdrop-filter:blur(8px);
}
.history-actions .history-catalog-btn:hover{
  background:var(--sand);
  border-color:var(--sand);
  color:var(--ink);
}
@media(max-width:650px){
  body.page-catalogue main .catalog-hero.has-image{background-position:50% 50%!important}
}

/* V19 — Accueil : le bouton Fishroom ne devient jamais blanc au survol. */
body.home-page .hero .btn-ghost:hover{
  background:rgba(214,201,170,.16);
  border-color:var(--sand);
  color:#fff;
  box-shadow:0 10px 28px rgba(0,0,0,.18);
}

/* V106 — Page de partage Fishroom : mise en page mobile fiable + CTA sans fond blanc */
body.fishroom-dark-page .fishroom-share-page{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 8%,rgba(125,134,87,.15),transparent 32%),
    linear-gradient(145deg,#0e130e 0%,#171e15 55%,#20271c 100%);
}
body.fishroom-dark-page .fishroom-share-card{
  width:100%;
}
body.fishroom-dark-page .fishroom-share-image{
  min-width:0;
  min-height:0;
  background:#0d120d;
  overflow:hidden;
}
body.fishroom-dark-page .fishroom-share-copy{
  min-width:0;
}
body.fishroom-dark-page .fishroom-share-copy p{
  margin:0;
  white-space:normal;
  overflow-wrap:anywhere;
}
body.fishroom-dark-page .fishroom-share-actions .btn{
  width:auto;
  min-height:50px;
  padding:0 22px;
  border-radius:999px;
  text-decoration:none;
  -webkit-tap-highlight-color:transparent;
}
body.fishroom-dark-page .fishroom-share-actions #shareThisShot,
body.fishroom-dark-page .fishroom-share-actions #shareThisShot:hover,
body.fishroom-dark-page .fishroom-share-actions #shareThisShot:focus,
body.fishroom-dark-page .fishroom-share-actions #shareThisShot:focus-visible,
body.fishroom-dark-page .fishroom-share-actions #shareThisShot:active{
  background:rgba(70,78,48,.64)!important;
  color:#fff!important;
  border:1px solid rgba(214,201,170,.68)!important;
  box-shadow:none!important;
}
body.fishroom-dark-page .fishroom-share-actions #shareThisShot:hover,
body.fishroom-dark-page .fishroom-share-actions #shareThisShot:focus-visible{
  background:rgba(102,111,69,.82)!important;
  border-color:var(--sand)!important;
  transform:translateY(-1px);
}

@media(max-width:900px){
  body.fishroom-dark-page .fishroom-share-page{
    padding:28px 0 64px!important;
    min-height:auto;
  }
  body.fishroom-dark-page .fishroom-share-page>.container{
    width:min(100% - 28px,760px)!important;
  }
  body.fishroom-dark-page .fishroom-share-card{
    display:flex!important;
    flex-direction:column!important;
    border-radius:22px!important;
    overflow:hidden!important;
  }
  body.fishroom-dark-page .fishroom-share-image{
    width:100%!important;
    aspect-ratio:16/11;
  }
  body.fishroom-dark-page .fishroom-share-image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    object-fit:cover!important;
    object-position:center center!important;
  }
  body.fishroom-dark-page .fishroom-share-copy{
    display:block!important;
    padding:30px 28px 32px!important;
  }
  body.fishroom-dark-page .fishroom-share-copy .eyebrow{
    display:block;
    margin:0 0 14px!important;
    font-size:.73rem;
    line-height:1.3;
    letter-spacing:.18em;
    text-align:left;
  }
  body.fishroom-dark-page .fishroom-share-copy h1{
    margin:0 0 18px!important;
    font-size:clamp(2.7rem,10vw,4.2rem)!important;
    line-height:.94!important;
    overflow-wrap:anywhere;
  }
  body.fishroom-dark-page .fishroom-share-copy strong{
    display:block;
    margin:0 0 20px;
    font-size:1rem;
  }
  body.fishroom-dark-page .fishroom-share-copy p{
    font-size:.98rem!important;
    line-height:1.65!important;
    color:rgba(255,255,255,.76)!important;
  }
  body.fishroom-dark-page .fishroom-share-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr;
    gap:10px!important;
    margin-top:26px!important;
  }
  body.fishroom-dark-page .fishroom-share-actions .btn{
    width:100%!important;
    min-width:0!important;
    min-height:50px!important;
    padding:0 14px!important;
    text-align:center;
    justify-content:center;
    font-size:.76rem!important;
  }
}

@media(max-width:560px){
  body.fishroom-dark-page .fishroom-share-page{
    padding:16px 0 44px!important;
  }
  body.fishroom-dark-page .fishroom-share-page>.container{
    width:calc(100% - 24px)!important;
  }
  body.fishroom-dark-page .fishroom-share-card{
    border-radius:19px!important;
  }
  body.fishroom-dark-page .fishroom-share-image{
    aspect-ratio:4/3;
  }
  body.fishroom-dark-page .fishroom-share-copy{
    padding:24px 20px 24px!important;
  }
  body.fishroom-dark-page .fishroom-share-copy .eyebrow{
    margin-bottom:12px!important;
    font-size:.67rem!important;
  }
  body.fishroom-dark-page .fishroom-share-copy h1{
    margin-bottom:14px!important;
    font-size:clamp(2.35rem,12.2vw,3.25rem)!important;
  }
  body.fishroom-dark-page .fishroom-share-copy strong{
    margin-bottom:17px!important;
    font-size:.92rem!important;
  }
  body.fishroom-dark-page .fishroom-share-copy p{
    font-size:.9rem!important;
    line-height:1.58!important;
  }
  body.fishroom-dark-page .fishroom-share-actions{
    grid-template-columns:1fr!important;
    margin-top:22px!important;
  }
  body.fishroom-dark-page .fishroom-share-actions .btn{
    min-height:48px!important;
  }
}

/* V107 — Fishroom partage : correction approfondie desktop + mobile sous header fixe */
body.fishroom-dark-page .fishroom-share-page{
  box-sizing:border-box;
  min-height:calc(100dvh - var(--announcement-height, 0px));
  padding-top:calc(var(--announcement-height, 0px) + 94px + 46px)!important;
  padding-bottom:76px!important;
}
body.fishroom-dark-page .fishroom-share-page>.container{
  width:min(1240px,calc(100% - 48px))!important;
  margin-inline:auto!important;
}
body.fishroom-dark-page .fishroom-share-card{
  display:grid!important;
  grid-template-columns:minmax(0,1.04fr) minmax(390px,.96fr)!important;
  width:100%!important;
  max-width:1240px!important;
  min-height:610px!important;
  max-height:720px!important;
  margin:0 auto!important;
  border-radius:26px!important;
  overflow:hidden!important;
}
body.fishroom-dark-page .fishroom-share-image{
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
}
body.fishroom-dark-page .fishroom-share-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
}
body.fishroom-dark-page .fishroom-share-copy{
  min-width:0!important;
  padding:clamp(42px,4.2vw,66px)!important;
}
body.fishroom-dark-page .fishroom-share-copy h1{
  font-size:clamp(3.8rem,5.4vw,5.7rem)!important;
  line-height:.9!important;
  margin:18px 0 22px!important;
}
body.fishroom-dark-page .fishroom-share-copy p{
  font-size:.98rem!important;
  line-height:1.65!important;
}
body.fishroom-dark-page .fishroom-share-actions{
  margin-top:30px!important;
  align-items:center!important;
}

@media(max-width:900px){
  body.fishroom-dark-page .fishroom-share-page{
    min-height:auto!important;
    padding-top:calc(var(--announcement-height, 0px) + 82px + 24px)!important;
    padding-bottom:58px!important;
  }
  body.fishroom-dark-page .fishroom-share-page>.container{
    width:min(760px,calc(100% - 30px))!important;
  }
  body.fishroom-dark-page .fishroom-share-card{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
    max-height:none!important;
    border-radius:22px!important;
  }
  body.fishroom-dark-page .fishroom-share-image{
    width:100%!important;
    height:auto!important;
    aspect-ratio:16/10!important;
  }
  body.fishroom-dark-page .fishroom-share-copy{
    padding:30px 28px 32px!important;
  }
  body.fishroom-dark-page .fishroom-share-copy h1{
    font-size:clamp(2.8rem,9.2vw,4rem)!important;
    margin:0 0 18px!important;
  }
}

@media(max-width:650px){
  body.fishroom-dark-page .fishroom-share-page{
    padding-top:calc(var(--announcement-height, 0px) + 78px + 18px)!important;
    padding-bottom:46px!important;
  }
  body.fishroom-dark-page .fishroom-share-page>.container{
    width:calc(100% - 24px)!important;
  }
  body.fishroom-dark-page .fishroom-share-card{
    border-radius:20px!important;
  }
  body.fishroom-dark-page .fishroom-share-image{
    aspect-ratio:4/3!important;
  }
  body.fishroom-dark-page .fishroom-share-copy{
    padding:24px 20px 26px!important;
  }
  body.fishroom-dark-page .fishroom-share-copy .eyebrow{
    margin:0 0 13px!important;
    font-size:.67rem!important;
  }
  body.fishroom-dark-page .fishroom-share-copy h1{
    font-size:clamp(2.5rem,11vw,3.3rem)!important;
    line-height:.92!important;
    margin:0 0 15px!important;
  }
  body.fishroom-dark-page .fishroom-share-copy strong{
    margin-bottom:16px!important;
  }
  body.fishroom-dark-page .fishroom-share-copy p{
    font-size:.9rem!important;
    line-height:1.55!important;
  }
  body.fishroom-dark-page .fishroom-share-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:11px!important;
    margin-top:24px!important;
  }
  body.fishroom-dark-page .fishroom-share-actions .btn{
    width:100%!important;
    min-height:52px!important;
  }
}

/* V108 — Fishroom partage : photo ouvrable en grand desktop + mobile */
body.fishroom-dark-page .fishroom-share-zoom{
  position:relative;display:block;width:100%;height:100%;padding:0;margin:0;border:0;background:transparent;cursor:zoom-in;overflow:hidden;font:inherit;color:inherit;
}
body.fishroom-dark-page .fishroom-share-zoom img{pointer-events:none}
body.fishroom-dark-page .fishroom-share-zoom-hint{
  position:absolute;right:16px;bottom:16px;z-index:2;padding:9px 13px;border:1px solid rgba(218,202,158,.45);border-radius:999px;background:rgba(10,16,11,.76);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;opacity:0;transform:translateY(5px);transition:.2s ease;pointer-events:none;
}
@media (hover:hover){body.fishroom-dark-page .fishroom-share-zoom:hover .fishroom-share-zoom-hint{opacity:1;transform:none}}
.fishroom-photo-modal{
  position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:28px;background:rgba(5,9,6,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;
}
.fishroom-photo-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}
.fishroom-photo-modal img{display:block;max-width:min(96vw,1600px);max-height:92dvh;width:auto;height:auto;object-fit:contain;border-radius:14px;box-shadow:0 24px 70px rgba(0,0,0,.48)}
.fishroom-photo-close{position:fixed;top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));z-index:2;width:48px;height:48px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(14,21,15,.88);color:#fff;font:300 34px/1 Arial,sans-serif;cursor:pointer;display:grid;place-items:center;padding:0}
body.fishroom-photo-open{overflow:hidden!important}
@media(max-width:650px){
  body.fishroom-dark-page .fishroom-share-zoom-hint{opacity:1;transform:none;right:10px;bottom:10px;padding:7px 10px;font-size:.62rem}
  .fishroom-photo-modal{padding:12px}
  .fishroom-photo-modal img{max-width:100%;max-height:88dvh;border-radius:10px}
  .fishroom-photo-close{width:44px;height:44px;font-size:30px}
}
