/* AG Webcraft 2.8: deliberate responses, stable hit areas and readable contacts. */
:root{--hover-ease:cubic-bezier(.22,.75,.25,1)}
.utility-phone{flex-wrap:wrap;column-gap:8px!important;row-gap:0!important}.utility-phone small{font-size:.6875rem;color:var(--muted)}
.case-live-link{margin-top:28px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.case-live-link>p{font-size:.9375rem;color:var(--muted);max-width:35ch}
.contact-direct-links{display:grid;gap:15px;margin-block:-5px 30px}.contact-phone{display:flex;align-items:center;gap:16px;text-decoration:none}.contact-phone strong{font-size:1.375rem;font-weight:600}.contact-phone small,.footer-phone small{display:block;font-size:.8125rem;margin-top:4px}.contact-whatsapp,.footer-whatsapp{display:inline-flex;align-items:center;gap:12px;font-size:1rem;text-decoration:none;justify-self:start;border-bottom:1px solid currentColor;padding-block:8px}.footer-phone{margin-block:20px 10px}.footer-phone>a{font-size:1.125rem}.footer-phone small{color:#c8dce9}.footer-whatsapp{margin-top:6px}.contact-details>.contact-direct-links{grid-column:1/-1}
body:has(dialog[open]) .whatsapp-contact,body:has(.consent:not([hidden])) .whatsapp-contact{visibility:hidden}
.button{isolation:isolate;position:relative;overflow:hidden;transition:background .25s,box-shadow .3s}.button>span{position:relative}.button::before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 15%,#ffffff1c 48%,transparent 80%);transform:translateX(-115%);transition:transform .65s var(--hover-ease);pointer-events:none}.button-icon{overflow:hidden;transition:background .3s,transform .4s var(--hover-ease)}.button-icon svg{transition:transform .4s var(--hover-ease)}
.text-link>span{background:linear-gradient(currentColor,currentColor) no-repeat 0 100%/0 1px;transition:background-size .35s var(--hover-ease)}.text-link{border-bottom-color:transparent}.text-link svg{transition:transform .4s var(--hover-ease)}
.mega-icon,.mega-icon svg,.offer-icon,.offer-icon svg,.round-arrow,.round-arrow svg{transition:transform .45s var(--hover-ease),background .3s,color .3s,border-color .3s}.mega-service{transition:background .25s}.work-discover{transition:opacity .3s,transform .45s var(--hover-ease)}.work-caption h3{transition:color .25s}.work-caption{transition:border-color .3s}.gallery-zoom{transition:opacity .3s,transform .4s}.gallery-item img{transition:transform .65s var(--hover-ease)}
.button:focus-visible::before{transform:translateX(115%)}.button:focus-visible .button-icon,.button:hover .button-icon{transform:none}.button:focus-visible .button-icon svg{transform:translate(2px,-2px)}.text-link:focus-visible>span{background-size:100% 1px}.work-link:focus-visible .round-arrow svg{transform:rotate(45deg)}
@media(hover:hover) and (pointer:fine){
 .button:hover::before{transform:translateX(115%)}.button:hover{box-shadow:0 7px 20px #00336620}.button:hover .button-icon{background:#ffffff30}.button.light:hover .button-icon{background:#00336615}.button:hover .button-icon svg{transform:translate(2px,-2px)}
 .text-link:hover>span{background-size:100% 1px}.text-link:hover svg{transform:translate(4px,-3px)}
 .work-link:hover .work-image img{transform:scale(1.055)}.work-link:hover .round-arrow svg{transform:rotate(45deg)}.work-link:hover .work-caption h3{color:var(--orange)}
 .mega-service:hover .mega-icon{background:var(--blue);color:#fff}.mega-service:hover .mega-icon svg{transform:rotate(-8deg) scale(1.05)}.home-service-grid article:has(a:hover) .offer-icon{background:var(--blue);color:#fff}.home-service-grid article:has(a:hover) .offer-icon svg{transform:translateY(-2px)}
 .gallery-item a:hover img{transform:scale(1.025)}.access-toggle{transition:background .25s,box-shadow .25s}.access-toggle:hover{box-shadow:0 6px 24px #00336638}
}
@media(max-width:1100px){.utility-phone{display:grid!important;grid-template-columns:16px auto;gap:0 7px!important}.utility-phone small{display:block;grid-column:1/-1;font-size:.6875rem}}
@media(max-width:700px){.utility-inner{justify-content:space-between;gap:12px}.utility-phone{font-size:.8125rem}.utility-inner>a:last-child{font-size:.8125rem}.utility-inner .ui-icon{width:14px;height:14px}.case-live-link{gap:15px}.case-live-link .button{font-size:.875rem;gap:12px;padding-left:18px}.case-live-link>p{font-size:.875rem}.contact-phone strong{font-size:1.25rem}}
@media(max-width:700px){.utility-phone small{font-size:.625rem}}
@media(max-width:360px){.utility-inner{justify-content:center}.utility-inner>a:last-child{display:none}}
html:is([data-text-scale="150"],[data-text-scale="200"]) .utility-phone{display:none!important}
@media(prefers-reduced-motion:reduce){.button::before{display:none}.button,.button-icon,.button-icon svg,.text-link>span,.text-link svg,.mega-icon,.mega-icon svg,.offer-icon,.offer-icon svg,.round-arrow,.round-arrow svg,.work-discover,.work-caption h3,.gallery-item img,.whatsapp-contact,.access-toggle{transition:none!important}.work-link:hover .work-image img,.gallery-item a:hover img,.work-link:hover .round-arrow svg,.button:hover .button-icon svg{transform:none!important}}
