/* R12: continuous material, composed facility details, quiet partners, own footer. */
#atmosphere-r12{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:6;contain:strict}
body.reference-r11 .passage-copy,body.reference-r11 .equipment-steps{opacity:var(--passage-ui,1)}
body.reference-r11 #services{background:radial-gradient(ellipse at 90% 48%,#c5e5ef,transparent 60%),linear-gradient(#e6f1f6,#f1f6f8 65%)}
body.reference-r11 .belief-clients{padding:100px 0 110px;background:#101936;mask-image:none;border:0;overflow:hidden}
body.reference-r11 .belief-clients .clients{padding:30px 0;background:none;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
body.reference-r11 .belief-clients .eyebrow{opacity:.6;margin-bottom:65px;letter-spacing:.19em}
body.reference-r11 .belief-clients .logo-row{border:0;background:none;box-shadow:none;padding:0;margin:32px 0;transform:none;will-change:auto}
body.reference-r11 .belief-clients .logo-motion{animation-duration:105s}
body.reference-r11 .belief-clients .logo-motion>div{gap:90px;padding-right:90px}
body.reference-r11 .belief-clients .logo-row:nth-child(3) .logo-motion{animation-duration:120s;animation-direction:reverse}
body.reference-r11 .belief-clients .logo-item{height:65px;width:160px}
body.reference-r11 .belief-clients .logo-item img{opacity:.46;max-height:46px;max-width:140px}
body.reference-r11 .belief-clients .logo-item:hover img{opacity:.72}
body.reference-r11 #why{background:radial-gradient(ellipse at 48% 40%,#1b285f 0,#101936 85%)}
body.reference-r11 #research{background:radial-gradient(ellipse at 48% 110%,#709bac 0,#1b2a57 43%,#101936 85%)}
body.reference-r11 #contact{overflow:hidden;background:radial-gradient(ellipse at 80% 110%,#7ba3b248,transparent 60%);padding-bottom:90px}
body.reference-r11 #contact .footer-grid,body.reference-r11 #contact .footer-secondary,body.reference-r11 #contact .footer-meta{position:relative;z-index:2}
.footer-circuit{position:absolute;top:0;left:31%;height:100%;width:45%;overflow:visible;pointer-events:none;opacity:.8}
.circuit-base{stroke:#abc8da;stroke-width:.8;opacity:.2}.circuit-echo{opacity:.07}
.circuit-run{stroke:url(#circuit-glow);stroke-width:2;stroke-dasharray:62 938;stroke-linecap:round;animation:circuit-travel 13s linear infinite;animation-play-state:paused}
.footer-circuit circle{fill:#b9e0e6;opacity:.4}
.ambient-visible .circuit-run{animation-play-state:running}
.footer-signature{position:absolute;left:3%;bottom:20px;font-size:clamp(60px,10.5vw,175px);font-weight:250;line-height:.8;letter-spacing:-.055em;color:transparent;-webkit-text-stroke:1px #9bbaca0d;white-space:nowrap;pointer-events:none}
body.reference-r11 #contact .footer-actions a:first-child{background:linear-gradient(110deg,#314e74,#5a7d90)}
@keyframes circuit-travel{from{stroke-dashoffset:1000}to{stroke-dashoffset:0}}
#facility-dialog{position:fixed;inset:0;width:min(1260px,94vw);height:min(790px,90svh);max-height:94svh;max-width:96vw;margin:auto;padding:0;border:0;border-radius:3px;background:#eaf2f5;color:#1b2978;box-shadow:0 30px 130px #03102a55;font-family:CyReference,Cy,sans-serif;overflow:auto;overscroll-behavior:contain}
#facility-dialog[open]{animation:facility-arrive .65s cubic-bezier(.215,.61,.355,1)}
#facility-dialog::backdrop{background:#0c193b8c;backdrop-filter:blur(6px)}
#facility-dialog .dialog-top{position:absolute;z-index:5;right:0;top:0;padding:24px 28px;width:44%;border:0;display:flex;justify-content:space-between;align-items:center}
#facility-dialog .dialog-top p{font-size:9px;letter-spacing:.15em;margin:0;opacity:.7}
#facility-dialog .dialog-top button{width:44px;height:44px;color:#1b2978;font-size:20px;border-radius:50%;border:1px solid #1b297830;background:#eaf2f5aa}
#facility-dialog-content{display:grid;grid-template-columns:56% 44%;min-height:100%}
.facility-scene{position:relative;min-height:720px;overflow:hidden;isolation:isolate;background:#c4dce5}
.facility-scene>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.35) contrast(.84);transform:scale(1.045)}
.facility-scene-veil{position:absolute;inset:0;background:linear-gradient(180deg,#eaf2f5d9 0%,#dfedf53d 40%,#102b4780 100%),linear-gradient(90deg,transparent 70%,#eaf2f5)}
.facility-map{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#d6f6ff;stroke-width:.7;opacity:.7}.facility-map path:nth-child(2){opacity:.35}.facility-map circle{fill:#b7e7ef;stroke:none}
.facility-scene-title{position:relative;padding:82px 45px;z-index:2}.facility-scene-title .eyebrow{font-size:9px;letter-spacing:.17em;margin:0 0 35px}
#facility-dialog .facility-scene-title h2{font-size:clamp(36px,3.6vw,60px);font-weight:300;letter-spacing:-.055em;line-height:1.06;margin:0 0 25px}
.facility-scene-title>p:last-child{font-size:18px;line-height:1.5;max-width:280px;word-break:keep-all}
.facility-photo-note{position:absolute;bottom:30px;left:45px;font-size:10px;letter-spacing:.03em;color:#e1eef1;z-index:2}
.facility-brief{padding:105px 40px 40px;position:relative;z-index:3}.facility-brief>.eyebrow{display:none}
.facility-brief>section{display:grid;grid-template-columns:28px 1fr;gap:10px;margin:0 0 25px;border-bottom:1px solid #1b29781a;padding-bottom:24px}
.facility-brief>section>span{font-size:9px;opacity:.4;padding-top:5px}.facility-brief h3{font-size:12px;font-weight:550;margin:0 0 12px}
#facility-dialog .facility-brief p{font-size:15px;line-height:1.7;margin:0;word-break:keep-all;color:#38476a}
.facility-models{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin:30px 0}.facility-models small{font-size:10px;opacity:.6;width:100%}.facility-models a{font-size:12px;border-bottom:1px solid #1b297833;padding-bottom:8px}.facility-models a span{margin-left:15px}
.facility-consult{display:inline-block;border:1px solid #1b297840;border-radius:30px;padding:16px 24px;font-size:12px}
@keyframes facility-arrive{from{opacity:0;transform:translateY(40px) scale(.975)}to{opacity:1;transform:none}}
@media(max-width:760px){
 body.reference-r11 .belief-clients{padding:50px 0}.belief-clients .logo-row{margin:18px 0}body.reference-r11 .belief-clients .logo-motion>div{gap:50px;padding-right:50px}body.reference-r11 .belief-clients .logo-item{width:120px;height:55px}body.reference-r11 .belief-clients .logo-item img{max-width:115px;max-height:37px}
 .footer-circuit{left:35%;width:65%;opacity:.35}.footer-signature{bottom:28px;font-size:16vw}body.reference-r11 #contact{padding-bottom:90px}
 #facility-dialog{width:100%;height:100svh;max-width:100%;max-height:100svh;border-radius:0}#facility-dialog-content{display:block}.facility-scene{min-height:490px}.facility-scene-title{padding:85px 25px}.facility-scene-title>p:last-child{font-size:17px}.facility-photo-note{left:25px;bottom:20px}.facility-scene-veil{background:linear-gradient(#eaf2f5d9,#c9e0eb55 40%,#eaf2f5)}
 #facility-dialog .dialog-top{width:100%;padding:15px 20px}.facility-brief{padding:35px 25px 50px}.facility-brief>section{margin-bottom:20px;padding-bottom:20px}#facility-dialog .facility-scene-title h2{font-size:42px}
}
@media(prefers-reduced-motion:reduce){.circuit-run{animation:none;stroke-dashoffset:300}#facility-dialog[open]{animation:none}}
body.motion-paused .circuit-run{animation-play-state:paused!important}

@media(min-width:761px){body.reference-r11 .hero-center{top:64%}body.reference-r11 .hero-center h1{font-size:clamp(52px,4.8vw,82px)}}

#facility-dialog .facility-brief h3{font-size:13px;font-weight:500;margin:0 0 12px;line-height:1.4}#facility-dialog .facility-scene-title>p:last-child{color:#294b70}
@media(min-width:761px){#facility-dialog-content{height:100%;min-height:0}.facility-scene{min-height:0;height:100%}.facility-brief{height:100%;overflow:auto;padding-top:95px}.facility-brief>section{margin-bottom:20px;padding-bottom:20px}}

/* Typography and objects share the same scroll interval as the refractive veil. */
body.refinement-r12 .record-focus{translate:0 calc(var(--join-exit,0)*-65px);filter:blur(calc(var(--join-exit,0)*2px));opacity:calc(var(--record-focus-alpha,0)*(1 - var(--join-exit,0)*.7))}
body.refinement-r12 .facility-depth{opacity:calc(1 - var(--mapped-exit,0)*.8);filter:blur(calc(var(--mapped-exit,0)*2px));scale:calc(1 - var(--mapped-exit,0)*.06)}
body.refinement-r12 #material-passage .passage-copy{opacity:calc(var(--passage-ui,1)*var(--seam-arrival,1));translate:0 calc((1 - var(--seam-arrival,1))*55px)}
body.refinement-r12 #contact .footer-grid{translate:0 calc((1 - var(--seam-arrival,1))*45px)}
@media(prefers-reduced-motion:reduce){body.refinement-r12 .record-focus,body.refinement-r12 .facility-depth{filter:none;scale:1;translate:none}body.refinement-r12 #material-passage .passage-copy,body.refinement-r12 #contact .footer-grid{translate:none}}
/* Match actual edge colors underneath the GPU veil, so there is no rectangular seam. */
body.reference-r11 #facilities{background:linear-gradient(#edf7fa,#f1f6f8 240px)}
body.reference-r11 .mapped-light{mask-image:linear-gradient(transparent,#000 24%,#000 67%,transparent)}
body.reference-r11 .passage-sticky{background:linear-gradient(#f1f6f8,#e6f1f6)}
body.reference-r11 .paths-light{mask-image:linear-gradient(transparent,#000 22%,#000 70%,transparent)}

.record-seam-paper{position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 15%,#edf7fa 100%);opacity:var(--join-edge,0)}

@media(max-width:760px){body.reference-r11 .hero-center{top:60.5%}body.reference-r11 .hero-aside,html[lang=en] body.reference-r11 .hero-aside{top:67.5%}body.reference-r11 .hero-aside p{font-size:11px;line-height:1.5;max-width:330px;margin:8px auto}body.reference-r11 .journey-line{bottom:14.5%}body.reference-r11 #hero-explore{width:72px;height:72px;gap:5px}body.reference-r11 .quick-nav{bottom:7.5%}}
@media(max-width:760px){body.reference-r11 .hero-center{top:58.5%}body.reference-r11 .hero-aside,html[lang=en] body.reference-r11 .hero-aside{top:65.5%}body.reference-r11 .journey-line{bottom:12.5%}body.reference-r11 .quick-nav{bottom:5.5%}body.reference-r11 .quick-nav span{opacity:0}body.reference-r11 .quick-nav>:focus-visible span{opacity:1}}
