:root{--teal: #57c1b6;--teal-dark: #3da89e;--teal-deep: #2a8a80;--dark: #171717;--dark-2: #222222;--gray: #f4f6f8;--text: #333333;--text-light: #666666;--white: #ffffff}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,sans-serif;color:var(--text);background:var(--white);line-height:1.6}h1,h2,h3,h4{font-family:Questrial,sans-serif;line-height:1.2}h1{font-size:clamp(2rem,5vw,3.2rem)}h2{font-size:clamp(1.6rem,3vw,2.2rem)}h3{font-size:1.3rem}h4{font-size:1rem;text-transform:uppercase;letter-spacing:.08em}p{color:var(--text-light);line-height:1.8}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.dark-section p,.dark-section li{color:#aaa}.dark-section h1,.dark-section h2,.dark-section h3,.dark-section h4{color:var(--white)}.fade-in{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.fade-in.delay-1{transition-delay:.1s}.fade-in.delay-2{transition-delay:.2s}.fade-in.delay-3{transition-delay:.3s}.fade-in.delay-4{transition-delay:.4s}.fade-in.delay-5{transition-delay:.5s}.container{max-width:1140px;margin:0 auto;padding:0 1.5rem}.section{padding:5rem 0}.section-sm{padding:3rem 0}.btn{display:inline-block;padding:.8rem 2rem;border-radius:4px;font-family:Inter,sans-serif;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s;border:2px solid transparent}.btn-primary{background:var(--teal);color:var(--white);border-color:var(--teal)}.btn-primary:hover{background:var(--teal-dark);border-color:var(--teal-dark)}.btn-outline{background:transparent;color:var(--white);border-color:var(--white)}.btn-outline:hover{background:var(--white);color:var(--dark)}.btn-dark{background:var(--dark);color:var(--white);border-color:var(--dark)}.btn-dark:hover{background:var(--dark-2)}.divider-teal{display:block;width:100%;overflow:hidden;line-height:0}.divider-teal svg{display:block;width:100%}header{background:var(--dark);position:sticky;top:0;z-index:100;box-shadow:0 2px 12px #0006}header nav{display:flex;align-items:center;justify-content:space-between;height:72px}.logo{display:flex;align-items:center;gap:.75rem;color:var(--white);font-family:Questrial,sans-serif;font-size:1.15rem;flex-shrink:0}.logo img{height:44px;width:auto}nav ul{list-style:none;display:flex;align-items:center;gap:.25rem}nav ul a{color:silver;font-size:.9rem;padding:.4rem .75rem;border-radius:4px;transition:color .2s,background .2s}nav ul a:hover{color:var(--white);background:#ffffff12}nav ul a.project-hub-cta{border:1px solid rgba(87,193,182,.6);color:var(--white);background:#57c1b61f;margin-left:.5rem;padding:.45rem 1.05rem;font-weight:600}nav ul a.project-hub-cta:hover{background:#57c1b63d;border-color:var(--teal)}nav ul a.cta{background:var(--teal);color:var(--white);margin-left:.5rem;padding:.45rem 1.1rem;font-weight:600}nav ul a.cta:hover{background:var(--teal-dark)}.menu-toggle{display:none;background:none;border:none;color:var(--white);font-size:1.5rem;cursor:pointer}footer{background:var(--dark);color:#aaa}.footer-inner{display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:3rem;padding:4rem 1.5rem}.footer-brand img{margin-bottom:1rem}.footer-brand p{font-size:.9rem}.footer-links h4,.footer-contact h4{color:var(--teal);margin-bottom:1rem}.footer-links ul{list-style:none;display:flex;flex-direction:column;gap:.4rem}.footer-links a,.footer-contact a{color:#aaa;font-size:.9rem;transition:color .2s}.footer-links a:hover,.footer-contact a:hover{color:var(--teal)}.footer-contact p{font-size:.9rem;margin-bottom:.4rem}.footer-bottom{border-top:1px solid #2a2a2a;padding:1.25rem 1.5rem;text-align:center;font-size:.85rem}.footer-bottom a{color:var(--teal)}@media(max-width:900px){.menu-toggle{display:block}nav ul{display:none;position:absolute;top:72px;left:0;right:0;background:var(--dark);flex-direction:column;padding:1rem 1.5rem 1.5rem;gap:.25rem;border-top:1px solid #2a2a2a}nav ul.open{display:flex}nav ul a{padding:.6rem .75rem;width:100%}nav ul a.project-hub-cta{margin-left:0}nav ul a.cta{margin-left:0}.footer-inner{grid-template-columns:1fr;gap:2rem;padding:3rem 1.5rem}}
