/* Phosphor SVG assets and progressive motion. Content is visible by default. */
.phosphor-icon{display:inline-block;fill:currentColor;stroke:none}
.menu-symbol{display:grid;place-items:center;width:20px;height:20px}
.menu-symbol>.icon{grid-area:1/1;width:20px;height:20px}
.menu-symbol>[data-icon=close]{opacity:0}
.menu-toggle[aria-expanded=true] .menu-symbol>[data-icon=menu]{opacity:0}
.menu-toggle[aria-expanded=true] .menu-symbol>[data-icon=close]{opacity:1}
.subtle-link>.icon{width:16px;height:16px}
.back-link>.icon{width:18px;height:18px}
.lightbox-close>.icon{width:23px;height:23px}
.site-header.is-scrolled{box-shadow:0 6px 24px #112f230c;border-bottom-color:#173a2c26}

@media(prefers-reduced-motion:no-preference){
  .site-header{transition:box-shadow 240ms ease,border-color 240ms ease}
  .menu-symbol>.icon{transition:opacity 180ms ease,transform 240ms ease}
  .menu-symbol>[data-icon=close]{transform:rotate(-70deg) scale(.75)}
  .menu-toggle[aria-expanded=true] .menu-symbol>[data-icon=menu]{transform:rotate(70deg) scale(.75)}
  .menu-toggle[aria-expanded=true] .menu-symbol>[data-icon=close]{transform:none}
  .button,.service-card,.team-card,.other-services>a{transition:background 220ms ease,border-color 220ms ease,box-shadow 280ms ease,transform 280ms cubic-bezier(.2,.7,.3,1)}
  .button>.icon,.text-link>.icon,.subtle-link>.icon,.service-card-link>.icon,.other-services>a>.icon:last-child{transition:transform 260ms cubic-bezier(.2,.7,.3,1)}
  .service-icon,.project-arrow,.gallery-open>span{transition:background 220ms ease,transform 300ms cubic-bezier(.2,.7,.3,1),border-color 220ms ease}
  .project-image>img,.gallery-open img{transition:transform 650ms cubic-bezier(.2,.7,.3,1)}
  .filter-button{transition:background 200ms ease,color 200ms ease,border-color 200ms ease}
  .form-field input,.form-field select,.form-field textarea{transition:border-color 180ms ease,box-shadow 180ms ease,background 180ms ease}
  .lightbox[open]::backdrop{animation:backdrop-enter 240ms ease-out both}
  @keyframes backdrop-enter{from{background:#07171000}to{background:#071710df}}
}

@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .button:hover>.icon[data-icon=arrow],.text-link:hover>.icon[data-icon=arrow],.other-services>a:hover>.icon:last-child{transform:translateX(4px)}
  .text-link:hover>.icon[data-icon=arrow-up],.service-card:hover .service-card-link>.icon{transform:translate(3px,-3px)}
  .subtle-link:hover>.icon[data-icon=arrow-down]{transform:translateY(4px)}
  .service-card:hover{box-shadow:0 14px 34px #173a2c0b;transform:translateY(-5px)}
  .service-card:hover .service-icon{transform:rotate(-6deg) scale(1.05);background:#e6efcf;border-color:#b5c99f}
  .service-card-custom:hover .service-icon{background:#486747}
  .project-card:hover .project-arrow,.gallery-open:hover>span{background:var(--lime);transform:translate(2px,-2px)}
  .project-card:hover .project-image>img,.gallery-open:hover img{transform:scale(1.045)}
  .team-card:hover,.other-services>a:hover{transform:translateY(-3px);box-shadow:0 12px 26px #173a2c08}
}

@media print{.site-header{box-shadow:none}*{animation:none!important;transition:none!important}}
