:root{--primary-color:#226d8c;--secondary-color:#115E6E;--accent-color:#f3920f;--accent-color-dark:#c0392b;--accent-color-light:#f9f8a9;--text-color:#333333;--light-bg:#f8f9fa;--white:#ffffff;--shadow:0 4px 6px rgba(0, 0, 0, 0.1);--transition:all 0.3s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;line-height:1.6;color:var(--text-color);background-color:var(--light-bg)}.header-content,header,header h1,header p{position:relative}header{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:var(--white);padding:2rem 1rem;text-align:center;overflow:hidden}.header-content{max-width:1200px;margin:0 auto;min-height:200px}.header-text{position:relative;z-index:1}.header-image{position:absolute;right:0;top:50%;transform:translateY(-50%);height:200px;width:auto;border-radius:10px;box-shadow:var(--shadow);object-fit:cover}header::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><rect width="100" height="100" fill="none"/><path d="M0,0 L100,100 M100,0 L0,100" stroke="rgba(255,255,255,0.1)" stroke-width="1"/></svg>');opacity:.1}header h1{font-size:2.5rem;font-weight:700;margin-bottom:.5rem}header p{font-size:1.2rem;margin-bottom:1.5rem;opacity:.9}section{padding:2rem;margin:2rem auto;max-width:1200px}section h2{font-size:2rem;margin-bottom:2rem;position:relative}.realisation h3::after,section h2::after{content:"";display:block;width:60px;height:4px;background-color:var(--accent-color);margin:1rem auto;border-radius:2px}.presentation{background-color:var(--white);border-radius:15px;box-shadow:var(--shadow)}.presentation p{margin-bottom:1.5rem;font-size:1.1rem}.slogan{font-style:italic;text-align:center;color:var(--accent-color);font-size:1.3rem;margin-top:2rem}.realisations{margin-top:0;margin-bottom:0}.realisation{padding:2rem;margin:2rem 0;display:flex;flex-direction:column;gap:2rem}.contact h2,.realisation h3,section h2{text-align:center;color:var(--primary-color)}.realisation h3{margin:0;font-size:1.8rem;position:relative;padding-bottom:1rem;width:100%}.realisation h3::after{width:40px;height:3px;margin:.5rem auto}.realisation .content-wrapper{display:flex;flex-direction:column;gap:2rem;width:100%}.realisation .text-content{flex:1}.realisation .carousel{width:100%}@media (min-width:768px){.realisation .content-wrapper{flex-direction:row;align-items:flex-start}.realisation .text-content{flex:1;padding-right:2rem}.realisation .carousel{width:50%}}.realisation,.testimonials{background-color:var(--white);border-radius:15px;box-shadow:var(--shadow)}.testimonial{border-radius:10px;margin:1rem 0;position:relative}.testimonial p{font-style:italic;margin-bottom:1rem}.testimonial span{color:var(--accent-color);font-weight:600}.contact,.testimonial{padding:2rem;background-color:var(--light-bg)}.contact h2{margin-bottom:2rem}.contact-container{display:flex;gap:2rem;max-width:1200px;margin:0 auto}.contact-form,.contact-info{flex:2;background-color:var(--white);padding:2rem;border-radius:15px;box-shadow:var(--shadow)}.contact-info{flex:1}.contact-form h3,.contact-info h3{color:var(--primary-color);margin-bottom:1.5rem}.contact-info address{font-style:normal}.contact-info p{margin-bottom:1rem;line-height:1.6}.contact-info a{color:var(--primary-color);text-decoration:none;transition:var(--transition)}.contact-info a:hover{color:var(--secondary-color);text-decoration:underline}.contact-form label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-color)}.contact-form input,.contact-form textarea{width:100%;padding:.8rem;margin-bottom:1.5rem;border:2px solid #e0e0e0;border-radius:8px;transition:var(--transition)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent-color);outline:0;box-shadow:0 0 0 3px rgba(231,76,60,.1)}.contact-form button[type=submit]{display:block;margin:2rem auto;padding:1rem 2rem;background-color:var(--accent-color);color:var(--white);border:0;border-radius:50px;font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow)}.contact-form button[type=submit]:hover{transform:translateY(-2px);box-shadow:0 6px 12px rgba(0,0,0,.15);background-color:var(--accent-color-dark)}@media (max-width:768px){.contact-container{flex-direction:column}.contact-form,.contact-info{width:100%}}.suppliers{background-color:var(--white);border-radius:15px;box-shadow:var(--shadow)}.suppliers-logos{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:2rem}.carousel-track img,.supplier-logo{height:auto;transition:var(--transition)}.supplier-logo{max-width:150px;filter:grayscale(100%)}.supplier-logo:hover{filter:grayscale(0%);transform:scale(1.05)}.floating-contact-btn{position:fixed;bottom:2rem;right:2rem;background-color:var(--accent-color);color:var(--white);padding:1rem 2rem;border-radius:50px;text-decoration:none;box-shadow:var(--shadow);transition:var(--transition);z-index:1000;display:flex;align-items:center;gap:.5rem}.floating-contact-btn:hover{transform:translateY(-5px);box-shadow:0 8px 15px rgba(0,0,0,.2)}@media (max-width:768px){.header-content{min-height:auto}.header-text{margin-bottom:2rem}.header-image{position:relative;right:auto;top:auto;transform:none;width:100%;max-width:200px;height:auto;margin:0 auto}header h1{font-size:2rem}section{padding:1rem;margin:1rem auto}.suppliers-logos{gap:1rem}.supplier-logo{max-width:120px}}.carousel{position:relative;width:100%;overflow:hidden;border-radius:10px;background-color:#f0f0f0}.carousel-track{display:flex;transition:transform .5s ease-in-out;width:100%;will-change:transform;backface-visibility:hidden}.carousel-track img{width:100%;flex:0 0 100%;cursor:pointer;display:block;background-color:#e0e0e0}.carousel-track img:hover{transform:scale(1.02);will-change:transform}.carousel-nav,.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background-color:var(--accent-color);border:0;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:var(--transition);z-index:10;color:var(--white)}.carousel-nav:hover,.lightbox-nav:hover{background-color:var(--accent-color-dark);transform:translateY(-50%) scale(1.1)}.carousel-nav.prev,.lightbox-prev{left:1rem}.carousel-nav.next,.lightbox-next{right:1rem}@media (max-width:768px){.carousel button,.lightbox-nav{width:35px;height:35px;font-size:1rem}.carousel-nav.prev,.lightbox-prev{left:.5rem}.carousel-nav.next,.lightbox-next{right:.5rem}}.lightbox{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.9);z-index:2000;padding:2rem;box-sizing:border-box}.lightbox.active{display:flex;flex-direction:column;align-items:center;justify-content:center}.lightbox-content{max-width:90%;max-height:80vh;object-fit:contain;border-radius:10px;box-shadow:var(--shadow)}.lightbox-caption{color:var(--white);text-align:center;margin-top:1.5rem;font-size:1.2rem}.lightbox-close,.urgent-banner a{color:var(--accent-color);transition:var(--transition)}.lightbox-close{position:absolute;top:1rem;right:1.5rem;font-size:2.5rem;cursor:pointer}.lightbox-close:hover{color:var(--accent-color-dark);transform:scale(1.1)}.header-logo{max-width:265px;height:auto;margin-bottom:1rem}@media (max-width:768px){.header-logo{max-width:200px}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.urgent-banner{background:linear-gradient(135deg,var(--secondary-color),var(--primary-color));color:var(--white);text-align:center;padding:2rem 1.5rem;font-size:1.4rem;box-shadow:0 4px 12px rgba(0,0,0,.2);font-weight:600;height:100px;line-height:1.4;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.urgent-banner p{margin:0}.urgent-banner strong{font-size:1.5rem}.urgent-banner a{font-weight:700;text-decoration:none;font-size:1.6rem;display:inline-block;margin-left:.5rem}.urgent-banner a:hover{text-decoration:underline;transform:scale(1.05)}@media (max-width:768px){.urgent-banner{font-size:1.2rem;padding:1.5rem 1rem;height:130px}.urgent-banner strong{font-size:1.3rem}.urgent-banner a{font-size:1.4rem;display:block;margin:.5rem 0 0}}footer,footer a{color:var(--white)}footer{background-color:var(--primary-color);padding:2rem;text-align:center;margin-top:2rem}footer p{margin:0;font-size:1rem}footer a{text-decoration:none;transition:var(--transition)}footer a:hover{color:var(--accent-color);text-decoration:underline}