/* V17: remove mobile top/bottom dead space and preserve all existing photos. */
html,body{min-height:0!important}body{margin:0!important}main{height:auto!important;min-height:0!important;padding:0!important;margin:0!important}main>section{height:auto!important;min-height:0!important;max-height:none!important;box-sizing:border-box}main>section:empty{display:none!important}
#home.hero.hero-visible{min-height:0!important;height:auto!important;padding-block:32px 30px!important;justify-content:center!important;align-items:center!important}
#home .hero-content{position:relative!important;top:auto!important;bottom:auto!important;transform:none!important;margin:0!important;padding:0!important}
#home .hero-orb{pointer-events:none!important}
.showcase-strip{min-height:0!important;padding-block:25px!important;margin-block:0!important}
main>.section:not(#home){min-height:0!important;padding-block:36px!important}
main>.section .section-head{margin-block:0 20px!important}
main>.section .section-head h2{margin-top:10px!important}
footer{min-height:0!important;margin:0!important;padding-block:20px!important}
#contact{padding-bottom:18px!important}
/* Ensure background canvases never participate in document flow. */
.network-scene,#particles,.depth-grid,.glow{pointer-events:none!important}
.network-scene{position:absolute!important;inset:0!important;display:block!important;z-index:0!important}
main>section{isolation:isolate}main>section>.section-head,main>section>.hero-content,main>section>.contact-grid,main>section>.packages-grid,main>section>.catalog-grid{position:relative;z-index:2}
/* One small animated point of light at the start of section titles. */
.section-head h2{position:relative;display:block;max-width:100%;overflow:visible}
.section-head h2::before{content:"";display:inline-block;width:8px;height:8px;vertical-align:middle;margin-inline-end:10px;border-radius:50%;background:#b9ffe0;box-shadow:0 0 10px 3px #7fffc599,0 0 24px 6px #3bbd8270;animation:v17pulse 2.8s ease-in-out infinite}
@keyframes v17pulse{0%,100%{opacity:.55;box-shadow:0 0 8px 2px #7fffc570}50%{opacity:1;box-shadow:0 0 14px 5px #9bffdaaa,0 0 30px 9px #4ee3a05e}}
@media(max-width:760px){
 .nav{position:sticky!important;top:0!important;height:64px!important;min-height:64px!important}
 #home.hero.hero-visible{display:flex!important;flex-direction:column!important;justify-content:center!important;min-height:0!important;padding:22px 20px 24px!important;overflow:hidden!important}
 #home .hero-content{width:100%!important;max-width:100%!important;z-index:3!important}
 #home .eyebrow{margin:0 0 10px!important}
 #home h1{margin:10px 0!important;line-height:1.26!important;font-size:clamp(33px,8.4vw,47px)!important}
 #home p{margin:0!important;line-height:1.7!important}
 #home .hero-buttons{margin-top:14px!important;gap:9px!important}
 #home .hero-orb{position:absolute!important;top:15%!important;left:0!important;width:190px!important;height:190px!important;opacity:.10!important;transform:none!important}
 .showcase-strip{padding:20px!important}
 main>.section:not(#home){padding:26px 20px!important}
 main>.section .section-head{margin-bottom:16px!important}
 main>.section .section-head h2{line-height:1.35!important}
 #work .projects-grid:has(.empty:only-child){margin:0!important}
 footer{padding:16px 20px!important;gap:8px!important}
 .section-head h2::before{width:6px;height:6px;margin-inline-end:7px}
}
@media(prefers-reduced-motion:reduce){.section-head h2::before{animation:none}}
