html,body{margin:0;padding:0}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{margin:0;padding:0}.navbar{box-sizing:border-box;display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background-color:#1da5ff;width:100%}.logo{height:3.7rem;object-fit:contain}.title{font-family:sans-serif;font-weight:680;line-height:1.1;font-size:1.3rem;color:#fff;white-space:nowrap}.title p{margin:0}.fabTitle{color:#1049ab;font-weight:600}.quoteBtn{margin-left:auto;text-decoration:none}button{border:none;font-family:sans-serif;border-radius:6px;font-weight:600;font-size:1rem;background-color:#1852a3;color:#fff;cursor:pointer;padding:.4rem .9rem;transition:background-color .2s ease;white-space:nowrap}button:hover{background-color:#4067af}button:focus{outline:none}@media(max-width:768px){.navbar{flex-wrap:nowrap;padding:.4rem .6rem}.logo{height:2.6rem}.title{font-size:1rem;line-height:1.05}.quoteBtn{margin-left:auto}button{font-size:.9rem;padding:.35rem .6rem}}.btn-mobile{display:none}@media(max-width:768px){.btn-desktop{display:none}.btn-mobile{display:inline}}.hero{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70vh;padding:4rem 1.5rem;text-align:center;color:#fff;font-family:Inter,system-ui,Arial,sans-serif;overflow:hidden}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;opacity:0;z-index:0;transition:opacity 1.5s ease-in-out}.hero-bg:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#1da5ffd9,#1852a3d9)}.hero-bg.active{opacity:1}.hero-bg.fade-layer{opacity:0;z-index:1;transition:opacity 3s ease-in-out}.hero-bg.fade-layer.visible{opacity:1}.hero-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.hero h1{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:800;line-height:1.15;margin-bottom:1.25rem}.hero h1 span{color:#facc15}.hero p{max-width:650px;font-size:1.1rem;line-height:1.6;margin-bottom:2.5rem;color:#f1f5f9}.heroActions{display:flex;justify-content:center;align-items:center;gap:1rem}.heroActions button{padding:.75rem 1.75rem;font-size:1rem;font-weight:600;border-radius:10px;border:none;cursor:pointer;transition:transform .15s ease,background-color .2s ease}.heroActions .quoteBtn{background-color:#facc15;color:#1f2937;border:2px solid #facc15}.heroActions .quoteBtn:hover{background-color:#eab308;transform:translateY(-2px)}.heroActions .workBtn{background-color:transparent;color:#fff;border:2px solid white}.heroActions .workBtn:hover{background-color:#ffffff26;transform:translateY(-2px)}.services{padding:5rem 1.5rem;background-color:#f8fafc;text-align:center;font-family:Inter,system-ui,Arial,sans-serif}.services-eyebrow{font-size:.85rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#2563eb;margin-bottom:.75rem}.services h2{font-size:clamp(2rem,4vw,2.75rem);font-weight:800;line-height:1.2;color:#0f172a;margin-bottom:1.25rem}.services h2 span{display:block;color:#2563eb;margin-top:.25rem}.services-description{max-width:720px;margin:0 auto 3rem;font-size:1.05rem;line-height:1.7;color:#475569}.services-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.75rem}.service-card{background-color:#fff;padding:2rem;border-radius:16px;text-align:left;box-shadow:0 10px 25px #0000000f;transition:transform .2s ease,box-shadow .2s ease}.service-card:hover{transform:translateY(-4px);box-shadow:0 16px 35px #00000014}.service-card h3{font-size:1.25rem;font-weight:700;margin-bottom:.5rem;color:#0f172a}.service-card p{font-size:.95rem;line-height:1.6;color:#475569}.gallery{padding:5rem 1.5rem;background-color:#f8fafc;text-align:center;font-family:Inter,system-ui,Arial,sans-serif;overflow-x:hidden}.gallery-eyebrow{font-size:1.2rem;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:#1da5ff;margin-bottom:1rem}.slideshow{position:relative;max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;padding:0 3rem}.slide{width:100%;max-width:1100px;aspect-ratio:4 / 3;overflow:hidden;border-radius:18px;box-shadow:0 25px 60px #00000026}.slide img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .4s ease;backface-visibility:hidden}.nav-prev,.nav-next{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:none;background-color:#0000008c;color:#fff;font-size:1.4rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,transform .15s ease;z-index:5}.nav-prev{left:0}.nav-next{right:0}.nav-prev:hover,.nav-next:hover{background-color:#1da5ffe6;transform:translateY(-50%) scale(1.05)}.nav-prev:active,.nav-next:active{transform:translateY(-50%) scale(.95)}@media(max-width:768px){.gallery{padding:3rem 1rem}.gallery-eyebrow{font-size:1.1rem}.slideshow{padding:0 1rem}.nav-prev,.nav-next{width:40px;height:40px;font-size:1.2rem}.slide{height:auto;max-height:70vh;aspect-ratio:4 / 3}.slide img{width:100%;height:100%;object-fit:contain;background-color:#000}}.quote-form{display:flex;flex-direction:column;gap:1.25rem;width:100%;max-width:600px;padding:2rem;border-radius:16px;background-color:#fff;box-shadow:0 12px 30px #0000001a;font-family:Inter,system-ui,Arial,sans-serif}.quote-form>div{display:flex;gap:1rem;justify-content:center}.row{display:flex;gap:1rem}.quote-form label{width:100%;text-align:center;font-weight:600;color:#1f2937;margin-bottom:.25rem}.quote-form input,.quote-form textarea,.quote-form select{width:100%;padding:.75rem .9rem;border-radius:10px;border:1px solid #d1d5db;font-size:.95rem;font-family:inherit;text-align:center;transition:border-color .2s ease,box-shadow .2s ease}.quote-form input:focus,.quote-form textarea:focus,.quote-form select:focus{outline:none;border-color:#facc15;box-shadow:0 0 0 3px #facc1540}.quote-form textarea{min-height:120px;resize:vertical}.row{display:flex;gap:1rem;width:100%}.field{flex:1;display:flex;flex-direction:column}.field label{text-align:center;margin-bottom:.35rem;font-weight:600}.field input,.field textarea,.field select{width:100%;box-sizing:border-box;padding:.75rem .9rem;border-radius:10px;border:1px solid #d1d5db;font-size:.95rem;line-height:1.4;text-align:center;font-family:inherit}.field textarea{min-height:180px;resize:vertical}.quote-form button[type=submit]{margin:auto;padding:.8rem;border-radius:12px;border:none;background-color:#facc15;color:#1f2937;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .2s ease,transform .15s ease}.quote-form button[type=submit]:hover{background-color:#eab308}.quote-form button[type=submit]:active{transform:scale(.97)}#message{text-align:initial}.contact-page{padding:5rem 1.5rem;background-color:#f8fafc;font-family:Inter,system-ui,Arial,sans-serif}.contact-header{max-width:700px;margin:0 auto 3rem;text-align:center}.contact-header h1{font-size:clamp(2.2rem,4vw,3rem);font-weight:800;color:#1f2937;margin-bottom:1rem}.contact-header p{font-size:1.05rem;line-height:1.6;color:#475569}.contact-page .quote-section{display:flex;justify-content:center}.contact-info{margin-top:3rem;text-align:center;color:#1f2937}.contact-info p{margin:.4rem 0;font-size:.95rem}.contact-info strong{color:#1852a3}@media(max-width:768px){.contact-page{padding:3.5rem 1rem}.contact-header h1{font-size:2.2rem}}.footer{background:#0f0f0f;color:#e5e5e5;padding:60px 40px 20px;font-family:inherit}.footer-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:48px}.footer-col{display:flex;flex-direction:column}.footer-col h3,.footer-col h4{color:#fff;margin-bottom:12px;font-weight:600}.footer-col p{margin:6px 0;font-size:.95rem;line-height:1.6;color:#bdbdbd}.footer-col ul{list-style:none;padding:0;margin:0}.footer-col ul li{margin-bottom:10px}.footer-col ul li a{color:#bdbdbd;text-decoration:none;transition:color .2s ease}.footer-col ul li a:hover{color:#fff}.footer-bottom{border-top:1px solid #2a2a2a;margin-top:40px;padding-top:20px;text-align:center;font-size:.85rem;color:#8f8f8f}
