
    @media (max-width: 760px){ nav > #authSection{ display:none !important; } }
    :root{
      --primary:#2563eb;--primary-dark:#1e40af;--primary-soft:#dbeafe;--secondary:#0ea5e9;--ink:#0f172a;--muted:#64748b;--light:#f8fafc;--white:#fff;--line:#e2e8f0;--danger:#dc2626;--success:#16a34a;--shadow-sm:0 6px 18px rgba(15,23,42,.08);--shadow-md:0 18px 45px rgba(15,23,42,.14);--shadow-lg:0 28px 70px rgba(15,23,42,.22);--radius-sm:14px;--radius-md:22px;--radius-lg:34px;--max:1180px;
    }
    *{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:radial-gradient(circle at top left,rgba(37,99,235,.16),transparent 34rem),radial-gradient(circle at top right,rgba(14,165,233,.14),transparent 28rem),linear-gradient(180deg,#f8fafc 0%,#eef4ff 45%,#f8fafc 100%);line-height:1.6;overflow-x:hidden;padding-top:104px}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input{font:inherit}.hidden{display:none!important}
    .notification{position:fixed;top:110px;right:22px;z-index:3000;max-width:340px;padding:1rem 1.2rem;border-radius:999px;background:rgba(37,99,235,.95);color:white;font-weight:800;box-shadow:var(--shadow-md);opacity:0;transform:translateY(-20px);transition:.35s ease;backdrop-filter:blur(16px)}.notification.show{opacity:1;transform:translateY(0)}
    .menu-container{position:fixed;inset:0 0 auto 0;z-index:1000;width:100%;background:linear-gradient(135deg,var(--primary),#38bdf8)!important;border-bottom:1px solid rgba(226,232,240,.85);overflow:visible}.menu-content{width:min(1320px,calc(100% - 24px));min-height:104px;margin:0 auto;display:grid;grid-template-columns:118px minmax(0,1fr) max-content;align-items:center;gap:clamp(.45rem,1vw,1rem);position:relative}.logo-container{display:flex;align-items:center;justify-content:flex-start;min-width:0}.logo-container a{display:inline-flex;align-items:center;justify-content:center}.logo-container .logo,.mobile-header-logo{width:96px;height:96px;object-fit:contain;border-radius:50%;filter:drop-shadow(0 8px 16px rgba(37,99,235,.22));transform-origin:center;animation:frisbeeEntry 3s ease-out forwards,subtlePulse 8s ease-in-out infinite 8s}@keyframes frisbeeEntry{0%{transform:scale(.3) rotate(0deg);opacity:0}50%{transform:scale(1.2) rotate(720deg)}100%{transform:scale(1) rotate(720deg);opacity:1}}@keyframes subtlePulse{0%,100%{transform:scale(1) rotate(0deg)}50%{transform:scale(1.07) rotate(15deg)}}
    .menu-container ul{list-style:none;display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:clamp(.12rem,1.1vw,1rem);width:fit-content;max-width:100%;margin:0 auto;padding:.32rem;border:1px solid rgba(226,232,240,.9);border-radius:999px;background:linear-gradient(135deg,var(--primary),#38bdf8);box-shadow:0 10px 24px rgba(37,99,235,.22);min-width:0}.menu-container li{list-style:none}.menu-container li a,.menu-container ul>a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 clamp(.45rem,.6vw,.72rem);border-radius:999px;font-size:clamp(.6rem,.64vw,.72rem);font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:.035em;transition:.22s ease;white-space:nowrap}.menu-container li a:hover,.menu-container ul>a:hover,.menu-container li a.active-link{color:var(--primary-dark);background:var(--primary-soft)}.icons-container{display:flex;align-items:center;justify-content:flex-end;gap:clamp(.45rem,.8vw,.7rem);min-width:max-content}.account-label,.logout-button,.button,.cta-button,.popup-button,.card-btn,.search-btn,.pill-btn{border:0;cursor:pointer;font-weight:900;transition:.25s ease}.account-label,.logout-button{ border: solid 1px #fff; display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 clamp(.72rem,.9vw,1rem);border-radius:999px;font-size:clamp(.68rem,.72vw,.78rem);color:white;background:linear-gradient(135deg,var(--primary),#38bdf8);box-shadow:0 10px 24px rgba(37,99,235,.22);white-space:nowrap}.logout-button{background:linear-gradient(135deg,#fb7185,#e11d48); border: solid 1px #fff; box-shadow:0 10px 24px rgba(225,29,72,.18)}.account-label:hover,.logout-button:hover,.button:hover,.cta-button:hover,.popup-button:hover,.card-btn:hover,.search-btn:hover,.pill-btn:hover{transform:translateY(-2px)}.icon{width:34px;height:34px;flex:0 0 34px;border-radius:50%;object-fit:cover;box-shadow:var(--shadow-sm)}
    .hamburger{display:none;position:absolute;top:28px;left:20px;z-index:1002;width:44px;height:44px;border-radius:14px;background:white;box-shadow:var(--shadow-sm);cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}.hamburger span{width:22px;height:3px;border-radius:999px;background:var(--primary-dark);transition:.25s ease}.hamburger.active span:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.mobile-menu,.mobile-header-bar{display:none}
    .auth-section{width:100%;background:rgba(248,250,252,.96);border-top:1px solid var(--line);padding:.8rem 1rem;display:flex;justify-content:center;align-items:center}.auth-section form{width:min(var(--max),100%);display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.7rem}.auth-section .form-group{display:flex;align-items:center;gap:.45rem;margin:0}.auth-section label{font-size:.78rem;font-weight:800;color:var(--muted)}.auth-section input{width:180px;min-height:42px;border:1px solid var(--line);border-radius:999px;padding:0 1rem;background:white;outline:none;transition:.2s ease}.auth-section input:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(37,99,235,.12)}.forgot-password{color:var(--primary-dark);font-size:.8rem;font-weight:800}.error-message{color:var(--danger);font-weight:800}.success-message{color:var(--success);font-weight:800}
    .button,.cta-button,.popup-button,.search-btn,.pill-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 1.35rem;border-radius:999px;color:white;background:linear-gradient(135deg,var(--primary),#38bdf8);box-shadow:0 14px 28px rgba(37,99,235,.18);text-decoration:none}.cta-button.secondary{color:white;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);box-shadow:none}
    .hero{position:relative;min-height:760px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,rgba(15,23,42,.48),rgba(37,99,235,.45)),url('photo-principale-accueil.jpg') center/cover no-repeat;isolation:isolate}.hero::after{content:'';position:absolute;inset:auto -10% -18% -10%;height:34%;background:linear-gradient(180deg,transparent,#f8fafc);z-index:-1}.hero-content{width:min(var(--max),calc(100% - 32px));display:grid;grid-template-columns:minmax(0,1.05fr) minmax(290px,.95fr);gap:1.3rem;align-items:center;padding:4rem 0 5rem;position:relative;z-index:2}.hero-text-card,.hero-search-card{border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.24);box-shadow:var(--shadow-lg);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.hero-text-card{color:white;background:linear-gradient(135deg,rgba(37,99,235,.94),rgba(14,165,233,.88));padding:clamp(1.6rem,4vw,3.2rem);overflow:hidden;position:relative}.hero-text-card::before{content:'';position:absolute;width:240px;height:240px;right:-80px;top:-80px;border-radius:50%;background:rgba(255,255,255,.15)}.hero-eyebrow{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .75rem;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);color:#eff6ff;font-weight:900;font-size:.82rem;margin-bottom:1rem;position:relative;z-index:2}h1{font-family:'Playfair Display',serif;font-size:clamp(2.7rem,7vw,6.3rem);line-height:.94;letter-spacing:-.055em;margin-bottom:1.25rem;position:relative;z-index:2}.hero-content p{font-size:clamp(1.05rem,2vw,1.32rem);color:rgba(255,255,255,.9);max-width:760px;font-weight:650;position:relative;z-index:2}.cta-row{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center;margin-top:1.6rem;position:relative;z-index:2}.hero-search-card{background:rgba(255,255,255,.92);padding:1.2rem;display:grid;gap:.9rem}.search-title{font-family:'Playfair Display',serif;font-size:2rem;line-height:1;letter-spacing:-.03em;color:var(--ink)}.search-grid{display:grid;gap:.75rem}.search-field{display:grid;gap:.35rem;padding:.8rem;border-radius:20px;border:1px solid var(--line);background:#f8fafc}.search-field span{color:var(--muted);font-weight:900;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.search-field strong{color:var(--ink);font-size:1rem}.quick-pills{display:flex;gap:.55rem;flex-wrap:wrap}.pill-btn{min-height:38px;padding:0 .8rem;font-size:.82rem;background:#dbeafe;color:#1e3a8a;box-shadow:none}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:.4rem}.hero-stat{padding:.9rem;border-radius:20px;background:white;border:1px solid var(--line);box-shadow:0 10px 24px rgba(15,23,42,.06)}.hero-stat strong{display:block;color:var(--primary-dark);font-size:1.5rem;line-height:1}.hero-stat span{color:var(--muted);font-weight:800;font-size:.78rem}
    .section{padding:5rem 0;position:relative}.section-content{width:min(var(--max),calc(100% - 32px));margin:0 auto;position:relative;z-index:2}.section-header{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}h2{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,5vw,4rem);line-height:1;letter-spacing:-.04em;color:var(--ink);margin-bottom:.75rem}.seo-text,.section-header p{max-width:780px;color:var(--muted);font-size:1.08rem;font-weight:650}
    .modern-carousel-section{padding:clamp(2rem,6vw,5rem) 0;background:radial-gradient(circle at center left,rgba(37,99,235,.13),transparent 28rem),transparent;overflow:hidden}.carousel-container{width:min(1400px,calc(100% - 24px));margin:0 auto;position:relative;overflow:hidden;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);background:rgba(255,255,255,.7);border:1px solid rgba(226,232,240,.9);padding:clamp(.6rem,2vw,1rem) 0}.carousel-track{display:flex;transition:transform .6s cubic-bezier(.4,0,.2,1);will-change:transform}.carousel-card{flex:0 0 clamp(240px,78vw,350px);height:clamp(340px,110vw,470px);margin:0 clamp(6px,2vw,15px);border-radius:clamp(18px,5vw,28px);overflow:hidden;position:relative;box-shadow:var(--shadow-md);transition:transform .4s ease,box-shadow .4s ease;background:white}.carousel-card:hover{transform:translateY(-8px) scale(1.03);z-index:10;box-shadow:var(--shadow-lg)}.carousel-card img{width:100%;height:100%;object-fit:cover}.card-overlay{position:absolute;inset:auto 0 0 0;background:linear-gradient(transparent,rgba(15,23,42,.88));color:white;padding:clamp(3rem,12vw,5rem) clamp(.9rem,4vw,1.2rem) clamp(.9rem,4vw,1.2rem);text-align:left}.card-overlay h3{font-size:clamp(1.05rem,5vw,1.45rem);line-height:1.08;margin-bottom:.35rem}.card-overlay p{font-size:clamp(.82rem,3.5vw,.95rem);opacity:.9;font-weight:700}.price{display:inline-flex;width:fit-content;align-items:center;margin:.8rem 0;padding:.35rem .7rem;border-radius:999px;color:#1e3a8a;background:#dbeafe;font-size:clamp(.85rem,3.5vw,1rem);font-weight:950}.card-btn{display:inline-flex;align-items:center;min-height:40px;padding:0 1rem;border-radius:999px;color:white;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(10px);font-weight:950}.carousel-prev,.carousel-next{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:clamp(40px,11vw,52px);height:clamp(40px,11vw,52px);border:0;border-radius:50%;background:rgba(15,23,42,.58);color:white;font-size:clamp(1.2rem,5vw,1.6rem);cursor:pointer;z-index:20;transition:.25s ease;backdrop-filter:blur(10px)}.carousel-prev:hover,.carousel-next:hover{background:rgba(37,99,235,.88);transform:translateY(-50%) scale(1.05)}.carousel-prev{left:clamp(8px,3vw,20px)}.carousel-next{right:clamp(8px,3vw,20px)}.carousel-dots{text-align:center;margin:1rem auto 0}.carousel-dots span{display:inline-block;width:12px;height:12px;background:#cbd5e1;border-radius:50%;margin:0 6px;cursor:pointer}.carousel-dots .active{background:var(--primary)}
    .owner-banner{width:min(var(--max),calc(100% - 32px));margin:0 auto;border-radius:var(--radius-lg);padding:clamp(1.4rem,4vw,2.4rem);background:linear-gradient(135deg,var(--primary-dark),var(--primary),#38bdf8);color:white;display:grid;grid-template-columns:1.15fr .85fr;gap:1rem;align-items:center;box-shadow:var(--shadow-lg);overflow:hidden;position:relative}.owner-banner::after{content:'';position:absolute;width:280px;height:280px;border-radius:50%;right:-90px;top:-80px;background:rgba(255,255,255,.14)}.owner-banner h2{color:white;position:relative;z-index:2}.owner-banner p{color:rgba(255,255,255,.9);font-weight:700;position:relative;z-index:2}.owner-list{display:grid;gap:.55rem;position:relative;z-index:2}.owner-list span{display:flex;gap:.5rem;align-items:center;color:white;font-weight:900}.owner-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem;position:relative;z-index:2}.owner-actions .cta-button{background:white;color:var(--primary-dark)}.owner-actions .cta-button.secondary{background:rgba(255,255,255,.16);color:white;border:1px solid rgba(255,255,255,.25)}
    .feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.feature-card,.seo-card{border-radius:var(--radius-lg);padding:clamp(1.1rem,2.6vw,1.6rem);background:rgba(255,255,255,.88);border:1px solid rgba(226,232,240,.95);box-shadow:var(--shadow-sm);backdrop-filter:blur(16px);transition:.25s ease}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.feature-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;color:white;background:linear-gradient(135deg,var(--primary),#38bdf8);box-shadow:0 12px 24px rgba(37,99,235,.18);margin-bottom:.9rem;font-size:1.5rem}.feature-card h3{font-size:1.25rem;margin-bottom:.45rem;color:var(--ink)}.feature-card p,.seo-card p{color:var(--muted);font-weight:700}.split-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.image-panel{min-height:420px;border-radius:var(--radius-lg);overflow:hidden;position:relative;box-shadow:var(--shadow-md);isolation:isolate}.image-panel::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(15,23,42,.72));z-index:1}.image-panel img{width:100%;height:100%;object-fit:cover}.image-panel-content{position:absolute;left:1.2rem;right:1.2rem;bottom:1.2rem;z-index:2;color:white}.image-panel-content h3{font-size:1.55rem;margin-bottom:.35rem}.image-panel-content p{color:rgba(255,255,255,.88);font-weight:700;margin-bottom:.8rem}.seo-band{border-radius:var(--radius-lg);padding:clamp(1.4rem,4vw,2.4rem);background:rgba(255,255,255,.88);border:1px solid var(--line);box-shadow:var(--shadow-sm);display:grid;gap:1rem}.keyword-cloud{display:flex;flex-wrap:wrap;gap:.55rem}.keyword-cloud span{display:inline-flex;min-height:36px;align-items:center;padding:0 .8rem;border-radius:999px;color:#1e3a8a;background:#dbeafe;font-weight:900;font-size:.86rem}
    .welcome-popup{display:none;position:fixed;inset:0;z-index:2500;align-items:center;justify-content:center;padding:1rem;background:rgba(15,23,42,.66);backdrop-filter:blur(12px)}.welcome-popup.active{display:flex}.popup-content{position:relative;width:min(560px,100%);max-height:88vh;overflow:auto;padding:2rem;border-radius:var(--radius-lg);background:white;box-shadow:var(--shadow-lg);animation:fadeInUp .45s ease-out}.popup-content h3{font-size:1.65rem;margin-bottom:.6rem}.popup-content p{color:var(--muted);font-weight:700;margin-bottom:1rem}.popup-close{position:absolute;top:1rem;right:1rem;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f1f5f9;cursor:pointer;font-weight:900}.popup-buttons{display:flex;gap:.75rem;flex-wrap:wrap}.cookie-section{margin-top:1.2rem;padding-top:1.2rem;border-top:1px solid var(--line)}.footer{margin-top:5rem;padding:3rem 1rem;background:linear-gradient(135deg,var(--primary),#38bdf8);color:white;text-align:center}.footer-nav,.footer-social{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.footer a{color:#dbeafe;font-weight:800}.footer p{color:rgba(255,255,255,.75);font-weight:650}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
    @media(max-width:1100px){body{padding-top:86px}.menu-content{min-height:86px;grid-template-columns:96px 1fr max-content}.logo-container .logo{width:78px;height:78px}.menu-container ul{gap:.1rem}.menu-container li a,.menu-container ul>a{font-size:.58rem;padding:0 .42rem}.account-label,.logout-button{font-size:.65rem;padding:0 .7rem}.auth-section{display:none!important}.hero{min-height:680px}.hero-content{grid-template-columns:1fr;padding-top:3rem}}
    @media(max-width:768px){
      body{padding-top:72px}

      .menu-container{
        min-height:72px;
        padding:0;
        overflow:visible;
      }

      .hamburger{
        display:flex;
        position:fixed;
        top:14px;
        left:14px;
        z-index:1003;
      }

      .hamburger.active span:nth-child(1){
        transform:rotate(45deg) translate(5px,5px);
      }

      .hamburger.active span:nth-child(2){
        opacity:0;
      }

      .hamburger.active span:nth-child(3){
        transform:rotate(-45deg) translate(5px,-5px);
      }

      .mobile-header-bar{
        display:flex;
        position:fixed;
        top:0;
        left:0;
        right:0;
        height:72px;
        align-items:center;
        justify-content:center;
        gap:.8rem;
        padding:0 72px;
        color:white;
        font-weight:950;
        letter-spacing:.02em;
        z-index:1001;
        pointer-events:none;
        background:linear-gradient(135deg,var(--primary),#38bdf8);
      }

      .mobile-header-logo{
        width:46px!important;
        height:46px!important;
        object-fit:contain;
        border-radius:50%;
      }

      .menu-content{
        display:none!important;
      }

      .mobile-menu{
        display:none;
      }

      .menu-container.active .mobile-menu{
        display:flex!important;
        position:fixed;
        top:0;
        left:0;
        width:100%;
        height:100vh;
        z-index:999;
        background:rgba(255,255,255,.98);
        flex-direction:column;
        align-items:center;
        justify-content:flex-start;
        padding:6rem 1.2rem 2rem;
        overflow-y:auto;
        backdrop-filter:blur(18px);
        -webkit-backdrop-filter:blur(18px);
      }

      .menu-container.active .mobile-menu ul{
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:flex-start!important;
        width:min(420px,100%);
        max-width:100%;
        margin:0 auto 1.5rem;
        padding:0;
        gap:.75rem;
        list-style:none;
        background:transparent!important;
        border:0!important;
        border-radius:0!important;
        box-shadow:none!important;
      }

      .menu-container.active .mobile-menu li{
        display:block;
        width:100%;
      }

      .menu-container.active .mobile-menu li a,
      .menu-container.active .mobile-menu ul > a{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:100%!important;
        min-height:48px;
        padding:.85rem 1rem;
        border-radius:999px;
        color:var(--primary-dark)!important;
        background:#eff6ff!important;
        font-size:.88rem;
        font-weight:900;
        text-align:center;
        white-space:normal;
      }

      .menu-container.active .mobile-menu li a:hover,
      .menu-container.active .mobile-menu li a.active-link{
        color:#fff!important;
        background:linear-gradient(135deg,var(--primary),#38bdf8)!important;
      }

      .menu-container.active .mobile-menu .icons-container{
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        gap:1rem;
        margin-top:1rem;
        width:100%;
      }

      .menu-container.active .mobile-menu .account-container{
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:.7rem;
        width:100%;
      }

      .menu-container.active .mobile-menu .account-label,
      .menu-container.active .mobile-menu .logout-button{
        width:min(280px,100%);
      }

      .menu-container.active .mobile-menu .auth-section{
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        width:min(420px,100%);
        margin-top:1rem;
        padding:1rem;
        background:white;
        border:1px solid var(--line);
        border-radius:24px;
         background: linear-gradient(90deg, #E0F7FA 0%, #87CEEB 100%);
      }

      .menu-container.active .mobile-menu .auth-section form{
        width:100%;
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        gap:.7rem;
      }

      .menu-container.active .mobile-menu .auth-section .form-group{
        width:100%;
        display:flex!important;
        flex-direction:column!important;
        align-items:flex-start!important;
        gap:.35rem;
      }

      .menu-container.active .mobile-menu .auth-section label{
        font-size:.8rem;
      }

      .menu-container.active .mobile-menu .auth-section input{
        width:100%!important;
        min-height:42px;
      }

      .menu-container.active .mobile-menu .auth-section .button,
      .menu-container.active .mobile-menu .auth-section .forgot-password{
        width:100%;
        text-align:center;
      }

      #authSection{
        display:none!important;
      }

      .hero{
        min-height:auto;
      }

      .hero-content{
        grid-template-columns:1fr;
        padding:3rem 0;
      }

      .hero-text-card{
        padding:1.5rem;
      }

      .hero-stats{
        grid-template-columns:1fr;
      }

      .section-header{
        display:block;
      }

      .owner-banner,
      .split-section,
      .feature-grid{
        grid-template-columns:1fr;
      }

      .carousel-prev,
      .carousel-next{
        display:none!important;
      }

      .carousel-card{
        flex-basis:calc(100vw - 44px);
        height:390px;
      }

      .carousel-card:hover{
        transform:none;
      }

      .footer{
        margin-top:2rem;
      }
    }
    @media(max-width:480px){
      h1{font-size:2.65rem}
      .hero-content p{font-size:1rem}
      .search-title{font-size:1.65rem}
      h2{font-size:2.25rem}

      .button,
      .cta-button,
      .popup-button{
        width:100%;
        min-height:48px;
      }

      .owner-actions .cta-button,
      .cta-row .cta-button{
        width:100%;
      }

      .popup-content{
        padding:1.4rem;
      }

      .mobile-header-name{
        font-size:1.05rem;
      }

      .mobile-header-logo{
        width:40px!important;
        height:40px!important;
      }

      .menu-container.active .mobile-menu{
        padding:5.5rem 1rem 2rem;
      }

      .menu-container.active .mobile-menu ul,
      .menu-container.active .mobile-menu .auth-section{
        width:100%;
      }

      .menu-container.active .mobile-menu li a{
        font-size:.82rem;
        min-height:46px;
      }
    }
  

/* === Weekend Escape unified auth + mobile menu patch === */
.google-login-button {
  gap: .45rem;
  background: linear-gradient(135deg, #ffffff, #eef6ff) !important;
  color: #1e40af !important;
  border: 1px solid rgba(37,99,235,.18) !important;
  box-shadow: 0 10px 24px rgba(15,23,42,.10) !important;
}
.google-login-button::before {
  content: "G";
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  color: #2563eb;
  font-weight: 950;
  box-shadow: 0 4px 12px rgba(15,23,42,.12);
}

@media (max-width: 1120px) {
  .hamburger {
    display: flex !important;
    position: fixed !important;
    top: 15px !important;
    left: 15px !important;
    width: 56px !important;
    height: 56px !important;
    background: #ffffff !important;
    border-radius: 16px !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 6px !important;
    cursor: pointer !important;
    z-index: 2147483647 !important;
    box-shadow: 0 8px 25px rgba(0,0,0,0.25) !important;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
  }
  .hamburger span {
    width: 26px !important;
    height: 4px !important;
    background: #111827 !important;
    border-radius: 999px !important;
    transition: 0.25s ease !important;
  }
  .hamburger.active span:nth-child(1) {
    transform: translateY(10px) rotate(45deg) !important;
  }
  .hamburger.active span:nth-child(2) {
    opacity: 0 !important;
  }
  .hamburger.active span:nth-child(3) {
    transform: translateY(-10px) rotate(-45deg) !important;
  }
  .menu-container.active .mobile-menu,
  .mobile-menu {
    z-index: 2147483646 !important;
  }
  .menu-container.active .mobile-menu {
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    height: 100dvh !important;
    padding: 96px 16px 30px !important;
    background:
      radial-gradient(circle at top left, rgba(37,99,235,.18), transparent 20rem),
      linear-gradient(180deg, rgba(255,255,255,.98), rgba(238,246,255,.98)) !important;
    backdrop-filter: blur(22px) !important;
    -webkit-backdrop-filter: blur(22px) !important;
    overflow-y: auto !important;
  }
  .mobile-menu ul {
    width: min(520px, 100%) !important;
    margin: 0 auto !important;
    padding: 1rem !important;
    display: grid !important;
    gap: .55rem !important;
    border-radius: 30px !important;
    background: linear-gradient(135deg, #2563eb, #38bdf8) !important;
    box-shadow: 0 18px 45px rgba(15,23,42,.18) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
  }
  .mobile-menu ul a {
    width: 100% !important;
    min-height: 52px !important;
    justify-content: center !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    font-weight: 950 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
  }
  .mobile-menu ul a:hover,
  .mobile-menu ul a.active-link {
    color: #1e40af !important;
    background: #dbeafe !important;
  }
  .mobile-menu .icons-container,
  .mobile-menu .auth-section {
    width: min(520px, 100%) !important;
    margin: 1rem auto 0 !important;
  }
}
/* === FIX INDEX: menu mobile identique à add-accommodation === */
@media (max-width: 1120px) {
  .menu-container.active .mobile-menu {
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    height: 100dvh !important;
    padding: 96px 16px 30px !important;
    background:
      radial-gradient(circle at top left, rgba(37,99,235,.18), transparent 20rem),
      linear-gradient(180deg, rgba(255,255,255,.98), rgba(238,246,255,.98)) !important;
    backdrop-filter: blur(22px) !important;
    -webkit-backdrop-filter: blur(22px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    z-index: 2147483646 !important;
  }

  .menu-container.active .mobile-menu ul {
    display: grid !important;
    width: min(520px, 100%) !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 1rem !important;
    gap: .55rem !important;
    border-radius: 30px !important;
    background: linear-gradient(135deg, #2563eb, #38bdf8) !important;
    box-shadow: 0 18px 45px rgba(15,23,42,.18) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    list-style: none !important;
  }

  .menu-container.active .mobile-menu li a,
  .menu-container.active .mobile-menu ul > a {
    width: 100% !important;
    min-height: 52px !important;
    justify-content: center !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    background: transparent !important;
    font-weight: 950 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
    text-align: center !important;
  }

  .menu-container.active .mobile-menu li a:hover,
  .menu-container.active .mobile-menu li a.active-link {
    color: #1e40af !important;
    background: #dbeafe !important;
  }
}

/* === FINAL INDEX PREMIUM RESPONSIVE PATCH - Booking/Airbnb futuristic style, same blue theme === */
:root{
  --glass: rgba(255,255,255,.78);
  --glass-strong: rgba(255,255,255,.92);
  --blue-glow: 0 24px 70px rgba(37,99,235,.22);
  --soft-glow: 0 18px 45px rgba(14,165,233,.16);
}
html{font-size:16px;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{min-width:320px}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:
    radial-gradient(circle at 18% 12%, rgba(56,189,248,.18), transparent 26rem),
    radial-gradient(circle at 86% 32%, rgba(37,99,235,.15), transparent 24rem),
    radial-gradient(circle at 50% 90%, rgba(14,165,233,.12), transparent 30rem);
}
main,section,.section-content,.hero-content,.menu-content,.owner-banner,.split-section,.feature-grid,.step-grid{min-width:0}
a,button{touch-action:manipulation}
a:focus-visible,button:focus-visible,input:focus-visible{
  outline:3px solid rgba(14,165,233,.55);
  outline-offset:4px;
}
.hero{
  min-height:calc(100svh - 104px);
  background:
    linear-gradient(135deg, rgba(15,23,42,.50), rgba(37,99,235,.50)),
    url('photo-principale-accueil.jpg') center/cover no-repeat;
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 20% 25%, rgba(255,255,255,.20), transparent 18rem),
    linear-gradient(90deg, rgba(15,23,42,.25), transparent 58%);
  z-index:1;
  pointer-events:none;
}
.hero-text-card,.hero-search-card,.feature-card,.seo-card,.seo-band,.carousel-container{
  position:relative;
  overflow:hidden;
}
.hero-text-card::after,.hero-search-card::after,.feature-card::after,.seo-card::after,.step-card::after{
  content:"";
  position:absolute;
  inset:-2px;
  background:linear-gradient(120deg, transparent 0%, rgba(255,255,255,.45) 42%, transparent 70%);
  transform:translateX(-130%);
  transition:transform .9s ease;
  pointer-events:none;
}
.hero-text-card:hover::after,.hero-search-card:hover::after,.feature-card:hover::after,.seo-card:hover::after,.step-card:hover::after{
  transform:translateX(130%);
}
.hero-search-card{
  border:1px solid rgba(255,255,255,.65);
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(238,246,255,.88));
  box-shadow:var(--blue-glow);
}
.search-field{
  position:relative;
  overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
}
.search-field::after{
  content:"›";
  position:absolute;
  right:1rem;
  top:50%;
  transform:translateY(-50%);
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(135deg,var(--primary),#38bdf8);
  color:#fff;
  font-size:1.4rem;
  line-height:1;
  box-shadow:0 10px 22px rgba(37,99,235,.22);
}
.search-field:hover{
  transform:translateY(-3px);
  border-color:rgba(37,99,235,.45);
  background:#fff;
  box-shadow:0 16px 36px rgba(15,23,42,.12);
}
.trust-badges{
  display:flex;
  flex-wrap:wrap;
  gap:.6rem;
  margin-top:1.1rem;
  position:relative;
  z-index:2;
}
.trust-badges span{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  min-height:38px;
  padding:0 .85rem;
  border-radius:999px;
  color:#eff6ff;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.26);
  font-size:.82rem;
  font-weight:900;
  backdrop-filter:blur(12px);
}
.cta-button,.button,.popup-button,.search-btn,.pill-btn,.card-btn{
  position:relative;
  overflow:hidden;
}
.cta-button::after,.button::after,.popup-button::after,.search-btn::after,.pill-btn::after,.card-btn::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, transparent, rgba(255,255,255,.35), transparent);
  transform:translateX(-120%);
  transition:transform .65s ease;
}
.cta-button:hover::after,.button:hover::after,.popup-button:hover::after,.search-btn:hover::after,.pill-btn:hover::after,.card-btn:hover::after{
  transform:translateX(120%);
}
.pill-btn:hover{
  color:white;
  background:linear-gradient(135deg,var(--primary),#38bdf8);
  box-shadow:0 12px 24px rgba(37,99,235,.20);
}
.carousel-container{
  border:1px solid rgba(255,255,255,.72);
  background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(238,246,255,.76));
}
.carousel-track{align-items:stretch}
.carousel-card{
  isolation:isolate;
  transform:translateZ(0);
}
.carousel-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(180deg, rgba(255,255,255,.06), transparent 38%, rgba(15,23,42,.12));
  pointer-events:none;
}
.carousel-card img{
  transform:scale(1.01);
  transition:transform .65s ease, filter .65s ease;
}
.carousel-card:hover img{
  transform:scale(1.08);
  filter:saturate(1.08) contrast(1.04);
}
.card-overlay{z-index:3}
.price{
  box-shadow:0 8px 22px rgba(219,234,254,.35);
}
.feature-grid,.step-grid{
  align-items:stretch;
}
.feature-card,.seo-card,.step-card{
  transform:translateZ(0);
}
.feature-card:hover,.seo-card:hover,.step-card:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 55px rgba(15,23,42,.14);
  border-color:rgba(37,99,235,.22);
}
.how-section{
  background:radial-gradient(circle at top right, rgba(37,99,235,.10), transparent 28rem);
}
.step-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.step-card{
  position:relative;
  overflow:hidden;
  min-height:230px;
  padding:clamp(1.15rem,2.8vw,1.8rem);
  border-radius:var(--radius-lg);
  background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(239,246,255,.86));
  border:1px solid rgba(226,232,240,.95);
  box-shadow:var(--shadow-sm);
  backdrop-filter:blur(16px);
  transition:.28s ease;
}
.step-number{
  display:inline-grid;
  place-items:center;
  width:54px;
  height:54px;
  margin-bottom:1rem;
  border-radius:18px;
  color:#fff;
  font-weight:950;
  background:linear-gradient(135deg,var(--primary-dark),var(--primary),#38bdf8);
  box-shadow:0 14px 28px rgba(37,99,235,.20);
}
.step-card h3{
  font-size:1.35rem;
  margin-bottom:.45rem;
  color:var(--ink);
}
.step-card p{color:var(--muted);font-weight:750}
.owner-banner{
  border:1px solid rgba(255,255,255,.28);
}
.owner-list span,.keyword-cloud span,.hero-stat{
  transition:transform .22s ease, box-shadow .22s ease;
}
.owner-list span:hover,.keyword-cloud span:hover,.hero-stat:hover{
  transform:translateY(-2px);
}
.image-panel img{
  transition:transform .7s ease, filter .7s ease;
}
.image-panel:hover img{
  transform:scale(1.06);
  filter:saturate(1.08);
}
.footer{
  position:relative;
  overflow:hidden;
}
.footer::before{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  left:-140px;
  top:-180px;
  border-radius:50%;
  background:rgba(255,255,255,.12);
}
.footer a:hover{text-decoration:underline;text-underline-offset:4px}
.reveal-ready{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .7s ease, transform .7s ease;
}
.reveal-ready.revealed{
  opacity:1;
  transform:translateY(0);
}

/* Tablet: premium booking-like cards, no horizontal overflow */
@media(max-width:1120px){
  body{padding-top:86px}
  .hero{min-height:auto}
  .hero-content{
    grid-template-columns:1fr;
    gap:1rem;
    padding:3rem 0 4rem;
  }
  .hero-search-card{
    max-width:760px;
    width:100%;
    margin:0 auto;
  }
  .feature-grid,.step-grid,.split-section,.owner-banner{
    grid-template-columns:1fr 1fr;
  }
  .owner-banner{align-items:start}
  .section{padding:4rem 0}
  .menu-container.active .mobile-menu .icons-container{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:.7rem!important;
  }
  .menu-container.active .mobile-menu .auth-section{
    border-radius:28px!important;
    box-shadow:0 18px 45px rgba(15,23,42,.14)!important;
  }
}

/* Mobile: app-like, clear, fast and touch friendly */
@media(max-width:768px){
  body{padding-top:72px}
  .hero{
    min-height:auto;
    align-items:flex-start;
  }
  .hero-content{
    width:min(100% - 22px, var(--max));
    padding:2.2rem 0 2.8rem;
  }
  .hero-text-card,.hero-search-card,.seo-card,.seo-band,.owner-banner{
    border-radius:26px;
  }
  .hero-text-card{
    padding:1.35rem;
  }
  h1{
    font-size:clamp(2.55rem,15vw,4.2rem);
    letter-spacing:-.06em;
  }
  h2{
    font-size:clamp(2.05rem,11vw,3.2rem);
  }
  .hero-content p,.seo-text,.section-header p{
    font-size:1rem;
  }
  .cta-row,.owner-actions,.popup-buttons{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }
  .cta-button,.button,.popup-button{
    width:100%;
    min-height:52px;
  }
  .trust-badges{
    display:grid;
    grid-template-columns:1fr;
  }
  .trust-badges span{
    justify-content:center;
    width:100%;
  }
  .hero-stats{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .hero-stat{
    padding:.75rem .55rem;
    text-align:center;
  }
  .hero-stat strong{
    font-size:clamp(1.1rem,6vw,1.45rem);
  }
  .hero-stat span{
    font-size:.72rem;
  }
  .section{
    padding:3.2rem 0;
  }
  .section-content{
    width:min(100% - 22px, var(--max));
  }
  .section-header{
    display:grid;
    gap:1rem;
  }
  .feature-grid,.step-grid,.split-section,.owner-banner{
    grid-template-columns:1fr;
  }
  .feature-card,.step-card,.seo-card{
    min-height:auto;
  }
  .owner-banner{
    padding:1.25rem;
  }
  .owner-list span{
    align-items:flex-start;
  }
  .modern-carousel-section{
    padding:2.5rem 0;
  }
  .carousel-container{
    width:calc(100% - 12px);
    border-radius:26px;
    padding:.75rem 0 1rem;
  }
  .carousel-track{
    scroll-snap-type:x mandatory;
  }
  .carousel-card{
    flex:0 0 calc(100vw - 34px)!important;
    height:clamp(360px,112vw,470px);
    margin:0 6px;
    scroll-snap-align:center;
  }
  .card-overlay{
    padding:4.4rem 1rem 1rem;
  }
  .card-overlay h3{
    font-size:1.28rem;
  }
  .image-panel{
    min-height:360px;
    border-radius:26px;
  }
  .keyword-cloud span{
    flex:1 1 auto;
    justify-content:center;
    text-align:center;
  }
  .footer-nav,.footer-social{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:.65rem;
  }
  .footer a{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    min-height:42px;
    padding:0 .7rem;
    border-radius:999px;
    background:rgba(255,255,255,.12);
  }
  .menu-container.active .mobile-menu{
    padding:92px 14px 28px!important;
  }
  .menu-container.active .mobile-menu ul{
    width:100%!important;
    max-width:520px!important;
  }
  .menu-container.active .mobile-menu li a,
  .menu-container.active .mobile-menu ul > a{
    min-height:54px!important;
    font-size:.86rem!important;
  }
}
@media(max-width:420px){
  .mobile-header-bar{padding:0 66px}
  .mobile-header-logo{width:38px!important;height:38px!important}
  .hamburger{width:50px!important;height:50px!important}
  .hero-eyebrow{
    width:100%;
    justify-content:center;
    text-align:center;
    font-size:.76rem;
  }
  .quick-pills{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .pill-btn{width:100%}
  .hero-stats{
    grid-template-columns:1fr;
  }
  .carousel-card{
    height:390px;
  }
  .footer-nav,.footer-social{
    grid-template-columns:1fr;
  }
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.001ms!important;
  }
}



/* === Ultra premium final patch: perfectly centered mobile menu + futuristic footer === */
@media (max-width:1120px){
  .menu-container.active .mobile-menu{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;text-align:center!important;}
  .menu-container.active .mobile-menu ul{display:grid!important;grid-template-columns:1fr!important;place-items:center!important;justify-items:center!important;align-items:center!important;width:min(540px,100%)!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;}
  .menu-container.active .mobile-menu li{width:100%!important;display:flex!important;justify-content:center!important;align-items:center!important;margin:0!important;padding:0!important;text-align:center!important;}
  .menu-container.active .mobile-menu li a,.menu-container.active .mobile-menu ul > a{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;max-width:100%!important;margin:0 auto!important;padding-left:1rem!important;padding-right:1rem!important;text-align:center!important;line-height:1.18!important;}
  .menu-container.active .mobile-menu .icons-container,.menu-container.active .mobile-menu .auth-section{text-align:center!important;}
}
.footer{margin-top:5rem!important;padding:0!important;text-align:left!important;background:radial-gradient(circle at 12% 0%,rgba(255,255,255,.18),transparent 24rem),radial-gradient(circle at 92% 12%,rgba(219,234,254,.20),transparent 22rem),linear-gradient(135deg,#1e40af 0%,#2563eb 46%,#38bdf8 100%)!important;color:#fff!important;border-top:1px solid rgba(255,255,255,.25);box-shadow:0 -24px 70px rgba(15,23,42,.16)}
.footer::before,.footer::after{content:"";position:absolute;pointer-events:none;border-radius:999px}.footer::before{width:420px!important;height:420px!important;left:-170px!important;top:-210px!important;background:rgba(255,255,255,.13)!important}.footer::after{width:260px;height:260px;right:-90px;bottom:-120px;background:rgba(15,23,42,.13)}
.footer-shell{position:relative;z-index:2;width:min(var(--max),calc(100% - 32px));margin:0 auto;padding:clamp(2rem,5vw,4rem) 0 1.2rem}.footer-top{display:grid;grid-template-columns:minmax(260px,1.15fr) repeat(3,minmax(160px,.65fr));gap:clamp(1rem,3vw,2rem);align-items:start}
.footer-brand-card{position:relative;overflow:hidden;padding:clamp(1.15rem,3vw,1.6rem);border-radius:30px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);box-shadow:0 22px 55px rgba(15,23,42,.18);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.footer-brand-card::before{content:"";position:absolute;inset:-1px;background:linear-gradient(120deg,transparent,rgba(255,255,255,.18),transparent);transform:translateX(-110%);animation:footerShine 6s ease-in-out infinite;pointer-events:none}@keyframes footerShine{0%,55%{transform:translateX(-110%)}75%,100%{transform:translateX(110%)}}
.footer-brand-head{display:flex;align-items:center;gap:.85rem;margin-bottom:1rem}.footer-logo{width:62px;height:62px;border-radius:50%;object-fit:contain;background:rgba(255,255,255,.18);box-shadow:0 12px 28px rgba(15,23,42,.16)}.footer-brand-title{display:grid;gap:.1rem}.footer-brand-title strong{font-family:'Playfair Display',serif;font-size:1.8rem;line-height:1;letter-spacing:-.04em}.footer-brand-title span,.footer-copy{color:rgba(255,255,255,.82);font-weight:750}.footer-copy{margin:0 0 1.1rem;max-width:520px}
.footer-trust-row{display:flex;flex-wrap:wrap;gap:.55rem}.footer-trust-row span{display:inline-flex;align-items:center;gap:.4rem;min-height:36px;padding:0 .75rem;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);color:#fff;font-weight:900;font-size:.82rem}.footer-column h3{font-size:.92rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.9rem;color:#fff}.footer-links,.footer-contact{display:grid;gap:.55rem}.footer-links a,.footer-contact a{display:inline-flex;align-items:center;gap:.52rem;width:fit-content;min-height:36px;padding:.35rem .65rem;margin-left:-.65rem;border-radius:999px;color:rgba(255,255,255,.86)!important;font-weight:850!important;transition:.22s ease}.footer-links a:hover,.footer-contact a:hover{color:#1e40af!important;background:#dbeafe;text-decoration:none!important;transform:translateX(3px)}
.footer-social-premium{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:.75rem}.footer-social-premium a{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;padding:0!important;margin:0!important;border-radius:16px!important;color:#fff!important;background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.20)!important;box-shadow:0 12px 26px rgba(15,23,42,.12);transition:.24s ease}.footer-social-premium a:hover{color:#1e40af!important;background:#fff!important;transform:translateY(-3px) scale(1.04)!important;text-decoration:none!important}
.footer-cta-card{margin-top:clamp(1.3rem,3vw,2rem);padding:clamp(1rem,2.4vw,1.35rem);border-radius:28px;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.24);box-shadow:0 20px 50px rgba(15,23,42,.14);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.footer-cta-card h3{font-size:1.25rem;margin-bottom:.2rem}.footer-cta-card p{color:rgba(255,255,255,.82);font-weight:750}.footer-cta-actions{display:flex;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}.footer-cta-actions a{min-height:46px;padding:0 1rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:999px;font-weight:950!important;transition:.22s ease}.footer-cta-primary{background:#fff;color:#1e40af!important}.footer-cta-secondary{background:rgba(255,255,255,.14);color:#fff!important;border:1px solid rgba(255,255,255,.24)}.footer-cta-actions a:hover{transform:translateY(-2px);text-decoration:none!important}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.3rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.78);font-weight:750;font-size:.9rem}.footer-bottom a{color:#fff!important;font-weight:900!important;text-decoration:none!important}
@media(max-width:980px){.footer-top{grid-template-columns:1fr 1fr}.footer-brand-card{grid-column:1/-1}.footer-cta-card{align-items:flex-start;flex-direction:column}.footer-cta-actions{width:100%;justify-content:flex-start}}
@media(max-width:640px){.footer-shell{width:min(100% - 22px,var(--max));padding-top:2.4rem}.footer-top{grid-template-columns:1fr;gap:1.25rem;text-align:center}.footer-brand-head{justify-content:center;flex-direction:column;text-align:center}.footer-copy{text-align:center;margin-left:auto;margin-right:auto}.footer-trust-row{justify-content:center}.footer-column h3{text-align:center;margin-bottom:.65rem}.footer-links,.footer-contact{justify-items:center}.footer-links a,.footer-contact a{margin-left:0;width:100%;justify-content:center;background:rgba(255,255,255,.10)}.footer-social-premium{justify-content:center}.footer-cta-card{text-align:center;align-items:center}.footer-cta-actions{display:grid;grid-template-columns:1fr;width:100%}.footer-cta-actions a{width:100%}.footer-bottom{justify-content:center;text-align:center}}



/* === SEO landing pages generated pack === */
.seo-landing-hero{min-height:560px;background:linear-gradient(135deg,rgba(15,23,42,.56),rgba(37,99,235,.52)),url('/photo-principale-accueil.jpg') center/cover no-repeat;display:flex;align-items:center;position:relative;overflow:hidden}
.seo-landing-hero::after{content:"";position:absolute;inset:auto -10% -20% -10%;height:40%;background:linear-gradient(180deg,transparent,#f8fafc)}
.seo-landing-wrap{width:min(var(--max),calc(100% - 32px));margin:0 auto;position:relative;z-index:2}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;color:#dbeafe;font-weight:850;margin-bottom:1rem}
.breadcrumbs a{text-decoration:none;color:#fff}
.seo-hero-card{max-width:900px;padding:clamp(1.5rem,4vw,3rem);border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(37,99,235,.94),rgba(14,165,233,.88));color:#fff;border:1px solid rgba(255,255,255,.26);box-shadow:var(--shadow-lg);backdrop-filter:blur(18px)}
.seo-hero-card h1{font-family:'Playfair Display',serif;font-size:clamp(2.45rem,6vw,5.2rem);line-height:.98;letter-spacing:-.055em;margin:.6rem 0 1rem}
.seo-hero-card p{font-size:clamp(1.02rem,2vw,1.25rem);font-weight:700;color:rgba(255,255,255,.9)}
.seo-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:1rem;align-items:start}
.seo-content-card{border-radius:var(--radius-lg);padding:clamp(1.2rem,3vw,2rem);background:rgba(255,255,255,.9);border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.seo-content-card h2{font-size:clamp(1.9rem,4vw,3rem)}
.seo-content-card h3{font-size:1.35rem;margin:1.35rem 0 .45rem;color:var(--ink)}
.seo-content-card p,.seo-content-card li{color:var(--muted);font-weight:700}
.seo-content-card ul{padding-left:1.2rem;margin:.7rem 0}
.seo-aside{display:grid;gap:1rem;position:sticky;top:120px}
.seo-mini-card{border-radius:26px;padding:1.15rem;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(239,246,255,.86));border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.seo-mini-card h3{margin-bottom:.55rem;color:var(--ink)}
.seo-links{display:grid;gap:.55rem}.seo-links a{display:flex;align-items:center;justify-content:space-between;gap:.7rem;min-height:42px;padding:.55rem .75rem;border-radius:999px;background:#dbeafe;color:#1e40af;font-weight:900}.seo-links a:hover{background:linear-gradient(135deg,var(--primary),#38bdf8);color:#fff}
.faq-item{padding:1rem 0;border-top:1px solid var(--line)}.faq-item:first-child{border-top:0}.faq-item strong{display:block;color:var(--ink);margin-bottom:.35rem}.cta-seo-band{margin-top:1rem;border-radius:var(--radius-lg);padding:clamp(1.3rem,3vw,2rem);background:linear-gradient(135deg,var(--primary-dark),var(--primary),#38bdf8);color:white;display:flex;align-items:center;justify-content:space-between;gap:1rem;box-shadow:var(--shadow-md)}.cta-seo-band h2{color:white;font-size:clamp(1.8rem,4vw,3rem);margin-bottom:.3rem}.cta-seo-band p{color:rgba(255,255,255,.88);font-weight:700}
@media(max-width:900px){.seo-grid{grid-template-columns:1fr}.seo-aside{position:static}.cta-seo-band{display:grid}.seo-landing-hero{min-height:auto;padding:2.8rem 0}.seo-hero-card{border-radius:26px}}
