/* Motion enhances server-rendered content; JS-free pages remain fully visible. */
.site-preloader{display:none;position:fixed;inset:0;z-index:10000;place-items:center;background:#092e27;color:#faf8f3;pointer-events:none;overflow:hidden;transition:transform .65s cubic-bezier(.76,0,.24,1),opacity .6s ease;will-change:transform}.motion-loading .site-preloader{display:grid}.site-preloader[hidden]{display:none!important}.site-preloader.is-closing{transform:translate3d(0,-103%,0);opacity:0}.preloader-inner{text-align:center;position:relative;padding:40px}.preloader-symbol{height:98px;width:98px;margin:0 auto 30px;position:relative;display:grid;place-items:center}.preloader-symbol img{width:42px;height:auto;filter:brightness(0) invert(1);animation:preloader-breathe 1.8s ease-in-out infinite}.preloader-orbit{position:absolute;inset:4px;border:1px solid #faf8f324;border-top-color:#c28a56;border-radius:50%;animation:preloader-turn 1.8s linear infinite}.preloader-orbit:nth-child(2){inset:15px;border-color:#faf8f320;border-right-color:#b69cc1;animation-direction:reverse;animation-duration:2.4s}.preloader-brand{font:500 clamp(24px,4vw,36px)/1.2 var(--heading,Manrope,sans-serif);letter-spacing:.19em;padding-left:.19em}.preloader-tagline{font:400 9px/1.8 var(--body,Inter,sans-serif);letter-spacing:.2em;text-transform:uppercase;color:#c5d5c8;max-width:310px;margin:17px auto 27px}.preloader-line{height:1px;width:150px;margin:auto;background:#ffffff26;overflow:hidden}.preloader-line span{display:block;width:45%;height:100%;background:#c28a56;animation:preloader-travel 1.25s ease-in-out infinite}
.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:#826a91;z-index:120;transform:scaleX(0);transform-origin:left;pointer-events:none}.has-motion .home-hero .hero-copy,.has-motion .home-hero .hero-image-wrap,.has-motion .reveal-visible{animation:none}.motion-ready .motion-reveal{transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1);transition-delay:var(--motion-delay,0ms)}.motion-ready .motion-reveal[data-motion-visible="false"]{opacity:0;transform:translate3d(0,30px,0)}.motion-ready .motion-reveal[data-motion-visible="true"]{opacity:1;transform:none}.site-header{transition:box-shadow .4s ease,background-color .4s ease,backdrop-filter .4s ease}.site-header.is-scrolled{box-shadow:0 6px 24px #092e270b;background:#faf8f3f5;backdrop-filter:blur(14px)}#main-navigation a{position:relative}#main-navigation a::after{content:"";position:absolute;inset:auto 0 -6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.22,1,.36,1)}#main-navigation a[aria-current="page"]::after{transform:scaleX(1);transform-origin:left}
.button,.text-link svg,.button svg,.reference-card,.reference-card>svg,.recognition-card,.cms-records article,.gallery-open img,.photo-frame img,.footer a,.brand img{transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease,color .3s ease;transition-delay:0ms}.button:active{transform:translateY(1px) scale(.98)}.text-link{position:relative}.text-link::after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.has-motion main,.has-motion .footer{transition:opacity .18s ease,filter .18s ease}.motion-leaving main,.motion-leaving .footer{opacity:.2;filter:blur(2px)}.motion-paused .site-preloader *{animation-play-state:paused!important}
@media(hover:hover) and (pointer:fine){#main-navigation a:hover::after{transform:scaleX(1);transform-origin:left}.button:hover{transform:translateY(-3px);box-shadow:0 9px 20px #103d3215}.button:hover svg{transform:translate(3px,-3px)}.text-link:hover::after{transform:scaleX(1)}.text-link:hover svg{transform:translateX(4px)}.reference-card:hover,.recognition-card:hover{transform:translateY(-6px);box-shadow:0 18px 32px #103d3210}.reference-card:hover>svg{transform:translateY(-3px) rotate(-5deg)}.gallery-open:hover img,.photo-frame:hover img{transform:scale(1.035)}.brand:hover img{transform:rotate(-8deg) scale(1.07)}.footer a:hover{color:#c28a56}.motion-ready .reference-card[data-motion-visible="true"]:hover,.motion-ready .recognition-card[data-motion-visible="true"]:hover{transform:translateY(-6px)}}
@keyframes preloader-turn{to{transform:rotate(360deg)}}@keyframes preloader-breathe{0%,100%{opacity:.6;transform:scale(.94)}50%{opacity:1;transform:scale(1.04)}}@keyframes preloader-travel{0%{transform:translateX(-120%)}100%{transform:translateX(340%)}}
@media(max-width:767px){.motion-ready .motion-reveal[data-motion-visible="false"]{transform:translate3d(0,20px,0)}.preloader-symbol{width:82px;height:82px}.preloader-tagline{font-size:8px}.reading-progress{height:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.site-preloader{display:none!important}.reading-progress{display:none}.motion-ready .motion-reveal,.motion-ready .motion-reveal[data-motion-visible="false"]{opacity:1!important;transform:none!important;transition:none!important}.site-header,.button,.text-link,.text-link::after,#main-navigation a::after,.reference-card,.reference-card>svg,.recognition-card,.gallery-open img,.photo-frame img,.brand img,main,.footer{transition:none!important;animation:none!important}.motion-leaving main,.motion-leaving .footer{opacity:1;filter:none}}
@media(prefers-reduced-motion:reduce){.button:hover,.button:active,.reference-card:hover,.recognition-card:hover,.reference-card:hover>svg,.button:hover svg,.text-link:hover svg,.gallery-open:hover img,.photo-frame:hover img,.brand:hover img{transform:none!important}}

body[data-motion="off"] *,body[data-motion="off"] *::before,body[data-motion="off"] *::after{animation:none!important;transition:none!important}
