.flatpickr-day.nextMonthDay,.flatpickr-day.prevMonthDay{visibility:hidden!important;pointer-events:none!important}.flatpickr-day.fp-hors-saison,.flatpickr-day.fp-hors-saison.flatpickr-disabled,.flatpickr-day.fp-hors-saison.nextMonthDay,.flatpickr-day.fp-hors-saison.prevMonthDay{background:#f0ece6!important;color:#b0a89a!important;text-decoration:line-through!important;opacity:1!important;cursor:not-allowed!important}.flatpickr-day.fp-occupe,.flatpickr-day.fp-occupe.flatpickr-disabled{background:#fff!important;color:#1a5276!important;text-decoration:line-through!important;text-decoration-color:#1A5276!important;text-decoration-thickness:2px!important;opacity:1!important;cursor:not-allowed!important}.flatpickr-day.fp-disponible,.flatpickr-day.fp-disponible.flatpickr-disabled{background:#e8f6f8!important;color:#1a5276!important;font-weight:500!important;border-radius:4px!important;opacity:1!important}.flatpickr-day.fp-disponible:not(.flatpickr-disabled):hover{background:#4aadbc!important;color:#fff!important;cursor:pointer!important}.flatpickr-day.fp-disponible.endRange,.flatpickr-day.fp-disponible.selected,.flatpickr-day.fp-disponible.startRange{background:#1a5276!important;color:#fff!important}.fp-legende{display:flex;gap:16px;flex-wrap:wrap;font-size:.75rem;color:var(--texte-clair);margin-top:8px}.fp-legende span{display:flex;align-items:center;gap:6px}.fp-legende i{display:inline-block;width:14px;height:14px;border-radius:3px;flex-shrink:0}.fp-legende .i-dispo{background:#e8f6f8;border:1px solid #4aadbc}.fp-legende .i-occupe{background:#fff;border:2px solid #1a5276;text-decoration:line-through}.fp-legende .i-hors{background:#f0ece6}:root{--blanc:#ffffff;--blanc-casse:#F8F6F2;--sable:#F7F4EB;--bleu-profond:#0B3E4C;--bleu-turquoise:#1A6372;--bleu-gris:#C9E2E8;--accent-soleil:#fdfcfA;--texte:#0B3E4C;--texte-clair:#4A6C75;--font-titre:'Cormorant Garamond',Georgia,serif;--font-corps:'Inter',system-ui,sans-serif;--radius:14px;--radius-sm:8px;--shadow:0 2px 20px rgba(0, 0, 0, 0.08);--shadow-md:0 8px 32px rgba(0, 0, 0, 0.12);--shadow-lg:0 20px 60px rgba(0, 0, 0, 0.18);--nav-h:90px;--ease:cubic-bezier(0.4, 0, 0.2, 1)}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-corps);font-size:1.05rem;color:var(--texte-clair);background:var(--blanc-casse);line-height:1.75;overflow-x:hidden}img{display:block;max-width:100%;height:auto}a{text-decoration:none;color:inherit}ul{list-style:none}button{cursor:pointer;border:none;background:0 0;font-family:inherit}.container{max-width:1200px;margin:0 auto;padding:0 40px}.section{padding:140px 0}.section-header{text-align:center;margin-bottom:72px}.section-label{display:inline-block;font-size:1rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--bleu-turquoise);margin-bottom:24px}.section-label--light{color:rgba(255,255,255,.55)}.section-header h2{font-family:var(--font-titre);font-size:clamp(3rem, 5vw, 4.4rem);font-weight:300;letter-spacing:-.02em;line-height:1.15;color:var(--texte)}.section-header--light h2{color:var(--blanc)}h2 em{font-style:italic;color:var(--bleu-turquoise)}.section-header--light h2 em{color:var(--accent-soleil)}.hidden{display:none!important}.btn{display:inline-flex;align-items:center;gap:8px;padding:15px 34px;border-radius:var(--radius-sm);font-family:var(--font-corps);font-size:.9rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;transition:all .25s var(--ease);cursor:pointer;white-space:nowrap}.btn-primary{background:var(--bleu-turquoise);color:var(--blanc);box-shadow:0 4px 16px rgba(74,173,188,.35)}.btn-primary:hover{background:var(--bleu-profond);box-shadow:0 6px 24px rgba(26,82,118,.4);transform:translateY(-2px)}.btn-ghost{background:rgba(255,255,255,.12);color:var(--blanc);border:1px solid rgba(255,255,255,.5);backdrop-filter:blur(4px)}.btn-ghost:hover{background:rgba(255,255,255,.22);border-color:var(--blanc)}.btn-outline{background:0 0;color:var(--bleu-turquoise);border:1.5px solid var(--bleu-turquoise)}.btn-outline:hover{background:var(--bleu-turquoise);color:var(--blanc);transform:translateY(-2px);box-shadow:0 4px 16px rgba(74,173,188,.35)}.btn-full{width:100%;justify-content:center}.reveal{opacity:0;transform:translateY(32px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal.visible{opacity:1;transform:none}.reveal-left{opacity:0;transform:translateX(-40px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal-left.visible{opacity:1;transform:none}.reveal-right{opacity:0;transform:translateX(40px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal-right.visible{opacity:1;transform:none}.reveal-scale{opacity:0;transform:scale(.96);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal-scale.visible{opacity:1;transform:scale(1)}#nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-h);transition:background .4s var(--ease),box-shadow .4s var(--ease),backdrop-filter .4s}#nav.scrolled{background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.08),0 4px 24px rgba(0,0,0,.06)}.nav-inner{max-width:1200px;margin:0 auto;padding:0 32px;height:100%;display:flex;align-items:center;justify-content:space-between}.nav-logo{display:flex;align-items:center;position:relative;flex-shrink:0;margin-top:14px}.nav-logo-img{height:120px;width:auto;display:block;transition:opacity .35s var(--ease)}.nav-logo-img--light{filter:brightness(0) invert(1);opacity:.92}.nav-logo-img--dark{position:absolute;left:0;top:0;opacity:0;filter:none}#nav.scrolled .nav-logo-img--light{opacity:0}#nav.scrolled .nav-logo-img--dark{opacity:1}.nav-links{display:flex;align-items:center;gap:36px}.nav-links li a{font-size:.82rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.85);transition:color .25s;position:relative}.nav-links li a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1.5px;background:var(--bleu-turquoise);transition:width .25s var(--ease)}.nav-links li a.active::after,.nav-links li a:hover::after{width:100%}.nav-links li a.active,.nav-links li a:hover{color:var(--bleu-turquoise)!important}#nav.scrolled .nav-links li a:not(.nav-cta){color:var(--texte)!important}.nav-cta{background:var(--bleu-turquoise)!important;color:var(--blanc)!important;padding:10px 24px;border-radius:var(--radius-sm);box-shadow:0 2px 12px rgba(74,173,188,.35);transition:background .25s,box-shadow .25s,transform .25s!important}.nav-cta::after{display:none!important}.nav-cta:hover{background:var(--bleu-profond)!important;transform:translateY(-1px)!important;box-shadow:0 4px 20px rgba(26,82,118,.4)!important}.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;padding:4px}.nav-burger span{display:block;width:22px;height:2px;background:var(--blanc);border-radius:2px;transition:all .3s var(--ease);transform-origin:center}#nav.scrolled .nav-burger span{background:var(--texte)}.nav-burger.open span:first-child{transform:translateY(7px) rotate(45deg)}.nav-burger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero{position:relative;height:100vh;min-height:640px;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-slides{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.4s var(--ease);will-change:transform,opacity}.hero-slide.active{opacity:1;animation:kenBurns 4s ease-in-out forwards}@keyframes kenBurns{0%{transform:scale(1)}100%{transform:scale(1.07)}}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1) 0,rgba(0,0,0,.3) 50%,rgba(0,0,0,.55) 100%);z-index:1}.hero-content{position:relative;z-index:2;text-align:center;color:var(--blanc);padding:0 24px;max-width:860px}.hero-surtitre{font-size:.72rem;font-weight:600;letter-spacing:.35em;text-transform:uppercase;opacity:0;transform:translateY(20px);animation:fadeUp .9s .3s var(--ease) forwards;margin-bottom:18px}.hero-content h1{font-family:var(--font-titre);font-size:clamp(3.2rem, 9vw, 6.5rem);font-weight:300;line-height:1;margin-bottom:20px;text-shadow:0 4px 30px rgba(0,0,0,.25);opacity:0;transform:translateY(24px);animation:fadeUp 1s .55s var(--ease) forwards}.hero-accroche{font-family:var(--font-titre);font-size:clamp(1.1rem, 2.5vw, 1.6rem);font-weight:300;font-style:italic;opacity:0;transform:translateY(20px);animation:fadeUp .9s .8s var(--ease) forwards;margin-bottom:44px}.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;opacity:0;transform:translateY(16px);animation:fadeUp .9s 1.05s var(--ease) forwards}@keyframes fadeUp{to{opacity:1;transform:none}}.hero-scroll{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0;animation:fadeIn 1s 1.6s ease forwards}.hero-scroll-mouse{width:24px;height:36px;border:2px solid rgba(255,255,255,.5);border-radius:12px;display:flex;justify-content:center;padding-top:6px}.hero-scroll-wheel{width:3px;height:6px;background:rgba(255,255,255,.7);border-radius:2px;animation:scrollWheel 2s 1.6s ease-in-out infinite}@keyframes scrollWheel{0%,100%{transform:translateY(0);opacity:1}60%{transform:translateY(8px);opacity:0}}@keyframes fadeIn{to{opacity:1}}.hero-dots{position:absolute;bottom:44px;right:40px;z-index:2;display:flex;gap:8px;opacity:0;animation:fadeIn 1s 1.8s ease forwards}.dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.35);border:1px solid rgba(255,255,255,.5);transition:background .3s,transform .3s,width .3s;cursor:pointer}.dot.active{background:var(--blanc);width:22px;border-radius:4px;border-color:transparent}.intro-section{background:var(--blanc);padding:80px 0;border-bottom:1px solid rgba(0,0,0,.05)}.intro-inner{display:flex;align-items:center;gap:80px}.intro-texte{flex:1}.intro-quote{font-family:var(--font-titre);font-size:clamp(1.15rem, 2.2vw, 1.55rem);font-weight:300;font-style:italic;line-height:1.65;color:var(--bleu-profond);position:relative;padding-left:24px}.intro-quote::before{content:'';position:absolute;left:0;top:6px;width:3px;height:calc(100% - 12px);background:var(--bleu-turquoise);border-radius:2px}.intro-chiffres{display:flex;align-items:center;gap:0;flex-shrink:0}.intro-chiffre{display:flex;flex-direction:column;align-items:center;padding:0 36px;text-align:center}.intro-num{font-family:var(--font-titre);font-size:clamp(2rem, 3.5vw, 3rem);font-weight:300;color:var(--bleu-turquoise);line-height:1;margin-bottom:6px}.intro-label{font-size:.7rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--texte-clair)}.intro-sep{width:1px;height:44px;background:rgba(0,0,0,.1);flex-shrink:0}.villa-section{background:var(--blanc-casse);padding-top:0;padding-bottom:110px}.villa-fullwidth{margin-bottom:80px}.villa-fullwidth-img{position:relative;width:100%;overflow:hidden}.villa-fullwidth-img img{width:100%;height:clamp(340px,55vw,640px);object-fit:cover;object-position:center 60%;display:block}.villa-fullwidth-caption{position:absolute;bottom:24px;right:32px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);color:var(--bleu-profond);font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;padding:8px 16px;border-radius:6px;box-shadow:var(--shadow)}.villa-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:90px;align-items:center}.villa-text .section-label{margin-bottom:10px}.villa-text h2{font-family:var(--font-titre);font-size:clamp(2.8rem, 4.5vw, 4rem);font-weight:300;line-height:1.2;margin-bottom:28px}.villa-text p{color:var(--texte-clair);line-height:2;margin-bottom:24px;font-size:1.05rem;letter-spacing:.01em;text-align:justify;hyphens:auto}.villa-text .btn{margin-top:20px}.villa-photo-single{width:100%;height:560px;border-radius:var(--radius);overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.14)}.villa-photo-single img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);display:block}.villa-photo-single:hover img{transform:scale(1.04)}.histoire-fullwidth{position:relative;overflow:hidden;padding:80px 0;background-color:var(--bleu-profond)}.histoire-inner{display:grid;grid-template-columns:1fr 1.05fr;gap:80px;align-items:center;max-width:1200px;margin:0 auto;padding:0 40px}.histoire-photo{width:100%;height:520px;border-radius:var(--radius);overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.35)}.histoire-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);display:block}.histoire-photo:hover img{transform:scale(1.04)}.histoire-content{position:relative;z-index:2;color:var(--blanc)}.histoire-content .section-label{margin-bottom:10px}.histoire-content h2{font-family:var(--font-titre);font-size:clamp(3rem, 5vw, 4.4rem);font-weight:300;line-height:1.15;margin-bottom:20px;color:var(--blanc)}.histoire-content h2 em{color:var(--accent-soleil)}.histoire-sep{width:60px;height:1px;background:rgba(255,255,255,.3);margin-bottom:30px}.histoire-texte p{font-size:clamp(1.05rem, 2vw, 1.15rem);line-height:1.7;color:rgba(255,255,255,.85);margin-bottom:20px;text-align:justify;hyphens:auto}.histoire-texte p:last-child{margin-bottom:40px}.histoire-piliers{display:flex;gap:24px;margin-top:48px;flex-wrap:wrap}.histoire-pilier{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;min-width:110px;text-align:center;padding:20px 16px;border-radius:var(--radius);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(6px);transition:background .3s,transform .3s var(--ease)}.histoire-pilier:hover{background:rgba(255,255,255,.16);transform:translateY(-3px)}.histoire-pilier-num{font-family:var(--font-titre);font-size:1.8rem;font-weight:300;color:var(--accent-soleil);line-height:1}.histoire-pilier-label{font-size:.68rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.65)}.galerie-section{background:var(--blanc);padding:140px 0 0}.galerie-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:56px}.galerie-header h2{font-family:var(--font-titre);font-size:clamp(2.8rem, 4.5vw, 4rem);font-weight:300;line-height:1.15}.galerie-nav{display:flex;align-items:center;gap:16px;padding-bottom:8px}.galerie-counter{font-size:.78rem;font-weight:500;letter-spacing:.12em;color:var(--texte-clair);min-width:44px;text-align:center}.galerie-btn{width:48px;height:48px;border-radius:50%;background:var(--blanc-casse);border:1.5px solid rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .2s}.galerie-btn:hover{background:var(--bleu-turquoise);border-color:var(--bleu-turquoise);transform:scale(1.08)}.galerie-btn:hover svg{stroke:var(--blanc)}.galerie-btn svg{width:20px;height:20px;stroke:var(--texte);transition:stroke .25s}.galerie-btn:disabled{opacity:.3;pointer-events:none}.galerie-strip-wrap{position:relative;overflow:hidden}.galerie-strip{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0 40px 40px;cursor:grab;user-select:none}.galerie-strip::-webkit-scrollbar{display:none}.galerie-strip::after{content:'';flex-shrink:0;width:50vw}.galerie-strip.is-dragging{cursor:grabbing;scroll-behavior:auto}.galerie-strip.is-dragging .gal-item{pointer-events:none}.galerie-strip-wrap::after,.galerie-strip-wrap::before{content:'';position:absolute;top:0;bottom:40px;width:80px;z-index:2;pointer-events:none}.galerie-strip-wrap::before{left:0;background:linear-gradient(to right,var(--blanc),transparent)}.galerie-strip-wrap::after{right:0;background:linear-gradient(to left,var(--blanc),transparent)}.gal-item{flex-shrink:0;width:38vw;height:62vh;min-height:380px;max-height:580px;scroll-snap-align:start;position:relative;overflow:hidden;cursor:pointer;background:#e0e0e0;border-radius:4px}.gal-item.gal-wide{width:58vw}.gal-item.gal-tall{width:28vw}.gal-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease);display:block;pointer-events:none;will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0)}.gal-item:hover img{transform:scale(1.06)}.gal-hover{position:absolute;inset:0;background:rgba(0,0,0,0);display:flex;align-items:center;justify-content:center;transition:background .35s var(--ease)}.gal-hover svg{width:44px;height:44px;color:var(--blanc);opacity:0;transform:scale(.7);transition:opacity .3s,transform .3s var(--ease)}.gal-item:hover .gal-hover{background:rgba(0,0,0,.3)}.gal-item:hover .gal-hover svg{opacity:1;transform:scale(1)}.gal-caption{display:none;position:absolute;bottom:0;left:0;right:0;padding:40px 22px 18px;background:linear-gradient(0deg,rgba(0,0,0,.55) 0,transparent 100%);color:rgba(255,255,255,.9);font-size:.8rem;font-style:italic;font-family:var(--font-titre);letter-spacing:.04em;opacity:0;transition:opacity .35s}.gal-item:hover .gal-caption{opacity:1}.lightbox{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.94);display:flex;align-items:center;justify-content:center;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .3s var(--ease)}.lightbox.open{opacity:1;pointer-events:all}.lightbox-img-wrap{max-width:92vw;max-height:82vh;display:flex;align-items:center;justify-content:center}.lightbox-img-wrap img{max-width:92vw;max-height:82vh;object-fit:contain;border-radius:var(--radius-sm);box-shadow:0 24px 80px rgba(0,0,0,.5);transition:opacity .25s}.lightbox-img-wrap img.loading{opacity:0}.lightbox-caption{color:rgba(255,255,255,.55);font-size:.85rem;margin-top:18px;font-style:italic;letter-spacing:.03em}.lightbox-close{position:absolute;top:20px;right:24px;width:40px;height:40px;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--blanc);font-size:1rem;opacity:.65;transition:opacity .2s,background .2s;display:flex;align-items:center;justify-content:center}.lightbox-close:hover{opacity:1;background:rgba(255,255,255,.1)}.lightbox-next,.lightbox-prev{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--blanc);font-size:1.6rem;opacity:.55;transition:opacity .2s,background .2s;display:flex;align-items:center;justify-content:center;line-height:1}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-next:hover,.lightbox-prev:hover{opacity:1;background:rgba(255,255,255,.1)}.lightbox-counter{position:absolute;top:28px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.4);font-size:.78rem;letter-spacing:.1em}.equip-section{background:var(--blanc-casse)}.equip-icones{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:60px}.equip-ico{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 12px 22px;background:var(--blanc);border-radius:var(--radius);border:1px solid rgba(0,0,0,.04);text-align:center;transition:box-shadow .3s,transform .3s var(--ease)}.equip-ico:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.equip-ico svg{width:28px;height:28px;color:var(--bleu-turquoise);flex-shrink:0}.equip-ico span{font-size:.68rem;font-weight:500;letter-spacing:.06em;color:var(--texte-clair);line-height:1.35}.equip-details{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--blanc);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;border:1px solid rgba(0,0,0,.05)}.equip-col{padding:40px 36px;border-right:1px solid rgba(0,0,0,.05)}.equip-col:last-child{border-right:none}.equip-col h4{font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--bleu-profond);margin-bottom:24px;padding-bottom:14px;border-bottom:1.5px solid var(--bleu-turquoise);display:inline-block}.equip-col ul{display:flex;flex-direction:column;gap:12px}.equip-col li{font-size:.88rem;color:var(--texte-clair);padding-left:16px;position:relative;line-height:1.5}.equip-col li::before{content:'';position:absolute;left:0;top:8px;width:4px;height:4px;border-radius:50%;background:var(--bleu-turquoise)}.citation-section{position:relative;min-height:70vh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:100px 20px}.citation-bg{position:absolute;inset:0;background-image:url('images/ambiance-paresse-amour.webp');background-size:cover;background-position:center bottom;z-index:0}.citation-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(10,30,50,.62) 0,rgba(10,30,50,.72) 100%);z-index:1}.citation-content{position:relative;z-index:2;text-align:center;padding:0 40px;max-width:860px}.citation-line{display:block;width:50px;height:1px;background:rgba(255,255,255,.5);margin:0 auto 40px}.citation-content blockquote{font-family:var(--font-titre);font-size:clamp(2rem, 4.5vw, 3.4rem);font-weight:300;font-style:italic;color:#fff;line-height:1.45;text-shadow:0 2px 24px rgba(0,0,0,.3)}.citation-auteur{display:block;margin-top:40px;font-size:.72rem;font-weight:600;letter-spacing:.35em;text-transform:uppercase;color:rgba(255,255,255,.6)}.situation-section{background:var(--blanc)}.situation-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;align-items:start}.situation-text .section-label{margin-bottom:10px}.situation-text h2{font-family:var(--font-titre);font-size:clamp(2.8rem, 4.5vw, 4rem);font-weight:300;line-height:1.2;margin-bottom:24px}.situation-text p{color:var(--texte-clair);line-height:1.9;margin-bottom:36px;font-size:1rem;text-align:justify;hyphens:auto}.situation-list{display:flex;flex-direction:column;gap:10px}.situation-list li{display:flex;align-items:center;gap:14px;font-size:.92rem;color:var(--texte-clair);padding:11px 14px;border-radius:var(--radius-sm);transition:background .2s}.situation-list li:hover{background:var(--blanc-casse)}.situation-list li svg{width:16px;height:16px;color:var(--bleu-turquoise);flex-shrink:0}.situation-visuel{display:flex;flex-direction:column;gap:24px}.situation-photo-single{border-radius:var(--radius);overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.15)}.situation-photo-single img{width:100%;height:480px;object-fit:cover;display:block}.map-embed{border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.1)}.map-embed iframe{width:100%;height:240px;border:0;display:block}.tarifs-section{position:relative;padding:80px 0;overflow:hidden;background:var(--blanc)}.tarifs-inner{position:relative;z-index:2}.tarifs-subtitle{color:var(--texte-clair);font-size:.88rem;margin-top:12px;letter-spacing:.06em}.tarifs-timeline{display:flex;align-items:flex-end;justify-content:center;gap:10px;margin-bottom:52px;padding:0 20px;height:160px}.tarif-item{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;flex:1;max-width:120px;height:100%;gap:10px;position:relative}.tarif-item--haute .tarif-prix{color:var(--bleu-turquoise)}.tarif-mois{font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--texte-clair);order:3}.tarif-barre{width:100%;border-radius:4px 4px 0 0;order:2;transition:opacity .3s;min-height:8px}.tarif-item:hover .tarif-barre{opacity:.85}.barre-basse{background:rgba(11,62,76,.15);height:40px}.barre-moy{background:rgba(26,99,114,.55);height:75px}.barre-haute{background:var(--bleu-turquoise);height:115px;box-shadow:0 0 24px rgba(26,99,114,.2)}.tarif-prix{font-family:var(--font-titre);font-size:1.4rem;font-weight:400;color:var(--bleu-profond);line-height:1;order:1}.tarifs-cta{text-align:center;margin-top:40px}.avis-section{background:var(--bleu-profond);overflow:hidden}.avis-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:80px;align-items:center}.avis-left .section-label{margin-bottom:10px;color:rgba(255,255,255,.75)}.avis-left h2{font-family:var(--font-titre);font-size:clamp(2.8rem, 4.5vw, 4rem);font-weight:300;color:var(--blanc);line-height:1.2;margin-bottom:20px}.avis-left h2 em{color:rgba(255,255,255,.75)}.avis-sous-titre{font-size:.95rem;color:rgba(255,255,255,.8);line-height:1.75;margin-bottom:28px}.avis-rating{display:flex;align-items:center;gap:8px;margin-bottom:36px}.avis-etoiles{display:flex;gap:3px}.avis-etoiles svg{width:18px;height:18px;fill:rgba(255,255,255,0.9)}.avis-score{font-family:var(--font-titre);font-size:1.1rem;font-weight:400;color:var(--blanc)}.avis-total{font-size:.78rem;color:rgba(255,255,255,.7);letter-spacing:.05em}.avis-nav{display:flex;align-items:center;gap:16px;margin-top:4px}.avis-next,.avis-prev{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1.5px solid rgba(255,255,255,.6);background:0 0;color:var(--blanc);cursor:pointer;transition:background .25s,color .25s;padding:0}.avis-next svg,.avis-prev svg{width:18px;height:18px}.avis-next:hover,.avis-prev:hover{background:rgba(255,255,255,.2);color:#fff}.avis-counter{font-size:.85rem;color:rgba(255,255,255,.7);min-width:48px;text-align:center;font-variant-numeric:tabular-nums}.avis-right{position:relative;min-height:460px}.avis-carousel{position:relative;width:100%;height:100%;min-height:460px}.avis-card{position:absolute;inset:0;background:var(--blanc);border-radius:var(--radius);padding:40px 36px;box-shadow:var(--shadow-md);border:1px solid rgba(0,0,0,.05);display:flex;flex-direction:column;gap:16px;opacity:0;transform:translateX(60px) scale(.97);transition:opacity .55s var(--ease),transform .55s var(--ease);pointer-events:none;z-index:0}.avis-card.active{opacity:1;transform:translateX(0) scale(1);pointer-events:all;z-index:2}.avis-card.exit{opacity:0;transform:translateX(-60px) scale(.97);z-index:1}.avis-quote-icon{width:36px;height:36px;color:var(--bleu-turquoise);opacity:.18;flex-shrink:0}.avis-quote-icon svg{width:36px;height:36px}.avis-stars-card{color:var(--bleu-turquoise);font-size:1rem;letter-spacing:2px;margin-top:-6px}.avis-titre-card{font-family:var(--font-titre);font-size:1.25rem;font-weight:400;font-style:italic;color:var(--bleu-profond);line-height:1.3}.avis-texte-card{font-size:.9rem;color:var(--texte-clair);line-height:1.8;flex:1}.avis-sep{height:1px;background:rgba(0,0,0,.07);margin:4px 0}.avis-auteur-row{display:flex;align-items:center;gap:14px}.avis-avatar{width:44px;height:44px;border-radius:50%;background:var(--bleu-turquoise);color:var(--blanc);font-family:var(--font-titre);font-size:1.15rem;font-weight:300;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid var(--blanc);box-shadow:0 2px 10px rgba(74,173,188,.3)}.avis-auteur{font-size:.9rem;font-weight:600;color:var(--texte);line-height:1.3;word-break:break-word;overflow-wrap:break-word}.avis-meta{font-size:.75rem;color:var(--texte-clair)}.avis-deco{position:absolute;width:80px;height:80px;border-radius:var(--radius);background:rgba(74,173,188,.07);pointer-events:none;z-index:0}.avis-deco-br{bottom:-20px;right:-20px}.avis-deco-tl{top:-20px;left:-20px}.contact-section{display:block;padding:100px 20px;background:var(--blanc-casse)}.contact-inner{max-width:800px;margin:0 auto}.contact-coords-top{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;margin-top:30px;margin-bottom:50px}.contact-item{display:flex;align-items:center;gap:12px;font-size:.95rem;font-weight:500;color:var(--texte);padding:14px 24px;border-radius:50px;background:var(--blanc);border:1px solid rgba(0,0,0,.05);box-shadow:0 4px 15px rgba(0,0,0,.03);transition:transform .3s,box-shadow .3s;text-decoration:none}.contact-item:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,0,0,.06)}.contact-item svg{width:18px;height:18px;color:var(--bleu-turquoise);flex-shrink:0}.contact-form-wrap{background:var(--blanc);padding:60px;border-radius:var(--radius);box-shadow:0 10px 40px rgba(11,62,76,.08);margin:0 auto;max-width:700px}.form-title{font-family:var(--font-titre);font-size:1.6rem;font-weight:400;color:var(--texte);margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid rgba(0,0,0,.07)}.contact-form{display:flex;flex-direction:column;gap:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{display:flex;flex-direction:column;gap:7px}.form-group label{font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--texte-clair)}.form-group input,.form-group select,.form-group textarea{font-family:var(--font-corps);font-size:.95rem;color:var(--texte);background:var(--blanc);border:1px solid var(--bleu-profond);border-radius:var(--radius-sm);padding:13px 16px;transition:border-color .25s,box-shadow .25s,background .25s;outline:0;width:100%;appearance:none}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--bleu-turquoise);box-shadow:0 0 0 4px rgba(74,173,188,.12);background:var(--blanc)}.form-group input:valid:not(:placeholder-shown){border-color:rgba(74,173,188,.4)}.form-group textarea{resize:vertical;min-height:100px;line-height:1.6}.form-group input::placeholder,.form-group textarea::placeholder{color:silver}.form-mention{font-size:.75rem;color:#b0b0b0;text-align:center}.form-success{text-align:center;padding:60px 24px;flex-direction:column;align-items:center;gap:14px}.form-success:not([hidden]){display:flex}.form-success svg{width:52px;height:52px;color:var(--bleu-turquoise)}.form-success h3{font-family:var(--font-titre);font-size:2rem;font-weight:300}.form-success p{color:var(--texte-clair)}#back-to-top{position:fixed;bottom:32px;right:32px;z-index:900;width:44px;height:44px;border-radius:50%;background:var(--blanc);box-shadow:0 4px 20px rgba(0,0,0,.14);border:1px solid rgba(0,0,0,.07);display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(16px);transition:opacity .3s,transform .3s var(--ease),background .2s;pointer-events:none}#back-to-top.visible{opacity:1;transform:none;pointer-events:all}#back-to-top:hover{background:var(--bleu-turquoise)}#back-to-top svg{width:18px;height:18px;color:var(--bleu-turquoise);transition:color .2s}#back-to-top:hover svg{color:var(--blanc)}#chat-widget{position:fixed!important;bottom:28px!important;right:28px!important;top:auto!important;left:auto!important;z-index:1500;display:flex;flex-direction:column;align-items:flex-end;gap:14px}#chat-toggle{width:58px;height:58px;border-radius:50%;background:var(--bleu-profond)!important;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px rgba(74,173,188,.45);transition:transform .25s var(--ease),box-shadow .25s var(--ease);flex-shrink:0}#chat-toggle:hover{transform:scale(1.08);box-shadow:0 10px 32px rgba(74,173,188,.55)}#chat-toggle svg{width:24px;height:24px;color:#fff}#chat-panel{width:360px;max-height:520px;background:#fff;border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.15);display:none;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(16px) scale(.97);transition:opacity .3s var(--ease),transform .3s var(--ease)}#chat-panel.chat-panel--open{display:flex;opacity:1;transform:translateY(0) scale(1)}#chat-header{background:var(--bleu-profond);padding:18px 20px;display:flex;align-items:center;gap:14px;flex-shrink:0}#chat-avatar{width:55px;height:55px;border-radius:50%;background:0 0;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}#chat-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}#chat-title{color:#fff;font-family:var(--font-titre);font-size:1.05rem;font-weight:500;margin:0}#chat-subtitle{color:rgba(255,255,255,.65);font-size:.72rem;margin:2px 0 0}#chat-messages{flex:1;overflow-y:auto;padding:18px 16px;display:flex;flex-direction:column;gap:12px;background:#f7f9fb}.chat-msg{max-width:85%;border-radius:14px;padding:10px 14px}.chat-msg p{font-size:.88rem;line-height:1.55;margin:0}.chat-msg--bot{background:#fff;align-self:flex-start;border-bottom-left-radius:4px;box-shadow:0 1px 4px rgba(0,0,0,.07);color:var(--texte);max-width:90%}.chat-msg--bot p{text-align:left;hyphens:auto;margin-bottom:6px}.chat-msg--bot p:last-child{margin-bottom:0}.chat-msg--bot ul{margin:6px 0 0 0;padding-left:16px;list-style:disc}.chat-msg--bot ul li{font-size:.88rem;line-height:1.55;margin-bottom:3px}.chat-msg--user{background:var(--bleu-turquoise);align-self:flex-end;border-bottom-right-radius:4px;color:#fff}.chat-msg--user p{color:#fff}.chat-msg--typing{display:flex;align-items:center;gap:5px;padding:14px 16px}.chat-msg--typing span{width:7px;height:7px;border-radius:50%;background:var(--bleu-turquoise);animation:typing-bounce 1.2s infinite ease-in-out}.chat-msg--typing span:nth-child(2){animation-delay:.2s}.chat-msg--typing span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,100%,80%{transform:scale(.7);opacity:.5}40%{transform:scale(1);opacity:1}}#chat-suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0 8px}.chat-suggest{background:#fff;border:1.5px solid var(--bleu-turquoise);color:var(--bleu-turquoise);border-radius:20px;padding:6px 13px;font-size:.78rem;font-family:var(--font-corps);cursor:pointer;transition:background .2s,color .2s;white-space:nowrap}.chat-suggest:hover{background:var(--bleu-turquoise);color:#fff}#chat-form-wrap{padding:12px 14px;background:#fff;border-top:1px solid rgba(0,0,0,.06);flex-shrink:0}#chat-form{display:flex;gap:8px;align-items:center}#chat-input{flex:1;border:1.5px solid rgba(0,0,0,.1);border-radius:24px;padding:9px 16px;font-size:.88rem;font-family:var(--font-corps);outline:0;transition:border-color .2s;background:#f7f9fb}#chat-input:focus{border-color:var(--bleu-turquoise);background:#fff}#chat-send{width:38px;height:38px;border-radius:50%;background:var(--bleu-turquoise);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,transform .2s}#chat-send:hover{background:var(--bleu-profond);transform:scale(1.08)}#chat-send:disabled{opacity:.5;cursor:not-allowed;transform:none}#chat-send svg{width:16px;height:16px;color:#fff}@media (max-width:480px){#chat-widget{bottom:16px;right:16px}#chat-panel{width:calc(100vw - 32px)}}.footer{position:relative;background:var(--bleu-profond);padding:80px 0 44px;overflow:hidden}.footer-content{position:relative;z-index:2;text-align:center;color:var(--blanc)}.footer-logo-wrap{display:flex;justify-content:center;margin-bottom:4px}.footer-logo-img{height:150px;width:auto;filter:brightness(0) invert(1);opacity:.9}.footer-lieu{font-size:.72rem;letter-spacing:.25em;text-transform:uppercase;opacity:.5;margin-bottom:36px}.footer-sep{width:40px;height:1px;background:rgba(255,255,255,.25);margin:0 auto 32px}.footer-links{display:flex;gap:36px;justify-content:center;flex-wrap:wrap;margin-bottom:36px}.footer-links a{font-size:.73rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;opacity:.55;transition:opacity .2s}.footer-links a:hover{opacity:1}.footer-copy{font-size:.78rem;opacity:.4;line-height:1.8}.footer-copy a{transition:opacity .2s}.footer-copy a:hover{opacity:.8}@media (max-width:1200px){.equip-icones{grid-template-columns:repeat(4,1fr)}}@media (max-width:1024px){.container{padding:0 24px}.intro-inner{flex-direction:column;gap:44px;align-items:flex-start}.intro-chiffres{width:100%;justify-content:flex-start}.intro-chiffre{padding:0 24px}.intro-chiffre:first-child{padding-left:0}.histoire-inner,.situation-grid,.villa-grid{grid-template-columns:1fr;gap:56px}.villa-photos{order:-1}.situation-photo-single img{height:320px}.avis-layout{grid-template-columns:1fr;gap:48px}.avis-right{min-height:500px}.avis-carousel{min-height:500px}.contact-section{grid-template-columns:1fr}.contact-photo{min-height:400px;max-height:440px}.contact-form-wrap{padding:48px 40px}.gal-item{width:52vw}.gal-item.gal-wide{width:70vw}.gal-item.gal-tall{width:38vw}.galerie-header{flex-direction:column;align-items:flex-start;gap:24px}.histoire-piliers{gap:16px}}@media (max-width:768px){:root{--nav-h:64px}.section{padding:96px 0}.container{padding:0 24px}.nav-links{position:fixed;top:var(--nav-h);left:0;right:0;background:rgba(255,255,255,.98);backdrop-filter:blur(16px);flex-direction:column;align-items:flex-start;padding:28px 32px;gap:6px;box-shadow:0 8px 32px rgba(0,0,0,.12);transform:translateY(-8px);opacity:0;pointer-events:none;transition:transform .3s var(--ease),opacity .3s}.nav-links.open{transform:translateY(0);opacity:1;pointer-events:all}.nav-links li a{color:var(--texte)!important;font-size:.95rem;padding:10px 0;display:block;width:100%}.nav-links li a::after{display:none}.nav-cta{margin-top:8px;display:inline-flex!important}.nav-burger{display:flex}.hero-dots{display:none}.hero-scroll{display:none}.intro-section{padding:56px 0}.intro-chiffres{flex-wrap:wrap;gap:0}.intro-chiffre{padding:12px 20px}.intro-sep{height:24px;width:1px}.villa-fullwidth-img img{height:280px;object-position:center 27%}.villa-photo-single{height:640px}.villa-photo-single img{object-position:center 30%}.histoire-fullwidth{padding:80px 0;min-height:500px}.histoire-content{padding:0 24px}.histoire-piliers{gap:10px}.histoire-pilier{min-width:80px;padding:14px 10px}.galerie-section{padding:96px 0 0}.gal-item{width:78vw;height:52vw;min-height:260px}.gal-item.gal-wide{width:90vw}.gal-item.gal-tall{width:58vw}.galerie-strip{padding:0 24px 32px;gap:6px}.galerie-strip-wrap::after,.galerie-strip-wrap::before{width:40px}.equip-icones{grid-template-columns:repeat(3,1fr)}.equip-details{grid-template-columns:1fr}.equip-col{border-right:none;border-bottom:1px solid rgba(0,0,0,.05)}.equip-col:last-child{border-bottom:none}.equip-col{padding:28px 24px}.tarifs-timeline{gap:6px;height:180px;padding:0 8px}.tarif-prix{font-size:1.1rem}.barre-basse{height:44px}.barre-moy{height:88px}.barre-haute{height:130px}.contact-form-wrap{padding:36px 24px}.form-row{grid-template-columns:1fr}.contact-photo-text{padding:32px 28px}.avis-card{padding:28px 22px}.avis-right{min-height:560px}.avis-carousel{min-height:560px}#back-to-top{bottom:20px;right:20px}}@media (max-width:480px){.container{padding:0 18px}.intro-chiffre{padding:10px 14px}.gal-item{width:88vw}.gal-item.gal-wide{width:96vw}.gal-item.gal-tall{width:70vw}.equip-icones{grid-template-columns:repeat(3,1fr);gap:4px}.equip-ico{padding:18px 8px 14px}.tarifs-timeline{gap:4px}.tarif-mois{font-size:.6rem}.contact-section{display:block}.histoire-piliers{flex-direction:column;align-items:flex-start;gap:10px}.histoire-pilier{width:100%;flex-direction:row;gap:14px;padding:14px 18px}.histoire-pilier-num{font-size:1.4rem;min-width:48px}}