/* Laguna Smart Technologies — Version 9 */
html{scroll-padding-top:24px}a,button{-webkit-tap-highlight-color:rgba(210,173,122,.18);touch-action:manipulation}
.btn,.v8-builder-link{transition:transform .24s ease,box-shadow .24s ease,filter .24s ease;position:relative}
.btn:active,.v8-builder-link:active{transform:translateY(1px)}
a:focus-visible,button:focus-visible{outline:3px solid #d2ad7a;outline-offset:5px}
.links a:not(.btn),.top a:not(.brand),.v8-service-links a{transition:color .25s ease,background-color .25s ease,box-shadow .25s ease}
.links a:not(.btn){position:relative;padding-block:8px}
.links a:not(.btn):after{content:'';position:absolute;height:1px;left:0;right:0;bottom:0;background:#d2ad7a;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.links a[aria-current='location']:after{transform:scaleX(1)}
.tile img{transition:transform .75s cubic-bezier(.2,.65,.3,1),filter .6s ease}
.tile:after{transition:opacity .5s ease;background:linear-gradient(transparent,rgba(3,17,27,.94));pointer-events:none}
.tile-content{transition:transform .45s ease}.tile:focus-within img{transform:scale(1.055)}
.service-strip article,.steps article,.card{transition:transform .35s ease,box-shadow .35s ease,background-color .35s ease}
.v9-image-frame{overflow:hidden;line-height:0}.v9-image-frame img{transition:transform .8s cubic-bezier(.2,.65,.3,1);display:block}
.v9-reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:no-preference){.v9-reveal.v9-pending{opacity:0;transform:translateY(22px)}.v9-reveal{transition:opacity .7s ease,transform .7s cubic-bezier(.2,.65,.3,1);transition-delay:var(--v9-delay,0ms)}}
@media(hover:hover) and (pointer:fine){.btn:hover,.v8-builder-link:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0004;filter:brightness(1.06)}.links a:hover:after{transform:scaleX(1)}.tile:hover img{transform:scale(1.055);filter:brightness(1.06)}.tile:hover .tile-content{transform:translateY(-5px)}.service-strip article:hover,.steps article:hover,.card:hover{transform:translateY(-5px);box-shadow:0 12px 24px #0002}.v9-image-frame:hover img{transform:scale(1.035)}}
@media(hover:none){.tile:hover img{transform:none}.tile-content{transform:none}.btn{min-height:44px}.links a,.top a{min-height:44px;display:inline-flex;align-items:center}}
@media(max-width:800px) and (prefers-reduced-motion:no-preference){.links.open{animation:v9-menu-in .24s ease both}@keyframes v9-menu-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.v9-reveal.v9-pending{opacity:1!important;transform:none!important}.tile:hover img,.tile:focus-within img,.btn:hover,.card:hover,.steps article:hover,.service-strip article:hover{transform:none!important}}

.service-strip .v8-service-links{grid-column:1/-1;width:100%}
/* Unified services: one image, description and destination per card. */
.v9-services{background:#071b2c;padding:76px 0 56px}.v9-services h2{max-width:800px}.v9-services-intro{max-width:720px;margin-bottom:34px}.v9-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.v9-service-card{display:flex;flex-direction:column;background:#0c2536;border:1px solid #d2ad7a40;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.v9-service-image{overflow:hidden;aspect-ratio:1.08}.v9-service-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .75s ease,filter .5s ease}.v9-service-copy{padding:24px 20px 26px}.v9-service-copy h3{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:18px;font-weight:500;margin:0 0 14px;letter-spacing:.025em}.v9-service-copy h3 span{color:#d2ad7a;transition:transform .3s ease}.v9-service-copy p{font-size:14px;line-height:1.8;margin:0;color:#c9d4dc}.v9-ai-link{font-size:14px;margin:28px 0 0}.v9-ai-link a{color:#d2ad7a;text-decoration:underline;text-underline-offset:5px}.v9-service-card:focus-visible{outline:3px solid #d2ad7a;outline-offset:5px}.v9-service-card:focus-visible img{transform:scale(1.04)}
@media(hover:hover) and (pointer:fine){.v9-service-card:hover{transform:translateY(-5px);border-color:#d2ad7aaa;box-shadow:0 16px 32px #0003}.v9-service-card:hover img{transform:scale(1.055);filter:brightness(1.05)}.v9-service-card:hover h3 span{transform:translate(2px,-2px)}}
@media(max-width:1020px){.v9-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v9-service-image{aspect-ratio:1.3}}
@media(max-width:520px){.v9-services{padding:52px 0 40px}.v9-service-grid{grid-template-columns:1fr;gap:22px}.v9-service-image{aspect-ratio:1.4}.v9-service-copy{padding:22px}.v9-service-copy h3{font-size:21px}.v9-ai-link{line-height:1.9}}
@media(prefers-reduced-motion:reduce){.v9-service-card:hover,.v9-service-card:hover img,.v9-service-card:focus-visible img,.v9-service-card:hover h3 span{transform:none}}
/* Keep the complete branded hero artwork visible on phones. */
@media(max-width:800px){.hero .hero-art{display:block;width:100%;height:auto;min-height:0;object-fit:contain;object-position:center}.hero .hero-cta{position:relative;bottom:auto;left:auto;display:flex;gap:12px;padding:18px 20px;background:#081d2b}.hero .hero-cta .btn{flex:1;text-align:center}}
@media(max-width:520px){.hero .hero-cta .btn{font-size:10px;line-height:1.5;padding:15px 10px}}
