/* Shared contour language, with quiet reading surfaces. */
.course-flow-texture canvas{display:block;width:100%;height:100%;position:absolute;inset:0}
.course-flow-texture.shader-ready svg{display:none}
.course-flow-texture.shader-ready:after{background:#071a3d80}
.closing-clear .course-flow-texture.shader-ready:after{background:#071a3d99}
.unified-experience,.curriculum-studio,.closing-clear,.process-journey,.toolkit{position:relative;isolation:isolate}
.course-flow-texture{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none;contain:paint}
.unified-experience>.course-flow-texture,.curriculum-studio>.course-flow-texture,.choice.closing-clear>.course-flow-texture{position:absolute;inset:0;display:block;margin:0;padding:0;max-width:none;width:auto;height:auto;transform:none}
.course-flow-texture svg{width:120%;height:120%;position:absolute;left:-10%;top:-10%;opacity:.65}
.course-flow-texture path{fill:none;stroke:#5477d0;stroke-width:40;filter:blur(9px)}
.course-flow-texture path:nth-child(2n){stroke:#29408e;stroke-width:40}.course-flow-texture path:nth-child(3n){stroke:#f26b27;stroke-width:8;filter:blur(5px);opacity:.4}
.course-flow-texture:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#071a3d55,#071a3d22 50%,#071a3d55)}
.curriculum-studio .course-flow-texture svg{transform:rotate(180deg);opacity:.55}
.closing-clear .course-flow-texture svg{opacity:.4}
.unified-experience>*:not(.course-flow-texture),.curriculum-studio>*:not(.course-flow-texture),.closing-clear>*:not(.course-flow-texture){z-index:1}
.unified-experience>.hook-layout,.unified-experience>.hook-intro,.unified-experience>.project-tabs,.unified-experience>.vibe-sandbox,.curriculum-stage,.closing-clear>*:not(.course-flow-texture){position:relative;z-index:1}
.course-contours{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.course-contours:before,.course-contours:after{content:'';position:absolute;width:900px;height:900px;left:-640px;top:-350px;border:1px solid #29408e09;border-radius:44%;box-shadow:0 0 0 35px #29408e03,0 0 0 75px #29408e02,0 0 0 120px #29408e02;transform:rotate(20deg)}
.course-contours:after{left:auto;right:-730px;top:auto;bottom:-420px;width:1050px;height:1050px;transform:rotate(-30deg)}
@media(prefers-reduced-motion:no-preference){.background-in-view .course-flow-texture svg{animation:course-liquid-drift 18s ease-in-out infinite alternate}.curriculum-studio.background-in-view .course-flow-texture svg{animation-name:course-liquid-return}@keyframes course-liquid-drift{from{transform:translate(-1%,-2%) rotate(-3deg) scale(1)}to{transform:translate(3%,2%) rotate(4deg) scale(1.08)}}@keyframes course-liquid-return{from{transform:rotate(180deg) translate(-2%,0) scale(1)}to{transform:rotate(184deg) translate(2%,3%) scale(1.07)}}}
@media(max-width:700px){.course-flow-texture svg{opacity:.5}.course-contours:before{left:-750px}.course-contours:after{right:-900px}}
