﻿/* Site motion and interaction layer */
html{scroll-behavior:smooth}
body{--motion-ease:cubic-bezier(.2,.7,.2,1)}
.header,.site-header,nav{transition:box-shadow .25s var(--motion-ease),background-color .25s var(--motion-ease),transform .25s var(--motion-ease)}
body.is-scrolled .header,body.is-scrolled .site-header,body.is-scrolled nav:first-of-type{box-shadow:0 12px 36px rgba(11,47,99,.12)}
.reveal-on-scroll{opacity:0;transform:translateY(26px);transition:opacity .7s var(--motion-ease),transform .7s var(--motion-ease)}
.reveal-on-scroll.is-revealed{opacity:1;transform:none}
.hero-badge,.fourC-item,.service-card,.flow-step,.photo-card,.gallery-card,.mission-stat-item,.service-card-wide-point{transition:transform .3s var(--motion-ease),box-shadow .3s var(--motion-ease),filter .3s var(--motion-ease)}
.hero-badge:hover,.fourC-item:hover,.service-card:hover,.flow-step:hover,.photo-card:hover,.gallery-card:hover,.mission-stat-item:hover,.service-card-wide-point:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(11,47,99,.14)}
img[data-lightbox]{cursor:zoom-in;transition:transform .35s var(--motion-ease),filter .35s var(--motion-ease)}
img[data-lightbox]:hover{transform:scale(1.015);filter:saturate(1.08)}
.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(3,18,36,.86);display:none;align-items:center;justify-content:center;padding:28px}
.lightbox.is-open{display:flex}
.lightbox img{max-width:min(1120px,96vw);max-height:86vh;object-fit:contain;box-shadow:0 24px 80px rgba(0,0,0,.42)}
.lightbox-close{position:absolute;right:24px;top:20px;width:44px;height:44px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff;font-size:24px;line-height:1;cursor:pointer}
.back-to-top{position:fixed;right:22px;bottom:22px;z-index:9000;width:48px;height:48px;border:0;background:#0b2f63;color:#fff;box-shadow:0 16px 40px rgba(11,47,99,.22);cursor:pointer;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .25s var(--motion-ease),transform .25s var(--motion-ease),background-color .25s var(--motion-ease)}
.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:none}
.back-to-top:hover{background:#f5b400;color:#0b2f63}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-on-scroll,img[data-lightbox],.back-to-top,.hero-badge,.fourC-item,.service-card,.flow-step,.photo-card,.gallery-card,.mission-stat-item,.service-card-wide-point{transition:none!important;transform:none!important}}
@media (max-width:640px){.back-to-top{right:16px;bottom:16px;width:44px;height:44px}.lightbox{padding:16px}.lightbox-close{right:14px;top:14px}}
