@charset "UTF-8";:root{--default-font:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--heading-font:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--nav-font:"Inter",sans-serif}:root{--background-color:#1a1a1a;--default-color:#1a1a1a;--heading-color:white;--accent-color:#C8B28A;--red-color:#F2F2F2;--surface-color:#FFFFFE;--contrast-color:#ffffff}:root{--nav-color:#ffffff;--nav-hover-color:#C8B28A;--nav-mobile-background-color:#ffffff;--nav-dropdown-background-color:#ffffff;--nav-dropdown-color:#14201c;--nav-dropdown-hover-color:#C8B28A}.light-background{--background-color:#f4f9f7;--surface-color:#ffffff}.dark-background{--background-color:#000704;--default-color:#ffffff;--heading-color:#ffffff;--surface-color:#28323a;--contrast-color:#ffffff}:root{scroll-behavior:smooth}body{color:#fff;background-color:var(--background-color);font-family:var(--default-font)}a{color:var(--accent-color);text-decoration:none;transition:.3s}a:hover{color:color-mix(in srgb,var(--accent-color),transparent 25%);text-decoration:none}h1,h2{color:#fff;font-family:var(--heading-font)}h3,h4,h5,h6{color:#fff;font-family:var(--heading-font)}.header{--background-color:rgba(0, 0, 0, 0);--heading-color:#ffffff;--surface-color:rgba(255, 255, 255, 0.085);color:var(--default-color);transition:all .5s;z-index:997;background-color:var(--background-color)}.header .topbar{background-color:var(--background-color);height:40px;padding:0;font-size:14px;transition:all .5s}.header .topbar .contact-info i{font-style:normal;color:var(--contrast-color)}.header .topbar .contact-info i a,.header .topbar .contact-info i span{padding-left:5px;color:var(--contrast-color)}@media (max-width:575px){.header .topbar .contact-info i a,.header .topbar .contact-info i span{font-size:13px}}.header .topbar .contact-info i a{line-height:0;transition:.3s}.header .topbar .contact-info i a:hover{color:var(--contrast-color);text-decoration:underline}.header .topbar .social-links a{color:color-mix(in srgb,var(--contrast-color),transparent 40%);line-height:0;transition:.3s;margin-left:20px}.header .topbar .social-links a:hover{color:var(--contrast-color)}.header .branding{min-height:60px;padding:10px 0}.header .logo{line-height:1}.header .logo img{max-height:36px;margin-right:8px}.header .logo h1{font-size:30px;margin:0;font-weight:700;color:#fff}.scrolled .header{box-shadow:0 0 18px rgba(0,0,0,.1)}.scrolled .header .topbar{height:0;visibility:hidden;overflow:hidden}.scrolled .header{--background-color:rgba(7, 12, 16, 0.8)}@media (min-width:1200px){.navmenu{padding:0}.navmenu ul{margin:0;padding:0;display:flex;list-style:none;align-items:center}.navmenu li{position:relative}.navmenu>ul>li{white-space:nowrap;padding:15px 14px}.navmenu>ul>li:last-child{padding-right:0}.navmenu a,.navmenu a:focus{color:var(--nav-color);font-size:14px;padding:0 2px;font-family:var(--nav-font);font-weight:500;display:flex;align-items:center;justify-content:space-between;white-space:nowrap;transition:.3s;position:relative}.navmenu a i,.navmenu a:focus i{font-size:12px;line-height:0;margin-left:5px;transition:.3s}.navmenu>ul>li>a:before{content:"";position:absolute;height:2px;bottom:-6px;left:0;background-color:var(--accent-color);visibility:hidden;width:0;transition:all .3s ease-in-out 0s}.navmenu .active:before,.navmenu a:hover:before,.navmenu li:hover>a:before{visibility:visible;width:100%}.navmenu .active,.navmenu .active:focus,.navmenu li:hover>a{color:color-mix(in srgb,var(--nav-color) 90%,#fff 15%)}.navmenu .dropdown ul{margin:0;padding:10px 0;background:var(--nav-dropdown-background-color);display:block;position:absolute;visibility:hidden;left:14px;top:130%;opacity:0;transition:opacity .22s ease,transform .22s ease,visibility .22s;border-radius:12px;z-index:99;box-shadow:0 12px 40px rgba(0,0,0,.18),0 0 0 1px rgba(0,0,0,.06);min-width:260px;transform:translateY(-6px)}.navmenu .dropdown:hover>ul{transform:translateY(0)}.navmenu .dropdown ul li{min-width:0}.navmenu .dropdown ul li+li{border-top:1px solid color-mix(in srgb,var(--nav-dropdown-color),transparent 92%)}.navmenu .dropdown ul a{padding:14px 20px;font-size:14px;text-transform:none;color:var(--nav-dropdown-color);display:flex;align-items:center;gap:12px;transition:background .2s ease,color .2s ease,padding-left .2s ease;border-radius:0;margin:0 6px;min-height:48px}.navmenu .dropdown ul a i:first-child{font-size:1.2rem;opacity:.95;flex-shrink:0;width:1.5em;text-align:center;color:var(--accent-color)}.navmenu .dropdown ul a i.bi-chevron-right{font-size:.7rem;opacity:.6;margin-left:auto}.navmenu .dropdown ul .active:hover,.navmenu .dropdown ul a:hover,.navmenu .dropdown ul li:hover>a{color:var(--nav-dropdown-hover-color);background:color-mix(in srgb,var(--accent-color),transparent 92%);padding-left:22px}.navmenu .dropdown ul a:hover i:first-child{opacity:1}.navmenu .dropdown:hover>ul{opacity:1;top:100%;visibility:visible}.navmenu .dropdown .dropdown ul{top:0;left:-92%;min-width:220px;visibility:hidden;transform:translateX(8px)}.navmenu .dropdown .dropdown:hover>ul{opacity:1;top:0;left:-100%;visibility:visible;transform:translateX(0)}.mobile-menu,.mobile-menu-content,.mobile-menu-logo,.mobile-nav-close,.mobile-nav-toggle{display:none!important}}@media (max-width:1199px){.navmenu ul{display:none!important}.mobile-nav-toggle{font-size:32px;cursor:pointer;z-index:12000;color:#fff}.mobile-menu{position:fixed;top:0;right:-100%;width:min(100vw,340px);max-width:100%;height:100vh;height:100dvh;background:linear-gradient(180deg,#0d0d0d 0,#1a1a1a 100%);color:#fff;z-index:15000;transition:right .35s cubic-bezier(.4, 0, .2, 1),box-shadow .35s ease;display:flex;flex-direction:column;padding:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-menu.active{right:0;box-shadow:-8px 0 32px rgba(0,0,0,.4)}body.menu-open{overflow:hidden}.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;padding:20px 20px 24px;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.mobile-menu-logo{height:48px;width:auto;max-height:48px}.mobile-nav-close{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:28px;cursor:pointer;color:rgba(255,255,255,.9);border-radius:12px;transition:background .2s ease,color .2s ease;-webkit-tap-highlight-color:transparent}.mobile-nav-close:focus,.mobile-nav-close:hover{background:rgba(255,255,255,.08);color:#fff}.mobile-menu-content{padding:16px 12px 32px;flex:1}.mobile-menu-content ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.mobile-menu-content>ul>li{border-radius:12px;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.06)}.mobile-menu-content>ul>li:last-child{border-bottom:none}.mobile-menu-content a{display:flex;align-items:center;gap:14px;color:rgba(255,255,255,.95);font-size:16px;font-weight:500;letter-spacing:.02em;text-decoration:none;padding:14px 16px;min-height:52px;border-radius:12px;transition:background .2s ease,color .2s ease;-webkit-tap-highlight-color:transparent}.mobile-menu-content a i{font-size:20px;width:24px;text-align:center;opacity:.9;color:var(--accent-color)}.mobile-menu-content a:focus,.mobile-menu-content a:hover{background:rgba(255,255,255,.06);color:#fff}.mobile-menu-content a:active{background:rgba(255,255,255,.1)}.mobile-menu-content .mobile-submenu{display:flex;flex-direction:column}.mobile-menu-content .mobile-submenu>span{display:flex;align-items:center;gap:14px;padding:14px 16px;min-height:52px;font-size:16px;font-weight:500;color:rgba(255,255,255,.95);cursor:pointer;border-radius:12px;transition:background .2s ease;-webkit-tap-highlight-color:transparent;user-select:none}.mobile-menu-content .mobile-submenu>span::after{content:"";width:0;height:0;margin-left:auto;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid rgba(255,255,255,.7);transition:transform .25s ease}.mobile-menu-content .mobile-submenu.open>span::after{transform:rotate(180deg)}.mobile-menu-content .mobile-submenu>span i{font-size:20px;width:24px;text-align:center;color:var(--accent-color)}.mobile-menu-content .mobile-submenu>span:focus,.mobile-menu-content .mobile-submenu>span:hover{background:rgba(255,255,255,.06)}.mobile-menu-content .mobile-submenu>ul{display:none;padding:4px 0 8px 12px;margin:0;border-left:2px solid rgba(255,255,255,.15);margin-left:24px;gap:2px}.mobile-menu-content .mobile-submenu.open>ul{display:flex}.mobile-menu-content .mobile-submenu>ul a{padding:10px 12px;min-height:44px;font-size:14px}.mobile-menu-content .mobile-submenu>ul a i{font-size:16px;width:20px}}.footer{color:var(--default-color);font-size:14px;padding-bottom:50px;position:relative}.footer .footer-top{padding-top:50px;border-top:1px solid color-mix(in srgb,var(--default-color),transparent 90%)}.footer .footer-about .logo{line-height:1}.footer .footer-about .logo img{max-height:40px;margin-right:6px}.footer .footer-about .logo span{color:#1a1a1a;font-size:30px;font-weight:700;letter-spacing:1px;font-family:var(--heading-font)}.footer .footer-about p{font-size:14px;font-family:var(--heading-font)}.footer .social-links a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid color-mix(in srgb,var(--default-color),transparent 50%);font-size:16px;color:color-mix(in srgb,var(--default-color),transparent 50%);margin-right:10px;transition:.3s}.footer .social-links a:hover{color:var(--accent-color);border-color:var(--accent-color)}.footer h4{font-size:16px;font-weight:700;position:relative;padding-bottom:12px}.footer .footer-links{margin-bottom:30px}.footer .footer-links ul{list-style:none;padding:0;margin:0}.footer .footer-links ul i{padding-right:2px;font-size:12px;line-height:0}.footer .footer-links ul li{padding:10px 0;display:flex;align-items:center}.footer .footer-links ul li:first-child{padding-top:0}.footer .footer-links ul a{color:color-mix(in srgb,var(--default-color),transparent 20%);display:inline-block;line-height:1}.footer .footer-links ul a:hover{color:var(--accent-color)}.footer .footer-contact p{margin-bottom:5px}.footer .copyright{padding-top:25px;padding-bottom:25px;background-color:color-mix(in srgb,var(--default-color),transparent 95%)}.footer .copyright p{margin-bottom:0}.footer .credits{margin-top:6px;font-size:13px}#preloader{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:var(--background-color)}.preloader-content{display:flex;flex-direction:column;align-items:center;gap:25px}.preloader-text{color:#fff;font-size:1.1rem;font-weight:500;letter-spacing:.5px;text-align:center;opacity:.85}.loader-gears{position:relative;width:140px;height:140px}.loader-gears i{position:absolute;color:#fff}.gear-big{font-size:4.2rem;top:20px;left:15px;animation:spinBig 3s linear infinite}.gear-small{font-size:2.2rem;top:78px;left:75px;animation:spinSmall 1.8s linear infinite reverse}@keyframes spinBig{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes spinSmall{0%{transform:rotate(0)}100%{transform:rotate(-360deg)}}@media (max-width:767px){#preloader{background:var(--background-color)}.preloader-content{gap:15px}.preloader-text{font-size:.9rem;opacity:.9}.loader-gears{width:100px;height:100px}.loader-gears .gear-big{font-size:3rem;top:12px;left:10px}.loader-gears .gear-small{font-size:1.6rem;top:56px;left:48px}}.scroll-top{position:fixed;visibility:hidden;opacity:0;right:15px;bottom:15px;z-index:99999;background-color:var(--accent-color);width:40px;height:40px;border-radius:4px;transition:all .4s}.scroll-top i{font-size:24px;color:var(--contrast-color);line-height:0}.scroll-top:hover{background-color:color-mix(in srgb,var(--accent-color),transparent 20%);color:var(--contrast-color)}.scroll-top.active{visibility:visible;opacity:1}.page-title{color:var(--default-color);background-color:var(--background-color);background-size:cover;background-position:center;background-repeat:no-repeat;padding:160px 0 80px 0;text-align:center;position:relative}.page-title:before{content:"";background:color-mix(in srgb,var(--background-color),transparent 30%);position:absolute;inset:0}.page-title h1{font-size:42px;font-weight:700;margin-bottom:10px;position:relative;z-index:1}.page-title p{position:relative;z-index:1;font-size:1.1rem;opacity:.95}.service-category-page .page-title p{font-size:1.5rem;line-height:1.4}.section .container>.lead{font-size:1.1rem;line-height:1.6;max-width:48em}body.service-category-page .section .container>.lead{max-width:100%;width:100%;text-align:center}.section .container .row.g-4 .btn{min-height:48px;font-size:1rem}.service-card{display:block;background:var(--surface-color);border-radius:12px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:transform .25s ease,box-shadow .25s ease;text-decoration:none;color:inherit;height:100%}.service-card:hover{transform:translateY(-4px);box-shadow:0 8px 28px rgba(0,0,0,.12);color:var(--accent-color)}.service-card img{width:100%;height:200px;object-fit:cover;display:block}.service-card .service-card-title{display:block;padding:1rem 1.25rem;font-weight:600;font-size:1.1rem;text-align:center}.service-card:hover .service-card-title{color:var(--accent-color)}@media (max-width:767px){body:not(.service-subpage):not(.service-category-page) .main{padding-top:100px}body.index-page:not(.contact-page):not(.realisations-page) .main{padding-top:0}body.index-page .hero{padding-top:100px}.page-title{padding:160px 0 50px}body.service-category-page .page-title{padding-top:200px}.page-title h1{font-size:28px;line-height:1.25}.page-title p{font-size:.95rem}.service-category-page .page-title p{font-size:1.5rem}.section .container>.lead{font-size:1rem;color:#fff}.section .container .row.g-4 .btn{font-size:.95rem;min-height:44px}.service-card img{height:160px}.service-card .service-card-title{padding:.875rem 1rem;font-size:1rem}}body.service-subpage .page-title{padding-top:200px;padding-bottom:80px}body.service-subpage .page-title h1{font-size:52px;font-weight:700}@media (max-width:767px){body.service-subpage .page-title{padding-top:160px;padding-bottom:50px}body.service-subpage .page-title h1{font-size:34px}}.page-title .breadcrumbs ol{display:flex;flex-wrap:wrap;list-style:none;justify-content:center;padding:0;margin:0;font-size:16px;font-weight:400}.page-title .breadcrumbs ol li+li{padding-left:10px}.page-title .breadcrumbs ol li+li::before{content:"/";display:inline-block;padding-right:10px;color:color-mix(in srgb,var(--default-color),transparent 50%)}.section,section{color:var(--default-color);background-color:var(--background-color);padding:60px 0;scroll-margin-top:72px;overflow:clip}@media (max-width:1199px){.section,section{scroll-margin-top:60px}}.section-title{text-align:center;padding-bottom:60px;position:relative;color:#fff}.section-title h2{font-size:32px;font-weight:700;margin-bottom:20px;padding-bottom:20px;position:relative}.section-title h2:before{content:"";position:absolute;display:block;width:160px;height:1px;background:color-mix(in srgb,var(--default-color),transparent 60%);left:0;right:0;bottom:1px;margin:auto}.section-title h2::after{content:"";position:absolute;display:block;width:60px;height:3px;background:var(--accent-color);left:0;right:0;bottom:0;margin:auto}.section-title p{margin-bottom:0}.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;padding:120px 0 60px 0}.hero .hero-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.hero .hero-background img{width:100%;height:100%;object-fit:cover;object-position:center}.hero .hero-background .overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,color-mix(in srgb,var(--background-color),transparent 55%) 0,color-mix(in srgb,var(--background-color),transparent 10%) 500%)}.hero .container{position:relative;z-index:2;padding:40px 15px}.hero-badge{display:inline-block;padding:6px 14px;border-radius:999px;background:rgba(255,255,255,.08);backdrop-filter:blur(6px);font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;margin-bottom:20px}.hero-background img{transform:scale(1.08);animation:heroZoom 14s ease-out forwards}@keyframes heroZoom{to{transform:scale(1)}}.hero-background .overlay{background:linear-gradient(to bottom,rgba(0,0,0,.55),rgba(0,0,0,.75))}.hero h1{font-size:48px;font-weight:800;line-height:1.1;margin-bottom:24px;display:flex;text-align:center;justify-content:center}.hero p{font-size:24px;line-height:1.6;margin-bottom:40px}.hero-actions{display:flex;gap:100px;justify-content:center;align-items:center;margin-bottom:60px;flex-wrap:wrap}.hero-actions .btn-primary,.section .btn-primary,.service-cta-block .btn-primary,body.service-subpage .section .container p .btn-primary{position:relative;z-index:0;border-radius:10px;background:#1a1a1a;padding:12px 24px;overflow:hidden;color:#fff;font-size:16px;font-weight:600;transition:background-color .35s cubic-bezier(.4, 0, .2, 1),color .35s ease,box-shadow .35s cubic-bezier(.4, 0, .2, 1),transform .35s cubic-bezier(.4, 0, .2, 1);display:inline-flex;align-items:center;gap:8px;text-decoration:none;border:none}.hero-actions .btn-primary:hover,.section .btn-primary:hover,.service-cta-block .btn-primary:hover,body.service-subpage .section .container p .btn-primary:hover{background-color:#2a2a2a;box-shadow:0 8px 24px rgba(0,0,0,.25);transform:translateY(-2px)}.hero-actions .btn-primary::before,.section .btn-primary::before,.service-cta-block .btn-primary::before,body.service-subpage .section .container p .btn-primary::before{content:"";position:absolute;inset:0;padding:2px;border-radius:10px;background:linear-gradient(90deg,transparent,#fff,transparent);background-size:200% 200%;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:destination-out;mask-composite:exclude;z-index:1;animation:glowBorder 5s linear infinite;pointer-events:none}@keyframes glowBorder{0%{background-position:0 50%}100%{background-position:200% 50%}}.hero-actions .btn-primary span,.section .btn-primary span,.service-cta-block .btn-primary span,body.service-subpage .section .container p .btn-primary span{display:inline-block;transition:transform .35s cubic-bezier(.4, 0, .2, 1)}.hero-actions .btn-primary:hover .btn-icon,.hero-actions .btn-primary:hover .btn-text,.hero-actions .btn-primary:hover span,.section .btn-primary:hover span,.service-cta-block .btn-primary:hover span,body.service-subpage .section .container p .btn-primary:hover span{transform:translateY(-1px)}.hero-actions .btn-primary::after,.section .btn-primary::after,.service-cta-block .btn-primary::after,body.service-subpage .section .container p .btn-primary::after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(120deg,rgba(255,255,255,.15) 0,rgba(255,255,255,0) 55%);transform:rotate(25deg) translateX(-100%);transition:transform .6s cubic-bezier(.4, 0, .2, 1);pointer-events:none}.hero-actions .btn-primary:hover::after,.section .btn-primary:hover::after,.service-cta-block .btn-primary:hover::after,body.service-subpage .section .container p .btn-primary:hover::after{transform:rotate(25deg) translateX(100%)}.hero-actions .btn-secondary{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:600;font-size:16px;transition:all .3s ease}.hero-actions .btn-secondary i{font-size:24px;color:var(--accent-color);transition:transform .3s ease}.hero-actions .btn-secondary span{transition:transform .3s ease}.hero-actions .btn-secondary:hover i{transform:translateX(5px) translateY(-2px)}.hero-actions .btn-secondary:hover span{transform:translateX(5px) translateY(-2px);color:var(--accent-color)}.hero .hero-stats{display:flex;align-items:center;justify-content:center;gap:180px;flex-wrap:wrap}.hero .hero-stats .stat-item{text-align:left}.hero .hero-stats .stat-item .stat-number{display:block;font-size:54px;font-weight:600;color:#f5f5f5;line-height:1;margin-bottom:4px}.hero .hero-stats .stat-item .stat-label{font-size:14px;color:color-mix(in srgb,var(--default-color),transparent 30%);text-transform:uppercase;letter-spacing:.5px;line-height:2}.hero .hero-visual{position:relative}.hero .feature-card:hover{transform:translateY(-5px)}.hero .feature-card i{font-size:32px;color:var(--accent-color);margin-bottom:12px}.hero .feature-card span{font-size:14px;font-weight:600;color:color-mix(in srgb,var(--default-color),transparent 30%)}.hero .feature-card:last-child{margin-bottom:0}@media (max-width:992px){.hero .hero-visual{margin-top:60px}.hero .feature-card{padding:20px}}@media (max-width:768px){.hero{padding-top:20px;align-items:flex-start;padding-bottom:60px;min-height:auto}.hero .container{padding-top:12px}.hero h1{font-size:42px}.hero p{font-size:18px}.hero .hero-actions{align-items:flex-start;flex-direction:row;gap:16px}.hero-actions .btn-primary .bi{font-size:1.6rem}.hero .hero-stats{display:flex;gap:24px}.hero .hero-stats .stat-item .stat-number{font-size:36px}.hero .hero-stats .stat-item .stat-label{font-size:12px}.hero .feature-card{padding:16px}.hero .feature-card i{font-size:24px}.hero .feature-card span{font-size:12px}}@media (max-width:576px){.hero{position:relative;min-height:auto;display:flex;align-items:flex-start;overflow:hidden;padding:16px 0 60px 0}body.index-page .hero{padding-top:100px}.hero h1{font-size:32px}.hero p{font-size:1rem}.hero .hero-actions{flex-wrap:nowrap;gap:12px;justify-content:center}.hero .hero-actions .btn-primary{padding:10px 16px;font-size:14px}.hero .hero-visual{margin-top:40px}.hero .feature-card{padding:12px;margin-bottom:12px}.hero .feature-card i{font-size:20px;margin-bottom:8px}.hero .feature-card span{font-size:11px}.hero .hero-stats{gap:6px}.hero .hero-stats .stat-item{display:flex;flex-direction:column;align-items:center;text-align:center}.hero .hero-stats .stat-item .stat-number{font-size:28px}.hero .hero-stats .stat-item .stat-label{font-size:9px}.hero-badge{display:inline-block;padding:6px 14px;margin-bottom:50px;border-radius:999px;background:rgba(255,255,255,.08);backdrop-filter:blur(6px);font-size:.65rem;letter-spacing:.04em;text-transform:uppercase}}.hero-content>*{opacity:0;transform:translateY(40px) scale(.96);filter:blur(4px);will-change:transform,opacity,filter}.hero-animate .hero-content>*{animation:heroReveal 1.1s cubic-bezier(.22,1,.36,1) forwards}.hero-animate .hero-content>:first-child{animation-delay:.15s}.hero-animate .hero-content>:nth-child(2){animation-delay:.3s}.hero-animate .hero-content>:nth-child(3){animation-delay:.45s}.hero-animate .hero-content>:nth-child(4){animation-delay:.6s}.hero-animate .hero-content>:nth-child(5){animation-delay:.75s}@keyframes heroReveal{0%{opacity:0;transform:translateY(40px) scale(.96);filter:blur(4px)}60%{opacity:1;transform:translateY(-4px) scale(1.01);filter:blur(0)}100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@media (prefers-reduced-motion:reduce){.hero-content>*{animation:none!important;opacity:1;transform:none;filter:none}}@media (max-width:991px){.hero{padding-top:24px}}.about{padding-top:60px;padding-bottom:60px}.about .content{padding-right:20px}.about .content h2{font-size:2.5rem;font-weight:700;margin-bottom:1.5rem;line-height:1.2}@media (max-width:768px){.about .content h2{font-size:1.5rem}}.about .content .lead{font-size:1rem;font-weight:500;color:#fff;margin-bottom:1.5rem;line-height:1.6}.about .content p{margin-bottom:1.25rem;line-height:1.7;color:#fff}@media (max-width:992px){.about .content{padding-right:0;margin-bottom:3rem}}.about .stats-container{margin:3rem 0;padding:2rem 0;border-top:1px solid color-mix(in srgb,var(--default-color),transparent 85%);border-bottom:1px solid color-mix(in srgb,var(--default-color),transparent 85%)}.about .stat-item{text-align:center;margin-bottom:1.5rem}.about .stat-item .number{font-size:2.5rem;font-weight:700;color:var(--accent-color);margin-bottom:.5rem;font-family:var(--heading-font)}.about .stat-item .label{font-size:.9rem;color:color-mix(in srgb,var(--default-color),transparent 30%);text-transform:uppercase;letter-spacing:.5px}@media (max-width:768px){.about .stat-item{margin-bottom:2rem}.about .stat-item .number{font-size:2rem}}.about .cta-wrapper{display:flex;gap:1rem;align-items:center}@media (max-width:576px){.about .cta-wrapper{flex-direction:column;align-items:stretch}}.about .btn{padding:12px 30px;border-radius:50px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease;border:2px solid transparent}.about .btn.btn-primary{background-color:var(--red-color);color:var(--accent-color);border:1px solid rgba(255,255,255,.4)}.about .btn.btn-primary:hover{background-color:color-mix(in srgb,var(--red-color),#000 15%);transform:translateY(-2px)}.about .btn.btn-outline{background-color:transparent;color:var(--accent-color);border-color:var(--accent-color)}.about .btn.btn-outline:hover{background-color:var(--accent-color);color:var(--contrast-color);transform:translateY(-5px)}.btn-outline{background:0 0;border:2px solid var(--accent-color);color:var(--accent-color);padding:.5rem 1rem;border-radius:8px;transition:transform .25s ease,background .25s ease,color .25s ease,box-shadow .25s ease}.btn-outline:hover{background:var(--accent-color);color:var(--contrast-color);transform:translateY(-2px);box-shadow:0 6px 20px color-mix(in srgb,var(--accent-color),transparent 60%)}.btn-outline:active{transform:translateY(0)}.btn,.btn-primary,a.btn{transition:transform .25s ease,box-shadow .25s ease,background .25s ease}@media (hover:hover){.btn-primary:hover,.btn:hover,a.btn:hover{transform:translateY(-2px)}.btn-primary:active,.btn:active,a.btn:active{transform:translateY(0)}}.about .image-wrapper{position:relative;padding-left:20px}@media (max-width:992px){.about .image-wrapper{padding-left:0;margin-top:2rem}}.about .image-wrapper .main-image{border-radius:20px;box-shadow:0 20px 40px color-mix(in srgb,var(--default-color),transparent 85%)}.about .image-wrapper .floating-card{position:absolute;bottom:30px;left:-20px;background-color:#e0e0e0;border-radius:15px;padding:1.5rem;box-shadow:0 15px 30px color-mix(in srgb,var(--default-color),transparent 80%);border:1px solid rgba(17,17,17,.2);overflow:hidden}.about .image-wrapper .floating-card::before{content:"";position:absolute;top:-50%;left:-50%;width:50%;height:200%;background:linear-gradient(120deg,rgba(255,255,255,0) 0,rgba(255,255,255,.35) 50%,rgba(255,255,255,0) 100%);animation:shine 5s ease-in-out infinite;pointer-events:none}@keyframes shine{0%{transform:translateX(-200%)}50%{transform:translateX(400%)}100%{transform:translateX(-200%)}}@media (max-width:992px){.about .image-wrapper .floating-card{left:20px;bottom:20px;padding:1rem}}@media (max-width:768px){.cta-wrapper .btn{padding:12px;width:50%;display:flex;justify-content:center;align-items:center}.cta-wrapper .btn i{margin:0;font-size:1.5rem}.cta-wrapper .btn span{display:none}}@media (max-width:576px){.about .image-wrapper .floating-card{position:relative;margin:2rem auto 0 auto;font-size:10px;left:0;bottom:0;max-width:90%}.about .image-wrapper .floating-card::before{width:150%;height:100%;top:0;left:-75%}.about .cta-wrapper{display:flex;flex-direction:row;gap:auto;align-items:center}}.cta-nousrejoindre{display:flex;width:100%;justify-content:center;align-items:center;gap:1rem}.about .image-wrapper .floating-card .card-content{display:flex;align-items:center;gap:1rem}.about .image-wrapper .floating-card .card-content i{font-size:2rem;color:var(--accent-color);background-color:color-mix(in srgb,var(--accent-color),transparent 90%);width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center}.about .image-wrapper .floating-card .card-content .text h5{margin:0 0 .25rem 0;font-size:13px!important;font-weight:600;color:#1a1a1a}.about .image-wrapper .floating-card .card-content .text span{font-size:11px;color:color-mix(in srgb,var(--default-color),transparent 40%)}.how-we-work.section{padding-bottom:3rem}@media (max-width:991px){.how-we-work.section{padding-bottom:2rem}}.how-we-work .steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;position:relative;margin-bottom:3rem}.how-we-work .steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.how-we-work .step-card{background:var(--surface-color);padding:2.5rem 2rem;border-radius:20px;height:420px;text-align:center;position:relative;box-shadow:0 10px 40px rgba(0,0,0,.08);transition:all .3s ease;border:1px solid color-mix(in srgb,var(--accent-color),transparent 90%)}.how-we-work .step-card .step-icon{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-color),transparent 80%) 0,color-mix(in srgb,var(--accent-color),transparent 90%) 100%);color:var(--accent-color);display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 1.5rem;transition:all .3s ease}.how-we-work .step-card .step-number{background:linear-gradient(135deg,var(--accent-color) 0,color-mix(in srgb,var(--accent-color),#000 20%) 100%);color:var(--contrast-color);padding:.5rem 1rem;border-radius:25px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-block;margin-bottom:1rem}.how-we-work .step-card h3{font-size:1.4rem;font-weight:700;margin-bottom:1rem;color:#1a1a1a}.how-we-work .step-card p{font-size:.95rem;color:var(--default-color);line-height:1.6;margin-bottom:0}.how-we-work .step-card .step-arrow{position:absolute;top:50%;right:-15px;width:30px;height:30px;background-color:var(--accent-color);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--contrast-color);font-size:.9rem;transition:all .3s ease;z-index:2}.how-we-work .step-card:last-child .step-arrow{display:none}@media (max-width:991px){.how-we-work .steps-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:1rem;padding-bottom:1rem;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.how-we-work .step-card{min-width:85%;flex-shrink:0;scroll-snap-align:center;height:360px;padding:2rem 1.5rem;border-radius:20px}.how-we-work .step-card .step-arrow{display:none}.how-we-work .step-card h3{font-size:1.1rem}.how-we-work .step-card p{font-size:.9rem}}@media (max-width:576px){.how-we-work .step-card{min-width:92%}.how-we-work .step-card h3{font-size:1rem}}@media (max-width:767px){body.service-subpage .how-we-work .steps-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:1.25rem;padding-bottom:1rem;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}body.service-subpage .how-we-work .step-card{min-width:calc(100% - 1.25rem);flex:0 0 calc(100% - 1.25rem);scroll-snap-align:start;scroll-snap-stop:always;box-sizing:border-box}body.service-subpage .how-we-work .step-card .step-arrow{display:none}}.features{--transition-fast:0.25s ease;--transition-base:0.35s ease;padding-top:60px}.features .nav-tabs{border:none;background:#1a1a1a;border-radius:16px}.features .nav-tabs .nav-item:not(:last-child){margin-bottom:15px}.features .nav-tabs .nav-link{padding:20px;border:none;border-radius:12px;background:var(--surface-color);cursor:pointer;transition:transform var(--transition-fast),background var(--transition-base)}.features .nav-tabs .nav-link:hover{transform:translateY(-2px)}.features .icon-box{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent-color),transparent 92%);transition:background var(--transition-base)}.features .icon-box i{font-size:24px;color:var(--accent-color);transition:color var(--transition-base)}.features .nav-link h4{font-size:16px;font-weight:600;margin-bottom:4px;color:var(--default-color);transition:color var(--transition-base)}.features .nav-link p{font-size:14px;margin:0;color:color-mix(in srgb,var(--default-color),transparent 40%);transition:color var(--transition-base)}.features .nav-link.active .icon-box,.features .nav-link:hover .icon-box{background:var(--accent-color)}.features .nav-link.active .icon-box i,.features .nav-link:hover .icon-box i{color:var(--contrast-color)}.features .nav-link.active{background:var(--accent-color)}.features .nav-link.active h4,.features .nav-link.active p{color:var(--contrast-color)}.features .content-box{background:var(--surface-color);border-radius:16px;padding:40px;min-height:610px;box-shadow:0 8px 32px rgba(0,0,0,.05)}.features .content-box h3{color:var(--background-color);font-size:28px;font-weight:700;margin-bottom:20px;padding-bottom:12px;position:relative}.features .content-box h3::after{content:"";position:absolute;left:0;bottom:0;width:60%;height:3px;background:var(--accent-color);border-radius:3px}.features .content-box p{font-size:16px;line-height:1.6;color:color-mix(in srgb,var(--default-color),transparent 20%)}.features .content-box p.highlight{margin-top:15px;padding:20px;border-radius:12px;background:color-mix(in srgb,var(--accent-color),transparent 92%)}.features .features-list{list-style:none;padding:0;margin-top:32px;display:flex;flex-direction:column;gap:12px}.features .features-list li{position:relative;padding:9px 10px 9px 12px;background:color-mix(in srgb,var(--default-color),transparent 95%);border-radius:14px;font-size:16px;line-height:1.6;color:var(--default-color);box-shadow:0 6px 18px rgba(0,0,0,.04);transition:transform .25s ease,box-shadow .25s ease}.features .image-box{border-radius:12px;overflow:hidden;box-shadow:0 15px 35px rgba(0,0,0,.1)}.features .image-box img{transition:transform .5s ease}.features .image-box:hover img{transform:scale(1.05)}.features .tab-pane{opacity:0;transform:translateY(10px);transition:opacity var(--transition-base),transform var(--transition-base)}.features .tab-pane.show{opacity:1;transform:translateY(0)}@media (max-width:991.98px){.features{display:none}.features-mobile{padding-top:60px}}@media (min-width:992px){.features-mobile{display:none}}.features-mobile .service-card{position:relative;min-height:420px;border-radius:22px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;align-items:center;background-size:cover;background-position:center;box-shadow:0 25px 60px rgba(0,0,0,.35);transition:transform .4s ease,box-shadow .4s ease;padding:20px}.features-mobile .service-card .content{position:relative;z-index:2;text-align:center;color:#fff;max-width:90%;flex-grow:1;display:flex;flex-direction:column;justify-content:center}.features-actions .btn-primary{margin-top:50px;position:relative;z-index:0;border-radius:10px;background:#1a1a1a;padding:12px 24px;overflow:hidden;color:#fff;font-size:14px;font-weight:600;transition:background-color .35s cubic-bezier(.4, 0, .2, 1),box-shadow .35s cubic-bezier(.4, 0, .2, 1),transform .35s cubic-bezier(.4, 0, .2, 1);display:inline-flex;align-items:center;gap:8px}.features-actions .btn-primary:hover{background-color:#2a2a2a;box-shadow:0 8px 24px rgba(0,0,0,.25);transform:translateY(-2px)}.features-actions .btn-primary::before{content:"";position:absolute;inset:0;padding:2px;border-radius:10px;background:linear-gradient(90deg,transparent,#fff,transparent);background-size:200% 200%;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:destination-out;mask-composite:exclude;z-index:1;animation:glowBorder 5s linear infinite;pointer-events:none}.features-actions .btn-primary span{display:inline-block;transition:transform .35s cubic-bezier(.4, 0, .2, 1)}.features-actions .btn-primary:hover .btn-icon,.features-actions .btn-primary:hover .btn-text,.features-actions .btn-primary:hover span{transform:translateY(-1px)}.features-actions .btn-primary::after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(120deg,rgba(255,255,255,.15) 0,rgba(255,255,255,0) 55%);transform:rotate(25deg) translateX(-100%);transition:transform .6s cubic-bezier(.4, 0, .2, 1);pointer-events:none}.features-actions .btn-primary:hover::after{transform:rotate(25deg) translateX(100%)}.features-actions .btn-secondary{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:600;font-size:16px;transition:all .3s ease}.features-actions .btn-secondary i{font-size:24px;color:var(--accent-color);transition:transform .3s ease}.features-actions .btn-secondary span{transition:transform .3s ease}.features-actions .btn-secondary:hover i{transform:translateX(5px) translateY(-2px)}.features-actions .btn-secondary:hover span{transform:translateX(5px) translateY(-2px);color:var(--accent-color)}.features-mobile .service-card .overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 20%,rgba(0,0,0,.4) 55%,rgba(0,0,0,.15) 100%);z-index:1;pointer-events:none}.features-mobile .service-card h3{font-size:24px;font-weight:900;margin-bottom:12px;color:#fff;text-shadow:-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,1px 1px 0 #000,0 6px 20px rgba(0,0,0,.6)}.features-mobile .service-card p{font-size:16px;margin-bottom:18px;color:#fff;line-height:1.6;text-shadow:-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,1px 1px 0 #000}.features-mobile .service-card ul{list-style:none;padding:0;margin:0 auto;display:flex;flex-direction:column;align-items:center}.features-mobile .service-card ul li{display:flex;align-items:center;gap:8px;font-size:14px;margin-bottom:10px;color:#fff;font-weight:500;text-shadow:0 2px 8px rgba(0,0,0,.8)}.features-mobile .service-card ul li::before{content:"";display:inline-block;width:30px;height:2px;background-color:var(--accent-color);border-radius:1px;opacity:.85}.features-mobile .carousel-control-next,.features-mobile .carousel-control-prev{z-index:20;width:10%}.features-mobile .carousel-control-next-icon,.features-mobile .carousel-control-prev-icon{filter:drop-shadow(0 4px 10px rgba(0,0,0,.8));border-radius:50%;background-color:rgba(0,0,0,.35);padding:10px}.faq{font-family:Poppins,sans-serif}.faq .section-header h2{font-size:2rem;font-weight:700;color:#1a1a1a;margin-bottom:1rem}.faq-cards{display:block}.faq-card{width:100%;max-width:220px;perspective:1000px}.faq-card-inner{position:relative;width:100%;height:320px;transition:transform .6s;transform-style:preserve-3d;cursor:pointer}.faq-card:hover .faq-card-inner{transform:rotateY(180deg)}.faq-card-back,.faq-card-front{position:absolute;width:100%;height:280px;border-radius:15px;backface-visibility:hidden;display:flex;align-items:center;justify-content:center;padding:20px;box-shadow:0 8px 20px rgba(0,0,0,.15);background:var(--surface-color)}.faq-card-front{font-size:2rem;color:var(--accent-color);background:linear-gradient(135deg,#fefefe,#eaeaea)}.faq-card-back{transform:rotateY(180deg);flex-direction:column;justify-content:flex-start;text-align:left;padding:25px}.faq-card-back h4{font-size:1rem;color:var(--accent-color);margin-bottom:10px;position:relative;padding-bottom:10px}.faq-card-back h4::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,var(--accent-color),rgba(0,0,0,.1));border-radius:2px}.faq-card-back p{font-size:.75rem;color:color-mix(in srgb,var(--default-color),transparent 20%);line-height:1.6;margin-top:20px}.faq-card-front .central-icon{font-size:2rem;z-index:2}.faq-card-front .corner{position:absolute;font-size:.8rem;color:var(--accent-color);z-index:1}.faq-card-front .corner.top-left{top:8px;left:8px}.faq-card-front .corner.top-right{top:8px;right:8px}.faq-card-front .corner.bottom-left{bottom:8px;left:8px}.faq-card-front .corner.bottom-right{bottom:8px;right:8px}@media (min-width:768px){.swiper-faq .swiper-wrapper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:30px}.swiper-faq .swiper-slide{display:flex;justify-content:center}.faq-pagination{display:none}}@media (max-width:767px){.swiper-faq .swiper-wrapper{display:flex!important;padding:0}.swiper-faq .swiper-slide{flex:0 0 auto;max-width:220px;display:flex!important;justify-content:center}.faq-pagination{display:block;text-align:center;margin-top:15px}.swiper-pagination-bullet{width:10px;height:10px;background:var(--accent-color);opacity:.5}.swiper-pagination-bullet-active{opacity:1}}.testimonials .testimonials-carousel,.testimonials .testimonials-slider{overflow:hidden}.testimonials .testimonial-item{box-sizing:content-box;text-align:center;padding:12px 12px;background-color:#fff;min-height:360px;color:var(--background-color);border-radius:40px;margin-right:30px}@media (max-width:767px){.testimonials .testimonial-item{margin-right:0}}.testimonials .testimonial-item .testimonial-avatar-icon{display:flex;align-items:center;justify-content:center;margin:12px auto 8px}.testimonials .testimonial-item .testimonial-avatar-icon i{font-size:2.25rem;color:var(--accent-color);opacity:.9}.testimonials .testimonial-item .testimonial-img{width:90px;border-radius:50%;margin:0 auto}.testimonials .testimonial-item h3{font-size:18px;font-weight:700;margin:10px 0 5px 0}.testimonials .testimonial-item h4{font-size:14px;color:color-mix(in srgb,var(--default-color),transparent 20%);margin:0}.testimonials .testimonial-item .quote-icon-left,.testimonials .testimonial-item .quote-icon-right{color:color-mix(in srgb,var(--accent-color),transparent 40%);font-size:26px;line-height:0}.testimonials .testimonial-item .quote-icon-left{display:inline-block;left:-5px;position:relative}.testimonials .testimonial-item .quote-icon-right{display:inline-block;right:-5px;position:relative;top:10px;transform:scale(-1,-1)}.testimonials .testimonial-item p{font-style:italic;margin:0 15px 15px 15px;padding:20px;background:color-mix(in srgb,var(--default-color),transparent 97%);position:relative;margin-bottom:35px;border-radius:6px}.testimonials .testimonial-item p::after{content:"";width:0;height:0;border-top:20px solid color-mix(in srgb,var(--default-color),transparent 97%);border-right:20px solid transparent;border-left:20px solid transparent;position:absolute;bottom:-20px;left:calc(50% - 20px)}.testimonials .swiper-wrapper{height:auto}.testimonials .swiper-pagination{margin-top:40px;position:relative}.testimonials .swiper-pagination .swiper-pagination-bullet{width:12px;height:12px;background-color:var(--background-color);opacity:1;border:1px solid var(--accent-color)}.testimonials .swiper-pagination .swiper-pagination-bullet-active{background-color:var(--accent-color)}@media (min-width:768px){body.contact-page .main,body.qui-sommes-nous-page .main,body.realisations-page .main,body.service-category-page .main{padding-top:140px;background:0 0}body.contact-page .main>section:first-child,body.qui-sommes-nous-page .main>section:first-child,body.realisations-page .main>section:first-child,body.service-category-page .main>section:first-child{margin-top:-140px;padding-top:200px}body.qui-sommes-nous-page .main>section.page-title:first-child{padding-top:160px}body.service-category-page .main>section.page-title:first-child{padding-top:160px}}.portfolio.section{padding-top:60px;padding-bottom:3rem}@media (max-width:991px){.portfolio.section{padding-top:60px;padding-bottom:2rem}}.portfolio .portfolio-container{position:relative}.portfolio .portfolio-filters{padding:0;margin:0;list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:30px}.portfolio .portfolio-filters li{cursor:pointer;padding:8px 16px;font-size:15px;font-weight:500;line-height:1;color:#1a1a1a;transition:all .3s ease-in-out;border-radius:50px;background:color-mix(in srgb,var(--surface-color),#1a1a1a 5%)}.portfolio .portfolio-filters li:hover{color:var(--accent-color)}.portfolio .portfolio-filters li.filter-active{color:var(--contrast-color);background:var(--accent-color)}.portfolio .portfolio-wrap{transition:.3s;position:relative;overflow:hidden;border-radius:8px;height:250px;z-index:1}.portfolio .portfolio-wrap::before{content:"";background:rgba(0,0,0,.6);position:absolute;left:30px;right:30px;top:30px;bottom:30px;transition:all ease-in-out .3s;z-index:2;opacity:0}.portfolio .portfolio-wrap img{transition:.3s;width:100%}.portfolio .portfolio-wrap .portfolio-info{opacity:0;position:absolute;top:0;left:0;right:0;bottom:0;text-align:center;z-index:3;transition:all ease-in-out .3s;display:flex;flex-direction:column;justify-content:center;align-items:center}.portfolio .portfolio-wrap .portfolio-info h4{font-size:20px;color:var(--contrast-color);font-weight:600;margin-bottom:5px}.portfolio .portfolio-wrap .portfolio-info p{color:var(--contrast-color);font-size:14px;margin:0 0 15px 0}.portfolio .portfolio-wrap .portfolio-info .portfolio-links{display:flex;gap:15px}.portfolio .portfolio-wrap .portfolio-info .portfolio-links a{color:var(--contrast-color);font-size:20px;transition:.3s;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);border-radius:50%;line-height:0}.portfolio .portfolio-wrap .portfolio-info .portfolio-links a:hover{background:var(--accent-color)}.portfolio .portfolio-wrap:hover::before{top:0;left:0;right:0;bottom:0;opacity:1}.portfolio .portfolio-wrap:hover img{transform:scale(1.1)}.portfolio .portfolio-wrap:hover .portfolio-info{opacity:1}.contact .contact-main-wrapper{position:relative;display:grid;grid-template-columns:1fr;gap:30px}.paddingpages{padding-top:60px}@media (min-width:992px){.paddingpages{padding-top:60px}}@media (min-width:992px){.contact .contact-main-wrapper{grid-template-columns:45% 55%;min-height:600px}}.contact .map-wrapper{height:800px;width:100%;border-radius:16px;overflow:hidden}@media (min-width:992px){.contact .map-wrapper{height:100%;position:sticky;top:100px}}.contact .contact-content{display:flex;flex-direction:column;gap:30px}.contact .contact-cards-container{display:grid;grid-template-columns:1fr;gap:15px}@media (min-width:576px){.contact .contact-cards-container{grid-template-columns:repeat(2,1fr)}}.contact .contact-card{background-color:var(--surface-color);padding:20px;border-radius:12px;display:flex;align-items:flex-start;gap:15px;box-shadow:0 5px 15px rgba(0,0,0,.04);transition:transform .3s ease,box-shadow .3s ease}.contact .contact-card .icon-box{width:50px;height:50px;flex-shrink:0;background-color:color-mix(in srgb,var(--accent-color),transparent 90%);border-radius:10px;display:flex;justify-content:center;align-items:center}.contact .contact-card .icon-box i{font-size:22px;color:var(--accent-color)}.contact .contact-card .contact-text h4{font-size:18px;font-weight:600;margin-bottom:8px;color:#111}.contact .contact-card .contact-text p{font-size:14px;line-height:1.5;color:var(--default-color);margin-bottom:0}.contact-mobile-actions{display:flex;gap:10px;width:100%}.contact-mobile-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 16px;border-radius:12px;font-weight:600;font-size:15px;text-decoration:none;color:var(--contrast-color);background:var(--accent-color);box-shadow:0 4px 12px rgba(0,0,0,.1);transition:transform .2s ease,box-shadow .2s ease}.contact-mobile-btn i{font-size:1.1rem}.contact-mobile-btn:hover{color:var(--contrast-color);transform:translateY(-2px);box-shadow:0 6px 16px color-mix(in srgb,var(--accent-color),transparent 60%)}@media (min-width:768px){.contact-mobile-actions{display:none!important}}#formulaire{scroll-margin-top:100px}.contact .contact-form-container{background-color:var(--surface-color);padding:30px;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.08)}.contact .contact-form-container h3{font-size:24px;font-weight:700;margin-bottom:15px;color:#1a1a1a;position:relative;padding-left:15px}.contact .contact-form-container h3:before{content:"";position:absolute;left:0;top:0;height:100%;width:4px;background-color:var(--accent-color);border-radius:2px}.contact .contact-form-container>p{font-size:15px;line-height:1.6;margin-bottom:25px;color:var(--default-color)}.contact .contact-form-container .php-email-form .form-control{height:auto;padding:14px 20px;border-radius:10px;border:1px solid color-mix(in srgb,var(--default-color),transparent 90%);color:var(--default-color);transition:all .3s ease}.contact .contact-form-container .php-email-form .form-control:focus{background-color:var(--surface-color);border-color:var(--accent-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-color),transparent 85%)}.contact .contact-form-container .php-email-form .form-control::placeholder{color:color-mix(in srgb,var(--default-color),transparent 60%)}.contact .contact-form-container .php-email-form textarea.form-control{min-height:140px}.contact .contact-form-container .php-email-form .form-submit{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;margin-top:10px}@media (max-width:576px){.contact .contact-form-container .php-email-form .form-submit{flex-direction:column;align-items:flex-start}}.contact .contact-form-container .php-email-form button{background-color:var(--accent-color);color:var(--contrast-color);border:none;padding:12px 28px;border-radius:50px;font-weight:600;font-size:15px;letter-spacing:.5px;transition:all .3s ease}.contact .contact-form-container .php-email-form button:hover{background-color:color-mix(in srgb,var(--accent-color),#000 15%);transform:translateY(-2px);box-shadow:0 6px 15px color-mix(in srgb,var(--accent-color),transparent 75%)}.contact .contact-form-container .php-email-form .social-links{display:flex;gap:12px}.contact .contact-form-container .php-email-form .social-links a{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:20%;color:#1a1a1a;font-size:16px;transition:all .3s ease}.contact .contact-form-container .php-email-form .social-links a:hover{background-color:var(--accent-color);color:var(--contrast-color);transform:translateY(-3px)}@media (max-width:768px){.contact .contact-form-container{padding:25px 20px}.contact .contact-form-container h3{font-size:22px}}@media (max-width:575px){.contact .contact-cards-container{grid-template-columns:repeat(4,1fr);gap:12px}.contact .map-wrapper{height:auto;width:100%;border-radius:16px;overflow:hidden}.contact .contact-card{background-color:var(--surface-color);padding:16px 10px;justify-content:center;align-items:center;flex-direction:column;cursor:pointer;border-radius:14px;box-shadow:0 4px 14px rgba(0,0,0,.12);min-height:88px}.contact .contact-card .contact-text{display:block;text-align:center;margin-top:8px}.contact .contact-card .contact-text p{display:none}.contact .contact-card .contact-text h4{font-size:10px;font-weight:600;margin:0;color:#111;line-height:1.2}.contact .contact-card .icon-box{width:56px;height:56px;border-radius:14px;background-color:color-mix(in srgb,var(--accent-color),transparent 85%)}.contact .contact-card .icon-box i{font-size:26px;color:var(--accent-color)}.contact .contact-card:active{transform:scale(.96)}}.service-details .service-hero{position:relative;margin-bottom:40px;border-radius:12px;overflow:hidden}.service-details .service-hero img{width:100%;height:400px;object-fit:cover}.service-details .service-hero .service-badge{position:absolute;top:20px;right:20px;background:var(--accent-color);color:var(--contrast-color);padding:8px 20px;border-radius:25px;font-size:14px;font-weight:600}.service-details .service-content .service-header{margin-bottom:40px}.service-details .service-content .service-header h2{font-size:32px;font-weight:700;margin-bottom:20px;color:#1a1a1a}.service-details .service-content .service-header .service-intro{font-size:18px;line-height:1.7;color:color-mix(in srgb,var(--default-color),transparent 20%)}.service-details .service-content h4{font-size:24px;font-weight:600;margin-bottom:30px;color:#1a1a1a}.service-details .service-features{margin-bottom:50px}.service-details .service-features .feature-item{display:flex;align-items:flex-start;padding:20px;background:var(--surface-color);border-radius:8px;border:1px solid color-mix(in srgb,var(--default-color),transparent 90%);transition:all .3s ease}.service-details .service-features .feature-item:hover{box-shadow:0 8px 25px color-mix(in srgb,var(--default-color),transparent 90%);transform:translateY(-2px)}.service-details .service-features .feature-item .feature-icon{background:color-mix(in srgb,var(--accent-color),transparent 90%);width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:20px;flex-shrink:0}.service-details .service-features .feature-item .feature-icon i{font-size:24px;color:var(--accent-color)}.service-details .service-features .feature-item .feature-content h5{font-size:18px;font-weight:600;margin-bottom:8px;color:#1a1a1a}.service-details .service-features .feature-item .feature-content p{font-size:14px;margin:0;color:color-mix(in srgb,var(--default-color),transparent 30%)}.service-details .service-process{margin-bottom:50px}.service-details .service-process .process-steps .process-step{display:flex;margin-bottom:30px;position:relative}.service-details .service-process .process-steps .process-step:not(:last-child)::after{content:"";position:absolute;left:25px;top:60px;width:2px;height:40px;background:color-mix(in srgb,var(--accent-color),transparent 70%)}.service-details .service-process .process-steps .process-step .step-number{background:var(--accent-color);color:var(--contrast-color);width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;margin-right:25px;flex-shrink:0;font-size:16px}.service-details .service-process .process-steps .process-step .step-content h5{font-size:20px;font-weight:600;margin-bottom:10px;color:#1a1a1a}.service-details .service-process .process-steps .process-step .step-content p{font-size:15px;line-height:1.6;margin:0;color:color-mix(in srgb,var(--default-color),transparent 20%)}.service-details .service-gallery{margin-bottom:30px}.service-details .service-gallery img{transition:transform .3s ease}.service-details .service-gallery img:hover{transform:scale(1.05)}.service-details .service-sidebar .service-menu{background:var(--surface-color);padding:30px;border-radius:10px;margin-bottom:30px;border:1px solid color-mix(in srgb,var(--default-color),transparent 90%)}.service-details .service-sidebar .service-menu h4{font-size:20px;font-weight:600;margin-bottom:25px;color:#1a1a1a}.service-details .service-sidebar .service-menu .menu-list .menu-item{display:flex;align-items:center;padding:15px 0;border-bottom:1px solid color-mix(in srgb,var(--default-color),transparent 90%);color:var(--default-color);text-decoration:none;transition:all .3s ease}.service-details .service-sidebar .service-menu .menu-list .menu-item:last-child{border-bottom:none}.service-details .service-sidebar .service-menu .menu-list .menu-item.active,.service-details .service-sidebar .service-menu .menu-list .menu-item:hover{color:var(--accent-color);padding-left:10px}.service-details .service-sidebar .service-menu .menu-list .menu-item.active i,.service-details .service-sidebar .service-menu .menu-list .menu-item:hover i{color:var(--accent-color)}.service-details .service-sidebar .service-menu .menu-list .menu-item i{margin-right:12px;font-size:16px;color:color-mix(in srgb,var(--default-color),transparent 40%);transition:color .3s ease}.service-details .service-sidebar .service-menu .menu-list .menu-item span{font-weight:500}.service-details .service-sidebar .service-info{background:var(--surface-color);padding:30px;border-radius:10px;margin-bottom:30px;border:1px solid color-mix(in srgb,var(--default-color),transparent 90%)}.service-details .service-sidebar .service-info h4{font-size:20px;font-weight:600;margin-bottom:25px;color:#1a1a1a}.service-details .service-sidebar .service-info .info-list .info-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--default-color),transparent 90%)}.service-details .service-sidebar .service-info .info-list .info-item:last-child{border-bottom:none}.service-details .service-sidebar .service-info .info-list .info-item .info-label{font-weight:500;color:var(--default-color)}.service-details .service-sidebar .service-info .info-list .info-item .info-value{font-weight:600;color:var(--accent-color)}.service-details .service-sidebar .contact-card{background:linear-gradient(135deg,var(--accent-color),color-mix(in srgb,var(--accent-color),#000 20%));padding:30px;border-radius:10px;color:var(--contrast-color)}.service-details .service-sidebar .contact-card .contact-content h4{font-size:20px;font-weight:600;margin-bottom:15px;color:var(--contrast-color)}.service-details .service-sidebar .contact-card .contact-content p{margin-bottom:20px;opacity:.9;font-size:14px;line-height:1.6}.service-details .service-sidebar .contact-card .contact-content .contact-info{margin-bottom:25px}.service-details .service-sidebar .contact-card .contact-content .contact-info .contact-item{display:flex;align-items:center;margin-bottom:10px}.service-details .service-sidebar .contact-card .contact-content .contact-info .contact-item i{margin-right:10px;opacity:.8}.service-details .service-sidebar .contact-card .contact-content .contact-info .contact-item span{font-size:14px}.service-details .service-sidebar .contact-card .contact-content .btn{background:var(--contrast-color);color:var(--accent-color);border:none;padding:12px 25px;font-weight:600;border-radius:6px;transition:all .3s ease}.service-details .service-sidebar .contact-card .contact-content .btn:hover{background:color-mix(in srgb,var(--contrast-color),transparent 10%);transform:translateY(-2px)}@media (max-width:768px){.service-details .service-hero img{height:250px}.service-details .service-hero .service-badge{top:15px;right:15px;padding:6px 15px;font-size:12px}.service-details .service-content .service-header h2{font-size:24px}.service-details .feature-item{padding:15px!important}.service-details .feature-item .feature-icon{width:50px!important;height:50px!important;margin-right:15px!important}.service-details .feature-item .feature-icon i{font-size:20px!important}.service-details .service-sidebar{margin-top:30px}}.terms-of-service .tos-header{margin-bottom:60px}.terms-of-service .tos-header .last-updated{display:inline-block;padding:8px 20px;background-color:color-mix(in srgb,var(--accent-color),transparent 90%);border-radius:30px;color:var(--accent-color);font-size:.95rem;margin-bottom:20px}.terms-of-service .tos-header h2{font-size:2.5rem;margin-bottom:15px}.terms-of-service .tos-header p{color:color-mix(in srgb,var(--default-color),transparent 30%);font-size:1.1rem;max-width:700px;margin:0 auto}.terms-of-service .tos-content .content-section{margin-bottom:50px;scroll-margin-top:100px}.terms-of-service .tos-content .content-section:last-child{margin-bottom:0}.terms-of-service .tos-content .content-section h3{font-size:1.8rem;margin-bottom:20px;color:#1a1a1a}.terms-of-service.dark-background .tos-contact .contact-box h4,.terms-of-service.dark-background .tos-contact .contact-box p,.terms-of-service.dark-background .tos-contact .contact-link,.terms-of-service.dark-background .tos-content .content-section .info-box p,.terms-of-service.dark-background .tos-content .content-section .list-items li,.terms-of-service.dark-background .tos-content .content-section h3,.terms-of-service.dark-background .tos-content .content-section p,.terms-of-service.dark-background .tos-header .last-updated,.terms-of-service.dark-background .tos-header h2,.terms-of-service.dark-background .tos-header p{color:#fff}.terms-of-service.dark-background{background-color:var(--background-color)}.terms-page .terms-of-service.dark-background{background-color:#1a1a1a}.terms-page .page-title .breadcrumbs,.terms-page .page-title .breadcrumbs .current,.terms-page .page-title .breadcrumbs a,.terms-page .page-title h1,.terms-page .page-title p{color:#fff!important}.terms-page .terms-of-service.dark-background .tos-header .last-updated{color:rgba(255,255,255,.95)!important}.terms-of-service .tos-content .content-section p{color:color-mix(in srgb,var(--default-color),transparent 20%);line-height:1.7;margin-bottom:20px}.terms-of-service .tos-content .content-section p:last-child{margin-bottom:0}.terms-of-service .tos-content .content-section .info-box{display:flex;align-items:flex-start;gap:15px;padding:20px;background-color:color-mix(in srgb,var(--accent-color),transparent 95%);border-radius:15px;margin-top:20px}.terms-of-service .tos-content .content-section .info-box i{font-size:1.5rem;color:var(--accent-color);flex-shrink:0}.terms-of-service .tos-content .content-section .info-box p{margin:0;font-size:.95rem}.terms-of-service .tos-content .content-section .list-items{list-style:none;padding:0;margin:20px 0}.terms-of-service .tos-content .content-section .list-items li{position:relative;padding-left:25px;margin-bottom:12px;color:color-mix(in srgb,var(--default-color),transparent 20%)}.terms-of-service.dark-background .tos-content .content-section .list-items li::before{background-color:#fff}.terms-of-service .tos-content .content-section .list-items li:last-child{margin-bottom:0}.terms-of-service .tos-content .content-section .list-items li::before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;border-radius:50%;background-color:var(--accent-color)}.terms-of-service .tos-content .content-section .alert-box{display:flex;gap:20px;padding:25px;background-color:var(--surface-color);border-radius:15px;border-left:4px solid var(--accent-color);margin-top:20px}.terms-of-service .tos-content .content-section .alert-box i{font-size:2rem;color:var(--accent-color);flex-shrink:0}.terms-of-service .tos-content .content-section .alert-box .alert-content h5{font-size:1.1rem;margin-bottom:8px}.terms-of-service .tos-content .content-section .alert-box .alert-content p{margin:0;font-size:.95rem}.terms-of-service .tos-content .content-section .prohibited-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:20px}@media (max-width:576px){.terms-of-service .tos-content .content-section .prohibited-list{grid-template-columns:1fr}}.terms-of-service .tos-content .content-section .prohibited-list .prohibited-item{display:flex;align-items:center;gap:12px;padding:15px;background-color:var(--surface-color);border-radius:12px}.terms-of-service .tos-content .content-section .prohibited-list .prohibited-item i{color:#dc3545;font-size:1.2rem}.terms-of-service .tos-content .content-section .prohibited-list .prohibited-item span{font-size:.95rem;color:color-mix(in srgb,var(--default-color),transparent 20%)}.terms-of-service .tos-content .content-section .disclaimer-box{background-color:var(--surface-color);padding:25px;border-radius:15px;margin-top:20px}.terms-of-service .tos-content .content-section .disclaimer-box p{margin-bottom:15px;font-weight:500}.terms-of-service .tos-content .content-section .disclaimer-box ul{list-style:none;padding:0;margin:0}.terms-of-service .tos-content .content-section .disclaimer-box ul li{position:relative;padding-left:25px;margin-bottom:12px;color:color-mix(in srgb,var(--default-color),transparent 20%);font-size:.95rem}.terms-of-service .tos-content .content-section .disclaimer-box ul li:last-child{margin-bottom:0}.terms-of-service .tos-content .content-section .disclaimer-box ul li::before{content:"•";position:absolute;left:8px;color:var(--accent-color)}.terms-of-service .tos-content .content-section .notice-box{display:flex;align-items:center;gap:15px;padding:20px;background-color:color-mix(in srgb,var(--accent-color),transparent 95%);border-radius:15px;margin-top:20px}.terms-of-service .tos-content .content-section .notice-box i{font-size:1.5rem;color:var(--accent-color);flex-shrink:0}.terms-of-service .tos-content .content-section .notice-box p{margin:0;font-size:.95rem}.terms-of-service .tos-contact{margin-top:60px}.terms-of-service .tos-contact .contact-box{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-color),transparent 95%) 0,color-mix(in srgb,var(--accent-color),transparent 98%) 100%);border-radius:20px;padding:40px;display:flex;align-items:center;gap:30px}@media (max-width:576px){.terms-of-service .tos-contact .contact-box{flex-direction:column;text-align:center}}.terms-of-service .tos-contact .contact-box .contact-icon{width:60px;height:60px;background-color:var(--accent-color);border-radius:15px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.terms-of-service .tos-contact .contact-box .contact-icon i{font-size:1.8rem;color:var(--contrast-color)}.terms-of-service .tos-contact .contact-box .contact-content{flex:1}.terms-of-service .tos-contact .contact-box .contact-content h4{font-size:1.4rem;margin-bottom:8px}.terms-of-service .tos-contact .contact-box .contact-content p{color:color-mix(in srgb,var(--default-color),transparent 30%);margin-bottom:15px}.terms-of-service .tos-contact .contact-box .contact-content .contact-link{display:inline-flex;align-items:center;gap:8px;padding:12px 25px;background-color:var(--accent-color);color:var(--contrast-color);border-radius:30px;text-decoration:none;font-weight:500;transition:all .3s}.terms-of-service .tos-contact .contact-box .contact-content .contact-link:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(0,0,0,.1)}@media print{.terms-of-service .tos-contact{display:none}.terms-of-service .content-section{page-break-inside:avoid}}.privacy{font-size:1rem;line-height:1.7}.privacy .privacy-header{margin-bottom:60px;text-align:center;border-bottom:1px solid color-mix(in srgb,var(--default-color),transparent 90%);padding-bottom:40px}.privacy .privacy-header .header-content{max-width:800px;margin:0 auto}.privacy .privacy-header .header-content .last-updated{font-size:.95rem;color:color-mix(in srgb,var(--default-color),transparent 40%);margin-bottom:20px}.privacy .privacy-header .header-content h1{font-size:2.8rem;color:#1a1a1a;margin-bottom:20px;font-weight:600}.privacy .privacy-header .header-content .intro-text{font-size:1.2rem;color:color-mix(in srgb,var(--default-color),transparent 20%);line-height:1.6}.privacy .privacy-content{max-width:800px;margin:0 auto 60px}.privacy .privacy-content .content-section{margin-bottom:50px}.privacy .privacy-content .content-section:last-child{margin-bottom:0}.privacy .privacy-content .content-section h2{font-size:1.8rem;color:#1a1a1a;margin-bottom:25px;font-weight:600}.privacy .privacy-content .content-section h3{font-size:1.4rem;color:#1a1a1a;margin:30px 0 20px;font-weight:500}.privacy .privacy-content .content-section p{margin-bottom:20px}.privacy .privacy-content .content-section p:last-child{margin-bottom:0}.privacy .privacy-content .content-section ul{list-style:none;padding:0;margin:0 0 20px}.privacy .privacy-content .content-section ul li{position:relative;padding-left:25px;margin-bottom:12px}.privacy .privacy-content .content-section ul li:last-child{margin-bottom:0}.privacy .privacy-content .content-section ul li::before{content:"•";position:absolute;left:8px;color:var(--accent-color)}.privacy .privacy-contact{max-width:800px;margin:0 auto;padding-top:40px;border-top:1px solid color-mix(in srgb,var(--default-color),transparent 90%)}.privacy .privacy-contact h2{font-size:1.8rem;color:#1a1a1a;margin-bottom:20px;font-weight:600}.privacy .privacy-contact p{margin-bottom:20px}.privacy .privacy-contact .contact-details{background-color:var(--surface-color);padding:25px;border-radius:10px}.privacy .privacy-contact .contact-details p{margin-bottom:10px}.privacy .privacy-contact .contact-details p:last-child{margin-bottom:0}.privacy .privacy-contact .contact-details p strong{color:#1a1a1a;font-weight:600}@media print{.privacy{font-size:12pt;line-height:1.5}.privacy .privacy-header{text-align:left;border-bottom:1pt solid #000;padding-bottom:20pt;margin-bottom:30pt}.privacy h1{font-size:24pt}.privacy h2{font-size:18pt;page-break-after:avoid}.privacy h3{font-size:14pt;page-break-after:avoid}.privacy p,.privacy ul{page-break-inside:avoid}.privacy .contact-details{border:1pt solid #000;padding:15pt}}@media (max-width:767px){.privacy .privacy-header{margin-bottom:40px;padding-bottom:30px}.privacy .privacy-header .header-content h1{font-size:2.2rem}.privacy .privacy-header .header-content .intro-text{font-size:1.1rem}.privacy .privacy-content .content-section{margin-bottom:40px}.privacy .privacy-content .content-section h2{font-size:1.6rem}.privacy .privacy-content .content-section h3{font-size:1.3rem}}.error-404{padding:80px 0;margin:0 auto}.error-404 .error-icon{font-size:5rem;color:color-mix(in srgb,var(--accent-color),transparent 15%)}.error-404 .error-code{font-size:clamp(6rem, 15vw, 12rem);font-weight:800;color:color-mix(in srgb,#1a1a1a,transparent 10%);font-family:var(--heading-font);line-height:1}.error-404 .error-title{font-size:2rem;color:#1a1a1a;font-weight:600}.error-404 .error-text{font-size:1.1rem;color:color-mix(in srgb,var(--default-color),transparent 20%);max-width:600px;margin:0 auto}.error-404 .search-box{max-width:500px;margin:0 auto}.error-404 .search-box .input-group{border-radius:50px;overflow:hidden;box-shadow:0 5px 15px rgba(0,0,0,.05)}.error-404 .search-box .form-control{border:1px solid color-mix(in srgb,var(--default-color),transparent 90%);padding:.75rem 1.5rem;font-size:1rem;color:var(--default-color);background-color:var(--surface-color);border-radius:50px}.error-404 .search-box .form-control:focus{box-shadow:none;border-color:var(--accent-color)}.error-404 .search-box .form-control::placeholder{color:color-mix(in srgb,var(--default-color),transparent 60%)}.error-404 .search-box .search-btn{background-color:var(--accent-color);color:var(--contrast-color);border:none;padding:.75rem 1.5rem;transition:all .3s ease}.error-404 .search-box .search-btn:hover{background-color:color-mix(in srgb,var(--accent-color),transparent 15%)}.error-404 .error-action .btn-primary{padding:.75rem 2rem;font-size:1.1rem;background-color:var(--accent-color);border:none;color:var(--contrast-color);border-radius:50px;transition:all .3s ease}.error-404 .error-action .btn-primary:hover{background-color:color-mix(in srgb,var(--accent-color),transparent 15%);transform:translateY(-2px)}@media (max-width:768px){.error-404{padding:60px 0}.error-404 .error-code{font-size:clamp(4rem, 12vw, 8rem)}.error-404 .error-title{font-size:1.5rem}.error-404 .error-text{font-size:1rem;padding:0 20px}.error-404 .search-box{margin:0 20px}}body.service-subpage .service-cta-block p,body.service-subpage .service-page-content .lead,body.service-subpage .service-page-content p,body.service-subpage .service-page-content ul.service-list li{color:#f0f0f0}body.service-subpage .service-page-content .content-block h2{color:#fff}.service-page-content .lead{font-size:1.15rem;line-height:1.7}.img-placeholder.img-fluid,.service-page-content .img-placeholder,figure .img-placeholder{display:block;width:100%;aspect-ratio:16/10;max-height:360px;object-fit:cover;border-radius:16px;background:color-mix(in srgb,var(--accent-color),transparent 92%)}.service-page-content .content-block{margin-bottom:2rem}.service-page-content .content-block h2{font-size:1.5rem;margin-bottom:1rem;color:var(--heading-color)}.service-page-content ul.service-list{list-style:none;padding:0;margin:0 0 1.5rem}.service-page-content ul.service-list li{position:relative;padding-left:1.5rem;margin-bottom:.6rem;line-height:1.6}.service-page-content ul.service-list li::before{content:"";position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:50%;background:var(--accent-color)}.zones-intervention-section{margin-top:2.5rem;padding:1.75rem;background:color-mix(in srgb,var(--accent-color),transparent 96%);border-radius:16px;border:1px solid color-mix(in srgb,var(--accent-color),transparent 85%)}.zones-intervention-section h2{font-size:1.35rem;margin-bottom:.75rem;color:var(--nav-color)}.zones-intervention-section .zones-intro{margin-bottom:1rem;color:var(--text-muted,#666)}.zones-intervention-section .zones-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.35rem 1.5rem;list-style:none;padding:0;margin:0}.zones-intervention-section .zones-list li{position:relative;padding-left:1rem;color:#fff}.zones-intervention-section .zones-list li::before{content:"•";position:absolute;left:0;color:var(--accent-color)}.service-cta-block{background:color-mix(in srgb,var(--accent-color),transparent 94%);border-radius:16px;padding:1.75rem;margin-top:2.5rem;border:1px solid color-mix(in srgb,var(--accent-color),transparent 80%)}.service-cta-block .btn{min-height:48px;padding:.6rem 1.25rem;font-weight:600;border-radius:8px}@media (max-width:767px){.service-page-content .lead{font-size:1.05rem}.service-cta-block{padding:1.25rem;margin-top:2rem}.service-cta-block .btn{width:100%;justify-content:center}body.service-subpage .service-cta-block .d-flex.flex-wrap,body.service-subpage .service-cta-block>p.mt-4{flex-direction:column!important;display:flex!important;width:100%;gap:.75rem}body.service-subpage .service-cta-block .d-flex .btn,body.service-subpage .service-cta-block .d-flex .btn-primary,body.service-subpage .service-cta-block>p.mt-4 .btn{width:100%;justify-content:center}}.hidden{display:none}.fade-down,.fade-left,.fade-right,.fade-up{opacity:0;transition:opacity .8s ease-out,transform .8s ease-out}.fade-up{transform:translateY(20px) scale(.95)}.fade-up.visible{opacity:1;transform:translateY(0) scale(1)}@keyframes service-fade-up{from{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes service-fade-down{from{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes service-fade-left{from{opacity:0;transform:translateX(-20px) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes service-fade-right{from{opacity:0;transform:translateX(20px) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}body.qui-sommes-nous-page .fade-up,body.service-category-page .fade-up,body.service-subpage .fade-up{animation:service-fade-up .8s ease-out forwards;animation-delay:var(--fade-delay, 0s)}body.qui-sommes-nous-page .fade-down,body.service-category-page .fade-down,body.service-subpage .fade-down{animation:service-fade-down .8s ease-out forwards;animation-delay:var(--fade-delay, 0s)}body.qui-sommes-nous-page .fade-left,body.service-category-page .fade-left,body.service-subpage .fade-left{animation:service-fade-left .8s ease-out forwards;animation-delay:var(--fade-delay, 0s)}body.qui-sommes-nous-page .fade-right,body.service-category-page .fade-right,body.service-subpage .fade-right{animation:service-fade-right .8s ease-out forwards;animation-delay:var(--fade-delay, 0s)}.fade-down{transform:translateY(-20px) scale(.95)}.fade-down.visible{opacity:1;transform:translateY(0) scale(1)}.fade-left{transform:translateX(-20px) scale(.95)}.fade-left.visible{opacity:1;transform:translateX(0) scale(1)}.fade-right{transform:translateX(20px) scale(.95)}.fade-right.visible{opacity:1;transform:translateX(0) scale(1)}.fade-down,.fade-left,.fade-right,.fade-up{opacity:0;transition:opacity .8s ease-out,transform .8s ease-out;transition-delay:var(--fade-delay, 0s)}body.qui-sommes-nous-page .fade-down,body.qui-sommes-nous-page .fade-left,body.qui-sommes-nous-page .fade-right,body.qui-sommes-nous-page .fade-up{animation-duration:1s;animation-timing-function:cubic-bezier(0.22,1,0.36,1)}[data-anim]{opacity:0;transition:opacity .6s ease-out,transform .6s ease-out}[data-anim].is-visible{opacity:1;transform:none}.fade-left{transform:translateX(-20px) scale(.95)}.fade-left.visible{opacity:1;transform:translateX(0) scale(1)}.php-email-form .error-message,.php-email-form .loading,.php-email-form .sent-message{display:none;margin-top:1rem;padding:.75rem 1rem;border-radius:.5rem;font-weight:600;font-size:.95rem;opacity:0;transition:opacity .4s ease,transform .4s ease;transform:translateY(-5px)}.php-email-form .error-message.show,.php-email-form .loading.show,.php-email-form .sent-message.show{display:block;opacity:1;transform:translateY(0)}.php-email-form .sent-message{background-color:#e6f4ea;color:#121212;border:1px solid #121212}.php-email-form .error-message{background-color:#fdecea;color:#121212;border:1px solid #121212}.php-email-form .loading{background-color:#fff4e5;color:#f3a427;border:1px solid #f3a427}@media (max-width:768px){.php-email-form .error-message,.php-email-form .loading,.php-email-form .sent-message{font-size:.9rem;padding:.65rem .8rem}}