@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Montserrat:wght@600;700;800&display=swap);:root{--dlav-bg:#05070b;--dlav-surface:#0c1119;--dlav-surface-2:#111827;--dlav-border:rgba(148, 163, 184, 0.2);--dlav-text:#e6edf7;--dlav-muted:#9aa4b2;--dlav-accent:#2c5bff;--dlav-accent-soft:#60a5fa;--dlav-accent-cyan:#2ee6f2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,"Segoe UI",sans-serif;background:radial-gradient(1000px 700px at 95% -20%,rgba(44,91,255,.26),transparent 62%),radial-gradient(700px 500px at 0 10%,rgba(46,230,242,.11),transparent 58%),var(--dlav-bg);color:var(--dlav-text);letter-spacing:.01em;overflow-x:hidden}h1,h2,h3,h4{font-family:Montserrat,Inter,sans-serif}.glass,.nav-glass{background:linear-gradient(145deg,rgba(12,17,25,.8),rgba(10,14,22,.62));backdrop-filter:blur(16px);border:1px solid var(--dlav-border)}.nav-glass{transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.nav-glass.scrolled{background:rgba(7,10,15,.92);border-color:rgba(96,165,250,.25);box-shadow:0 12px 24px rgba(3,7,18,.35)}nav a[data-nav-link]{position:relative}nav a[data-nav-link]::after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:2px;border-radius:999px;transform:scaleX(0);transform-origin:left;transition:transform .24s ease;background:linear-gradient(90deg,var(--dlav-accent-cyan),var(--dlav-accent-soft))}nav a[data-nav-link]:hover::after{transform:scaleX(1)}.brand-logo{height:2.15rem;width:auto}.nav-logo{height:2.9rem;width:auto}.footer-logo{width:min(360px,100%);height:auto}.section-title{font-size:clamp(2rem, 1.12rem + 2.5vw, 3.15rem);line-height:1.08;letter-spacing:-.03em}.muted{color:var(--dlav-muted);line-height:1.75}.card-hover{transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.card-hover:hover{transform:translateY(-7px);border-color:rgba(96,165,250,.55);box-shadow:0 20px 46px rgba(2,6,23,.55)}.btn-primary{background:linear-gradient(135deg,var(--dlav-accent-cyan),var(--dlav-accent));color:#fff;transition:transform .24s ease,box-shadow .24s ease,filter .24s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(44,91,255,.35);filter:brightness(1.04)}.btn-secondary{border:1px solid rgba(148,163,184,.46);color:#e2e8f0;transition:border-color .24s ease,color .24s ease,transform .24s ease,background-color .24s ease}.btn-secondary:hover{border-color:rgba(96,165,250,.76);color:#fff;transform:translateY(-2px);background:rgba(44,91,255,.08)}.hero-overlay{position:relative;min-height:84vh}.hero-cinematic{animation:heroZoom 16s ease-in-out infinite alternate}.no-hero-zoom{animation:none}@keyframes heroZoom{from{background-size:102%;background-position:50% 50%}to{background-size:108%;background-position:54% 46%}}.hero-overlay::before{content:"";position:absolute;inset:0;background:linear-gradient(95deg,rgba(2,6,23,.95) 6%,rgba(2,6,23,.84) 44%,rgba(2,6,23,.68) 100%),radial-gradient(420px 280px at 82% 16%,rgba(44,91,255,.18),transparent 74%)}.hero-content{position:relative;z-index:3}.hero-copy-panel{background:linear-gradient(145deg,rgba(2,6,23,.86),rgba(2,6,23,.58));border:1px solid rgba(148,163,184,.28);backdrop-filter:blur(6px);box-shadow:0 16px 44px rgba(2,6,23,.45)}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.38;transform:scale(1.05)}.hero-light,.hero-light-secondary{position:absolute;width:42vw;height:120vh;filter:blur(4px);opacity:.3;z-index:2;pointer-events:none}.hero-light{left:-12vw;top:-8vh;background:linear-gradient(150deg,rgba(46,230,242,.58),rgba(46,230,242,0));clip-path:polygon(0 0,24% 0,100% 100%,0 100%);animation:sweepLeft 9s ease-in-out infinite alternate}.hero-light-secondary{right:-10vw;top:-15vh;background:linear-gradient(210deg,rgba(44,91,255,.64),rgba(44,91,255,0));clip-path:polygon(76% 0,100% 0,100% 100%,0 100%);animation:sweepRight 10s ease-in-out infinite alternate}@keyframes sweepLeft{from{transform:translateX(0) translateY(0) rotate(1deg)}to{transform:translateX(4vw) translateY(1vh) rotate(3deg)}}@keyframes sweepRight{from{transform:translateX(0) translateY(0) rotate(-1deg)}to{transform:translateX(-4vw) translateY(1.6vh) rotate(-3deg)}}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal[data-stagger]{transition-delay:var(--stagger-delay, 0ms)}.gallery-item img{transition:transform .45s ease,filter .35s ease}.gallery-item:hover img{transform:scale(1.07);filter:brightness(1.09)}.gallery-item .overlay{opacity:0;transition:opacity .35s ease}.gallery-item:hover .overlay{opacity:1}.lightbox{background:rgba(2,6,23,.9);backdrop-filter:blur(6px)}.back-to-top{position:fixed;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:30;width:2.75rem;height:2.75rem;border-radius:999px;border:1px solid rgba(148,163,184,.4);background:rgba(15,23,42,.82);color:#dbeafe;display:inline-flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);box-shadow:0 10px 20px rgba(2,6,23,.32);opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .22s ease,transform .22s ease,border-color .22s ease,background-color .22s ease}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover{border-color:rgba(96,165,250,.72);background:rgba(30,41,59,.92)}.masonry-grid{column-count:1;column-gap:1.25rem}.masonry-item{break-inside:avoid;margin-bottom:1.25rem}.masonry-item img{width:100%;height:auto;display:block}.tech-grid .tech-item{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.tech-grid .tech-item:hover{transform:translateY(-5px);border-color:rgba(96,165,250,.55);box-shadow:0 12px 28px rgba(2,6,23,.5)}.cta-glow{background:radial-gradient(520px 180px at 20% 20%,rgba(46,230,242,.18),transparent 70%),radial-gradient(500px 220px at 85% 80%,rgba(44,91,255,.22),transparent 70%),linear-gradient(120deg,rgba(15,23,42,.95),rgba(30,41,59,.82))}.form-input,.form-select,.form-textarea{width:100%;border:1px solid rgba(148,163,184,.32);background:rgba(15,23,42,.78);color:#e5e7eb;border-radius:.75rem;padding:.82rem .95rem;outline:0;transition:border-color .25s ease,box-shadow .25s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:rgba(96,165,250,.86);box-shadow:0 0 0 3px rgba(44,91,255,.22)}.quote-form,.quote-form .grid,.quote-form fieldset,.quote-form label{min-width:0}.quote-form fieldset{overflow:hidden;min-inline-size:0}.quote-form .form-input,.quote-form .form-select,.quote-form .form-textarea{display:block;width:100%;inline-size:100%;max-width:100%;box-sizing:border-box}.quote-form input:not([type=radio]):not([type=checkbox]),.quote-form select,.quote-form textarea{min-width:0;max-width:100%;width:100%;box-sizing:border-box;-webkit-appearance:none;appearance:none}.quote-form legend{max-width:100%;white-space:normal;line-height:1.35}.quote-form label.inline-flex{white-space:normal;align-items:flex-start;line-height:1.35}.social-icon{border:1px solid rgba(148,163,184,.3);transition:border-color .25s ease,transform .25s ease,color .25s ease}.social-icon:hover{border-color:rgba(96,165,250,.72);transform:translateY(-2px);color:#fff}.map-placeholder{background-image:linear-gradient(160deg,rgba(17,24,39,.96),rgba(15,23,42,.75)),url("https://images.unsplash.com/photo-1547119957-637f8679db1e?auto=format&fit=crop&w=1400&q=80");background-size:cover;background-position:center}.active-nav{color:#fff!important}.active-nav::after{content:"";display:block;width:100%;height:2px;margin-top:4px;border-radius:999px;background:linear-gradient(90deg,var(--dlav-accent-cyan),var(--dlav-accent-soft));transform:scaleX(1)!important}[data-mobile-menu-button] svg{transition:transform .25s ease}[data-mobile-menu-button].is-open svg{transform:rotate(90deg) scale(.96)}@media (max-width:768px){.brand-logo{height:1.9rem}.nav-logo{height:2.4rem}.hero-cinematic{animation-duration:12s}.hero-overlay{min-height:76vh}.hero-light,.hero-light-secondary{width:80vw;opacity:.22}.quote-form fieldset{padding:1rem}.quote-form .grid{grid-template-columns:1fr!important}.quote-form legend{letter-spacing:.04em!important;font-size:.72rem}}@media (min-width:640px){.masonry-grid{column-count:2}}@media (min-width:1024px){.masonry-grid{column-count:3;column-gap:1.5rem}.masonry-item{margin-bottom:1.5rem}}