.course-page{--ink:var(--white);--muted:var(--slate);--accent:var(--cyan);--paper:var(--navy-2);color:var(--ink);padding-top:94px;background:var(--navy);color-scheme:dark}
.course-hero{background:radial-gradient(ellipse at 85% 0%,rgba(124,58,237,.17),transparent 58%),linear-gradient(120deg,#0c293b,var(--navy-2) 68%,#10172c);padding:48px 0 58px;border-bottom:1px solid var(--line)}
.course-hero h1{font-size:clamp(2.1rem,4.2vw,3.7rem);line-height:1.13;letter-spacing:-.035em;max-width:1000px;margin:18px 0 24px;color:var(--white)}
.course-eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.13em;color:var(--cyan)}
.course-breadcrumb{font-size:.86rem;margin-bottom:32px;color:var(--slate)}
.course-breadcrumb a{color:#a5f3fc}
.course-lead{font-size:1.15rem;line-height:1.8;max-width:890px}
.course-meta,.course-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.course-meta span{font-size:.82rem;background:var(--navy-2);border:1px solid var(--line);border-radius:30px;padding:7px 13px}
.course-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;padding-top:48px;padding-bottom:65px}
.course-article{min-width:0;max-width:830px}
.course-article section{margin-bottom:42px;scroll-margin-top:110px}
.course-article h2,.course-start h2,.course-phase h2{font-size:1.55rem;line-height:1.35;color:var(--white);margin-bottom:18px;letter-spacing:-.02em}
.course-article p,.course-start p{font-size:1.04rem;line-height:1.85;margin-bottom:18px}
.course-article li{line-height:1.7;margin-bottom:8px}
.course-outcomes{border-left:4px solid var(--cyan);background:var(--navy-2);padding:26px 28px;border-radius:0 12px 12px 0}
.course-outcomes h2{font-size:1.1rem}
.course-outcomes ul{padding-left:20px;margin:0}
.course-figure{background:#0b1e32;color:white;border-radius:16px;padding:26px;margin:0 0 42px}
.course-figure figcaption{font-size:1.05rem;font-weight:700;margin-bottom:22px;color:#fff}
.course-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0;margin:0;list-style:none}
.course-flow li{position:relative;margin:0;padding:15px 12px;border:1px solid #29465f;border-radius:10px;background:#112b43}
.course-flow li:not(:last-child):after{content:'→';position:absolute;right:-13px;top:40%;color:var(--cyan);z-index:1}
.course-flow strong,.course-flow span{display:block}
.course-flow strong{font-size:.95rem;margin:10px 0;color:#fff}
.course-flow span{font-size:.82rem;line-height:1.5;color:#d4e4ed}
.course-flow .flow-number{color:var(--cyan);font-size:.75rem;font-weight:800}
.course-aside-box{border:1px solid var(--line);border-radius:12px;padding:22px;margin-bottom:22px;background:var(--navy-2)}
.course-aside-box h2{font-size:1rem}
.course-aside-box ol{padding-left:18px;font-size:.85rem;line-height:1.55}
.course-aside-box li{margin-bottom:10px}
.course-aside-box a{color:#a5dff5}
.course-download{display:inline-block;color:#67e8f9;font-weight:700;font-size:.9rem;line-height:1.55}
.course-all-lessons summary{font-weight:750;cursor:pointer}
.course-directory{list-style:none;padding:0!important;margin:16px 0 0}
.course-directory a{display:flex;gap:12px;text-decoration:none;padding:8px;border-radius:6px}
.course-directory a:hover,.course-directory a[aria-current=page]{background:#113044;color:#a5f3fc}
.course-directory a[aria-current=page]{font-weight:750}
.course-directory span{font-variant-numeric:tabular-nums;color:var(--cyan);font-weight:700}
.course-lab{padding:28px;background:#0b2330;border:1px solid #255364;border-radius:14px}
.course-lab details{background:var(--navy-2);border:1px solid #29465f;border-radius:8px;padding:16px}
.course-lab summary{font-weight:700;cursor:pointer}
.course-lab details p{margin:16px 0 0}
.course-article pre{background:#050d18;color:#eef7fc;padding:22px;border-radius:0 0 10px 10px;overflow:auto;font-size:.86rem;line-height:1.65;margin-bottom:24px;white-space:pre}
.code-label{background:#152b43;color:#e0eef5;border-radius:10px 10px 0 0;padding:7px 20px;text-transform:uppercase;font-size:.7rem;letter-spacing:.1em}
.course-pagination{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-top:1px solid var(--line);padding-top:26px}
.course-pagination a{padding:16px;background:var(--navy-2);border-radius:8px;color:#a5dff5;font-weight:650;font-size:.9rem}
.course-pagination a:last-child{text-align:right}
.course-hub{padding-top:42px;padding-bottom:60px}
.course-start{max-width:950px;margin-bottom:48px}
.course-phase{margin-bottom:48px}
.course-phase>p{color:var(--slate)}
.course-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}
.course-card{border:1px solid var(--line);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:14px;text-decoration:none;color:var(--white);background:var(--navy-2);box-shadow:0 5px 18px #00000033;transition:transform .15s,border-color .15s}
.course-card:hover{transform:translateY(-3px);border-color:var(--cyan);color:var(--white)}
.course-card h3{font-size:1.19rem;line-height:1.45;margin:0}
.course-card p{font-size:.94rem;line-height:1.6;margin:0;color:var(--slate)}
.course-card-number{font-size:.71rem;letter-spacing:.12em;font-weight:800;color:var(--cyan)}
.course-card-link{margin-top:auto;font-size:.85rem;color:#67e8f9;font-weight:700;padding-top:8px}
.course-skip{position:fixed;left:10px;top:-100px;z-index:10000;background:white;color:#123;padding:12px}
.course-skip:focus{top:10px}
.course-print{display:block;margin-top:18px;background:var(--navy-2);border:1px solid #365169;border-radius:6px;padding:8px 12px;color:#a5dff5}
.course-print[hidden]{display:none}
.course-page a:focus-visible,.course-page button:focus-visible,.course-page summary:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.genai-series-feature{background:radial-gradient(ellipse at right top,rgba(124,58,237,.18),transparent 65%),linear-gradient(120deg,#0c293b,#10172c);margin-bottom:30px;display:block!important}
.genai-series-feature .tutorial-feature-body{padding:36px}
.course-index-list{padding-top:40px;padding-bottom:40px}
.course-index-list>.course-directory{columns:2;column-gap:36px}
.course-index-list li{break-inside:avoid}
.course-index-list a{color:#a5dff5}
#submenu-tutorials{max-height:min(72vh,680px);overflow-y:auto;overscroll-behavior:contain}
#references a{overflow-wrap:anywhere}

@media(max-width:991px){.course-layout{grid-template-columns:minmax(0,1fr);gap:25px}
.course-article{max-width:none}
.course-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.course-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.course-page{padding-top:76px}
}

@media(max-width:600px){.course-hero{padding:30px 0}
.course-layout{padding-top:26px}
.course-flow{grid-template-columns:1fr 1fr}
.course-flow li:after{display:none}
.course-figure{padding:20px}
.course-sidebar,.course-cards,.course-pagination{grid-template-columns:1fr}
.course-pagination a:last-child{text-align:left}
.course-index-list>.course-directory{columns:1}
.course-lab,.course-outcomes{padding:20px}
.course-lead{font-size:1.03rem}
.course-card{padding:22px}
.course-article pre{font-size:.8rem;padding:15px}
.course-hero h1{font-size:2.15rem}
}

.course-page p{color:#c5d2e3}
.course-page p.course-eyebrow{color:var(--cyan)}
.course-page .course-flow span{color:#d4e4ed}
.course-page .course-flow .flow-number{color:var(--cyan)}

@media(prefers-reduced-motion:reduce){.course-card{transition:none}
.course-card:hover{transform:none}
}


/* Follow the site's shared navy, cyan and slate palette. */
.course-card h3,.course-aside-box h2,.course-lab summary,.course-all-lessons summary,.course-index-list h2{color:var(--white)}

.course-card:hover,.course-card:focus-visible{background:#102238;box-shadow:0 10px 30px rgba(0,0,0,.25)}

.course-breadcrumb a:hover,.course-aside-box a:hover,.course-download:hover,.course-pagination a:hover,.course-index-list a:hover{color:var(--white)}

.course-article p a,.course-article section>ul a{color:#a5f3fc;text-decoration:underline;text-underline-offset:3px}

.course-pagination a:hover,.course-print:hover{background:#113044;border-color:var(--cyan)}

.course-index-list .course-directory a:focus-visible,.genai-series-feature a:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}

.genai-series-feature .tutorial-feature-body p{color:#c5d2e3}

.genai-series-feature .btn-outline-secondary{color:var(--white);border-color:#52728c;background:rgba(248,250,252,.04)}

.genai-series-feature .btn-outline-secondary:hover{background:#113044;border-color:var(--cyan)}


@media print{
  .navbar,.footer,.course-sidebar,.course-pagination,.course-skip,.sticky-cta,#ai-chat-widget,.chat-widget{display:none!important}
  .course-page{padding:0;background:#fff;color:#122d42;color-scheme:light}
  .course-layout{display:block;padding-top:20px}.course-hero{padding:20px 0;background:#fff}
  .course-hero h1{font-size:26pt}.course-article{max-width:none}.course-article p{font-size:11pt}
  .course-page h1,.course-page h2,.course-page h3,.course-page p,.course-page a,.course-page summary,.course-page li,.course-page .course-card-number,.course-page .course-card-link{color:#122d42}
  .course-meta span,.course-outcomes,.course-card,.course-lab,.course-lab details{background:#fff;border-color:#aaa;color:#122d42;box-shadow:none}
  .course-figure{break-inside:avoid;print-color-adjust:exact}
  .course-article pre{white-space:pre-wrap;overflow-wrap:anywhere;color:#111;background:#eee}
  .course-lab details{display:block}.course-cards{grid-template-columns:1fr 1fr}
}
