*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{background-color:#fff;color:#2c2c2c;font-family:Inter,sans-serif;font-weight:300;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{color:#2c2c2c;font-family:Playfair Display,serif;font-weight:400;letter-spacing:.02em;line-height:1.2}h1{font-size:clamp(2.5rem,5vw,4.5rem)}h2{font-size:clamp(1.5rem,3vw,2.5rem)}h3{font-size:clamp(1rem,3vw,1.5rem)}p{font-size:1.125rem;margin-bottom:1.5rem}a{color:inherit;text-decoration:none;transition:.3s ease}img{display:block;height:auto;max-width:100%}.container{margin:0 auto;max-width:1200px;padding:0 2rem}@media(max-width:768px){.container{padding:0 1.5rem}}.section{padding:6rem 0}@media(max-width:768px){.section{padding:4rem 0}}.section-title{margin-bottom:4rem;text-align:center}.section-title h2{margin-bottom:1rem}.section-title .subtitle{color:rgba(44,44,44,.7);font-size:1.125rem;font-weight:300}.text-center{text-align:center}.text-italic{font-style:italic}@media(max-width:1024px){.nav-container{padding:1rem 1.5rem}}@media(max-width:768px){.footer-content{text-align:center}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}.section{padding:4rem 0}.hero-content{padding:0 1.5rem}}@media(max-width:640px){.container{padding:0 1rem}.hero--page{height:auto;min-height:300px}}.footer{background:#000!important;color:#fff;margin-top:0;min-height:100px;padding:6rem 0 2rem;position:relative;width:100%}.footer:before{background:linear-gradient(90deg,transparent,#c9a961,transparent);content:"";height:2px;left:50%;position:absolute;top:0;transform:translateX(-50%);width:80px}.footer .container{max-width:1200px}.footer-content{border-bottom:1px solid hsla(0,0%,100%,.08);display:grid;gap:4rem;grid-template-columns:1.5fr 1fr 1fr;padding-bottom:4rem}@media(max-width:1024px){.footer-content{gap:3rem;grid-template-columns:1fr 1fr}}@media(max-width:768px){.footer-content{gap:3rem;grid-template-columns:1fr;text-align:center}}.footer-section h3{color:#fff;font-family:Playfair Display,serif;font-size:1.125rem;font-weight:400;letter-spacing:.1em;margin-bottom:2rem;padding-bottom:1rem;position:relative;text-transform:uppercase}.footer-section h3:after{background:#c9a961;bottom:0;content:"";height:1px;left:0;position:absolute;width:40px}@media(max-width:768px){.footer-section h3:after{left:50%;transform:translateX(-50%)}}.footer-section p{line-height:1.8;margin-bottom:1rem}.footer-section a,.footer-section p{color:hsla(0,0%,100%,.7);font-size:.9375rem}.footer-section a{display:inline-block;margin-bottom:.5rem;transition:.3s ease}.footer-section a:hover{color:#c9a961;transform:translateX(4px)}.footer-logo{filter:brightness(0) invert(1);height:auto;opacity:.9;width:180px}.footer-company,.footer-logo{margin-bottom:2rem}.footer-company h4{color:#fff;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:400;letter-spacing:.05em;margin-bottom:1rem}.footer-company p{color:hsla(0,0%,100%,.8);font-size:.9375rem;line-height:1.8;max-width:280px}.footer-contact-info p{color:hsla(0,0%,100%,.7);font-size:.9375rem;line-height:1.8;margin-bottom:1rem}.footer-contact-info p a{color:hsla(0,0%,100%,.7);transition:.3s ease}.footer-contact-info p a:hover{color:#c9a961}.footer-social{margin-top:1.5rem}.footer-social a{align-items:center;background:hsla(0,0%,100%,.1);border-radius:50%;display:inline-flex;height:40px;justify-content:center;transition:.3s ease;width:40px}.footer-social a svg{fill:hsla(0,0%,100%,.7);transition:.3s ease}.footer-social a:hover{background:rgba(201,169,97,.2);transform:translateY(-3px)}.footer-social a:hover svg{fill:#c9a961}.footer-intervention p{color:hsla(0,0%,100%,.8);font-size:.9375rem;letter-spacing:.03em;line-height:1.8;margin-bottom:.5rem}.footer-intervention p:last-child{color:hsla(0,0%,100%,.6);font-size:.875rem;font-style:italic}.footer-bottom{align-items:center;display:flex;justify-content:space-between;padding-top:2rem}@media(max-width:768px){.footer-bottom{flex-direction:column;gap:1.5rem;text-align:center}}.footer-bottom p{color:hsla(0,0%,100%,.5);font-size:.8125rem;letter-spacing:.05em}.footer-legal{display:flex;gap:1.5rem}@media(max-width:768px){.footer-legal{flex-wrap:wrap;justify-content:center}}.footer-legal a{color:hsla(0,0%,100%,.5);font-size:.8125rem}.footer-legal a:hover{color:hsla(0,0%,100%,.8)}.btn,.nav-cta{border:none;border-radius:4px;cursor:pointer;display:inline-block;font-family:Inter,sans-serif;font-size:1.125rem;font-weight:400;letter-spacing:.05em;padding:14px 32px;text-align:center;text-transform:uppercase;transition:.3s ease}.btn-primary,.nav-cta{background-color:#c9a961;box-shadow:0 2px 8px rgba(44,44,44,.06);color:#fff}.btn-primary:hover,.nav-cta:hover{background-color:#d3ba7f;box-shadow:0 8px 24px rgba(44,44,44,.12);transform:translateY(-2px)}.btn-primary:active,.nav-cta:active{transform:translateY(0)}.btn-secondary{background-color:transparent;border:1px solid #c9a961;color:#c9a961}.btn-secondary:hover{background-color:#c9a961;color:#2c2c2c}.btn-white{background-color:#d3ba7f;color:#fff}.btn-white:hover{background-color:hsla(42,49%,66%,.9);transform:translateY(-2px)}.card{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(44,44,44,.06);display:flex;flex-direction:column;height:100%;padding:2.5rem;transition:.4s ease}.card:hover{border-top:3px solid #c9a961;box-shadow:0 8px 24px rgba(44,44,44,.12);transform:translateY(-8px)}.card-icon{align-items:center;background:linear-gradient(135deg,#c9a961,#d6be87);border-radius:12px;display:flex;font-size:2rem;height:64px;justify-content:center;margin-bottom:2rem;width:64px}.card-title{color:#2c2c2c;font-size:1.5rem;margin-bottom:1.5rem}.card-description{color:rgba(44,44,44,.7);flex-grow:1;margin-bottom:2rem}.card-link{align-items:center;color:#c9a961;display:inline-flex;font-weight:600;gap:.5rem}.card-link:hover{gap:1rem}.card-link:after{content:"→";transition:.3s ease}.hero{align-items:center;display:flex;justify-content:center;position:relative}.hero:not(.hero--page){box-sizing:border-box;height:var(--hero-height,100%);max-height:var(--hero-height,100%);min-height:var(--hero-height,100%);overflow:clip;padding:0 2rem}@media(max-width:768px){.hero:not(.hero--page){padding:0 1.5rem}}.hero:not(.hero--page) .hero-logo{width:clamp(200px,45vw,500px)}.hero:not(.hero--page) .hero-baseline{margin-bottom:3rem}.hero:not(.hero--page) .hero-content{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:center;padding-top:1.5rem}.hero:not(.hero--page) .scroll-indicator{bottom:2rem;left:0;margin-top:0;position:absolute;right:0;z-index:3}@media(max-width:768px){.hero:not(.hero--page) .hero-subtitle{font-size:clamp(1.2rem,5.5vw,1.75rem)}.hero:not(.hero--page) .btn-white{font-size:.875rem;padding:10px 20px}}@media(max-width:640px){.hero:not(.hero--page) .hero-content{padding-top:1rem}.hero:not(.hero--page) .hero-subtitle{font-size:clamp(1.25rem,6vw,1.65rem)}.hero:not(.hero--page) .btn-white{font-size:.8rem;letter-spacing:.04em;padding:8px 16px}.hero:not(.hero--page) .scroll-indicator{bottom:max(.75rem,env(safe-area-inset-bottom,0px))}}.hero-background{overflow:hidden;z-index:1}.hero-background,.hero-background img{height:100%;left:0;position:absolute;top:0;width:100%}.hero-background img{display:block;max-width:none;object-fit:cover;object-position:center}.hero-overlay{background:linear-gradient(180deg,rgba(44,44,44,.2) 0,rgba(44,44,44,.5));height:100%;left:0;position:absolute;top:0;width:100%;z-index:2}.hero-content{animation:fadeIn .8s ease-out;color:#fff;max-width:900px;padding:0 2rem;position:relative;text-align:center;z-index:3}.hero--page{align-items:flex-end;height:400px;min-height:400px;overflow:hidden}@media(max-width:768px){.hero--page{align-items:flex-end;height:auto;min-height:300px}}.hero--page .hero-content{padding-bottom:2.5rem;padding-top:5.5rem;width:100%}@media(max-width:768px){.hero--page .hero-content{padding-bottom:2rem;padding-top:6.5rem}}.hero--page .hero-title{font-size:clamp(1.75rem,4vw,3rem);line-height:1.2;margin-bottom:1rem}.hero--page .hero-subtitle{font-size:clamp(.875rem,2vw,1.125rem);margin-bottom:0}.hero--compact{height:280px;min-height:280px;overflow:hidden}@media(max-width:768px){.hero--compact{min-height:240px}}.hero-title{color:#e1cc1b;font-family:Playfair Display,serif;font-size:clamp(2.5rem,5vw,5rem);font-weight:400;letter-spacing:.05em;margin-bottom:1.5rem}.hero-logo{aspect-ratio:498/205;display:block;filter:drop-shadow(0 4px 20px rgba(0,0,0,.5));height:auto;margin:0 auto 1.5rem;max-width:90vw;width:500px}@media(max-width:768px){.hero-logo{max-width:80vw;width:300px}}.page-logo{display:block;filter:drop-shadow(0 2px 10px rgba(0,0,0,.3));height:auto;margin:0 auto 2rem;max-width:70vw;width:250px}@media(max-width:768px){.page-logo{max-width:60vw;width:180px}}.hero-subtitle{color:inherit;font-size:clamp(1rem,2.5vw,1.5rem);font-weight:700;letter-spacing:.1em;margin-bottom:2rem;text-transform:uppercase}.hero-baseline{font-size:clamp(.875rem,2vw,1.125rem);font-weight:300;margin-bottom:4rem;opacity:.9}.scroll-indicator{animation:bounce 2s infinite;color:#fff;display:flex;justify-content:center;margin-top:2rem}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.header{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.95);box-shadow:none;left:0;position:fixed;top:0;transition:.3s ease;width:100%;z-index:1000}.header.scrolled{background:hsla(0,0%,100%,.98);box-shadow:0 2px 8px rgba(44,44,44,.06)}.nav-container{align-items:center;display:flex;justify-content:center;margin:0 auto;max-width:1200px;padding:1.5rem 2rem;position:relative}@media(max-width:1024px){.nav-container{justify-content:space-between;padding:1rem 1.5rem}}.nav-menu{align-items:center;display:flex;flex:1;gap:3rem;justify-content:center}@media(max-width:1024px){.nav-menu{display:none}}.nav-link{color:#2c2c2c;font-size:1.125rem;font-weight:400;position:relative;transition:.3s ease}.nav-link:after{background:#c9a961;bottom:-5px;content:"";height:2px;left:0;position:absolute;transition:.3s ease;width:0}.nav-link:hover{color:#c9a961}.nav-link:hover:after{width:100%}.nav-link.active{color:#c9a961}.nav-link.active:after{width:100%}.nav-cta{font-size:.875rem;padding:10px 24px}.menu-toggle{background:none;border:none;cursor:pointer;display:none;padding:1rem;position:relative;z-index:1001}@media(max-width:1024px){.menu-toggle{align-items:center;display:flex;justify-content:center}}.hamburger{position:relative;transition:background-color .3s ease,transform .3s ease}.hamburger,.hamburger:after,.hamburger:before{background-color:#2c2c2c;border-radius:2px;height:3px;width:25px}.hamburger:after,.hamburger:before{content:"";left:0;position:absolute;transition:transform .3s ease,top .3s ease,bottom .3s ease}.hamburger:before{top:-8px}.hamburger:after{bottom:-8px}.menu-toggle.active .hamburger{background-color:transparent}.menu-toggle.active .hamburger:before{top:0;transform:rotate(45deg)}.menu-toggle.active .hamburger:after{bottom:0;transform:rotate(-45deg)}.mobile-menu{background:#fff;box-shadow:-4px 0 20px rgba(44,44,44,.1);height:100vh;max-width:350px;padding:3rem;position:fixed;right:-100%;top:0;transition:right .3s ease;width:100%;z-index:1000}.mobile-menu.active{right:0}@media(max-width:640px){.mobile-menu{max-width:100%;padding:2rem}}.mobile-menu-header{align-items:flex-start;border-bottom:1px solid rgba(44,44,44,.08);display:flex;justify-content:flex-end;padding-bottom:1rem;width:100%}.mobile-menu-logo{display:block;margin-left:auto;max-width:60%}.mobile-menu-logo img{display:block;height:auto;margin-left:auto;width:100%}.mobile-nav{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem}.mobile-nav a{border-radius:8px;color:#2c2c2c;font-size:1.25rem;font-weight:400;padding:1rem 1.5rem;text-decoration:none;transition:.3s ease}.mobile-nav a:hover{background:rgba(201,169,97,.1);color:#c9a961}.mobile-nav a:last-child{background:#c9a961;color:#fff;margin-top:1.5rem;text-align:center}.mobile-nav a:last-child:hover{background:#b8933f;color:#fff}.expertises .container{max-width:1400px}.expertises-grid{display:grid;gap:3rem;grid-template-columns:repeat(4,1fr);margin-top:3rem}@media(max-width:1024px){.expertises-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.expertises-grid{gap:2rem;grid-template-columns:1fr}}.expertise-card{background:#fff;border:1px solid rgba(201,169,97,.15);border-radius:0;display:flex;flex-direction:column;min-height:320px;overflow:hidden;padding:4rem;position:relative;transition:.4s ease}@media(max-width:640px){.expertise-card{min-height:auto;padding:2rem}}.expertise-card:before{background:#c9a961;content:"";height:0;left:0;position:absolute;top:0;transition:.4s ease;width:4px}.expertise-card:hover{border-color:rgba(201,169,97,.3);box-shadow:0 8px 24px rgba(44,44,44,.12);transform:translateY(-6px)}.expertise-card:hover:before{height:100%}.expertise-card:hover .expertise-number{color:rgba(201,169,97,.28)}.expertise-card:hover .expertise-link{color:#c9a961;transform:translateX(6px)}.expertise-number{color:rgba(44,44,44,.18);font-family:Playfair Display,serif;font-size:5rem;font-weight:400;letter-spacing:-.02em;line-height:1;margin-bottom:1.5rem;transition:.3s ease}@media(max-width:768px){.expertise-number{font-size:4rem}}@media(max-width:640px){.expertise-number{font-size:3rem}}.expertise-title{color:#2c2c2c;font-family:Playfair Display,serif;font-size:1.75rem;font-weight:400;letter-spacing:.02em;margin-bottom:1.5rem}.expertise-description{color:rgba(44,44,44,.7);font-size:1rem;line-height:1.8;margin-bottom:2rem}.expertise-link{align-items:center;color:rgba(44,44,44,.7);display:inline-flex;font-family:Inter,sans-serif;font-size:.8125rem;font-weight:600;gap:.5rem;letter-spacing:.1em;margin-top:auto;text-transform:uppercase;transition:.3s ease}.expertise-link:after{background:#c9a961;content:"";display:inline-block;height:1px;transition:.3s ease;width:0}.expertise-link:hover{color:#c9a961}.expertise-link:hover:after{width:40px}.values-grid{display:grid;gap:3rem;grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:1600px}@media(max-width:1024px){.values-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.values-grid{grid-template-columns:1fr}}.values-container{margin:0 auto;max-width:1600px;padding:0 2rem}@media(max-width:768px){.values-container{padding:0 1.5rem}}.certifications-grid{display:grid;gap:2rem;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:1200px}@media(max-width:768px){.certifications-grid{gap:2rem;grid-template-columns:1fr}}.value-card{background:#fff;border:1px solid rgba(44,44,44,.1);border-radius:0;padding:2.5rem;text-align:center;transition:.4s ease}.value-card:hover{border-color:rgba(201,169,97,.3);box-shadow:0 8px 24px rgba(44,44,44,.12);transform:translateY(-4px)}.value-title{color:#2c2c2c;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:400;margin-bottom:1rem}.value-title:first-letter{background:#c9a961;border-radius:4px;color:#fff;display:inline-block;font-size:1.75rem;font-weight:600;line-height:1;padding:.15rem .2rem}.value-description{color:rgba(44,44,44,.7);font-size:.9375rem;line-height:1.8}.lightbox{background-color:rgba(0,0,0,.95);cursor:pointer}.lightbox-content{max-height:90%;max-width:90%;object-fit:contain}.lightbox-close{color:#fff;cursor:pointer;font-size:3rem;font-weight:700;position:absolute;right:2rem;top:2rem;transition:.3s ease;z-index:10000}.lightbox-close:hover{color:#c9a961}.intro{background:#fff}.intro-content{margin:0 auto;max-width:800px;text-align:center}.expertises{background:#f8f6f3}@media(max-width:768px){.expertises .section-title{text-align:center}.expertises .section-title h2{font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:1rem}.expertises .section-title .subtitle{font-size:1rem;line-height:1.5}}.gallery{background:#fff;padding:0}.gallery--realisations{padding-bottom:6rem}.gallery--realisations .gallery-grid{margin:3rem 0 4rem}@media(max-width:768px){.gallery--realisations .gallery-grid{margin:2rem 0 3rem}}.gallery-grid{gap:4rem;grid-template-columns:repeat(2,1fr)!important;margin-top:3rem}@media(max-width:768px){.gallery-grid{gap:2rem;grid-template-columns:1fr!important}}.gallery-item{aspect-ratio:3/2;color:inherit;display:block;position:relative;text-decoration:none}.gallery-item img{transition:.4s ease}.gallery-item .overlay{display:flex;flex-direction:column;height:100%;justify-content:flex-end;left:0;opacity:1;padding:3rem;position:absolute;top:0;transition:.4s ease;width:100%}.gallery-item:hover{color:inherit;text-decoration:none}.gallery-title{bottom:2rem;color:#fff;font-family:Inter,sans-serif;font-size:1.75rem;font-weight:400;left:2rem;margin-bottom:0;position:absolute;right:2rem}.gallery-category{background:rgba(0,0,0,.6);border-radius:4px;color:#c9a961;font-size:.875rem;font-weight:600;left:1rem;letter-spacing:.1em;padding:.5rem 1rem;position:absolute;text-transform:uppercase;top:1rem}.process{background:#f8f6f3}@media(max-width:768px){.process .section-title{text-align:center}.process .section-title h2{font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:1rem}.process .section-title .subtitle{font-size:1rem;line-height:1.5}}.process-timeline{align-items:start;display:flex;gap:1.5rem;justify-content:space-between;margin-top:3rem;position:relative}@media(max-width:1024px){.process-timeline{gap:1rem}}@media(max-width:768px){.process-timeline{flex-direction:column;gap:2rem}}.process-timeline:before{background:#c9a961;content:"";height:2px;left:0;position:absolute;right:50px;top:50px;z-index:0}@media(max-width:768px){.process-timeline:before{display:none}}.process-step{flex:1;padding:0 1rem;position:relative;text-align:center;z-index:1}@media(max-width:1024px){.process-step{padding:0 .5rem}}@media(max-width:768px){.process-step{align-items:center;background:hsla(0,0%,100%,.5);border-left:3px solid #c9a961;border-radius:8px;column-gap:1.5rem;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;padding:1.5rem;row-gap:.5rem;text-align:left}}.process-number{align-items:center;background:#c9a961;border-radius:50%;color:#fff;display:flex;font-family:Playfair Display,serif;font-size:2rem;font-weight:600;height:100px;justify-content:center;margin:0 auto 1.5rem;width:100px}@media(max-width:768px){.process-number{align-self:center;flex-shrink:0;font-size:1.25rem;grid-column:1;grid-row:1/span 2;height:60px;margin:0;width:60px}}.process-title{font-family:Playfair Display,serif;font-size:1.25rem;margin-bottom:.5rem}@media(max-width:1024px){.process-title{font-size:1.125rem}}@media(max-width:768px){.process-title{font-size:1rem;grid-column:2;grid-row:1;margin:0 0 .5rem}}.process-description{color:rgba(44,44,44,.7);font-size:1.125rem;line-height:1.5}@media(max-width:1024px){.process-description{font-size:1rem}}@media(max-width:768px){.process-description{font-size:.9rem;grid-column:2;grid-row:2;line-height:1.4;margin-bottom:0;margin-top:0}}.stats{background-attachment:scroll;background-position:50%;background-size:cover;overflow:hidden;position:relative}@media(min-width:1024px){.stats{background-attachment:fixed}}.stats-overlay{background:rgba(44,44,44,.7);height:100%;left:0;position:absolute;top:0;width:100%}.stats-container{position:relative;z-index:2}.stats-grid{display:grid;gap:4rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stat-item{color:#fff;text-align:center}.stat-number{color:#c9a961;display:block;font-family:Playfair Display,serif;font-size:clamp(3rem,5vw,5rem);font-weight:400;margin-bottom:.5rem}.stat-label{font-size:1.125rem;font-weight:300;letter-spacing:.1em;text-transform:uppercase}.testimonials{background:#f8f6f3}.testimonial-slider{margin:0 auto;max-width:800px}.testimonial-item{padding:4rem;text-align:center}.testimonial-quote{color:#2c2c2c;font-size:1.5rem;font-style:italic;line-height:1.6;margin-bottom:2rem}.testimonial-author{color:rgba(44,44,44,.7);font-size:1.125rem;font-weight:600}.cta-section{background:#2c2c2c;color:#fff;padding:6rem 0;text-align:center}.cta-section h2{color:#fff;margin-bottom:1.5rem}.cta-section p{color:hsla(0,0%,100%,.8);font-size:1.25rem;margin-bottom:4rem}.cta-section .cta-info{color:hsla(0,0%,100%,.6);font-size:.875rem;margin-top:3rem}.cta-section .cta-info a{color:#c9a961}.cta-section .cta-info a:hover{text-decoration:underline}.zone{background:#fff}.section-divider{background:linear-gradient(90deg,transparent,#c9a961,transparent);border:none;height:3px;margin:2rem auto;max-width:200px;opacity:.6}.hero-small{align-items:center;display:flex;height:40vh;justify-content:center;min-height:300px;overflow:hidden;position:relative}@media(max-width:768px){.hero-small{height:30vh;min-height:200px}}.hero-small .hero-content h1{color:#fff;font-family:Playfair Display,serif;font-size:clamp(2rem,4vw,4rem);margin-bottom:1.5rem}.articles-grid{display:grid;gap:4rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:4rem;padding-bottom:4rem}@media(max-width:768px){.articles-grid{gap:3rem;grid-template-columns:1fr}}.article-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px rgba(44,44,44,.06);overflow:hidden;position:relative;transition:.5s ease}.article-card:hover{box-shadow:0 4px 16px rgba(44,44,44,.1);transform:translateY(-5px)}.article-card-link{display:block}.article-card-link,.article-card-link:hover{color:inherit;text-decoration:none}.article-image{height:250px;overflow:hidden;width:100%}.article-image img{height:100%;object-fit:cover;transition:.5s ease;width:100%}.article-card:hover .article-image img{transform:scale(1.05)}.article-content{padding:3rem}.article-meta{align-items:center;display:flex;gap:1rem;margin-bottom:1.5rem}.article-date{color:#c9a961;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.article-title{color:#2c2c2c;font-family:Playfair Display,serif;font-size:1.5rem;line-height:1.4;margin-bottom:1.5rem;transition:.3s ease}.article-card-link:hover .article-title{color:#c9a961}.article-excerpt{color:rgba(44,44,44,.7);line-height:1.7;margin-bottom:2rem}.article-footer{display:flex;flex-wrap:wrap;gap:1.5rem;padding:0 3rem 3rem;position:relative;z-index:2}.article-footer .btn,.article-footer .nav-cta{flex:1;min-width:120px;position:relative;text-align:center;z-index:3}@media(max-width:768px){.article-footer .btn,.article-footer .nav-cta{flex:none;width:100%}}.article-gallery{display:none}.empty-state{color:rgba(44,44,44,.6);padding:6rem 0;text-align:center}.empty-state p{font-size:1.125rem}.article-detail{padding:6rem 0}.article-header{margin-bottom:4rem;text-align:center}.article-detail-title{color:#2c2c2c;font-family:Playfair Display,serif;font-size:clamp(2.25rem,4.5vw,3.75rem);line-height:1.2;margin:0 auto 1.5rem;text-align:center;word-wrap:break-word;hyphens:auto;overflow-wrap:break-word}.article-detail-date{color:rgba(44,44,44,.6);font-size:clamp(.875rem,2vw,1.125rem);letter-spacing:.1em;margin:0;text-transform:uppercase}.article-divider{background:#c9a961;height:4px;margin:0 auto 4rem;width:200px}.article-main-image{margin:0 auto 4rem;max-width:800px}.article-main-image img{border-radius:8px;height:auto;object-fit:cover;width:100%}.article-description{color:rgba(44,44,44,.8);font-size:1.125rem;line-height:1.8;margin-bottom:4rem}.article-video{margin-bottom:4rem}.article-video h2{margin-bottom:2rem}.video-container{background:#000;border-radius:8px;box-shadow:0 4px 16px rgba(44,44,44,.1);height:0;overflow:hidden;padding-bottom:75%;position:relative}.video-container .video-placeholder,.video-container iframe{height:100%;left:0;position:absolute;top:0;width:100%}.video-container .video-placeholder{align-items:center;background:rgba(44,44,44,.8);color:#fff;display:flex;justify-content:center;text-decoration:none;transition:.3s ease}.video-container .video-placeholder:hover{background:rgba(44,44,44,.9);color:#c9a961}.article-gallery-section{margin-bottom:4rem}.article-gallery-section h2{margin-bottom:3rem}.gallery-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}@media(max-width:768px){.gallery-grid{gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}.gallery-item{aspect-ratio:4/3;border-radius:8px;cursor:pointer;overflow:hidden}.gallery-item img{height:100%;object-fit:cover;transition:.5s ease;width:100%}.gallery-item:hover img{opacity:.9;transform:scale(1.05)}.lightbox{align-items:center;background:rgba(0,0,0,.95);display:none;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.lightbox.active{display:flex}.lightbox img{max-height:90%;max-width:90%;object-fit:contain}.lightbox .close-btn{color:#fff;cursor:pointer;font-size:40px;position:absolute;right:30px;top:20px;z-index:10000}.lightbox .close-btn:hover{opacity:.7}.article-footer-actions{border-top:2px solid rgba(44,44,44,.1);margin-top:4rem;padding-top:4rem}.error-page{align-items:center;background:#f8f6f3;display:flex;justify-content:center;min-height:calc(100vh - 200px);padding:6rem 1.5rem}.error-page__inner{max-width:560px;text-align:center}.error-page__code{color:#c9a961;font-size:clamp(4rem,12vw,7rem);font-weight:400;letter-spacing:.04em;line-height:1}.error-page__code,.error-page__title{font-family:Playfair Display,serif;margin-bottom:1.5rem}.error-page__title{color:#2c2c2c;font-size:clamp(1.5rem,3vw,2.5rem)}.error-page__text{color:#2c2c2c;font-size:1.125rem;line-height:1.7;margin-bottom:3rem;opacity:.8}@media(max-width:768px){.container{padding:0 1.5rem}.section{padding:3rem 0}.section-title{margin-bottom:2rem}.section-title h2{font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.2}.section-title .subtitle{font-size:1rem;line-height:1.5}section[id^=amenagement]>div,section[id^=construction]>div,section[id^=piscine]>div,section[id^=renovation]>div{display:flex;flex-direction:column!important}section[id^=amenagement]>div>img,section[id^=construction]>div>img,section[id^=piscine]>div>img,section[id^=renovation]>div>img{margin-bottom:2rem;order:-1}}@media(max-width:1024px){.section>.container>div[style*=grid-template-columns]{grid-template-columns:1fr!important}}@media(max-width:640px){.gallery-item .gallery-title{bottom:1.5rem;font-size:1.5rem;left:1.5rem;right:1.5rem}}@media(max-width:768px){.process-step{border-left:2px solid #c9a961;padding:1.5rem}}@media(max-width:640px){.hero-content{padding:0 1.5rem}.hero-logo{max-width:70vw;width:250px}.expertise-card{padding:1.5rem}.expertise-title{font-size:1.5rem}.expertise-description{font-size:.9rem}.process-number{font-size:1.25rem;height:60px;width:60px}.process-title{font-size:1.1rem;font-weight:700}.process-description{font-size:.8rem}}