/* SUD OUEST V6 — catalogue fidèle au patrimoine, design vivant et léger. */
:root{--so-blue:#2365b0;--so-sky:#67c9eb;--so-ink:#183e64}
.nav{gap:clamp(9px,1vw,17px);margin-left:16px}
.nav>a,.nav-dropdown>a{font-size:12px;font-weight:800}
.nav-dropdown{position:relative;display:flex;align-items:center;align-self:stretch}
.nav-dropdown>a{display:inline-flex;gap:5px;align-items:center}
.nav-dropdown>a span{font-size:16px;color:#6fa5cf}
.nav-dropdown-menu{position:absolute;top:calc(100% - 13px);left:-16px;min-width:238px;display:flex;flex-direction:column;background:#fff;border:1px solid #d7ebf9;border-radius:17px;padding:9px;box-shadow:0 18px 48px #15497324;opacity:0;visibility:hidden;transform:translateY(9px);transition:opacity .2s,transform .2s,visibility .2s;z-index:100}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}
.nav-dropdown-menu a{padding:12px 14px;border-radius:9px;display:block;color:#376081}
.nav-dropdown-menu a:hover,.nav-dropdown-menu a:focus-visible{background:#eaf7ff;color:#2267b2}
.hero-new{background:#ecf8ff}
.hero-new .hero-photo{transform-origin:80% 50%;animation:heroLivingFrame 23s ease-in-out infinite alternate;will-change:transform}
.hero-stream{pointer-events:none;position:absolute;z-index:0;right:-11%;top:4%;height:100%;width:45%;background:linear-gradient(107deg,transparent 29%,rgba(171,231,255,.16) 50%,transparent 67%);transform:skew(-18deg);animation:heroStream 13s ease-in-out infinite alternate}
@keyframes heroLivingFrame{0%{transform:scale(1) translateX(0)}100%{transform:scale(1.08) translateX(-1%)}}
@keyframes heroStream{0%{opacity:.35;translate:6% 0}100%{opacity:1;translate:-8% 0}}
/* Partner images are original WordPress media URLs, not fabricated endorsements. */
.partners-section{position:relative;overflow:hidden;padding:54px 0 48px;background:#fff;border-bottom:1px solid #e7f0f8}
.trust-heading{text-align:center;margin-bottom:23px}
.trust-heading .eyebrow{font-size:10px;letter-spacing:.17em;color:#3979b0}
.trust-heading h2{font-size:clamp(20px,2.2vw,27px);color:#163f68;letter-spacing:-.055em;margin:10px 0 7px}
.trust-heading p{font-size:12px;color:#7891a6;margin:0}
.partner-mask{overflow:hidden;position:relative}
.partner-mask::before,.partner-mask::after{content:"";position:absolute;top:0;bottom:0;width:8vw;z-index:2;pointer-events:none}
.partner-mask::before{left:0;background:linear-gradient(90deg,#fff,transparent)}
.partner-mask::after{right:0;background:linear-gradient(270deg,#fff,transparent)}
.partner-track{display:flex;width:max-content;gap:18px;animation:partnerMarquee 58s linear infinite}
.partner-mask:hover .partner-track{animation-play-state:paused}
.partner-logo{width:168px;height:94px;flex:none;background:#fff;border-radius:17px;border:1px solid #e1edf6;box-shadow:0 8px 25px #1e598515;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:12px}
.partner-logo img{display:block;max-width:100%;width:140px;height:53px;object-fit:contain}
.partner-logo span{font-size:9px;color:#7796ac;font-weight:700}
@keyframes partnerMarquee{to{transform:translateX(calc(-50% - 9px))}}
.featured-control{display:flex;justify-content:space-between;align-items:center;margin:-5px 0 19px;gap:10px}
.featured-control>span{font-size:10px;font-weight:900;letter-spacing:.17em;color:#5c8bab}
.featured-control>div{display:flex;gap:10px}
.featured-control button{height:39px;width:39px;display:grid;place-items:center;border:1px solid #c9e2f5;border-radius:50%;background:#fff;color:#2b70b7;transition:.2s}
.featured-control button:first-child svg{transform:rotate(180deg)}
.featured-control button:hover{background:#2365b0;color:#fff;box-shadow:0 9px 24px #2467b52d}
.featured-carousel{display:flex;gap:19px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:3px;padding:8px 3px 26px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#bedef3 transparent}
.featured-carousel>.product-card{scroll-snap-align:start;flex:0 0 calc((100% - 57px)/4);min-width:0}
.pack-families{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:31px}
.pack-family-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:325px;border-radius:25px;border:1px solid #cdeaff;background:linear-gradient(138deg,#ddf3ff,#e8f8ff 64%,#fff);transition:transform .3s,box-shadow .3s}
.pack-family-card:hover{transform:translateY(-7px);box-shadow:0 21px 45px #2365b023}
.pack-family-1{background:linear-gradient(138deg,#e8f0ff,#dff1ff 70%,#fff)}
.pack-family-2{background:linear-gradient(138deg,#eafaff,#d7f0fd 65%,#fff)}
.pack-family-photo{height:194px;padding:18px 16px 4px;display:grid;place-items:center;position:relative}
.pack-family-photo::before{content:"";position:absolute;width:170px;height:170px;border:1px solid #ffffffb6;border-radius:50%;box-shadow:0 0 0 30px #ffffff20}
.pack-family-photo img{width:95%;height:100%;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 15px 19px #21618b32);transition:transform .45s}
.pack-family-card:hover img{transform:scale(1.06) translateY(-4px)}
.pack-family-info{padding:22px 22px 24px;background:#ffffffbe;backdrop-filter:blur(9px);flex:1}
.pack-family-info>span{display:block;font-size:9px;letter-spacing:.16em;font-weight:850;color:#3988bf}
.pack-family-info h3{font-size:23px;letter-spacing:-.055em;margin:7px 0 7px;color:#19466f}
.pack-family-info p{font-size:11px;color:#67869c;line-height:1.65;margin:0 0 15px}
.pack-family-info b{font-size:11px;color:#216bb3;display:flex;gap:8px;align-items:center}
.pack-preview-title{margin:55px 0 20px;font-weight:850;font-size:17px;color:#19466f}
.shop-family-banner{border-radius:21px;padding:24px 28px;background:linear-gradient(112deg,#e8f7ff,#f8fcff);border:1px solid #d3e9f9;margin-bottom:24px}
.shop-family-banner span{display:block;font-size:10px;color:#347fba;letter-spacing:.1em;font-weight:850}
.shop-family-banner strong{display:block;font-size:23px;color:#1e527e;margin-top:9px}
.shop-family-banner p{font-size:12px;color:#6587a0;margin:8px 0 0}
.filter-option.selected{background:#e8f6ff;margin-inline:-10px;padding-inline:10px;border-radius:9px;color:#2067b4;font-weight:800}
.promo-page{background:#f7fbfe}.promo-head{max-width:750px;margin-bottom:40px}
.promo-head h2{font-size:clamp(28px,3.5vw,42px);color:#184671;line-height:1.2;letter-spacing:-.055em;margin:14px 0}
.promo-head p{color:#6e8ba0;font-size:13px}
.promo-featured{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:35px 42px;margin:0 0 40px;border-radius:25px;background:linear-gradient(113deg,#1c568d,#2d7cc2);color:#fff;position:relative;overflow:hidden}
.promo-featured:after{content:"";position:absolute;right:100px;top:-210px;height:440px;aspect-ratio:1;border:1px solid #ffffff3c;border-radius:50%;box-shadow:0 0 0 45px #ffffff0a,0 0 0 92px #ffffff08;pointer-events:none}
.promo-featured>div,.promo-featured>a{position:relative;z-index:1}
.promo-featured span{font-size:10px;letter-spacing:.13em;color:#d4eeff;font-weight:850}
.promo-featured h3{font-size:27px;max-width:480px;letter-spacing:-.045em;margin:11px 0}
.promo-featured p{font-size:12px;color:#dceeff;margin:0}
.certification-section{background:linear-gradient(145deg,#f2faff,#fff)}
.certification-layout{display:grid;grid-template-columns:.93fr 1.07fr;gap:64px;align-items:center}
.certification-copy h2{font-size:clamp(29px,3.3vw,43px);line-height:1.2;letter-spacing:-.062em;color:#173e64;margin:17px 0}
.certification-copy h2 span{color:#2f82c1}
.certification-copy p{font-size:13px;color:#66889e;line-height:1.95;max-width:520px;margin-bottom:24px}
.certificate-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.certificate-item{background:#fff;border:1px solid #dcebf6;border-radius:22px;padding:16px;display:flex;flex-direction:column;align-items:center;box-shadow:0 15px 45px #1b608b0b;transition:transform .25s,box-shadow .25s}
.certificate-item:hover{transform:translateY(-5px);box-shadow:0 23px 52px #1b608b21}
.certificate-item img{width:100%;height:206px;object-fit:contain;border-radius:11px;background:#f6fafe}
.certificate-item>div{width:100%;padding:12px 6px 2px}
.certificate-item>div>span{font-size:9px;letter-spacing:.12em;color:#4b95bd;font-weight:900}
.certificate-item strong{display:block;font-size:13px;line-height:1.5;margin:5px 0;color:#224e74}
.certificate-item small{display:flex;align-items:center;gap:6px;color:#2e79b4;font-size:10px}
.google-rating-head{display:flex;align-items:center;gap:17px;margin:0 0 20px;flex-wrap:wrap;color:#396689}
.google-wordmark{font-size:22px;color:#4285f4;font-weight:900;letter-spacing:-.04em}.google-rating-head strong{font-size:17px;color:#e19b22}
.review-source{font-size:10px;color:#2f77b9;font-weight:750;display:inline-flex;gap:6px;align-items:center}
.review-person span,.review-person small{font-size:10px;color:#7895aa}
.admin-tools,.admin-create-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.admin-product-id{display:block;color:#7291a6;margin-top:4px;font-size:10px}
@media(max-width:1150px){.nav{display:none;position:absolute;top:90px;left:0;right:0;padding:20px 24px;background:#fff;box-shadow:0 25px 40px #0b508e19;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.mobile-menu{display:grid}.nav-dropdown{display:block}.nav-dropdown>a,.nav>a{display:block;padding:12px 3px;border-bottom:1px solid #ebf3fa}.nav-dropdown-menu{position:static;transform:none;visibility:visible;opacity:1;box-shadow:none;background:#f4faff;border:0;padding:2px 12px;margin-bottom:10px;min-width:0}.nav-dropdown-menu a{font-size:11px;padding:9px}}
@media(max-width:900px){.featured-carousel>.product-card{flex-basis:calc((100% - 38px)/3)}.pack-families{gap:12px}.pack-family-info{padding:16px}.pack-family-info h3{font-size:20px}.certification-layout{grid-template-columns:1fr;gap:30px}.certificate-item img{height:185px}}
@media(max-width:700px){.featured-carousel>.product-card{flex-basis:calc((100% - 14px)/2)}.featured-carousel{gap:14px}.pack-families{grid-template-columns:1fr}.pack-family-card{min-height:220px;flex-direction:row}.pack-family-photo{height:auto;width:43%;padding:12px}.pack-family-info{width:57%;padding:22px 16px;display:flex;flex-direction:column;justify-content:center}.pack-family-info h3{font-size:22px}.pack-preview-title{margin-top:35px}.promo-featured{padding:28px;flex-wrap:wrap}.promo-featured h3{font-size:21px}.partner-logo{width:135px;height:82px}.partner-logo img{width:115px;height:43px}}
@media(max-width:460px){.featured-carousel>.product-card{flex-basis:76%}.certification-layout{gap:22px}.certificate-list{gap:10px}.certificate-item{padding:10px;border-radius:15px}.certificate-item img{height:155px}.certificate-item strong{font-size:11px}.certificate-item small{font-size:9px}.trust-heading h2{font-size:21px}.pack-family-photo{width:39%}.pack-family-info{width:61%}.pack-family-info h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){.hero-new .hero-photo,.hero-stream,.partner-track{animation:none!important;transform:none!important;will-change:auto!important}}
