:root{--primary: #f4a03f;--primary-dark: #e89430;--secondary: #0d3b66;--secondary-light: #1a4d7a;--accent: #f39c12;--text-dark: #1a1a1a;--text-light: #666;--bg-light: #f0f2f5;--bg-alt: #e8ecf0;--white: #fff;--shadow: 0 .25rem 1.25rem rgba(0, 0, 0, .08);--shadow-hover: 0 .5rem 1.875rem rgba(0, 0, 0, .15);--transition: all .3s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{overflow-x:hidden;max-width:100vw}body{font-family:Roboto,sans-serif;line-height:1.6;color:var(--text-dark);background:var(--bg-light)}img,video,iframe{max-width:100%;height:auto;display:block}.container{max-width:75rem;margin:0 auto;padding:0 1rem}.header{position:fixed;inset:0 0 auto;background:#fffffffa;-webkit-backdrop-filter:blur(.625rem);backdrop-filter:blur(.625rem);box-shadow:var(--shadow);z-index:100;transition:var(--transition);min-height:6rem}.header.scrolled{background:#fff;box-shadow:0 .125rem 1.25rem #0000001a}.navbar{padding:.9375rem 0}.navbar__content{display:flex;justify-content:space-between;align-items:center;padding:0 1rem}.logo{transition:var(--transition);max-width:50%}.logo:hover{transform:scale(1.05)}.logo__image{height:7rem;width:auto}.nav-menu{position:fixed;inset:8rem 0 auto;flex-direction:column;background:var(--white);max-height:0;padding:0 1.25rem;box-shadow:0 .3125rem 1.25rem #00000026;transition:max-height .4s ease,padding .4s ease;z-index:9999;overflow:hidden;list-style:none}.nav-menu.active{max-height:50vh;padding:1.875rem 1.25rem}.nav-menu__item{text-align:center;opacity:0;transform:translateY(-1.25rem);transition:opacity .3s ease,transform .3s ease}.nav-menu.active .nav-menu__item{opacity:1;transform:translateY(0)}.nav-menu.active .nav-menu__item:nth-child(1){transition-delay:.1s}.nav-menu.active .nav-menu__item:nth-child(2){transition-delay:.2s}.nav-menu.active .nav-menu__item:nth-child(3){transition-delay:.3s}.nav-menu.active .nav-menu__item:nth-child(4){transition-delay:.4s}.nav-menu__link{text-decoration:none;color:var(--secondary);font-weight:500;transition:var(--transition);padding:1.25rem 0;display:block;font-size:1.2rem}.nav-menu__link:hover{color:var(--primary)}.hamburger{display:flex;flex-direction:column;justify-content:center;align-items:center;background:none;border:none;cursor:pointer;padding:.5rem;z-index:10000;height:1.5rem;width:1.875rem;position:relative}.hamburger__line{position:absolute;width:100%;height:.125rem;background:var(--secondary);transition:var(--transition);border-radius:.125rem;left:0}.hamburger__line:nth-child(1){top:.25rem}.hamburger__line:nth-child(2){top:.6875rem}.hamburger__line:nth-child(3){top:1.125rem}.hamburger.active .hamburger__line:nth-child(1){top:.6875rem;transform:rotate(45deg)}.hamburger.active .hamburger__line:nth-child(2){opacity:0}.hamburger.active .hamburger__line:nth-child(3){top:.6875rem;transform:rotate(-45deg)}.hero{margin-top:5rem;padding:5rem 0;background:linear-gradient(135deg,#0d3b66d9,#1a4d7abf),url(/assets/images/villa-piscine-mer-2.png) center top / cover no-repeat;background-size:150%;color:var(--white);text-align:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="2" fill="rgba(255,255,255,0.1)"/></svg>');background-size:3.125rem;opacity:.3;animation:moveBackground 30s linear infinite}@keyframes moveBackground{to{transform:translate(3.125rem,3.125rem)}}.hero__content{position:relative;z-index:1;padding:0 1rem}.hero__title{font-size:1.8rem;margin-bottom:1.5625rem;font-weight:700;text-shadow:.125rem .125rem .25rem rgba(0,0,0,.5);animation:fadeInUp .8s ease;word-wrap:break-word}@keyframes fadeInUp{0%{opacity:0;transform:translateY(1.875rem)}}.hero__description{font-size:1.05rem;margin-bottom:2.1875rem;opacity:.95;animation:fadeInUp 1s ease .2s backwards;word-wrap:break-word}.btn{display:inline-block;padding:.9rem 1.5rem;text-decoration:none;border-radius:3.125rem;font-weight:600;transition:var(--transition);border:none;cursor:pointer;font-size:.95rem;position:relative;overflow:hidden;text-align:center;word-wrap:break-word}.btn:before{content:"";position:absolute;inset:0 auto 0 -100%;width:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:var(--transition);z-index:-1}.btn:hover:before{left:100%}.btn--primary{background:var(--white);color:var(--secondary);box-shadow:0 .25rem .9375rem #0003}.btn--primary:hover{transform:translateY(-.1875rem);box-shadow:0 .5rem 1.5625rem #00000040}.btn--secondary{background:linear-gradient(135deg,var(--primary),var(--accent));color:var(--white);box-shadow:0 .25rem .9375rem #f4a03f4d}.btn--secondary:hover{transform:translateY(-.1875rem);box-shadow:0 .5rem 1.5625rem #f4a03f66}.btn--full-width{width:100%}.about,.values{padding:1rem 0}.about__title,.values__title{text-align:center;font-size:1.8rem;margin-bottom:3.125rem;color:var(--secondary);position:relative;padding-bottom:1.25rem;word-wrap:break-word}.about__title:after,.values__title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:5rem;height:.25rem;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:.125rem}.about__content,.values__content{max-width:56.25rem;margin:0 auto}.about__text,.values__text{font-size:1.05rem;margin-bottom:1.5625rem;line-height:1.8;word-wrap:break-word}.about__text--highlight,.values__text--highlight{font-weight:600;color:var(--secondary);font-size:1.1rem;padding:1rem;background:linear-gradient(135deg,#f4a03f1a,#0d3b660d);border-left:.25rem solid var(--primary);border-radius:.5rem;margin-top:1.875rem;word-wrap:break-word}.about__wrapper{display:flex;flex-direction:column;gap:2rem;align-items:center}.about__image{width:100%;border-radius:.9375rem;box-shadow:var(--shadow);object-fit:cover}.about__image--left{order:-1}.about__image--right{order:3}.about__content{order:2}.values__image{width:100%;border-radius:.9375rem;box-shadow:var(--shadow);margin-bottom:2rem}.services{padding:6.25rem 0;background:var(--bg-alt)}.services__image{width:100%;border-radius:.9375rem;box-shadow:var(--shadow);margin-bottom:2rem}.services__intro{text-align:center;max-width:59.375rem;margin:0 auto .5rem}.services__title{font-size:1.6rem;margin-top:5rem;margin-bottom:1rem;color:var(--secondary);position:relative;padding-bottom:1.25rem;word-wrap:break-word}.services__title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:5rem;height:.25rem;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:.125rem}.services__description{font-size:1rem;margin-bottom:.5rem;color:var(--text-light);line-height:1.8;word-wrap:break-word}.services__cta-text{font-size:2rem;color:var(--primary);font-weight:700;margin-top:2.1875rem;text-shadow:.0625rem .0625rem .125rem rgba(0,0,0,.05);word-wrap:break-word}.services__grid{display:grid;gap:3.125rem;margin-bottom:3.75rem}.services__action{text-align:center}.service-card{background:var(--white);padding:1.5rem;border-radius:.9375rem;box-shadow:var(--shadow);transition:var(--transition);position:relative;overflow:hidden;word-wrap:break-word}.service-card:before{content:"";position:absolute;inset:0 0 auto;height:.3125rem;background:linear-gradient(90deg,var(--primary),var(--accent));transform:scaleX(0);transition:var(--transition)}.service-card:hover:before{transform:scaleX(1)}.service-card:hover{transform:translateY(-.5rem);box-shadow:var(--shadow-hover)}.service-card__icon{margin-bottom:1.5625rem;width:100%}.service-card__icon img{width:100%;max-height:15rem;object-fit:cover;border-radius:.5rem;box-shadow:var(--shadow)}.service-card__title{font-size:1.5rem;margin-bottom:1.25rem;color:var(--secondary);word-wrap:break-word}.service-card__subtitle{font-size:1rem;color:var(--primary);font-weight:600;margin-bottom:1.5625rem;padding:.75rem 1rem;background:linear-gradient(135deg,#f4a03f14,#f39c120d);border-left:.25rem solid var(--primary);border-radius:.375rem;word-wrap:break-word}.service-card__list{list-style:none;margin-bottom:1.875rem}.service-card__item{margin-bottom:1.125rem;padding-left:2.5rem;position:relative;line-height:1.7;word-wrap:break-word}.service-card__item-icon{position:absolute;left:0;top:0;font-size:1.4rem;filter:drop-shadow(.0625rem .0625rem .125rem rgba(0,0,0,.1))}.service-card__footer{font-weight:600;color:var(--secondary);font-size:1.1rem;border-top:.125rem solid var(--primary);padding:1.25rem .9375rem .625rem;margin-top:1.5625rem;background:linear-gradient(135deg,#0d3b660a,#1a4d7a05);border-radius:.375rem}.contact{padding:6.25rem 0}.contact__title{text-align:center;font-size:1.6rem;margin-bottom:1.25rem;color:var(--secondary);position:relative;padding-bottom:1.25rem;word-wrap:break-word}.contact__title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:5rem;height:.25rem;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:.125rem}.contact__intro{text-align:center;font-size:1.1rem;color:var(--text-light);margin-bottom:3.75rem;font-weight:500;word-wrap:break-word}.form{max-width:46.875rem;margin:0 auto;background:var(--white);padding:1.5rem 1rem;border-radius:.9375rem;box-shadow:var(--shadow-hover)}.form__row{display:grid;gap:1.5625rem;margin-bottom:1.5625rem}.form__group{margin-bottom:1.5625rem}.form__label{display:block;margin-bottom:.625rem;font-weight:600;color:var(--text-dark)}.form__required{color:var(--primary)}.form__input{width:100%;padding:.875rem;border:.125rem solid #e0e0e0;border-radius:.5rem;font-family:Roboto,sans-serif;font-size:1rem;transition:var(--transition);background:var(--bg-light)}.form__input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 .25rem #f4a03f26;background:var(--white)}.form__input--textarea{resize:vertical;min-height:7.5rem}.form__message{margin-top:1.5625rem;padding:1.125rem;border-radius:.5rem;text-align:center;display:none;font-weight:500}.form__message.success{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724;border:.125rem solid #28a745}.form__message.error{background:linear-gradient(135deg,#f8d7da,#f5c6cb);color:#721c24;border:.125rem solid #dc3545}.contact-us{padding:3rem 0}.contact-us__title{text-align:center;font-size:1.5rem;margin-bottom:1.25rem;color:var(--secondary);position:relative;padding-bottom:1.25rem}.contact-us__title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:5rem;height:.25rem;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:.125rem}.contact-us__intro{text-align:center;font-size:1rem;color:var(--text-light);margin-bottom:2rem;font-weight:500}.contact-us__content{max-width:46.875rem;margin:0 auto}.contact-info{background:var(--white);padding:1rem;border-radius:.9375rem;box-shadow:var(--shadow-hover)}.contact-info__item{display:flex;flex-direction:column;text-align:center;align-items:center;gap:1rem;padding:1.25rem .75rem;background:linear-gradient(135deg,#f4a03f0d,#0d3b6605);border-radius:.9375rem;transition:var(--transition);margin-bottom:1rem}.contact-info__item:last-child{margin-bottom:0}.contact-info__item:hover{transform:translateY(-.3125rem);box-shadow:var(--shadow)}.contact-info__icon{width:3rem;height:3rem;color:var(--primary);filter:drop-shadow(.125rem .125rem .25rem rgba(0,0,0,.1));transition:var(--transition);flex-shrink:0}.contact-info__icon--instagram{color:transparent;background:radial-gradient(circle farthest-corner at 28% 120%,#fcdf8f -16%,#fbd377 16%,#fa8e37 32%,#f73344 48%,transparent 64%),linear-gradient(0deg,#f73344 16%,transparent 72%),linear-gradient(145deg,#3051f1 -48%,#c92bb7 24%);background-clip:text;-webkit-background-clip:text}.contact-info__item:hover .contact-info__icon{transform:scale(1.1)}.contact-info__item:hover .contact-info__icon:not(.contact-info__icon--instagram){color:var(--primary-dark)}.contact-info__details{display:flex;flex-direction:column;gap:.5rem}.contact-info__label{font-size:1.1rem;color:var(--secondary);font-weight:600}.contact-info__link{font-size:1rem;color:var(--primary);text-decoration:none;font-weight:500;transition:var(--transition);word-break:break-word}.contact-info__link:hover{color:var(--primary-dark)}.footer{background:linear-gradient(135deg,var(--secondary),var(--secondary-light));color:var(--white);padding:3.125rem 0 1.5625rem}.footer__content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;margin-bottom:2.1875rem;text-align:center}.footer__logo{display:flex;justify-content:center;width:100%}.footer__logo-image{height:4rem;border-radius:1rem}.footer__contact{width:100%}.footer__contact-title{font-size:1.125rem;font-weight:600;margin-bottom:1rem}.footer__contact-list{list-style:none;display:flex;flex-direction:column;align-items:center;gap:.875rem}.footer__contact-item{display:flex;justify-content:center;align-items:center;gap:.75rem}.footer__contact-icon{width:1.125rem;height:1.125rem;color:var(--primary);flex-shrink:0}.footer__contact-link{color:var(--white);text-decoration:none;font-size:.9375rem;transition:var(--transition);opacity:.9}.footer__contact-link:hover{color:var(--primary);opacity:1}.footer__social{display:flex;justify-content:center;width:100%}.footer__social-link{transition:var(--transition)}.footer__social-link:hover{transform:scale(1.2)}.footer__social-icon{width:4rem;height:4rem;transition:var(--transition)}.footer__social-icon--instagram{filter:drop-shadow(0 .125rem .25rem rgba(0,0,0,.3))}.footer__social-link:hover .footer__social-icon--instagram{transform:scale(1.2);filter:drop-shadow(0 .25rem .5rem rgba(253,89,73,.5))}.footer__bottom{text-align:center;padding-top:1.5625rem;border-top:.0625rem solid rgba(255,255,255,.15)}.footer__copyright{opacity:.9}.tabs{margin-top:2rem}.tab-buttons{display:flex;background:var(--white);border:.125rem solid var(--bg-alt);border-radius:.5rem;padding:.35rem;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--primary) var(--bg-alt);box-shadow:0 .125rem .5rem #0000000d}.tab-button{padding:.7rem .45rem;cursor:pointer;border:.125rem solid transparent;background:transparent;font-size:.95rem;font-weight:600;color:var(--text-light);transition:var(--transition);white-space:nowrap;flex-shrink:0;border-radius:.375rem}.tab-button.active{color:var(--secondary);background:var(--primary);font-weight:700}.tab-content-container{margin-top:2rem}.tab-content{display:none;padding:1rem;background:var(--white);border-radius:.9375rem;box-shadow:var(--shadow)}.tab-content.active{display:block}.tab-content__inner{display:flex;flex-direction:column;gap:2rem}.tab-content__text h3{font-size:1.8rem;color:var(--secondary);margin-bottom:1rem}.tab-content__text h4{font-size:1.3rem;color:var(--secondary);margin:2rem 0 1rem;font-weight:700}.tab-content__text p{font-size:1.1rem;line-height:1.7;margin-bottom:1.5rem}.tab-content__text ul{list-style:none;padding:0;margin-bottom:1.5rem}.tab-content__text li{position:relative;padding-left:1.5rem;margin-bottom:1rem;font-size:1.05rem;line-height:1.6}.tab-content__text li:before{content:"✓";position:absolute;left:0;color:var(--primary);font-weight:700}.tab-content__text strong{color:var(--secondary);font-weight:600}.tab-content__image{margin-bottom:1.5rem}.tab-content__image img{width:100%;max-height:25rem;border-radius:.5rem;box-shadow:var(--shadow);object-fit:cover}.whatsapp-float{position:fixed;bottom:2rem;right:2rem;width:3.75rem;height:3.75rem;background:#25d366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 .25rem 1rem #25d36666;z-index:1000;transition:var(--transition);animation:pulse 2s infinite}.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 .5rem 1.5rem #25d36699}.whatsapp-icon{width:2.25rem;height:2.25rem;color:#fff}@keyframes pulse{0%,to{box-shadow:0 .25rem 1rem #25d36666}50%{box-shadow:0 .25rem 1.5rem #25d366b3}}@media (min-width: 48rem){.hamburger{display:none}.nav-menu{position:static;display:flex;flex-direction:row;justify-content:flex-end;gap:5rem;max-height:none;padding:0;box-shadow:none;background:transparent}.nav-menu__item{width:auto;opacity:1;transform:translateY(0)}.nav-menu__link{padding:.3125rem 0;font-size:1.3rem;position:relative}.nav-menu__link:after{content:"";position:absolute;inset:auto 0 0;width:0;height:.1875rem;background:linear-gradient(90deg,var(--primary),var(--accent));transition:var(--transition);border-radius:.125rem}.nav-menu__link:hover:after{width:100%}.logo__image{height:8rem}.hero{padding:9rem 0;background:linear-gradient(135deg,#0d3b66d9,#1a4d7abf),url(/assets/images/villa-piscine-mer-2.png) left 50% / cover no-repeat;background-size:100%}.hero__title{font-size:2.8rem}.hero__description{font-size:1.25rem}.about__title,.services__title,.contact__title,.contact-us__title,.values__title{font-size:2.8rem;margin-bottom:2.5rem}.contact-us{padding:6.25rem 0}.contact-us__title{font-size:2.2rem}.contact-us__intro{font-size:1.3rem;margin-bottom:3.75rem}.contact-info{padding:2.1875rem 1.5625rem}.contact-info__item{flex-direction:row;text-align:left;gap:1.875rem;padding:2rem;margin-bottom:1.875rem}.contact-info__link{font-size:1.2rem}.contact__title{font-size:2.2rem}.contact__intro{font-size:1.3rem}.services__description{font-size:1.15rem}.services__cta-text{font-size:3rem}.service-card__title{font-size:2rem}.service-card__subtitle{font-size:1.1rem}.service-card{padding:2.8125rem}.about__text,.values__text{font-size:1.15rem}.about__text--highlight,.values__text--highlight{font-size:1.25rem;padding:1.25rem}.services__grid{grid-template-columns:repeat(auto-fit,minmax(28.125rem,1fr))}.form__row{grid-template-columns:1fr 1fr}.form,.contact-info{padding:3.125rem}.footer__content{flex-direction:row;justify-content:space-between;align-items:center}.footer__logo{justify-content:flex-start;flex:1}.footer__contact{flex:1;text-align:center}.footer__contact-list{align-items:center}.footer__contact-item{justify-content:center}.footer__social{flex:1;justify-content:flex-end}.navbar__content{max-width:75rem}.btn{padding:1rem 2.5rem;font-size:1.05rem}.tab-buttons{justify-content:center;overflow:visible;padding:0 0 .5rem;background:transparent;border:none;border-bottom:.125rem solid var(--bg-alt);box-shadow:none}.tab-button{padding:1rem 1.75rem;font-size:1.2rem;border:none;border-bottom:.1875rem solid transparent;border-radius:0}.tab-button.active{background:transparent;border-bottom-color:var(--primary)}.tab-button:not(.active):hover{background:transparent;border-bottom-color:#f4a03f80}.tab-content{padding:3rem}.tab-content__inner{flex-direction:column;max-width:56.25rem;margin:0 auto}.tab-content__image{margin-bottom:2rem}.tab-content__image img{max-height:31.25rem}.about__wrapper{display:grid;grid-template-columns:1fr 2fr 1fr;gap:2rem;align-items:start}.about__image{max-width:18.75rem;height:25rem}.about__image--left{order:1}.about__content{order:2}.about__image--right{order:3}.values__image{max-width:50rem;margin:0 auto 2rem}}@media (max-width: 48rem){.whatsapp-float{bottom:1.25rem;right:1.25rem;width:3.5rem;height:3.5rem}.whatsapp-icon{width:2rem;height:2rem}}
