/* The app component owns every rule here; the surrounding site is unchanged. */
.mobile-app-showcase{position:relative;isolation:isolate;background:#071f31;color:#e8f1f7;scroll-margin-top:80px}
.mobile-app-showcase .mobile-app-showcase__stage{position:relative;overflow:hidden;background:radial-gradient(ellipse at 28% 40%,#174b68 0,transparent 55%),linear-gradient(135deg,#0b3049,#071f31 70%);border-block:1px solid #ffffff12}
.mobile-app-showcase .mobile-app-showcase__layout{position:relative;z-index:1;display:grid;grid-template-columns:40% 60%;grid-template-areas:'copy scene' 'copy downloads';align-items:center;min-height:800px;padding-block:100px 75px;gap:22px 0}
.mobile-app-showcase .mobile-app-showcase__copy{grid-area:copy;position:relative;max-width:490px}
.mobile-app-showcase .eyebrow{color:var(--sky);font-size:14px}
.mobile-app-showcase h2{color:#fff;font-size:clamp(34px,3.8vw,56px);line-height:1.5;letter-spacing:-1.3px;margin-bottom:20px}
.mobile-app-showcase h2 em{font-style:normal;color:var(--lime)}
.mobile-app-showcase .mobile-app-showcase__intro{color:#b9d1e0;font-size:17px;line-height:2;max-width:440px;margin:0}
.mobile-app-showcase .mobile-app-showcase__captions{height:86px;position:relative;margin-top:25px}
.mobile-app-showcase .mobile-app-showcase__caption{position:absolute;inset:0;opacity:0;display:flex;flex-direction:column;gap:8px}
.mobile-app-showcase .mobile-app-showcase__caption:last-child{opacity:1}
.mobile-app-showcase .mobile-app-showcase__caption span{font-size:11px;color:#93b9ce;letter-spacing:1px}
.mobile-app-showcase .mobile-app-showcase__caption strong{font-size:20px;font-weight:500;color:#f2f7fa}
.mobile-app-showcase .mobile-app-showcase__scene{grid-area:scene;position:relative;height:520px;perspective:1400px;perspective-origin:50% 45%}
.mobile-app-showcase .mobile-app-showcase__device{position:absolute;top:50%;left:50%;width:300px;transform-style:preserve-3d;transform-origin:50% 50%}
.mobile-app-showcase .mobile-app-showcase__body{position:absolute;inset:0;transform-style:preserve-3d;pointer-events:none}
.mobile-app-showcase .mobile-app-showcase__body span{position:absolute;inset:5.55% 8.75%;border-radius:2% / 1%;background:linear-gradient(100deg,#5a6269,#a6afb6 3%,#252c32 8%,#10181e 88%,#8b969e 97%,#bbc4c9);border:1px solid #6d7980;transform:translateZ(calc(var(--depth)*-1.4px))}
.mobile-app-showcase .mobile-app-showcase__body span:last-child{background:linear-gradient(130deg,#333c43,#11191f 65%,#4b565e);box-shadow:0 24px 30px #0005,0 6px 10px #0004}
.mobile-app-showcase .mobile-app-showcase__device--iphone .mobile-app-showcase__body span{inset:2.3% 4.1%;border-radius:14% / 7%}
.mobile-app-showcase .mobile-app-showcase__side-button{position:absolute;top:30%;right:8.2%;width:2px;height:7%;border-radius:2px;background:linear-gradient(90deg,#222d35,#b1bbc3,#3d4850);transform:translateZ(-7px);pointer-events:none}
.mobile-app-showcase .mobile-app-showcase__side-button--volume{top:19%;height:9%}
.mobile-app-showcase .mobile-app-showcase__device--iphone .mobile-app-showcase__side-button--power{right:3.8%;top:30%;height:8%}
.mobile-app-showcase .mobile-app-showcase__device--iphone .mobile-app-showcase__side-button--volume{right:auto;left:3.8%;top:21%;height:10%}
.mobile-app-showcase .mobile-app-showcase__device--android{aspect-ratio:1245/2359;transform:translate(-100%,-48%) rotateX(3deg) rotateY(-13deg) rotateZ(-5deg);--screen-top:7.05%;--screen-left:11.95%;--screen-width:75.7%;--screen-height:85.85%;--screen-radius:1.1%;--screen-safe-top:3.5%}
.mobile-app-showcase .mobile-app-showcase__device--iphone{aspect-ratio:1530/3036;transform:translate(-2%,-50%) rotateX(-3deg) rotateY(13deg) rotateZ(5deg);--screen-top:3.94%;--screen-left:7.8%;--screen-width:84.4%;--screen-height:92.1%;--screen-radius:11% / 5.3%;--screen-safe-top:5.6%}
.mobile-app-showcase .mobile-app-showcase__screen{position:absolute;top:var(--screen-top);left:var(--screen-left);width:var(--screen-width);height:var(--screen-height);border-radius:var(--screen-radius);overflow:hidden;background:#fff;transform:translateZ(1px);transform-style:flat;isolation:isolate;backface-visibility:hidden}
.mobile-app-showcase .mobile-app-showcase__screen-image{position:absolute;inset:var(--screen-safe-top) 0 2%;width:100%;height:calc(98% - var(--screen-safe-top));max-width:100%;object-fit:contain;object-position:center;opacity:0;transform-origin:50% 50%}
.mobile-app-showcase .mobile-app-showcase__screen-image--student{opacity:1}
.mobile-app-showcase .mobile-app-showcase__frame{position:relative;z-index:2;width:100%;height:100%;max-width:none;pointer-events:none;transform:translateZ(2px);backface-visibility:hidden}
.mobile-app-showcase .mobile-app-showcase__glass{position:absolute;inset:0;background:linear-gradient(115deg,transparent 12%,#ffffff24 26%,transparent 40%,transparent 75%,#6eb7e508);background-size:250% 100%;background-position:100% 50%;pointer-events:none;z-index:1}
.mobile-app-showcase .mobile-app-showcase__floor{position:absolute;left:12%;right:12%;bottom:0;height:80px;border-radius:50%;background:radial-gradient(ellipse,#0009,transparent 65%);transform:rotateX(55deg);filter:blur(12px)}
.mobile-app-showcase .mobile-app-showcase__ambience{position:absolute;inset:-40px;pointer-events:none}
.mobile-app-showcase .mobile-app-showcase__light{position:absolute;border-radius:50%;pointer-events:none;opacity:.8}
.mobile-app-showcase .mobile-app-showcase__light::before{content:'';position:absolute;inset:0;border-radius:inherit;filter:blur(28px);background:var(--glow);transform:translate3d(0,0,0)}
.mobile-app-showcase .mobile-app-showcase__light--blue{width:650px;height:650px;left:-100px;top:0;--glow:radial-gradient(ellipse,#6eb7e53b,transparent 66%)}
.mobile-app-showcase .mobile-app-showcase__light--lime{width:500px;height:500px;left:35%;bottom:-140px;--glow:radial-gradient(ellipse,#98ca3d2d,transparent 65%)}
.mobile-app-showcase .mobile-app-showcase__light--burgundy{width:560px;height:430px;right:-100px;top:12%;--glow:radial-gradient(ellipse,#65091642,transparent 68%)}
.mobile-app-showcase .mobile-app-showcase__light--sky-square{width:260px;height:260px;right:20%;top:8%;border-radius:30%;--glow:radial-gradient(ellipse,#6eb7e55c,transparent 73%)}
.mobile-app-showcase .mobile-app-showcase__light--lime-square{width:230px;height:230px;left:10%;top:62%;border-radius:26%;--glow:radial-gradient(ellipse,#98ca3d48,transparent 73%)}
.mobile-app-showcase .mobile-app-showcase__light--violet{width:320px;height:240px;right:4%;bottom:8%;--glow:radial-gradient(ellipse,#849cdd4d,transparent 72%)}
.mobile-app-showcase.is-ambient-active .mobile-app-showcase__light::before{animation:lcet-app-aurora 11s ease-in-out infinite alternate}
.mobile-app-showcase.is-ambient-active .mobile-app-showcase__light--lime::before{animation-duration:14s;animation-delay:-6s}
.mobile-app-showcase.is-ambient-active .mobile-app-showcase__light--burgundy::before{animation-duration:17s;animation-delay:-9s}
.mobile-app-showcase.is-ambient-active .mobile-app-showcase__light--sky-square::before{animation:lcet-app-bloom 13s ease-in-out -4s infinite alternate}
.mobile-app-showcase.is-ambient-active .mobile-app-showcase__light--lime-square::before{animation:lcet-app-bloom 16s ease-in-out -10s infinite alternate-reverse}
.mobile-app-showcase.is-ambient-active .mobile-app-showcase__light--violet::before{animation:lcet-app-bloom 19s ease-in-out -7s infinite alternate}
@keyframes lcet-app-aurora{0%{transform:translate3d(-20px,12px,0) scale(.94) rotate(-8deg)}50%{transform:translate3d(22px,-26px,0) scale(1.07) rotate(5deg)}100%{transform:translate3d(50px,24px,0) scale(1.16) rotate(14deg)}}
@keyframes lcet-app-bloom{0%{transform:translate3d(-45px,35px,0) rotate(-18deg) scale(.86)}50%{transform:translate3d(30px,-45px,0) rotate(12deg) scale(1.12)}100%{transform:translate3d(60px,25px,0) rotate(32deg) scale(1.04)}}
.mobile-app-showcase .mobile-app-showcase__downloads{grid-area:downloads;position:relative;z-index:3;align-self:start;text-align:center}
.mobile-app-showcase .mobile-app-showcase__download-title{display:flex;flex-direction:column;gap:2px;margin-bottom:18px}
.mobile-app-showcase .mobile-app-showcase__download-title strong{font-size:17px;font-weight:500;color:#fff}
.mobile-app-showcase .mobile-app-showcase__download-title>span{color:#92b3c6;font-size:12px}
.mobile-app-showcase .mobile-app-showcase__stores{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.mobile-app-showcase .mobile-app-showcase__store{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid #ffffff26;border-radius:14px;padding:12px;background:#ffffff08;min-height:82px;transition:border-color .2s,background .2s;flex:1;max-width:230px;min-width:180px}
.mobile-app-showcase .mobile-app-showcase__store:hover{background:#ffffff12;border-color:var(--lime)}
.mobile-app-showcase .mobile-app-showcase__store>span{display:flex;align-items:center;justify-content:center;gap:10px}
.mobile-app-showcase .mobile-app-showcase__store-logo{display:block;width:32px;height:32px;flex-shrink:0}
.mobile-app-showcase .mobile-app-showcase__store strong{font-size:15px;font-weight:500;white-space:nowrap;color:#fff;line-height:1.3}
.mobile-app-showcase .mobile-app-showcase__store>svg{position:absolute;inset-inline-end:12px;width:14px;height:14px;color:var(--lime)}
.mobile-app-showcase .mobile-app-showcase__track{position:absolute;bottom:0;inset-inline:0;height:2px;background:#ffffff10;display:none}
.mobile-app-showcase .mobile-app-showcase__track span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--sky),var(--lime));transform-origin:right;transform:scaleX(0)}
.mobile-app-showcase .mobile-app-showcase__features{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding-block:50px 65px}
.mobile-app-showcase .mobile-app-showcase__features article{display:flex;gap:16px;padding-block:5px;min-width:0}
.mobile-app-showcase .mobile-app-showcase__features article+article{border-inline-start:1px solid #ffffff18;padding-inline-start:30px}
.mobile-app-showcase .mobile-app-showcase__features article>svg{width:36px;height:36px;color:var(--lime);padding:8px;border:1px solid #98ca3d30;border-radius:11px}
.mobile-app-showcase .mobile-app-showcase__features span{font-size:11px;color:#87aabd}
.mobile-app-showcase .mobile-app-showcase__features h3{font-size:18px;color:#fff;margin-block:5px 12px}
.mobile-app-showcase .mobile-app-showcase__features p{font-size:14px;color:#afc6d4;line-height:2;margin:0}
.mobile-app-showcase.is-cinematic .mobile-app-showcase__layout{height:100svh;min-height:0;grid-template-rows:1fr auto;padding-block:100px 45px}
.mobile-app-showcase.is-cinematic .mobile-app-showcase__scene{height:calc(100svh - 310px)}
.mobile-app-showcase.is-cinematic .mobile-app-showcase__device{width:clamp(180px,25svh,295px);will-change:transform}
.mobile-app-showcase.is-cinematic .mobile-app-showcase__track{display:block}
.mobile-app-showcase.is-scroll-scene .mobile-app-showcase__track{display:block}
.mobile-app-showcase.is-scroll-scene .mobile-app-showcase__device{will-change:transform;backface-visibility:hidden}
.mobile-app-showcase.is-scroll-scene .mobile-app-showcase__screen-image{will-change:opacity;backface-visibility:hidden}
@media(max-width:1100px){
 .mobile-app-showcase .mobile-app-showcase__layout{grid-template-columns:43% 57%;min-height:750px}
 .mobile-app-showcase h2{font-size:38px}
 .mobile-app-showcase .mobile-app-showcase__intro{font-size:15px}
 .mobile-app-showcase .mobile-app-showcase__device{width:255px}
 .mobile-app-showcase .mobile-app-showcase__scene{height:550px}
 .mobile-app-showcase .mobile-app-showcase__stores{gap:8px}
 .mobile-app-showcase .mobile-app-showcase__store{padding:9px;gap:8px;min-width:150px;min-height:72px}
 .mobile-app-showcase .mobile-app-showcase__store>svg{display:none}
 .mobile-app-showcase .mobile-app-showcase__store-logo{width:28px;height:28px}
 .mobile-app-showcase .mobile-app-showcase__store strong{font-size:13px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__device{width:clamp(170px,25svh,255px)}
}
@media(max-width:899px){
 .mobile-app-showcase .mobile-app-showcase__layout{grid-template-columns:1fr;grid-template-areas:'copy' 'scene' 'downloads';text-align:center;gap:12px;padding-block:70px 45px;min-height:0}
 .mobile-app-showcase .mobile-app-showcase__copy{max-width:580px;margin-inline:auto}
 .mobile-app-showcase .mobile-app-showcase__intro{margin-inline:auto}
 .mobile-app-showcase h2{font-size:38px;margin-bottom:12px;line-height:1.45}
 .mobile-app-showcase .mobile-app-showcase__captions{height:62px;margin-top:17px}
 .mobile-app-showcase .mobile-app-showcase__caption{gap:3px}
 .mobile-app-showcase .mobile-app-showcase__caption strong{font-size:17px}
 .mobile-app-showcase .mobile-app-showcase__scene{height:565px;margin-inline:auto;width:100%;max-width:600px}
 .mobile-app-showcase .mobile-app-showcase__device{width:270px}
 .mobile-app-showcase .mobile-app-showcase__downloads{align-self:auto}
 .mobile-app-showcase .mobile-app-showcase__stores{justify-content:center}
 .mobile-app-showcase .mobile-app-showcase__store{flex:0 1 200px;max-width:220px}
 .mobile-app-showcase .mobile-app-showcase__download-title{margin-bottom:12px}
 .mobile-app-showcase .mobile-app-showcase__features{gap:24px;grid-template-columns:1fr;padding-block:35px 50px;max-width:600px}
 .mobile-app-showcase .mobile-app-showcase__features article+article{border-inline-start:0;border-top:1px solid #ffffff18;padding-inline-start:0;padding-top:24px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__layout{grid-template-rows:auto 1fr auto;padding-block:100px 125px;gap:5px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__scene{height:100%;min-height:0;max-width:570px}
 .mobile-app-showcase.is-cinematic h2{font-size:34px;line-height:1.35}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__device{width:min(21svh,calc((100svh - 560px)*.38),235px)}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__captions{height:32px;margin-top:10px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__caption{flex-direction:row;justify-content:center;align-items:baseline;gap:10px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__caption strong{font-size:14px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__intro{font-size:14px;line-height:1.8}
}
@media(max-width:599px){
 .mobile-app-showcase .mobile-app-showcase__layout{width:calc(100% - 36px);padding-block:55px 85px}
 .mobile-app-showcase h2{font-size:32px;letter-spacing:-.6px}
 .mobile-app-showcase .eyebrow{font-size:11px;margin-bottom:10px}
 .mobile-app-showcase .mobile-app-showcase__intro{font-size:14px;line-height:1.85;max-width:350px}
 .mobile-app-showcase .mobile-app-showcase__scene{height:510px;max-width:390px}
 .mobile-app-showcase .mobile-app-showcase__device{width:min(245px,68vw)}
 .mobile-app-showcase .mobile-app-showcase__device--android{transform:translate(-65%,-54%) rotateY(-12deg) rotateZ(-7deg)}
 .mobile-app-showcase .mobile-app-showcase__device--iphone{transform:translate(-35%,-46%) translateZ(45px) rotateY(10deg) rotateZ(7deg)}
 .mobile-app-showcase .mobile-app-showcase__stores{flex-wrap:nowrap}
 .mobile-app-showcase .mobile-app-showcase__store{min-width:0;flex:1;gap:8px;padding:10px 8px;min-height:70px}
 .mobile-app-showcase .mobile-app-showcase__store strong{font-size:12px}
 .mobile-app-showcase .mobile-app-showcase__store-logo{width:24px;height:24px}
 .mobile-app-showcase .mobile-app-showcase__download-title strong{font-size:14px}
 .mobile-app-showcase .mobile-app-showcase__download-title>span{font-size:10px}
 .mobile-app-showcase .mobile-app-showcase__features{width:calc(100% - 40px)}
 /* Four depth planes retain the rim without twenty competing mobile GPU layers. */
 .mobile-app-showcase .mobile-app-showcase__body span{display:none}
 .mobile-app-showcase .mobile-app-showcase__body span:nth-child(3n+1){display:block}
 .mobile-app-showcase .mobile-app-showcase__light::before{filter:blur(14px)}
 .mobile-app-showcase .mobile-app-showcase__light--blue{width:400px;height:400px}
 .mobile-app-showcase .mobile-app-showcase__light--lime{width:300px;height:300px;left:20%}
 .mobile-app-showcase .mobile-app-showcase__light--burgundy{width:330px;height:300px}
 .mobile-app-showcase .mobile-app-showcase__light--sky-square{width:190px;height:190px;right:6%;top:27%}
 .mobile-app-showcase .mobile-app-showcase__light--lime-square{width:170px;height:170px;left:5%;top:55%}
 .mobile-app-showcase .mobile-app-showcase__light--violet{width:210px;height:190px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__layout{padding-block:92px 110px;gap:3px}
 .mobile-app-showcase.is-cinematic h2{font-size:clamp(26px,7vw,32px);line-height:1.4;margin-bottom:9px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__intro{font-size:12px;max-width:325px;line-height:1.8}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__captions{height:41px;margin-top:7px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__caption{flex-direction:row;justify-content:center;align-items:baseline;gap:8px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__caption span{font-size:9px;white-space:nowrap}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__caption strong{font-size:12px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__device{width:min(20svh,calc((100svh - 500px)*.47),205px)}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__download-title{margin-bottom:7px}
 .mobile-app-showcase.is-cinematic .mobile-app-showcase__store{min-height:62px;padding:7px}
}
@media(prefers-reduced-motion:reduce){
 .mobile-app-showcase .mobile-app-showcase__light::before{animation:none!important;filter:none}
 .mobile-app-showcase .mobile-app-showcase__device{will-change:auto}
 .mobile-app-showcase .mobile-app-showcase__store{transition:none}
}
