/* Motion layer: original layout, content and brand colours remain intact. */
.site-progress{position:fixed;inset:0 0 auto;height:3px;z-index:100;pointer-events:none;transform:scaleX(0);transform-origin:left;background:var(--orange);box-shadow:0 0 14px #f46a0870}
.navlinks a{position:relative;padding-block:6px}
.navlinks a::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.navlinks a:hover::after,.navlinks a.active::after,.navlinks a:focus-visible::after{transform:scaleX(1)}
.btn{position:relative;isolation:isolate;overflow:hidden;transition:background .25s,box-shadow .3s,transform .3s}
.btn:hover{box-shadow:0 8px 28px #f46a0838}
.btn:focus-visible,.tabs button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--orange);outline-offset:5px}
.btn:focus-visible{outline-color:var(--white)}
.card{position:relative;isolation:isolate;--rx:0deg;--ry:0deg;--reveal-y:0px;transform:perspective(1000px) translate3d(0,var(--reveal-y),0) rotateX(var(--rx)) rotateY(var(--ry));transition:border-color .3s,transform .35s ease,opacity .7s ease}
.card::before{content:'';position:absolute;top:-1px;left:0;width:100%;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .45s ease;pointer-events:none}
.card::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(240px circle at var(--pointer-x,50%) var(--pointer-y,40%),#f46a081a,transparent 75%);opacity:0;transition:opacity .4s}
.card:hover::before{transform:scaleX(1)}
.card:hover::after{opacity:1}
.card .num{display:inline-block;transition:color .3s,text-shadow .3s}
.card:hover .num{text-shadow:0 0 24px #f46a0866}
.photo{background-position:center calc(50% + var(--photo-shift,0px))}
.faqitem summary{transition:color .25s}
.faqitem summary:hover,.faqitem[open] summary{color:var(--orange)}
.faqitem summary::after{transition:transform .3s}
.faqitem[open] summary::after{transform:rotate(180deg)}
.field input,.field select,.field textarea{transition:border-color .25s,box-shadow .25s,background .25s}
.field input:focus,.field select:focus,.field textarea:focus{box-shadow:0 0 0 3px #f46a0818;background:#192139}
.tabs button{transition:background .25s,border-color .25s,transform .25s}
.tabs button:hover{border-color:var(--orange);background:#f46a0814}
.click-wave{position:absolute;border-radius:50%;background:#fff;opacity:0;pointer-events:none;z-index:0}
@media(prefers-reduced-motion:no-preference){
  .motion-enabled [data-reveal]{opacity:0;transform:translate3d(0,24px,0);transition:opacity .75s ease,transform .85s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
  .motion-enabled .card[data-reveal]{--reveal-y:24px;transform:perspective(1000px) translate3d(0,var(--reveal-y),0) rotateX(var(--rx)) rotateY(var(--ry))}
  .motion-enabled [data-reveal].is-visible{opacity:1;transform:translate3d(0,0,0)}
  .motion-enabled .card[data-reveal].is-visible{--reveal-y:0px;transform:perspective(1000px) translate3d(0,0,0) rotateX(var(--rx)) rotateY(var(--ry))}
  .motion-enabled .card.is-visible{transition-delay:0ms;transition:opacity .75s ease,transform .4s ease}
  .motion-enabled .photo[data-reveal]{transform:none}
  .motion-enabled .btn{transform:translate(var(--magnet-x,0px),var(--magnet-y,0px))}
  .motion-enabled .btn:active{transform:scale(.97)}
  .motion-enabled .click-wave{animation:click-wave .65s ease-out forwards}
  @keyframes click-wave{from{transform:scale(0);opacity:.3}to{transform:scale(1);opacity:0}}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .card,.btn{transform:none!important}
  .photo{background-position:center}
}
@media(hover:none){.card::after{display:none}.card:hover::before{transform:none}}
