/* S1–S3 layout rules retained exactly; ornament appears only in S4–S5. */
.mobile-experience .service-copy{bottom:18%}
@media(max-height:600px){.mobile-experience .service-copy{bottom:17%}}
#journey,.stage{overflow-anchor:none}
.s45-measure{position:absolute;width:0;height:300svh;visibility:hidden;pointer-events:none}
.desktop-experience #journey{height:calc(var(--s1-span) + var(--s2-span) + 500svh)}
.mobile-experience #journey{height:880svh}
.review{display:none!important}
/* Reserved atmosphere layer: future footage belongs under the readability shade. */
.later-atmosphere{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;overflow:hidden;background:radial-gradient(ellipse at 88% 30%,#97745058,transparent 66%),radial-gradient(ellipse at 16% 95%,#35545e4a,transparent 60%)}
.later-light{position:absolute;inset:-12%;background:radial-gradient(ellipse at 80% 40%,#b18d6230,transparent 65%)}
.later-ribbon{position:absolute;inset:-8%;width:116%;height:116%;opacity:.85}
.later-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0b1118b3,transparent 80%),linear-gradient(0deg,#0b111885,transparent 30%,transparent 82%,#0b111855)}
.later-panel{position:absolute;z-index:6;opacity:0;visibility:hidden;pointer-events:none}
.later-panel:not([inert]){pointer-events:auto}
.team-copy{left:8%;width:84%;top:18%}
.team-heading{margin:0;font-size:clamp(16px,1.7vw,24px);line-height:1.5;letter-spacing:-.025em;font-weight:400;color:#d6cbbd}
.team-heading span{color:var(--copper)}
.outcome-copy{margin:32px 0 0;font-weight:400;letter-spacing:-.055em;line-height:1.04}
.outcome-less{display:block;font-size:clamp(30px,4.1vw,60px);color:#c8c1b7;line-height:1.15}
.outcome-more{display:block;margin-top:19px;font-size:clamp(54px,7vw,112px);color:var(--bone)}
.outcome-more em{font-style:normal;color:#d5b18a}
.team-explanation{margin:30px 0 0;max-width:440px;font-size:clamp(13px,1.35vw,18px);line-height:1.65;color:#c6bfb5}
.contact-chapter{inset:0}
.contact-intro{position:absolute;left:8%;width:45%;top:21%}
.later-kicker{margin:0 0 24px;font-size:10px;letter-spacing:.17em;color:var(--copper)}
.contact-intro h2{margin:0;font-weight:400;font-size:clamp(54px,6.6vw,104px);line-height:1.03;letter-spacing:-.06em}
.contact-intro h2 em{display:block;font-style:normal;color:#d5b18a}
.contact-reassurance{max-width:340px;margin:30px 0 0;font-size:14px;line-height:1.7;color:#c6bfb5}
.preview-contact{position:absolute;left:59%;width:33%;top:28%}
.preview-contact label{display:block;color:#e1d8cb;font-size:clamp(15px,1.6vw,22px);letter-spacing:-.025em;line-height:1.4;margin-bottom:16px}
.preview-contact textarea,.preview-contact input{display:block;width:100%;font:400 16px/1.5 Manrope,Arial,sans-serif;color:var(--bone);background:#0b111826;border:0;border-bottom:1px solid #b89b7866;border-radius:0;padding:12px 0;resize:none;box-shadow:none}
.preview-contact textarea{height:110px;min-height:70px}
.preview-contact textarea::placeholder,.preview-contact input::placeholder{color:#a7a39b}
.preview-contact .email-label{font-size:11px;margin-top:24px;margin-bottom:0;color:#bfb8ad;letter-spacing:0}
.preview-contact input{background:transparent;padding:9px 0 12px;font-size:16px}
.preview-send{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:27px;padding:0 0 0 1px;border:0;background:none;color:var(--bone);font:400 15px Manrope,Arial,sans-serif;min-height:48px;cursor:pointer}
.preview-send span{display:grid;place-items:center;width:48px;height:48px;border:1px solid #d6b58e99;border-radius:50%;font-size:23px;color:#e6c8a4}
.preview-send:hover span{background:#d6b58e20}
.contact-preview-note{margin-top:15px;font-size:10px;line-height:1.5;color:#aaa79e}
.preview-contact :focus-visible{outline:2px solid var(--copper);outline-offset:5px}
.mobile-experience .team-copy{left:7%;width:86%;top:22%}
.mobile-experience .team-heading{font-size:15px;line-height:1.5;max-width:250px}
.mobile-experience .team-heading span{display:block}
.mobile-experience .outcome-copy{margin-top:34px}
.mobile-experience .outcome-less{font-size:28px;line-height:1.14;max-width:290px}
.mobile-experience .outcome-more{margin-top:24px;font-size:43px;line-height:1.06}
.mobile-experience .team-explanation{font-size:12px;line-height:1.65;margin-top:28px;max-width:300px}
.mobile-experience .later-ribbon{width:180%;left:-44%;opacity:.75}
.mobile-experience .later-shade{background:linear-gradient(90deg,#0b11185c,transparent),linear-gradient(0deg,#0b111899,transparent 40%)}
.mobile-experience .contact-intro{left:7%;width:86%;top:13%}
.mobile-experience .contact-intro .later-kicker{display:none}
.mobile-experience .contact-intro h2{font-size:46px;line-height:1.04}
.mobile-experience .contact-reassurance{font-size:11px;line-height:1.55;max-width:290px;margin-top:18px}
.mobile-experience .preview-contact{left:7%;width:86%;top:47%}
.mobile-experience .preview-contact label{font-size:16px;margin-bottom:8px}
.mobile-experience .preview-contact textarea{height:74px;font-size:16px;padding:8px 0}
.mobile-experience .preview-contact .email-label{font-size:10px;margin-top:15px;margin-bottom:0}
.mobile-experience .preview-contact input{font-size:16px;padding:6px 0 8px}
.mobile-experience .preview-send{font-size:14px;margin-top:18px;min-height:44px}
.mobile-experience .preview-send span{width:44px;height:44px;font-size:21px}
.mobile-experience .contact-preview-note{font-size:9px;margin-top:10px}
@media(max-width:350px){.mobile-experience .outcome-less{font-size:25px}.mobile-experience .outcome-more{font-size:37px}.mobile-experience .contact-intro h2{font-size:40px}}
@media(max-height:670px){.desktop-experience .team-copy{top:17%}.desktop-experience .outcome-copy{margin-top:22px}.desktop-experience .outcome-more{font-size:64px;margin-top:12px}.desktop-experience .team-explanation{margin-top:22px}.desktop-experience .contact-intro{top:19%}.desktop-experience .contact-intro h2{font-size:64px}.desktop-experience .preview-contact{top:24%}.desktop-experience .preview-contact textarea{height:90px}.desktop-experience .preview-contact .email-label{margin-top:18px}.mobile-experience .team-copy{top:19%}.mobile-experience .outcome-copy{margin-top:24px}.mobile-experience .outcome-more{margin-top:19px}.mobile-experience .team-explanation{margin-top:23px}.mobile-experience .contact-intro{top:12%}.mobile-experience .contact-intro h2{font-size:42px}.mobile-experience .contact-reassurance{margin-top:13px}.mobile-experience .preview-contact{top:46%}.mobile-experience .preview-contact textarea{height:65px;min-height:65px}.mobile-experience .preview-contact .email-label{margin-top:10px}.mobile-experience .preview-send{margin-top:13px}}
@media(max-height:560px){.mobile-experience .team-copy{top:17%}.mobile-experience .outcome-less{font-size:23px}.mobile-experience .outcome-more{font-size:35px}.mobile-experience .team-heading{font-size:13px}.mobile-experience .team-explanation{font-size:11px;margin-top:16px}.mobile-experience .contact-intro h2{font-size:35px}.mobile-experience .contact-reassurance{font-size:10px;margin-top:9px}.mobile-experience .preview-contact label{font-size:14px}.mobile-experience .preview-contact textarea{height:52px;min-height:52px}.mobile-experience .preview-contact input{padding:4px 0}.mobile-experience .preview-send{margin-top:8px}.mobile-experience .contact-preview-note{margin-top:6px}}
