/* Continuous scenery with independent foreground depth. Normal document scrolling is preserved. */
.immersive-page { position:relative; isolation:isolate; background:#081d1d; color:#f5f5e9; --scene-travel:0px; --plane-travel:0px; --scene-scale:1.08; --accent:#dfc68b; }
.immersive-backdrop { position:sticky; top:0; height:100svh; margin-bottom:-100svh; overflow:hidden; pointer-events:none; z-index:-1; }
.landscape-layer { position:absolute; inset:-12% -6%; background:url('../Images/technical-landscape.webp') 66% 50% / cover no-repeat; transform:translate3d(0,var(--scene-travel),0) scale(var(--scene-scale)); }
.scene-vignette { position:absolute; inset:0; background:linear-gradient(90deg,#061c1beb 0%,#061c1b90 48%,#061c1b40),linear-gradient(0deg,#061c1b80,transparent 40%); }
.depth-grid { position:absolute; inset:0; opacity:.14; background-image:linear-gradient(#b5d9c440 1px,transparent 1px),linear-gradient(90deg,#b5d9c440 1px,transparent 1px); background-size:100px 100px; mask-image:linear-gradient(90deg,transparent,#000); transform:translate3d(0,var(--plane-travel),0); }
.glass-plane { position:absolute; border:1px solid #e2cf9b65; background:linear-gradient(135deg,#d9e9db14,#0d2e2c08); box-shadow:0 0 70px #eff9df08; transform:translate3d(0,var(--plane-travel),0) rotate(-24deg); }
.plane-one { width:36vw; height:64vh; right:5%; top:12%; }
.plane-two { width:21vw; height:44vh; right:22%; top:47%; border-color:#c5e8db40; }
.scene-platform { --accent:#b7e5d5; }
.scene-platform .landscape-layer { filter:hue-rotate(24deg); background-position:85% 50%; }
.scene-websites .landscape-layer { background-position:40% 65%; }
.scene-portals .glass-plane { border-radius:50%; }
.scene-software .plane-one { transform:translate3d(0,var(--plane-travel),0) rotate(28deg); }
.immersive-page>.page-hero { background:transparent; overflow:visible; min-height:calc(100svh - 120px); display:flex; align-items:center; padding:75px 0 120px; }
.immersive-page>.page-hero::before,.immersive-page>.page-hero::after { display:none; }
.immersive-page>.page-hero h1 { font-size:clamp(3.2rem,7.5vw,7.7rem); line-height:.99; letter-spacing:-.055em; max-width:1150px; margin:35px 0; }
.immersive-page>.page-hero h1 span { color:var(--accent); font-family:Georgia,serif; font-weight:400; font-style:italic; }
.immersive-page>.page-hero p:not(.eyebrow) { max-width:610px; color:#dae7df; font-size:1.12rem; line-height:1.75; }
.immersive-page .eyebrow { color:var(--accent); }
.scene-tools { position:absolute; top:calc(100svh - 200px); left:6%; right:6%; display:flex; justify-content:space-between; align-items:center; gap:20px; z-index:3; font-size:.65rem; letter-spacing:.14em; pointer-events:none; }
.scene-motion { pointer-events:auto; border:1px solid #adc3b76b; border-radius:30px; padding:10px 16px; background:#0b282ac9; color:#e7eddf; font:inherit; cursor:pointer; }
.scene-motion:hover { border-color:#e6cb8e; }
.immersive-page a:focus-visible,.scene-motion:focus-visible { outline:3px solid #e6cb8e; outline-offset:6px; }
.immersive-page .editorial-case,.immersive-page .case-body { position:relative; z-index:1; }
.immersive-page .case-facts { border-color:#b1c8bc50; padding-block:38px; background:#09232270; }
.immersive-page .case-facts small { color:#c3d4c8; }
.immersive-page .case-chapter { min-height:65svh; align-items:center; }
.immersive-page .case-chapter h2,.immersive-page .case-section h2,.immersive-page .portal-narrative h2 { color:#f5f5e9; font-size:clamp(2.2rem,4.5vw,4.5rem); }
.immersive-page .case-chapter>div:last-child { padding:35px; border-left:1px solid #d8c18c80; background:linear-gradient(90deg,#062221ed,#06222180); }
.immersive-page .case-chapter p,.immersive-page .case-section p,.immersive-page .portal-narrative p { color:#d7e4db; }
.immersive-page .text-link { color:#eed79e; text-decoration:underline; text-underline-offset:6px; }
.project-reveal { position:relative; display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:5vw; padding-block:140px; min-height:110svh; }
.reveal-heading h2,.platform-exhibit h2 { font-size:clamp(2.5rem,5vw,5rem); line-height:1.06; letter-spacing:-.045em; margin:24px 0; }
.reveal-heading h2 em,.platform-exhibit h2 em { font-family:Georgia,serif; font-weight:400; color:var(--accent); }
.reveal-heading p { line-height:1.8; max-width:450px; color:#d7e4db; }
.project-collage { position:relative; padding:30px 0 140px 20px; }
.collage-main { margin:0; padding:12px; background:#d7ded3; color:#203d34; transform:translate3d(0,var(--float-y,0px),0) rotate(-3deg); box-shadow:0 35px 90px #0007; }
.collage-main img { width:100%; height:auto; display:block; }
.collage-main figcaption { padding:12px 6px 4px; font-size:.72rem; }
.collage-detail { position:absolute; right:-10px; bottom:0; width:55%; height:auto; border:10px solid #f1ead9; box-shadow:0 20px 60px #0007; transform:translate3d(0,calc(var(--float-y,0px) * -1),0) rotate(5deg); }
.immersive-page .portal-chapter { position:relative; background:#061b1bcc; border-block:1px solid #b8d0bc45; padding-block:100px; }
.immersive-page .portal-proof-images { background:linear-gradient(135deg,#a8c6b433,#163b3233); border-color:#94b8a25c; box-shadow:0 25px 90px #0005; transform:perspective(1200px) rotateY(-7deg) translate3d(0,var(--float-y,0px),0); }
.immersive-page .portal-proof figcaption { color:#c4d6ca; }
.immersive-page .role-notes { border-color:#8aa89566; }
.immersive-page .case-body { max-width:1240px; padding-block:30px 70px; }
.immersive-page .case-section { width:62%; min-height:58svh; display:flex; flex-direction:column; justify-content:center; padding:55px; margin:0; border:0; background:linear-gradient(90deg,#072321f0,#072321c0); border-left:1px solid #d3c29180; }
.immersive-page .case-section:nth-of-type(even) { margin-left:auto; background:linear-gradient(270deg,#072321f0,#072321c0); }
.immersive-page .case-section p { font-size:1.08rem; line-height:1.85; }
.platform-exhibit { padding-block:70px 120px; }
.platform-system { position:relative; min-height:520px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:90px; }
.system-orbit { position:absolute; width:min(65vw,650px); height:370px; border:1px solid #b6dec766; border-radius:50%; transform:rotate(-15deg); box-shadow:0 0 80px #97d7b511,inset 0 0 80px #97d7b511; }
.system-centre { z-index:1; padding:30px 50px; border:1px solid #d8c797; background:#123b32; text-align:center; font-size:2rem; box-shadow:0 0 45px #b7e5d51a; }
.system-centre small,.system-workspaces small { display:block; font-size:.8rem; font-weight:400; margin-top:12px; color:#c2d4c8; }
.system-workspaces { position:relative; display:flex; gap:30px; }
.system-workspaces>span { border:1px solid #9cb9a5; background:#0c2b26ef; padding:24px; text-align:center; }
.immersive-page .capability-section { padding-block:80px; }
.immersive-page .capability-card { background:#082b27df; border-color:#96bda650; color:#eef3e9; }
.immersive-page .capability-card p { color:#d3e2d7; }
.immersive-page .capability-card:nth-child(3n+2) { transform:translateY(32px); }
.immersive-page .section-heading>p { color:#d3e2d7; }
.immersive-page .soft-section { background:#072522df; }
.immersive-page .service-detail { padding-block:90px; }
.immersive-page .deliverables li { border-color:#84a48e55; }
.immersive-page .deliverables li span,.immersive-page .service-detail p { color:#d3e2d7; }
.immersive-page .faq-section,.immersive-page #resources { color:#173c32; background:#eff0e5; padding:55px; border-radius:4px; }
.immersive-page .faq-section .eyebrow,.immersive-page #resources .eyebrow { color:#466657; }
.immersive-page #resources .text-link { color:#173c32; }
.immersive-page .contact-grid { padding-block:80px; }
.immersive-page .contact-grid aside { background:#082522dd; padding:30px; }
.immersive-page .contact-grid aside p,.immersive-page .contact-grid aside li { color:#d7e4db; }
.immersive-page .personal-call,.immersive-page .personal-call strong,.immersive-page .personal-call .eyebrow { color:#183c32; }
.immersive-page .deliverables strong { color:#f2f5e8; }
.immersive-page .enquiry-panel { color:#173c32; }
.immersive-page .cta-panel { position:relative; margin-bottom:0; margin-top:60px; padding:60px; border-radius:0; }
.immersive-page>.cta-panel { max-width:none; width:100%; }
.immersive-page .cta-panel h2 { font-size:clamp(2.4rem,4vw,4rem); color:#163c32; }
.immersive-page .cta-panel .text-link { color:#163f31; }
@media(min-width:1000px) { .project-reveal .reveal-heading { position:sticky; top:180px; align-self:start; } }
@media(max-width:899px) {
 .immersive-page>.page-hero { min-height:80svh; padding-block:60px 100px; }
 .immersive-page>.page-hero h1 { font-size:clamp(2.8rem,9vw,5.5rem); }
 .scene-tools { top:calc(80svh - 165px); }
 .glass-plane { opacity:.6; }.plane-one { width:65vw; }
 .immersive-page .case-chapter { min-height:auto; padding-block:60px; }
 .immersive-page .case-chapter>div:last-child { padding:24px; }
 .project-reveal { grid-template-columns:1fr; min-height:auto; padding-block:70px; }
 .project-collage { margin-top:25px; padding-bottom:100px; }
 .collage-detail { right:0; }
 .immersive-page .case-section { width:100%; min-height:auto; padding:35px 24px; margin-block:20px; }
 .immersive-page .capability-card:nth-child(3n+2) { transform:none; }
 .immersive-page .faq-section,.immersive-page #resources,.immersive-page .cta-panel { padding:30px 24px; }
 .system-workspaces { flex-wrap:wrap; justify-content:center; gap:12px; }
 .system-workspaces>span { padding:16px; }.system-orbit { width:90%; }
 .immersive-page .portal-proof-images { transform:none; padding:14px; gap:12px; }
 .immersive-page .portal-chapter { padding-block:60px; }
}
.immersive-page .scene-tools { top:auto; bottom:25px; }
.immersive-page #resources .section-heading>p { color:#39574a; }
@media(prefers-reduced-motion:reduce) {
 .landscape-layer,.glass-plane,.depth-grid,.collage-main,.collage-detail,.immersive-page .portal-proof-images { transform:none; }
}
