/* Fiches excursions v2 — rendu premium, mobile-first et galerie interactive */
.excursion-detail-page{background:linear-gradient(180deg,#f4f8f9 0,#fff 28%,#f5f9fa 100%);padding:34px 0 86px;color:#10283a}
.excursion-detail-page>.container{max-width:1240px}
.excursion-breadcrumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 22px;color:#718590;font-size:12px;font-weight:750}
.excursion-breadcrumb a{color:#53707f;text-decoration:none}.excursion-breadcrumb a:hover{color:#078aaa}.excursion-breadcrumb span:last-child{color:#132e40;font-weight:850}
.experience-card{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(390px,.82fr);min-height:610px;margin-bottom:28px;border:1px solid rgba(12,54,74,.09);border-radius:32px;background:#fff;overflow:hidden;box-shadow:0 28px 80px rgba(8,41,57,.12)}
.experience-visual{position:relative;min-height:610px;background:#0a2537;overflow:hidden}
.experience-visual:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(3,21,34,.06) 45%,rgba(3,21,34,.68) 100%)}
.experience-visual>img{width:100%;height:100%;min-height:610px;object-fit:cover;display:block;transition:opacity .2s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.experience-card:hover .experience-visual>img{transform:scale(1.018)}
.experience-badge{position:absolute;z-index:3;top:22px;left:22px;padding:10px 14px;border:1px solid rgba(255,255,255,.32);border-radius:999px;background:rgba(4,29,44,.55);backdrop-filter:blur(13px);color:#fff;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.experience-content{display:flex;flex-direction:column;justify-content:center;padding:48px 44px}
.experience-content .eyebrow{margin-bottom:12px;color:#078cab;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.experience-content h1{max-width:620px;margin:0;color:#09263a;font-size:clamp(38px,4.2vw,60px);line-height:.98;letter-spacing:-.045em}
.experience-summary{margin:22px 0 0;color:#5d7480;font-size:16px;line-height:1.72}
.experience-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:30px 0 24px}
.experience-facts>div{min-height:82px;padding:15px 16px;border:1px solid #e0eaed;border-radius:15px;background:#f8fbfc}
.experience-facts small{display:block;margin-bottom:7px;color:#83949d;font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.experience-facts strong{display:block;color:#153246;font-size:14px;line-height:1.3}
.experience-content .experience-cta{min-height:50px;padding:14px 19px;border-radius:13px;font-weight:850}
.experience-trust{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.experience-trust span{padding:7px 9px;border-radius:9px;background:#edf8f9;color:#27616b;font-size:10px;font-weight:850}
.experience-gallery-rail{position:absolute;z-index:4;right:18px;bottom:18px;left:18px;display:flex;gap:9px;align-items:center;overflow-x:auto;padding:2px;scrollbar-width:none}.experience-gallery-rail::-webkit-scrollbar{display:none}
.experience-gallery-thumb{position:relative;flex:0 0 78px;width:78px;height:58px;padding:0;border:2px solid rgba(255,255,255,.45);border-radius:11px;background:#0a2537;overflow:hidden;cursor:pointer;box-shadow:0 5px 18px rgba(0,0,0,.18)}
.experience-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}.experience-gallery-thumb.is-active{border-color:#fff;box-shadow:0 0 0 2px #18a8be,0 5px 18px rgba(0,0,0,.2)}
.experience-photo-count{position:absolute;z-index:4;right:21px;top:22px;padding:9px 11px;border-radius:999px;background:rgba(6,27,40,.58);backdrop-filter:blur(12px);color:#fff;font-size:10px;font-weight:900}
.experience-description,.experience-faq,.excursion-detail-page>.container>.legal-card{margin:24px 0;padding:34px 38px;border:1px solid #e0eaed;border-radius:24px;background:#fff;box-shadow:0 12px 40px rgba(13,54,73,.05)}
.experience-description h2,.experience-faq h2,.related-experiences h2,.experience-gallery h2{margin:5px 0 14px;color:#102c40;font-size:clamp(27px,3vw,40px);letter-spacing:-.035em}
.experience-description .legal-copy p{max-width:920px;color:#536d7b;font-size:16px;line-height:1.9}
.choice-guide{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.choice-guide article{padding:29px 30px;border:1px solid #dfe9ec;border-radius:23px;background:#fff}.choice-guide article:first-child{background:linear-gradient(145deg,#f0fbf9,#fff)}.choice-guide article:nth-child(2){background:linear-gradient(145deg,#fffaf0,#fff)}
.choice-guide h2{margin:6px 0 18px;color:#143247;font-size:25px;letter-spacing:-.025em}.choice-guide ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}.choice-guide li{position:relative;padding-left:25px;color:#59727f;line-height:1.55}.choice-guide li:before{content:"✓";position:absolute;left:0;top:0;color:#0c9c8a;font-weight:950}.choice-guide article:nth-child(2) li:before{content:"•";color:#d49a37}
.detail-programme{margin:26px 0;padding:36px;border-radius:26px;background:#08263a;color:#fff;box-shadow:0 20px 50px rgba(6,38,58,.15)}.detail-programme-title small{color:#79d2df;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.detail-programme-title h2{margin:7px 0 25px;color:#fff;font-size:34px;letter-spacing:-.035em}.detail-programme ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:0;padding:0;list-style:none}.detail-programme li{padding:19px;border:1px solid rgba(255,255,255,.12);border-radius:17px;background:rgba(255,255,255,.055)}.detail-programme li>span{display:grid;width:31px;height:31px;place-items:center;margin-bottom:12px;border-radius:10px;background:#16a4ba;color:#fff;font-size:11px;font-weight:950}.detail-programme li p{margin:0;color:#d7e4e9;line-height:1.55}
.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.service-panel{padding:30px;border:1px solid #dde8eb;border-radius:23px;background:#fff}.service-heading{display:flex;gap:13px;align-items:center;margin-bottom:20px}.service-heading>span{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:#e8f8f5;color:#118b78;font-weight:950}.service-panel.excluded .service-heading>span{background:#fff0eb;color:#bc604d}.service-heading small{display:block;color:#84959e;font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.service-heading h2{margin:3px 0 0;color:#143247;font-size:22px}.service-panel ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}.service-panel li{display:flex;gap:10px;color:#58717e;line-height:1.5}.service-panel li>span{font-weight:950;color:#11927e}.service-panel.excluded li>span{color:#c36855}
.price-estimator{position:relative;margin:28px 0;padding:38px;border-radius:28px;background:radial-gradient(circle at 85% 20%,rgba(40,180,199,.24),transparent 32%),linear-gradient(135deg,#061c2f,#0a3b53);color:#fff;overflow:hidden;box-shadow:0 24px 60px rgba(5,37,56,.18)}.price-estimator h2{margin:7px 0 10px;color:#fff;font-size:35px;letter-spacing:-.035em}.price-estimator>p{max-width:780px;color:#c8dbe3;line-height:1.7}.price-estimator-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin:24px 0}.price-estimator-grid>div{padding:17px;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(255,255,255,.06)}.price-estimator-grid small{display:block;color:#8db1bf;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.price-estimator-grid strong{display:block;margin-top:8px;color:#fff;font-size:18px}.price-estimator .btn{background:#fff;color:#08334a;border-color:#fff}
.experience-faq .legal-copy{display:grid;gap:10px}.experience-faq details{border:1px solid #e1eaed;border-radius:14px;background:#fbfdfd;overflow:hidden}.experience-faq summary{position:relative;padding:18px 50px 18px 18px;color:#17364a;font-size:14px;font-weight:850;cursor:pointer;list-style:none}.experience-faq summary::-webkit-details-marker{display:none}.experience-faq summary:after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:22px;color:#168ea7}.experience-faq details[open] summary:after{content:"−"}.experience-faq .faq-answer{padding:0 18px 18px;color:#5e7581;line-height:1.7}.experience-faq .faq-answer p{margin:0}
.experience-gallery{margin:32px 0}.standalone-gallery{display:grid!important;grid-template-columns:repeat(12,1fr)!important;gap:10px!important}.standalone-gallery img{grid-column:span 4;width:100%!important;height:280px!important;border-radius:18px!important;object-fit:cover!important;cursor:zoom-in;box-shadow:none!important}.standalone-gallery img:first-child{grid-column:span 8;height:360px!important}.standalone-gallery img:nth-child(2){grid-column:span 4;height:360px!important}
.related-experiences{margin:42px 0 10px}.related-experiences .excursion-grid{gap:16px}.related-experiences .excursion-card{border:1px solid #dfe9ec;border-radius:21px;background:#fff;overflow:hidden;box-shadow:0 12px 35px rgba(11,53,72,.06);transition:transform .2s ease,box-shadow .2s ease}.related-experiences .excursion-card:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(11,53,72,.11)}
.excursion-lightbox{position:fixed;z-index:5000;inset:0;display:grid;place-items:center;padding:30px;background:rgba(2,14,24,.93);opacity:0;visibility:hidden;transition:.2s}.excursion-lightbox.is-open{opacity:1;visibility:visible}.excursion-lightbox img{max-width:min(1180px,92vw);max-height:86vh;border-radius:18px;object-fit:contain;box-shadow:0 35px 100px rgba(0,0,0,.5)}.excursion-lightbox button{position:absolute;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;backdrop-filter:blur(10px)}.excursion-lightbox-close{top:22px;right:22px;width:46px;height:46px;font-size:24px}.excursion-lightbox-prev,.excursion-lightbox-next{top:50%;width:48px;height:48px;font-size:25px}.excursion-lightbox-prev{left:22px}.excursion-lightbox-next{right:22px}
.excursion-mobile-actions{box-shadow:0 -8px 30px rgba(7,40,57,.1)}
@media(max-width:980px){.experience-card{grid-template-columns:1fr;min-height:0}.experience-visual,.experience-visual>img{min-height:500px;height:500px}.experience-content{padding:34px}.standalone-gallery img,.standalone-gallery img:first-child,.standalone-gallery img:nth-child(2){grid-column:span 6;height:280px!important}}
@media(max-width:700px){.excursion-detail-page{padding-top:18px}.excursion-breadcrumb{margin-bottom:14px}.experience-card{border-radius:22px;margin-inline:-2px}.experience-visual,.experience-visual>img{height:390px;min-height:390px}.experience-badge{top:14px;left:14px}.experience-photo-count{top:14px;right:14px}.experience-gallery-rail{right:12px;bottom:12px;left:12px}.experience-gallery-thumb{flex-basis:64px;width:64px;height:48px}.experience-content{padding:27px 21px 25px}.experience-content h1{font-size:40px}.experience-summary{font-size:14px}.experience-facts{grid-template-columns:1fr 1fr;margin-top:23px}.experience-facts>div{min-height:73px;padding:13px}.experience-content>div[style*="display:flex"]{display:grid!important;grid-template-columns:1fr}.experience-content .experience-cta{width:100%;justify-content:center}.experience-description,.experience-faq,.excursion-detail-page>.container>.legal-card{padding:25px 20px;border-radius:19px}.choice-guide,.services-grid{grid-template-columns:1fr}.choice-guide article,.service-panel{padding:23px 20px}.detail-programme{padding:27px 20px}.detail-programme ol{grid-template-columns:1fr}.price-estimator{padding:29px 21px}.price-estimator-grid{grid-template-columns:1fr}.standalone-gallery{grid-template-columns:1fr 1fr!important}.standalone-gallery img,.standalone-gallery img:first-child,.standalone-gallery img:nth-child(2){grid-column:span 1;height:190px!important}.standalone-gallery img:first-child{grid-column:span 2;height:250px!important}.excursion-lightbox{padding:12px}.excursion-lightbox-prev{left:10px}.excursion-lightbox-next{right:10px}}
@media(max-width:430px){.experience-visual,.experience-visual>img{height:340px;min-height:340px}.experience-content h1{font-size:36px}.experience-facts{grid-template-columns:1fr}.standalone-gallery img,.standalone-gallery img:first-child,.standalone-gallery img:nth-child(2){grid-column:span 2;height:220px!important}}
