/* Pointer effects are optional enhancements. All content remains accessible without them. */
.service-card{transition:background-color .25s ease}
.service-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .3s ease;pointer-events:none}
.service-card:focus-within{background:#edf2e7}
.service-card:focus-within:after{transform:scaleX(1)}
.equipment-card{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.equipment-card:focus-within{border-color:#84a877;box-shadow:0 10px 25px #15351b0c}
.equipment-icon,.service-icon{transition:transform .35s ease,stroke .25s ease}
.equipment-art:before,.equipment-art:after{transition:transform .6s ease,border-color .35s ease}
.button .icon:last-child,.nav-contact .icon,.text-link .icon,.service-card>a .icon,.equipment-details>a .icon{transition:transform .25s ease}
.site-header nav>a:not(.nav-contact){position:relative}
.site-header nav>a:not(.nav-contact):after{content:"";position:absolute;left:0;bottom:-8px;width:100%;height:1px;background:#b9e57b;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.nav-contact{transition:background-color .25s ease,border-color .25s ease}
.project-visual>img{transition:transform .8s cubic-bezier(.2,.6,.3,1)}
.visual-note{transition:transform .5s ease,box-shadow .5s ease}
.field-tag{transition:transform .35s ease,border-color .35s ease,background-color .35s ease}
.paddock-tabs button{transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}
.faq-list summary{transition:color .2s ease}
.view-section{isolation:isolate}
.view-section>.container{position:relative;z-index:1}
.view-section:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;background:radial-gradient(460px circle at var(--spotlight-x,50%) var(--spotlight-y,30%),#b9e57b17,transparent 75%);transition:opacity .4s ease}

@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .service-card:hover{background:#edf2e7}
 .service-card:hover:after{transform:scaleX(1)}
 .service-card:hover .service-icon{transform:translateY(-3px) rotate(-4deg);stroke:#008b3e}
 .equipment-card:hover{transform:translateY(-6px);box-shadow:0 16px 34px #15351b12;border-color:#84a877}
 .equipment-card:hover .equipment-icon{transform:scale(1.1) rotate(-5deg);stroke:#2f643c}
 .equipment-card:hover .equipment-art:before{transform:scale(1.08);border-color:#73976475}
 .equipment-card:hover .equipment-art:after{transform:scale(1.12);border-color:#73976450}
 .button:hover .icon:last-child,.nav-contact:hover .icon,.service-card>a:hover .icon,.equipment-details>a:hover .icon{transform:translate(3px,-3px)}
 .button-glass:hover .icon:last-child,.text-link:hover .icon{transform:translateX(4px)}
 .site-header nav>a:not(.nav-contact):hover:after{transform:scaleX(1)}
 .nav-contact:hover{background:#b9e57b0d;border-color:#a9cc8d}
 .project-visual:hover>img{transform:scale(1.035)}
 .project-visual:hover .visual-note{transform:translateY(-5px);box-shadow:0 12px 26px #071b1726}
 .field-tag:hover{transform:translateY(-4px);border-color:#c5e79d;background:#0a241e8c}
 .paddock-tabs button:not(.selected):hover{background:#f7faf3;color:#254f2c}
 .faq-list summary:hover{color:#007b37}
 .view-section[data-cursor-active="true"]:before{opacity:1}
}

@media(prefers-reduced-motion:reduce){
 .service-card:after{transition:none}
 .view-section:before{display:none}
 .equipment-card,.equipment-icon,.service-icon,.project-visual>img,.visual-note,.field-tag,.button .icon:last-child{transform:none!important}
}
