/* Interaction layer: preserves the finished layout while restoring the live theme's motion language. */
.nav-dropdown>a{position:relative}
.nav-dropdown:hover>a{color:#ed7041}
.nav-dropdown:hover>a:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;background:#ed7041;transform-origin:left center;animation:nav-underline-in .3s ease both}
.nav-dropdown>a span{color:inherit;font-size:18px}
.dropdown-menu{left:-13px;top:64px;width:293px;padding:0;background:#fff;box-shadow:none;transform:translateY(8px);transition:opacity .3s ease,visibility .3s ease,transform .3s ease}
.dropdown-menu a{height:68px;display:flex;align-items:center;padding:0 32px;border-bottom:1px solid #dedede;color:#444;font:400 18px/1.25 Poppins,var(--font-body);transition:background-color .25s ease,color .25s ease,padding-left .25s ease}
.dropdown-menu a:last-child{border-bottom:0}
.dropdown-menu a:hover{background:#fafafa;color:#ed7041;padding-left:36px}
.header-socials a{transition:color .3s ease,background-color .3s ease,border-color .3s ease,transform .3s ease}
.header-socials a:hover{color:#fff;background:#ed7041;border-color:#ed7041;transform:translateY(-3px) rotate(8deg)}
@keyframes nav-underline-in{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}

.service-symbol{position:relative;transition:transform .5s cubic-bezier(.22,.8,.25,1),color .5s ease}
.service-symbol:after{content:"";position:absolute;inset:-2px;background:#ed7041;transform:scale(1.3);opacity:0;z-index:0;transition:transform .5s ease,opacity .5s ease}
.service-symbol svg{position:relative;z-index:1;transition:color .5s ease,transform .35s ease}
.service-symbol:hover{color:#fff;transform:translateY(-4px)}
.service-symbol:hover:after{transform:scale(1);opacity:1}
.service-symbol:hover svg{transform:scale(.92)}

.process-diamond{transition:background .5s ease,border-color .5s ease,transform .5s cubic-bezier(.22,.8,.25,1)}
.process-diamond svg{transition:stroke .5s ease,transform .5s ease}
.process-step h3{transition:color .35s ease}
.process-step:hover .process-diamond{transform:rotate(45deg) scale(1.04)}
.process-step:hover .process-diamond svg{transform:rotate(-45deg) scale(1.06)}

.project img{transition:transform .65s cubic-bezier(.22,.8,.25,1),filter .45s ease}
.project:after{transition:background .55s ease}
.project span{transition:opacity .35s ease,transform .45s cubic-bezier(.22,.8,.25,1)}
.project:hover span{transform:translateY(calc(-50% - 8px))}

.featured-image>img,.side-featured>img,.small-post img{transition:transform .6s cubic-bezier(.22,.8,.25,1),filter .4s ease}
.featured-post:hover .featured-image>img,.side-featured:hover>img{transform:scale(1.035)}
.post-overlay-meta{transform:translateY(12px);transition:opacity .35s ease,transform .45s cubic-bezier(.22,.8,.25,1)}
.featured-post:hover .post-overlay-meta{transform:translateY(0)}
.side-featured:hover h3,.small-post:hover h3{color:#ed7041;transition:color .3s ease}
.blog-heading .button-outline{transition:background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease}
.blog-heading .button-outline:hover{background:#ed7041;color:#fff;border-color:#ed7041;transform:translateY(-2px)}

.about-art img{transition:transform .7s cubic-bezier(.22,.8,.25,1),filter .45s ease}
.about-art:hover img{transform:scale(1.035)}
.about-image-overlay{transition:opacity .45s ease}
.text-link,.footer-links a,.footer-contact a,.socials a{transition:color .3s ease,border-color .3s ease,transform .3s ease}
.text-link:hover{color:#ed7041}
.footer-links a:hover,.footer-contact a:hover{color:#ed7041}
.socials a:hover{color:#ed7041;border-color:#ed7041;transform:translateY(-3px)}

.map-dot{cursor:pointer;animation:map-dot-pulse 2.8s ease-in-out infinite}
.map-dot:nth-of-type(2){animation-delay:.35s}.map-dot:nth-of-type(3){animation-delay:.7s}.map-dot:nth-of-type(4){animation-delay:1.05s}.map-dot:nth-of-type(5){animation-delay:1.4s}.map-dot:nth-of-type(6){animation-delay:1.75s}
.map-dot:before{content:"";position:absolute;inset:-5px;border:1px solid #ed7041;border-radius:50%;opacity:0;transform:scale(.65);transition:opacity .3s ease,transform .3s ease}
.map-dot:after{content:attr(data-label);position:absolute;left:50%;bottom:13px;z-index:3;white-space:nowrap;padding:4px 7px;background:#ed7041;color:#fff;font:400 9px/1.2 Poppins,var(--font-body);opacity:0;transform:translate(-50%,5px);transition:opacity .3s ease,transform .3s ease;pointer-events:none}
.map-dot:hover:before,.map-dot:focus:before{opacity:1;transform:scale(1)}
.map-dot:hover:after,.map-dot:focus:after{opacity:1;transform:translate(-50%,0)}
@keyframes map-dot-pulse{0%,100%{box-shadow:0 0 0 0 rgba(237,112,65,0)}50%{box-shadow:0 0 0 4px rgba(237,112,65,.16)}}

.chart-tooltip{position:absolute;z-index:5;min-width:142px;padding:8px 10px;background:#191919;color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.16);opacity:0;transform:translate(-50%,-8px);transition:opacity .2s ease,transform .2s ease;pointer-events:none;font:400 10px/1.4 Poppins,var(--font-body)}
.chart-tooltip.visible{opacity:1;transform:translate(-50%,-16px)}
.chart-tooltip strong{display:block;color:#ed7041;font-weight:600;margin-bottom:2px}
.chart-tooltip span{display:block;color:#eee}
.activity-chart .chart-dots circle{cursor:pointer;transition:r .2s ease}
.activity-chart .chart-dots circle:hover,.activity-chart .chart-dots circle:focus{r:6}

.activity-chart .chart-line{stroke-dasharray:1000;stroke-dashoffset:1000}
.activities-panel.visible .chart-line{animation:activity-line-draw 1.8s cubic-bezier(.22,.8,.25,1) forwards}
.activities-panel.visible .chart-line.yellow{animation-delay:.18s}
.activity-chart .chart-dots{opacity:0}
.activities-panel.visible .chart-dots{animation:activity-dots-in .4s ease forwards 1.45s}
@keyframes activity-line-draw{to{stroke-dashoffset:0}}
@keyframes activity-dots-in{to{opacity:1}}

@media(prefers-reduced-motion:reduce){
  .service-symbol,.service-symbol svg,.process-diamond,.process-diamond svg,.project img,.project:after,.project span,.featured-image>img,.side-featured>img,.small-post img,.post-overlay-meta,.about-art img,.about-image-overlay,.blog-heading .button-outline,.text-link,.footer-links a,.footer-contact a,.socials a,.header-socials a{transition:none!important;transform:none!important}
  .service-symbol:after{transition:none!important}
  .map-dot{animation:none}
  .map-dot:before,.map-dot:after,.chart-tooltip{transition:none!important}
  .activities-panel.visible .chart-line{animation:none;stroke-dashoffset:0}
  .activity-chart .chart-dots,.activities-panel.visible .chart-dots{animation:none;opacity:1}
}

@media(max-width:900px){
  .nav-dropdown:hover>a:after{display:none}
  .dropdown-menu{top:auto;left:auto;width:auto;padding:0;box-shadow:none;transform:none}
  .dropdown-menu a{height:auto;display:block;padding:5px 18px;border-bottom:0;font:400 12px/1.7 Poppins,var(--font-body)}
  .dropdown-menu a:hover{padding-left:18px}
  .process-step:hover .process-diamond{transform:rotate(45deg) scale(1.02)}
}
