/*
Theme Name: TravelMuz
Theme URI: https://travelmuz.fr
Author: TravelMuz
Author URI: https://travelmuz.fr
Description: Theme custom pour TravelMuz - Agence de voyage Muslim-Friendly. Migration depuis Next.js/Strapi.
Version: 1.0.0
License: Proprietary
License URI: https://travelmuz.fr
Text Domain: travelmuz
Tags: travel, agency, custom-logo, custom-menu, featured-images, responsive-layout
*/
 @font-face{font-family:'EuclidCircularB';src:url('./assets/fonts/EuclidCircularB-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'EuclidCircularB';src:url('./assets/fonts/EuclidCircularB-Medium.otf') format('opentype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'EuclidCircularB';src:url('./assets/fonts/EuclidCircularB-Semibold.otf') format('opentype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'EuclidCircularB';src:url('./assets/fonts/EuclidCircularB-Bold.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap}:root{--color-primary:#226156;--color-teal:#226156;--color-teal-hover:#1a4f46;--color-teal-light:#e8f0ee;--color-dark:#232323;--color-text:#0a0a0a;--color-text-light:#737373;--color-text-muted:#737373;--color-gray-text:#505050;--color-bg:#ffffff;--color-bg-light:#fafafa;--color-bg-gray:#f9fafb;--color-bg-alt:#f9fafb;--color-border:#e8e8e8;--color-border-light:#f3f4f6;--color-gold:#facc15;--color-error:#ef4444;--color-success:#22c55e;--font-sans:'EuclidCircularB',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;--font-heading:'EuclidCircularB',var(--font-sans);--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--container-max:1272px;--container-padding:1.25rem;--header-height:72px;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.07),0 2px 4px -2px rgba(0,0,0,0.05);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.08),0 4px 6px -4px rgba(0,0,0,0.05);--transition-fast:150ms ease;--transition-base:250ms ease;--transition-slow:350ms ease}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-sans);font-size:1rem;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img,video{max-width:100%;height:auto;display:block}
a{color:var(--color-teal);text-decoration:none;transition:color var(--transition-fast)}
a:hover{color:var(--color-teal-hover)}
ul,ol{list-style:none;margin:0;padding:0}
button{cursor:pointer;border:none;background:none;font-family:inherit}
input,textarea,select{font-family:inherit;font-size:inherit}
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--color-text);margin:0 0 var(--space-md)}
h1{font-size:clamp(1.875rem,4vw,3rem)}
h2{font-size:clamp(1.5rem,3vw,2.25rem)}
h3{font-size:clamp(1.25rem,2.5vw,1.75rem)}
h4{font-size:1.25rem}
h5{font-size:1.125rem}
h6{font-size:1rem}
p{margin:0 0 var(--space-md)}
.text-sm{font-size:0.875rem}
.text-lg{font-size:1.125rem}
.text-xl{font-size:1.25rem}
.text-muted{color:var(--color-text-light)}
.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding)}
.container-narrow{max-width:800px}
.grid{display:grid;gap:var(--space-lg)}
.grid-2{grid-template-columns:repeat(1,1fr)}
.grid-3{grid-template-columns:repeat(1,1fr)}
.grid-4{grid-template-columns:repeat(1,1fr)}
.flex{display:flex}
.flex-center{display:flex;align-items:center;justify-content:center}
.flex-between{display:flex;align-items:center;justify-content:space-between}
.flex-wrap{flex-wrap:wrap}
.gap-sm{gap:var(--space-sm)}
.gap-md{gap:var(--space-md)}
.gap-lg{gap:var(--space-lg)}
.section{padding:6rem 0}
.section-light{background-color:var(--color-bg-light)}
.section-gray{background-color:var(--color-bg-gray)}
.section-dark{background-color:var(--color-dark);color:#fff}
.section-header{text-align:center;margin-bottom:var(--space-2xl)}
.section-header .section-title{margin-bottom:var(--space-sm)}
.section-header .section-subtitle{color:var(--color-text-light);max-width:600px;margin:0 auto}
.site-header{position:fixed;top:0;width:100%;z-index:1000;background-color:transparent;height:var(--header-height);transition:background-color 0.3s ease,box-shadow 0.3s ease,border-bottom-color 0.3s ease;border-bottom:1px solid transparent}
.site-header.scrolled{background-color:#fff;box-shadow:0 2px 10px rgba(0,0,0,0.08);border-bottom-color:var(--color-border)}
.site-header:not(.scrolled) .hamburger-btn{background:rgba(255,255,255,0.12);border-color:rgba(255,255,255,0.45);color:#fff}
.site-header:not(.scrolled) .hamburger-line{background:#fff}
.site-header:not(.scrolled) .header-destinations-link{color:#fff}
.site-header:not(.scrolled) .btn-devis{color:#fff;border-color:rgba(255,255,255,0.7)}
.site-header:not(.scrolled) .btn-devis:hover{background:rgba(255,255,255,0.15)}
body:not(.home) .site-main,body:not(.home) .site-content{padding-top:var(--header-height)}
.header-container{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 var(--container-padding);max-width:var(--container-max);margin:0 auto}
.header-left{display:flex;align-items:center;gap:var(--space-md)}
.header-logo{flex-shrink:0}
.header-logo img,.site-logo img{height:36px;width:auto}
.site-logo-text{display:flex;align-items:center;font-size:1.5rem;font-weight:700;color:var(--color-text)}
.logo-travel{color:var(--color-text)}
.logo-muz{color:var(--color-teal)}
.hamburger-btn{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text);font-size:0.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;padding:0.5rem 1rem;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer}
.hamburger-icon{width:18px;height:14px;position:relative;display:flex;flex-direction:column;justify-content:space-between}
.hamburger-line{display:block;width:100%;height:2px;background:var(--color-text);transition:var(--transition-base)}
.menu-open .hamburger-line:nth-child(1){transform:rotate(45deg) translate(4px,4px)}
.menu-open .hamburger-line:nth-child(2){opacity:0}
.menu-open .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}
.hamburger-label{display:none}
.header-destinations-link{display:none;align-items:center;gap:4px;color:var(--color-text);font-size:0.875rem;font-weight:500;text-transform:uppercase;letter-spacing:0.02em;white-space:nowrap}
.header-destinations-link:hover{color:var(--color-teal)}
.mega-menu-chevron{transition:transform var(--transition-base);flex-shrink:0}
.destinations-wrapper.is-open .mega-menu-chevron{transform:rotate(180deg)}
.destinations-wrapper{position:static}
.mega-menu{position:fixed;top:var(--header-height);left:0;right:0;z-index:998;background:#fff;border-top:2px solid var(--color-teal);border-bottom:1px solid var(--color-border);box-shadow:0 8px 32px rgba(0,0,0,0.12);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity var(--transition-base),visibility var(--transition-base),transform var(--transition-base);overflow-y:auto;max-height:calc(100vh - var(--header-height))}
.mega-menu.is-open{opacity:1;visibility:visible;transform:translateY(0)}
.mega-menu-overlay{display:none;position:fixed;top:var(--header-height);left:0;right:0;bottom:0;background:rgba(0,0,0,0.35);z-index:997}
.mega-menu-overlay.is-open{display:block}
.mega-menu-inner{padding:var(--space-2xl) var(--container-padding)}
.mega-menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-xl)}
.mega-menu-col{display:flex;flex-direction:column;gap:0}
.mega-menu-region{display:block;font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--color-teal);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border)}
.mega-menu-country-group{margin-bottom:var(--space-md)}
.mega-menu-country{display:block;font-size:0.8125rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs)}
a.mega-menu-country-link{color:var(--color-text);text-decoration:none;font-weight:600}
a.mega-menu-country-link:hover{color:var(--color-teal)}
.mega-menu-cities{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}
.mega-menu-cities li a{display:block;font-size:0.8125rem;color:var(--color-text-light);padding:3px 0 3px var(--space-sm);border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast),padding-left var(--transition-fast);text-decoration:none}
.mega-menu-cities li a:hover{color:var(--color-teal);background:var(--color-teal-light);padding-left:calc(var(--space-sm) + 4px)}
.mega-menu-cta{margin-top:var(--space-xl);padding-top:var(--space-md);border-top:1px solid var(--color-border)}
.mega-menu-see-all{display:inline-flex;align-items:center;gap:var(--space-sm);font-size:0.8125rem;font-weight:600;color:var(--color-teal);text-decoration:none;transition:gap var(--transition-fast)}
.mega-menu-see-all:hover{gap:var(--space-md);color:var(--color-teal-hover)}
.header-right{display:flex;align-items:center;gap:var(--space-sm)}
.mobile-nav{display:none;position:fixed;top:var(--header-height);left:0;right:0;bottom:0;background:#fff;z-index:999;overflow-y:auto}
.mobile-nav.active{display:block}
.mobile-nav-inner{padding:var(--space-xl)}
.mobile-nav-menu{display:flex;flex-direction:column;gap:var(--space-xs)}
.mobile-nav-menu a{color:var(--color-text);font-size:1.125rem;font-weight:500;padding:var(--space-md) 0;display:block;border-bottom:1px solid var(--color-border-light)}
.mobile-nav-menu a:hover{color:var(--color-teal)}
.mobile-nav-actions{margin-top:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-md)}
.btn-phone{display:inline-flex;align-items:center;gap:var(--space-sm);background-color:var(--color-teal);color:#fff;padding:0.5rem 1rem;border-radius:var(--radius-full);font-weight:600;font-size:0.875rem;transition:background-color var(--transition-fast)}
.btn-phone:hover{background-color:var(--color-teal-hover);color:#fff}
.btn-phone svg{width:16px;height:16px}
.phone-number{display:none}
.btn-devis{display:inline-flex;align-items:center;gap:var(--space-sm);background:transparent;color:var(--color-text);padding:0.5rem 1rem;border:1.5px solid var(--color-text);border-radius:var(--radius-full);font-weight:600;font-size:0.8125rem;transition:all var(--transition-fast)}
.btn-devis:hover{background:var(--color-text);color:#fff}
.hero{position:relative;min-height:70vh;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center;background-repeat:no-repeat;color:#fff;text-align:center;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0.4) 0%,rgba(0,0,0,0.3) 100%);z-index:1}
.hero-content{position:relative;z-index:2;max-width:800px;padding:var(--space-2xl) var(--container-padding)}
.hero h1{font-size:clamp(2rem,5vw,3.5rem);margin-bottom:var(--space-md);color:#fff}
.hero p{font-size:1.125rem;margin-bottom:var(--space-xl);opacity:0.9}
.hero-search{background:rgba(255,255,255,0.15);backdrop-filter:blur(10px);border-radius:var(--radius-2xl);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm);max-width:600px;margin:0 auto}
.hero-search input{width:100%;padding:var(--space-md);border:none;border-radius:var(--radius-lg);font-size:1rem;background:#fff;color:var(--color-text)}
.hero-search .btn-search{width:100%;padding:var(--space-md);background:var(--color-teal);color:#fff;border-radius:var(--radius-lg);font-weight:600;font-size:1rem;border:none;cursor:pointer}
.hero-search .btn-search:hover{background:var(--color-teal-hover)}
.section-home-hero{position:relative;min-height:88vh;background:linear-gradient(135deg,#163f37 0%,var(--color-teal) 50%,#2a7a6d 100%);display:flex;align-items:center;overflow:hidden;color:#fff}
.hero-bg-overlay{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 50%,rgba(255,255,255,0.04) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,0.06) 0%,transparent 40%);pointer-events:none}
.hero-container{display:grid;grid-template-columns:1fr;gap:var(--space-2xl);align-items:center;padding-top:var(--space-3xl);padding-bottom:var(--space-3xl);position:relative;z-index:1}
@media (min-width:1024px){.hero-container{grid-template-columns:1fr auto;gap:var(--space-3xl)}
}
.home-hero-content{max-width:680px}
.hero-eyebrow{display:inline-block;font-size:0.875rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.75);margin-bottom:var(--space-md);border:1px solid rgba(255,255,255,0.25);padding:4px var(--space-md);border-radius:var(--radius-full)}
.home-hero-title{font-size:clamp(1.75rem,6vw,4rem);font-weight:700;color:#fff;line-height:1.1;margin-bottom:var(--space-lg);letter-spacing:-0.02em}
.home-hero-subtitle{font-size:1.125rem;color:rgba(255,255,255,0.85);margin-bottom:var(--space-2xl);line-height:1.7;max-width:540px}
.home-hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-md)}
.hero-trust-card{display:flex;flex-direction:row;align-items:center;gap:var(--space-lg);background:rgba(255,255,255,0.12);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,0.2);border-radius:var(--radius-2xl);padding:var(--space-lg) var(--space-xl);white-space:nowrap;flex-shrink:0}
@media (max-width:767px){.hero-trust-card{display:none}
}
.hero-trust-item{text-align:center}
.hero-trust-number{display:block;font-size:1.75rem;font-weight:700;color:#fff;line-height:1.1}
.hero-trust-label{display:block;font-size:0.75rem;color:rgba(255,255,255,0.7);margin-top:2px}
.hero-trust-stars{display:flex;gap:2px;justify-content:center;margin-top:4px}
.hero-trust-divider{width:1px;height:40px;background:rgba(255,255,255,0.2)}
.hero-scroll-hint{position:absolute;bottom:var(--space-lg);left:50%;transform:translateX(-50%);color:rgba(255,255,255,0.5);animation:bounce-down 2s ease-in-out infinite;z-index:2}
@keyframes bounce-down{0%,100%{transform:translateX(-50%) translateY(0)}
50%{transform:translateX(-50%) translateY(6px)}
}
.section-trust-bar{background:var(--color-dark);padding:var(--space-md) 0;border-bottom:1px solid rgba(255,255,255,0.06)}
.trust-bar-list{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--space-lg) var(--space-2xl);list-style:none;margin:0;padding:0}
.trust-bar-item{display:flex;align-items:center;gap:var(--space-sm);font-size:0.875rem;color:rgba(255,255,255,0.75)}
.trust-bar-item strong{color:#fff}
.trust-icon{color:var(--color-teal);flex-shrink:0}
.section-footer{text-align:center;margin-top:var(--space-2xl)}
.section-home-usps{}
.usp-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--space-lg)}
@media (min-width:640px){.usp-grid{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1024px){.usp-grid{grid-template-columns:repeat(4,1fr)}
}
.usp-card{background:#fff;border-radius:var(--radius-xl);padding:var(--space-xl);border:1px solid var(--color-border);transition:transform var(--transition-base),box-shadow var(--transition-base)}
.usp-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.usp-icon{width:60px;height:60px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-md);background:var(--color-teal-light);color:var(--color-teal)}
.usp-title{font-size:1rem;font-weight:700;margin-bottom:var(--space-sm);color:var(--color-text)}
.usp-text{font-size:0.875rem;color:var(--color-text-light);line-height:1.65;margin:0}
.section-home-testimonials{}
.card{background:#fff;border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--color-border);transition:transform var(--transition-base),box-shadow var(--transition-base)}
.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.card-image{position:relative;aspect-ratio:4/3;overflow:hidden}
.card-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}
.card:hover .card-image img{transform:scale(1.03)}
.card-body{padding:var(--space-lg)}
.card-title{font-size:1.0625rem;font-weight:600;margin-bottom:var(--space-sm)}
.card-title a{color:var(--color-text)}
.card-title a:hover{color:var(--color-teal)}
.card-text{color:var(--color-text-light);font-size:0.875rem;margin-bottom:var(--space-md)}
.price-badge{position:absolute;bottom:var(--space-md);right:var(--space-md);background:var(--color-teal);color:#fff;padding:var(--space-xs) var(--space-md);border-radius:var(--radius-full);font-weight:700;font-size:0.875rem;z-index:2}
.price-prefix{font-weight:400;font-size:0.75rem;margin-right:4px}
.price-amount{font-size:1.125rem}
.duration-badge{display:inline-flex;align-items:center;gap:var(--space-xs);background:var(--color-bg-light);color:var(--color-text);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:0.8125rem;font-weight:500}
.tag-list{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-bottom:var(--space-md)}
.tag{display:inline-block;background:var(--color-bg-light);color:var(--color-text-light);padding:2px var(--space-sm);border-radius:var(--radius-full);font-size:0.75rem;font-weight:500;border:1px solid var(--color-border)}
.card-destination .card-image{aspect-ratio:3/2}
.card-destination .card-body{padding:var(--space-md)}
.card-destination .card-title{margin-bottom:var(--space-xs)}
.card-destination .card-subtitle{color:var(--color-text-light);font-size:0.8125rem}
.card-offre .card-meta{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-sm)}
.card-blog .card-image{aspect-ratio:16/9}
.card-blog .card-category{display:inline-block;background:var(--color-teal);color:#fff;padding:2px var(--space-sm);border-radius:var(--radius-sm);font-size:0.75rem;font-weight:600;text-transform:uppercase;margin-bottom:var(--space-sm)}
.card-blog .card-date{font-size:0.8125rem;color:var(--color-text-muted)}
.card-temoignage{text-align:center;padding:var(--space-xl)}
.card-temoignage .avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;margin:0 auto var(--space-md)}
.card-temoignage .testimonial-text{font-style:italic;color:var(--color-text-light);margin-bottom:var(--space-md);line-height:1.8}
.card-temoignage .testimonial-author{font-weight:600}
.card-temoignage .testimonial-destination{font-size:0.875rem;color:var(--color-text-muted)}
.carousel{position:relative;overflow:hidden}
.carousel-track{display:flex;transition:transform var(--transition-slow)}
.carousel-slide{flex:0 0 100%;padding:0 var(--space-sm)}
.carousel-nav{display:flex;justify-content:center;gap:var(--space-sm);margin-top:var(--space-lg)}
.carousel-dot{width:8px;height:8px;border-radius:50%;background:var(--color-border);border:none;cursor:pointer;transition:background var(--transition-fast)}
.carousel-dot.active{background:var(--color-teal);width:24px;border-radius:var(--radius-full)}
.carousel-prev,.carousel-next{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;z-index:10;cursor:pointer;transition:var(--transition-fast)}
.carousel-prev:hover,.carousel-next:hover{border-color:var(--color-text-muted);box-shadow:var(--shadow-sm)}
.carousel-prev{left:var(--space-md)}
.carousel-next{right:var(--space-md)}
.carousel-prev svg,.carousel-next svg{width:20px;height:20px;color:var(--color-text)}
.site-footer{background-color:#fff;color:var(--color-text);border-top:1px solid var(--color-border);padding:var(--space-3xl) 0 0}
.footer-main{padding-bottom:var(--space-2xl)}
.footer-grid{display:grid;grid-template-columns:1fr;gap:var(--space-2xl)}
.footer-heading{color:var(--color-text);font-size:0.875rem;font-weight:600;margin-bottom:var(--space-lg);text-transform:uppercase;letter-spacing:0.05em}
.footer-col ul li{margin-bottom:var(--space-sm)}
.footer-col a,.footer-menu a{color:var(--color-text-light);transition:color var(--transition-fast);font-size:0.9375rem}
.footer-col a:hover,.footer-menu a:hover{color:var(--color-teal)}
.footer-description{font-size:0.875rem;line-height:1.8;margin-bottom:var(--space-lg);color:var(--color-text-light)}
.footer-contact-list{list-style:none;padding:0}
.contact-item{display:flex;align-items:flex-start;gap:var(--space-sm);margin-bottom:var(--space-md);font-size:0.875rem;color:var(--color-text-light)}
.contact-item svg,.contact-item .icon{width:16px;height:16px;flex-shrink:0;margin-top:2px;color:var(--color-teal)}
.contact-item a{color:var(--color-text-light)}
.contact-item a:hover{color:var(--color-teal)}
.footer-logo{margin-bottom:var(--space-lg)}
.footer-logo-text{font-size:1.5rem;font-weight:700;color:var(--color-text)}
.footer-social{display:flex;gap:var(--space-md);margin-top:var(--space-md)}
.social-link{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--color-bg-light);color:var(--color-text-light);transition:var(--transition-fast)}
.social-link:hover{background:var(--color-teal);color:#fff}
.social-link svg{width:18px;height:18px}
.footer-social-link svg,.footer-social-link img,.footer-social svg,.footer-social img{width:24px;height:24px;max-width:24px;max-height:24px}
.footer-certifications{border-top:1px solid var(--color-border);padding:var(--space-xl) 0}
.certifications-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-xl)}
.certification-item img{height:40px;width:auto;opacity:0.6;filter:grayscale(100%);transition:var(--transition-base)}
.certification-item img:hover{opacity:1;filter:none}
.footer-bottom{border-top:1px solid var(--color-border);padding:var(--space-lg) 0}
.footer-bottom-inner{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);text-align:center}
.footer-bottom .copyright{font-size:0.8125rem;color:var(--color-text-muted);margin:0}
.legal-links{display:flex;gap:var(--space-md);list-style:none;padding:0}
.legal-links a{font-size:0.8125rem;color:var(--color-text-muted)}
.legal-links a:hover{color:var(--color-teal)}
.footer-contact-bar{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:var(--space-lg) 0;background:#fff}
.contact-bar-grid{display:flex;flex-direction:column;gap:var(--space-md)}
.contact-bar-item{display:flex;align-items:center;gap:var(--space-sm);font-size:0.9375rem;color:var(--color-text)}
.contact-bar-item .icon{width:20px;height:20px;color:var(--color-text-light);flex-shrink:0}
.contact-bar-item a{color:var(--color-text);font-weight:500}
.contact-bar-item a:hover{color:var(--color-teal)}
.footer-tagline{font-style:italic;color:var(--color-text-light);font-size:0.875rem;margin-bottom:var(--space-lg)}
.footer-address{font-size:0.875rem;color:var(--color-text-light);line-height:1.8;margin-bottom:var(--space-lg)}
.footer-address p{margin-bottom:var(--space-xs)}
.footer-address a{color:var(--color-text-light)}
.footer-address a:hover{color:var(--color-teal)}
.footer-certifications-inline{margin-top:var(--space-md)}
.certifications-label{font-size:0.8125rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-sm)}
.certifications-logos{display:flex;align-items:center;gap:var(--space-md)}
.certifications-logos img{height:25px;width:auto;opacity:0.7}
.footer-contact-card{background:var(--color-bg-gray);border-radius:var(--radius-xl);padding:var(--space-xl)}
.footer-contact-card .footer-heading{margin-bottom:var(--space-md)}
.footer-phone-number{display:block;font-size:1.5rem;font-weight:700;color:var(--color-teal);margin-bottom:var(--space-sm)}
.footer-phone-number:hover{color:var(--color-teal-hover)}
.footer-phone-note{font-size:0.75rem;color:var(--color-text-muted);line-height:1.6;margin-bottom:var(--space-lg)}
.footer-social-heading{font-size:0.875rem;font-weight:600;margin-bottom:var(--space-sm)}
.floating-rdv{position:fixed;bottom:var(--space-xl);left:var(--space-xl);z-index:900}
.btn-floating-rdv{display:inline-flex;align-items:center;gap:var(--space-sm);background:var(--color-teal);color:#fff;border-radius:var(--radius-full);padding:0.75rem 1.25rem;font-size:0.875rem;font-weight:600;box-shadow:0 4px 12px rgba(32,96,85,0.3);border:none;cursor:pointer;transition:all var(--transition-fast)}
.btn-floating-rdv:hover{background:var(--color-teal-hover);color:#fff;box-shadow:0 6px 16px rgba(32,96,85,0.4);transform:translateY(-1px)}
.btn-floating-rdv .icon{width:18px;height:18px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:0.75rem 1.5rem;border-radius:var(--radius-lg);font-weight:600;font-size:0.9375rem;text-align:center;transition:all var(--transition-fast);cursor:pointer;border:none;text-decoration:none;line-height:1.4}
.btn-primary{background-color:var(--color-teal);color:#fff}
.btn-primary:hover{background-color:var(--color-teal-hover);color:#fff}
.btn-outline{border:2px solid var(--color-teal);color:var(--color-teal);background:transparent}
.btn-outline:hover{background:var(--color-teal);color:#fff}
.btn-outline-white{border:2px solid #fff;color:#fff;background:transparent}
.btn-outline-white:hover{background:rgba(255,255,255,0.15);color:#fff}
.btn-white{background:#fff;color:var(--color-text)}
.btn-white:hover{background:var(--color-bg-light);color:var(--color-text)}
.btn-dark{background:var(--color-dark);color:#fff}
.btn-dark:hover{background:#333;color:#fff}
.btn-lg{padding:1rem 2rem;font-size:1.0625rem}
.btn-sm{padding:0.5rem 1rem;font-size:0.8125rem}
.btn-block{width:100%}
.btn .icon{width:18px;height:18px}
.form-group{margin-bottom:var(--space-lg)}
.form-label{display:block;font-weight:500;margin-bottom:var(--space-sm);font-size:0.875rem;color:var(--color-text)}
.form-control{width:100%;padding:0.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:1rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);background:#fff}
.form-control:focus{outline:none;border-color:var(--color-teal);box-shadow:0 0 0 3px rgba(32,96,85,0.1)}
.form-control::placeholder{color:var(--color-text-muted)}
textarea.form-control{resize:vertical;min-height:120px}
select.form-control{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236b7280'%3E%3Cpath d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0.75rem center;background-size:1.25rem;padding-right:2.5rem}
.form-error{color:var(--color-error);font-size:0.8125rem;margin-top:var(--space-xs)}
.devis-form{max-width:700px;margin:0 auto}
.devis-form .form-row{display:grid;grid-template-columns:1fr;gap:var(--space-md)}
.devis-steps{display:flex;justify-content:center;gap:var(--space-xl);margin-bottom:var(--space-2xl)}
.devis-step{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}
.devis-step-number{width:40px;height:40px;border-radius:50%;background:var(--color-border);color:var(--color-text-light);display:flex;align-items:center;justify-content:center;font-weight:700}
.devis-step.active .devis-step-number{background:var(--color-teal);color:#fff}
.devis-step-label{font-size:0.8125rem;color:var(--color-text-light)}
.section-faq{background:var(--color-bg-light)}
.faq-accordion{max-width:800px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--color-border)}
.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) 0;font-size:1.0625rem;font-weight:600;color:var(--color-text);text-align:left;cursor:pointer;background:none;border:none;font-family:inherit}
.faq-question:hover{color:var(--color-teal)}
.faq-icon{transition:var(--transition-base);flex-shrink:0;margin-left:var(--space-md)}
.faq-icon-minus{display:none}
.faq-item.active .faq-icon-plus{display:none}
.faq-item.active .faq-icon-minus{display:block}
.faq-answer{overflow:hidden}
.faq-answer[hidden]{display:none}
.faq-answer-content{padding:0 0 var(--space-lg);color:var(--color-text-light);line-height:1.8}
.faq-footer{margin-top:var(--space-2xl)}
.testimonials-section{background:#fff}
.star-rating{display:inline-flex;align-items:center;gap:2px}
.star{color:var(--color-gold);font-size:1rem}
.star-empty{color:var(--color-border)}
.star-half{color:var(--color-gold);position:relative}
.rating-number{margin-left:var(--space-xs);font-size:0.875rem;font-weight:600;color:var(--color-text)}
.process-section{background:#fff}
.process-steps{display:grid;grid-template-columns:1fr;gap:var(--space-xl);max-width:900px;margin:0 auto}
.process-step{text-align:center;position:relative}
.process-step-number{width:64px;height:64px;border-radius:50%;background:var(--color-teal);color:#fff;font-size:1.5rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-md)}
.process-step h3{font-size:1.125rem;margin-bottom:var(--space-sm)}
.process-step p{color:var(--color-text-light);font-size:0.9375rem}
.section-advantages{background-color:var(--color-dark);color:#fff}
.section-advantages .section-title,.section-advantages h2{color:#fff}
.section-advantages .section-subtitle{color:rgba(255,255,255,0.7)}
.advantages-grid{display:grid;grid-template-columns:1fr;gap:var(--space-xl)}
.advantage-item{text-align:center;padding:var(--space-xl)}
.advantage-icon{width:56px;height:56px;border-radius:var(--radius-lg);background:rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-md)}
.advantage-icon svg{width:28px;height:28px;color:var(--color-teal)}
.advantage-item h3{color:#fff}
.advantage-item p{color:rgba(255,255,255,0.7)}
.press-section{padding:var(--space-xl) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);overflow:hidden}
.press-ticker{display:flex;animation:ticker-scroll 30s linear infinite}
.press-ticker:hover{animation-play-state:paused}
.press-logo{flex:0 0 auto;padding:0 var(--space-2xl);display:flex;align-items:center}
.press-logo img{height:32px;width:auto;opacity:0.5;filter:grayscale(100%);transition:var(--transition-base)}
.press-logo img:hover{opacity:1;filter:none}
@keyframes ticker-scroll{0%{transform:translateX(0)}
100%{transform:translateX(-50%)}
}
.blog-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}
.blog-content{max-width:800px;margin:0 auto}
.blog-content h2{margin-top:var(--space-2xl)}
.blog-content p{line-height:1.8}
.blog-content img{border-radius:var(--radius-lg);margin:var(--space-xl) 0}
.blog-content blockquote{border-left:4px solid var(--color-teal);padding-left:var(--space-lg);margin:var(--space-xl) 0;color:var(--color-text-light);font-style:italic}
.blog-content ul,.blog-content ol{padding-left:var(--space-xl);margin-bottom:var(--space-md)}
.blog-content li{margin-bottom:var(--space-sm);list-style:disc}
.blog-content ol li{list-style:decimal}
.author-box{display:flex;gap:var(--space-lg);padding:var(--space-xl);background:var(--color-bg-light);border-radius:var(--radius-xl);margin-top:var(--space-2xl)}
.author-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;flex-shrink:0}
.author-name{font-weight:600;margin-bottom:var(--space-xs)}
.author-bio{font-size:0.875rem;color:var(--color-text-light)}
.blog-layout{display:grid;grid-template-columns:1fr;gap:var(--space-2xl)}
.blog-sidebar .widget{margin-bottom:var(--space-2xl);padding:var(--space-lg);background:var(--color-bg-light);border-radius:var(--radius-xl)}
.blog-sidebar .widget-title{font-size:1rem;font-weight:600;margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:2px solid var(--color-teal)}
.category-tabs{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-2xl);justify-content:center}
.category-tab{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-full);font-size:0.875rem;font-weight:500;color:var(--color-text-light);background:var(--color-bg-light);border:1px solid var(--color-border);transition:var(--transition-fast)}
.category-tab:hover,.category-tab.active{background:var(--color-teal);color:#fff;border-color:var(--color-teal)}
.archive-header{text-align:center;padding:var(--space-3xl) 0 var(--space-xl);background:var(--color-bg-light)}
.archive-header h1{margin-bottom:var(--space-sm)}
.archive-header p{color:var(--color-text-light);max-width:600px;margin:0 auto}
.archive-filters{display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:center;margin:var(--space-xl) 0}
.breadcrumbs{padding:var(--space-md) 0;font-size:0.8125rem}
.breadcrumbs-list{display:flex;flex-wrap:wrap;gap:var(--space-xs);align-items:center;list-style:none;padding:0;margin:0}
.breadcrumbs-item{display:flex;align-items:center}
.breadcrumbs-separator{margin:0 var(--space-xs);color:var(--color-text-muted);display:flex;align-items:center}
.breadcrumbs-item a{color:var(--color-text-light)}
.breadcrumbs-item a:hover{color:var(--color-teal)}
.breadcrumbs-current{color:var(--color-text);font-weight:500}
.section-cta{text-align:center;padding:var(--space-3xl) 0}
.bg-gradient{background:linear-gradient(135deg,var(--color-teal),#2a7a6d);color:#fff}
.cta-content{max-width:600px;margin:0 auto}
.cta-title{color:#fff;margin-bottom:var(--space-md)}
.cta-text{color:rgba(255,255,255,0.85);margin-bottom:var(--space-xl)}
.cta-actions{display:flex;flex-direction:column;gap:var(--space-md);align-items:center}
.photo-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}
.gallery-item{aspect-ratio:1;overflow:hidden;border-radius:var(--radius-lg);cursor:pointer}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base)}
.gallery-item:hover img{transform:scale(1.05)}
.gallery-item:first-child{grid-column:span 2;aspect-ratio:16/9}
.lightbox{display:none;position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,0.95);align-items:center;justify-content:center}
.lightbox.active{display:flex}
.lightbox-image{max-width:90vw;max-height:85vh;object-fit:contain}
.lightbox-close{position:absolute;top:var(--space-lg);right:var(--space-lg);color:#fff;font-size:2rem;cursor:pointer;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.1);border-radius:50%;border:none}
.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);color:#fff;font-size:2rem;cursor:pointer;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.1);border-radius:50%;border:none}
.lightbox-prev{left:var(--space-lg)}
.lightbox-next{right:var(--space-lg)}
.lightbox-counter{position:absolute;bottom:var(--space-lg);left:50%;transform:translateX(-50%);color:rgba(255,255,255,0.7);font-size:0.875rem}
.destination-hero{position:relative;height:50vh;min-height:400px;background-size:cover;background-position:center}
.destination-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,0.5) 0%,transparent 50%)}
.destination-hero-content{position:absolute;bottom:var(--space-2xl);left:0;right:0;color:#fff}
.destination-info{display:flex;flex-wrap:wrap;gap:var(--space-lg);margin-bottom:var(--space-xl)}
.destination-map{width:100%;height:400px;border-radius:var(--radius-xl);overflow:hidden;margin:var(--space-2xl) 0}
.destination-map iframe{width:100%;height:100%;border:none}
.related-offers{margin-top:var(--space-2xl)}
.related-offers h2{margin-bottom:var(--space-lg)}
.offer-gallery{display:grid;grid-template-columns:1fr;gap:var(--space-sm);margin-bottom:var(--space-2xl)}
.offer-gallery-main{aspect-ratio:16/9;border-radius:var(--radius-xl);overflow:hidden}
.offer-gallery-main img{width:100%;height:100%;object-fit:cover}
.offer-gallery-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-sm)}
.offer-gallery-thumb{aspect-ratio:1;border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;opacity:0.7;transition:opacity var(--transition-fast)}
.offer-gallery-thumb:hover,.offer-gallery-thumb.active{opacity:1}
.offer-gallery-thumb img{width:100%;height:100%;object-fit:cover}
.offer-header{margin-bottom:var(--space-xl)}
.offer-price{font-size:2rem;font-weight:700;color:var(--color-teal);margin-bottom:var(--space-sm)}
.offer-price small{font-size:1rem;font-weight:400;color:var(--color-text-light)}
.offer-details{display:grid;grid-template-columns:1fr;gap:var(--space-2xl)}
.offer-sidebar{position:sticky;top:calc(var(--header-height) + var(--space-lg))}
.offer-sidebar-card{background:var(--color-bg-light);border-radius:var(--radius-xl);padding:var(--space-xl)}
.inclus-list{margin-bottom:var(--space-xl)}
.inclus-list h3{font-size:1.125rem;margin-bottom:var(--space-md)}
.inclus-item{display:flex;align-items:flex-start;gap:var(--space-sm);margin-bottom:var(--space-sm);font-size:0.9375rem}
.inclus-item.included svg{color:var(--color-success)}
.inclus-item.excluded svg{color:var(--color-error)}
.search-results-header{background:var(--color-bg-light);padding:var(--space-2xl) 0;text-align:center}
.search-form-large{max-width:600px;margin:0 auto;display:flex;gap:var(--space-sm)}
.search-form-large input{flex:1}
.page-404{text-align:center;padding:var(--space-3xl) 0}
.page-404 h1{font-size:6rem;color:var(--color-teal);margin-bottom:var(--space-sm)}
.page-404 h2{margin-bottom:var(--space-md)}
.page-404 p{color:var(--color-text-light);margin-bottom:var(--space-xl)}
.travelmuz-pagination .nav-links{display:flex;justify-content:center;gap:var(--space-xs);margin-top:var(--space-2xl)}
.travelmuz-pagination .page-numbers{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-lg);font-weight:500;color:var(--color-text);background:var(--color-bg-light);border:1px solid var(--color-border);transition:var(--transition-fast)}
.travelmuz-pagination .page-numbers:hover{border-color:var(--color-teal);color:var(--color-teal)}
.travelmuz-pagination .page-numbers.current{background:var(--color-teal);color:#fff;border-color:var(--color-teal)}
.travelmuz-pagination .prev,.travelmuz-pagination .next{width:auto;padding:0 var(--space-md)}
.floating-rdv{position:fixed;bottom:var(--space-xl);left:var(--space-xl);z-index:900}
.floating-rdv .btn{background:var(--color-teal);color:#fff;border-radius:var(--radius-full);padding:0.75rem 1.5rem;box-shadow:var(--shadow-lg);font-size:0.875rem}
.floating-rdv .btn:hover{background:var(--color-teal-hover)}
.alignwide{margin-left:calc(-25vw + 50%);margin-right:calc(-25vw + 50%);max-width:100vw;width:100vw}
.alignfull{margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);max-width:100vw;width:100vw}
.aligncenter{text-align:center}
.wp-block-image{margin:var(--space-xl) 0}
.wp-block-image img{border-radius:var(--radius-lg)}
.wp-caption-text{font-size:0.8125rem;color:var(--color-text-light);text-align:center;margin-top:var(--space-sm)}
.screen-reader-text{clip:rect(1px,1px,1px,1px);word-wrap:normal !important;border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}
.text-center{text-align:center}
.text-left{text-align:left}
.text-right{text-align:right}
.text-white{color:#fff}
.mt-0{margin-top:0}
.mb-0{margin-bottom:0}
.mb-sm{margin-bottom:var(--space-sm)}
.mb-md{margin-bottom:var(--space-md)}
.mb-lg{margin-bottom:var(--space-lg)}
.mb-xl{margin-bottom:var(--space-xl)}
.hidden{display:none !important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
@media (max-width:767px){.mega-menu-grid{grid-template-columns:1fr}
.offre-listing-item{grid-template-columns:100px 1fr;grid-template-rows:auto auto}
.offre-listing-img{width:100px;height:80px}
.offre-listing-meta{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:space-between;padding-left:0;padding-top:var(--space-sm);border-top:1px solid var(--color-border-light)}
}
@media (min-width:768px){:root{--container-padding:1.25rem}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(2,1fr)}
.grid-4{grid-template-columns:repeat(2,1fr)}
.hero{min-height:80vh}
.hero-search{flex-direction:row}
.hero-search input{flex:1}
.hero-search .btn-search{width:auto}
.footer-grid{grid-template-columns:repeat(2,1fr)}
.footer-bottom-inner{flex-direction:row;justify-content:space-between}
.blog-grid{grid-template-columns:repeat(2,1fr)}
.process-steps{grid-template-columns:repeat(3,1fr)}
.advantages-grid{grid-template-columns:repeat(2,1fr)}
.photo-gallery{grid-template-columns:repeat(3,1fr)}
.devis-form .form-row{grid-template-columns:1fr 1fr}
.carousel-slide{flex:0 0 50%}
.contact-bar-grid{flex-direction:row;justify-content:space-between}
.phone-number{display:inline}
.hamburger-label{display:inline}
.header-destinations-link{display:inline}
.offer-gallery{grid-template-columns:1fr}
.offer-details{grid-template-columns:2fr 1fr}
.blog-layout{grid-template-columns:2fr 1fr}
.cta-actions{flex-direction:row;justify-content:center}
}
@media (min-width:1024px){:root{--container-padding:0px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(3,1fr)}
.header-left{gap:var(--space-lg)}
.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}
.advantages-grid{grid-template-columns:repeat(3,1fr)}
.carousel-slide{flex:0 0 33.333%}
.photo-gallery{grid-template-columns:repeat(4,1fr)}
}
@media (min-width:1280px){.grid-4{grid-template-columns:repeat(4,1fr)}
.carousel-slide{flex:0 0 25%}
}
.offres-listing{display:flex;flex-direction:column;gap:var(--space-md)}
.offre-listing-item{display:grid;grid-template-columns:140px 1fr auto;align-items:center;gap:var(--space-lg);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-md);text-decoration:none;color:var(--color-text);transition:box-shadow var(--transition-base),border-color var(--transition-base),transform var(--transition-base);overflow:hidden}
.offre-listing-item:hover{box-shadow:var(--shadow-md);border-color:var(--color-teal);transform:translateY(-2px);color:var(--color-text)}
.offre-listing-img{width:140px;height:100px;border-radius:var(--radius-lg);overflow:hidden;flex-shrink:0;background:var(--color-bg-gray)}
.offre-listing-img img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}
.offre-listing-item:hover .offre-listing-img img{transform:scale(1.05)}
.offre-listing-img-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted)}
.offre-listing-body{flex:1;min-width:0}
.offre-listing-title{font-size:1rem;font-weight:600;margin-bottom:var(--space-sm);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.offre-listing-tags{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-bottom:var(--space-sm)}
.offre-listing-tag{display:inline-flex;align-items:center;gap:3px;font-size:0.6875rem;color:var(--color-teal);background:var(--color-teal-light);padding:2px var(--space-sm);border-radius:var(--radius-full);font-weight:500}
.offre-listing-desc{font-size:0.8125rem;color:var(--color-text-light);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.offre-listing-meta{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-sm);flex-shrink:0;padding-left:var(--space-md)}
.offre-listing-price{text-align:right}
.price-label-sm{display:block;font-size:0.6875rem;color:var(--color-text-muted)}
.price-amount-lg{display:block;font-size:1.375rem;font-weight:700;color:var(--color-teal)}
.price-per-sm{font-size:0.75rem;color:var(--color-text-muted)}
.offre-listing-duration{display:inline-flex;align-items:center;gap:4px;font-size:0.75rem;color:var(--color-text-muted)}
.offre-listing-cta{display:inline-flex;align-items:center;gap:4px;font-size:0.8125rem;font-weight:600;color:var(--color-teal);white-space:nowrap}
.offre-listing-item:hover .offre-listing-cta{text-decoration:underline}
.bg-light{background-color:var(--color-bg-light)}
.section-single-hero{position:relative;background:var(--color-teal);color:#fff;padding:var(--space-3xl) 0 var(--space-2xl);overflow:hidden;min-height:320px;display:flex;flex-direction:column;justify-content:flex-end}
.single-hero-image{position:absolute;inset:0;z-index:0}
.single-hero-image .hero-img{width:100%;height:100%;object-fit:cover;display:block}
.single-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.65) 0%,rgba(0,0,0,0.2) 60%,transparent 100%);z-index:1}
.single-hero-content{position:relative;z-index:2}
.section-single-hero .breadcrumbs{margin-bottom:var(--space-md)}
.section-single-hero .breadcrumbs,.section-single-hero .breadcrumbs a,.section-single-hero .breadcrumbs .sep{color:rgba(255,255,255,0.7)}
.section-single-hero .breadcrumbs .current{color:#fff}
.single-hero-title{color:#fff;font-size:clamp(2rem,5vw,3.5rem);margin-bottom:var(--space-lg);text-shadow:0 2px 8px rgba(0,0,0,0.25)}
.section-single-hero .price-badge{position:static;display:inline-flex;align-items:baseline;gap:var(--space-xs);background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.3);color:#fff;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-full);backdrop-filter:blur(4px);font-size:1rem}
.section-single-hero .price-badge .price-label{font-size:0.8125rem;font-weight:400;opacity:0.85}
.section-single-hero .price-badge .price-amount{font-size:1.5rem;font-weight:700}
.section-single-hero .price-badge .price-per{font-size:0.8125rem;font-weight:400;opacity:0.85}
.section-destination-content{padding:var(--space-2xl) 0}
.prose,.entry-content{line-height:1.8;color:var(--color-text)}
.prose p,.entry-content p{margin-bottom:var(--space-md)}
.prose h2,.entry-content h2{font-size:1.5rem;margin:var(--space-xl) 0 var(--space-md)}
.prose h3,.entry-content h3{font-size:1.25rem;margin:var(--space-lg) 0 var(--space-sm)}
.prose ul,.entry-content ul{list-style:disc;padding-left:var(--space-lg);margin-bottom:var(--space-md)}
.prose ul li,.entry-content ul li{margin-bottom:var(--space-xs)}
.prose ol,.entry-content ol{list-style:decimal;padding-left:var(--space-lg);margin-bottom:var(--space-md)}
.prose ol li,.entry-content ol li{margin-bottom:var(--space-xs)}
.section-gallery{padding:var(--space-2xl) 0}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm)}
.gallery-item{position:relative;aspect-ratio:1;overflow:hidden;border-radius:var(--radius-lg);cursor:pointer;background:var(--color-bg-gray);display:block}
.gallery-item.gallery-item-large{grid-column:span 2;aspect-ratio:16/9}
.gallery-img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}
.gallery-item:hover .gallery-img{transform:scale(1.05)}
.gallery-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.3);display:flex;align-items:center;justify-content:center;color:#fff;opacity:0;transition:opacity var(--transition-base)}
.gallery-item:hover .gallery-overlay{opacity:1}
.section-map{padding:var(--space-2xl) 0}
.map-wrapper{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-md)}
.map-iframe{width:100%;height:450px;border:0;display:block}
.section-related-offers{padding:var(--space-2xl) 0}
.offres-listing{display:flex;flex-direction:column;gap:var(--space-md)}
.section-cta-destination,.section-cta-offre{padding:var(--space-3xl) 0}
.section-breadcrumbs-bar{padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border);background:var(--color-bg-light)}
.section-offre-header{padding:var(--space-2xl) 0}
.offre-layout{display:grid;grid-template-columns:1fr;gap:var(--space-xl);align-items:start}
@media (min-width:1024px){.offre-layout{grid-template-columns:3fr 2fr;gap:var(--space-2xl)}
}
.offre-gallery{display:flex;flex-direction:column;gap:var(--space-sm)}
.gallery-main{border-radius:var(--radius-xl);overflow:hidden;aspect-ratio:16/9;background:var(--color-bg-gray)}
.gallery-main-img{width:100%;height:100%;object-fit:cover;display:block}
.gallery-thumbnails{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-sm)}
.gallery-thumb{position:relative;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:4/3;background:var(--color-bg-gray);opacity:0.72;transition:opacity var(--transition-fast);display:block}
.gallery-thumb:hover{opacity:1}
.gallery-thumb img{width:100%;height:100%;object-fit:cover}
.thumb-more-count{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.5);color:#fff;font-size:1.125rem;font-weight:700}
.offre-info{position:sticky;top:calc(var(--header-height) + var(--space-md))}
.offre-title{font-size:clamp(1.5rem,3vw,2.25rem);margin-bottom:var(--space-lg);line-height:1.2}
.offre-price{display:flex;align-items:baseline;gap:var(--space-xs);margin-bottom:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--color-teal-light);border-radius:var(--radius-lg);border-left:4px solid var(--color-teal);flex-wrap:wrap}
.offre-price .price-label{font-size:0.875rem;color:var(--color-text-light);flex-basis:100%}
.offre-price .price-amount{font-size:2.25rem;font-weight:700;color:var(--color-teal);line-height:1}
.offre-price .price-per{font-size:0.875rem;color:var(--color-text-light)}
.offre-duration{display:inline-flex;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-md);font-size:0.9375rem;font-weight:500}
.badge-outline{border:1.5px solid var(--color-border);background:transparent;color:var(--color-text);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-full)}
.offre-tags{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-bottom:var(--space-lg)}
.offre-tags .tag{display:inline-flex;align-items:center;gap:6px;font-size:0.875rem;background:var(--color-teal-light);color:var(--color-teal);border-color:transparent;font-weight:500}
.tag-icon{flex-shrink:0}
.offre-cta-quick{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}
.section-offre-description{padding:var(--space-2xl) 0}
.section-inclusions{padding:var(--space-2xl) 0}
.inclusion-card{background:#fff;border-radius:var(--radius-xl);padding:var(--space-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}
.inclusion-title{display:flex;align-items:center;gap:var(--space-sm);font-size:1.125rem;font-weight:700;margin-bottom:var(--space-lg);color:var(--color-text)}
.inclusion-included .icon-check{color:var(--color-success)}
.inclusion-excluded .icon-x{color:var(--color-error)}
.inclusion-list{display:flex;flex-direction:column;gap:var(--space-sm);list-style:none;margin:0;padding:0}
.inclusion-item{display:flex;align-items:flex-start;gap:var(--space-sm);font-size:0.9375rem;color:var(--color-text);line-height:1.5}
.inclusion-item .icon{flex-shrink:0;margin-top:2px}
.section-archive-header{background:var(--color-teal) !important;color:#fff}
.section-archive-header h1,.section-archive-header .page-title{color:#fff;margin-bottom:var(--space-sm)}
.section-archive-header .page-subtitle{color:rgba(255,255,255,0.8);font-size:1.0625rem}
.text-white{color:#fff !important}
.text-white-muted{color:rgba(255,255,255,0.75) !important}
.bg-white{background-color:#fff !important}
.section-filters{padding:var(--space-lg) 0;border-bottom:1px solid var(--color-border)}
.filter-bar{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap}
.filter-label{font-size:0.875rem;font-weight:500;color:var(--color-text-light);white-space:nowrap;flex-shrink:0}
.filter-tabs{display:flex;gap:var(--space-xs);flex-wrap:wrap}
.filter-tab{display:inline-block;padding:6px var(--space-md);border-radius:var(--radius-full);border:1px solid var(--color-border);background:#fff;color:var(--color-text-light);font-size:0.875rem;font-weight:500;transition:all var(--transition-fast)}
.filter-tab:hover{border-color:var(--color-teal);color:var(--color-teal)}
.filter-tab.active{background:var(--color-teal);color:#fff;border-color:var(--color-teal)}
.mobile-only{display:none}
.filter-select-wrapper{position:relative}
.filter-select{appearance:none;width:100%;padding:8px var(--space-xl) 8px var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:0.875rem;color:var(--color-text);background:#fff;cursor:pointer}
.card-link{display:block;color:inherit;text-decoration:none}
.card-link:hover{color:inherit}
.card-img-placeholder{width:100%;height:100%;min-height:220px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-gray);color:var(--color-text-muted)}
.card-image-overlay{position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(to top,rgba(0,0,0,0.35),transparent);pointer-events:none}
.card-price-badge{position:absolute;bottom:var(--space-sm);right:var(--space-sm);background:var(--color-teal);color:#fff;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);line-height:1.3;z-index:1}
.price-from{display:block;font-size:0.5625rem;font-weight:400;text-transform:uppercase;letter-spacing:0.05em;opacity:0.85}
.price-value{display:block;font-size:0.9375rem;font-weight:700}
.card-duration-badge{position:absolute;top:var(--space-sm);right:var(--space-sm);display:inline-flex;align-items:center;gap:4px;background:rgba(0,0,0,0.55);color:#fff;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-full);font-size:0.8125rem;font-weight:500;backdrop-filter:blur(4px);z-index:1}
.badge{display:inline-block;padding:2px var(--space-sm);border-radius:var(--radius-full);font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.04em}
.badge-sm{font-size:0.6875rem;padding:1px var(--space-xs)}
.card-region{background:var(--color-teal-light);color:var(--color-teal);margin-bottom:var(--space-xs);display:inline-block}
.card-type{margin-bottom:var(--space-xs);display:inline-block}
.badge-accent{background:rgba(245,158,11,0.12);color:var(--color-gold)}
.card-excerpt{font-size:0.875rem;color:var(--color-text-light);margin-bottom:var(--space-sm);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}
.card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:var(--space-sm)}
.card-tag{display:inline-flex;align-items:center;gap:3px;font-size:0.75rem;color:var(--color-text-light)}
.tag-sm{font-size:0.6875rem}
.card-price{margin-bottom:var(--space-sm)}
.card-price-label{font-size:0.75rem;color:var(--color-text-muted);display:block;margin-bottom:1px}
.card-price-amount{font-size:1.25rem;font-weight:700;color:var(--color-teal)}
.card-price-per{font-size:0.75rem;color:var(--color-text-muted);margin-left:2px}
.card-cta{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:0.875rem;font-weight:600;color:var(--color-teal);margin-top:var(--space-xs)}
.card:hover .card-cta{text-decoration:underline}
.no-results{padding:var(--space-3xl) var(--space-md);text-align:center}
.no-results-icon{margin:0 auto var(--space-lg);color:var(--color-text-muted);display:block}
.no-results h2{margin-bottom:var(--space-sm)}
.no-results p{color:var(--color-text-light);margin-bottom:var(--space-xl)}
.pagination-wrapper{margin-top:var(--space-2xl);text-align:center}
.pagination-wrapper .nav-links{display:flex;justify-content:center;gap:var(--space-xs);flex-wrap:wrap}
.pagination-wrapper .page-numbers{display:inline-flex;align-items:center;padding:8px 14px;border-radius:var(--radius-md);border:1px solid var(--color-border);font-size:0.875rem;color:var(--color-text);background:#fff;transition:all var(--transition-fast)}
.pagination-wrapper .page-numbers:hover{border-color:var(--color-teal);color:var(--color-teal)}
.pagination-wrapper .page-numbers.current{background:var(--color-teal);color:#fff;border-color:var(--color-teal)}
.pagination-wrapper .page-numbers.dots{border:none;background:none}
@media (max-width:767px){.mobile-only{display:block}
.filter-tabs{display:none}
.filter-label{width:100%}
}
.page-hero{background:var(--color-teal);color:#fff;padding:var(--space-3xl) 0 var(--space-2xl)}
.page-hero-light{background:var(--color-bg-light);color:var(--color-text);border-bottom:1px solid var(--color-border)}
.page-hero-light .page-hero-title{color:var(--color-teal)}
.page-hero-light .breadcrumbs,.page-hero-light .breadcrumbs a{color:var(--color-text-light)}
.page-hero-title{font-size:clamp(2rem,5vw,3rem);font-weight:700;line-height:1.15;margin-bottom:var(--space-sm);color:#fff}
.page-hero-subtitle{font-size:1.125rem;opacity:0.88;max-width:600px;margin-bottom:var(--space-lg)}
.page-hero-actions{display:flex;gap:var(--space-sm);flex-wrap:wrap;margin-top:var(--space-lg)}
.container-narrow{max-width:820px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md)}
@media (max-width:767px){.stats-grid{grid-template-columns:repeat(2,1fr)}
}
.stat-card{text-align:center;padding:var(--space-xl) var(--space-md);background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.stat-number{display:block;font-size:clamp(2rem,4vw,2.75rem);font-weight:700;color:var(--color-teal);line-height:1.1}
.stat-label{display:block;font-size:0.875rem;color:var(--color-text-light);margin-top:var(--space-2xs)}
.about-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xl);align-items:start}
@media (max-width:991px){.about-story-grid{grid-template-columns:1fr}
}
.about-story-content p{color:var(--color-text-light);margin-bottom:var(--space-md)}
.about-story-card{border-radius:var(--radius-lg);padding:var(--space-xl);background:var(--color-teal);color:#fff}
.about-quote{margin:0}
.about-quote p{font-size:1.125rem;font-style:italic;line-height:1.7;color:#fff;margin-bottom:var(--space-md)}
.about-quote footer{font-size:0.875rem;opacity:0.8}
.about-certif-row{display:flex;gap:var(--space-sm);margin-top:var(--space-md);flex-wrap:wrap}
.certif-badge{display:flex;flex-direction:column;align-items:center;gap:var(--space-2xs);padding:var(--space-sm) var(--space-md);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:0.75rem;font-weight:600;color:var(--color-teal);flex:1;min-width:80px}
.certif-badge svg{color:var(--color-teal)}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md)}
@media (max-width:991px){.values-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:599px){.values-grid{grid-template-columns:1fr}
}
.value-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}
.value-icon{width:56px;height:56px;border-radius:var(--radius-md);background:var(--color-teal-light);display:flex;align-items:center;justify-content:center;color:var(--color-teal);margin-bottom:var(--space-md)}
.value-title{font-size:1rem;font-weight:700;margin-bottom:var(--space-sm)}
.value-text{font-size:0.9rem;color:var(--color-text-light);line-height:1.6}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}
@media (max-width:991px){.team-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:599px){.team-grid{grid-template-columns:1fr}
}
.team-card{text-align:center;padding:var(--space-xl) var(--space-md);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}
.team-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.team-avatar{width:72px;height:72px;border-radius:50%;background:var(--color-teal-light);color:var(--color-teal);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-md)}
.team-name{font-weight:700;font-size:1rem;margin-bottom:var(--space-2xs)}
.team-role{font-size:0.875rem;color:var(--color-teal);font-weight:500;margin-bottom:var(--space-2xs)}
.team-specialty{font-size:0.8125rem;color:var(--color-text-muted)}
.contact-grid{display:grid;grid-template-columns:1fr 380px;gap:var(--space-2xl);align-items:start}
@media (max-width:991px){.contact-grid{grid-template-columns:1fr}
}
.form-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2xl);box-shadow:var(--shadow-sm)}
.form-card-title{font-size:1.5rem;font-weight:700;margin-bottom:var(--space-xl)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}
@media (max-width:599px){.form-row{grid-template-columns:1fr}
}
.form-group{margin-bottom:var(--space-md)}
.form-label{display:block;font-size:0.875rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs)}
.form-label .required{color:var(--color-teal);margin-left:2px}
.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:0.9375rem;color:var(--color-text);background:#fff;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);appearance:none;-webkit-appearance:none}
.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-teal);box-shadow:0 0 0 3px rgba(32,96,85,0.12)}
.form-textarea{resize:vertical;min-height:140px}
.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}
.btn-block{width:100%;justify-content:center}
.form-error-alert{background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);font-size:0.9rem;margin-bottom:var(--space-md)}
.form-success-card{text-align:center;padding:var(--space-3xl) var(--space-xl);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.form-success-icon{width:80px;height:80px;border-radius:50%;background:#dcfce7;color:#16a34a;display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-lg)}
.form-success-card h2{margin-bottom:var(--space-sm)}
.form-success-card p{color:var(--color-text-light)}
.contact-info-col{display:flex;flex-direction:column;gap:var(--space-md)}
.contact-info-card,.contact-map-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}
.contact-info-card{padding:var(--space-xl)}
.contact-info-card h3{font-size:1.125rem;font-weight:700;margin-bottom:var(--space-lg)}
.contact-info-list{display:flex;flex-direction:column;gap:var(--space-md)}
.contact-info-item{display:flex;gap:var(--space-md);align-items:flex-start}
.contact-info-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-md);background:var(--color-teal-light);color:var(--color-teal);display:flex;align-items:center;justify-content:center}
.contact-info-label{font-size:0.75rem;color:var(--color-text-muted);margin-bottom:2px;text-transform:uppercase;letter-spacing:0.05em}
.contact-info-value{font-size:0.9375rem;font-weight:600;color:var(--color-text);display:block}
a.contact-info-value:hover{color:var(--color-teal)}
.contact-info-note{font-size:0.8rem;color:var(--color-text-muted);margin-top:2px}
.contact-map-card iframe{display:block}
.devis-layout{display:grid;grid-template-columns:1fr 320px;gap:var(--space-2xl);align-items:start}
@media (max-width:991px){.devis-layout{grid-template-columns:1fr}
}
.form-steps-indicator{display:flex;align-items:center;margin-bottom:var(--space-2xl);gap:0}
.step-indicator{display:flex;align-items:center;gap:var(--space-xs);flex:1;position:relative}
.step-indicator:not(:last-child)::after{content:'';position:absolute;right:0;top:50%;transform:translateY(-50%);width:calc(100% - 36px);left:36px;height:2px;background:var(--color-border);z-index:0}
.step-num{width:32px;height:32px;border-radius:50%;background:var(--color-border);color:var(--color-text-muted);font-size:0.875rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1;transition:all var(--transition-fast)}
.step-indicator.active .step-num{background:var(--color-teal);color:#fff}
.step-indicator.completed .step-num{background:#dcfce7;color:#16a34a}
.step-label{font-size:0.8rem;color:var(--color-text-muted)}
.step-indicator.active .step-label{color:var(--color-teal);font-weight:600}
.form-step{display:none}
.form-step.active{display:block}
.form-step-title{font-size:1.25rem;font-weight:700;margin-bottom:var(--space-xl)}
.form-group-half{}
.form-actions{display:flex;gap:var(--space-sm);justify-content:flex-end;margin-top:var(--space-lg)}
.devis-sidebar{display:flex;flex-direction:column;gap:var(--space-md)}
.sidebar-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-sm)}
.sidebar-card-title{font-size:1.125rem;font-weight:700;margin-bottom:var(--space-sm)}
.sidebar-card-text{font-size:0.9rem;color:var(--color-text-light);margin-bottom:var(--space-md)}
.sidebar-contact-list{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-md)}
.sidebar-contact-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;transition:border-color var(--transition-fast)}
.sidebar-contact-item:hover{border-color:var(--color-teal)}
.sidebar-contact-item .icon{color:var(--color-teal);flex-shrink:0}
.contact-label{display:block;font-size:0.75rem;color:var(--color-text-muted)}
.contact-value{display:block;font-size:0.9rem;font-weight:600;color:var(--color-text)}
.sidebar-hours h4{font-size:0.875rem;font-weight:700;margin-bottom:var(--space-xs)}
.sidebar-hours p{font-size:0.875rem;color:var(--color-text-light);margin:0}
.sidebar-trust{display:flex;flex-direction:column;gap:var(--space-sm)}
.trust-item{display:flex;align-items:center;gap:var(--space-sm);font-size:0.875rem;color:var(--color-text)}
.trust-item .icon{color:var(--color-teal);flex-shrink:0}
.page-hero-omra{background:linear-gradient(135deg,#1a4d42 0%,var(--color-teal) 50%,#2d7a68 100%);padding-bottom:var(--space-3xl)}
.page-hero-omra .page-hero-subtitle{font-size:1.25rem}
.omra-trust-bar{background:#1a2e2b;color:#fff;padding:var(--space-md) 0}
.omra-trust-bar .trust-bar-list{border:none;padding:0}
.omra-trust-bar .trust-bar-item{color:rgba(255,255,255,0.85)}
.omra-trust-bar .trust-icon{color:var(--color-gold,#f59e0b)}
.omra-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);margin-top:var(--space-xl)}
@media (max-width:991px){.omra-grid{grid-template-columns:1fr}
}
.omra-card{background:#fff;border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);position:relative;display:flex;flex-direction:column;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}
.omra-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.omra-card-featured{border-color:var(--color-teal);box-shadow:0 0 0 4px rgba(32,96,85,0.1)}
.omra-card-badge{display:inline-block;font-size:0.75rem;font-weight:700;padding:4px 10px;border-radius:20px;background:var(--color-teal-light);color:var(--color-teal);margin-bottom:var(--space-md);width:fit-content;text-transform:uppercase;letter-spacing:0.05em}
.omra-card-badge-popular{background:var(--color-teal);color:#fff}
.omra-card-badge-premium{background:#1a2e2b;color:#f59e0b}
.omra-card-title{font-size:1.375rem;font-weight:700;margin-bottom:var(--space-sm)}
.omra-card-duration{display:flex;align-items:center;gap:6px;font-size:0.875rem;color:var(--color-text-light);margin-bottom:var(--space-md)}
.omra-card-includes{list-style:none;padding:0;margin:0;flex:1;margin-bottom:var(--space-lg)}
.omra-card-includes li{padding:var(--space-2xs) 0;padding-left:22px;position:relative;font-size:0.9rem;color:var(--color-text-light);border-bottom:1px solid var(--color-border)}
.omra-card-includes li:last-child{border-bottom:none}
.omra-card-includes li::before{content:'✓';position:absolute;left:0;color:var(--color-teal);font-weight:700}
.omra-card-price{font-size:1rem;color:var(--color-text-light);margin-bottom:var(--space-md)}
.omra-card-price strong{font-size:1.5rem;color:var(--color-teal);font-weight:700}
.omra-why-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xl);align-items:start}
@media (max-width:991px){.omra-why-grid{grid-template-columns:1fr}
}
.omra-why-list{list-style:none;padding:0;margin:var(--space-xl) 0 0;display:flex;flex-direction:column;gap:var(--space-md)}
.omra-why-list li{display:flex;gap:var(--space-md);align-items:flex-start}
.omra-why-icon{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-md);background:var(--color-teal-light);color:var(--color-teal);display:flex;align-items:center;justify-content:center}
.omra-stats-card{background:var(--color-teal);color:#fff;border-radius:var(--radius-lg);padding:var(--space-xl);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm);text-align:center;margin-bottom:var(--space-md)}
.omra-stat-number{display:block;font-size:2rem;font-weight:700;line-height:1.1}
.omra-stat-label{display:block;font-size:0.8rem;opacity:0.8;margin-top:4px}
.omra-testimonial{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);margin:0}
.omra-testimonial p{font-style:italic;color:var(--color-text-light);margin-bottom:var(--space-sm)}
.omra-testimonial footer{font-size:0.875rem;font-weight:600;color:var(--color-teal)}
.hajj-grid{display:grid;grid-template-columns:1fr 340px;gap:var(--space-2xl);align-items:start}
@media (max-width:991px){.hajj-grid{grid-template-columns:1fr}
}
.hajj-content p{color:var(--color-text-light);margin-bottom:var(--space-md)}
.hajj-info-card{background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl)}
.hajj-info-card h3{font-size:1.125rem;font-weight:700;margin-bottom:var(--space-md);color:var(--color-teal)}
.hajj-info-list{list-style:none;padding:0;margin:0 0 var(--space-lg)}
.hajj-info-list li{padding:var(--space-xs) 0;border-bottom:1px solid var(--color-border);font-size:0.9rem;color:var(--color-text-light)}
.hajj-info-list li:last-child{border-bottom:none}
.themes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}
@media (max-width:991px){.themes-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:599px){.themes-grid{grid-template-columns:1fr}
}
.theme-card{display:block;border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;color:#fff;position:relative;min-height:280px;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}
.theme-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.theme-card-lune-de-miel{background:linear-gradient(135deg,#be185d,#9d174d)}
.theme-card-famille{background:linear-gradient(135deg,#0369a1,#075985)}
.theme-card-aventure{background:linear-gradient(135deg,#b45309,#92400e)}
.theme-card-culture{background:linear-gradient(135deg,#7c3aed,#5b21b6)}
.theme-card-detente{background:linear-gradient(135deg,#0891b2,#0e7490)}
.theme-card-omra{background:linear-gradient(135deg,var(--color-teal),#1a4d42)}
.theme-card-inner{position:relative;z-index:1;padding:var(--space-2xl);height:100%;display:flex;flex-direction:column}
.theme-card::before{content:'';position:absolute;inset:0;background:rgba(0,0,0,0.15);transition:background var(--transition-fast)}
.theme-card:hover::before{background:rgba(0,0,0,0.05)}
.theme-card-icon{width:64px;height:64px;border-radius:var(--radius-md);background:rgba(255,255,255,0.2);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-md)}
.theme-card-title{font-size:1.375rem;font-weight:700;margin-bottom:var(--space-sm);color:#fff}
.theme-card-text{font-size:0.9rem;opacity:0.88;line-height:1.6;flex:1;margin-bottom:var(--space-md);color:#fff}
.theme-card-cta{display:inline-flex;align-items:center;gap:6px;font-size:0.875rem;font-weight:600;color:#fff;background:rgba(255,255,255,0.2);padding:6px 14px;border-radius:20px;width:fit-content;transition:background var(--transition-fast)}
.theme-card:hover .theme-card-cta{background:rgba(255,255,255,0.35)}
.faq-categories{display:flex;flex-direction:column;gap:var(--space-2xl)}
.faq-category-title{font-size:1.25rem;font-weight:700;margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:2px solid var(--color-teal);color:var(--color-teal)}
.faq-list{display:flex;flex-direction:column;gap:var(--space-xs)}
.faq-item{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;transition:border-color var(--transition-fast)}
.faq-item[open]{border-color:var(--color-teal)}
.faq-question{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);font-weight:600;font-size:0.9375rem;cursor:pointer;list-style:none;user-select:none;gap:var(--space-md)}
.faq-question::-webkit-details-marker{display:none}
.faq-chevron{flex-shrink:0;color:var(--color-text-muted);transition:transform var(--transition-fast)}
.faq-item[open] .faq-chevron{transform:rotate(180deg);color:var(--color-teal)}
.faq-answer{padding:0 var(--space-lg) var(--space-md);border-top:1px solid var(--color-border)}
.faq-answer p{font-size:0.9375rem;color:var(--color-text-light);line-height:1.7;margin:var(--space-md) 0 0}
.faq-cta-contact{margin-top:var(--space-3xl);text-align:center;padding:var(--space-2xl);background:var(--color-bg-light);border-radius:var(--radius-lg)}
.faq-cta-contact p{font-size:1.125rem;font-weight:600;margin-bottom:var(--space-md)}
.faq-cta-actions{display:flex;gap:var(--space-sm);justify-content:center;flex-wrap:wrap}
.legal-content.prose h2{font-size:1.375rem;font-weight:700;margin-top:var(--space-2xl);margin-bottom:var(--space-md);padding-bottom:var(--space-xs);border-bottom:2px solid var(--color-teal-light);color:var(--color-teal)}
.legal-content.prose h2:first-child{margin-top:0}
.legal-content.prose p{color:var(--color-text-light);line-height:1.8;margin-bottom:var(--space-md)}
.legal-content.prose a{color:var(--color-teal);text-decoration:underline}
.legal-content.prose strong{color:var(--color-text)}
.legal-toc{background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-xl);margin-bottom:var(--space-2xl)}
.legal-toc h2{font-size:1rem !important;margin:0 0 var(--space-sm) !important;border:none !important;color:var(--color-text) !important;padding:0 !important}
.legal-toc ol{padding-left:var(--space-lg);margin:0}
.legal-toc li{font-size:0.9rem;margin-bottom:var(--space-2xs)}
.legal-toc a{color:var(--color-teal);text-decoration:none}
.legal-toc a:hover{text-decoration:underline}
.legal-table{width:100%;border-collapse:collapse;margin:var(--space-md) 0 var(--space-xl);font-size:0.9rem}
.legal-table th{background:var(--color-teal);color:#fff;padding:10px 14px;text-align:left;font-weight:600}
.legal-table td{padding:10px 14px;border-bottom:1px solid var(--color-border);color:var(--color-text-light)}
.legal-table tr:nth-child(even) td{background:var(--color-bg-light)}
.legal-update{margin-top:var(--space-3xl) !important;padding-top:var(--space-md);border-top:1px solid var(--color-border);font-size:0.85rem !important;color:var(--color-text-muted) !important}
.section-page-hero{background:var(--color-bg-light);padding:var(--space-3xl) 0 var(--space-2xl);border-bottom:1px solid var(--color-border)}
.section-page-hero .page-title{color:var(--color-teal)}
.bg-gradient-light{background:linear-gradient(160deg,var(--color-bg-light) 0%,#fff 100%)}
.form-control{width:100%;padding:10px 14px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:0.9375rem;color:var(--color-text);background:#fff;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);appearance:none;-webkit-appearance:none}
.form-control:focus{outline:none;border-color:var(--color-teal);box-shadow:0 0 0 3px rgba(32,96,85,0.12)}
select.form-control{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}
textarea.form-control{resize:vertical;min-height:120px}
.form-checkbox{display:flex;align-items:flex-start;gap:var(--space-sm)}
.form-checkbox input[type="checkbox"]{margin-top:2px;accent-color:var(--color-teal)}
.form-checkbox label{font-size:0.875rem;color:var(--color-text-light);cursor:pointer}
.devis-form-wrapper.card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2xl);box-shadow:var(--shadow-sm)}
.section-devis{padding-top:var(--space-3xl);padding-bottom:var(--space-3xl)}
.section-dest-archive-header{padding:var(--space-3xl) 0 var(--space-xl)}
.dest-archive-title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;color:var(--color-text);text-align:center;line-height:1.25}
.section-dest-listing{padding:4rem 0}
.dest-regions-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:3rem;padding-inline:0}
.dest-region-name{font-size:1.875rem;font-weight:700;color:var(--color-text);margin-bottom:var(--space-lg);margin-top:0}
.dest-country-group{margin-bottom:var(--space-lg)}
.dest-country-name{display:block;font-weight:700;font-size:1.1875rem;color:var(--color-text);margin-bottom:var(--space-xs);text-decoration:none}
a.dest-country-name:hover{color:var(--color-primary,#1d6b5e)}
.dest-cities-list{list-style:none;padding:0;margin:0}
.dest-cities-list li{padding:2px 0}
.dest-cities-list li a{font-size:0.9375rem;color:var(--color-text-light);text-decoration:none;transition:color 0.15s}
.dest-cities-list li a:hover{color:var(--color-teal)}
.dest-archive-cta{text-align:center;margin-top:var(--space-3xl);padding-top:var(--space-2xl);border-top:1px solid var(--color-border)}
.dest-archive-cta p{font-size:1.125rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs)}
.dest-archive-cta-sub{font-size:0.9375rem;color:var(--color-text-light);font-weight:400;margin-bottom:var(--space-lg)}
.contact-bar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-xl);padding:var(--space-xl) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}
.contact-bar-item{display:flex;align-items:center;gap:var(--space-md)}
.contact-bar-item svg{color:var(--color-teal);flex-shrink:0}
.contact-bar-label{display:block;font-size:0.8125rem;color:var(--color-text-muted);margin-bottom:2px}
.contact-bar-value{font-size:0.9375rem;font-weight:600;color:var(--color-teal);text-decoration:none}
.contact-bar-value:hover{text-decoration:underline}
@media (max-width:640px){.contact-bar-grid{grid-template-columns:1fr}
}
.site-logo-link{display:flex;align-items:center;text-decoration:none}
.site-logo-link svg{display:block}
@media print{.site-header,.site-footer,.breadcrumbs,.carousel-nav,.carousel-prev,.carousel-next,.btn,.social-links,.floating-rdv{display:none !important}
body{color:#000;background:#fff}
a{color:#000;text-decoration:underline}
}
.section-pad{padding:var(--space-3xl) 0}
.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;color:#fff;background-color:#1a2e2a}
.hero-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;transition:transform 8s ease}
.hero-section:hover .hero-bg-img{transform:scale(1.03)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,0.45),rgba(0,0,0,0.65));z-index:1;pointer-events:none}
.hero-section > .hero-content{position:relative;z-index:2;width:100%;max-width:860px;margin:0 auto;padding:calc(var(--header-height) + var(--space-3xl)) var(--container-padding) var(--space-3xl);display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-lg)}
.hero-rating-badge{display:inline-flex;align-items:center;gap:var(--space-sm);background:rgba(255,255,255,0.15);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.25);border-radius:var(--radius-full);padding:6px 14px 6px 8px;font-size:0.8125rem;color:#fff}
.hero-rating-avatars{display:flex;align-items:center}
.hero-rating-avatars .avatar{width:26px;height:26px;border-radius:50%;background:var(--color-teal);border:2px solid rgba(255,255,255,0.6);display:flex;align-items:center;justify-content:center;font-size:0.6875rem;font-weight:700;color:#fff;margin-left:-6px}
.hero-rating-avatars .avatar:first-child{margin-left:0}
.hero-rating-text{line-height:1.4}
.hero-rating-text .stars{color:var(--color-gold);font-size:0.875rem;margin-right:4px}
.hero-h1{font-size:26px;font-weight:700;color:#fff;line-height:1.1;letter-spacing:-0.02em;margin:0;text-shadow:0 2px 16px rgba(0,0,0,0.6),0 0 4px rgba(0,0,0,0.4)}
@media (min-width:768px){.hero-h1{font-size:40px}
}
.hero-search-wrap{display:flex;align-items:center;background:#fff;border-radius:var(--radius-full);padding:6px 6px 6px 16px;gap:var(--space-sm);width:100%;max-width:620px;box-shadow:0 8px 32px rgba(0,0,0,0.18)}
.hero-search-wrap .search-icon{width:18px;height:18px;color:var(--color-text-muted);flex-shrink:0}
.hero-search-wrap input[type="search"]{flex:1;border:none;outline:none;background:transparent;font-size:0.9375rem;color:var(--color-text);min-width:0}
.hero-search-wrap input[type="search"]::placeholder{color:var(--color-text-muted)}
.hero-search-wrap input[type="search"]::-webkit-search-cancel-button{display:none}
.hero-search-results{font-size:0.75rem;color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}
.hero-search-btn{background:var(--color-teal);color:#fff;border:none;border-radius:var(--radius-full);padding:0.625rem 1.25rem;font-size:0.8125rem;font-weight:700;letter-spacing:0.04em;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background var(--transition-fast)}
.hero-search-btn:hover{background:var(--color-teal-hover)}
.hero-destinations{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}
.destinations-label{font-size:0.8125rem;color:rgba(255,255,255,0.75);font-weight:500;white-space:nowrap}
.hero-dest-tag{display:inline-block;padding:5px 14px;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,0.45);color:#fff;font-size:1rem;font-weight:500;letter-spacing:normal;text-transform:uppercase;text-decoration:none;background:rgba(255,255,255,0.1);transition:background var(--transition-fast),border-color var(--transition-fast)}
.hero-dest-tag:hover{background:rgba(255,255,255,0.22);border-color:rgba(255,255,255,0.7);color:#fff}
.hero-floating-card{position:absolute;bottom:var(--space-2xl);right:var(--space-2xl);z-index:3;background:rgba(255,255,255,0.12);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,0.25);border-radius:var(--radius-xl);padding:var(--space-md) var(--space-lg);min-width:220px;max-width:280px;box-shadow:0 8px 32px rgba(0,0,0,0.2)}
.hero-card-top{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md)}
.hero-card-col{display:flex;flex-direction:column;gap:2px;flex:1}
.hero-card-label{font-size:0.6875rem;text-transform:uppercase;letter-spacing:0.08em;color:rgba(255,255,255,0.65);font-weight:500}
.hero-card-val{font-size:0.875rem;font-weight:700;color:#fff;line-height:1.2}
.hero-card-sep{width:1px;height:36px;background:rgba(255,255,255,0.2);flex-shrink:0}
.hero-card-cta{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px 0;background:var(--color-teal);color:#fff;border-radius:var(--radius-full);font-size:0.75rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;text-decoration:none;transition:background var(--transition-fast)}
.hero-card-cta:hover{background:var(--color-teal-hover);color:#fff}
@media (max-width:767px){.hero-floating-card{display:none}
.hero-h1{font-size:26px;line-height:1.2}
.hero-section > .hero-content{align-items:center;text-align:center}
.hero-destinations{justify-content:center}
.hero-search-wrap{flex-direction:column;border-radius:var(--radius-xl);padding:var(--space-md)}
.hero-search-wrap input[type="search"]{width:100%}
.hero-search-wrap .search-icon{display:none}
.hero-search-btn{width:100%;justify-content:center}
.hero-search-results{display:none}
}
.press-inner{display:flex;align-items:center;gap:var(--space-lg);max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding);overflow:hidden}
.press-label{font-size:1.5rem;font-weight:600;color:oklch(0.24 0 0);white-space:nowrap;flex-shrink:0;text-transform:none;letter-spacing:normal}
.press-separator{width:1px;height:24px;background:var(--color-border);flex-shrink:0}
.press-logos{flex:1;overflow:hidden;position:relative}
.press-logos-track{display:flex;align-items:center;gap:var(--space-2xl);animation:press-scroll 30s linear infinite;width:max-content}
.press-logos:hover .press-logos-track{animation-play-state:paused}
@keyframes press-scroll{0%{transform:translateX(0)}
100%{transform:translateX(-50%)}
}
.press-logo-item{flex-shrink:0;height:45px;width:auto;object-fit:contain;opacity:0.7;filter:grayscale(100%);opacity:0.55;transition:opacity var(--transition-fast);user-select:none;white-space:nowrap}
.press-logo-item:hover{opacity:1}
.offres-section{background:var(--color-bg)}
.offres-section .section-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-sm);margin-bottom:var(--space-2xl)}
.offres-section .section-header h2{margin-bottom:var(--space-xs)}
.offres-section .section-header p{color:var(--color-text-light);max-width:640px;margin:0 auto var(--space-md);line-height:1.7;font-size:1.125rem}
.offres-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--space-lg)}
@media (min-width:640px){.offres-grid{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1024px){.offres-grid{grid-template-columns:repeat(3,1fr)}
}
.offre-card{background:#fff;border-radius:var(--radius-xl);border:1px solid var(--color-border);overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base);display:flex;flex-direction:column}
.offre-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,0.1)}
.offre-card-photo{position:relative;height:280px;overflow:hidden;background:var(--color-bg-gray);flex-shrink:0}
.offre-card-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--transition-slow)}
.offre-card:hover .offre-card-img{transform:scale(1.05)}
.arrow-nav{position:absolute;bottom:var(--space-md);right:var(--space-md);width:36px;height:36px;border-radius:50%;background:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-md);transition:background var(--transition-fast),transform var(--transition-fast);z-index:2;color:var(--color-teal)}
.arrow-nav:hover{background:var(--color-teal);color:#fff;transform:scale(1.1)}
.arrow-nav svg{width:16px;height:16px}
.offre-card-img-link{display:block;width:100%;height:100%}
.offre-card-img.carousel-hidden{display:none}
.carousel-next-btn{position:absolute;top:50%;right:10px;transform:translateY(-50%);width:28px;height:28px;background:rgba(255,255,255,0.88);border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;padding:0;transition:background 0.15s}
.carousel-next-btn:hover{background:#fff}
.carousel-next-btn svg{width:14px;height:14px;color:#374151}
.offre-card-body{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-xs);flex:1}
.offre-card-body h3{font-size:1rem;font-weight:700;margin:var(--space-xs) 0;line-height:1.3}
.offre-card-body h3 a{color:var(--color-text);text-decoration:none;transition:color var(--transition-fast)}
.offre-card-body h3 a:hover{color:var(--color-teal)}
.offre-card-location{display:flex;align-items:center;gap:5px;font-size:0.8125rem;color:var(--color-primary);font-weight:500;margin:0}
.offre-card-location svg{width:13px;height:13px;flex-shrink:0;color:var(--color-teal)}
.offre-card-price{font-size:0.9rem;color:#374151;margin:0;font-weight:400}
.offre-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:var(--space-sm)}
.offre-tag{display:inline-block;padding:2px 10px;background:#f3f4f6;color:#111827;border-radius:var(--radius-full);border:1px solid transparent;font-size:0.75rem;font-weight:500;white-space:nowrap}
.offre-tag.more{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}
.cta-banner-section{background:var(--color-bg-light);padding:var(--space-3xl) 0}
.cta-banner-inner{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding)}
.cta-banner-card{background:linear-gradient(135deg,var(--color-teal) 0%,#1a6b5e 60%,#2a8a7a 100%);border-radius:var(--radius-2xl);overflow:hidden;display:grid;grid-template-columns:1fr;align-items:stretch;position:relative}
@media (min-width:900px){.cta-banner-card{grid-template-columns:1fr 380px}
}
.cta-banner-text{padding:var(--space-3xl);color:#fff;display:flex;flex-direction:column;justify-content:center;gap:var(--space-lg);position:relative;z-index:1}
.cta-banner-text h2{color:#fff;font-size:clamp(1.5rem,3.5vw,2.25rem);line-height:1.2;margin:0}
.cta-banner-text p{color:rgba(255,255,255,0.85);line-height:1.7;margin:0;max-width:520px;font-size:1.0625rem}
.cta-banner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-lg)}
.cta-banner-phone{display:inline-flex;align-items:center;gap:var(--space-sm);color:rgba(255,255,255,0.9);font-weight:600;font-size:0.9375rem;text-decoration:none;transition:color var(--transition-fast)}
.cta-banner-phone:hover{color:#fff}
.cta-banner-phone svg{flex-shrink:0}
.cta-banner-photo{position:relative;overflow:hidden;min-height:260px}
.cta-banner-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}
@media (max-width:899px){.cta-banner-photo{display:none}
}
.pourquoi-section{background:#232323}
.pourquoi-section h2,.pourquoi-section p{color:#fff}
.pourquoi-header{text-align:center;margin-bottom:var(--space-2xl)}
.pourquoi-header h2{margin-bottom:var(--space-xs)}
.pourquoi-header p{color:rgba(255,255,255,0.75)}
.pourquoi-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--space-lg)}
@media (min-width:640px){.pourquoi-grid{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1024px){.pourquoi-grid{grid-template-columns:repeat(4,1fr)}
}
.pourquoi-card{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.12);color:#fff;border-radius:var(--radius-xl);padding:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-sm);transition:transform var(--transition-base),box-shadow var(--transition-base)}
.pourquoi-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.pourquoi-icon{width:52px;height:52px;border-radius:var(--radius-lg);background:rgba(32,96,85,0.4);color:#5ec4a8;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:var(--space-sm)}
.pourquoi-icon svg{width:24px;height:24px}
.pourquoi-card h3{font-size:1rem;font-weight:700;margin:0;color:rgba(255,255,255,0.9)}
.pourquoi-card p{font-size:0.875rem;color:rgba(255,255,255,0.9);line-height:1.65;margin:0}
.temoignages-section{background:var(--color-bg)}
.temoignages-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-xl);margin-bottom:var(--space-2xl);flex-wrap:wrap}
.temoignages-header-left h2{margin-bottom:var(--space-xs)}
.temoignages-header-left p{color:var(--color-text-light);margin:0}
.google-rating-badge{display:flex;align-items:center;gap:var(--space-md);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-lg);box-shadow:var(--shadow-sm);flex-shrink:0}
.google-logo{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#4285f4 0%,#34a853 33%,#fbbc05 66%,#ea4335 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:900;font-style:italic;flex-shrink:0;letter-spacing:-0.05em}
.rating-num{font-size:1.5rem;font-weight:700;color:var(--color-text);line-height:1}
.rating-stars{font-size:0.875rem;color:var(--color-gold);margin-top:1px}
.temoignages-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--space-lg);margin-bottom:var(--space-xl)}
@media (min-width:768px){.temoignages-grid{grid-template-columns:repeat(3,1fr)}
}
.temoignage-card{background:var(--color-bg-light);border-radius:var(--radius-xl);border:1px solid var(--color-border);padding:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-md)}
.temoignage-header-row{display:flex;align-items:center;gap:var(--space-md)}
.temoignage-avatar{width:44px;height:44px;border-radius:50%;background:var(--color-teal-light);color:var(--color-teal);font-weight:700;font-size:1.125rem;display:flex;align-items:center;justify-content:center;object-fit:cover;flex-shrink:0}
.temoignage-name{font-weight:600;font-size:0.9375rem;color:var(--color-text);margin:0}
.temoignage-meta{display:flex;align-items:center;gap:var(--space-sm);margin-top:2px}
.temoignage-meta .stars{color:var(--color-gold);font-size:0.875rem}
.google-g{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#4285f4 0%,#34a853 33%,#fbbc05 66%,#ea4335 100%);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:0.625rem;font-weight:900;font-style:italic;flex-shrink:0}
.temoignage-text{font-size:0.9rem;color:var(--color-text-light);line-height:1.7;flex:1;margin:0}
.temoignage-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-sm);border-top:1px solid var(--color-border);font-size:0.8125rem}
.temoignage-footer .read-more{color:var(--color-teal);font-weight:500;cursor:pointer}
.temoignage-footer .read-more:hover{text-decoration:underline}
.temoignage-footer .date{color:var(--color-text-muted)}
.temoignages-nav{display:flex;justify-content:center;gap:var(--space-sm);margin-top:var(--space-lg)}
.temoignages-nav-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--color-border);background:#fff;color:var(--color-text);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}
.temoignages-nav-btn:hover{border-color:var(--color-teal);color:var(--color-teal);box-shadow:var(--shadow-sm)}
.faq-section{background:var(--color-bg-light)}
.faq-section h2{text-align:center;margin-bottom:var(--space-2xl)}
.faq-section .faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:0}
.faq-section .faq-item{background:transparent;border:none;border-bottom:1px solid var(--color-border);border-radius:0;overflow:visible}
.faq-section .faq-item:first-child{border-top:1px solid var(--color-border)}
.faq-section .faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) 0;font-size:1.0625rem;font-weight:600;color:var(--color-text);text-align:left;cursor:pointer;background:none;border:none;font-family:inherit;list-style:none;gap:var(--space-md);transition:color var(--transition-fast)}
.faq-section .faq-question:hover{color:var(--color-teal)}
.faq-section .faq-question[aria-expanded="true"]{color:var(--color-teal)}
.faq-chevron{flex-shrink:0;width:20px;height:20px;color:var(--color-text-muted);transition:transform var(--transition-fast),color var(--transition-fast)}
.faq-question[aria-expanded="true"] .faq-chevron{transform:rotate(180deg);color:var(--color-teal)}
.faq-section .faq-answer{overflow:hidden;max-height:0;transition:max-height 0.35s ease;padding:0;border-top:none}
.faq-section .faq-answer.is-open{max-height:600px}
.faq-answer-inner{padding:0 0 var(--space-lg);color:var(--color-text-light);font-size:0.9375rem;line-height:1.8}
.faq-cta{text-align:center;margin-top:var(--space-2xl)}
.section-eyebrow{display:inline-block;font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--color-teal);background:var(--color-teal-light);padding:4px 12px;border-radius:var(--radius-full);margin-bottom:var(--space-sm)}
.process-section{background:var(--color-bg)}
.process-inner{display:grid;grid-template-columns:1fr;gap:var(--space-3xl);align-items:center}
@media (min-width:1024px){.process-inner{grid-template-columns:1fr 1fr}
}
.process-photo{border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:var(--color-bg-gray)}
.process-photo img{display:block}
.process-content{display:flex;flex-direction:column;gap:var(--space-lg)}
.process-subtitle{font-size:1.0625rem;color:var(--color-text-light);line-height:1.7;margin:0}
.process-steps{display:flex;flex-direction:column;gap:var(--space-lg);list-style:none;margin:0;padding:0;grid-template-columns:unset !important;max-width:100%}
.process-step{display:flex;align-items:flex-start;gap:var(--space-md);text-align:left}
.step-number{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--color-teal-light);color:var(--color-teal);font-size:0.875rem;font-weight:700;display:flex;align-items:center;justify-content:center}
.step-text h4{font-size:0.9375rem;font-weight:700;margin:0 0 4px;color:var(--color-text)}
.step-text p{font-size:0.875rem;color:var(--color-text-light);margin:0;line-height:1.6}
.themes-section{padding:var(--space-3xl) 0;background:var(--color-bg)}
.themes-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-xl)}
.themes-header h2{margin:0}
.themes-nav{display:flex;gap:var(--space-sm)}
.themes-nav-btn{width:38px;height:38px;border-radius:50%;border:1px solid var(--color-border);background:#fff;color:var(--color-text);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}
.themes-nav-btn:hover{border-color:var(--color-teal);color:var(--color-teal)}
.themes-grid{display:flex;gap:var(--space-md);overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:var(--space-sm)}
.themes-grid::-webkit-scrollbar{display:none}
.themes-grid .theme-card{flex:0 0 calc(25% - var(--space-md) * 3 / 4);scroll-snap-align:start;min-width:200px}
@media (max-width:991px){.themes-grid .theme-card{flex:0 0 calc(33.333% - var(--space-md) * 2 / 3)}
}
@media (max-width:599px){.themes-grid .theme-card{flex:0 0 calc(50% - var(--space-md) / 2);min-width:160px}
}
.theme-card{position:relative;border-radius:var(--radius-xl);overflow:hidden;aspect-ratio:4/3;display:block;text-decoration:none;color:#fff}
.theme-card-bg{position:absolute;inset:0;transition:transform var(--transition-slow)}
.theme-card:hover .theme-card-bg{transform:scale(1.06)}
.theme-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.6) 0%,rgba(0,0,0,0.1) 60%,transparent 100%)}
.theme-card-label{position:absolute;bottom:var(--space-md);left:var(--space-md);right:var(--space-md);font-size:0.875rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,0.4)}
.btn-floating-rdv .btn-text{display:inline}
@media (max-width:480px){.btn-floating-rdv .btn-text{display:none}
}
.dest-hero{position:relative;min-height:480px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.dest-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;transform:scale(1.04);transition:transform 8s ease}
.dest-hero:hover .dest-hero-bg{transform:scale(1)}
.dest-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.70) 0%,rgba(0,0,0,0.25) 55%,rgba(0,0,0,0.10) 100%)}
.dest-hero-content{position:relative;z-index:2;color:#fff;text-align:center;padding-bottom:5rem}
.dest-hero-title{font-size:clamp(2rem,4.5vw,3.25rem);font-weight:800;line-height:1.15;margin:0 auto var(--space-sm);color:#fff;text-shadow:0 2px 12px rgba(0,0,0,0.35);text-align:center;max-width:820px}
.dest-hero-sub{font-size:1.125rem;color:rgba(255,255,255,0.88);margin:0 0 var(--space-lg)}
.dest-hero-cta{display:inline-flex;align-items:center;gap:8px;background:var(--color-teal);color:#fff;font-weight:700;font-size:0.9375rem;letter-spacing:0.03em;padding:14px 28px;border-radius:6px;text-decoration:none;transition:background 0.2s,transform 0.2s}
.dest-hero-cta:hover{background:var(--color-teal-dark,#184e43);transform:translateY(-2px);color:#fff}
.dest-hero-cta svg{transition:transform 0.2s}
.dest-hero-cta:hover svg{transform:translateX(4px)}
.dest-stats-bar{background:#fff;border-bottom:1px solid var(--color-border);box-shadow:0 2px 12px rgba(0,0,0,0.06)}
.dest-stats-inner{display:flex;align-items:center;justify-content:center;gap:0;padding:var(--space-lg) 0}
.dest-stat{display:flex;flex-direction:column;align-items:center;gap:4px;padding:0 var(--space-2xl);text-align:center}
.dest-stat-label{font-size:0.75rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--color-text-light)}
.dest-stat-val{font-size:1rem;font-weight:700;color:var(--color-text);letter-spacing:0.04em}
.dest-stat-sep{width:1px;height:40px;background:var(--color-border);flex-shrink:0}
.dest-stats-cta{display:flex;align-items:center;gap:var(--space-lg);padding:var(--space-md) 0;border-top:1px solid var(--color-border);margin-top:var(--space-md);flex-wrap:wrap}
.dest-stats-phone{display:flex;flex-direction:column;gap:2px}
.dest-phone-link{display:flex;align-items:center;gap:6px;font-weight:600;color:var(--color-text);text-decoration:none;font-size:0.9375rem}
.dest-phone-link:hover{color:var(--color-teal)}
.dest-phone-link svg{color:var(--color-teal)}
.dest-phone-hours{font-size:0.75rem;color:var(--color-gray-text);padding-left:22px}
@media (max-width:640px){.dest-hero{min-height:360px}
.dest-stats-inner{flex-wrap:wrap;gap:var(--space-md);padding:var(--space-md)}
.dest-stat-sep{display:none}
.dest-stat{padding:0 var(--space-lg)}
.dest-stats-cta{flex-direction:column;align-items:flex-start}
}
.ce-que-propose-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:32px}
@media (min-width:768px){.ce-que-propose-grid{grid-template-columns:repeat(4,1fr)}
}
.ce-que-propose-item{display:flex;align-items:flex-start;gap:12px;padding:20px;background:#f8faf9;border-radius:12px;border:1px solid #e2ede9}
.cqp-icon{width:40px;height:40px;border-radius:50%;background:#226156;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cqp-icon svg{width:20px;height:20px;stroke:#fff}
.offre-breadcrumb-bar{background:var(--color-bg-alt);padding:10px 0;border-bottom:1px solid var(--color-border)}
.offre-breadcrumb-bar .page-breadcrumb{font-size:0.82rem;color:var(--color-gray-text)}
.offre-breadcrumb-bar .page-breadcrumb a{color:var(--color-primary);text-decoration:none}
.offre-breadcrumb-bar .page-breadcrumb a:hover{text-decoration:underline}
.offre-galerie-top{padding:20px 0 0}
.galerie-top-layout{display:grid;grid-template-columns:3fr 1fr;gap:8px;border-radius:16px;overflow:hidden;max-height:480px}
.galerie-main{position:relative;overflow:hidden}
.galerie-main img{width:100%;height:100%;object-fit:cover;display:block}
.galerie-voir-tout{position:absolute;bottom:16px;right:16px;background:rgba(0,0,0,0.65);color:#fff;border:none;padding:8px 14px;border-radius:8px;font-size:0.82rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;backdrop-filter:blur(4px);transition:background 0.2s}
.galerie-voir-tout:hover{background:rgba(0,0,0,0.8)}
.galerie-thumbs{display:grid;grid-template-rows:repeat(4,1fr);gap:8px}
.galerie-thumb-item{overflow:hidden}
.galerie-thumb-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.3s}
.galerie-thumb-item:hover img{transform:scale(1.04)}
.offre-hero-fallback{height:340px;background-size:cover;background-position:center}
.offre-header-section{padding:28px 0 0}
.offre-dest-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.offre-dest-tag{background:rgba(29,107,94,0.08);color:var(--color-primary);padding:4px 14px;border-radius:20px;font-size:0.8rem;font-weight:600;text-decoration:none;transition:background 0.2s}
.offre-dest-tag:hover{background:rgba(29,107,94,0.15)}
.offre-dest-tag--static{cursor:default}
.offre-main-title{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;color:var(--color-dark);margin:0 0 6px;line-height:1.2}
.offre-subtitle{font-size:1rem;color:var(--color-gray-text);margin:0 0 20px}
.offre-badges-section{border-top:1px solid var(--color-border);padding-top:20px;margin-top:4px}
.offre-badges-title{font-size:1rem;font-weight:700;margin:0 0 14px;color:var(--color-dark)}
.offre-badges-list{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:4px}
.offre-badge{display:flex;align-items:center;gap:8px;background:var(--color-bg-alt);border:1px solid var(--color-border);padding:8px 14px;border-radius:8px;font-size:0.85rem;font-weight:500;color:var(--color-dark)}
.offre-badge svg{color:var(--color-primary);flex-shrink:0}
.offre-badge--more{background:transparent;border:1px solid var(--color-primary);color:var(--color-primary);cursor:pointer;font-family:inherit}
.offre-badge--more:hover{background:rgba(29,107,94,0.06)}
.offre-body-section{padding-top:32px}
.offre-layout{display:grid;grid-template-columns:1fr 360px;gap:48px;align-items:start}
.offre-section{margin-bottom:36px}
.offre-section h2{font-size:1.2rem;font-weight:700;color:var(--color-dark);margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid var(--color-primary);display:inline-block}
.offre-section-content{line-height:1.8;color:var(--color-text);font-size:0.95rem}
.offre-content{font-size:0.95rem;line-height:1.8}
.offre-sidebar-sticky{position:sticky;top:100px}
.offre-sticky-card{background:#fff;border:1px solid var(--color-border);border-radius:16px;padding:24px;box-shadow:0 4px 24px rgba(0,0,0,0.08)}
.offre-sticky-title{font-size:1rem;font-weight:700;color:var(--color-dark);margin:0 0 16px;line-height:1.3}
.offre-sticky-inclus{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:8px}
.offre-sticky-inclus li{display:flex;align-items:flex-start;gap:8px;font-size:0.88rem;line-height:1.4}
.offre-sticky-inclus svg{flex-shrink:0;margin-top:2px}
.offre-sticky-price{background:var(--color-bg-alt);border-radius:12px;padding:16px}
.sticky-price-label{font-size:0.78rem;color:var(--color-gray-text);margin-bottom:2px}
.sticky-price-amount{font-size:2rem;font-weight:800;color:var(--color-primary);line-height:1.1}
.sticky-price-amount span{font-size:0.9rem;font-weight:400;color:var(--color-gray-text)}
.sticky-duree-label{font-size:0.78rem;color:var(--color-gray-text);margin-top:10px;margin-bottom:2px}
.sticky-duree{font-size:1rem;font-weight:600;color:var(--color-dark)}
.offre-sticky-contact{margin-top:20px;text-align:center;border-top:1px solid var(--color-border);padding-top:16px}
.sticky-contact-label{font-size:0.78rem;color:var(--color-gray-text);margin-bottom:4px}
.sticky-contact-phone{font-size:1.15rem;font-weight:700;color:var(--color-dark);text-decoration:none;display:block}
.sticky-contact-phone:hover{color:var(--color-primary)}
.sticky-contact-note{font-size:0.72rem;color:var(--color-gray-text);margin-top:6px;line-height:1.5}
.offre-activites-section{background:var(--color-bg-alt)}
.offre-activites-section h2{font-size:1.5rem;font-weight:700;margin:0 0 24px}
.offre-activites-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.offre-activite-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,0.06)}
.offre-activite-card img{width:100%;aspect-ratio:16 / 9;object-fit:cover;display:block}
.offre-activite-body{padding:16px}
.offre-activite-body h3{font-size:0.95rem;font-weight:700;margin:0 0 8px;color:var(--color-dark)}
.offre-activite-body p{font-size:0.85rem;color:var(--color-gray-text);line-height:1.6;margin:0}
.offre-why-section{border-top:1px solid var(--color-border)}
.offre-why-section h2{font-size:1.5rem;font-weight:700;margin:0 0 6px}
.offre-why-sub{color:var(--color-gray-text);margin:0 0 32px}
.offre-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.offre-why-item{display:flex;flex-direction:column;gap:10px}
.offre-why-item svg{background:rgba(29,107,94,0.08);padding:10px;border-radius:10px;width:48px;height:48px}
.offre-why-item h3{font-size:1rem;font-weight:700;margin:0}
.offre-why-item p{font-size:0.88rem;color:var(--color-gray-text);line-height:1.6;margin:0}
.offre-similaires-section{background:var(--color-bg-alt)}
.offre-similaires-section h2{font-size:1.4rem;font-weight:700;margin:0 0 24px}
.offre-card-pays{font-size:0.78rem;font-weight:600;color:var(--color-primary);text-transform:uppercase;letter-spacing:0.05em;display:block;margin-bottom:4px}
.offre-card-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.offre-card-badge{font-size:0.75rem;background:rgba(29,107,94,0.08);color:var(--color-primary);padding:3px 10px;border-radius:20px;font-weight:500}
@media (max-width:1024px){.offre-layout{grid-template-columns:1fr 300px;gap:32px}
.offre-why-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:900px){.offre-layout{grid-template-columns:1fr}
.offre-sidebar-sticky{position:static}
.galerie-top-layout{grid-template-columns:1fr;max-height:none}
.galerie-thumbs{grid-template-rows:auto;grid-template-columns:repeat(4,1fr);max-height:90px}
.offre-activites-grid{grid-template-columns:repeat(2,1fr)}
.offre-why-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){.offre-activites-grid{grid-template-columns:1fr}
.offre-why-grid{grid-template-columns:1fr 1fr;gap:16px}
.galerie-thumbs{grid-template-columns:repeat(2,1fr);max-height:none}
.offre-badges-list{gap:8px}
}
.mobile-nav-sidebar{position:fixed;top:0;left:-400px;width:380px;max-width:85vw;height:100vh;background:#fff;z-index:9999;transition:left 0.35s cubic-bezier(0.4,0,0.2,1);box-shadow:4px 0 30px rgba(0,0,0,0.15);overflow-y:auto;display:flex;flex-direction:column}
.mobile-nav-sidebar.is-open{left:0}
.mobile-nav-sidebar[aria-hidden="false"]{left:0}
.mobile-nav-sidebar-inner{display:flex;flex-direction:column;min-height:100%;padding:28px 32px 32px}
.mobile-nav-sidebar-content{flex:1}
.mobile-nav-close{display:flex;align-items:center;gap:8px;background:none;border:none;font-size:0.85rem;font-weight:600;letter-spacing:0.05em;color:var(--color-dark,#1a1a1a);cursor:pointer;padding:0;margin-bottom:36px;font-family:inherit}
.mobile-nav-close:hover{color:var(--color-primary,#1d6b5e)}
.sidebar-nav-links{list-style:none;padding:0;margin:0 0 32px}
.sidebar-nav-links li{border-bottom:1px solid #eee}
.sidebar-nav-links li a{display:flex;align-items:center;justify-content:space-between;padding:18px 0;font-size:1.25rem;font-weight:700;color:var(--color-dark,#1a1a1a);text-decoration:none;transition:color 0.2s}
.sidebar-nav-links li a:hover{color:var(--color-primary,#1d6b5e)}
.sidebar-nav-links li:first-child a::after{content:"›";font-size:1.5rem;color:#ccc}
.sidebar-nav-actions{list-style:none;padding:24px 0 0;margin:0;border-top:1px solid #eee;display:flex;flex-direction:column;gap:4px}
.sidebar-nav-actions li a{display:flex;align-items:center;gap:12px;padding:12px 0;font-size:0.92rem;font-weight:500;color:var(--color-dark,#1a1a1a);text-decoration:none;transition:color 0.2s}
.sidebar-nav-actions li a:hover{color:var(--color-primary,#1d6b5e)}
.sidebar-nav-actions li a svg{color:var(--color-primary,#1d6b5e);flex-shrink:0}
.sidebar-nav-badge{margin-top:auto;padding-top:24px;border-top:1px solid #eee;display:flex;align-items:center;justify-content:space-between;gap:12px}
.sidebar-badge-rating{display:flex;align-items:center;gap:8px}
.sidebar-badge-rating img{border-radius:2px}
.badge-score{font-size:1.4rem;font-weight:800;color:var(--color-dark,#1a1a1a)}
.badge-label{font-size:0.78rem;color:var(--color-gray-text,#666)}
.badge-experience{font-size:0.82rem;font-weight:600;color:var(--color-primary,#1d6b5e)}
.mobile-nav-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.4);z-index:9998;opacity:0;pointer-events:none;transition:opacity 0.3s}
.mobile-nav-overlay.is-visible{opacity:1;pointer-events:auto}
.mobile-nav-sidebar-inner{position:relative;flex:1;overflow:hidden;display:block;min-height:100%}
.sidebar-panel{position:absolute;top:0;left:0;right:0;bottom:0;background:#fff;overflow-y:auto;-webkit-overflow-scrolling:touch;transform:translateX(100%);transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);display:flex;flex-direction:column}
.sidebar-panel--main{transform:translateX(0);padding:28px 32px 32px}
.sidebar-panel--main .mobile-nav-sidebar-content{flex:1}
.sidebar-panel--main.is-pushed{transform:translateX(-100%)}
.sidebar-panel--regions{transform:translateX(100%);padding:28px 32px 32px}
.sidebar-panel--regions.is-visible{transform:translateX(0)}
.sidebar-panel--regions.is-pushed{transform:translateX(-100%)}
.sidebar-regions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}
.sidebar-regions-list li a{display:flex;align-items:center;justify-content:space-between;padding:18px 8px;font-size:1.3rem;font-weight:700;color:var(--color-dark,#1a1a1a);text-decoration:none;transition:color 0.2s}
.sidebar-regions-list li a:hover{color:var(--color-primary,#1d6b5e)}
.sidebar-regions-list li a svg{color:#ccc}
.sidebar-dest-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;padding:18px 0;font-size:1.25rem;font-weight:700;color:var(--color-dark,#1a1a1a);cursor:pointer;font-family:inherit;text-align:left;transition:color 0.2s}
.sidebar-dest-trigger:hover{color:var(--color-primary,#1d6b5e)}
.sidebar-dest-trigger.is-active{color:var(--color-primary,#1d6b5e)}
.sidebar-panel--destinations{transform:translateX(100%);padding:28px 32px 32px}
.sidebar-panel--destinations.is-visible{transform:translateX(0)}
.sidebar-back-btn{display:flex;align-items:center;gap:6px;background:none;border:none;font-size:0.85rem;font-weight:600;color:var(--color-primary,#1d6b5e);cursor:pointer;padding:0;margin-bottom:20px;font-family:inherit}
.sidebar-back-btn:hover{text-decoration:underline}
.sidebar-dest-title{font-size:1.4rem;font-weight:800;color:var(--color-dark,#1a1a1a);margin:0 0 24px}
.sidebar-dest-list{display:flex;flex-direction:column;gap:20px}
.sidebar-dest-group{display:flex;flex-direction:column;gap:4px}
.sidebar-dest-pays{font-size:1rem;font-weight:700;color:var(--color-dark,#1a1a1a);display:block;margin-bottom:4px;text-decoration:none}
a.sidebar-dest-pays:hover{color:var(--color-primary,#226156)}
.sidebar-dest-link{font-size:0.9rem;color:var(--color-gray-text,#666);text-decoration:none;padding:3px 0;display:block;transition:color 0.2s}
.sidebar-dest-link:hover{color:var(--color-primary,#1d6b5e)}
.sidebar-region-btn{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;padding:18px 8px;font-size:1.3rem;font-weight:700;color:var(--color-dark,#1a1a1a);cursor:pointer;font-family:inherit;text-align:left;transition:color 0.2s}
.sidebar-region-btn:hover{color:var(--color-primary,#1d6b5e)}
.sidebar-region-btn svg{color:#ccc}
.section-dest-themes{padding:var(--space-3xl) 0;background:var(--color-bg-light)}
.dest-themes-title{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:700;color:var(--color-text);text-align:center;margin-bottom:var(--space-2xl)}
.dest-themes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-lg);max-width:900px;margin:0 auto}
.dest-theme-card{display:flex;flex-direction:column;align-items:center;text-decoration:none;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg);box-shadow:var(--shadow-sm);transition:transform 0.2s ease,box-shadow 0.2s ease}
.dest-theme-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.dest-theme-card-img{width:100%;height:140px;object-fit:cover;display:block}
.dest-theme-card-placeholder{width:100%;height:140px;background:linear-gradient(135deg,var(--color-teal),var(--color-teal-hover))}
.dest-theme-card-label{display:block;padding:var(--space-sm) var(--space-md);font-size:0.9375rem;font-weight:600;color:var(--color-text);text-align:center;width:100%}
@media (max-width:640px){.dest-themes-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-md)}
.dest-theme-card-img,.dest-theme-card-placeholder{height:100px}
}
.offre-carousel{position:relative;width:100%;height:100%}
.offre-carousel-slide{display:none;width:100%;height:100%}
.offre-carousel-slide.is-active{display:block}
.offre-carousel-slide img{width:100%;height:100%;object-fit:cover}
.offre-carousel-next{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,0.9);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;box-shadow:0 1px 4px rgba(0,0,0,0.2);transition:background 0.2s}
.offre-carousel-next:hover{background:#fff}
.offre-carousel-next svg{width:16px;height:16px}
.temoignages-grid{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}
.temoignages-grid::-webkit-scrollbar{display:none}
.temoignages-grid .temoignage-card{scroll-snap-align:start}
.temoignages-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-lg);flex-wrap:wrap}
.temoignages-header-right{text-align:right}
.google-rating-badge-large{display:flex;align-items:center;gap:var(--space-sm)}
.rating-num-large{font-size:2.5rem;font-weight:800;color:var(--color-text);line-height:1}
.rating-stars-large{color:#fbbc04;font-size:1.25rem}
.rating-link{font-size:0.8125rem;color:var(--color-teal);text-decoration:underline}
.rating-certified{display:flex;align-items:center;gap:6px;font-size:0.75rem;color:var(--color-gray-text);margin-top:4px;justify-content:flex-end}
.rating-certified img{height:18px;width:auto}
.google-g-icon{width:16px;height:16px;vertical-align:middle;margin-left:4px}
@media (min-width:768px){.offres-grid{grid-template-columns:repeat(3,1fr)}
}
.theme-selector-grid{display:flex;gap:24px;overflow-x:auto;padding:var(--space-md) 0;scrollbar-width:none;-ms-overflow-style:none}
.theme-selector-grid::-webkit-scrollbar{display:none}
.theme-selector-card{flex:0 0 140px;display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;color:var(--color-text);cursor:pointer;transition:transform 0.2s}
.theme-selector-card:hover{transform:translateY(-4px)}
.theme-selector-card.is-active img{outline:2.5px solid var(--color-teal);outline-offset:-2px}
.theme-selector-card img{width:140px;height:140px;border-radius:14px;object-fit:cover}
.theme-selector-card p{font-size:0.8125rem;font-weight:600;text-align:center;margin:0}
@media (max-width:640px){.theme-selector-card{flex:0 0 100px}
.theme-selector-card img{width:100px;height:100px}
}
.blog-filter-bar{border-bottom:1px solid var(--color-border);background:#fff}
.blog-filters{display:flex;align-items:center;gap:40px;padding:12px 0;overflow-x:auto;scrollbar-width:none}
.blog-filters::-webkit-scrollbar{display:none}
.blog-filter-link{font-size:0.875rem;font-weight:500;text-transform:uppercase;color:var(--color-text-muted);text-decoration:none;white-space:nowrap;padding:4px 0;border-bottom:2px solid transparent;transition:all 0.2s}
.blog-filter-link:hover,.blog-filter-link.is-active{color:var(--color-text);border-bottom-color:var(--color-teal)}
.blog-hero{background:#faf8f5;text-align:center}
.blog-hero h1{font-size:1.75rem;margin-bottom:12px}
.blog-hero p{font-size:0.9375rem;color:var(--color-text-muted);max-width:600px;margin:0 auto}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:991px){.blog-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:599px){.blog-grid{grid-template-columns:1fr}
}
.blog-card{display:flex;flex-direction:column;gap:16px;padding:24px;background:#fff;border:1px solid var(--color-border);border-radius:10px;text-decoration:none;color:var(--color-text);transition:box-shadow 0.2s}
.blog-card:hover{box-shadow:0 4px 20px rgba(0,0,0,0.08)}
.blog-card-img{border-radius:8px;overflow:hidden}
.blog-card-img img{width:100%;height:auto;display:block}
.blog-card h3{font-size:1.0625rem;font-weight:700;margin:0;line-height:1.35}
.blog-card-meta{display:flex;align-items:center;gap:12px;font-size:0.8125rem;color:var(--color-text-muted)}
.blog-card-author{font-weight:600}
.blog-card-excerpt{font-size:0.875rem;color:var(--color-text-muted);line-height:1.5;margin:0}
.blog-card-cat{display:inline-block;font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-teal);background:rgba(32,96,85,0.08);padding:4px 12px;border-radius:4px;margin-top:auto}
.offre-page-wrapper{padding:0 0 0}
.offre-two-col{display:flex;gap:64px;max-width:1272px;margin:0 auto;padding-top:112px}
.offre-left-col{width:65%;display:flex;flex-direction:column;gap:0}
.offre-right-col{width:35%;position:sticky;top:112px;height:fit-content;padding-top:32px}
.offre-breadcrumb{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:0.875rem;color:#6b7280;margin-bottom:16px}
.offre-breadcrumb a{color:#6b7280;text-decoration:none;transition:color 0.15s}
.offre-breadcrumb a:hover{color:#1a1a1a}
.offre-breadcrumb span{color:#1a1a1a;font-weight:400}
.offre-breadcrumb svg{color:#9ca3af;flex-shrink:0}
.offre-gallery{margin-bottom:16px}
.offre-gallery-main{position:relative;border-radius:16px;overflow:hidden;margin-bottom:12px}
.offre-gallery-main img{width:100%;min-height:480px;object-fit:cover;display:block}
.offre-gallery-main .galerie-voir-tout{position:absolute;bottom:16px;left:16px;right:auto;width:auto !important;max-width:fit-content;display:inline-flex !important;align-items:center;justify-content:center;background:#fff;border:1px solid #e5e5e5;border-radius:999px;padding:10px 24px;font-size:0.875rem;font-weight:500;text-transform:uppercase;cursor:pointer;color:#1a1a1a;transition:background 0.15s;white-space:nowrap;z-index:2;backdrop-filter:none;gap:8px}
.offre-gallery-main .galerie-voir-tout:hover{background:#f9fafb}
.offre-gallery-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.offre-gallery-thumb{display:block;width:100%;border-radius:12px;overflow:hidden;position:relative;height:100px;grid-column:span 1 !important;aspect-ratio:auto !important}
.offre-gallery-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.offre-header-block{display:flex;flex-direction:column;gap:16px;border-bottom:1px solid #f3f4f6;padding:0 0 40px;margin-bottom:0}
.offre-dest-row{display:flex;align-items:center;gap:16px}
.offre-voyage-label{font-size:1rem;color:#1a1a1a;font-weight:400}
.offre-dest-link{font-size:1rem;color:#1a1a1a;text-decoration:underline;font-weight:400}
.offre-dest-link:hover{color:var(--color-primary)}
.offre-dest-link--static{text-decoration:none;cursor:default}
.offre-title{font-size:1.875rem;font-weight:500;line-height:1.4;color:#1a1a1a;margin:0}
.offre-subtitle{font-size:1rem;color:#6b7280;font-weight:400;margin:0}
.offre-badges-block{display:flex;flex-direction:column;gap:16px;border-bottom:1px solid #f3f4f6;padding:32px 0 40px}
.offre-badges-heading{font-size:1.875rem;font-weight:500;line-height:1.4;color:#1a1a1a;margin:0}
.offre-badges-grid{display:flex;flex-wrap:wrap;gap:32px}
.offre-badge-item{display:flex;align-items:center;gap:8px;width:40%}
.offre-badge-item span{font-size:1.125rem;color:#1a1a1a;font-weight:400}
.offre-badge-icon{width:32px;height:32px;background:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.offre-badge-icon svg{width:20px;height:20px;color:#fff;stroke:#fff}
.offre-badge-icon--gray{background:#f3f4f6}
.offre-badge-icon--gray svg{color:#1a1a1a;stroke:#1a1a1a}
.offre-badge-item--more{cursor:pointer;border:none;background:none;padding:0}
.offre-content-block{padding:16px 0 0}
.offre-content-section{display:flex;flex-direction:column;gap:16px;border-bottom:1px solid #f3f4f6;padding:24px 0 40px}
.offre-content-section h2{font-size:1.875rem;font-weight:500;line-height:1.4;color:#1a1a1a;margin:0}
.offre-text{font-size:1rem;color:#6b7280;line-height:1.7}
.offre-text p{margin:0 0 8px;color:#6b7280;font-size:1rem}
.offre-activities-block{display:flex;flex-direction:column;gap:24px;padding:24px 0 0}
.offre-activities-block h2{font-size:1.875rem;font-weight:500;line-height:1.4;color:#1a1a1a;margin:0}
.offre-activities-list{display:flex;flex-direction:column;gap:12px}
.offre-activity-row{display:flex;gap:24px;align-items:flex-start}
.offre-activity-row img{width:96px;height:96px;min-width:96px;max-width:96px;object-fit:cover;border-radius:16px;flex-shrink:0}
.offre-activity-text{display:flex;flex-direction:column;gap:8px}
.offre-activity-name{font-size:1.25rem;font-weight:500;color:#1a1a1a;margin:0}
.offre-activity-desc{font-size:1rem;color:#6b7280;line-height:1.6;margin:0}
.offre-sidebar-card{border-radius:16px;overflow:hidden}
.offre-sidebar-top{background:#faf5ef;padding:32px;display:flex;flex-direction:column;gap:12px}
.offre-sidebar-title{font-size:1.875rem;font-weight:500;line-height:1.4;color:#1a1a1a;margin:0}
.offre-sidebar-features{list-style:disc;padding-left:20px;margin:0;display:flex;flex-direction:column;gap:8px}
.offre-sidebar-features li{font-size:1rem;color:#6b7280;line-height:1.5}
.offre-sidebar-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0 0}
.offre-sidebar-label{font-size:1.25rem;font-weight:600;color:#1a1a1a}
.offre-sidebar-value{font-size:1.25rem;font-weight:600;color:#1a1a1a}
.offre-sidebar-unit{font-size:0.875rem;font-weight:400}
.offre-sidebar-bottom{background:var(--color-primary);padding:32px;display:flex;flex-direction:column;gap:16px;align-items:center;text-align:center}
.offre-sidebar-cta{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 24px;background:#fff;color:#1a1a1a;border-radius:999px;font-size:0.875rem;font-weight:500;text-transform:uppercase;text-decoration:none;transition:background 0.15s}
.offre-sidebar-cta:hover{background:#f9fafb}
.offre-sidebar-contact{display:flex;flex-direction:column;gap:4px}
.offre-sidebar-contact-label{font-size:1.125rem;font-weight:500;color:#fff;margin:0}
.offre-sidebar-phone{font-size:1.875rem;font-weight:500;color:#fff;text-decoration:none;display:block}
.offre-sidebar-phone:hover{opacity:0.9}
.offre-sidebar-note{font-size:0.75rem;color:rgba(255,255,255,0.7);line-height:1.5;margin:0}
.temoignages-rating-big{display:flex;align-items:center;gap:12px}
.temoignages-rating-num{font-size:3.75rem;font-weight:500;color:#1a1a1a;line-height:1}
.temoignages-rating-stars{display:flex;gap:2px}
.temoignages-rating-count{font-size:1.125rem;font-weight:500;color:#1a1a1a}
.temoignages-certified{display:flex;align-items:center;gap:8px;margin-top:4px}
.temoignages-certified span{font-size:0.875rem;color:#6b7280}
.offre-similaires-section .offres-grid--compact{grid-template-columns:repeat(3,1fr)}
@media (max-width:768px){.offre-two-col{flex-direction:column;gap:0;padding-top:80px}
.offre-left-col{width:100%;padding:0 20px}
.offre-right-col{width:100%;position:static;padding:20px}
.offre-gallery-main img{min-height:200px}
.offre-gallery-thumbs{grid-template-columns:repeat(4,1fr);gap:8px}
.offre-gallery-thumb{height:80px}
.offre-title{font-size:1.5rem}
.offre-badges-heading,.offre-content-section h2,.offre-activities-block h2{font-size:1.5rem}
.offre-badge-item{width:100%}
.offre-badges-grid{gap:16px}
.offre-activity-row img{width:56px;height:56px;min-width:56px;max-width:56px;border-radius:8px}
.offre-activity-row{gap:12px}
.offre-similaires-section .offres-grid--compact{grid-template-columns:1fr}
}
.offre-hero-section,.offre-hero-layout,.offre-hero-gallery,.offre-sidebar-hero,.offre-body-section,.offre-sidebar-sticky,.offre-breadcrumb-bar,.offre-header-section{}
.offre-why-section{background:#1a2e2a;border-top:none;padding:64px 0}
.offre-why-section h2{color:#fff;font-size:2rem;font-weight:500;margin:0 0 8px;text-align:center}
.offre-why-sub{color:rgba(255,255,255,0.7);text-align:center;margin:0 0 48px;font-size:1rem}
.offre-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.offre-why-item{display:flex;flex-direction:column;gap:12px;text-align:center;align-items:center}
.offre-why-item svg{background:rgba(32,96,85,0.4);padding:12px;border-radius:12px;width:52px;height:52px;stroke:#5ec4a8}
.offre-why-item h3{font-size:1.1rem;font-weight:600;margin:0;color:rgba(255,255,255,0.95)}
.offre-why-item p{font-size:0.9rem;color:rgba(255,255,255,0.7);line-height:1.6;margin:0}
.offre-similaires-section{background:#fff;padding:64px 0}
.offre-similaires-section h2{font-size:1.875rem;font-weight:500;line-height:1.4;color:#1a1a1a;margin:0 0 32px}
.temoignages-section{background:#f9fafb;padding:48px 0}
.cta-banner-section{margin:0;padding:48px 0}
@media (max-width:768px){.offre-why-grid{grid-template-columns:repeat(2,1fr);gap:24px}
}
@media (max-width:480px){.offre-why-grid{grid-template-columns:1fr;gap:20px}
}
.offre-card-v2{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;border:1px solid #f3f4f6;background:#fff;transition:box-shadow 0.2s}
.offre-card-v2:hover{box-shadow:0 4px 24px rgba(0,0,0,0.08)}
.offre-card-v2-carousel{position:relative;overflow:hidden;border-radius:16px 16px 0 0;background:#f3f4f6;height:220px}
.offre-card-v2-slides{display:flex;position:absolute;top:0;left:0;width:100%;height:100%;transition:transform 0.35s ease}
.offre-card-v2-slide{min-width:100%;width:100%;height:100%;display:block;flex-shrink:0}
.offre-card-v2-slide img{width:100%;height:100%;object-fit:cover;display:block}
.offre-card-v2-next{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.9);border:1px solid #e5e5e5;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;transition:background 0.15s,opacity 0.15s;opacity:0}
.offre-card-v2-carousel:hover .offre-card-v2-next{opacity:1}
.offre-card-v2-next:hover{background:#fff}
.offre-card-v2-next svg{color:#1a1a1a}
.offre-card-v2-body{display:flex;flex-direction:column;justify-content:space-between;padding:16px;text-decoration:none;color:inherit;flex:1;gap:12px}
.offre-card-v2-info{display:flex;flex-direction:column;gap:4px}
.offre-card-v2-dest{display:flex;align-items:center;gap:6px;margin-bottom:4px}
.offre-card-v2-dest svg{color:var(--color-primary);flex-shrink:0}
.offre-card-v2-dest span{font-size:0.8125rem;color:#6b7280;font-weight:400}
.offre-card-v2-body h3{font-size:1.125rem;font-weight:500;color:#1a1a1a;margin:0;line-height:1.4}
.offre-card-v2-price{display:flex;align-items:center;gap:6px;font-size:0.875rem;color:#1a1a1a;font-weight:500;margin-top:4px}
.offre-card-v2-sep{color:#9ca3af}
.offre-card-v2-tags{display:flex;flex-wrap:wrap;gap:6px;border-top:1px solid #f3f4f6;padding-top:12px}
.offre-card-v2-tag{font-size:0.75rem;background:#f3f4f6;color:#374151;padding:4px 12px;border-radius:999px;font-weight:400}
.offre-card-v2-tag--more{background:#fff;border:1px solid #e5e5e5;color:#6b7280}
.offre-badge-icon{width:32px;height:32px;min-width:32px;background:var(--color-primary,#226156);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.offre-badge-icon svg{width:16px;height:16px;stroke:#fff;color:#fff;fill:none}
.offre-badge-icon--gray{background:#f3f4f6}
.offre-badge-icon--gray svg{stroke:#1a1a1a;color:#1a1a1a}
.offre-sidebar-bottom{background:#226156;padding:32px;display:flex;flex-direction:column;gap:16px;align-items:center;text-align:center}
.offre-sidebar-contact-label{color:#fff}
.offre-sidebar-phone{color:#fff}
.offre-sidebar-note{color:rgba(255,255,255,0.7)}
.offre-text p{margin:0 0 16px;color:#6b7280;font-size:1rem;line-height:1.7}
.offre-text p:last-child{margin-bottom:0}
.offre-content-section .offre-text{display:flex;flex-direction:column;gap:0}
.temoignages-section{background:#f9fafb;padding:48px 0}
.temoignages-section h2{font-size:2rem;font-weight:500;color:#1a1a1a;margin:0 0 16px}
.temoignages-rating-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.temoignages-rating-num{font-size:3rem;font-weight:500;color:#1a1a1a;line-height:1}
.temoignages-stars-inline{font-size:1.25rem;color:#facc15;letter-spacing:2px}
.temoignages-rating-count{font-size:1rem;font-weight:500;color:#1a1a1a}
.temoignages-certified{display:flex;align-items:center;gap:8px;margin-bottom:32px}
.temoignages-certified span{font-size:0.9375rem;color:#6b7280}
.temoignages-grid{display:flex;flex-wrap:nowrap;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:4px}
.temoignages-grid::-webkit-scrollbar{display:none}
.temoignage-card{flex:0 0 320px;scroll-snap-align:start;background:#fff;border:1px solid #f3f4f6;border-radius:12px;padding:24px 16px;display:flex;flex-direction:column;gap:12px}
.temoignage-header-row{display:flex;align-items:center;justify-content:space-between}
.temoignage-name{font-size:1.125rem;font-weight:500;color:#1a1a1a}
.temoignage-stars-row{display:flex;align-items:center;gap:6px}
.temoignage-stars-row .stars{color:#facc15;font-size:1rem}
.temoignage-text{font-size:0.9375rem;color:#6b7280;line-height:1.6;margin:0}
.temoignage-read-more{background:none;border:none;font-size:1rem;font-weight:500;color:#1a1a1a;cursor:pointer;display:flex;align-items:center;gap:4px;padding:0;margin-top:auto}
.temoignages-carousel-wrapper{position:relative}
.temoignages-nav{display:flex;position:absolute;left:-24px;right:-24px;top:0;bottom:0;align-items:center;justify-content:space-between;pointer-events:none}
.temoignages-nav .temoignages-nav-btn{pointer-events:auto;width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid #e5e7eb;box-shadow:0 1px 6px rgba(0,0,0,0.10);flex-shrink:0}
@media (max-width:767px){.temoignages-grid{flex-wrap:nowrap;overflow-x:scroll;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}
.temoignages-grid::-webkit-scrollbar{display:none}
.temoignage-card{flex:0 0 100%;scroll-snap-align:start}
.temoignages-nav{position:static;justify-content:center;gap:16px;margin-top:16px;pointer-events:auto}
}
.offre-why-icon{width:56px;height:56px;border-radius:14px;background:rgba(94,196,168,0.15);display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.offre-why-icon svg{width:24px;height:24px;stroke:#5ec4a8;color:#5ec4a8;fill:none;background:none;padding:0;border-radius:0}
.offre-why-item svg:not(.offre-why-icon svg){display:none}
.offre-similaires-section .offres-grid--compact{grid-template-columns:repeat(3,1fr)}
@media (max-width:768px){.offre-similaires-section .offres-grid--compact{grid-template-columns:1fr}
}
.dest-filters{display:flex;gap:16px;margin-bottom:32px;flex-wrap:wrap}
.dest-filter{display:flex;flex-direction:column;gap:4px}
.dest-filter-label{font-size:0.8125rem;font-weight:500;color:var(--color-gray-text,#505050)}
.dest-filter-select{appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23505050' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 12px center;border:1px solid var(--color-border,#e8e8e8);border-radius:8px;padding:10px 36px 10px 14px;font-size:0.9375rem;color:var(--color-text,#0a0a0a);font-family:inherit;cursor:pointer;min-width:160px}
.dest-filter-select:focus{outline:2px solid var(--color-primary,#226156);outline-offset:1px}
.offres-section .offres-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:24px}
@media (min-width:640px){.offres-section .offres-grid{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1024px){.offres-section .offres-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:768px){.dest-filters{flex-direction:column;gap:12px}
.dest-filter-select{min-width:100%}
}
.dest-stat-star{color:var(--color-gold,#facc15);margin-right:4px;vertical-align:middle}
.dest-stats-cta .btn-primary,.dest-stats-cta .btn{background:#fff;color:#1f1f1f;border:1px solid var(--color-border,#e8e8e8);border-radius:999px;padding:0 24px;height:40px;font-size:14px;font-weight:500;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;cursor:pointer;transition:background 0.15s}
.dest-stats-cta .btn-primary:hover,.dest-stats-cta .btn:hover{background:#f9fafb;color:#1f1f1f}
.step-indicator.done .step-num{background:#dcfce7;color:#16a34a}
.step-indicator.done .step-label{color:#16a34a}
.step-indicator.done:not(:last-child)::after{background:var(--color-primary)}
.field-error,input.field-error,select.field-error,textarea.field-error{border-color:#ef4444 !important;box-shadow:0 0 0 3px rgba(239,68,68,.12);outline:none}
.field-error:focus{border-color:#ef4444 !important}
.form-error-global{background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:var(--radius-md,8px);padding:12px 16px;font-size:0.9rem;margin-bottom:16px}
.devis-success{text-align:center;padding:48px 24px}
.devis-success-icon{margin:0 auto 24px;width:80px;height:80px;background:#f0fdf4;border-radius:50%;display:flex;align-items:center;justify-content:center}
.devis-success-title{font-size:1.5rem;font-weight:700;color:var(--color-text,#0a0a0a);margin-bottom:12px}
.devis-success-text{color:var(--color-text-muted,#505050);font-size:1rem;max-width:420px;margin:0 auto 32px;line-height:1.6}
.offre-card-v2-dest span{color:var(--color-primary) !important;font-weight:500}
.offre-card-v2-prev{position:absolute;left:10px;top:50%;transform:translateY(-50%);background:rgba(255,255,255,0.85);border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;color:#1a1a1a}
.offre-card-v2-next{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:rgba(255,255,255,0.85);border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;color:#1a1a1a}
.offre-two-col{align-items:flex-start}
.offre-sidebar-title{font-size:1.375rem !important;font-weight:700 !important;line-height:1.3 !important}
.offre-sidebar-features li{font-size:0.875rem !important;color:#6b7280 !important}
.offre-sidebar-label{font-size:0.9375rem !important;font-weight:600 !important}
.offre-sidebar-value{font-size:0.9375rem !important;font-weight:700 !important}
.offre-sidebar-row{padding:8px 0 0 !important;border-top:1px solid rgba(0,0,0,0.08)}
.offre-sidebar-top{gap:8px !important;padding:24px !important}
.offre-sidebar-bottom{padding:24px !important}
@media (min-width:769px) and (max-width:1100px){.offre-two-col{gap:32px;padding-top:80px}
.offre-left-col{width:60%}
.offre-right-col{width:40%;position:sticky;top:80px}
}
@media (max-width:768px){.offre-two-col{flex-direction:column}
.offre-right-col{order:-1;width:100% !important;position:static !important;padding:16px !important}
.offre-left-col{order:1}
}
@media (max-width:768px){.offre-right-col{order:unset !important}
.offre-left-col{order:unset !important}
}
@media (min-width:601px) and (max-width:768px){.offre-two-col{flex-direction:row !important;gap:20px !important;padding-top:60px !important}
.offre-left-col{width:58% !important}
.offre-right-col{width:42% !important;position:sticky !important;top:70px !important;padding:0 !important}
}
@media (max-width:600px){.offre-two-col{flex-direction:column !important}
.offre-right-col{width:100% !important;position:static !important}
}
.ap-hero{padding:60px 0 0}
.ap-hero-text{max-width:900px;margin:0 auto;padding:0 var(--space-lg)}
.ap-hero-title{font-size:clamp(2rem,4vw,3.25rem);font-weight:700;line-height:1.15;letter-spacing:-0.02em;color:var(--color-dark);margin-bottom:var(--space-lg)}
.ap-hero-intro-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-xl);margin-bottom:var(--space-2xl)}
.ap-hero-subtitle{font-size:1.0625rem;color:var(--color-text);line-height:1.65;max-width:480px;margin:0}
.ap-hero-anchor{display:inline-flex;align-items:center;white-space:nowrap;gap:6px;font-size:0.75rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--color-dark);border:1.5px solid var(--color-dark);border-radius:100px;padding:10px 20px;text-decoration:none;transition:background 0.2s,color 0.2s;flex-shrink:0}
.ap-hero-anchor:hover{background:var(--color-dark);color:#fff}
.ap-hero-image-wrap{width:100%;max-width:var(--container-max);max-height:560px;margin:0 auto}
.ap-hero-image{width:100%;height:100%;max-height:560px;object-fit:cover;display:block;border-radius:16px}
.ap-features-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xl);align-items:start}
.ap-features-title{font-size:clamp(1.4rem,2.5vw,2rem);font-weight:700;line-height:1.25;color:var(--color-dark);margin-bottom:var(--space-lg)}
.ap-features-left p{font-size:1rem;color:var(--color-text);line-height:1.7;margin-bottom:var(--space-md)}
.ap-features-mission{font-size:1rem;color:var(--color-text);line-height:1.7;margin-top:var(--space-xl)}
.ap-features-right{display:flex;flex-direction:column;gap:0}
.ap-feature-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg) var(--space-xl);background:#fff;border-radius:12px;margin-bottom:8px;font-size:1rem;font-weight:500;color:var(--color-dark)}
.ap-feature-item--teal{background:var(--color-primary);color:#fff}
.ap-feature-item--teal .ap-feature-icon{background:rgba(255,255,255,0.2);color:#fff}
.ap-feature-icon{width:48px;height:48px;border-radius:50%;background:rgba(0,0,0,0.06);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-primary)}
.ap-discuss{padding:var(--space-3xl) 0}
.ap-discuss-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xl);align-items:center}
.ap-discuss-title{font-size:clamp(1.4rem,2.5vw,2rem);font-weight:700;color:var(--color-dark);margin-bottom:var(--space-xl)}
.ap-discuss-content p{font-size:1rem;color:var(--color-text);line-height:1.75;margin-bottom:var(--space-md)}
.ap-discuss-visual img{width:100%;aspect-ratio:1 / 1;border-radius:16px;object-fit:cover}
.ap-build-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xl);align-items:center}
.ap-build-visual img{width:100%;aspect-ratio:1 / 1;border-radius:16px;object-fit:cover}
.ap-build-title{font-size:clamp(1.4rem,2.5vw,2rem);font-weight:700;color:var(--color-dark);margin-bottom:var(--space-xl)}
.ap-build-content p{font-size:1rem;color:var(--color-text);line-height:1.75;margin-bottom:var(--space-md)}
.ap-why-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg);margin-top:var(--space-2xl)}
.ap-why-card{background:#fff;border:1px solid rgba(0,0,0,0.08);border-radius:16px;padding:var(--space-xl)}
.ap-why-icon{width:48px;height:48px;border-radius:10px;background:rgba(0,0,0,0.05);display:flex;align-items:center;justify-content:center;color:var(--color-primary);margin-bottom:var(--space-md)}
.ap-why-card h3{font-size:1.0625rem;font-weight:700;color:var(--color-dark);margin-bottom:8px}
.ap-why-card p{font-size:0.9375rem;color:var(--color-text);line-height:1.65;margin:0}
@media (max-width:900px){.ap-hero-intro-row{flex-direction:column;align-items:flex-start;gap:var(--space-lg)}
.ap-features-grid,.ap-discuss-grid,.ap-build-grid{grid-template-columns:1fr;gap:var(--space-xl)}
.ap-why-grid{grid-template-columns:1fr}
.ap-hero-image-wrap{max-height:380px}
}
.dv-header{background:#f5ede0;overflow:hidden}
.dv-header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:stretch;min-height:260px}
.dv-header-text{flex:0 0 50%;padding:48px 40px 48px 48px;display:flex;flex-direction:column;justify-content:center;gap:12px}
.dv-header-title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;color:var(--color-dark);margin:0}
.dv-header-sub{font-size:1rem;color:var(--color-text);line-height:1.6;margin:0}
.dv-header-phone{display:inline-flex;align-items:center;gap:8px;margin-top:8px;background:#fff;border:1.5px solid var(--color-dark);border-radius:100px;padding:10px 20px;font-size:0.9375rem;font-weight:600;color:var(--color-dark);text-decoration:none;width:fit-content;transition:background .2s,color .2s}
.dv-header-phone:hover{background:var(--color-dark);color:#fff}
.dv-header-photo{flex:0 0 50%;overflow:hidden}
.dv-header-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}
.dv-wizard-section{padding:var(--space-2xl) 0 var(--space-3xl)}
.dv-container{max-width:1100px}
.dv-layout{display:grid;grid-template-columns:1fr 300px;gap:var(--space-2xl);align-items:start}
.dv-stepper{display:flex;align-items:center;gap:0;background:#f5f5f5;border-radius:12px;padding:16px 24px;margin-bottom:var(--space-xl)}
.dv-step{display:flex;align-items:center;gap:10px;flex:1;opacity:.4;transition:opacity .2s}
.dv-step--active{opacity:1}
.dv-step--done{opacity:.7}
.dv-step-circle{width:32px;height:32px;border-radius:50%;background:var(--color-text);color:#fff;font-size:0.875rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dv-step--active .dv-step-circle{background:var(--color-primary)}
.dv-step--done .dv-step-circle{background:var(--color-primary)}
.dv-step-label{font-size:0.875rem;font-weight:600;color:var(--color-dark);white-space:nowrap}
.dv-step-arrow{font-size:1.25rem;color:#bbb;padding:0 8px;flex-shrink:0}
.dv-panel{padding:var(--space-xl) 0}
.dv-field-row{display:flex;gap:var(--space-lg);margin-bottom:var(--space-lg)}
.dv-field-half{flex:1}
.dv-field-full{flex:1}
.dv-label{display:block;font-size:0.9375rem;font-weight:500;color:var(--color-dark);margin-bottom:8px}
.dv-label--required::after{content:' *';color:#e53935}
.dv-field-hint{font-size:0.875rem;color:var(--color-text);margin-bottom:var(--space-md);line-height:1.5}
.dv-input,.dv-select,.dv-textarea{width:100%;padding:12px 16px;border:1.5px solid #d8d8d8;border-radius:8px;font-size:0.9375rem;font-family:inherit;color:var(--color-dark);background:#fff;transition:border-color .2s;box-sizing:border-box}
.dv-input:focus,.dv-select:focus,.dv-textarea:focus{outline:none;border-color:var(--color-primary)}
.dv-textarea{resize:vertical}
.dv-oui-non-row{flex-direction:column;gap:12px}
.dv-radio-group{display:flex;gap:var(--space-xl)}
.dv-radio-label{display:flex;align-items:center;gap:8px;font-size:0.9375rem;cursor:pointer;color:var(--color-dark)}
.dv-radio-label input[type="radio"]{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer}
.dv-radio-box{display:none}
.dv-region-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:var(--space-md)}
.dv-region-btn{padding:10px 18px;border:1.5px solid var(--color-dark);border-radius:100px;background:transparent;font-size:0.8125rem;font-weight:600;letter-spacing:0.06em;color:var(--color-dark);cursor:pointer;transition:background .15s,color .15s}
.dv-region-btn:hover,.dv-region-btn--selected{background:var(--color-dark);color:#fff}
.dv-checkbox-label{display:flex;align-items:flex-start;gap:10px;font-size:0.9rem;color:var(--color-text);cursor:pointer;line-height:1.5}
.dv-checkbox-label input[type="checkbox"]{width:18px;height:18px;margin-top:2px;flex-shrink:0;accent-color:var(--color-primary)}
.dv-checkbox-label a{color:var(--color-primary)}
.dv-actions{display:flex;margin-top:var(--space-xl)}
.dv-actions--right{justify-content:flex-end}
.dv-actions--between{justify-content:space-between;align-items:center}
.dv-btn-next,.dv-btn-submit{padding:14px 28px;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:0.875rem;font-weight:700;letter-spacing:0.06em;cursor:pointer;transition:opacity .2s}
.dv-btn-next:hover,.dv-btn-submit:hover{opacity:.88}
.dv-btn-prev{background:transparent;border:none;font-size:0.875rem;font-weight:600;color:var(--color-text);cursor:pointer;letter-spacing:0.04em;padding:0;text-decoration:underline;text-underline-offset:3px}
.dv-btn-prev:hover{color:var(--color-dark)}
.dv-sidebar{display:flex;flex-direction:column;gap:var(--space-lg)}
.dv-sidebar-card{background:#fff;border:1px solid rgba(0,0,0,0.08);border-radius:16px;padding:var(--space-xl)}
.dv-sidebar-title{font-size:1.0625rem;font-weight:700;color:var(--color-dark);margin:0 0 8px}
.dv-sidebar-text{font-size:0.9rem;color:var(--color-text);margin:0 0 var(--space-lg);line-height:1.5}
.dv-sidebar-contacts{display:flex;flex-direction:column;gap:12px;margin-bottom:var(--space-lg)}
.dv-sidebar-contact{display:flex;align-items:flex-start;gap:12px;text-decoration:none;color:var(--color-dark)}
.dv-sidebar-contact svg{flex-shrink:0;margin-top:2px;color:var(--color-primary)}
.dv-contact-label{display:block;font-size:0.75rem;color:var(--color-text)}
.dv-contact-value{display:block;font-size:0.9375rem;font-weight:600}
.dv-sidebar-hours strong{display:block;font-size:0.875rem;margin-bottom:6px}
.dv-sidebar-hours p{font-size:0.875rem;color:var(--color-text);margin:2px 0}
.dv-sidebar-trust{display:flex;flex-direction:column;gap:12px}
.dv-trust-item{display:flex;align-items:center;gap:12px;font-size:0.9rem;color:var(--color-dark);font-weight:500}
.dv-trust-item svg{color:var(--color-primary);flex-shrink:0}
@media (max-width:900px){.dv-layout{grid-template-columns:1fr}
.dv-header-inner{flex-direction:column;min-height:auto}
.dv-header-photo{height:220px}
.dv-header-text{padding:32px 24px}
.dv-stepper{flex-wrap:wrap;gap:8px}
.dv-step-arrow{display:none}
}
@media (max-width:600px){.dv-field-row{flex-direction:column;gap:var(--space-md)}
.dv-region-grid{gap:8px}
.dv-region-btn{font-size:0.75rem;padding:8px 14px}
}
.dest-stats-bar{display:flex;align-items:stretch;border-bottom:1px solid var(--color-border);box-shadow:0 2px 12px rgba(0,0,0,0.06)}
.dest-stats-left{flex:1;display:flex;align-items:center;justify-content:center;gap:0;padding:var(--space-lg) var(--space-2xl);background:#fff}
.dest-stats-right{background:#1a1a1a;color:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:10px;padding:var(--space-lg) var(--space-xl);min-width:260px;max-width:340px}
.dest-devis-btn{display:inline-flex;align-items:center;gap:8px;border:1.5px solid rgba(255,255,255,0.8);border-radius:100px;padding:9px 20px;color:#fff;font-size:0.8125rem;font-weight:600;text-decoration:none;letter-spacing:0.06em;white-space:nowrap;transition:background 0.2s,color 0.2s}
.dest-devis-btn:hover{background:#fff;color:#1a1a1a}
.dest-devis-btn svg{flex-shrink:0}
.dest-stats-right .dest-stats-phone{display:flex;flex-direction:column;gap:3px}
.dest-phone-label{font-size:0.8125rem;color:rgba(255,255,255,0.8)}
.dest-phone-number{color:#fff;font-weight:700;font-size:1rem;text-decoration:none}
.dest-phone-number:hover{text-decoration:underline}
.dest-stats-right .dest-phone-hours{font-size:0.75rem;color:rgba(255,255,255,0.55);padding-left:0}
.dest-stats-inner{display:none}
.dest-stats-cta{display:none}
@media (max-width:768px){.dest-stats-bar{flex-direction:column}
.dest-stats-left{padding:var(--space-md);flex-wrap:wrap;gap:var(--space-sm)}
.dest-stat-sep{display:none}
.dest-stats-right{max-width:100%;min-width:0;padding:var(--space-md) var(--space-lg)}
}
.dest-stats-left{background:oklch(0.98 0.0098 87.47) !important}
.dest-stats-right{background:oklch(0.24 0 0) !important;color:#fff !important}
.dest-stat-label{text-transform:none !important;font-weight:400 !important;color:oklch(0.43 0 0) !important;font-size:1rem !important;letter-spacing:0 !important}
.dest-stat-val{text-transform:uppercase !important;font-weight:500 !important;color:oklch(0.24 0 0) !important;font-size:1.125rem !important;letter-spacing:0.04em !important}
.dest-devis-btn{background:#fff !important;color:oklch(0.24 0 0) !important;border:none !important;border-radius:100px !important;padding:9px 20px !important;font-size:0.8125rem !important;font-weight:600 !important;letter-spacing:0.06em !important;text-transform:uppercase !important}
.dest-devis-btn:hover{background:oklch(0.9 0 0) !important;color:oklch(0.24 0 0) !important}
.dest-phone-label{color:oklch(0.76 0 0) !important;font-size:0.8125rem !important}
.dest-phone-number{color:#fff !important;font-weight:700 !important;font-size:1rem !important}
.dest-stats-right .dest-phone-hours{color:rgba(255,255,255,0.85) !important;font-size:0.75rem !important}
.theme-page-wrap{background:#fff}
.theme-page-header{padding-bottom:0}
.theme-page-h1{font-size:2.25rem;font-weight:400;margin-bottom:2rem}
.theme-page-wrap .offres-section .section-header{text-align:left !important;align-items:flex-start !important}
.theme-page-wrap .offres-section .section-title{font-size:1.75rem !important;font-weight:700}
.theme-thumbs-row{display:flex;flex-direction:row;gap:1rem;overflow-x:auto;padding-bottom:0.5rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.theme-thumbs-row::-webkit-scrollbar{display:none}
.theme-thumb{display:flex;flex-direction:column;align-items:center;gap:0.5rem;text-decoration:none;min-width:100px;max-width:140px;flex-shrink:0}
.theme-thumb-img-wrap{width:100%;aspect-ratio:1 / 1;border-radius:0.75rem;overflow:hidden;background:var(--color-border);border:2px solid transparent;padding:2px;transition:border-color 0.2s}
.theme-thumb.is-active .theme-thumb-img-wrap{border-color:var(--color-primary,#226156)}
.theme-thumb-img-wrap img{width:100%;height:100%;object-fit:cover;border-radius:0.625rem;display:block}
.theme-thumb-label{font-size:0.9375rem;font-weight:500;color:var(--color-text,#1a1a1a);text-align:center;line-height:1.3;margin:0}
@media (min-width:768px){.theme-thumb{min-width:120px;max-width:140px}
}
.dv-offer-preview{display:flex;align-items:center;gap:1rem;background:var(--color-bg-light,#f8f7f4);border:1px solid var(--color-border,#e5e0d8);border-radius:var(--radius-xl,1rem);overflow:hidden;margin-top:1rem;padding:0}
.dv-offer-preview-img-wrap{width:120px;min-width:120px;height:90px;flex-shrink:0;overflow:hidden}
.dv-offer-preview-img-wrap img{width:100%;height:100%;object-fit:cover;display:block}
.dv-offer-preview-body{padding:0.75rem 1rem 0.75rem 0;flex:1}
.dv-offer-preview-dest{font-size:0.8125rem;color:var(--color-text-light,#888);margin:0 0 0.25rem}
.dv-offer-preview-title{font-size:1rem;font-weight:600;color:var(--color-text,#1a1a1a);margin:0 0 0.25rem}
.dv-offer-preview-price{font-size:0.9375rem;color:var(--color-primary,#226156);font-weight:500;margin:0}
.retour-blog-wrap{padding:1.25rem 0 0;max-width:1200px;margin:0 auto;padding-left:1.5rem;padding-right:1.5rem}
.retour-blog-link{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.875rem;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;color:var(--color-text,#1a1a1a);text-decoration:none}
.retour-blog-link:hover{color:var(--color-primary,#226156)}
.retour-blog-link svg{flex-shrink:0}
.author-box-bio{font-size:0.875rem;color:var(--color-text-light,#666);margin:0.25rem 0 0}
.dv-sidebar{display:none !important}
.dv-layout{display:block !important}
.dv-main{max-width:800px;margin:0 auto}
.bloc3-section{background:var(--color-bg-alt,#f8f9fa);padding:var(--space-3xl) 0}
.bloc3-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-xl)}
.bloc3-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-xl) var(--space-lg);background:#fff;border-radius:var(--radius-lg,16px);box-shadow:0 2px 16px rgba(0,0,0,0.06)}
.bloc3-icon{width:64px;height:64px;background:var(--color-teal-light,rgba(0,160,130,0.1));border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-md);color:var(--color-teal,#00a082)}
.bloc3-title{font-size:1.125rem;font-weight:700;margin-bottom:var(--space-sm);color:var(--color-heading,#111)}
.bloc3-desc{font-size:0.9375rem;color:var(--color-text-light,#666);line-height:1.6;margin:0}
@media (max-width:900px){.bloc3-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){.bloc3-grid{grid-template-columns:1fr}
}
.theme-filter-row{margin-bottom:var(--space-2xl)}
.theme-filter-row.themes-grid{flex-wrap:nowrap !important;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:12px !important}
.theme-filter-row.themes-grid::-webkit-scrollbar{display:none}
.theme-filter-row.themes-grid .theme-card{flex:0 0 calc((100% - 6 * 12px) / 7) !important;min-width:140px !important;max-width:200px !important;min-height:180px !important}
.theme-filter-row .theme-card.is-active .theme-card-overlay{background:linear-gradient(to top,rgba(0,80,60,0.75) 0%,rgba(0,80,60,0.3) 60%,rgba(0,80,60,0.15) 100%)}
.theme-filter-row .theme-card.is-active{outline:3px solid var(--color-teal);outline-offset:2px}
@media (max-width:991px){.theme-filter-row.themes-grid .theme-card{flex:0 0 calc((100% - 3 * 12px) / 4) !important}
}
@media (max-width:599px){.theme-filter-row.themes-grid .theme-card{flex:0 0 calc((100% - 12px) / 2) !important;min-width:130px !important}
}
body.single-destination .site-main,body.single-destination .site-content{padding-top:0}
.dest-stats-right .dest-phone-hours{color:rgba(255,255,255,0.85) !important}
body.single-offre .site-main,body.single-offre .site-content{padding-top:0}
body:not(.home):not(.single-destination) .site-header:not(.scrolled) .hamburger-btn{background:transparent;border-color:var(--color-border);color:var(--color-text)}
body:not(.home):not(.single-destination) .site-header:not(.scrolled) .hamburger-line{background:var(--color-text)}
body:not(.home):not(.single-destination) .site-header:not(.scrolled) .header-destinations-link{color:var(--color-text)}
body:not(.home):not(.single-destination) .site-header:not(.scrolled) .btn-devis{color:var(--color-text);border-color:var(--color-border)}
body:not(.home):not(.single-destination) .site-header:not(.scrolled) .btn-devis:hover{background:var(--color-bg-light);color:var(--color-text)}
.section-archive-header{background:#fff !important;color:var(--color-text);border-bottom:1px solid var(--color-border)}
.section-archive-header h1,.section-archive-header .page-title{color:var(--color-heading,#111) !important}
.section-archive-header .page-subtitle{color:var(--color-text-light) !important}
.theme-filter-row.themes-grid .theme-card{flex:0 0 calc(20% - var(--space-md) * 4 / 5);min-width:160px;max-width:260px}
@media (max-width:991px){.theme-filter-row.themes-grid .theme-card{flex:0 0 calc(25% - var(--space-md) * 3 / 4)}
}
.hero-floating-card{background:#F9F5EC !important;backdrop-filter:none !important;border:none !important;box-shadow:0 4px 24px rgba(0,0,0,0.12) !important;padding:0 !important;overflow:hidden !important;min-width:0 !important;max-width:400px !important;width:400px !important;border-radius:14px !important;right:40px !important;bottom:56px !important}
.hero-card-top{display:flex !important;padding:16px 24px !important;margin-bottom:0 !important;gap:0 !important;justify-content:space-between !important;align-items:flex-start !important;background:transparent !important}
.hero-card-col{display:flex !important;flex-direction:column !important;gap:8px !important;flex:0 0 auto !important}
.hero-card-label{color:#6B7280 !important;font-size:14px !important;font-weight:400 !important;text-transform:none !important;letter-spacing:normal !important}
.hero-card-val{color:#030712 !important;font-size:16px !important;font-weight:500 !important;text-transform:uppercase !important;line-height:1.2 !important}
.hero-card-sep{display:none !important}
.hero-card-top .hero-card-col:last-child{display:flex !important}
.hero-card-cta-wrap{width:100%;padding:24px;background:var(--color-teal,#206055);display:flex;align-items:center}
.hero-card-cta{display:flex !important;align-items:center !important;gap:8px !important;background:transparent !important;color:#fff !important;border-radius:0 !important;padding:0 !important;font-size:18px !important;font-weight:500 !important;text-transform:uppercase !important;text-decoration:none !important;letter-spacing:0.02em !important;width:auto !important}
.hero-card-cta:hover{color:rgba(255,255,255,0.8) !important}
@media (max-height:820px){.hero-floating-card{bottom:0 !important}
}
.site-logo-link svg{color:#206055}
.home .site-header:not(.scrolled) .site-logo-link svg,.single-destination .site-header:not(.scrolled) .site-logo-link svg{color:#fff}
.hamburger-btn{font-size:0.875rem !important;font-weight:500 !important;min-height:40px !important;padding:0 1rem !important;background:#fff !important;border:1px solid var(--color-border) !important;color:var(--color-text) !important}
.hamburger-line{background:var(--color-text) !important}
.site-header:not(.scrolled) .hamburger-btn{background:#fff !important;border-color:var(--color-border) !important;color:var(--color-text) !important}
.site-header:not(.scrolled) .hamburger-line{background:var(--color-text) !important}
.header-destinations-link{font-size:0.875rem !important;font-weight:500 !important}
.site-header:not(.scrolled) .header-destinations-link{color:#fff !important}
.btn-devis{font-size:0.875rem !important;font-weight:500 !important;min-height:40px !important;padding:0 1.5rem !important;background:#fff !important;border:1px solid var(--color-border) !important;color:var(--color-text) !important;border-radius:var(--radius-full) !important}
.btn-devis:hover{background:var(--color-bg-light) !important;color:var(--color-text) !important}
.site-header:not(.scrolled) .btn-devis{background:#fff !important;border-color:var(--color-border) !important;color:var(--color-text) !important}
.btn-phone{font-size:0.875rem !important;font-weight:500 !important;min-height:40px !important;padding:0 1rem !important;border-radius:var(--radius-full) !important}
body.post-type-archive-theme_voyage{max-width:none !important;margin:0 !important;padding:0 !important;background:#f8f7f4 !important;border:none !important;box-shadow:none !important}
@media (max-width:480px){.site-header{padding:0 8px}
.header-container{padding:0;gap:6px}
.btn-devis{font-size:11px;padding:6px 10px}
.btn-phone{width:36px;height:36px;min-width:36px;padding:0;flex-shrink:0}
.btn-phone .phone-number{display:none}
.hamburger-label{display:none}
.header-destinations-link{display:none}
.site-logo-link svg{height:30px}
}
