/* GP5 Cinematic V2: the existing fonts, palette, content and component layouts remain. */
#gp5-home .im-orb-brand { background:none!important; border:0!important; box-shadow:none!important; opacity:.87; gap:5%; }
#gp5-home .im-orb-brand img { width:61%; filter:drop-shadow(0 2px 8px #000); }
#gp5-home .im-orb-brand span { font-size:7px; text-shadow:0 2px 7px #000; }
#gp5-home .im-orb-fallback { background:radial-gradient(circle at 29% 25%,#647244,#333e25 28%,#11190f 67%,#394921 88%,#d9fa52); box-shadow:inset -20px -25px 50px #0008,0 25px 25px -15px #0006; }
#gp5-home .im-orb-fallback::after { content:""; position:absolute; inset:0; border-radius:50%; background:repeating-linear-gradient(0deg,transparent 0 5px,#d9fa5230 6px,transparent 7px); box-shadow:inset -30px -10px 45px #000b; }
#gp5-home .im-orb-fallback i { opacity:.3; }
#gp5-home .im-orb-fallback i:nth-child(n+2) { display:none; }
#gp5-home .im-orb-labels span { background:#171916e8; border-color:#d9fa5238; box-shadow:0 12px 28px #0003; }
#gp5-home .im-orb-labels small::before { box-shadow:0 0 10px #d9fa52; }
@media (max-width:700px) { #gp5-home .im-orb-brand span { font-size:6px; } }
/* The Method: exploded pieces gather into a complete campaign system. */
#gp5-home.im-ready:not(.im-reduced) .im-method .im-build-piece {
 transform:translate3d(var(--im-piece-x,0px),var(--im-piece-y,0px),var(--im-piece-z,0px)) rotateY(var(--im-piece-turn,0deg)) rotateX(calc((1 - var(--im-assemble,1))*22deg));
 rotate:calc((1 - var(--im-assemble,1))*-8deg); transform-origin:center; will-change:transform,opacity;
 box-shadow:0 22px 40px #0006,inset 0 1px #f0efe81a;
}
#gp5-home .im-method-core { transform:perspective(1000px) rotateX(calc((1 - var(--im-story,1))*32deg)) rotateY(calc((1 - var(--im-story,1))*-30deg)) translateZ(calc(var(--im-story,1)*40px)); }
#gp5-home .im-method-axis { transform:rotateX(calc(65deg - var(--im-story,1)*13deg)) rotateZ(calc(-45deg + var(--im-story,1)*21deg)); }
#gp5-home .im-method-grid { transform:rotateX(62deg) rotateZ(calc(-30deg + var(--im-story,1)*10deg)); }
#gp5-home .im-method-visual::after { content:""; pointer-events:none; position:absolute; inset:12%; border:1px solid #d9fa5220; border-radius:50%; transform:rotateX(64deg) translateZ(calc(var(--im-story,1)*60px)); opacity:var(--im-story,1); }
/* The Makeovers: each plane travels at a different depth as the gallery moves. */
@media (min-width:1001px) and (min-height:741px) {
 #gp5-home:not(.im-reduced) .im-gallery-track .im-gallery-card:nth-child(n) { transform:perspective(1200px) translateZ(calc(var(--im-distance,0)*-120px)) rotateY(calc(var(--im-offset,0)*-16deg)); }
 #gp5-home:not(.im-reduced) .im-gallery-card > img { transform:translateX(calc(var(--im-offset,0)*22px)) scale(1.015); }
 #gp5-home:not(.im-reduced) .im-gallery-card .im-satellite-1 { transform:perspective(900px) translate3d(calc(var(--im-offset,0)*-72px),calc(var(--im-distance,0)*-15px),60px) rotateY(calc(13deg + var(--im-offset,0)*5deg)) rotateZ(-4deg); }
 #gp5-home:not(.im-reduced) .im-gallery-card .im-satellite-2 { transform:perspective(900px) translate3d(calc(var(--im-offset,0)*92px),calc(var(--im-distance,0)*20px),110px) rotateY(calc(-13deg + var(--im-offset,0)*-4deg)) rotateZ(5deg); }
 #gp5-home:not(.im-reduced) .im-gallery-card .collage-caption { transform:translateX(calc(var(--im-offset,0)*-18px)); }
 /* A deeper corridor with a full, stable reading position at each chapter. */
 #gp5-home.im-ready:not(.im-reduced) .im-deck-stage { perspective:1500px; }
 #gp5-home.im-ready:not(.im-reduced) .im-chapter { transform:translate3d(calc(var(--im-chapter-distance,0)*440px),calc(var(--im-chapter-distance,0)*25px),calc(var(--im-chapter-distance,0)*-430px)) rotateY(calc(var(--im-chapter-distance,0)*-8deg)); }
 #gp5-home.im-ready:not(.im-reduced) .im-chapter-media > img { transform:scale(1.06) translateX(calc(var(--im-chapter-distance,0)*-13px)); }
}
html.im-service-departure::view-transition-old(root) { animation:none; }
#gp5-home.im-flying .im-services .gp5-offers { perspective:1200px; }
#gp5-home.im-flying .im-services .gp5-offers article { pointer-events:none; }
@media (max-width:1000px), (max-height:740px), (prefers-reduced-motion:reduce) {
 #gp5-home.im-ready:not(.im-reduced) .im-method .im-build-piece { transform:none; rotate:0deg; }
 #gp5-home .im-method-core { transform:none; }
}
#gp5-home.im-reduced .im-method-core { transform:none; }
