:root{--bg-dark:#0c0e12;--bg-card:#14171f;--bg-elevated:#1a1e28;--luxury-1:#0e1015;--luxury-2:#12151c;--luxury-3:#161a22;--luxury-4:#1a1e28;--luxury-5:#151920;--luxury-6:#11141a;--luxury-accent-soft:transparent;--luxury-accent-line:transparent;--luxury-separator-glow:0 4px 24px transparent;--luxury-separator-band:linear-gradient(90deg,transparent 0%,rgba(232,165,75,0.04) 15%,rgba(232,165,75,0.14) 35%,var(--luxury-accent-line) 50%,rgba(232,165,75,0.14) 65%,rgba(232,165,75,0.04) 85%,transparent 100%);--text-primary:#f2f4f8;--text-secondary:#9ca3b4;--text-muted:#6b7280;--accent:#FBC72F;--accent-hover:#fdd55a;--accent-muted:transparent;--border:rgba(255,255,255,0.06);--border-soft:rgba(255,255,255,0.04);--success:#34d399;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--shadow:0 4px 24px rgba(0,0,0,0.4);--shadow-lg:0 24px 48px rgba(0,0,0,0.5);--transition:0.25s cubic-bezier(0.4,0,0.2,1);--transition-slow:0.4s cubic-bezier(0.4,0,0.2,1)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:'Plus Jakarta Sans','Jakarta Fallback',system-ui,sans-serif;font-size:1rem;line-height:1.6;color:var(--text-primary);background:linear-gradient(180deg,var(--bg-dark) 0%,var(--luxury-1) 30%,var(--bg-dark) 100%);min-height:100vh;overflow-x:hidden}.skip-link{position:absolute;top:-100px;left:1rem;z-index:100;padding:0.75rem 1.25rem;background:var(--accent);color:var(--bg-dark);font-weight:600;text-decoration:none;border-radius:var(--radius-sm);transition:top var(--transition)}.skip-link:focus{top:1rem}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}.header{position:fixed;top:0;left:0;right:0;z-index:50;padding:1rem 0;background:rgba(12,14,18,0.8);border-bottom:1px solid var(--border);transition:background var(--transition),padding var(--transition)}.header.is-scrolled{padding:0.75rem 0;background:rgba(12,14,18,0.95)}.header-inner{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;padding:0 1.5rem}.logo{display:flex;align-items:center;gap:0.6rem;text-decoration:none;color:var(--text-primary);font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:1.35rem}.logo-img{height:44px;width:auto;display:block;object-fit:contain;transition:transform var(--transition)}.logo:hover .logo-img{transform:scale(1.06) rotate(-2deg)}.logo-text{color:var(--accent)}.logo-city{letter-spacing:-0.02em}.footer-logo-img{height:40px;width:auto;display:block;object-fit:contain}.nav-item-tarifs.is-hidden{display:none !important}.nav-list{display:flex;align-items:center;gap:2rem;list-style:none}.nav-list a{position:relative;display:inline-block;color:var(--text-secondary);text-decoration:none;font-weight:500;font-size:0.9375rem;transition:color var(--transition),transform var(--transition)}.nav-list a::after{content:'';position:absolute;left:50%;bottom:-4px;width:0;height:2px;background:var(--accent);border-radius:2px;transform:translateX(-50%);transition:width var(--transition)}.nav-list a:hover,.nav-list a.nav-active{color:var(--text-primary)}.nav-list a:hover{transform:translateY(-1px)}.nav-list a:hover::after,.nav-list a.nav-active::after{width:100%}.nav-list a.nav-active{color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.625rem 1.25rem;font-family:inherit;font-size:0.9375rem;font-weight:600;text-decoration:none;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition),color var(--transition),transform var(--transition)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-phone{background:var(--accent-muted);color:var(--accent);border:1px solid #ECEEF1;transition:background var(--transition),color var(--transition),transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.btn-phone:hover{background:transparent;color:var(--accent-hover);border-color:#ECEEF1;transform:translateY(-2px);box-shadow:0 6px 18px transparent}.btn-phone:active{transform:translateY(0);box-shadow:0 2px 8px transparent}.btn-phone-icon::before{content:'';display:inline-block;width:1rem;height:1rem;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07 19.5 19.5 0 01-6-6 19.79 19.79 0 01-3.07-8.67A2 2 0 014.11 2h3a2 2 0 012 1.72 12.84 12.84 0 00.7 2.81 2 2 0 01-.45 2.11L8.09 9.91a16 16 0 006 6l1.27-1.27a2 2 0 012.11-.45 12.84 12.84 0 002.81.7A2 2 0 0122 16.92z'/%3E%3C/svg%3E") center/contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07 19.5 19.5 0 01-6-6 19.79 19.79 0 01-3.07-8.67A2 2 0 014.11 2h3a2 2 0 012 1.72 12.84 12.84 0 00.7 2.81 2 2 0 01-.45 2.11L8.09 9.91a16 16 0 006 6l1.27-1.27a2 2 0 012.11-.45 12.84 12.84 0 002.81.7A2 2 0 0122 16.92z'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform var(--transition);transform-origin:center}.btn-phone:hover .btn-phone-icon::before{animation:phone-ring 0.5s ease-in-out}@keyframes phone-ring{0%,100%{transform:rotate(0)}20%{transform:rotate(-15deg)}40%{transform:rotate(12deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(5deg)}}.btn-whatsapp-icon{display:inline-flex;align-items:center;justify-content:center;font-size:2rem;margin-right:0.5rem}.lang-switcher{display:flex;align-items:center;gap:0;margin-right:0.75rem;position:relative}.lang-switcher-trigger{display:none;padding:0.35rem 0.5rem;font-size:1.2rem;line-height:1;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-family:inherit;color:inherit}.lang-switcher-trigger .lang-flag{display:block;pointer-events:none;border-radius:50%;object-fit:cover;transition:transform var(--transition)}.lang-switcher-trigger:hover .lang-flag,.lang-switcher-trigger:focus-visible .lang-flag{transform:scale(1.15) rotate(-6deg)}.lang-switcher-menu{display:flex;align-items:center;gap:0}.lang-btn{padding:0.35rem 0.5rem;font-size:1.2rem;line-height:1;font-weight:600;color:var(--text-secondary);background:transparent;border:1px solid var(--border);cursor:pointer;font-family:inherit;transition:color var(--transition),background var(--transition),border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.lang-btn .lang-flag{display:block;pointer-events:none;border-radius:50%;object-fit:cover;transition:transform var(--transition)}.lang-btn:hover{transform:translateY(-3px);box-shadow:0 6px 14px rgba(0,0,0,0.25);z-index:1}.lang-btn:hover .lang-flag{transform:scale(1.15) rotate(-6deg)}.lang-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:none}.lang-btn:not(:first-child){border-left:none}.lang-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.lang-btn:hover{color:var(--text-primary);background:var(--bg-elevated)}.lang-btn.is-active,.lang-btn[aria-pressed="true"]{color:var(--accent);background:var(--accent-muted);border-color:#ECEEF1}@media (max-width:900px){.lang-switcher-trigger{display:block}.lang-switcher-menu{display:none;position:absolute;top:100%;left:0;margin-top:0.25rem;flex-direction:column;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 8px 24px rgba(0,0,0,0.3);z-index:60;overflow:hidden}.lang-switcher.is-open .lang-switcher-menu{display:flex}.lang-switcher-menu .lang-btn{border:none;border-radius:0;border-bottom:1px solid var(--border);width:100%;justify-content:flex-start;padding:0.5rem 0.75rem}.lang-switcher-menu .lang-btn:last-child{border-bottom:none}}.btn-primary{background:var(--accent);color:var(--bg-dark)}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-whatsapp{background:#25D366;color:#fff}.btn-whatsapp:hover{background:#20bd5a;color:#fff;transform:translateY(-2px);box-shadow:0 6px 24px rgba(37,211,102,0.35)}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-ghost:hover{color:var(--text-primary);border-color:var(--text-muted)}.btn-outline{background:transparent;color:var(--accent);border:2px solid var(--accent)}.btn-outline:hover{background:var(--accent-muted)}.btn-lg{padding:0.875rem 1.75rem;font-size:1rem}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:10px;transition:border-color var(--transition),background var(--transition),transform var(--transition)}.nav-toggle:hover{border-color:var(--accent);background:var(--accent-muted);transform:translateY(-1px)}.nav-toggle span{display:block;height:2px;background:var(--text-primary);border-radius:1px;transition:var(--transition)}.nav-toggle:hover span:nth-child(1){transform:translateX(2px)}.nav-toggle:hover span:nth-child(3){transform:translateX(-2px)}.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-close{display:none}.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:7rem 0 4rem;overflow:hidden;background:linear-gradient(180deg,var(--bg-dark) 0%,var(--bg-dark) 60%,var(--luxury-1) 100%)}.hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--luxury-separator-band);pointer-events:none;box-shadow:var(--luxury-separator-glow)}.hero-bg{position:absolute;inset:0;pointer-events:none}.hero-gradient{position:absolute;inset:0;background:radial-gradient(ellipse 80% 50% at 50% -20%,transparent,transparent),radial-gradient(ellipse 60% 40% at 100% 50%,transparent,transparent),radial-gradient(ellipse 40% 30% at 0% 80%,transparent,transparent)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.02) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black,transparent)}.hero-inner{position:relative;z-index:1;text-align:center}.hero-split{min-height:100vh;display:flex;align-items:center;padding-top:5rem;padding-bottom:1rem}.hero-split .hero-inner{display:grid;grid-template-columns:1fr 520px;gap:3rem;align-items:start;text-align:left;width:100%;max-width:1200px;margin:0 auto;padding:1rem 1.5rem 1.25rem}.hero-split .hero-content{max-width:560px}.hero-split .hero-badge{margin-bottom:0.75rem}.hero-split .hero-title{margin-bottom:0.75rem}.hero-split .hero-lead{margin-left:0;margin-right:0;margin-bottom:1.25rem}.hero-split .hero-cta{justify-content:center}.hero-features{margin-top:1.5rem;animation:fadeUp 0.8s ease-out 0.35s both}.hero-features-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-size:1.2rem;font-weight:700;letter-spacing:-0.02em;color:var(--text-primary);margin:0 0 0.75rem;text-align:center}.hero-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.hero-features .feature-card{padding:1.5rem 1.25rem}.hero-features .feature-icon{width:44px;height:44px;margin-bottom:0.75rem}.hero-features .feature-icon svg{width:100%;height:100%}.hero-features .feature-title{font-size:1.1rem;margin-bottom:0.4rem}.hero-features .feature-desc{font-size:0.9rem;line-height:1.5}.hero-features .hero-scroll.hero-scroll-inline{margin-top:1rem;display:flex;justify-content:center}.hero-features .hero-cta{margin-top:0.75rem}.hero-scroll-inline{position:static;transform:none;margin-top:0.4rem;display:inline-flex}.hero-form-wrap{position:relative;z-index:1;width:100%;min-width:0;font-size:0.855rem;margin-top:0.5rem}.hero-form{padding:1rem 1.25rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.hero-form-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:1.35em;margin-bottom:0.6rem;color:var(--text-primary);display:flex;align-items:center;gap:0.5rem}
.hero-form-subtitle{font-size:0.85em;color:var(--text-secondary);margin:-0.35rem 0 0.85rem;line-height:1.4}.hero-form-title-icon{font-size:1.25em;display:inline-flex;align-items:center;justify-content:center;color:var(--accent)}.hero-form-title-icon i{font-size:1em}.form-label-static{display:block;font-size:0.875em;font-weight:500;color:var(--text-secondary);margin-bottom:0.5rem}.type-trajet-buttons{display:flex;gap:0.5rem;flex-wrap:nowrap}.type-trajet-input{position:absolute;opacity:0;pointer-events:none}.type-trajet-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.35rem;flex:1 1 0;min-width:0;padding:0.5rem 0.75rem;font-size:0.9375em;font-weight:500;color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;transition:border-color var(--transition),background var(--transition),color var(--transition)}.type-trajet-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.type-trajet-input:checked + .type-trajet-btn{background:var(--accent-muted);border-color:var(--accent);color:var(--accent)}.type-trajet-icon{font-size:1em;opacity:0.9;flex:0 0 auto}@media (max-width:360px){.type-trajet-btn{padding:0.5rem 0.4rem;font-size:0.85em;gap:0.25rem}}.form-row-arrivee{display:none}.form-row-arrivee.is-visible{display:block}.hero-form .form-row-trajet-predefini.is-hidden{display:none !important}.form-row-trajet-predefini .form-label-optional{font-weight:400;color:var(--text-muted);font-size:0.9em}.hero-form .form-row-trajet-predefini .hero-select-trajet{width:100%;padding:0.6rem 0.75rem;font-size:1rem;color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%239ca3b4' stroke-width='2'%3E%3Cpath d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0.75rem center;padding-right:2.25rem}.hero-form .form-row-trajet-predefini .hero-select-trajet:focus{outline:none;border-color:var(--accent)}.hero-form .form-row-trajet-predefini .form-hint{font-size:0.8125rem;color:var(--text-muted);margin-top:0.35rem;margin-bottom:0}.hero-form-services-supp-wrap{grid-column:1 / -1}.hero-form-services-supp-trigger{display:inline-flex;align-items:center;align-self:flex-start;width:fit-content;gap:0.4rem;padding:0.45rem 0;font-family:inherit;font-size:0.8125rem;font-weight:600;color:var(--accent);background:transparent;border:none;border-radius:0;cursor:pointer;transition:color var(--transition)}.hero-form-services-supp-trigger:hover{background:transparent;color:var(--accent-hover)}.hero-form-services-supp-trigger i{font-size:0.6875rem}.hero-form-services-supp-panel{margin-top:0.5rem;padding:0.85rem 0.75rem;background:transparent;border:1px solid #ECEEF1;border-radius:var(--radius-md)}.hero-form-services-supp-panel.is-hidden{display:none !important}.hero-form-services-supp-options-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.4rem}@media (max-width:360px){.hero-form-services-supp-options-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.hero-form-services-supp-options-row label.hero-form-services-supp-option{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:0.2rem 0.3rem;min-width:0;padding:0.5rem 0.25rem;margin-bottom:0;cursor:pointer;font-size:0.6875rem;font-weight:500;line-height:1.2;color:var(--text-primary);text-align:center;border-radius:var(--radius-sm);transition:background var(--transition)}.hero-form-services-supp-options-row label.hero-form-services-supp-option:hover{background:transparent}.hero-form-services-supp-option-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:18px;height:18px;color:var(--accent)}.hero-form-services-supp-option-icon svg{width:100%;height:100%;stroke:currentColor;fill:none}.hero-form-services-supp-options-row label.hero-form-services-supp-option span:not(.hero-form-services-supp-option-icon){flex-basis:100%;white-space:normal;overflow:visible;text-overflow:clip}.hero-form-services-supp-options-row label.hero-form-services-supp-option input[type="checkbox"]{width:15px;height:15px;min-width:15px;padding:0;margin:0;background:#fff;border:1px solid var(--border);border-radius:4px;accent-color:var(--accent);cursor:pointer;flex:0 0 auto}.hero-form-services-supp-qty label{display:block;font-size:0.8125rem;font-weight:500;color:var(--text-primary);margin-bottom:0.35rem}.hero-form-services-supp-qty-label{display:inline-flex !important;align-items:center;gap:0.5rem;cursor:pointer;margin-bottom:0.35rem}.hero-form-services-supp-qty-label input[type="checkbox"]{width:auto;accent-color:var(--accent)}.hero-form-services-supp-qty .stepper[aria-disabled="true"]{opacity:0.5;pointer-events:none}.hero-form-services-supp-qty .stepper.is-hidden{display:none !important}.hero-form-services-supp-qty .stepper{display:inline-flex;align-items:center;gap:0.5rem}.hero-form-services-supp-qty .stepper-input{width:3rem;text-align:center;padding:0.5rem 0.25rem}.hero-form-services-supp-qty .stepper-btn{width:2rem;height:2rem;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;font-weight:600;color:var(--accent);background:transparent;border:1px solid #ECEEF1;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition),color var(--transition)}.hero-form-services-supp-qty .stepper-btn:hover{background:var(--accent-muted);color:var(--accent)}@media (max-width:480px){.hero-form-services-supp-enfant-row{grid-template-columns:1fr}}.hero-form-pancarte-texte-wrap{margin-top:0.75rem;padding-top:0.75rem;border-top:1px solid #ECEEF1}.hero-form-pancarte-texte-wrap.is-hidden{display:none !important}.hero-form-pancarte-texte-wrap label{display:block;font-size:0.9375rem;font-weight:500;color:var(--text-primary);margin-bottom:0.35rem}.hero-form-pancarte-texte-wrap input{width:100%;padding:0.5rem 0.75rem;font-size:1rem;color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md)}.hero-form-pancarte-texte-wrap input:focus{outline:none;border-color:var(--accent)}.hero-form-age-enfant-wrap{margin-top:1rem;padding-top:1rem;border-top:1px solid #ECEEF1}.hero-form-age-enfant-title{font-size:0.9375rem;font-weight:600;color:var(--text-primary);margin:0 0 0.75rem}.hero-form-age-enfant-list{display:flex;flex-direction:column;gap:0.75rem}.hero-form-age-enfant-item label{display:block;font-size:0.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:0.25rem}.hero-form-age-enfant-item .hero-form-age-range{font-weight:400;color:var(--text-muted);font-size:0.8125rem}.hero-form-age-enfant-wrap .stepper{display:inline-flex;align-items:center;gap:0.5rem;margin-top:0.25rem}.hero-form-age-enfant-wrap .stepper-input{width:3.5rem;text-align:center;padding:0.5rem 0.25rem}.hero-form-age-enfant-wrap .stepper-btn{width:2.25rem;height:2.25rem;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:600;color:var(--accent);background:transparent;border:1px solid #ECEEF1;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition),color var(--transition)}.hero-form-age-enfant-wrap .stepper-btn:hover{background:var(--accent-muted);color:var(--accent)}.hero-form-age-enfant-wrap.is-hidden{display:none !important}.hero-form-age-enfant-wrap label{display:block;font-size:0.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:0.35rem}.hero-form-tarif-wrap{display:block;margin:0.15rem 0 0.85rem}.hero-form-tarif-wrap.is-hidden{display:none !important}.tarif-indicatif-badge{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.4rem 0.75rem;width:100%;box-sizing:border-box;padding:0.85rem 0.25rem;background:transparent;border:none;border-radius:0;transition:none}.tarif-indicatif-badge .tarif-indicatif-label{font-size:0.875rem;font-weight:500;color:var(--text-secondary)}.tarif-indicatif-badge .tarif-indicatif-value{font-size:1.5rem;font-weight:700;color:#28282B;line-height:1.2;white-space:nowrap}.tarif-indicatif-badge.is-devis{background:transparent;border:none}.tarif-indicatif-badge.is-devis .tarif-indicatif-value{color:var(--accent);font-size:1rem}@media (max-width:480px){.tarif-indicatif-badge{flex-direction:column;align-items:flex-start}}.hero-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem;row-gap:0.5rem}.hero-form-grid .form-row-full{grid-column:1 / -1}.hero-form-grid .hero-form-contact-fields{grid-column:1 / -1;width:100%;min-width:0}.form-row-address{position:relative}.address-autocomplete-list{position:absolute;left:0;right:0;top:100%;z-index:50;margin-top:2px;padding:0.25rem 0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:240px;overflow-y:auto;display:none}.address-autocomplete-list.is-visible{display:block}.address-autocomplete-item{padding:0.5rem 0.75rem;font-size:0.9375em;color:var(--text-primary);cursor:pointer;transition:background var(--transition);display:flex;align-items:flex-start;gap:0.5rem}.address-autocomplete-item-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-top:0.15em;color:var(--text-muted)}.address-autocomplete-item-icon svg{width:100%;height:100%;display:block}.address-autocomplete-item:hover .address-autocomplete-item-icon,.address-autocomplete-item:focus .address-autocomplete-item-icon{color:var(--accent)}.address-autocomplete-item-text{flex:1;min-width:0}.address-autocomplete-item:hover,.address-autocomplete-item:focus{background:var(--accent-muted);color:var(--accent);outline:none}.form-row-passagers-bagages{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:end}.hero-form-wrap .form-row-passagers-bagages .form-row-inner label{display:block;font-size:0.875em;font-weight:500;color:var(--text-secondary);margin-bottom:0.25rem}.form-row-passagers-bagages .form-row-inner .stepper{margin-bottom:0}.form-row-nom-tel{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:end}.form-row-contact-line{display:grid;grid-template-columns:0.9fr 1fr 1.4fr;gap:1rem;align-items:end;width:100%;min-width:0}.hero-form-wrap .form-row-nom-tel .form-row-inner label,.hero-form-wrap .form-row-contact-line .form-row-inner label{display:block;font-size:0.875em;font-weight:500;color:var(--text-secondary);margin-bottom:0.25rem}.hero-form-wrap .form-row-contact-line .form-row-inner{min-width:0}.hero-form-wrap .form-row-nom-tel .form-row-inner input,.hero-form-wrap .form-row-contact-line .form-row-inner input{width:100%;min-width:0;padding:0.5rem 0.75rem;font-size:1em;color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-sizing:border-box}.form-row-nom-tel .form-row-inner input:focus,.form-row-contact-line .form-row-inner input:focus{outline:none;border-color:var(--accent)}.hero-form .form-row-nom-tel.is-invalid .form-row-inner input,.hero-form .form-row-contact-line.is-invalid .form-row-inner input{border-color:rgba(220,53,69,0.6)}.hero-form .hero-form-comment-row{width:100%;min-width:0;grid-column:1 / -1;margin-top:1.25rem;margin-bottom:1.25rem}.hero-form .hero-form-comment-row textarea{width:100%;min-height:5rem;box-sizing:border-box;padding:0.5rem 0.75rem;font-size:1em;color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md)}@media (max-width:640px){.form-row-nom-tel,.form-row-contact-line{grid-template-columns:1fr}}.hero-form .form-row{margin-bottom:0}.hero-form-grid .form-row{margin-bottom:0}.hero-form .form-row label{font-size:0.875em;margin-bottom:0.25rem}.hero-form .form-row label .form-label-icon{display:inline-flex;align-items:center;vertical-align:-2px;margin-right:6px;color:var(--accent)}.hero-form .form-row label .form-label-icon svg{width:15px;height:15px;display:block}.hero-form .form-row-adresse label{font-size:0.8125em}.hero-form .form-row input,.hero-form .form-row select,.hero-form .form-row textarea{padding:0.5rem 0.75rem;font-size:1em}.hero-form .form-row textarea,#hero_commentaire{text-transform:none !important}#hero_commentaire{min-height:5.5rem;resize:vertical}.hero-form .form-actions{margin-top:0.75rem;margin-bottom:0}.hero-form #hero-form-submit.is-hidden{display:none !important}.hero-form .hero-form-contact-fields.is-hidden{display:none !important}.btn-success{background:var(--success);color:var(--bg-dark)}.btn-success:hover{background:#2dd4a3;transform:translateY(-1px)}.hero-form-trip-fields.is-hidden{display:none !important}.hero-form .hero-form-confirm-choice.is-hidden{display:none !important}.hero-form .hero-form-confirm-choice{display:flex;flex-direction:column;gap:0.65rem;margin-top:1rem}.hero-form-confirm-choice-title{margin:0;text-align:center;font-size:0.9375rem;font-weight:600;color:var(--text-primary)}
.confirm-choice-cards{display:flex;flex-direction:column;gap:0.65rem;margin:0.85rem 0}
.confirm-choice-card{position:relative;display:flex;align-items:flex-start;gap:0.75rem;padding:0.85rem 2.5rem 0.85rem 0.9rem;border:1.5px solid var(--border);border-radius:14px;cursor:pointer;background:var(--bg-elevated);transition:border-color 0.2s,background 0.2s}
.confirm-choice-card input{position:absolute;opacity:0;pointer-events:none}
.confirm-choice-card:hover{border-color:var(--accent)}
.confirm-choice-card:has(input:checked){border-color:var(--accent);background:var(--accent-muted)}
.confirm-choice-icon{flex:0 0 auto;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-card);color:var(--text-secondary);font-size:1rem;transition:background 0.2s,color 0.2s}
.confirm-choice-card:has(input:checked) .confirm-choice-icon{background:var(--accent);color:#fff}
.confirm-choice-body{flex:1;min-width:0}
.confirm-choice-head{display:flex;align-items:center;gap:0.5rem;margin-bottom:0.2rem;flex-wrap:wrap}
.confirm-choice-title{font-weight:700;font-size:0.9rem;color:var(--text-primary)}
.confirm-choice-badge{font-size:0.625rem;font-weight:700;text-transform:uppercase;letter-spacing:0.03em;color:#fff;background:var(--accent);padding:0.15rem 0.5rem;border-radius:999px;line-height:1.4}
.confirm-choice-desc{font-size:0.78rem;color:var(--text-secondary);line-height:1.4}
.confirm-choice-arrow{flex:0 0 auto;position:absolute;top:50%;right:0.9rem;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent);background:var(--accent-muted);transition:background 0.2s,color 0.2s}
.confirm-choice-card:has(input:checked) .confirm-choice-arrow{background:var(--accent);color:#fff}
.confirm-choice-card--whatsapp{background:#25D366;border-color:#1ebe5b}
.confirm-choice-card--whatsapp:hover{border-color:#1ebe5b;background:#22c55e}
.confirm-choice-card--whatsapp:has(input:checked){background:#22c55e;border-color:#1ebe5b}
.confirm-choice-card--whatsapp .confirm-choice-icon,.confirm-choice-card--whatsapp.confirm-choice-card:has(input:checked) .confirm-choice-icon{background:#ffffff}
.confirm-choice-icon--whatsapp svg{display:block}
.confirm-choice-card--whatsapp .confirm-choice-title,.confirm-choice-card--whatsapp .confirm-choice-desc{color:#000000}
.confirm-choice-card--whatsapp .confirm-choice-arrow{background:rgba(0,0,0,0.12);color:#000000}
.confirm-choice-card--whatsapp:has(input:checked) .confirm-choice-arrow{background:#000000;color:#fff}
#hero-form-confirm-continue{margin-bottom:0.65rem}.is-visually-hidden{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;white-space:nowrap !important;border:0 !important}.hero-form-confirm-choice-buttons{display:flex;align-items:center;gap:0.6rem}.hero-form-confirm-choice-buttons .btn{display:flex;align-items:center;justify-content:center;gap:0.5rem;flex:1 1 0;border-radius:999px}.hero-form-confirm-choice-or{flex:0 0 auto;font-size:0.8125rem;font-weight:600;color:var(--text-secondary)}.btn-email-dark{background:#1a1a1a;color:#ffffff}.btn-email-dark:hover{background:#000000;transform:translateY(-1px)}.btn-call-outline{display:flex;align-items:center;justify-content:center;gap:0.5rem;width:100%;box-sizing:border-box;background:transparent;color:var(--text-primary);border:1px solid var(--border);border-radius:999px}.btn-call-outline:hover{background:var(--bg-elevated);border-color:var(--accent)}@media (max-width:480px){.hero-form-confirm-choice-buttons{flex-direction:column}}.btn-whatsapp{background:#25D366;color:#0b1a12}.btn-whatsapp:hover{background:#1fbd5a;transform:translateY(-1px)}@media (max-width:640px){.hero-form-grid{grid-template-columns:1fr}}.hero-form-wrap .hero-form-intro{font-size:0.9375em;color:var(--accent);margin-bottom:1rem;padding:0 0 0 0}.hero-content .hero-intro-inline{font-family:'Outfit','Outfit Fallback','Plus Jakarta Sans',sans-serif;font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:1.75rem;margin-top:0;margin-left:auto;margin-right:auto;max-width:480px;white-space:pre-line;line-height:1.75;letter-spacing:0.02em;padding:1.5rem 0;text-shadow:0 0 50px transparent,0 1px 2px rgba(0,0,0,0.25)}.hero-content .hero-intro-inline br{display:block;margin-top:0.75em}.hero-form .form-errors{margin-bottom:1rem;padding:0.75rem 1rem;background:rgba(220,53,69,0.15);border:1px solid rgba(220,53,69,0.4);border-radius:var(--radius-md);color:#f87171;font-size:0.875em;display:none}.hero-form .form-errors.is-visible{display:block}.hero-form .form-success{display:none;margin-bottom:1rem;padding:1rem 1.15rem;background:rgba(52,211,153,0.12);border:1px solid rgba(52,211,153,0.35);border-radius:var(--radius-md);font-size:0.9375rem}.hero-form .form-success.is-visible{display:flex;align-items:flex-start;gap:0.85rem}.hero-form .form-success-icon{color:var(--success);font-size:1.4rem;line-height:1;flex-shrink:0;margin-top:0.1rem}.hero-form .form-success-icon--illustration{width:72px;font-size:0;margin-top:0}.hero-form .form-success-icon--illustration img{width:100%;height:auto;display:block}.hero-form .form-success-body{display:flex;flex-direction:column;gap:0.3rem}.hero-form .form-success-title{color:#0f9d6b;font-size:1rem;font-weight:700;line-height:1.3}.hero-form .form-success-text{color:var(--text-secondary);line-height:1.6}.hero-form .form-success-text strong{color:var(--text-primary);font-weight:600}.hero-form>.is-hidden{display:none !important}.hero-form .form-errors ul{margin:0;padding-left:1.25rem;list-style:disc}.hero-form .form-row.is-invalid input{border-color:rgba(220,53,69,0.6)}.stepper{display:flex;align-items:center;gap:0;max-width:140px}.stepper-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.25em;font-weight:600;color:var(--accent);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition),color var(--transition)}.stepper-btn:hover{background:var(--accent-muted);color:var(--accent-hover)}.stepper-btn:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.stepper-btn:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.stepper-input{width:3rem;height:40px;text-align:center;font-size:1em;font-weight:600;border:1px solid var(--border);border-left:none;border-right:none;border-radius:0;-moz-appearance:textfield}.form-row-passagers-bagages .stepper{position:relative;max-width:none}.form-row-passagers-bagages .stepper-btn{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;background:var(--accent-muted);border:none;border-radius:var(--radius-sm);z-index:2}.form-row-passagers-bagages .stepper-btn:hover{background:var(--accent);color:var(--bg-dark)}.form-row-passagers-bagages .stepper-btn:first-child{left:5px;border-radius:var(--radius-sm)}.form-row-passagers-bagages .stepper-btn:last-child{right:5px;border-radius:var(--radius-sm)}.form-row-passagers-bagages .stepper-input{width:100%;height:46px;border:1px solid var(--border);border-radius:var(--radius-md);padding:0 46px;background:var(--bg-elevated);color:var(--text-primary)}.form-row-passagers-bagages .stepper-input:focus{outline:none;border-color:var(--accent)}.stepper-input::-webkit-outer-spin-button,.stepper-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.hero-form .btn-block{width:100%}.form-row-inline{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem}.form-row-inline .form-row{margin-bottom:0}@media (max-width:960px){.hero-split{align-items:flex-start}.hero-split .hero-inner{grid-template-columns:1fr;gap:0.5rem;padding:1rem 1.5rem 1.5rem}.hero-split .hero-content{max-width:none;text-align:center;order:2;background:var(--bg-card);border:1px solid var(--border);border-radius:20px;padding:1.5rem 1.25rem;box-shadow:var(--shadow)}.hero-split .hero-form-wrap{order:1}.hero-split .hero-lead{margin-left:auto;margin-right:auto}.hero-split .hero-cta{justify-content:center}.hero-scroll-inline{justify-content:center}}.hero-badge{display:inline-block;padding:0.5rem 1rem;margin-bottom:1.5rem;font-size:0.875rem;font-weight:500;color:var(--accent);background:var(--accent-muted);border:1px solid #ECEEF1;border-radius:100px;animation:fadeUp 0.8s ease-out}.hero-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:clamp(2.5rem,6vw,4rem);line-height:1.1;letter-spacing:-0.03em;margin-bottom:1.25rem;animation:fadeUp 0.8s ease-out 0.1s both}.hero-title-accent{color:var(--accent);display:inline-block}.hero-lead{max-width:520px;margin:0 auto 2rem;font-size:1.125rem;color:var(--text-secondary);animation:fadeUp 0.8s ease-out 0.2s both}.hero-cta{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;animation:fadeUp 0.8s ease-out 0.3s both}.hero-onboard{margin-top:2rem;animation:fadeUp 0.8s ease-out 0.35s both}.hero-onboard-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-size:1.5rem;font-weight:700;letter-spacing:-0.02em;color:var(--text-primary);margin:0 0 1rem;text-align:center}.hero-onboard-icons{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem 1rem;list-style:none;margin:0;padding:0}.hero-onboard-item{display:flex;flex-direction:column;align-items:center;gap:0.5rem;min-width:80px}.hero-onboard-icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;color:var(--text-primary);opacity:0.95;flex-shrink:0;font-size:2.25rem}.hero-onboard-icon i{font-size:inherit}.hero-onboard-icon svg{width:100%;height:100%}.hero-onboard-label{font-family:'Outfit','Outfit Fallback',sans-serif;font-size:0.8rem;font-weight:600;color:var(--text-secondary);text-align:center;line-height:1.2;max-width:80px}.hero-scroll{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:0.5rem;color:#1a1d24;font-size:0.75rem;text-transform:uppercase;letter-spacing:0.1em;text-decoration:none;cursor:pointer;transition:color var(--transition)}.hero-scroll.hero-scroll-inline{position:static;bottom:auto;left:auto;transform:none;margin-top:1.25rem;margin-left:auto;margin-right:auto;display:flex;width:fit-content}.hero-scroll:hover{color:var(--accent)}.hero-scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,#1a1d24,transparent);border-radius:2px;animation:scrollLine 2s ease-in-out infinite}@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scrollLine{0%,100%{opacity:0.3;transform:scaleY(0.5);transform-origin:top}50%{opacity:1;transform:scaleY(1);transform-origin:top}}.section-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:clamp(1.75rem,3vw,2.25rem);letter-spacing:-0.02em;margin-bottom:0.5rem;color:var(--text-primary)}.section-subtitle{font-size:1.0625rem;color:var(--text-secondary);margin-bottom:2.5rem}.section-title--light{color:var(--text-primary)}.features{padding:5rem 0;background:#1e2128}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.feature-card{padding:2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.feature-card:hover{border-color:#ECEEF1;transform:translateY(-4px);box-shadow:var(--shadow-lg)}.feature-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;color:var(--accent)}.feature-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:600;font-size:1.25rem;margin-bottom:0.5rem;color:var(--text-primary)}.feature-desc{font-size:0.9375rem;color:var(--text-secondary);line-height:1.6}.onboard-section{padding:1rem 0 6rem;background:linear-gradient(180deg,var(--luxury-3) 0%,var(--luxury-4) 100%);position:relative}.onboard-section::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--luxury-separator-band);pointer-events:none;box-shadow:var(--luxury-separator-glow)}.onboard-section::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--luxury-separator-band);pointer-events:none;box-shadow:var(--luxury-separator-glow)}.onboard-section .section-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:clamp(1rem,2vw,1.25rem);letter-spacing:-0.02em;color:var(--text-primary);text-align:center;margin-bottom:2rem;position:relative}.onboard-section-icons{display:flex;flex-wrap:nowrap;justify-content:center;gap:0.75rem 1rem;list-style:none;margin:0;padding:1.5rem 0;position:relative;max-width:100%;overflow-x:auto;overflow-y:visible;scrollbar-width:none;-webkit-overflow-scrolling:touch}.onboard-section-icons::-webkit-scrollbar{display:none}.onboard-section-item{display:flex;flex-direction:column;align-items:center;gap:0.5rem;flex:0 0 auto;min-width:76px;cursor:default;overflow:visible}.onboard-section-icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;color:var(--accent);opacity:0.95;font-size:2.5rem;border-radius:50%;position:relative;overflow:visible;z-index:1;transition:transform 0.35s cubic-bezier(0.34,1.56,0.64,1),color 0.3s ease}.onboard-section-icon::before{content:'';position:absolute;inset:-10px;width:calc(100% + 20px);height:calc(100% + 20px);border-radius:14px;border:1px solid transparent;background:transparent;opacity:0;transform:scale(0.88);transition:opacity 0.35s ease,transform 0.35s cubic-bezier(0.34,1.56,0.64,1),border-color 0.35s ease,background 0.35s ease;pointer-events:none;z-index:-1}.onboard-section-item:hover .onboard-section-icon{color:var(--accent-hover);transform:translateY(-3px)}.onboard-section-item:hover .onboard-section-icon::before{opacity:1;transform:scale(1);border-color:#ECEEF1;background:transparent}.onboard-section-icon i{font-size:inherit;position:relative;z-index:1}.onboard-section-item:hover .onboard-section-label{color:var(--accent-hover);transition:color 0.3s ease}.onboard-section-label{font-family:'Outfit','Outfit Fallback',sans-serif;font-size:0.8125rem;font-weight:600;color:var(--text-secondary);text-align:center;line-height:1.2;max-width:80px;position:relative;display:inline-block;z-index:1;transition:color 0.3s ease}.onboard-section-label--nowrap{white-space:nowrap;max-width:none}@media (max-width:640px){.onboard-section-icons{flex-wrap:wrap;overflow-x:visible;overflow-y:visible;row-gap:1.5rem;column-gap:0.5rem}.onboard-section-item{flex:0 0 calc(25% - 0.5rem);min-width:0}.onboard-section-icon{width:56px;height:56px;font-size:1.9rem}.onboard-section-label{font-size:0.72rem;max-width:100%}.onboard-section-label--nowrap{white-space:normal}}.engagements{padding:2.5rem 0 5rem;background:linear-gradient(180deg,var(--luxury-1) 0%,var(--luxury-2) 50%,var(--luxury-2) 100%);position:relative;overflow:visible}.engagements::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--luxury-separator-band);pointer-events:none;box-shadow:var(--luxury-separator-glow)}.engagements-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem;overflow:visible}@media (max-width:700px){.engagements-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.engagements-grid{grid-template-columns:1fr}}.engagement-card{padding:2rem 1.5rem;background:rgba(20,23,31,0.6);border-radius:var(--radius-lg);border:1px solid var(--luxury-accent-line);box-shadow:0 4px 24px rgba(0,0,0,0.2),0 0 0 1px transparent inset;transition:border-color 0.25s ease,box-shadow 0.25s ease,transform 0.35s cubic-bezier(0.34,1.56,0.64,1),background 0.25s ease;transform-origin:center center;transform:scale(1);position:relative;z-index:0}.engagement-card:hover{border-color:#ECEEF1;background:rgba(26,30,40,0.75);box-shadow:0 0 32px transparent,0 16px 48px rgba(0,0,0,0.4),0 0 0 1px transparent inset;transform:translateY(-10px) scale(1.1);z-index:1}.engagement-card:hover .engagement-icon{color:var(--accent-hover);text-shadow:0 0 20px var(--accent-muted)}.engagement-icon{width:56px;height:56px;margin-bottom:1.25rem;display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:2rem}.engagement-icon svg{width:100%;height:100%}.engagement-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:1.1rem;color:var(--text-primary);margin-bottom:0.5rem}.engagement-desc{font-size:0.9375rem;color:var(--text-secondary);line-height:1.55}.engagements .section-title--light,.engagements .section-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:600;font-size:clamp(0.875rem,1.8vw,1rem);letter-spacing:0.2em;text-transform:uppercase;color:var(--accent);text-shadow:0 0 20px var(--accent-muted);text-align:center;transition:color var(--transition),text-shadow var(--transition)}.engagements .section-title:hover{color:var(--accent-hover);text-shadow:0 0 24px transparent}.reservation{padding:5rem 0;background:var(--bg-elevated)}.reservation-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.reservation-content .section-title{margin-bottom:1rem}.reservation-lead{font-size:1.0625rem;color:var(--text-secondary);margin-bottom:1.5rem;max-width:480px}.reservation-content .btn-lg{margin-bottom:1rem}.reservation-visual{display:flex;justify-content:center;align-items:center}.reservation-card{padding:2.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);text-align:center;max-width:320px;box-shadow:var(--shadow)}.reservation-card-label{display:inline-block;font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:var(--accent);margin-bottom:0.5rem}.reservation-card-text{font-size:1.125rem;color:var(--text-secondary)}.services{padding:5rem 0;background:linear-gradient(180deg,var(--luxury-4) 0%,var(--luxury-5) 100%);position:relative}.services::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--luxury-separator-band);pointer-events:none;box-shadow:var(--luxury-separator-glow)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1rem}.service-card{display:block;padding:2rem;background:rgba(20,23,31,0.5);border:1px solid var(--border-soft);border-radius:var(--radius-lg);text-decoration:none;color:inherit;transition:border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.service-card:hover{border-color:#ECEEF1;transform:translateY(-4px);box-shadow:var(--shadow-lg)}.service-icon{font-size:2rem;display:flex;align-items:center;justify-content:flex-start;margin-bottom:1rem;color:var(--accent)}.service-icon i{font-size:1.75rem}.service-card:hover .service-icon{color:var(--accent-hover)}.service-icon:not(:has(i)){display:block}.service-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:600;font-size:1.25rem;margin-bottom:0.5rem;color:var(--text-primary)}.service-desc{font-size:0.9375rem;color:var(--text-secondary);margin-bottom:1rem;line-height:1.5}.service-link{font-size:0.875rem;font-weight:600;color:var(--accent);display:inline-flex;align-items:center;gap:0.4rem;transition:gap 0.2s}.service-link::after{content:'\2192'}.service-link:hover{gap:0.65rem}.about{padding:5rem 0;background:var(--bg-elevated)}.about-inner{max-width:720px}.about-text p{font-size:1.0625rem;color:var(--text-secondary);margin-bottom:1rem;line-height:1.7}.about-text p:last-child{margin-bottom:0}.testimonials{padding:5rem 0 1rem;background:linear-gradient(180deg,var(--luxury-2) 0%,var(--luxury-3) 100%);overflow-x:hidden;position:relative}.testimonials::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--luxury-separator-band);pointer-events:none;box-shadow:var(--luxury-separator-glow)}.testimonials::after{content:'';position:absolute;inset:0;background-image:radial-gradient(circle at 20% 50%,transparent 0%,transparent 12%),radial-gradient(circle at 80% 50%,transparent 0%,transparent 12%);pointer-events:none}.testimonials .container{position:relative;z-index:1}.testimonials-heading{text-align:center;margin-bottom:2rem}.testimonials-heading__line1,.testimonials-heading__line2{display:block}.testimonials-heading__line1{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:600;font-size:clamp(0.875rem,1.8vw,1rem);letter-spacing:0.2em;text-transform:uppercase;color:var(--accent);text-shadow:0 0 20px var(--accent-muted);margin-bottom:0.35rem;transition:color var(--transition),text-shadow var(--transition)}.testimonials-heading__line1:hover{color:var(--accent-hover);text-shadow:0 0 24px transparent}.testimonials-heading__line2{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:clamp(1.25rem,2.5vw,1.5rem);letter-spacing:-0.02em;color:var(--text-primary)}.testimonials-heading__stars{display:flex;justify-content:center;align-items:center;gap:0.2rem;margin-top:0.35rem;color:var(--accent);font-size:clamp(0.75rem,1.5vw,0.9375rem);letter-spacing:0.15em}.testimonials-heading__stars i{display:inline-block}.testimonials-carousel{position:relative;max-width:720px;margin:0 auto;padding:0 3rem}.testimonials-carousel--wide{max-width:none;width:100%;padding:2rem 3.5rem;overflow:hidden;box-sizing:border-box;position:relative}.testimonials-carousel--wide::before{content:'';position:absolute;inset:0.75rem 2rem;border:1px solid #ECEEF1;border-radius:var(--radius-xl);pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.02)}.testimonials-carousel--wide::after{content:'';position:absolute;bottom:0.75rem;left:50%;transform:translateX(-50%);width:60%;height:1px;background:linear-gradient(90deg,transparent 0%,transparent 20%,transparent 50%,transparent 80%,transparent 100%);pointer-events:none}.testimonials-carousel--wide .testimonials-track{display:flex;gap:0.75rem;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:0.5rem 0;width:100%;max-width:100%;box-sizing:border-box;scrollbar-width:none;position:relative;z-index:1}.testimonials-carousel--wide .testimonials-track::-webkit-scrollbar{display:none}.testimonials-carousel--wide .testimonial-card--slide{flex:0 0 calc((100% - 1.5rem) / 3);min-width:0;scroll-snap-align:start;scroll-snap-stop:always;box-sizing:border-box;padding:1rem 0.85rem}.testimonials-carousel--wide .testimonial-card--slide .testimonial-quote{font-size:0.8125rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;color:#333}.testimonials-carousel--wide .testimonial-card-header{margin-bottom:0.5rem}.testimonials-carousel--wide .testimonial-rating{margin-bottom:0.5rem}.testimonials-carousel--wide .testimonial-avatar{width:32px;height:32px;font-size:0.8125rem}.testimonials-carousel--wide .testimonial-name{font-size:0.875rem;color:#1a1a1a}.testimonials-carousel--wide .testimonial-date-badge{font-size:0.6875rem;color:#666}.testimonials-carousel--wide .testimonial-google-logo svg{width:18px;height:18px}.testimonials-carousel--wide .testimonial-stars--yellow{font-size:0.75rem;color:var(--accent)}.testimonials-carousel--wide .testimonial-verified i{font-size:0.75rem;color:var(--accent)}.testimonials-track{display:flex;overflow:hidden;scroll-behavior:smooth;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.testimonial-card--slide{flex:0 0 100%;width:100%;scroll-snap-align:start;scroll-snap-stop:always}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:48px;height:48px;border-radius:50%;border:1px solid var(--border-soft);background:rgba(20,23,31,0.9);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:background var(--transition),color var(--transition),border-color var(--transition),box-shadow var(--transition);box-shadow:0 4px 16px rgba(0,0,0,0.3)}.carousel-btn:hover{background:var(--accent);color:var(--bg-dark);border-color:var(--accent);box-shadow:0 4px 20px transparent}.carousel-btn--prev{left:0}.carousel-btn--next{right:0}.carousel-btn--hidden{visibility:hidden;opacity:0;pointer-events:none}.testimonial-card{padding:2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);font-style:normal;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition)}.testimonial-card--google{font-family:'Outfit','Outfit Fallback','Plus Jakarta Sans',sans-serif;background:#fff;border:1px solid rgba(0,0,0,0.06);border-radius:var(--radius-lg);box-shadow:0 0 0 1px transparent,0 2px 8px rgba(0,0,0,0.04);position:relative;overflow:visible;transform-origin:center;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.testimonial-card--google::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:linear-gradient(90deg,transparent 10%,transparent 30%,var(--accent) 50%,transparent 70%,transparent 90%);opacity:0.9}.testimonial-card--google::after{content:'"';position:absolute;top:0.5rem;left:0.75rem;font-family:Georgia,serif;font-size:3.5rem;font-weight:700;line-height:1;color:var(--accent);opacity:0.12;pointer-events:none}.testimonial-card--google:hover{transform:scale(1.05);z-index:1}.testimonial-card-header{display:flex;align-items:flex-start;gap:0.75rem;margin-bottom:0.75rem;position:relative;z-index:1}.testimonial-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#f5f5f5 0%,#e8e8e8 100%);border:1px solid #ECEEF1;color:#555;font-size:1rem;font-weight:600;font-family:'Outfit','Outfit Fallback',sans-serif;display:flex;align-items:center;justify-content:center}.testimonial-avatar--n{background:linear-gradient(135deg,transparent 0%,transparent 100%);border-color:#ECEEF1;color:var(--accent)}.testimonial-meta{flex:1;min-width:0}.testimonial-name{display:block;font-weight:600;font-size:0.9375rem;font-family:'Outfit','Outfit Fallback',sans-serif;color:#1a1a1a}.testimonial-date,.testimonial-date-badge{display:block;font-size:0.8125rem;color:#666}.testimonial-google-logo{position:absolute;top:0;right:0;flex-shrink:0}.testimonial-google-logo svg{display:block}.testimonial-rating{display:flex;align-items:center;gap:0.5rem;margin-bottom:0.75rem;position:relative;z-index:1}.testimonial-stars--yellow{color:var(--accent);font-size:1rem;letter-spacing:0.08em}.testimonial-verified{color:var(--accent);font-size:0.875rem}.testimonial-verified i{opacity:0.9}.testimonial-quote{font-size:0.9375rem;color:#333;margin:0;line-height:1.65;font-family:'Plus Jakarta Sans',sans-serif;position:relative;z-index:1}.testimonial-quote::before,.testimonial-quote::after{content:none}.testimonial-author{font-size:0.875rem;color:var(--text-muted);font-style:normal}.testimonial-text{font-size:1rem;color:var(--text-primary);margin-bottom:1rem;line-height:1.6}@media (max-width:768px){.testimonials-carousel--wide{padding:1rem 0.5rem 1.5rem;overflow:visible}.testimonials-carousel--wide::before{inset:0.5rem 0.75rem}.testimonials-carousel--wide .testimonials-track{flex-direction:column;flex-wrap:nowrap;overflow-x:visible;overflow-y:visible;scroll-snap-type:none;gap:1rem;padding:0.5rem 0}.testimonials-carousel--wide .testimonial-card--slide{flex:0 0 auto;width:100%;min-width:0;max-width:none;scroll-snap-align:none;padding:1.25rem 1rem}.testimonials-carousel--wide .testimonial-card--slide .testimonial-quote{display:block;-webkit-line-clamp:unset;-webkit-box-orient:unset;overflow:visible;font-size:0.9375rem;line-height:1.55}.testimonials-carousel--wide .testimonial-card-header{margin-bottom:0.5rem}.testimonials-carousel--wide .testimonial-rating{margin-bottom:0.5rem}.testimonials-carousel--wide .testimonial-avatar{width:40px;height:40px;font-size:1rem}.testimonials-carousel--wide .testimonial-name{font-size:0.9375rem}.testimonials-carousel--wide .testimonial-date-badge{font-size:0.75rem}.testimonials-carousel--wide .testimonial-google-logo svg{width:20px;height:20px}.testimonials-carousel--wide .testimonial-stars--yellow{font-size:0.875rem}.testimonials-carousel--wide .testimonial-verified i{font-size:0.875rem}.testimonials .carousel-btn{display:none}}.payment{padding:3.5rem 0;background:var(--luxury-6);position:relative;overflow:hidden}.payment .container{position:relative}.payment-inner{text-align:center;max-width:1200px;margin:0 auto;padding:2.5rem 2rem 2.25rem;position:relative;background:linear-gradient(180deg,#1e222c 0%,#181b24 100%);border-radius:20px;border:1px solid rgba(255,255,255,0.06);box-shadow:0 8px 32px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.04)}.payment-inner::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;border-radius:20px 20px 0 0;background:linear-gradient(90deg,transparent 0%,var(--accent) 30%,var(--accent) 70%,transparent 100%);opacity:0.9;box-shadow:0 0 12px transparent}.payment-head{display:flex;align-items:center;justify-content:center;gap:0.75rem;margin-bottom:0;padding-bottom:0;border-bottom:none}.payment-icon-trust{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:transparent;border:1px solid #ECEEF1;color:var(--accent);font-size:1rem;flex-shrink:0;box-shadow:0 0 20px transparent}.payment-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:clamp(1.35rem,2.5vw,1.75rem);letter-spacing:-0.02em;margin:0;color:var(--text-primary)}.payment-separator{height:1px;margin:1.25rem auto 1.5rem;max-width:100%;background:linear-gradient(90deg,transparent 5%,var(--accent) 20%,var(--accent) 80%,transparent 95%);opacity:0.85}.payment-logos{display:flex;flex-wrap:nowrap;justify-content:center;align-items:flex-start;gap:0.5rem 0.625rem;margin-top:0;padding:0;position:relative}.payment-logos::before{display:none}.payment-item{display:flex;flex-direction:column;align-items:center;gap:0.4rem;flex:1 1 0;min-width:0;max-width:none}.payment-logo{display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;min-width:0;padding:0.25rem;border-radius:0;background:transparent;border:none;color:var(--text-primary);font-size:1.5rem;box-shadow:none;transition:color var(--transition),transform var(--transition),opacity var(--transition)}.payment-item:hover .payment-logo{opacity:0.9;transform:translateY(-1px)}.payment-logo i{display:block}.payment-logo-stripe{color:#635bff}.payment-item:hover .payment-logo-stripe{color:#7C4DFF}.payment-logo-cb{padding:0.25rem;background:transparent;border:none}.payment-logo-cb-img{width:auto;height:28px;max-width:56px;object-fit:contain;display:block}.payment-item:hover .payment-logo-cb-img{opacity:0.95}.payment-logo-visa{padding:0.25rem;background:transparent}.payment-logo-visa-img{width:auto;height:28px;max-width:56px;object-fit:contain;display:block}.payment-item:hover .payment-logo-visa-img{opacity:0.95}.payment-logo-mastercard{padding:0.25rem;background:transparent}.payment-logo-mastercard-img{width:auto;height:28px;max-width:56px;object-fit:contain;display:block}.payment-item:hover .payment-logo-mastercard-img{opacity:0.95}.payment-logo-amex{color:#016FD0}.payment-item:hover .payment-logo-amex{color:#1a7ee0}.payment-logo-applepay{color:#ffffff;font-size:1.9rem}.payment-item:hover .payment-logo-applepay{color:#f5f5f7}.payment-logo-googlepay{padding:0.25rem;background:transparent}.payment-logo-googlepay-img{width:auto;height:28px;max-width:56px;object-fit:contain;display:block}.payment-item:hover .payment-logo-googlepay-img{opacity:0.95}.payment-logo-paypal{padding:0.25rem}.payment-logo-paypal-img{width:auto;height:28px;max-width:56px;object-fit:contain;display:block}.payment-item:hover .payment-logo-paypal-img{opacity:0.95}.payment-logo-virement{color:#0d8050}.payment-item:hover .payment-logo-virement{color:#00a968}.payment-logo-especes{padding:0.25rem}.payment-logo-especes-img{width:auto;height:40px;max-width:64px;object-fit:contain;display:block}.payment-item:hover .payment-logo-especes-img{opacity:0.95}.payment-logo-label{font-family:'Outfit','Outfit Fallback',sans-serif;font-size:0.65rem;font-weight:500;color:var(--text-primary);text-align:center;line-height:1.2;max-width:100%;letter-spacing:0.02em;transition:color var(--transition)}.payment-item:hover .payment-logo-label{color:var(--accent)}@media (max-width:1024px){.payment-logos{flex-wrap:wrap}.payment-item{min-width:72px;max-width:95px}.payment-logo{font-size:1.6rem}.payment-logo-label{font-size:0.6rem}}@media (max-width:640px){.payment-inner{max-width:100%}.payment-item{min-width:68px;max-width:85px}.payment-logo{font-size:1.35rem}.payment-logo-label{font-size:0.55rem}}.contact-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1rem}.btn-phone-block{min-width:200px}.footer{padding:3.5rem 0 2rem;background:linear-gradient(180deg,var(--bg-dark) 0%,rgba(18,18,18,0.98) 100%);position:relative}.footer::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--luxury-separator-band);pointer-events:none;box-shadow:var(--luxury-separator-glow)}.footer-top{text-align:center;margin-bottom:2.25rem;max-width:360px;margin-left:auto;margin-right:auto}.logo-footer{display:inline-flex;margin-bottom:0.5rem}.footer-tagline{font-family:'Outfit','Outfit Fallback',sans-serif;font-size:1rem;font-weight:500;letter-spacing:0.02em;color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.5}.footer-social-label{font-size:0.6875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.12em;display:block;margin-bottom:0.75rem}.footer-social-links{display:flex;gap:0.75rem;justify-content:center}.footer-social-link{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,0.05);border:1px solid var(--border-soft);color:var(--text-secondary);text-decoration:none;font-size:1rem;transition:color var(--transition),border-color var(--transition),background var(--transition),transform var(--transition)}.footer-social-link:hover{color:var(--accent);border-color:#ECEEF1;background:transparent;transform:translateY(-2px)}.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:0.75rem 1rem;padding-top:1.75rem;border-top:1px solid var(--border-soft)}.footer-copy{font-size:0.8125rem;color:var(--text-muted)}.footer-sep{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--accent);opacity:0.6;flex-shrink:0}.footer-legal{font-size:0.8125rem;color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color var(--transition)}.footer-legal:hover{color:var(--accent)}.page-hero{padding:8rem 0 4rem;min-height:auto}.page-hero .hero-inner{text-align:center}.page-hero .hero-badge{margin-bottom:1rem}.page-hero .hero-title{font-size:clamp(2rem,4vw,2.75rem);margin-bottom:0.75rem}.page-hero .hero-lead{margin-bottom:0}.page-hero .hero-cta,.page-hero .hero-scroll{display:none}.page-content{padding:3rem 0 5rem}.page-intro{font-size:1.125rem;color:var(--text-secondary);line-height:1.75;max-width:720px;margin:0 auto 3rem;text-align:center}.page-intro strong{color:var(--text-primary);font-weight:600}.service-cta{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.page-content .prose{max-width:720px;margin:0 auto}.page-content .prose p{font-size:1.0625rem;color:var(--text-secondary);line-height:1.7;margin-bottom:1rem}.page-content .prose h2{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:1.5rem;margin:2.5rem 0 1rem;color:var(--text-primary)}.page-content .prose h2:first-child{margin-top:0}.page-hero--forfait{position:relative;min-height:42vh;display:flex;align-items:center;padding:8rem 0 5rem;overflow:hidden}.page-hero__bg{position:absolute;inset:0}.page-hero__img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.page-hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,14,18,0.5) 0%,rgba(12,14,18,0.85) 100%)}.page-hero__inner{position:relative;z-index:1;text-align:center;max-width:640px;margin:0 auto}.page-hero--forfait .page-hero__inner{position:relative;z-index:1}.page-hero__badge{font-family:'Outfit','Outfit Fallback',sans-serif;font-size:0.75rem;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;opacity:0.95}.page-hero__title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.2;color:#fff;margin:0 0 0.75rem;text-shadow:0 2px 20px rgba(0,0,0,0.4)}.page-hero__title-accent{color:var(--accent)}.page-hero__lead{font-size:1.0625rem;color:rgba(255,255,255,0.9);margin:0;line-height:1.5;text-shadow:0 1px 10px rgba(0,0,0,0.3)}.page-hero__line{display:block;width:60px;height:2px;margin:1.5rem auto 0;background:linear-gradient(90deg,transparent,var(--accent),transparent);border-radius:1px}.forfait-intro-section{padding:4rem 0;background:linear-gradient(180deg,var(--luxury-1) 0%,var(--luxury-2) 50%,var(--bg-dark) 100%)}.forfait-intro-section__container{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;max-width:1000px;margin:0 auto}.forfait-intro-block__text{font-size:1.0625rem;line-height:1.7;color:var(--text-secondary);margin:0 0 1.5rem}.forfait-intro-block__text strong{color:var(--text-primary);font-weight:600}.forfait-intro-block__atouts{display:flex;flex-wrap:wrap;gap:1rem 1.5rem}.forfait-atout{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.9375rem;font-weight:500;color:var(--text-primary)}.forfait-atout i{color:var(--accent);font-size:1rem}.forfait-intro-figure{margin:0;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--luxury-accent-line);box-shadow:0 8px 32px rgba(0,0,0,0.25)}.forfait-intro-figure img{width:100%;height:auto;display:block;object-fit:cover}.forfait-intro-figure figcaption{font-size:0.8125rem;color:var(--text-muted);padding:0.75rem 1rem;background:var(--bg-dark);border-top:1px solid var(--luxury-accent-line)}.forfait-form-section{padding:3rem 0 4rem;background:var(--bg-dark)}.forfait-form-section__container{max-width:560px;margin:0 auto}.forfait-form-card{background:var(--bg-card);border:1px solid var(--luxury-accent-line);border-radius:var(--radius-xl);padding:2rem 2.25rem;box-shadow:0 4px 24px rgba(0,0,0,0.3),0 0 0 1px rgba(255,255,255,0.02) inset;position:relative;overflow:hidden}.forfait-form-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0%,var(--accent) 50%,transparent 100%);opacity:0.9}.forfait-form__title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:1.25rem;color:var(--text-primary);margin:0 0 1.25rem;display:flex;align-items:center;gap:0.5rem}.forfait-form__title i{color:var(--accent);font-size:1.25rem}.forfait-form-card .hero-form{max-width:100%;padding:0;border:none;background:transparent;box-shadow:none}.forfait-form-card .form-success.is-visible,.forfait-form-card .form-errors.is-visible{display:block}.forfait-form-cta{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:2rem}.forfait-form-cta .btn{min-width:200px}.forfait-blocks-section{padding:4rem 0 5rem;background:linear-gradient(180deg,var(--luxury-2) 0%,var(--bg-dark) 100%)}.forfait-blocks-section__title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:1.5rem;color:var(--text-primary);text-align:center;margin:0 0 2.5rem}.forfait-blocks-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;max-width:960px;margin:0 auto}.forfait-block-card{background:rgba(20,23,31,0.6);border:1px solid var(--luxury-accent-line);border-radius:var(--radius-lg);padding:1.75rem 1.5rem;transition:border-color 0.25s ease,box-shadow 0.25s ease,transform 0.2s ease}.forfait-block-card:hover{border-color:#ECEEF1;box-shadow:0 8px 24px rgba(0,0,0,0.2);transform:translateY(-2px)}.forfait-block-card__icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:1.5rem;margin-bottom:1rem}.forfait-block-card__title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:1.0625rem;color:var(--text-primary);margin:0 0 0.5rem}.forfait-block-card p{font-size:0.9375rem;line-height:1.6;color:var(--text-secondary);margin:0}.forfait-block-card strong{color:var(--text-primary);font-weight:600}@media (max-width:768px){.page-hero--forfait{min-height:35vh;padding:6rem 0 4rem}.forfait-intro-section__container{grid-template-columns:1fr;gap:2rem}.forfait-intro-figure{order:-1}.forfait-blocks-grid{grid-template-columns:1fr}}@media (max-width:640px){.page-hero--forfait{padding:5rem 0 3rem}.forfait-form-card{padding:1.5rem 1.25rem}.forfait-form-cta{flex-direction:column}.forfait-form-cta .btn{width:100%}}.form-block{max-width:560px;margin:0 auto 3rem;padding:2.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg)}.form-row{margin-bottom:1.25rem}.form-row label{display:block;font-size:0.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:0.5rem}.form-row label .required{color:var(--accent)}.form-row input,.form-row select,.form-row textarea{width:100%;padding:0.75rem 1rem;font-family:inherit;font-size:1rem;color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--transition)}.form-row input::placeholder,.form-row textarea::placeholder{color:var(--text-muted)}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:none;border-color:var(--accent)}.form-row textarea{min-height:120px;resize:vertical}.form-actions{margin-top:1.5rem}.form-actions .btn{width:100%;padding:0.875rem;font-size:1rem}.form-note{font-size:0.875rem;color:var(--text-muted);margin-top:1rem}.tarifs-intro{text-align:center;max-width:640px;margin:0 auto 2.5rem}.tarifs-intro .section-title{margin-bottom:0.75rem}.tarifs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-bottom:2rem}.tarif-card{padding:1.25rem 1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;justify-content:space-between;align-items:center;gap:1rem;transition:border-color var(--transition)}.tarif-card:hover{border-color:#ECEEF1}.tarif-destination{font-weight:500;color:var(--text-primary)}.tarif-price{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;color:var(--accent);white-space:nowrap}.tarifs-section-title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:1.25rem;color:var(--text-primary);margin:2rem 0 1rem;padding-bottom:0.5rem;border-bottom:1px solid var(--border)}.tarifs-section-title:first-child{margin-top:0}.tarifs-note{padding:1.5rem;background:var(--accent-muted);border:1px solid #ECEEF1;border-radius:var(--radius-md);font-size:0.9375rem;color:var(--text-secondary);margin-top:2rem}.tarifs-cta{text-align:center;margin-top:2rem}.service-detail{padding:4rem 0;border-bottom:1px solid var(--border)}.service-detail:last-of-type{border-bottom:none}.service-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.service-detail-grid.reverse{direction:rtl}.service-detail-grid.reverse>*{direction:ltr}.service-detail-image{aspect-ratio:16/10;background:var(--bg-elevated);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border)}.service-detail-image img{width:100%;height:100%;object-fit:cover}.service-detail-content h2{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:1.75rem;margin-bottom:1rem;color:var(--text-primary)}.service-detail-content p{font-size:1.0625rem;color:var(--text-secondary);line-height:1.7;margin-bottom:1rem}.service-detail-content .btn{margin-top:0.5rem}.service-detail-content--standalone{max-width:640px}.prestation-detail__back{margin-bottom:2rem}.prestation-detail .link-back{color:var(--text-secondary);text-decoration:none;font-size:0.9375rem;transition:color 0.2s ease}.prestation-detail .link-back:hover{color:var(--accent)}.prestation-detail .service-detail{scroll-margin-top:5rem}.services-hero{padding:0 0 5rem;position:relative;overflow:hidden;background:var(--luxury-1)}.services-hero__bg{position:absolute;inset:0;background:radial-gradient(ellipse 80% 50% at 20% 40%,transparent 0%,transparent 50%),linear-gradient(180deg,var(--luxury-1) 0%,var(--luxury-2) 35%,var(--luxury-3) 100%);pointer-events:none}.services-hero::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--luxury-separator-band);pointer-events:none;box-shadow:var(--luxury-separator-glow);z-index:1}.services-hero .container{position:relative;z-index:1}.services-hero__strip{text-align:center;padding:2.5rem 1.5rem 2rem;position:relative;z-index:1}.services-hero__strip .services-hero__label{justify-content:center;margin-bottom:0.6rem}.services-hero__title--strip{margin-bottom:0}.services-hero__title--strip .services-hero__title-line--accent::after{left:50%;transform:translateX(-50%)}.services-hero__strip::after{content:'';display:block;width:120px;height:3px;background:linear-gradient(90deg,transparent,var(--accent),transparent);margin:1.25rem auto 0;border-radius:2px}.services-hero__grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start;max-width:1200px;margin:0 auto;position:relative}.services-hero__grid::before{content:'';position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(180deg,transparent,transparent,transparent);transform:translateX(-50%);pointer-events:none}.services-hero__right{margin-top:0}.services-hero__label{font-family:'Outfit','Outfit Fallback',sans-serif;font-size:0.7rem;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:var(--accent);margin:0 0 1rem;display:flex;align-items:center;gap:0.6rem}.services-hero__label-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px transparent}.services-hero__title{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:clamp(1.75rem,3.5vw,2.5rem);line-height:1.15;color:var(--text-primary);margin:0 0 2rem;letter-spacing:-0.02em}.services-hero__title-line{display:block}.services-hero__title-line--accent{position:relative;padding-bottom:0.4em}.services-hero__title-line--accent::after{content:'';position:absolute;left:0;bottom:0;width:100px;height:4px;background:linear-gradient(90deg,var(--accent) 0%,transparent 100%);border-radius:2px;box-shadow:0 0 16px transparent}.services-hero__img-wrap{border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-elevated);margin-bottom:1.75rem;border:1px solid #ECEEF1;box-shadow:var(--shadow),0 0 0 1px transparent,0 2px 8px transparent;transition:box-shadow var(--transition),transform var(--transition),border-color var(--transition)}.services-hero__img-wrap:hover{border-color:#ECEEF1;box-shadow:0 12px 40px rgba(0,0,0,0.35),0 0 0 2px transparent,0 0 32px transparent;transform:translateY(-2px)}.services-hero__img-wrap img,.services-hero__img-wrap .services-hero__img{width:100%;height:auto;display:block;vertical-align:middle}.services-hero__img-wrap .services-hero__placeholder{display:none;width:100%;height:auto;vertical-align:middle}.services-hero__ctas{display:flex;flex-direction:column;gap:0.75rem}.services-hero__btn{width:100%;max-width:280px;justify-content:center;box-shadow:0 4px 20px transparent}.services-hero__btn:hover{box-shadow:0 6px 28px transparent}.services-hero__btn i{margin-right:0.5rem}.services-accordion__heading{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:1.25rem;color:var(--text-primary);margin:0 0 0.35rem;letter-spacing:0.02em}.services-accordion__heading::after{content:'';display:block;width:48px;height:3px;background:var(--accent);border-radius:2px;margin-top:0.5rem}.services-accordion__intro{font-size:0.9rem;color:var(--text-secondary);margin:0 0 1.25rem;line-height:1.5}.services-hero__cta-footer{margin-top:1.5rem;text-align:center}.services-hero__cta-footer .btn{min-width:200px}.services-accordion__card{background:rgba(20,23,31,0.7);border:1px solid var(--luxury-accent-line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,0.03)}.services-accordion__item{border-bottom:1px solid #ECEEF1;transition:background var(--transition),border-color var(--transition);position:relative}.services-accordion__item:last-child{border-bottom:none}.services-accordion__item[open]{background:var(--luxury-accent-soft)}.services-accordion__item[open]::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);border-radius:0 2px 2px 0}.services-accordion__item[open] .services-accordion__summary{color:var(--accent)}.services-accordion__num{display:inline-block;min-width:1.75rem;margin-right:0.6rem;font-family:'Outfit','Outfit Fallback',sans-serif;font-size:0.75rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--accent);opacity:0.9}.services-accordion__item[open] .services-accordion__num{opacity:1}.services-accordion__summary{font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:600;font-size:0.9rem;letter-spacing:0.02em;color:var(--text-primary);padding:1.05rem 1.25rem 1.05rem 3rem;list-style:none;cursor:pointer;position:relative;transition:color var(--transition)}.services-accordion__summary::-webkit-details-marker{display:none}.services-accordion__summary::before{content:'';position:absolute;left:1.25rem;top:50%;transform:translateY(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--accent);transition:transform var(--transition)}.services-accordion__item[open] .services-accordion__summary::before{transform:translateY(-50%) rotate(180deg)}.services-accordion__summary:hover{color:var(--accent)}.services-accordion__content{padding:0 1.25rem 1.25rem 3rem}.services-accordion__content p{font-size:0.9rem;color:var(--text-secondary);margin:0 0 1rem;line-height:1.5}.services-accordion__content .btn{font-size:0.85rem;padding:0.5rem 1rem}@media (max-width:900px){.services-hero__grid::before{display:none}.services-hero__grid{grid-template-columns:1fr;gap:2.5rem}.services-hero__left{order:1}.services-hero__right{order:2}.services-accordion__heading{text-align:center}.services-accordion__heading::after{margin-left:auto;margin-right:auto}.services-accordion__intro{text-align:center}.services-hero__label{text-align:center}.services-hero__title{text-align:center}.services-hero__title-line--accent::after{left:50%;transform:translateX(-50%)}.services-hero__img-wrap{max-height:380px}.services-hero__img-wrap img,.services-hero__img-wrap .services-hero__img{object-fit:cover;height:380px}.services-hero__ctas{align-items:center}.services-hero__btn{max-width:100%}}@media (max-width:480px){.services-accordion__summary,.services-accordion__content{padding-left:1.25rem;padding-right:1rem}.services-accordion__summary{padding-right:2.5rem}.services-accordion__summary::before{left:0.75rem}}@media (max-width:768px){.service-detail-grid,.service-detail-grid.reverse{grid-template-columns:1fr;direction:ltr}}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start;margin-top:2rem}.contact-address{padding:2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg)}.contact-address h3{font-family:'Outfit','Outfit Fallback',sans-serif;font-size:1.125rem;margin-bottom:0.75rem;color:var(--text-primary)}.contact-address p{font-size:0.9375rem;color:var(--text-secondary);line-height:1.6;margin:0}@media (max-width:768px){.contact-grid{grid-template-columns:1fr}}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:2.5rem 0}.step{text-align:center;padding:1.5rem}.step-num{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--accent-muted);color:var(--accent);font-family:'Outfit','Outfit Fallback',sans-serif;font-weight:700;font-size:1.25rem;border-radius:50%;margin-bottom:1rem}.step h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:0.5rem}.step p{font-size:0.9375rem;color:var(--text-secondary);line-height:1.5;margin:0}@media (max-width:768px){.steps{grid-template-columns:1fr}}@media (max-width:900px){.nav{display:none}.header-inner{gap:0.5rem}.header-inner .logo{flex-shrink:0}.header-inner .btn-phone{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;padding:0;border-radius:50%}.header-inner .btn-phone-num{display:none}.header-inner .btn-phone .contact-ico{width:18px;height:18px;flex-shrink:0}.nav-toggle{display:flex !important;flex-shrink:0}body.menu-open .header{z-index:10000}.nav.is-open{display:block;position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;z-index:9998;background:var(--bg-dark);padding:5rem 1.5rem 2rem;overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box}.nav-close{position:absolute;top:1rem;right:1rem;width:48px;height:48px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(255,255,255,0.06);color:var(--text-primary);font-size:1.75rem;line-height:1;cursor:pointer;align-items:center;justify-content:center}.nav.is-open .nav-close{display:flex}.nav-close:hover{background:rgba(255,255,255,0.1);color:var(--accent)}.nav.is-open .nav-list{flex-direction:column;align-items:stretch;gap:0}.nav.is-open .nav-list a{display:block;padding:1rem;font-size:1.125rem;border-bottom:1px solid var(--border)}.nav.is-open .nav-phone-mobile{display:block;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.nav.is-open .nav-phone-link{display:inline-flex;align-items:center;gap:0.5rem;padding:0.75rem 1rem;background:var(--accent-muted);color:var(--accent);font-weight:600;font-size:1.125rem;border-radius:var(--radius);text-decoration:none}.nav.is-open .nav-phone-link:hover{background:transparent;color:var(--accent)}.nav.is-open .nav-phone-link .btn-phone-icon{width:1.25rem;height:1.25rem}.reservation-grid{grid-template-columns:1fr;text-align:center}.reservation-lead{max-width:none}.reservation-content .btn-lg{margin-left:auto;margin-right:auto}.hero-title{font-size:clamp(1.6rem,5vw,2.25rem)}.hero-content .hero-intro-inline{font-size:0.9rem}.hero-features-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0.5rem}.hero-features .hero-features-grid{margin-top:1rem}.hero-features .feature-card{padding:0.5rem 0.5rem 0.625rem;display:flex;flex-direction:column;align-items:center;text-align:center}.hero-features .feature-icon{width:32px;height:32px;margin-bottom:0.35rem;flex-shrink:0}.hero-features .feature-title{font-size:0.75rem;margin-bottom:0.2rem;line-height:1.2}.hero-features .feature-desc{font-size:0.65rem;line-height:1.35}.hero-content>br{display:none}.hero-features{display:flex;flex-direction:column;margin-top:0}.hero-features .hero-cta{order:-1;margin-top:0.5rem;margin-bottom:0}.hero-features .hero-features-grid{order:0;margin-top:1.5rem}.hero-features .hero-scroll.hero-scroll-inline{order:1}.engagements-grid{display:grid;grid-template-columns:1fr;flex-wrap:wrap;overflow-x:visible;overflow-y:visible;gap:1rem;margin-top:1rem;padding-bottom:0;-webkit-overflow-scrolling:auto;scroll-snap-type:none}.engagements-grid .engagement-card{flex:none;min-width:0;max-width:none;padding:1rem 1rem 1.25rem;scroll-snap-align:none;display:flex;flex-direction:column;align-items:flex-start;text-align:left}.engagements-grid .engagement-icon{width:44px;height:44px;font-size:1.5rem;margin-bottom:0.5rem}.engagements-grid .engagement-title{font-size:0.9rem;margin-bottom:0.35rem;line-height:1.25}.engagements-grid .engagement-desc{font-size:0.8rem;line-height:1.4}}@media (max-width:600px){.hero-cta{flex-direction:column}.hero-cta .btn{width:100%}.contact-actions .btn{width:100%}}.datepicker-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(0,0,0,0.5);opacity:0;visibility:hidden;transition:opacity 0.2s ease,visibility 0.2s ease}.datepicker-overlay.is-open{opacity:1;visibility:visible}.datepicker-modal{background:#fff;color:#1a1a1a;border-radius:12px;box-shadow:0 24px 48px rgba(0,0,0,0.25);padding:1.25rem;min-width:280px;max-width:320px}.datepicker-shortcuts{display:flex;gap:0.4rem;margin-bottom:0.85rem}.datepicker-shortcut-btn{flex:1;padding:0.5rem 0.4rem;font-size:0.78rem;font-weight:600;color:#4a5160;background:#f5f6f8;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:background 0.15s,color 0.15s,border-color 0.15s;white-space:nowrap}.datepicker-shortcut-btn:hover{background:#eef1f4}.datepicker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:0.5rem}.datepicker-nav{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#555;background:#f0f0f0;border:none;border-radius:8px;cursor:pointer;transition:background 0.2s,color 0.2s}.datepicker-nav:hover{background:#e5e5e5;color:#1a1a1a}.datepicker-month-year{display:flex;gap:0.5rem}.datepicker-month,.datepicker-year{padding:0.4rem 0.6rem;font-size:0.9375rem;color:#1a1a1a;background:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer}.datepicker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:0.5rem;font-size:0.9375rem;font-weight:700;color:#333;text-align:center}.datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:1rem}.datepicker-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:0.875rem;border:none;border-radius:8px;cursor:default;min-height:36px}.datepicker-cell--empty{visibility:hidden}.datepicker-cell--day{cursor:pointer;color:#1a1a1a;font-weight:500;background:transparent;transition:background 0.15s,color 0.15s}.datepicker-cell--day:hover{background:#fef3e2;color:#b89010}.datepicker-cell--past{color:#aaa;font-weight:400;cursor:not-allowed;pointer-events:none}.datepicker-cell--past:hover{background:#f5f5f5;color:#999}.datepicker-cell--selected{background:#FBC72F;color:#fff}.datepicker-cell--day{position:relative}.datepicker-cell--today:not(.datepicker-cell--selected)::after{content:'';position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:4px;height:4px;border-radius:50%;background:#FBC72F}.datepicker-cell--selected:hover{background:#d9a820;color:#fff}.datepicker-time{margin-bottom:0.85rem;padding:0.85rem 0.75rem;background:#f7f7f8;border-radius:10px}.datepicker-time-label{display:block;font-size:0.75rem;font-weight:700;color:#777;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:0.6rem;text-align:center}.datepicker-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;max-height:86px;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}.datepicker-slots::-webkit-scrollbar{display:none}.datepicker-slots-navrow{display:flex;gap:8px;margin-top:0.6rem}.datepicker-slots-nav{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:0.58rem;font-size:0.82rem;font-weight:600;letter-spacing:0.01em;color:#0b3a63;background:linear-gradient(180deg,rgba(1,102,177,0.20),rgba(1,102,177,0.12));border:1px solid rgba(1,102,177,0.4);border-bottom:3px solid rgba(1,102,177,0.5);border-radius:12px;box-shadow:inset 0 1px 0 rgba(255,255,255,0.75),0 2px 6px rgba(1,102,177,0.12);cursor:pointer;transition:background 0.15s ease,border-color 0.15s ease,transform 0.1s ease,opacity 0.15s ease}.datepicker-slots-nav i{font-size:1.1rem}.datepicker-slots-nav:hover:not(:disabled){background:linear-gradient(180deg,rgba(1,102,177,0.28),rgba(1,102,177,0.18));border-color:rgba(1,102,177,0.55)}.datepicker-slots-nav:active:not(:disabled){transform:translateY(1px)}.datepicker-slots-nav:disabled{opacity:0.4;cursor:not-allowed}.datepicker-slots-nav--up i{transform:rotate(180deg)}
.form-success-ref{display:block;margin-top:0.85rem;font-size:0.9rem;color:#0b3a63}
.form-success-ref strong{display:inline-block;margin-top:0.25rem;padding:0.28rem 0.7rem;font-size:1.1rem;font-weight:700;letter-spacing:0.06em;color:#0166B1;background:rgba(1,102,177,0.10);border:1px solid rgba(1,102,177,0.30);border-radius:8px}
.form-success-redirect{display:block;margin-top:0.9rem;font-size:0.8rem;color:#888}.hero-form-header{display:flex;align-items:baseline;justify-content:space-between;gap:0.4rem 1.25rem;flex-wrap:wrap;margin-bottom:0.85rem}.hero-form-header .hero-form-title{margin-bottom:0}.hero-form-header .hero-form-subtitle{margin:0;text-align:right}.hero-form-trip-fields>.form-row.form-row-adresse{grid-column:auto}.datepicker-slot{padding:0.5rem 0.25rem;font-size:0.8125rem;font-weight:600;color:#1a1a1a;background:#fff;border:1.5px solid #e2e4e8;border-radius:8px;cursor:pointer;text-align:center;transition:border-color 0.15s,background 0.15s,color 0.15s}.datepicker-slot:hover{border-color:#bbb}.datepicker-slot--past{color:#b4b6ba;text-decoration:line-through;background:transparent;border-color:#eceef1;cursor:not-allowed;pointer-events:none}.datepicker-slot--selected{background:#FBC72F;border-color:#FBC72F;color:#fff}.datepicker-preview{display:flex;align-items:center;gap:8px;font-size:0.8125rem;font-weight:600;color:#4a5160;background:#f5f6f8;border-radius:8px;padding:0.55rem 0.75rem;margin-bottom:0.85rem}.datepicker-actions{text-align:center}.datepicker-btn-valider{width:100%;padding:0.75rem 1.25rem;font-size:1rem;font-weight:600;color:#fff;background:#FBC72F;border:none;border-radius:8px;cursor:pointer;transition:background 0.2s}.datepicker-btn-valider:hover{background:#d9a820}.hero-form-back-row{margin-bottom:0.25rem}.hero-form-back-row.is-hidden{display:none !important}.hero-form-back-btn{display:inline-flex;align-items:center;gap:0.5rem;padding:0.45rem 0.9rem;font:inherit;font-size:0.88rem;font-weight:600;color:var(--text-secondary,#4a5160);background:transparent;border:1px solid var(--border,rgba(1,102,177,0.2));border-radius:999px;cursor:pointer;transition:color 0.2s,border-color 0.2s,background 0.2s,transform 0.2s}.hero-form-back-btn:hover{color:var(--text-primary,#1a1d24);border-color:currentColor;background:rgba(1,102,177,0.06)}.hero-form-back-btn:active{transform:translateX(-2px)}.hero-form-back-btn i{font-size:0.8em}.hero-form-grid .hero-form-trip-fields{grid-column:1 / -1;min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:0.85rem 1.25rem}@media (max-width:640px){.hero-form-grid .hero-form-trip-fields{grid-template-columns:1fr}}.hero-form-trip-fields>.form-row{grid-column:1 / -1}@media (min-width:641px){.hero-form-trip-fields:has(.form-row-arrivee.is-visible)>.form-row:not(.form-row-full):not(.form-row-arrivee){grid-column:auto}.hero-form-trip-fields:has(.form-row-arrivee.is-visible)>.form-row-arrivee.is-visible{grid-column:auto}}.form-row-passagers-bagages .form-row-inner .stepper{width:100%}.form-row-passagers-bagages .form-row-inner .stepper .stepper-input{flex:1 1 auto;min-width:0}.form-row-passagers-bagages .form-row-inner .stepper{max-width:none}.hp-field{position:absolute !important;left:-9999px !important;top:auto !important;width:1px !important;height:1px !important;overflow:hidden !important}.hero-form .stepper,.form-row-inner .stepper{background:transparent !important;border:none !important;border-radius:0 !important;box-shadow:none !important;gap:0.4rem}.hero-form .stepper-input,.form-row-inner .stepper-input{border:1px solid rgba(1,102,177,0.2) !important;border-radius:999px !important;background:rgba(255,255,255,0.85) !important}.hero-form .stepper-btn,.form-row-inner .stepper-btn{background:transparent !important;border:none !important;border-radius:999px !important;box-shadow:none !important}.hero-form .stepper-btn:hover,.form-row-inner .stepper-btn:hover{background:rgba(1,102,177,0.10) !important}.hero-features .feature-card{transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}.hero-features .feature-card:hover{transform:none !important}
/* ==========================================================================
   FIX AFFICHAGE MOBILE — Formulaire d'accueil / réservation
   Empêche le débordement horizontal (champs coupés sur Android, marges
   asymétriques sur iPhone) tout en gardant Passagers/Bagages côte à côte.
   ========================================================================== */
@media (max-width:960px){
  /* La piste de la grille ne peut plus refuser de rétrécir -> plus de débordement */
  .hero-split .hero-inner{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  /* Sécurité : aucun conteneur du formulaire ne dépasse la largeur de l'écran */
  .hero-form-wrap,.hero-form,.hero-form-grid,.hero-form-trip-fields{min-width:0;max-width:100%}
  .hero-form-grid>*,.hero-form-trip-fields>*{min-width:0}
  /* Ligne Passagers/Bagages : reste en 2 colonnes, mais devient rétractable */
  .form-row-passagers-bagages{gap:0.6rem}
  .form-row-passagers-bagages>.form-row-inner{min-width:0}
  /* Compteurs légèrement plus compacts pour tenir à deux sur écrans étroits */
  .form-row-passagers-bagages .stepper-btn{width:30px;height:42px}
  .form-row-passagers-bagages .stepper-btn:first-child{left:4px}
  .form-row-passagers-bagages .stepper-btn:last-child{right:4px}
  .form-row-passagers-bagages .stepper-input{height:44px;padding-left:38px;padding-right:38px}
}
.hero-form-services-supp-option-icon svg.icon-fill{fill:currentColor !important;stroke:none !important}

/* ── Suggestion de correction du domaine e-mail (js/email-typo.js) ── */
.email-typo-hint{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px}
.email-typo-hint[hidden]{display:none}
.email-typo-accept{background:none;border:none;padding:0;font:inherit;font-weight:700;color:var(--accent,#0b6cf0);text-decoration:underline;cursor:pointer}
.email-typo-accept:hover,.email-typo-accept:focus-visible{opacity:.75}
.email-typo-dismiss{background:none;border:none;padding:0;font:inherit;color:inherit;opacity:.6;text-decoration:underline;cursor:pointer}
.email-typo-dismiss:hover,.email-typo-dismiss:focus-visible{opacity:.9}

/* --- Fix: le composant Google PlaceAutocompleteElement (gmp-place-autocomplete)
   remplace le <input> mais ne recoit AUCUNE regle de largeur (aucune classe,
   aucun style ne cible ce tag), et l'item grid parent n'a pas min-width:0.
   Resultat : le composant garde sa largeur intrinseque et deborde de la carte. */
.hero-form-trip-fields > .form-row.form-row-adresse{min-width:0}
#hero_depart,#hero_arrivee,
gmp-place-autocomplete{
  display:block;
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border-radius:var(--radius-md);
  position:relative;
}

/* --- Carte "Votre tarif" : prix + CTA + reassurance regroupes visuellement ---
   Nom de classe dedie (tarif-price-card, distinct de .tarif-card utilise par
   la page /tarifs) pour ne heriter d'aucune regle existante, notamment le
   display:flex en ligne de .tarif-card qui forcait prix/bouton/texte cote a cote. */
.tarif-price-card{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  background:#eaf3fb;
  border:1px solid #cfe3f7;
  border-radius:14px;
  padding:0.7rem 0.7rem 0.7rem 1rem;
  text-align:left;
  box-sizing:border-box;
}
.tarif-price-card .tarif-indicatif-badge{
  display:block;
  width:auto;
  padding:0;
  margin-bottom:0;
  background:transparent;
  border:none;
}
.tarif-price-card .tarif-indicatif-label{
  display:block;
  font-size:0.6875rem;
  font-weight:700;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:#6b7280;
  margin-bottom:0.1rem;
}
.tarif-price-card .tarif-indicatif-value{
  display:block;
  font-size:1.35rem;
  font-weight:800;
  color:#0166B1;
  line-height:1.2;
  white-space:nowrap;
}
.tarif-price-card-btn{
  display:inline-block;
  width:auto;
  flex-shrink:0;
  padding:0.6rem 1.1rem;
  font-family:inherit;
  font-size:0.8125rem;
  font-weight:700;
  color:#fff;
  background:#0166B1;
  border:none;
  border-radius:999px;
  cursor:pointer;
  transition:background var(--transition),transform var(--transition);
  box-sizing:border-box;
  white-space:nowrap;
}
.tarif-price-card-btn:hover{background:#014F88;transform:translateY(-1px)}
.tarif-price-card-btn.is-hidden{display:none !important}
.tarif-price-card-note{
  margin:0.4rem 0 0;
  font-size:0.6875rem;
  color:#6b7280;
  line-height:1.3;
  text-align:center;
}


