:root{--navy:#071a2a;--navy2:#0c2638;--ink:#eaf5fb;--cream:#071523;--line:#abd9ee30;--muted:#acc5d5;--accent:#ffad77;--paper:#eaf5fb;--night:#04121f;color-scheme:dark}html{scroll-behavior:smooth;scroll-padding-top:105px}body.fluid-page{background:radial-gradient(ellipse at 80% 15%,#17405c44,transparent 45%),#071523;color:#eaf5fb;font-family:Manrope,'Plus Jakarta Sans',Arial,sans-serif}.fluid-page button,.fluid-page input{font:inherit}.fluid-page .header{position:sticky;top:0;min-height:88px;background:#061725e6;backdrop-filter:blur(18px);padding:1.15rem 5vw;border-bottom:1px solid var(--line);gap:2rem}.fluid-page .brand-name{font-size:26px}.fluid-page .desktop-links{gap:1.45rem}.fluid-page .desktop-links>a,.fluid-page .motion-switch,.fluid-page .menu-button{font-size:14px}.fluid-page .motion-switch{color:#9dc4d8;border-color:#91cfe244}.fluid-page .menu-button{min-width:44px;min-height:44px}.fluid-page .scroll-progress{height:2px;background:var(--accent)}
.fluid-page .fluid-intro{min-height:440px;height:auto;padding:45px 6vw;display:grid;grid-template-columns:1fr 36%;gap:8%;align-items:center;perspective:1300px;background:#0a2132;border-bottom:1px solid var(--line)}.fluid-page .route-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 49%;filter:brightness(.5) saturate(.7);z-index:-2;animation:roomSettle .55s cubic-bezier(.2,.7,.2,1) both}.route-shade{position:absolute;inset:0;background:linear-gradient(90deg,#041321e8,#06142150),linear-gradient(0deg,#071523b3,transparent 45%);z-index:-1}.fluid-page .intro-copy{width:100%;max-width:780px;animation:copySettle .32s both}.fluid-page .intro-copy .eyebrow{font-size:12px;color:#a0d5e9;letter-spacing:.1em}.fluid-page .intro-copy h1{font-size:clamp(2.8rem,4vw,4.4rem);line-height:1.12;letter-spacing:-.05em;margin:15px 0 22px;font-weight:400}.fluid-page .intro-copy h1 em{color:var(--accent)}.fluid-page .intro-copy>p{font-size:16px;color:#c0d7e5;line-height:1.8;max-width:610px;margin-bottom:0}.route-console{border:1px solid #a8dced66;background:#0b2b3bc2;backdrop-filter:blur(17px);box-shadow:0 20px 60px #020a1644;position:relative;animation:consoleSettle .45s both;transition:transform .14s ease-out}.route-console:before{content:'';position:absolute;top:-1px;left:-1px;width:22px;height:22px;border-top:2px solid #a9edff;border-left:2px solid #a9edff;pointer-events:none}.route-console>span{display:block;padding:17px 22px;border-bottom:1px solid var(--line);font-size:12px;letter-spacing:.1em;color:#a0cede}.route-console nav>a{display:grid;grid-template-columns:22px 1fr 20px;gap:12px;align-items:center;padding:19px 22px;border-bottom:1px solid var(--line);transition:background .15s,transform .15s}.route-console nav>a:hover{background:#bceeff12;transform:translateX(3px)}.route-console small{font-size:12px;color:#8bb8ce}.route-console strong{font-size:16px;font-weight:500;color:#eef8ff}.route-console b{font-size:20px;color:var(--accent);font-weight:400}.console-back{font-size:14px;display:block;padding:16px 22px;color:#acd0e3}.fluid-page .section-wrap{padding-top:50px;padding-bottom:55px}.fluid-page .section-head{gap:35px;margin-bottom:32px}.fluid-page .section-head h2{font-size:clamp(2rem,3.3vw,3.2rem);line-height:1.15;font-weight:400}.fluid-page .section-head p,.fluid-page .about-lead>p{color:#b2cbdc;font-size:16px;line-height:1.85}.fluid-page .eyebrow.dark{font-size:12px;color:#a4d4e6;letter-spacing:.1em}.fluid-page .video-section{background:transparent;border-bottom:1px solid var(--line)}.fluid-page .video-card{border:1px solid var(--line);background:#0c273a;box-shadow:none}.fluid-page .video-image{overflow:hidden}.fluid-page .video-image img{transition:transform .25s}.fluid-page .video-card:hover img{transform:scale(1.04)}.fluid-page .video-meta{padding:19px}.fluid-page .video-meta strong{color:#eff8ff;font-size:22px}.fluid-page .video-meta>span:last-child{font-size:14px;color:#acc9dc}.fluid-page .video-number{font-size:12px;color:#a2c2d5}.fluid-page .rail-hint{font-size:14px;color:#9bbdce}.fluid-page .course-list a{border-color:var(--line);background:#0a233577;padding:24px;transition:background .16s,transform .16s}.fluid-page .course-list a:hover{background:#14394c;transform:translateX(4px)}.fluid-page .course-list a>span:nth-child(3){color:#b8d1e1;font-size:16px}.fluid-page .course-list strong{font-size:22px;color:#edf7fd}.fluid-page .course-no{font-size:12px;color:#87b7ce}.fluid-page .course-meta{font-size:14px;color:#dfbba2}.fluid-page .course-list a b{color:#ffb986}.fluid-page .course-callout{background:#0a283bd9;border:1px solid var(--line);border-left:2px solid var(--accent)}.fluid-page .course-callout p{color:#b9d4e2;font-size:16px}.fluid-page .course-callout a{font-size:14px;color:#ffba8b}.fluid-page .catalog-controls{padding:26px;border:1px solid var(--line);background:#0d2a3c99;border-radius:2px}.fluid-page .catalog-controls #search{background:#051724;color:#e8f5fc;border:1px solid #9bc6db55;font-size:16px;border-radius:2px}.fluid-page .catalog-controls #search::placeholder{color:#89a9bc}.fluid-page .filter-label{font-size:12px;color:#9ac7db}.fluid-page .filters button{border:1px solid #9ac7db44;background:#0b263a;color:#b9d3e3;border-radius:2px;font-size:14px;min-height:40px;transition:background .15s,border .15s}.fluid-page .filters button.active,.fluid-page .filters button[aria-pressed=true]{background:#b8e9ff17;border-color:#abe3f9;color:#effbff;box-shadow:inset 0 -2px var(--accent)}.fluid-page .filters button:hover{background:#b8e9ff20}.fluid-page .free-toggle{font-size:14px;color:#b9d0e0}.fluid-page .result-count{font-size:14px;color:#96bbce}.fluid-page .resource{background:linear-gradient(130deg,#12354a99,#0a243a99);color:#f0faff;border:1px solid var(--line);border-radius:2px;min-height:290px;box-shadow:none;transition:transform .18s,border-color .18s,background .18s}.fluid-page .resource:hover{transform:translateY(-3px);border-color:#9ee3fb;background:#123a51}.fluid-page .resource-type{font-size:12px;color:#a6d7ea}.fluid-page .resource-index{color:#709db544;font-size:2.3rem}.fluid-page .resource strong{font-size:23px;line-height:1.25}.fluid-page .resource-desc{font-size:16px;color:#abcbdc;line-height:1.7}.fluid-page .resource-bottom{font-size:12px;color:#9ab8ca;border-color:var(--line)}.fluid-page .resource-bottom span{font-size:12px;color:#ffbd92}.fluid-page .empty{font-size:16px;color:#d4e7f0}.fluid-page .stage-steps a{background:#0e2d4199;border:1px solid var(--line);border-top:2px solid #a4d9eb;transition:transform .2s,background .2s}.fluid-page .stage-steps a:hover{background:#10354a;transform:translateY(-4px)}.fluid-page .stage-steps a>span{font-size:12px;color:#a5d5e6}.fluid-page .stage-steps h3{font-size:2.15rem;font-weight:400;line-height:1.15}.fluid-page .stage-steps p{font-size:16px;color:#b0cbdc}.fluid-page .stage-steps b{font-size:14px;color:#ffbe91}.fluid-page .about-lead h2{font-size:clamp(2.2rem,3.5vw,3.5rem);font-weight:400;line-height:1.12}.fluid-page .about-lines{border-color:var(--line)}.fluid-page .about-lines>div{border-color:var(--line)}.fluid-page .about-lines p{font-size:16px;color:#b1cddd}.fluid-page .about-lines span{font-size:12px;color:#9bc9db}.fluid-page .source-feature{background:#0b2a3d;border:1px solid var(--line)}.fluid-page .source-feature figcaption{background:transparent}.fluid-page .source-feature p{font-size:16px;color:#bdd7e5}.fluid-page .source-feature h3{color:#ecf7ff}.fluid-page .source-feature a,.fluid-page .under-link{font-size:14px;color:#ffbb8a}.fluid-page .footer{border-top:1px solid var(--line);background:#04121f}.fluid-page .footer-main p{font-size:14px;color:#98b8cc}.fluid-page .footer-main b,.fluid-page .footer-main a:not(.footer-brand){font-size:14px;color:#aacadc}.fluid-page .footer-meta{font-size:12px;border-color:var(--line);color:#84aabe}.fluid-page .immersive-menu{background:#051b2df5;backdrop-filter:blur(25px);transition:opacity .18s,transform .22s,visibility .22s}.fluid-page .menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 30px}.fluid-page .menu-grid>a{grid-template-columns:25px 1fr 20px;gap:6px 13px;padding:22px 0;border-color:var(--line);animation:none}.fluid-page .menu-grid>a strong{font-size:25px;font-weight:400}.fluid-page .menu-grid>a small{grid-column:2;font-size:14px;color:#a6c4d6}.fluid-page .menu-grid>a>span{font-size:12px;color:#ffc197}.fluid-page .menu-grid>a>b{grid-column:3;grid-row:1/3;font-size:22px}.fluid-page .menu-bottom{font-size:14px;border-color:var(--line)}.fluid-page .menu-heading{font-size:12px;color:#aed5e8}.fluid-page .menu-close{font-size:14px}.fluid-page .will-reveal{opacity:1!important;transform:none!important;transition:background .18s,transform .18s!important;transition-delay:0ms!important}
.route-veil{position:fixed;inset:0;z-index:1000;pointer-events:none;background:linear-gradient(115deg,#061927f7,#183c51e8);opacity:0;transform:translateX(-4%);transition:opacity .15s,transform .2s;backdrop-filter:blur(4px)}.route-veil:after{content:'';position:absolute;top:0;bottom:0;left:36%;width:1px;background:#a4e6ff88;box-shadow:80px 0 #a4e6ff22,160px 0 #a4e6ff11}.route-leaving .route-veil{opacity:1;transform:none}.route-leaving .inner-page{transform:translateX(8px);transition:transform .2s}.reduced-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}@keyframes roomSettle{from{transform:scale(1.15)}to{transform:scale(1)}}@keyframes copySettle{from{transform:translateX(-18px);opacity:0}to{transform:none;opacity:1}}@keyframes consoleSettle{from{transform:perspective(1000px) rotateY(-8deg) translateX(25px);opacity:0}to{transform:none;opacity:1}}
@media(max-width:1100px){.fluid-page .header{gap:18px}.fluid-page .desktop-links{gap:18px}.fluid-page .desktop-links>a{font-size:14px}.fluid-page .motion-switch{max-width:130px;line-height:1.4}.fluid-page .fluid-intro{grid-template-columns:1fr 38%;gap:5%;padding-inline:5vw}.fluid-page .intro-copy h1{font-size:3.1rem}.fluid-page .menu-grid{grid-template-columns:1fr 1fr}.fluid-page .menu-grid>a strong{font-size:24px}}
@media(max-width:760px){html{scroll-padding-top:90px}.fluid-page .header{min-height:78px;padding:14px 5vw;gap:15px}.fluid-page .desktop-links{display:none}.fluid-page .header-actions{margin-left:auto;gap:15px}.fluid-page .motion-switch{font-size:12px;max-width:110px}.fluid-page .brand-name{font-size:23px}.fluid-page .fluid-intro{display:block;padding:35px 6vw;min-height:0}.fluid-page .intro-copy{width:100%;max-width:none}.fluid-page .intro-copy h1{font-size:clamp(2.5rem,8.5vw,3.8rem);margin:15px 0 20px}.fluid-page .intro-copy>p{font-size:16px;line-height:1.75}.route-console{margin-top:30px}.route-console nav>a{padding:16px 20px}.route-console>span{padding:15px 20px}.console-back{padding:14px 20px}.fluid-page .section-wrap{padding-top:35px;padding-bottom:40px}.fluid-page .section-head h2{font-size:2.2rem;line-height:1.15}.fluid-page .resource-grid{grid-template-columns:1fr}.fluid-page .catalog-controls{padding:20px}.fluid-page .resource{min-height:270px}.fluid-page .course-list a{grid-template-columns:22px 1fr 18px;gap:10px;padding:20px 15px}.fluid-page .course-list a>span:nth-child(3){grid-column:2;font-size:14px}.fluid-page .course-list a b{grid-column:3;grid-row:1/3}.fluid-page .course-list strong{font-size:21px}.fluid-page .course-meta{font-size:14px}.fluid-page .stage-steps{grid-template-columns:1fr}.fluid-page .stage-steps a{min-height:280px}.fluid-page .stage-steps h3{margin-top:24px}.fluid-page .about-lead{display:block}.fluid-page .about-lead h2{font-size:2.4rem}.fluid-page .footer-main{grid-template-columns:1fr 1fr;gap:30px}.fluid-page .menu-grid{grid-template-columns:1fr 1fr;gap:0 20px}.fluid-page .menu-grid>a{display:block;padding:19px 0}.fluid-page .menu-grid>a strong{font-size:21px;display:block;line-height:1.25}.fluid-page .menu-grid>a small{display:block;margin-top:8px;line-height:1.5}.fluid-page .menu-grid>a>span,.fluid-page .menu-grid>a>b{display:none}.fluid-page .menu-bottom{flex-wrap:wrap;gap:20px}.fluid-page .source-feature{display:block}.fluid-page .source-feature img{width:100%;height:auto}.fluid-page .source-feature figcaption{padding:25px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.route-console{animation-fill-mode:backwards}
.fluid-page .section-head h2 em,.fluid-page .about-lead h2 em{color:var(--accent)}
