/* Shared public-page effects. Content remains visible without JavaScript. */
.inner-hero{position:relative;isolation:isolate;overflow:hidden}
.inner-atmosphere{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.inner-atmosphere span{position:absolute;display:block}
.inner-atmosphere__orbit{width:480px;height:480px;right:-120px;top:-180px;border:1px solid #c8ae7760;border-radius:50%;background:conic-gradient(transparent 60%,#c8ae771c,transparent);box-shadow:0 0 0 40px #c8ae770a,0 0 0 80px #c8ae7706}
.inner-atmosphere__orbit:after{content:'';position:absolute;inset:55px;border:1px dashed #c8ae7740;border-radius:50%}
.inner-atmosphere__beam{inset:-60%;background:linear-gradient(115deg,transparent 37%,#c8ae7715 46%,#c8ae7730 49%,transparent 58%)}
.inner-page :is(.references-grid>figure,.client-logo,.value-grid>*,.machine-grid>*,.contact-way){transition:transform .6s cubic-bezier(.16,1,.3,1),box-shadow .5s,border-color .5s}
.inner-page :is(.references-grid>figure,.client-logo):focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.inner-page .contact-form :is(input,textarea,select){transition:border-color .3s,box-shadow .3s}
.inner-page .contact-form :is(input,textarea,select):focus{border-color:var(--gold);box-shadow:0 0 0 3px #c8ae7720;outline:2px solid var(--gold);outline-offset:2px}
.inner-page .inner-button{position:relative;overflow:hidden;isolation:isolate}
.inner-page .inner-button:after{content:'';position:absolute;inset:-70%;pointer-events:none;background:linear-gradient(110deg,transparent 40%,#fff5 50%,transparent 60%);transform:translateX(-75%)}
@media(prefers-reduced-motion:no-preference){
 .inner-atmosphere__orbit{animation:inner-orbit 30s linear infinite}
 .inner-atmosphere__beam{animation:inner-beam 10s ease-in-out infinite alternate}
 .inner-hero h1 em{background:linear-gradient(110deg,#b39a64 10%,#c8ae77 35%,#fff3d5 48%,#c8ae77 61%,#ad925e 90%);background-size:240% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:inner-title-light 8s ease-in-out infinite}
 .inner-motion-paused .inner-atmosphere span,.inner-motion-paused h1 em{animation-play-state:paused}
 .inner-button:is(:hover,:focus-visible):after{animation:inner-button-light .9s ease-out both}
 .project-viewer.is-open .project-viewer__dialog{animation:inner-viewer-open .45s cubic-bezier(.16,1,.3,1)}
 @keyframes inner-orbit{to{transform:rotate(360deg)}}
 @keyframes inner-beam{from{transform:translateX(-10%) rotate(-5deg)}to{transform:translateX(12%) rotate(5deg)}}
 @keyframes inner-title-light{0%,15%{background-position:100% 50%}65%,100%{background-position:0% 50%}}
 @keyframes inner-button-light{to{transform:translateX(75%)}}
 @keyframes inner-viewer-open{from{opacity:.3;scale:.94}to{opacity:1;scale:1}}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .inner-page .inner-tracking{transform:perspective(1000px) rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg)) translateY(-5px);box-shadow:0 18px 35px #0003;border-color:var(--gold)}
 .inner-page .references-grid>figure img{transition:transform .9s cubic-bezier(.16,1,.3,1)}
 .inner-page .references-grid>figure:hover img{transform:scale(1.07)}
 .inner-page .client-logo img{transition:transform .6s cubic-bezier(.16,1,.3,1)}
 .inner-page .client-logo:hover img{transform:scale(1.09)}
}
@media(max-width:600px){.inner-atmosphere__orbit{width:320px;height:320px;right:-180px;top:-100px}.inner-atmosphere__beam{opacity:.6}}
@media(prefers-reduced-motion:reduce){.inner-atmosphere,.inner-progress{display:none}.inner-page *, .inner-page *:before,.inner-page *:after{animation:none!important;transition:none!important}.inner-page .inner-tracking{transform:none}}
