.cinematic-tools,.cinematic-progress { display: none; }
@media(max-width:767px) {
 .cinematic-tools { display:flex;align-items:center;position:fixed;z-index:1100;bottom:max(8px,env(safe-area-inset-bottom));left:12px;right:12px;gap:8px;pointer-events:none; }
 .cinematic-tools button,.cinematic-tools a { pointer-events:auto; }
 .cinematic-mode-toggle { margin-right:auto;padding:9px 11px;min-height:44px;border:1px solid #8cacc15c;background:#0b263ff2;color:#e9f4fb;border-radius:12px;font-size:11px; }
 .cinematic-float { width:44px;height:44px;display:grid;place-items:center;border-radius:50%;border:1px solid #ffffff70;box-shadow:0 3px 10px #0004; }
 .cinematic-float svg { width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
 .cinematic-whatsapp { background:#167d53;color:#fff; }
 .cinematic-registration { background:#ff8a18;color:#071b30; }
 .mobile-detail-mode .cinematic-tools { display:none; }
 .cinematic-mode,.cinematic-mode body { overflow:hidden!important;overscroll-behavior:none;scroll-snap-type:none!important; }
 .cinematic-mode { background:radial-gradient(ellipse at 15% 25%,#1c4560,#07182b 78%) fixed center / 100vw 100svh no-repeat #07182b; }
 .cinematic-mode body { background:transparent; }
 .cinematic-mode:not(.cinematic-hero) .site-header,.cinematic-mode:not(.cinematic-hero) .announcement { visibility:hidden; }
 .cinematic-mode .ux-module-progress { display:none; }
 .cinematic-progress { position:fixed;z-index:1101;top:0;left:0;right:0;height:3px;grid-template-columns:repeat(16,1fr);gap:1px;pointer-events:none; }
 .cinematic-mode .cinematic-progress { display:grid; }
 .cinematic-progress span { background:#35566b;transition:background-color .3s; }
 .cinematic-progress .is-current { background:#ffa14f; }
 .cinematic-progress .is-complete { background:#b66a2c; }
 .cinematic-mode .cinematic-host { display:none;position:fixed;inset:0;height:100svh;min-height:0;max-height:none;overflow:hidden;touch-action:pan-x pinch-zoom;background:transparent; }
 .cinematic-mode .cinematic-host.is-scene-active,.cinematic-mode .cinematic-host.is-scene-leaving { display:flex; }
 .cinematic-mode .v3-story.cinematic-host.is-scene-active,.cinematic-mode .v3-story.cinematic-host.is-scene-leaving { display:block; }
 .cinematic-mode .hero-story.cinematic-host { top:100px;height:calc(100svh - 100px);padding-top:clamp(100px,calc(37svh - 90px),260px); }
 .cinematic-mode .mobile-screen { padding-top:24px;padding-bottom:62px; }
 .cinematic-mode .v3-story-frame { position:static;display:flex;align-items:center;height:100svh;padding:24px 14px 62px; }
 .cinematic-mode .v3-state-stack { position:relative;display:block;height:var(--story-stage-height); }
 .cinematic-mode .v3-state { position:absolute;top:0;left:0;width:100%;visibility:hidden;opacity:0;transform:translateY(10px);transition:opacity 360ms ease,transform 380ms cubic-bezier(.22,1,.36,1),visibility 380ms; }
 .cinematic-mode .v3-state.is-active { visibility:visible;opacity:1;transform:none; }
 .cinematic-mode .v3-state.is-stage-leaving { opacity:0;transform:translateY(-10px);transition:opacity 200ms ease,transform 220ms ease; }
 .cinematic-mode.is-reversing .v3-state.is-stage-leaving { transform:translateY(10px); }
 .cinematic-mode .is-stage-reset .v3-state,.cinematic-mode .is-stage-reset .v3-state * { transition:none!important; }
 .cinematic-mode .cinematic-foreground.ux-reveal { opacity:1;transform:none; }
 .cinematic-mode .cinematic-foreground { transition:opacity 360ms cubic-bezier(.22,1,.36,1),transform 380ms cubic-bezier(.22,1,.36,1); }
 .cinematic-mode .is-scene-entering .cinematic-foreground { opacity:0;transform:translateY(20px); }
 .cinematic-mode .is-scene-leaving .cinematic-foreground { opacity:0;transform:translateY(-20px);transition:opacity 200ms ease,transform 220ms ease; }
 .cinematic-mode.is-reversing .is-scene-entering .cinematic-foreground { transform:translateY(-20px); }
 .cinematic-mode.is-reversing .is-scene-leaving .cinematic-foreground { transform:translateY(20px); }
 .cinematic-mode .v3-state-copy { transition:opacity 350ms ease,transform 550ms cubic-bezier(.22,1,.36,1); }
 .cinematic-mode .v3-state:not(.is-active) .v3-state-copy { transform:translateY(-10px); }
 .cinematic-mode .v3-scene,.cinematic-mode .v3-course-photo { transition:opacity 450ms ease,transform 600ms cubic-bezier(.22,1,.36,1);transform:none; }
 .cinematic-mode .v3-state:not(.is-active) .v3-scene,.cinematic-mode .v3-state:not(.is-active) .v3-course-photo { transform:translateY(-10px); }
 .cinematic-mode .ux-reveal:not(.cinematic-foreground) { opacity:1!important;transform:none!important;transition:none!important; }
 .cinematic-mode .v3-why::after { background:linear-gradient(0deg,rgba(6,24,43,.93),rgba(6,24,43,.61)); }
 .cinematic-mode .v3-background,.cinematic-mode .v3-hero-art,.cinematic-mode .hero-story::before { transition:opacity 360ms ease; }
 .cinematic-mode .is-scene-leaving .v3-background,.cinematic-mode .is-scene-leaving .v3-hero-art,.cinematic-mode .hero-story.is-scene-leaving::before { transition-duration:200ms; }
 .cinematic-mode .is-scene-entering .v3-background,.cinematic-mode .is-scene-leaving .v3-background,.cinematic-mode .is-scene-entering .v3-hero-art,.cinematic-mode .is-scene-leaving .v3-hero-art,.cinematic-mode .hero-story.is-scene-leaving::before { opacity:0; }
 .cinematic-mode .v3-story-footer { margin-top:8px; }
 .cinematic-mode .v3-story .v3-heading p { margin-bottom:8px; }
 .cinematic-mode .cinematic-host.is-scene-measuring { display:flex!important;visibility:hidden!important;pointer-events:none; }
 .cinematic-mode .v3-story.is-scene-measuring { display:block!important; }
 .v3-environment-feature .v3-environment-image,.v3-environment-feature .v3-environment-copy { transition:opacity 220ms ease,transform 250ms ease; }
 .v3-environment-feature.is-switching .v3-environment-image,.v3-environment-feature.is-switching .v3-environment-copy { opacity:0;transform:translateY(4px); }
}
@media(max-width:767px) and (max-height:700px) {
 .cinematic-mode .hero-story.cinematic-host { padding-top:clamp(125px,calc(68vw - 110px),155px); }
 .cinematic-mode .story-actions { grid-template-columns:1fr 1fr; }
 .cinematic-mode .story-actions .button { font-size:10px;line-height:1.3;padding:7px 8px;gap:6px; }
 .cinematic-mode .v3-story-frame { padding:12px 14px 62px; }
 .cinematic-mode .v3-course-photo img { max-height:145px;object-fit:contain; }
 .cinematic-mode .v3-scene img { height:132px; }
 .cinematic-mode .v3-environment-option { height:58px; }
}
@media(prefers-reduced-motion:reduce) {
 .cinematic-progress span,.v3-environment-feature * { transition:none!important; }
}
@media(min-width:768px) {
 .cinematic-tools { display:flex;position:fixed;z-index:1100;right:20px;bottom:20px;gap:10px; }
 .cinematic-mode-toggle { display:none; }
 .cinematic-float { display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid #ffffff80;box-shadow:0 4px 12px #0003; }
 .cinematic-whatsapp { background:#167d53;color:#fff; }
 .cinematic-registration { background:#ff8a18;color:#071b30; }
 .cinematic-float svg { width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
}
