:root{--bg:#eef1f5;--bg-soft:#f6f8fb;--hero-bg:#0a1524;--surface:#fff;--surface-2:#f3f6fa;--border:#1018281a;--border-strong:#10182829;--text:#101828;--text-muted:#4b5563;--text-dim:#6b7280;--primary:#157a8c;--primary-2:#0f5b68;--accent:#f5a623;--accent-2:#f59e0b;--gradient-primary:linear-gradient(135deg, #157a8c 0%, #0f5b68 100%);--gradient-accent:linear-gradient(135deg, #f7b733 0%, #f59e0b 100%);--radius-sm:10px;--radius:16px;--radius-lg:22px;--radius-pill:999px;--shadow-sm:0 1px 2px #1018280f;--shadow-card:0 10px 30px -12px #1018282e;--shadow-lift:0 22px 48px -20px #10182847;--shadow-nav:0 8px 30px -10px #10182833;--container:1200px;--ease:cubic-bezier(.22, 1, .36, 1);--font-head:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;--font-body:"Inter", system-ui, -apple-system, Segoe UI, Roboto, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:110px}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.65;overflow-x:hidden}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none}.container{max-width:var(--container);margin:0 auto;padding:0 1.5rem}.nav{z-index:200;transition:padding .3s var(--ease);padding:1rem 0;position:fixed;top:0;left:0;right:0}.nav-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);box-shadow:var(--shadow-nav);justify-content:space-between;align-items:center;gap:1.5rem;padding:.6rem .6rem .6rem 1.4rem;display:flex}.nav.scrolled{padding:.5rem 0}.logo{font-family:var(--font-head);letter-spacing:-.02em;flex-shrink:0;align-items:center;gap:.6rem;font-size:1.2rem;font-weight:700;display:flex}.logo-mark{border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid;overflow:hidden}.logo-mark img{object-fit:cover;width:100%;height:100%}.logo-text{color:var(--text)}.logo-accent{color:var(--primary)}.nav-links{align-items:center;gap:.35rem;margin:0 auto;font-size:.95rem;font-weight:500;list-style:none;display:flex}.nav-links>li{position:relative}.nav-links>li>a{color:var(--text-muted);border-radius:var(--radius-pill);transition:color .2s var(--ease), background .2s var(--ease);white-space:nowrap;align-items:center;gap:.3rem;padding:.55rem .9rem;display:inline-flex}.nav-links>li>a:hover{color:var(--text);background:var(--surface-2)}.nav-links>li.active>a{color:var(--primary);font-weight:600}.nav-links .caret{transition:transform .25s var(--ease)}.nav-links>li:hover .caret{transform:rotate(180deg)}.dropdown{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:230px;box-shadow:var(--shadow-lift);opacity:0;visibility:hidden;transition:opacity .22s var(--ease), transform .22s var(--ease);padding:.5rem;list-style:none;position:absolute;top:calc(100% + .5rem);left:50%;transform:translate(-50%)translateY(8px)}.nav-links>li:hover .dropdown,.nav-links>li:focus-within .dropdown{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.dropdown a{color:var(--text-muted);transition:background .2s var(--ease), color .2s var(--ease);border-radius:10px;padding:.6rem .8rem;font-size:.92rem;display:block}.dropdown a:hover{background:var(--surface-2);color:var(--primary)}.nav-cta{flex-shrink:0}.nav-toggle{border-radius:10px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;width:42px;height:42px;display:none}.nav-toggle span{background:var(--text);width:22px;height:2px;transition:all .3s var(--ease);border-radius:2px;display:block}.nav-toggle.active span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.btn{border-radius:var(--radius-pill);font-family:var(--font-head);transition:all .25s var(--ease);white-space:nowrap;border:1px solid #0000;align-items:center;gap:.5rem;padding:.72rem 1.4rem;font-size:.92rem;font-weight:600;display:inline-flex}.btn-lg{padding:.95rem 1.8rem;font-size:1rem}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 8px 22px -8px #157a8cb3}.btn-primary:hover{background:var(--primary-2);transform:translateY(-2px);box-shadow:0 14px 30px -10px #157a8cb3}.btn-accent{background:var(--accent);color:#1a1206;box-shadow:0 8px 22px -8px #f5a623b3}.btn-accent:hover{background:var(--accent-2);transform:translateY(-2px)}.btn-light{color:var(--text);background:#fff;box-shadow:0 10px 26px -10px #00000080}.btn-light:hover{transform:translateY(-2px);box-shadow:0 16px 34px -12px #0000008c}.btn-ghost{color:var(--text);border-color:var(--border-strong);background:0 0}.btn-ghost:hover{background:var(--surface-2);border-color:var(--primary);color:var(--primary)}.btn-ghost-light{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff14;border-color:#ffffff59}.btn-ghost-light:hover{background:#ffffff29;border-color:#fff}.hero{background:var(--hero-bg);color:#fff;text-align:center;padding:12rem 0 7rem;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:radial-gradient(60% 55% at 50% 88%,#f5a62347,#0000 70%),radial-gradient(50% 60% at 12% 20%,#157a8c59,#0000 70%),radial-gradient(45% 55% at 88% 15%,#157a8c47,#0000 70%);position:absolute;inset:0}.hero:after{content:"";pointer-events:none;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000 20%,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 40%,#000 20%,#0000 75%)}.hero .container{z-index:1;position:relative}.hero-pill{border-radius:var(--radius-pill);color:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeInUp .8s var(--ease) both;background:#ffffff14;border:1px solid #ffffff2e;align-items:center;gap:.6rem;margin-bottom:1.8rem;padding:.5rem 1.1rem;font-size:.85rem;display:inline-flex}.pulse-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse;box-shadow:0 0 #f5a62399}@keyframes pulse{0%{box-shadow:0 0 #f5a62399}70%{box-shadow:0 0 0 10px #f5a62300}to{box-shadow:0 0 #f5a62300}}.hero-title{font-family:var(--font-head);letter-spacing:-.02em;max-width:1000px;animation:fadeInUp .9s .1s var(--ease) both;margin:0 auto 1.5rem;font-size:clamp(2.5rem,6vw,5rem);font-weight:700;line-height:1.06}.hero-sub{color:#ffffffc7;max-width:680px;animation:fadeInUp 1s .2s var(--ease) both;margin:0 auto 2.5rem;font-size:clamp(1rem,1.4vw,1.2rem)}.hero-cta{animation:fadeInUp 1.1s .3s var(--ease) both;flex-wrap:wrap;justify-content:center;gap:.8rem;display:flex}.highlight{color:var(--accent);white-space:nowrap;position:relative}.highlight:after{content:"";background:var(--accent);opacity:.85;border-radius:3px;height:3px;position:absolute;bottom:.08em;left:0;right:0}.gradient-text{color:var(--primary);display:inline-block}.accent-text{color:var(--accent)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.page-hero{background:var(--hero-bg);color:#fff;text-align:center;padding:11rem 0 4.5rem;position:relative;overflow:hidden}.page-hero:before{content:"";pointer-events:none;background:radial-gradient(55% 70% at 50% 120%,#f5a62338,#0000 70%),radial-gradient(50% 70% at 15% 0,#157a8c52,#0000 70%);position:absolute;inset:0}.page-hero .container{z-index:1;position:relative}.page-hero h1{font-family:var(--font-head);letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(2.2rem,5vw,3.6rem);font-weight:700;line-height:1.1}.page-hero p{color:#fffc;max-width:640px;margin:0 auto;font-size:1.1rem}.breadcrumb{color:#ffffffa6;align-items:center;gap:.5rem;margin-bottom:1.2rem;font-size:.85rem;display:inline-flex}.breadcrumb a{color:#ffffffd9}.breadcrumb a:hover{color:var(--accent)}.stats{background:var(--hero-bg);padding:0 0 4rem}.stats-inner{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);z-index:2;text-align:center;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:-4rem;padding:2.4rem 2rem;display:grid;position:relative}.stat{position:relative}.stat-num,.stat .plus{font-family:var(--font-head);color:var(--primary);font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1;display:inline-block}.stat .plus{color:var(--accent)}.stat-label{color:var(--text-muted);margin-top:.5rem;font-size:.85rem;font-weight:500}.section{padding:6rem 0;position:relative}.section-alt{background:var(--bg-soft)}.section-dark{background:var(--hero-bg);color:#fff}.section-head{text-align:center;max-width:760px;margin:0 auto 3.5rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--primary);border-radius:var(--radius-pill);background:#157a8c12;border:1px solid #157a8c40;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.4rem .95rem;font-size:.78rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:var(--primary);border-radius:50%;width:7px;height:7px}.section-dark .eyebrow{color:var(--accent);background:#f5a6231a;border-color:#f5a6234d}.section-dark .eyebrow:before{background:var(--accent)}.section-title{font-family:var(--font-head);letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(1.9rem,4vw,3rem);font-weight:700;line-height:1.15}.section-sub{color:var(--text-muted);max-width:620px;margin:0 auto;font-size:1.05rem}.section-dark .section-sub{color:#ffffffc7}.section-cta{text-align:center;margin-top:3rem}.prose p{color:var(--text-muted);margin-bottom:1rem}.prose p:last-child{margin-bottom:0}.services-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.service-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .35s var(--ease);padding:2rem;position:relative}.service-card:hover{box-shadow:var(--shadow-lift);border-color:#0000;transform:translateY(-6px)}.service-icon{width:54px;height:54px;color:var(--primary);transition:all .35s var(--ease);background:#157a8c1a;border-radius:14px;place-items:center;margin-bottom:1.2rem;display:grid}.service-card:hover .service-icon{background:var(--primary);color:#fff}.service-icon svg{width:26px;height:26px}.service-card h3{font-family:var(--font-head);margin-bottom:.6rem;font-size:1.25rem;font-weight:600}.service-card p{color:var(--text-muted);margin-bottom:1.2rem;font-size:.95rem}.service-tags{flex-wrap:wrap;gap:.4rem;list-style:none;display:flex}.service-tags li{border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);padding:.25rem .7rem;font-size:.74rem}.services-grid-two{grid-template-columns:1fr 1fr}.industries-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.industry{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:all .25s var(--ease);align-items:center;gap:.9rem;padding:1.2rem 1.4rem;font-weight:500;display:flex}.industry:hover{border-color:var(--primary);box-shadow:var(--shadow-card);transform:translateY(-3px)}.industry span{font-size:1.5rem}.industry-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .35s var(--ease);padding:2rem}.industry-card:hover{box-shadow:var(--shadow-lift);transform:translateY(-6px)}.industry-card .ind-emoji{margin-bottom:.8rem;font-size:2.2rem}.industry-card h3{font-family:var(--font-head);margin-bottom:.5rem;font-size:1.2rem;font-weight:600}.industry-card p{color:var(--text-muted);font-size:.93rem}.projects-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .35s var(--ease);cursor:pointer;overflow:hidden}.project-card:hover{box-shadow:var(--shadow-lift);transform:translateY(-6px)}.project-card:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.project-cover{background:#0b1120;height:210px;position:relative;overflow:hidden}.project-cover img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .6s var(--ease)}.project-card:hover .project-cover img{transform:scale(1.05)}.project-cover:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#00000073 100%);position:absolute;inset:0}.project-tag{z-index:2;text-transform:uppercase;letter-spacing:.08em;border-radius:var(--radius-pill);color:#fff;background:#157a8ceb;padding:.3rem .8rem;font-size:.72rem;font-weight:600;position:absolute;top:1rem;left:1rem}.project-play{z-index:2;opacity:0;transition:opacity .3s var(--ease);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.project-play svg{filter:drop-shadow(0 6px 20px #0006);width:58px;height:58px}.project-card:hover .project-play,.project-card:focus-visible .project-play{opacity:1}.project-body{padding:1.5rem}.project-body h3{font-family:var(--font-head);margin-bottom:.5rem;font-size:1.2rem;font-weight:600}.project-body p{color:var(--text-muted);margin-bottom:1rem;font-size:.92rem}.project-meta{flex-wrap:wrap;gap:.4rem;display:flex}.project-meta span{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);border-radius:6px;padding:.22rem .6rem;font-size:.72rem}.project-open-hint{color:var(--primary);transition:transform .25s var(--ease);margin-top:1rem;font-size:.8rem;font-weight:600;display:inline-block}.project-card:hover .project-open-hint{transform:translate(4px)}.pmodal{z-index:1000;justify-content:center;align-items:center;padding:clamp(.75rem,3vw,2.5rem);display:none;position:fixed;inset:0}.pmodal.open{display:flex}.pmodal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:pmFade .25s var(--ease);background:#040812b8;position:absolute;inset:0}.pmodal-panel{z-index:1;background:var(--surface);border-radius:var(--radius-lg);width:min(1080px,100%);max-height:92vh;animation:pmRise .3s var(--ease);grid-template-columns:1.55fr 1fr;display:grid;position:relative;overflow:hidden;box-shadow:0 40px 90px -30px #0009}@keyframes pmFade{0%{opacity:0}to{opacity:1}}@keyframes pmRise{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:none}}.pmodal-close{z-index:5;color:#fff;width:38px;height:38px;transition:background .2s var(--ease), transform .2s var(--ease);background:#0000008c;border-radius:50%;place-items:center;display:grid;position:absolute;top:.85rem;right:.85rem}.pmodal-close:hover{background:#000c;transform:rotate(90deg)}.pmodal-stage{background:#0b1220;place-items:center;min-height:320px;display:grid;position:relative}.pmodal-media{place-items:center;width:100%;height:100%;display:grid}.pmodal-media img,.pmodal-media video{object-fit:contain;background:#0b1220;width:100%;height:100%;max-height:92vh}.pm-nav{color:#fff;width:42px;height:42px;transition:background .2s var(--ease);background:#00000080;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.pm-nav:hover{background:#000000d9}.pm-prev{left:.75rem}.pm-next{right:.75rem}.pmodal-info{flex-direction:column;padding:1.75rem;display:flex;overflow-y:auto}.pmodal-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.pmodal-tag{text-transform:uppercase;letter-spacing:.1em;color:var(--primary);margin-bottom:.35rem;font-size:.7rem;font-weight:600}.pmodal-info h3{font-family:var(--font-head);font-size:1.4rem;font-weight:600;line-height:1.2}.pmodal-count{color:var(--text-dim);white-space:nowrap;flex-shrink:0;padding-top:.2rem;font-size:.75rem}.pmodal-desc{color:var(--text-muted);margin-bottom:1.1rem;font-size:.92rem}.pmodal-meta{flex-wrap:wrap;gap:.4rem;margin-bottom:1.4rem;display:flex}.pmodal-meta span{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);border-radius:6px;padding:.22rem .6rem;font-size:.72rem}.pmodal-thumbs{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:.5rem;margin-top:auto;display:grid}.pm-thumb{aspect-ratio:16/10;background:var(--surface-2);transition:border-color .2s var(--ease), transform .2s var(--ease);border:2px solid #0000;border-radius:8px;position:relative;overflow:hidden}.pm-thumb img{object-fit:cover;object-position:top center;width:100%;height:100%}.pm-thumb:hover{transform:translateY(-2px)}.pm-thumb.active{border-color:var(--primary)}.pm-thumb.pm-thumb-video{background:var(--gradient-primary);color:#fff;place-items:center;display:grid}.pm-thumb-video svg{width:26px;height:26px}body.pm-lock{overflow:hidden}.process-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;display:grid}.process-step{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .3s var(--ease);padding:2rem 1.5rem}.process-step:hover{border-color:var(--primary);box-shadow:var(--shadow-card);transform:translateY(-4px)}.step-num{font-family:var(--font-head);color:var(--accent);margin-bottom:1rem;font-size:2.6rem;font-weight:700;line-height:1}.process-step h4{font-family:var(--font-head);margin-bottom:.5rem;font-size:1.15rem;font-weight:600}.process-step p{color:var(--text-muted);font-size:.92rem}.section-dark .process-step{background:#ffffff0a;border-color:#ffffff1a}.section-dark .process-step p{color:#ffffffb8}.team-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.team-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;transition:all .35s var(--ease);padding:2.2rem 2rem}.team-card:hover{box-shadow:var(--shadow-lift);transform:translateY(-6px)}.team-avatar{width:110px;height:110px;font-family:var(--font-head);color:#fff;background:var(--gradient-primary);border-radius:50%;place-items:center;margin:0 auto 1.4rem;font-size:2.2rem;font-weight:700;display:grid;position:relative;overflow:hidden}.team-avatar-photo{background:var(--gradient-primary);padding:3px}.team-avatar-photo img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.team-card h3{font-family:var(--font-head);margin-bottom:.3rem;font-size:1.3rem;font-weight:600}.team-role{color:var(--primary);margin-bottom:1rem;font-size:.85rem;font-weight:600}.team-card>p{color:var(--text-muted);margin-bottom:1.2rem;font-size:.93rem}.team-socials{justify-content:center;gap:.6rem;display:flex}.team-socials a{background:var(--surface-2);border:1px solid var(--border);width:38px;height:38px;color:var(--text-muted);transition:all .25s var(--ease);border-radius:50%;place-items:center;display:grid}.team-socials a:hover{color:#fff;background:var(--primary);border-color:#0000;transform:translateY(-2px)}.testimonials-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.testimonial{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .3s var(--ease);padding:2rem;position:relative}.testimonial:hover{box-shadow:var(--shadow-card);transform:translateY(-4px)}.quote-mark{font-family:var(--font-head);color:var(--accent);opacity:.5;margin-bottom:.5rem;font-size:4.5rem;line-height:.7}.testimonial p{color:var(--text);margin-bottom:1.5rem;font-size:1rem}.testimonial footer{flex-direction:column;gap:.2rem;display:flex}.testimonial footer strong{color:var(--text);font-weight:600}.testimonial footer span{color:var(--text-muted);font-size:.85rem}.cta-band{background:var(--gradient-primary);color:#fff;border-radius:var(--radius-lg);text-align:center;padding:3.5rem;position:relative;overflow:hidden}.cta-band:before{content:"";pointer-events:none;background:radial-gradient(circle,#f5a62359 0%,#0000 60%);width:500px;height:500px;position:absolute;top:-40%;right:-10%}.cta-band>*{z-index:1;position:relative}.cta-band h2{font-family:var(--font-head);margin-bottom:.8rem;font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:700}.cta-band p{color:#ffffffe6;max-width:560px;margin:0 auto 2rem}.contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:3rem;display:grid}.contact-list{flex-direction:column;gap:.8rem;display:flex}.contact-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:all .25s var(--ease);color:var(--text);align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.contact-item:hover{border-color:var(--primary);transform:translate(4px)}.contact-item svg{color:var(--primary);flex-shrink:0}.ci-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.ci-val{font-size:.95rem;font-weight:500}.contact-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:1rem;padding:2rem;display:flex}.field{flex-direction:column;gap:.4rem;display:flex}.field label{color:var(--text-muted);font-size:.8rem;font-weight:600}.field input,.field textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);font:inherit;transition:all .2s var(--ease);resize:vertical;padding:.85rem 1rem;font-size:.95rem}.field input:focus,.field textarea:focus{border-color:var(--primary);background:#fff;outline:none;box-shadow:0 0 0 3px #157a8c1f}.field input::placeholder,.field textarea::placeholder{color:var(--text-dim)}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:#d92d20}.contact-form button[type=submit]:disabled{opacity:.65;cursor:progress}.form-status{text-align:center;min-height:1.2em;margin-top:.5rem;font-size:.9rem}.form-status.success{color:#0f7a3d}.form-status.error{color:#d92d20}.section-title-left{text-align:left;font-size:1.8rem}.lead-muted{color:var(--text-muted);margin-bottom:2rem}.btn-block{justify-content:center;width:100%}.field-error{color:#d92d20;font-size:.8rem}.hp-field{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.footer{background:var(--hero-bg);color:#ffffffb8;padding:4rem 0 2rem}.footer-grid{grid-template-columns:1.6fr 1fr 1fr 1.4fr;gap:3rem;margin-bottom:3rem;display:grid}.footer .logo{margin-bottom:1rem}.footer .logo-text{color:#fff}.footer .logo-accent{color:var(--accent)}.footer-tag{color:#fff9;max-width:320px;margin-bottom:1.2rem;font-size:.92rem}.footer-socials{gap:.6rem;display:flex}.footer-socials a{color:#fffc;width:38px;height:38px;transition:all .25s var(--ease);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:50%;place-items:center;display:grid}.footer-socials a:hover{background:var(--primary);color:#fff;border-color:#0000}.footer-col h5{font-family:var(--font-head);color:#fff;margin-bottom:1rem;font-size:.95rem;font-weight:600}.footer-col ul{flex-direction:column;gap:.6rem;list-style:none;display:flex}.footer-col a{color:#ffffffa6;transition:color .2s var(--ease);font-size:.9rem}.footer-col a:hover{color:var(--accent)}.footer-bottom{color:#ffffff80;border-top:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-top:2rem;font-size:.85rem;display:flex}.wa-float{z-index:300;width:58px;height:58px;transition:transform .25s var(--ease);background:#25d366;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:1.4rem;right:1.4rem;box-shadow:0 10px 30px -6px #25d36699}.wa-float:hover{transform:scale(1.08)}.wa-float svg{width:30px;height:30px}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(28px)}.reveal.in{opacity:1;transform:translateY(0)}@media (width<=980px){.services-grid,.projects-grid,.team-grid,.testimonials-grid,.industries-grid,.process-grid{grid-template-columns:repeat(2,1fr)}.stats-inner{grid-template-columns:repeat(2,1fr);gap:2rem 1rem}.contact-grid{grid-template-columns:1fr;gap:2.5rem}.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}.footer-brand{grid-column:span 2}}@media (width<=820px){.nav-links,.nav-cta{display:none}.nav-toggle{display:flex}.nav-links.open{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lift);flex-direction:column;align-items:stretch;gap:.2rem;margin:0;padding:1rem;display:flex;position:absolute;top:calc(100% + .5rem);left:0;right:0}.nav-links.open .dropdown{opacity:1;visibility:visible;box-shadow:none;border:none;min-width:0;padding:0 0 0 1rem;position:static;transform:none}.nav-links.open>li:hover .caret{transform:none}.nav{padding:.8rem 0}.nav-bar{padding:.5rem .5rem .5rem 1.2rem;position:relative}}@media (width<=760px){.hero{padding:9rem 0 4.5rem}.section{padding:4rem 0}.page-hero{padding:9rem 0 3.5rem}.cta-band{padding:2.2rem}.services-grid,.projects-grid,.team-grid,.testimonials-grid,.industries-grid,.process-grid{grid-template-columns:1fr}.stats-inner{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:span 1}}@media (width<=880px){.pmodal-panel{grid-template-rows:auto 1fr;grid-template-columns:1fr;max-height:94vh}.pmodal-stage{min-height:0;max-height:46vh}.pmodal-media img,.pmodal-media video{max-height:46vh}.pmodal-info{padding:1.25rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
