@charset "UTF-8";

/* Source conservée : assets/css/main.css */

:root{--navy:#0a2d45;--deep:#062237;--red:#d80618;--sand:#f5f1eb;--pale:#eef4f7;--ink:#1a3545;--muted:#526773;--line:#dce4e8;--max:1240px;--header:92px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;background:#fff}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:500;line-height:1.12;color:var(--navy);text-wrap:balance}h1{font-size:clamp(2.35rem,4vw,3.65rem);letter-spacing:-.035em}h2{font-size:clamp(1.9rem,2.6vw,2.7rem);letter-spacing:-.025em}h3{font-size:1.12rem;line-height:1.35;color:var(--navy)}p{margin-top:1rem}p:first-child{margin-top:0}a{color:inherit;text-underline-offset:4px}img{max-width:100%;height:auto;display:block}button,summary{font:inherit}button{cursor:pointer;color:var(--navy)}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #e79f34;outline-offset:5px}[hidden]{display:none!important}.container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.section{padding:76px 0}.section h2+.prose{margin-top:22px}.section h2+.cards,.section h2+.product-grid{margin-top:32px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;font-weight:700;color:var(--red);margin:0 0 18px}.prose p+p{margin-top:1.05em}.prose{max-width:75ch}.prose+h3{margin-top:30px}.prose+.button{margin-top:25px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:12px 22px;border:1px solid var(--red);border-radius:5px;background:var(--red);color:#fff;font-size:.91rem;font-weight:700;line-height:1.4;text-align:center;text-decoration:none;transition:background .15s,transform .15s}.button:hover{background:#ad0010;border-color:#ad0010;transform:translateY(-1px)}.button-white{background:#fff;color:var(--navy);border-color:#fff}.button-white:hover{background:var(--pale);border-color:var(--pale)}.button-secondary{background:var(--navy);border-color:var(--navy)}.button-outline{border-color:#b8c9d3;background:transparent;color:#fff}.button-outline:hover{background:#ffffff18;border-color:white}.text-link{display:inline-flex;align-items:center;min-height:44px;color:var(--navy);font-weight:700;text-decoration:underline;text-decoration-color:#bdcbd3}.text-link:hover{color:var(--red)}.phone-link{font-size:1.12rem;font-weight:700;text-decoration:none;white-space:nowrap}.soft{background:var(--sand)}.icon{width:54px;height:54px;object-fit:contain}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:200;top:-100px;left:20px;padding:14px;background:#fff;border:2px solid var(--red)}.skip-link:focus{top:10px}
/* The original logo and six distinct activities. */
.site-header{height:var(--header);position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}.header-inner{height:100%;max-width:1450px;margin:auto;padding:0 28px;display:flex;align-items:center;gap:24px}.brand{display:block;flex:none;text-decoration:none}.brand-crop{position:relative;display:block;width:166px;height:78px;overflow:hidden}.brand-crop img{position:absolute;top:50%;left:0;width:100%;max-width:none;height:auto;transform:translateY(-50%)}.main-nav{display:flex;align-items:stretch;justify-content:center;gap:22px;margin-left:auto;height:100%}.main-nav>a,.info-toggle{font-size:.76rem;font-weight:700;line-height:1.35;display:flex;align-items:center;position:relative;text-decoration:none;max-width:94px;border:0;background:transparent;padding:16px 0;text-align:left}.main-nav>a:hover,.main-nav>a[aria-current],.info-toggle:hover{color:var(--red)}.main-nav>a[aria-current]:after{content:"";position:absolute;bottom:17px;left:0;right:0;height:2px;background:var(--red)}.info-menu{display:flex;position:relative}.info-toggle{gap:6px}.info-links{position:absolute;top:calc(100% - 12px);right:-20px;min-width:205px;background:#fff;border:1px solid var(--line);border-radius:5px;box-shadow:0 14px 32px #0a2d451c;padding:8px}.info-links a{display:block;text-decoration:none;padding:12px;font-size:.88rem;font-weight:700}.info-links a:hover{background:var(--pale)}.header-cta{font-size:.76rem;min-height:44px;white-space:nowrap;padding:10px 13px;gap:8px}.menu-toggle,.mobile-phone{display:none}.breadcrumb{display:flex;gap:10px;align-items:center;min-height:46px;font-size:.75rem;line-height:1.4;color:var(--muted);flex-wrap:wrap;padding-block:12px}.breadcrumb a{text-decoration:none}
/* The V3 visual family: photography, navy veil, red action. */
.home-intro-section{padding:42px 0 36px;background:#fafbfc}.home-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:68px;align-items:center}.home-intro h1,.home-intro h2{font-size:clamp(2rem,3.2vw,3rem)}.home-intro .eyebrow{margin-bottom:12px}.home-intro .prose{font-size:.97rem}.carousel{position:relative;background:var(--navy);color:#fff;isolation:isolate}.slide{position:relative;min-height:540px;display:flex;align-items:center;padding:66px 0 106px;isolation:isolate}.home-carousel .slide{min-height:490px}.slide-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 50%;z-index:-3}.slide-shade{position:absolute;inset:0;background:linear-gradient(90deg,#041d2ef0 0%,#051e2fc7 37%,#051f2e33 74%,#03182620);z-index:-2}.slide-content h1,.slide-content h2{max-width:650px;color:#fff;font-size:clamp(2.4rem,4.25vw,3.9rem)}.slide-content .prose{max-width:590px;font-size:1.04rem;line-height:1.7;margin-top:25px}.slide-content .eyebrow{color:#e4edf2;letter-spacing:.2em}.slide-content .actions{max-width:690px}.carousel-bar{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:30px;z-index:3;pointer-events:none}.carousel-dots,.carousel-arrows{display:flex;gap:6px;pointer-events:auto}.carousel-dot{border:0;background:transparent;min-width:44px;height:44px;position:relative;color:white;padding:0}.carousel-dot:before{content:"";width:8px;height:8px;display:block;border-radius:50%;background:#ffffff60;margin:auto}.carousel-dot[aria-pressed=true]:before{background:#fff;outline:1px solid white;outline-offset:5px}.carousel-dot span{display:none}.carousel-arrows{gap:10px}.carousel-arrows button{border:1px solid #ffffff75;background:#082c454d;color:#fff;border-radius:50%;width:44px;height:44px;font-size:1.3rem;line-height:1}.carousel-arrows button:hover{background:var(--red);border-color:var(--red)}.hero-signature{position:absolute;right:max(38px,calc((100vw - 1240px)/2));bottom:22px;width:235px;filter:brightness(0) invert(1);pointer-events:none;opacity:.88}.illustration-credit{position:absolute;right:12px;bottom:9px;font-size:10px;line-height:1.4;color:#fff;text-shadow:0 1px 3px #000}
/* Editorial blocks, benefits and service navigation. */
.benefits{background:var(--pale);padding:32px 0 38px;border-bottom:1px solid var(--line)}.benefits>.container>h2{font-family:Arial,sans-serif;text-transform:uppercase;font-size:.72rem;letter-spacing:.2em;text-align:center;color:var(--muted);margin-bottom:28px;font-weight:700}.cards{display:grid;gap:22px;margin-top:30px}.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}.columns-5{grid-template-columns:repeat(5,minmax(0,1fr))}.text-card{background:#fff;border:1px solid var(--line);border-radius:7px;padding:28px}.text-card .icon{margin-bottom:20px}.text-card p{font-size:.95rem;color:var(--muted)}.benefits .cards{margin-top:0;gap:0}.benefits .text-card{background:transparent;text-align:center;padding:0 20px;border:0;border-right:1px solid #d2dfe6;border-radius:0}.benefits .text-card:last-child{border:0}.benefits .icon{margin:0 auto 12px;width:42px;height:42px}.benefits h3{font-size:.98rem}.benefits .text-card p{font-size:.81rem;line-height:1.5}.benefit-short{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}.benefit-short .icon{margin:0 auto 10px;width:42px;height:42px}.benefit-short h2{font-family:Arial,sans-serif;font-weight:700;font-size:.96rem;letter-spacing:0}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:72px}.split.reverse>.photo{order:2}.split-copy h3{margin-top:28px}.split-copy .prose{margin-top:22px}.split-copy blockquote{border-left:3px solid var(--red);padding-left:22px;margin-top:28px;font-family:Georgia,serif;font-size:1.55rem;font-style:italic;line-height:1.45}.photo{min-width:0}.photo img{width:100%;height:390px;object-fit:cover;border-radius:6px}.photo figcaption{color:var(--muted);font-size:.7rem;line-height:1.5;margin-top:10px}.section+.section:not(.soft):not(.benefits):not(.cta-section):not(.catalog-section):not(.timeline-section){border-top:1px solid #f0f2f3}.compact-opening{padding:40px 0 62px;background:linear-gradient(115deg,#fff 20%,#f2f6f8)}.compact-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:72px;align-items:center}.compact-grid h1{font-size:clamp(2.2rem,3.6vw,3.35rem)}.compact-grid .prose{margin-top:25px}.compact-grid>.photo img{height:300px}.notice{padding:24px 28px;border-left:3px solid var(--red);background:#fff;margin-top:32px}.notice .prose{max-width:none}.notice h3+.prose{margin-top:12px}.price{font-size:1.65rem!important;color:var(--navy)!important;font-family:Georgia,serif}.contact-band{background:var(--navy);border-radius:8px;padding:48px 54px;display:flex;align-items:center;justify-content:space-between;gap:50px;color:#fff}.contact-band h2{color:#fff}.contact-band .prose{max-width:770px;color:#e0e9ef;font-size:.96rem;margin-top:18px}.contact-band .button{flex-shrink:0;max-width:255px}.cta-section{padding:30px 0 76px}.consumer-note{display:flex;align-items:center;gap:60px;justify-content:space-between}.consumer-note>div{max-width:840px}.consumer-note h2{font-size:2rem}.consumer-note .button,.consumer-note>.text-link{flex-shrink:0}.consumer-note .prose{margin-top:20px}.services-section{padding:66px 0}.services-section>.container>h2,.services-section>.container>.eyebrow{text-align:center}.service-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:36px}.service-card{position:relative;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:white;text-decoration:none;transition:box-shadow .18s,transform .18s}.service-card>img{width:100%;height:125px;object-fit:cover}.service-card>div{padding:16px 15px 42px}.service-card .icon{width:35px;height:35px;margin-bottom:13px}.service-card h3{font-size:.95rem;line-height:1.3;min-height:2.6em}.service-card p{font-size:.77rem;line-height:1.6;color:var(--muted);margin-top:10px}.card-arrow{position:absolute;bottom:13px;right:16px;color:var(--red);font-size:1.25rem}.service-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #0a2d4517}.service-card:hover h3{color:var(--red)}.story-section{padding:0 0 50px}.history-teaser{display:grid;grid-template-columns:1fr 1.12fr;background:var(--sand);border-radius:8px;overflow:hidden}.history-teaser>.photo img{height:100%;min-height:485px;border-radius:0;object-position:34% center}.history-teaser-copy{position:relative;isolation:isolate;padding:48px 52px;overflow:hidden}.compass{pointer-events:none;position:absolute;right:-95px;top:-40px;width:360px;opacity:.09;z-index:-1}.history-teaser-copy h2{font-size:2.3rem}.history-teaser-copy .prose{font-size:.98rem;margin-top:24px}.history-teaser-copy .button{margin-top:24px}.story-signature{width:265px;max-height:106px;object-fit:contain;margin-top:25px;margin-left:auto}.footer-signature{width:190px;margin-top:24px;filter:brightness(0) invert(1);opacity:.85}
/* Catalogue photos preserve full products and labels. */
.catalog-section{background:#f9fafb}.catalog-section>.container>.prose{margin-top:20px;max-width:870px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:36px}.product-card{background:white;border:1px solid var(--line);border-radius:7px;overflow:hidden;display:flex;flex-direction:column}.product-image{height:270px;padding:16px;background:#fff;display:flex;align-items:center;justify-content:center}.product-image img{width:100%;height:100%;object-fit:contain}.product-copy{padding:22px;border-top:1px solid #eef1f3;flex:1}.product-copy p{color:var(--muted);font-size:.87rem;line-height:1.6;margin-top:10px}.product-copy h3{font-size:1.06rem}.crew-products .product-image{height:225px}.catalogue-more{margin-top:30px}.catalogue-more summary{border:1px solid var(--navy);border-radius:5px;padding:14px 24px;cursor:pointer;color:var(--navy);font-weight:700;max-width:450px;margin:auto;text-align:center;min-height:52px}.catalogue-more summary span{display:block;font-size:.78rem;font-weight:400;margin-top:2px}.catalogue-more summary:hover{background:var(--pale)}.steps{list-style:none;padding:0;margin:35px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.steps li{border-top:1px solid #c9d4da;padding:22px 0}.steps li>span{font-family:Georgia,serif;font-size:2.4rem;color:var(--red);line-height:1.1;display:block;margin-bottom:14px}.steps p{font-size:.95rem;color:var(--muted)}.delivery-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:70px}.delivery-grid h2{font-size:2rem}.delivery-grid h3{margin-top:30px}.delivery-grid .prose{margin-top:22px}.delivery-grid .text-link{margin-top:25px}
/* Only Notre parcours follows the selected history panels. */
.history-intro{background:linear-gradient(120deg,#f7f4ef,#eaf2f6);padding:58px 0 64px;overflow:hidden}.history-opening{display:grid;grid-template-columns:1.25fr 1fr;gap:100px;position:relative;isolation:isolate;align-items:center}.history-opening>.compass{right:30px;top:-90px;width:410px;opacity:.14}.history-opening h1{font-style:italic;font-size:3.6rem}.history-opening blockquote{font-family:Georgia,serif;font-style:italic;font-size:1.6rem;color:var(--navy);margin-top:22px;line-height:1.45}.period-label{text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:700;color:var(--muted);margin-top:32px!important}.history-opening .prose{margin-top:14px}.polaroid{padding:18px 18px 4px;background:#fff;transform:rotate(3deg);box-shadow:0 8px 24px #18354924;max-width:430px;margin:10px auto}.polaroid img{height:305px;border-radius:0;object-fit:cover}.polaroid figcaption{font-family:Georgia,serif;font-style:italic;font-size:.87rem;text-align:center;padding:3px 8px 12px}.timeline{max-width:980px;margin:0 auto}.chapter{display:grid;grid-template-columns:110px 1fr;gap:44px;position:relative;padding-bottom:70px}.chapter:last-child{padding-bottom:0}.chapter:before{content:"";position:absolute;left:109px;top:15px;bottom:0;width:1px;background:var(--line)}.chapter-date{font-family:Georgia,serif;color:var(--red);font-size:1.5rem;line-height:1.4;position:relative}.chapter-date:after{content:"";position:absolute;right:-5px;top:12px;background:var(--red);width:9px;height:9px;border-radius:50%;outline:7px solid white}.chapter-body>h2{font-size:2.2rem;margin-bottom:26px}.chapter .prose+.prose{margin-top:21px}.chapter .photo{margin-top:32px;max-width:680px}.chapter .photo img{height:auto;max-height:440px;object-fit:contain;object-position:left}.milestone-grid{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:28px;margin:35px 0}.milestone-grid article{padding:25px;border:1px solid #d7d2cc;border-radius:6px;background:#ffffff75}.milestone-grid span{font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}.milestone-grid strong{display:block;font-family:Georgia,serif;font-weight:400;color:var(--navy);font-size:clamp(2rem,3vw,3.3rem);line-height:1.2;margin-top:10px}.milestone-grid p{font-size:.9rem}.history-continuation{columns:2;column-gap:50px}.history-continuation>.prose{break-inside:avoid;margin-bottom:20px}
.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:28px}.contact-card{position:relative;padding:38px;background:#fff;border:1px solid var(--line);border-radius:7px;scroll-margin-top:120px}.contact-card h2{font-size:1.9rem;margin-top:20px}.contact-person{font-size:1.25rem;font-weight:700;margin-top:22px}.contact-card .button{margin-top:24px}.anchor-alias{position:absolute;top:0;scroll-margin-top:120px}.admin-contact{margin-top:40px;padding-top:35px;border-top:1px solid #d4d8d9;display:grid;grid-template-columns:1.2fr 1fr;gap:55px}.admin-contact h2{font-size:1.9rem}.admin-contact .prose{font-size:.95rem;margin-top:15px}.admin-contact .text-link{display:flex;width:fit-content;overflow-wrap:anywhere}.legal{max-width:860px;margin:auto}.legal h1{margin-bottom:38px}.legal h2{font-size:1.9rem;margin-top:36px;margin-bottom:18px}.legal .prose{max-width:none;margin-top:18px}.not-found{position:relative;isolation:isolate;max-width:760px;min-height:430px;padding:35px 0;overflow:hidden}.not-found h1{margin-bottom:25px}.not-found .compass{right:-60px;top:0}.site-footer{background:var(--deep);color:#d9e4ea;padding:52px 0 20px;font-size:.8rem}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1.25fr .7fr;gap:42px}.footer-brand{background:#fff;width:150px;border-radius:4px;margin-bottom:20px}.footer-brand .brand-crop{width:150px;height:76px}.site-footer h2{font-family:Arial,sans-serif;color:#fff;font-size:.88rem;font-weight:700;letter-spacing:0;line-height:1.4;margin:6px 0 20px}.footer-grid nav{display:grid;gap:3px}.footer-grid nav a,.footer-link{display:block;color:inherit;text-decoration:none;line-height:1.6;padding:5px 0;overflow-wrap:anywhere}.footer-grid nav a:hover,.footer-link:hover{color:white;text-decoration:underline}.footer-grid .prose{font-size:.8rem}.footer-grid .prose+.prose{margin-top:16px}.footer-bottom{border-top:1px solid #ffffff24;margin-top:38px;padding-top:20px;display:flex;gap:24px;align-items:center;font-size:.73rem}.footer-bottom p{margin:0 auto 0 0}.footer-bottom .footer-link{display:inline-block}.back-top{white-space:nowrap;color:#fff;text-decoration:none;min-height:44px;display:flex;align-items:center}
@media(min-width:1450px){.header-inner{gap:30px}.main-nav{gap:27px}.main-nav>a,.info-toggle{font-size:.81rem}}
@media(max-width:1279px){:root{--header:82px}.header-inner{padding:0 28px;justify-content:space-between;gap:12px}.brand-crop{width:155px;height:74px}.menu-toggle{display:flex;width:46px;height:46px;flex-direction:column;justify-content:center;gap:6px;border:0;background:transparent;padding:10px}.menu-toggle span{height:2px;background:var(--navy);display:block;width:24px}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(8px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-8px) rotate(-45deg)}.mobile-phone{display:flex;align-items:center;justify-content:center;width:46px;height:46px}.mobile-phone .icon{width:28px;height:28px}.header-cta{display:none}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;height:auto;max-height:calc(100dvh - var(--header));overflow-y:auto;padding:10px 28px 22px;background:white;border-bottom:1px solid var(--line);box-shadow:0 14px 30px #0a2d4514}.main-nav.is-open{display:block}.main-nav>a,.info-toggle{font-size:.95rem;max-width:none;min-height:48px;width:100%;padding:13px 0;border-bottom:1px solid #edf0f2}.main-nav>a[aria-current]:after{display:none}.info-menu{display:block}.info-toggle{justify-content:space-between}.info-links{position:static;border:0;box-shadow:none;background:var(--pale);padding:6px 15px;border-radius:0}.service-grid{grid-template-columns:repeat(3,1fr);gap:22px}.service-card>img{height:175px}.service-card>div{padding:20px 24px 38px}.service-card h3{min-height:0;font-size:1.1rem}.service-card p{font-size:.89rem}.split{gap:42px}.compact-grid{gap:40px}.benefits .text-card{padding:0 12px}.footer-grid{gap:24px}.columns-4{grid-template-columns:repeat(2,1fr)}.contact-band{padding:38px;gap:30px}.history-opening{gap:55px}.hero-signature{width:210px}.home-intro{gap:40px}}
@media(max-width:800px){.container{width:calc(100% - 40px)}.section{padding:52px 0}.home-intro-section{padding:30px 0}.home-intro{grid-template-columns:1fr;gap:18px}.home-intro h1,.home-intro h2{font-size:2.35rem;max-width:650px}.home-intro .prose{font-size:.93rem}.slide{min-height:550px;padding:48px 0 104px}.home-carousel .slide{min-height:490px}.slide-content h1,.slide-content h2{font-size:3rem;max-width:550px}.slide-content .prose{font-size:1rem;max-width:540px}.slide-shade{background:linear-gradient(90deg,#051e30ee,#062539b8 66%,#06253966)}.hero-signature{width:170px;right:22px;bottom:25px}.carousel-bar{bottom:24px;gap:10px}.carousel-dots{gap:0}.carousel-dot{min-width:36px}.benefits{padding:28px 0}.benefits .columns-5{grid-template-columns:repeat(3,1fr);gap:25px 0}.benefits .columns-4{grid-template-columns:repeat(2,1fr);gap:25px 0}.benefits .text-card:nth-child(3),.benefits .text-card:last-child,.benefits .columns-4 .text-card:nth-child(2){border-right:0}.photo img{height:330px}.split h2{font-size:2.1rem}.compact-grid{grid-template-columns:1.5fr 1fr;gap:30px}.compact-grid h1{font-size:2.5rem}.compact-grid>.photo img{height:280px}.compact-grid .actions{align-items:flex-start;gap:8px}.compact-grid .button{font-size:.82rem;padding:12px 14px}.columns-3{grid-template-columns:repeat(2,minmax(0,1fr))}.cards .text-card:last-child:nth-child(odd){grid-column:1/-1}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.product-image{height:250px}.benefit-short{gap:16px}.benefit-short h2{font-size:.85rem}.contact-band{display:block}.contact-band .button{margin-top:25px}.history-teaser-copy{padding:32px}.history-teaser-copy h2{font-size:2rem}.history-teaser-copy .prose{font-size:.9rem}.history-opening{grid-template-columns:1.1fr 1fr;gap:35px}.history-opening h1{font-size:2.75rem}.history-opening blockquote{font-size:1.35rem}.polaroid{padding:12px 12px 2px}.polaroid img{height:250px}.chapter{grid-template-columns:82px 1fr;gap:28px}.chapter:before{left:81px}.chapter-date{font-size:1.2rem}.chapter-date:after{top:9px}.chapter-body>h2{font-size:2rem}.milestone-grid{gap:16px}.milestone-grid article{padding:20px}.history-continuation{columns:1}.consumer-note{gap:30px}.consumer-note>.text-link{max-width:180px}.delivery-grid{gap:40px}.steps{gap:22px}.contact-card{padding:28px}.contact-card h2{font-size:1.65rem}.admin-contact{gap:30px}.footer-grid{grid-template-columns:1.2fr 1fr;gap:35px 50px}.footer-bottom{flex-wrap:wrap;gap:5px 20px}.footer-bottom p{flex-basis:100%;margin-bottom:8px}}
@media(max-width:580px){:root{--header:76px}.header-inner{padding:0 16px}.brand-crop{width:145px;height:70px}.container{width:calc(100% - 36px)}.section{padding:42px 0}h1{font-size:2.4rem}h2{font-size:2rem}.eyebrow{font-size:.65rem;letter-spacing:.15em;margin-bottom:13px}.breadcrumb{font-size:.68rem;min-height:40px;padding-block:10px}.home-intro-section{padding:26px 0}.home-intro h1,.home-intro h2{font-size:2.12rem}.home-intro .prose{font-size:.87rem;line-height:1.6}.home-intro{gap:15px}.slide{min-height:555px;padding:34px 0 114px}.home-carousel .slide{min-height:520px}.slide-content h1,.slide-content h2{font-size:2.55rem;max-width:100%}.slide-content .prose{font-size:.94rem;line-height:1.65;margin-top:22px}.slide-image{object-position:65% center}.slide-shade{background:linear-gradient(90deg,#032238eb,#06263bc9 60%,#092d4582)}.slide-content .actions{gap:10px;margin-top:25px}.slide-content .button{padding:11px 13px;font-size:.79rem;min-height:46px}.hero-signature{display:none}.carousel-bar{bottom:30px;justify-content:space-between;gap:8px}.carousel-dot{min-width:32px;height:44px}.carousel-arrows{gap:8px}.illustration-credit{font-size:9px;bottom:8px}.benefits{padding:27px 0}.benefits>.container>h2{font-size:.63rem;margin-bottom:25px}.benefits .columns-5,.benefits .columns-4{grid-template-columns:1fr 1fr;gap:24px 0}.benefits .text-card{padding:0 12px!important;grid-column:auto!important;border-right:1px solid #d2dfe6!important}.benefits .text-card:nth-child(even),.benefits .text-card:last-child{border-right:0!important}.benefits .text-card:last-child:nth-child(odd){grid-column:1/-1!important;max-width:275px;justify-self:center}.benefits .text-card .icon{width:38px;height:38px;margin-bottom:8px}.benefits h3{font-size:.85rem}.benefits .text-card p{font-size:.74rem;line-height:1.5;margin-top:8px}.benefit-short{grid-template-columns:1fr 1fr;gap:23px}.service-grid{grid-template-columns:1fr;gap:12px;margin-top:26px}.service-card{display:grid;grid-template-columns:103px 1fr;align-items:stretch;min-height:125px}.service-card>img{height:100%;min-height:125px;object-fit:cover}.service-card>div{padding:15px 31px 15px 17px}.service-card .icon{display:none}.service-card h3{font-size:.98rem}.service-card p{font-size:.77rem;line-height:1.45;margin-top:6px}.card-arrow{bottom:auto;top:calc(50% - 12px);right:12px}.services-section>.container>h2{font-size:1.95rem}.history-teaser{grid-template-columns:1fr}.history-teaser>.photo img{height:230px;min-height:0;object-position:center 45%}.history-teaser-copy{padding:30px 25px}.history-teaser-copy h2{font-size:2rem}.history-teaser-copy .prose{font-size:.93rem}.story-signature{width:230px}.story-section{padding:0 0 20px!important}.cta-section{padding:25px 0 45px!important}.contact-band{padding:30px 25px}.contact-band h2{font-size:2rem}.contact-band .prose{font-size:.93rem}.contact-band .button{max-width:none;font-size:.82rem}.split,.compact-grid{grid-template-columns:1fr;gap:28px}.split.reverse>.photo{order:0}.split-copy h2{font-size:2rem}.split-copy .prose{font-size:.95rem;margin-top:19px}.photo img{height:275px}.compact-opening{padding:28px 0 40px}.compact-grid h1{font-size:2.35rem}.compact-grid>.photo{display:none}.compact-grid .actions{gap:10px 20px;align-items:center}.compact-grid .prose{font-size:.96rem;margin-top:20px}.compact-grid .button{font-size:.86rem}.columns-3,.columns-4{grid-template-columns:1fr;gap:16px}.text-card{padding:25px}.text-card .icon{width:44px;height:44px;margin-bottom:17px}.text-card h3{font-size:1.1rem}.text-card p{font-size:.92rem}.cards .text-card:last-child:nth-child(odd){grid-column:auto}.product-grid{grid-template-columns:1fr;gap:22px;margin-top:28px}.product-image{height:295px;padding:14px}.product-copy{padding:19px 22px}.product-copy h3{font-size:1.15rem}.crew-products .product-image{height:225px}.catalogue-more summary{font-size:.88rem;padding:13px 16px}.consumer-note{display:block}.consumer-note>.text-link,.consumer-note>.button{margin-top:20px;max-width:none}.notice{padding:20px;margin-top:26px}.notice .prose{font-size:.92rem}.steps{grid-template-columns:1fr;gap:6px}.steps li{position:relative;padding:19px 0 20px 57px;min-height:100px}.steps li>span{position:absolute;left:0;top:19px;font-size:2rem}.steps h3{font-size:1.1rem}.steps p{font-size:.92rem;margin-top:9px}.delivery-grid{grid-template-columns:1fr;gap:35px}.delivery-grid>div+div{border-top:1px solid #d3d9dc;padding-top:30px}.history-opening{grid-template-columns:1fr;gap:25px}.history-opening h1{font-size:3rem}.history-opening blockquote{font-size:1.5rem}.history-opening .polaroid{width:90%;max-width:360px;margin:12px auto}.history-opening .compass{right:-150px;top:0}.polaroid img{height:255px}.chapter{grid-template-columns:1fr;gap:18px;padding-left:24px;padding-bottom:50px}.chapter:before{left:0;top:12px}.chapter-date{font-size:1.4rem}.chapter-date:after{left:-28px;right:auto;top:12px}.chapter-body>h2{font-size:2rem;margin-bottom:22px}.chapter .prose{font-size:.95rem}.chapter .photo{margin-top:25px}.chapter .photo img{height:auto;max-height:none}.milestone-grid{grid-template-columns:1fr;gap:14px;margin:28px 0}.milestone-grid article{padding:20px 24px;display:grid;grid-template-columns:1fr auto;gap:7px 15px;align-items:center}.milestone-grid strong{font-size:2.4rem;margin:0;grid-column:2;grid-row:1/3}.milestone-grid p{margin:0}.history-continuation{font-size:.95rem}.contact-cards{grid-template-columns:1fr;gap:22px}.contact-card{padding:28px}.contact-card h2{font-size:1.85rem}.contact-person{font-size:1.18rem}.contact-card .button{font-size:.8rem}.admin-contact{grid-template-columns:1fr;gap:18px}.admin-contact .text-link{font-size:.83rem}.legal h1{font-size:2.4rem}.legal h2{font-size:1.8rem}.legal p{font-size:.95rem;overflow-wrap:anywhere}.not-found{min-height:410px;padding:10px 0}.not-found h1{font-size:2.4rem}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px}.footer-about{grid-column:1/-1}.footer-grid>div:nth-child(3){grid-column:1/-1;grid-row:3}.footer-grid>div:nth-child(4){grid-column:2;grid-row:2}.site-footer{padding:35px 0 16px}.footer-grid h2{font-size:.83rem}.footer-grid nav a,.footer-link{min-height:34px;padding-block:7px}.footer-signature{width:160px}.footer-bottom{margin-top:25px}.footer-bottom .back-top{flex-basis:100%;margin-top:5px}}
/* Keep every carousel control usable even on a 320px viewport. */
.carousel-dot{min-width:44px}
@media(max-width:580px){.home-carousel .carousel-bar{flex-wrap:wrap;bottom:18px}.home-carousel .carousel-dots{width:100%;justify-content:center}.home-carousel .carousel-arrows{margin-left:auto}.home-carousel .slide{padding-bottom:158px;min-height:565px}.footer-grid nav a,.footer-grid .footer-link{min-height:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}


/* V4 — retours client, 28 septembre 2026. */
.header-cta{border-radius:999px;padding:12px 18px}
.mobile-nav-actions{display:none}
.footer-brand{background:transparent;width:154px;border-radius:0;margin-bottom:20px}
.footer-brand img{position:static;display:block;width:154px;height:auto;transform:none}
.footer-about>.prose{font-size:.94rem;font-weight:600;line-height:1.7;color:#edf4f8}
.services-section>.container>.eyebrow{font-weight:800;font-size:.83rem;letter-spacing:.12em}
.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.service-card>img{height:205px}
.service-card>div{padding:25px 28px 46px}
.service-card h3{font-size:1.16rem;min-height:0}
.service-card p{font-size:.93rem;line-height:1.65}
.home-intro-section{padding:54px 0;margin-bottom:54px}
.professional-panel{max-width:850px;margin-inline:auto;text-align:center}
.professional-copy .prose{margin:22px auto 0}
.professional-copy .button{margin-top:26px}
.skinpack-story .text-link{margin-top:22px}
.skinpack-story .photo img{height:370px;object-position:center}
.local-preparation-mark{max-width:410px;margin-top:30px;padding:14px;background:white;border:1px solid var(--line);border-radius:6px}
.local-preparation-mark img{width:100%;height:auto}
.ice-opening{background-color:#eef4f7;background-image:linear-gradient(90deg,rgba(255,255,255,.5),rgba(255,255,255,.3) 58%,rgba(255,255,255,.12)),url('/assets/img/fond-glace-texture-v17.webp');background-size:auto,627px 627px;background-repeat:no-repeat,repeat;background-position:center,left top}
.preparation-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.preparation-grid .text-card{padding:24px 20px}
.preparation-grid .text-card h3{font-size:1.02rem}
.preparation-grid .text-card p{font-size:.87rem}
@media(min-width:1280px){
  .header-inner{gap:20px}
  .main-nav{gap:0}
  .main-nav>a,.info-toggle{color:var(--navy);font-size:.73rem;letter-spacing:.045em;text-transform:uppercase;text-align:center;justify-content:center;max-width:126px;padding:14px 13px}
  .main-nav>a+a:before,.info-menu:before{content:"";position:absolute;left:0;top:calc(50% - 15px);width:1px;height:30px;background:#d5dfe5}
  .main-nav>a[aria-current]:after{left:13px;right:13px;bottom:17px}
  .main-nav>a:hover,.main-nav>a[aria-current],.info-toggle:hover{color:var(--red)}
}
@media(max-width:1279px){
  .main-nav>a,.info-toggle{text-transform:uppercase;letter-spacing:.06em;color:var(--navy);font-size:.85rem}
  .mobile-nav-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:20px}
  .mobile-nav-actions .button{border-radius:999px;font-size:.82rem}
}
@media(max-width:1000px){
  .preparation-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
  .service-card>img{height:190px}
  .service-card>div{padding:22px 23px 40px}
  .preparation-grid .text-card:last-child:nth-child(odd){grid-column:auto}
}
@media(max-width:800px){
  .home-intro-section{padding:38px 0;margin-bottom:38px}
  .skinpack-story .photo img{height:320px}
}
@media(max-width:580px){
  .services-section>.container>.eyebrow{font-size:.72rem}
  .service-grid{grid-template-columns:1fr;gap:12px}
  .service-card>img{height:100%;min-height:125px}
  .service-card>div{padding:15px 31px 15px 17px}
  .service-card h3{font-size:.98rem}
  .service-card p{font-size:.77rem;line-height:1.45}
  .home-intro-section{padding:35px 0;margin-bottom:30px}
  .professional-panel{text-align:left}
  .skinpack-story .photo img{height:270px}
  .local-preparation-mark{max-width:100%;margin-top:25px;padding:10px}
  .ice-opening{background-image:linear-gradient(90deg,rgba(255,255,255,.55),rgba(255,255,255,.45)),url('/assets/img/fond-glace-texture-v17.webp');background-size:auto,627px 627px;background-repeat:no-repeat,repeat;background-position:center,left top}
  .preparation-grid{grid-template-columns:1fr;gap:16px}
  .preparation-grid .text-card{padding:25px}
  .preparation-grid .text-card h3{font-size:1.1rem}
  .preparation-grid .text-card p{font-size:.92rem}
  .footer-about>.prose{font-size:.92rem}
}
@media(max-width:380px){.mobile-nav-actions{grid-template-columns:1fr}}


/* Source conservée : assets/css/v5.css */
/* V5 — shared presentation and the page-specific changes approved in MAP. */
.site-header .brand-crop img{width:90%;left:5%}
.breadcrumb{font-family:Arial,Helvetica,sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.09em}
.breadcrumb [aria-hidden]{font-weight:300;color:#7c8c96}
.footer-about>.prose{font-size:.85rem;font-weight:600;line-height:1.7;text-transform:uppercase}
.footer-about>.prose p+p{margin-top:1.25em}
.footer-bottom,.footer-bottom a{font-style:italic}
.ice-section{background-color:#f8fbfc;background-image:url('/assets/img/fond-glace-texture-v17.webp');background-size:627px 627px;background-repeat:repeat;background-position:left top}
.section.ice-section{border-top:0}
.catalog-background{background:#f9fafb}
.notice.notice-navy{border-left-color:#0a2d45}
.guest-yacht-background{position:relative;isolation:isolate;background:#eff4f6 url('/assets/img/yacht-au-bord-de-la-mediterranee-1600.webp') center/cover no-repeat}
.guest-yacht-background:before{content:"";position:absolute;inset:0;background:rgba(255,255,255,.68);z-index:-1}
.guest-yacht-background .text-card{background:rgba(255,255,255,.88)}
.page-contact .contact-services{background:#fff}
.page-contact .contact-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.page-contact .contact-card{display:flex;flex-direction:column;padding:30px 26px;background:#0a2d45;border-color:#0a2d45;color:#fff}
.page-contact .contact-card h2{color:#fff;font-size:1.55rem;line-height:1.25}
.page-contact .contact-card .icon{filter:brightness(0) invert(1);opacity:1}
.page-contact .contact-card .contact-person{font-size:1.15rem}
.page-contact .contact-card .prose{margin-top:22px;font-size:.95rem;line-height:1.65}
.page-contact .contact-card .button{align-self:flex-start;margin-top:auto;position:relative;top:0}
.page-contact .contact-card .contact-person,.page-contact .contact-card .prose{margin-bottom:26px}
.page-contact .contact-card .text-link{font-size:.78rem;color:#fff;overflow-wrap:anywhere;max-width:100%;margin-top:14px}
.page-contact .contact-card .button{background:#d80618;border-color:#d80618;color:#fff}
.page-contact .contact-card .button:hover{background:#ad0010;border-color:#ad0010}
.no-script-services{padding-block:16px;display:flex;gap:16px;flex-wrap:wrap}
@media(max-width:1050px){.page-contact .contact-cards{gap:16px}.page-contact .contact-card{padding:26px 20px}.page-contact .contact-card h2{font-size:1.35rem}}
@media(max-width:800px){.page-contact .contact-cards{grid-template-columns:1fr}.page-contact .contact-card{padding:30px}.page-contact .contact-card h2{font-size:1.65rem}.page-contact .contact-card .button{margin-top:0}}


/* Source conservée : assets/css/v6.css */
/* V6 — MAP SITE-V2-060/061; only the approved deltas from V5. */
@font-face{font-family:"Work Sans";font-style:normal;font-weight:300;font-display:swap;src:url('/assets/fonts/work-sans-300.ttf') format('truetype')}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/work-sans-700.ttf') format('truetype')}
.main-nav>a,.info-toggle,.info-links .nav-link{font-family:"Work Sans",Arial,Helvetica,sans-serif;font-weight:300}
.main-nav>a[aria-current="page"],.info-links .nav-link[aria-current="page"]{font-weight:700}
.selection-icon-pair{display:flex;align-items:center;gap:14px;min-height:64px;margin:0 0 18px}
.selection-icon-pair img{display:block;width:56px;height:56px;object-fit:contain;margin:0;flex:0 0 56px}
.local-preparation-section{background:#fff}
.local-preparation-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(28px,5vw,78px);align-items:center}
.local-preparation-copy{min-width:0}
.local-preparation-copy h2{max-width:520px}
.local-preparation-copy .prose{max-width:520px}
.local-preparation-visual{margin:0;min-width:0;background:#fff}
.local-preparation-visual img{display:block;width:100%;height:auto;object-fit:contain}
.family-carousel .slide{min-height:0;height:clamp(360px,39vw,640px);padding:0}
.family-carousel .slide-image{object-position:center 62%}
@media(max-width:760px){
 .local-preparation-grid{grid-template-columns:1fr;gap:24px}
 .local-preparation-visual{width:100%;max-width:650px;justify-self:center}
 .family-carousel .slide{height:clamp(290px,74vw,460px)}
 .family-carousel .slide-image{object-position:44% 64%}
 .selection-icon-pair{gap:10px}
}


/* Source conservée : assets/css/v7.css */
/* V7 — retours V6. Les composants validés du header/footer et de l'accueil restent intacts. */

/* Un fond continu, partagé par plusieurs sections, garde sa texture visible. */
.ice-flow {background-color:#f8fbfc;background-image:url('/assets/img/fond-glace-texture-v17.webp');background-size:627px 627px;background-repeat:repeat;background-position:left top}
.ice-flow > .section.on-ice {
  background: transparent;
  border: 0 !important;
}
.ice-flow > .section + .section { padding-top: 42px; }
.ice-flow .local-preparation-section { border: 0; }

/* Même bandeau que « De la sélection à la livraison », décliné sur les services. */
.section.v7-benefits { padding-block: 52px; }
.section.v7-benefits > .container > .benefits-heading {
  display: flex; align-items: center; justify-content: center; gap: 24px;
  color: var(--navy); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: clamp(.805rem, 1.435vw, 1.365rem); font-weight: 700;
  line-height: 1.3; letter-spacing: .12em; text-transform: uppercase;
  text-align: center; margin: 0 0 32px;
}
.v7-benefits .benefits-heading::before,
.v7-benefits .benefits-heading::after {
  content: ""; height: 1px; width: 70px; flex: 0 0 70px; background: #8da6b4;
}
.v7-benefits .cards {
  display: grid; grid-template-columns: repeat(var(--benefit-count, 5), minmax(0, 1fr));
  gap: 0; margin: 0;
}
.v7-benefits .cards .text-card {
  position: relative; padding: 0 22px; border: 0; background: transparent;
  box-shadow: none; text-align: center; grid-column: auto;
}
.v7-benefits .text-card + .text-card::before {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0;
  width: 1px; background: #d3dfe5;
}
.v7-benefits .text-card .icon { width: 40px; height: 40px; margin: 0 auto 12px; }
.v7-benefits .text-card h3 { font-size: .93rem; line-height: 1.35; text-align: center; }
.v7-benefits .text-card p { font-size: .8rem; line-height: 1.6; text-align: center; }

/* Petit bouton intégré à chaque fenêtre existante (sans bouton HTML imbriqué). */
#accueil-a12.a2 .hero-panel .panel-copy .panel-more {
  display: none; align-items: center; justify-content: center;
  width: fit-content; padding: 8px 14px; border: 1px solid #0a2d45;
  border-radius: 999px; background: #0a2d45; color: #fff;
  font: 700 10px/1.3 "Helvetica Neue", Helvetica, Arial, sans-serif;
  letter-spacing: .065em; text-transform: uppercase; text-decoration: none;
}
#accueil-a12.a2 .hero-panel.active .panel-copy .panel-more { display: inline-flex; }
#accueil-a12.a2 .hero-panel.active:hover .panel-copy .panel-more { background: #123e58; }
#accueil-a12 .ice-story-group > .cta-section { padding-top: 46px !important; padding-bottom: 34px !important; }
#accueil-a12 .ice-story-group > .story-section { padding-top: 24px !important; padding-bottom: 64px !important; }

.v7-skinpack .skinpack-opening h1 { font-size: clamp(2.2rem, 3.4vw, 3.3rem); }
.v7-skinpack .professional-split {
  max-width: none; display: grid; grid-template-columns: 1fr 1fr;
  gap: 72px; align-items: center; text-align: left;
}
.v7-skinpack .professional-copy .prose { margin-left: 0; margin-right: 0; }
.v7-skinpack .professional-split .photo { margin: 0; }
.v7-guest .benefit-short h2 { max-width: 24ch; margin-inline: auto; }

/* Même principe que le yacht Guest : photographie, voile blanc, contenu. */
.photo-backdrop { position: relative; isolation: isolate; background-color: #eff4f6; background-size: cover; background-position: center; }
.photo-backdrop::before { content: ""; position: absolute; inset: 0; z-index: -1; background: rgba(255,255,255,.68); }
.restaurant-selection { background-image: url('/assets/img/filet-de-poisson-dresse-avec-legumes-pour-un-service-de-restauration-1600.webp'); }
.restaurant-selection .text-card { background: rgba(255,255,255,.88); }
.restaurant-selection .notice { background: rgba(255,255,255,.88); }
.page-contact .contact-services.contact-photo-backdrop { background: #eff4f6 url('/assets/img/accueil-production-r9-1536.webp') center 44% / cover no-repeat; }
.page-contact .contact-intro-grid { grid-template-columns: 1fr; max-width: 960px; }
.contact-direct { display: flex; flex-wrap: wrap; gap: 18px 32px; align-items: center; margin-block: 26px; }
.contact-direct a { display: inline-flex; align-items: center; gap: 10px; font-weight: 700; text-decoration-thickness: 1px; text-underline-offset: 4px; overflow-wrap: anywhere; }
.contact-direct .icon { flex: 0 0 24px; width: 24px; height: 24px; }
.v7-contact .contact-card h2 { min-height: 4.1em; }
.v7-contact .contact-card .contact-person { line-height: 1.85; }
.v7-contact .contact-card .button { min-width: 124px; }

.family-carousel.bottom-carousel .carousel-bar { padding: 8px 14px; background: rgba(6,34,55,.72); border-radius: 999px; width: max-content; max-width: calc(100% - 48px); }
.family-carousel.bottom-carousel .carousel-dot { color: #fff; }
.family-carousel.bottom-carousel .slide[data-slide="1"] .slide-image { object-position: center; }

@media (max-width: 1000px) {
  .v7-benefits .cards { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 0; }
  .v7-benefits .cards.columns-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v7-benefits .text-card:nth-child(3n+1)::before { content: none; }
  .v7-benefits .columns-4 .text-card:nth-child(n)::before { content: ""; }
  .v7-benefits .columns-4 .text-card:nth-child(odd)::before { content: none; }
  .v7-skinpack .professional-split { gap: 36px; }
}
@media (max-width: 700px) {
  .section.v7-benefits { padding-block: 38px; }
  .section.v7-benefits > .container > .benefits-heading { gap: 12px; font-size: clamp(.8rem, 2.66vw, 1rem); letter-spacing: .075em; }
  .v7-benefits .benefits-heading::before, .v7-benefits .benefits-heading::after { width: 22px; flex-basis: 22px; }
  .v7-benefits .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 0; }
  .v7-benefits .cards .text-card { padding-inline: 12px; }
  .v7-benefits .text-card:nth-child(n)::before { content: none; }
  .v7-benefits .text-card:nth-child(even)::before { content: ""; }
  .v7-skinpack .professional-split { grid-template-columns: 1fr; gap: 28px; }
  .v7-skinpack .professional-split .photo { order: 2; }
  .v7-contact .contact-card h2 { min-height: 0; }
  .contact-direct { flex-direction: column; align-items: flex-start; gap: 14px; }
  .contact-direct a { font-size: .91rem; max-width: 100%; }
  .ice-flow > .section + .section { padding-top: 28px; }
  #accueil-a12 .ice-story-group > .cta-section { padding-top: 28px !important; padding-bottom: 20px !important; }
  #accueil-a12 .ice-story-group > .story-section { padding-top: 20px !important; padding-bottom: 40px !important; }
}


/* Source conservée : assets/css/v8.css */
/* V8 — ajustements demandés à partir de V7, composants approuvés conservés. */
#accueil-a12.v8 .contact-band{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;align-items:stretch;overflow:hidden}
#accueil-a12.v8 .contact-band-copy{padding:44px 48px;align-self:center}
#accueil-a12.v8 .contact-band-copy .button{margin-top:26px;max-width:none}
#accueil-a12.v8 .contact-band>.photo{margin:0;position:relative;min-width:0}
#accueil-a12.v8 .contact-band>.photo img{width:100%;height:100%;min-height:360px;object-fit:cover;object-position:center;border-radius:0}
#accueil-a12.v8 .contact-band>.photo figcaption{position:absolute;right:12px;bottom:10px;color:white;background:#0a2d45c9;padding:4px 8px;border-radius:4px;font-size:10px}
#accueil-a12.v8 .history-teaser{grid-template-columns:1fr}
#accueil-a12.v8 .history-copy-content{padding:48px 54px;min-height:450px}
#accueil-a12.v8 .history-copy-content h2{max-width:720px;margin-left:auto}
#accueil-a12.v8 .history-copy-content .prose{max-width:660px;width:auto;margin-left:auto;margin-right:0}
#accueil-a12.v8 .history-maritime-image{object-position:center 48%}

.v8 .local-preparation-visual{background:transparent}
.v8 .local-preparation-visual img{background:transparent}
.v8 .professional-gallery{max-width:none;text-align:left;padding:0}
.v8 .professional-gallery .professional-copy{max-width:780px}
.v8 .professional-gallery .prose{margin-left:0;margin-right:0}
.installation-gallery{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;gap:14px;margin-top:40px;position:relative}
.installation-viewport{grid-column:2;grid-row:1;overflow-x:auto;scroll-snap-type:x mandatory;touch-action:pan-y;min-width:0;border-radius:8px}
.installation-track{display:flex;gap:20px;will-change:transform}
.installation-photo{flex:0 0 calc((100% - 20px)/2);min-width:0;margin:0;height:300px;scroll-snap-align:start}
.installation-photo img{display:block;width:100%;height:300px;object-fit:cover;border-radius:8px}
.installation-photo.portrait img{object-fit:contain}
.installation-arrow{grid-row:1;display:grid;place-items:center;height:300px;width:52px;padding:0;border:0;background:transparent;color:#0a2d45;cursor:pointer;border-radius:8px}
.installation-arrow[hidden]{display:none}
.installation-arrow[data-gallery-prev]{grid-column:1}
.installation-arrow[data-gallery-next]{grid-column:3}
.installation-arrow svg{width:28px;height:70px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.installation-arrow:hover{background:#0a2d4510}
.installation-arrow:focus-visible,.installation-viewport:focus-visible{outline:2px solid #0a2d45;outline-offset:4px}
.installation-gallery[data-ready] .installation-viewport{overflow:hidden;scroll-snap-type:none}

.page-contact.v8 .contact-scene{background-image:url('/assets/img/accueil-production-r9-1536.webp');background-position:center 45%;background-size:cover}
.page-contact.v8 .contact-scene>.section{background:transparent}
.page-contact.v8 .contact-scene::before{background:rgba(255,255,255,.65)}
.page-contact.v8 .contact-opening{padding-bottom:28px}
.page-contact.v8 .contact-intro-grid{max-width:960px;margin-inline:auto}
.page-contact.v8 .contact-intro-card{background:#fff;border-radius:22px;padding:42px 48px;box-shadow:0 10px 36px #0a2d4512}
.page-contact.v8 .contact-direct{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-block:28px}
.page-contact.v8 .secretariat-label{margin:0;color:var(--navy);font-size:.8rem;line-height:1.4;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.page-contact.v8 .contact-direct .contact-phone{font-size:clamp(32px,3.4vw,44px);line-height:1.2;letter-spacing:.01em;text-decoration:none;font-weight:700}
.page-contact.v8 .contact-direct .contact-email{font-size:16px;line-height:1.5}
.page-contact.v8 .contact-services{padding-top:24px}
.page-contact.v8 .contact-laboratory{background-color:#f8fbfc;background-image:url('/assets/img/fond-glace-texture-v17.webp');background-size:627px 627px;background-repeat:repeat;background-position:left top}
.page-contact.v8 .contact-laboratory .button{margin:8px 0 26px}
.reception-label{font-weight:700;margin-bottom:10px}
.reception-hours{border-collapse:collapse;width:100%;max-width:400px;font-size:.95rem}
.reception-hours th,.reception-hours td{padding:7px 12px;border-bottom:1px solid #0a2d4519;text-align:left;background:transparent}
.reception-hours th{font-weight:500;padding-left:0}
.reception-hours td{white-space:nowrap}
.delivery-heading{display:flex;align-items:center;gap:18px;margin-bottom:16px}
.delivery-heading h2{margin:0}
.delivery-heading .delivery-icon{width:52px;height:52px;flex:0 0 52px;margin:0}
@media(max-width:1000px){
 #accueil-a12.v8 .contact-band-copy{padding:32px}
 #accueil-a12.v8 .contact-band>.photo img{min-height:340px}
}
@media(max-width:700px){
 #accueil-a12.v8 .contact-band{grid-template-columns:1fr;gap:0}
 #accueil-a12.v8 .contact-band-copy{padding:30px 26px}
 #accueil-a12.v8 .contact-band>.photo img{height:290px;min-height:0}
 #accueil-a12.v8 .history-copy-content{padding:32px 25px;min-height:0}
 .installation-gallery{grid-template-columns:34px minmax(0,1fr) 34px;gap:7px;margin-top:28px}
 .installation-photo{flex-basis:100%}
 .installation-arrow{width:34px}
 .installation-arrow svg{width:22px;height:60px}
 .page-contact.v8 .contact-intro-card{padding:28px 23px;border-radius:16px}
 .page-contact.v8 .contact-direct .contact-phone{font-size:32px}
 .page-contact.v8 .contact-direct .contact-email{font-size:14px}
 .page-contact.v8 .contact-opening{padding-bottom:16px}
 .delivery-heading{gap:12px;align-items:flex-start}
 .delivery-heading .delivery-icon{width:42px;height:42px;flex-basis:42px}
}
@media(prefers-reduced-motion:reduce){.installation-track{transition:none!important}}


/* Source conservée : assets/css/v9.css */
/* V9 : ajustements ciblés ; tous les styles validés antérieurs sont conservés. */
#accueil-a12.v9.a2 .hero-panel .panel-copy .panel-more { background: #fff; color: #0a2d45; }
#accueil-a12.v9.a2 .hero-panel:hover .panel-copy .panel-more,
#accueil-a12.v9.a2 .hero-panel:focus-visible .panel-copy .panel-more,
#accueil-a12.v9.a2 .hero-panel:active .panel-copy .panel-more { background: #0a2d45; color: #fff; }
#accueil-a12.v9 .history-copy-content { text-align: left; }
#accueil-a12.v9 .history-copy-content h2,
#accueil-a12.v9 .history-copy-content .prose { margin-left: 0; margin-right: auto; }
#accueil-a12.v9 .history-copy-content .button { display: flex; width: fit-content; margin-left: auto; }
/* All six slides share one grid cell: the tallest determines a stable responsive height. */
#accueil-a12.v9 .home-carousel { display: grid; }
#accueil-a12.v9 .home-carousel > .slide { grid-area: 1 / 1; }
#accueil-a12.v9 .home-carousel > .slide[hidden] { display: flex !important; visibility: hidden; pointer-events: none; }
.v9 .professional-gallery .professional-copy { text-align: center; margin-inline: auto; }
.v9.v7-skinpack .professional-copy .prose { margin-inline: auto; }
.v9 .static-hero { color: #fff; background: #082d43; }
.v9 .guest-static-hero { color: var(--navy); background: #eff4f6; }
.v9 .guest-static-hero .slide-shade { background: rgba(255,255,255,.68); }
.v9 .guest-static-hero .slide-content h2,
.v9 .guest-static-hero .slide-content .eyebrow { color: var(--navy); }
.v9 .guest-yacht-background { background-image: url('/assets/img/poissons-cuisines-servis-sur-une-terrasse-dominant-la-mediterranee.webp'); }
.v9 .restaurant-selection { background-image: url('/assets/img/assortiment-de-plats-de-poisson-coquillages-et-crustaces-sur-une-table.webp'); }
.v9 .cold-chain-heading { display: flex; align-items: center; gap: 14px; margin-bottom: 22px; }
.v9 .cold-chain-heading .cold-chain-icon { width: 48px; height: 48px; flex: 0 0 48px; object-fit: contain; }
.v9 .cold-chain-heading h2 { margin: 0; }
.v9 .local-preparation-copy > .prose { margin-left: 0; }
.v9 .private-delivery-scene { background-image: url('/assets/img/poisson-cuisine-et-plats-a-partager-sur-une-table-en-plein-air.webp'); background-position: center 54%; }
.v9 .private-delivery-scene::before { background: rgba(255,255,255,.6); }
.v9 .private-delivery-card { background: #fff; border-radius: 20px; padding: 40px; gap: 48px; box-shadow: 0 12px 40px #07263b12; }
.v9 .private-delivery-card h2 { font-size: clamp(1.55rem,2.2vw,2rem); }
.v9 .private-delivery-card .pickup-option { border-left: 1px solid #dce4e8; padding-left: 40px; }
.v9 .family-static-photo { position: relative; isolation: isolate; height: clamp(180px,19.5vw,320px); overflow: hidden; }
.v9 .family-static-photo .slide-image { object-position: center 62%; }
.v9 .family-photo-veil { position: absolute; inset: 0; background: rgba(255,255,255,.4); z-index: -2; }
@media(max-width:700px) {
 .v9 .private-delivery-card { grid-template-columns: 1fr; padding: 27px 22px; gap: 28px; }
 .v9 .private-delivery-card .pickup-option { border-left: 0; padding-left: 0; border-top: 1px solid #dce4e8; padding-top: 28px; }
 .v9 .cold-chain-heading { gap: 12px; }
 .v9 .cold-chain-heading .cold-chain-icon { width: 40px; height: 40px; flex-basis: 40px; }
 .v9 .family-static-photo { height: clamp(145px,37vw,230px); }
 .v9 .family-static-photo .slide-image { object-position: 44% 64%; }
}


/* Source conservée : assets/css/v10.css */
/* V10 — ajustements ciblés après validation de V9. */
/* Même doré que le bouton Notre parcours au repos. */
#accueil-a12.v10.a2 .hero-panel:hover .panel-copy .panel-more,
#accueil-a12.v10.a2 .hero-panel:focus-visible .panel-copy .panel-more,
#accueil-a12.v10.a2 .hero-panel:active .panel-copy .panel-more {
  background: var(--history-gold, #735f4b); border-color: var(--history-gold, #735f4b); color: #fff;
}
/* Cinq fonds photographiques partagent le même voile blanc. */
.v10 .guest-static-hero .slide-shade,
.v10 .guest-yacht-background::before,
.v10 .restaurant-selection::before,
.v10 .private-delivery-scene::before,
.v10 .family-photo-veil { background: rgba(255,255,255,.76); }
/* Un seul fond glace de la réception du lot au devis de découpe. */
.v10-decoupe .ice-flow > .cta-section { padding-top: 30px; }
/* Chaîne du froid : icône x2, titre à 80 % de sa taille V9. */
.v10 .cold-chain-heading .cold-chain-icon { width: 96px; height: 96px; flex-basis: 96px; }
.v10 .cold-chain-heading h2 { font-size: clamp(1.52rem,2.08vw,2.16rem); }
.v10 .v10-private-closure > .cta-section { padding-bottom: 38px; }
.v10 .v10-private-closure > .local-preparation-section { padding-top: 21px; }
/* Sept cartes de largeur égale : 4 en haut, 3 centrées au-dessous. */
.v10 .restaurant-selection { text-align: center; }
.v10 .restaurant-selection > .container > h2 { margin-inline: auto; }
.v10 .restaurant-seven-cards { display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); gap: 22px; }
.v10 .restaurant-seven-cards > .text-card { grid-column: span 2; text-align: center; }
.v10 .restaurant-seven-cards > .text-card:nth-child(5) { grid-column: 2 / span 2; }
.v10 .restaurant-seven-cards > .text-card:nth-child(6) { grid-column: 4 / span 2; }
.v10 .restaurant-seven-cards > .text-card:nth-child(7) { grid-column: 6 / span 2; }
.v10 .restaurant-seven-cards .icon { display: block; margin-inline: auto; }
/* Format de référence SKP-03, y compris la largeur des colonnes. */
.v10-standard-photos .split,
.v10-standard-photos .compact-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 72px; }
.v10-standard-photos .split > .photo > img,
.v10-standard-photos .compact-grid > .photo > img { width: 100%; height: 390px; min-height: 0; object-fit: cover; }
@media(max-width:1279px) {
 .v10-standard-photos .split,
 .v10-standard-photos .compact-grid { gap: 42px; }
}
@media(max-width:1000px) {
 .v10 .restaurant-seven-cards { grid-template-columns: repeat(4,minmax(0,1fr)); }
 .v10 .restaurant-seven-cards > .text-card:nth-child(n) { grid-column: span 2; }
 .v10 .restaurant-seven-cards > .text-card:last-child { grid-column: 2 / span 2; }
}
@media(max-width:800px) {
 .v10-standard-photos .split > .photo > img,
 .v10-standard-photos .compact-grid > .photo > img { height: 330px; }
 .v10 .v10-private-closure > .cta-section { padding-bottom: 26px; }
}
@media(max-width:700px) {
 .v10 .cold-chain-heading .cold-chain-icon { width: 80px; height: 80px; flex-basis: 80px; }
 .v10 .v10-private-closure > .local-preparation-section { padding-top: 14px; }
}
@media(max-width:580px) {
 .v10-standard-photos .split,
 .v10-standard-photos .compact-grid { grid-template-columns: 1fr; gap: 28px; }
 .v10-standard-photos .split > .photo > img,
 .v10-standard-photos .compact-grid > .photo > img { height: 275px; }
 .v10 .cold-chain-heading h2 { font-size: 1.6rem; }
 .v10 .v10-private-closure > .cta-section { padding-bottom: 22.5px !important; }
 .v10 .restaurant-seven-cards { grid-template-columns: 1fr; }
 .v10 .restaurant-seven-cards > .text-card:nth-child(n) { grid-column: 1; }
}


/* Source conservée : assets/css/v12.css */
/* V12 — retours utilisateur du 30/09/2026, SITE-V2-068. */
/* Conserver tous les voiles, dimensions et placements de V11. */
.page-contact.v12 .contact-scene {
  background-image: url('/assets/img/v12-contact-bureau-1536.webp');
}
/* Restauration : paires de pictogrammes centrées dans les cartes existantes. */
.v12 .restaurant-seven-cards .v12-icon-pair {
  display: flex; align-items: center; justify-content: center; gap: 10px;
  height: 48px; margin: 0 auto 16px;
}
.v12 .restaurant-seven-cards .v12-icon-pair img {
  display: block; width: 48px; height: 48px; flex: 0 0 48px; object-fit: contain; margin: 0;
}
.v12 .v12-arrivages-actions { margin-top: 24px; }
.v12 .v12-arrivages-cta { border-radius: 10px; }


/* Source conservée : assets/css/v14.css */
/* V14 — retours V12, SITE-V2-069. Ajustements limités aux éléments demandés. */
.page-contact.v14 .contact-scene {
  background-image: url('/assets/img/une-collaboratrice-au-telephone-dans-le-bureau-donnant-sur-le-laboratoire-de-preparation.webp');
}
.v14 .guest-yacht-background > .container > h2 {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.v14 .guest-yacht-background .cards {
  justify-content: center;
}
.v14 .guest-yacht-background .text-card {
  text-align: center;
}
.v14 .guest-yacht-background .selection-icon-pair {
  justify-content: center;
}


/* Source conservée : assets/css/v15.css */
/* V15 — SITE-V2-070. Background alpha never affects foreground text. */
body.v15 #accueil-a12 .history-copy-content .prose {
  font-size:1.0695rem;
  background:rgba(255,255,255,.728);
}
body.v15 .guest-static-hero [data-text="TXT-GST-002"] {
  background:rgba(255,255,255,.8);
  border-radius:20px;
  padding:22px 26px;
}
body.v15 .private-delivery-card { background:rgba(255,255,255,.95); }
/* A standalone light section shared by Home and SkinPack. */
.v15 .v15-partners-section { background:#eaf4f8; color:#082b43; padding:38px 0 40px; }
.v15-partners-section .partners-block { --partners-visible:7; --partner-slot:142px; margin:0; padding:0; border:0; background:transparent; }
.v15-partners-section .partners-head { display:block; text-align:center; margin-bottom:26px; }
.v15-partners-section .partners-title { font:700 .88rem/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif; text-transform:uppercase; letter-spacing:.14em; color:#082b43; margin:0; text-align:center; }
.v15-partners-section .partners-slider { display:grid; grid-template-columns:54px minmax(0,1fr) 54px; gap:14px; align-items:center; background:transparent; }
.v15-partners-section .partners-arrow { display:grid; place-items:center; width:54px; height:105px; padding:0; border:0; border-radius:0; background:transparent; color:#082b43; cursor:pointer; transition:color .18s,background .18s; }
.v15-partners-section .partners-arrow svg { width:26.6px; height:54.6px; overflow:visible; pointer-events:none; }
.v15-partners-section .partners-arrow:hover { background:#082b430d; color:#526d80; }
.v15-partners-section .partners-arrow:focus-visible,.v15-partners-section .partners-viewport:focus-visible { outline:2px solid #826b50; outline-offset:3px; }
.v15-partners-section .partners-viewport { overflow:hidden; position:relative; background:transparent; touch-action:pan-y; cursor:grab; user-select:none; -webkit-user-select:none; }
.v15-partners-section .partners-viewport.is-dragging { cursor:grabbing; }
.v15-partners-section .partners-track { display:flex; width:max-content; background:transparent; will-change:transform; }
.v15-partners-section .partners-group { list-style:none; display:flex; flex:0 0 auto; gap:18px; align-items:center; margin:0; padding:0 18px 0 0; background:transparent; }
.v15-partners-section .partner-item { flex:0 0 var(--partner-slot); width:var(--partner-slot); height:105px; display:flex; align-items:center; justify-content:center; background:transparent; }
.v15-partners-section .partner-item img { display:block; width:auto; height:auto; max-width:min(147px,calc(var(--partner-slot) - 10px)); max-height:105px; object-fit:contain; background:transparent; pointer-events:none; }
.v15-partners-section .partners-instruction { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(max-width:1000px) { .v15-partners-section .partners-block { --partners-visible:5; } }
@media(max-width:700px) { .v15-partners-section .partners-block { --partners-visible:3; } }
@media(max-width:580px) {
  body.v15 #accueil-a12 .history-copy-content .prose { font-size:1.0465rem; }
  body.v15 .guest-static-hero [data-text="TXT-GST-002"] { padding:18px 20px; }
  .v15-partners-section .partners-title { font-size:.75rem; }
  .v15-partners-section .partners-slider { grid-template-columns:40px minmax(0,1fr) 40px; gap:5px; }
  .v15-partners-section .partners-arrow { width:40px; height:91px; }
  .v15-partners-section .partners-arrow svg { width:19.6px; height:47.6px; }
  .v15-partners-section .partners-group { gap:14px; padding-right:14px; }
  .v15-partners-section .partner-item { height:91px; }
  .v15-partners-section .partner-item img { max-height:91px; max-width:min(121.8px,calc(var(--partner-slot) - 10px)); }
}
@media(max-width:480px) { .v15-partners-section .partners-block { --partners-visible:2; } }
@media(prefers-reduced-motion:reduce) { .v15-partners-section .partners-track { will-change:auto; } .v15-partners-section .partners-arrow { transition:none; } }


/* Source conservée : assets/css/v17.css */
/* V17 — corrections ciblées depuis V16. */
/* Seule la seconde phrase de présentation du footer perd sa graisse. */
.site-footer .footer-about > .prose[data-text="TXT-COM-013"] > p:nth-of-type(2) {
  font-weight: 400;
}

/* Un fond et une origine de répétition sous les quatre premières sections de l’accueil. */
#accueil-a12 .ice-home-group {
  background-color: #f1f7f9;
  background-image: linear-gradient(110deg, #fff9, #f7fcff66), url('/assets/img/fond-glace-texture-v17.webp');
  background-size: auto, 627px 627px;
  background-repeat: no-repeat, repeat;
  background-position: center, left top;
}
#accueil-a12 .ice-home-group > .ice-services-group,
#accueil-a12 .ice-home-group > .ice-story-group {
  background: transparent;
}


/* V18 — contenu photographique descriptible, cadrages et voiles V17 conservés. */
.seo-photo-background { position: relative; isolation: isolate; background-image: none !important; }
.seo-photo-background > .seo-background-image { position: absolute; inset: 0; z-index: -2; display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; pointer-events: none; }
