/* ODIN training premium editorial — scoped to program detail pages */
.course-editorial-hero{position:relative;isolation:isolate;align-items:center;gap:clamp(28px,5vw,76px);padding-top:clamp(58px,7vw,108px);padding-bottom:82px;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr)}
.course-editorial-hero:before{content:"";position:absolute;z-index:-1;inset:0 -4vw 0 -4vw;background:radial-gradient(ellipse at 78% 47%,var(--glow),transparent 45%),radial-gradient(ellipse at 12% 90%,rgba(22,113,151,.12),transparent 50%);pointer-events:none}
.course-editorial-hero h1{font-size:clamp(53px,6.3vw,94px);letter-spacing:-.068em;max-width:790px;margin:18px 0 24px;line-height:.99}
.course-hero-dot{color:var(--muted);margin:0 9px}
.course-editorial-hero .course-hero-intro{max-width:640px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;font-size:clamp(15px,1.25vw,18px);line-height:1.85;color:var(--muted)}
.course-hero-tags{display:flex;gap:9px;flex-wrap:wrap;margin:26px 0 36px}
.course-hero-tags span{border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--surface));padding:9px 14px;border-radius:100px;font-size:11px;font-weight:800;letter-spacing:.04em}
.course-hero-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.course-hero-button,.course-hero-secondary{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:12px 20px;border-radius:12px;font-size:13px;font-weight:800;transition:transform .18s ease,background .18s ease}
.course-hero-button{color:#051814;background:var(--accent);box-shadow:0 10px 34px color-mix(in srgb,var(--accent) 18%,transparent)}
.course-hero-secondary{border:1px solid var(--line);background:var(--surface);color:var(--text)}
.course-hero-button:hover,.course-hero-secondary:hover{transform:translateY(-3px)}
.course-certificate-display{padding:18px;border:1px solid color-mix(in srgb,var(--accent) 19%,var(--line));border-radius:29px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 5%,var(--surface)),var(--surface));box-shadow:0 34px 100px rgba(0,0,0,.24);transform:rotate(1deg)}
.course-certificate-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 9px 17px;color:var(--muted);font-size:10px;letter-spacing:.15em;font-weight:800}
.course-certificate-display .program-image{border-radius:17px;min-height:270px;background:linear-gradient(135deg,#102b37,#08171e);border:1px solid var(--line);overflow:hidden}
.course-certificate-display .program-image img{object-fit:contain;max-height:430px}
.course-certificate-note{font-size:11px!important;line-height:1.65!important;padding:0 8px;margin:15px 0 0!important;color:var(--muted)}
.odin-course-sheet .odin-key-figures{gap:13px;margin:28px 0 42px}
.odin-course-sheet .odin-key-figure{position:relative;min-height:132px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;border-radius:20px;padding:22px;background:linear-gradient(145deg,var(--surface),var(--surface2));transition:transform .2s ease,border-color .2s ease}
.odin-course-sheet .odin-key-figure:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}
.odin-course-sheet .odin-key-figure:before{content:"";position:absolute;left:22px;top:0;width:30px;height:2px;background:var(--accent)}
.odin-course-sheet .odin-key-figure strong{font-size:clamp(19px,2vw,30px);color:var(--text)}
.odin-course-sheet .odin-sheet-panel{border-radius:24px;background:linear-gradient(150deg,var(--surface),var(--surface2));padding:clamp(23px,3vw,39px)}
.odin-course-sheet .odin-sheet-panel h2{font-size:clamp(26px,2.9vw,39px)}
.odin-course-sheet .odin-course-layout{gap:20px}
.odin-course-sheet .odin-sheet-cta{border-radius:12px;transition:background .15s ease}
@media(max-width:960px){.course-editorial-hero{grid-template-columns:1fr;gap:30px;padding-top:47px;padding-bottom:55px}.course-editorial-hero h1{max-width:900px}.course-certificate-display{transform:none;max-width:640px}.odin-course-sheet .odin-key-figures{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.course-editorial-hero h1{font-size:clamp(43px,12vw,62px)}.course-editorial-hero .course-hero-intro{font-size:14px}.course-certificate-display{padding:11px;border-radius:18px}.course-certificate-caption{font-size:9px}.course-hero-actions>*{width:100%}.course-certificate-display .program-image{min-height:170px}.odin-course-sheet .odin-key-figure{min-height:116px;padding:17px}.odin-course-sheet .odin-key-figures{gap:9px}.odin-course-sheet .odin-sheet-panel{padding:20px}}
@media(prefers-reduced-motion:reduce){.course-hero-button,.course-hero-secondary,.odin-course-sheet .odin-key-figure{transition:none}}

/* Premium phase 2: pathway, facts and accessible certificate */
.odin-course-sheet .odin-key-figures{grid-template-columns:repeat(3,minmax(0,1fr))}
.odin-course-sheet .odin-key-figure{background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 6%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--accent) 14%,var(--line))}
.odin-course-sheet .odin-key-figure span{min-height:0;letter-spacing:.03em}
.odin-course-sheet .odin-key-figure strong{font-size:clamp(21px,2.6vw,34px)}
.odin-course-sheet .odin-sheet-panel aside{min-width:0}
.odin-learning-path{position:relative}
.odin-learning-path .odin-path-current{display:flex;align-items:center;gap:18px;padding:23px 28px;border:1px solid color-mix(in srgb,var(--accent) 47%,var(--line));border-radius:24px;background:radial-gradient(ellipse at 90% 0%,var(--glow),transparent 50%),var(--surface);box-shadow:0 18px 46px rgba(0,0,0,.14);margin:26px 0 20px}
.odin-learning-path .odin-path-current-icon{width:55px;height:55px;flex:none;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:18px;display:grid;place-items:center;color:var(--accent);font-size:25px}
.odin-learning-path .odin-path-current small{display:block;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.13em}
.odin-learning-path .odin-path-current strong{display:block;font-size:clamp(21px,2.5vw,29px);letter-spacing:-.03em;margin:4px 0}
.odin-learning-path .odin-path-current span:not(.odin-path-current-icon){color:var(--muted);font-size:12px}
.odin-learning-path .odin-path-switch{gap:10px;margin-bottom:19px}
.odin-learning-path .odin-path-switch button{font-weight:750;transition:border-color .2s,background .2s}
.odin-learning-path .odin-path-switch button[aria-selected=true]{background:color-mix(in srgb,var(--accent) 11%,var(--surface))}
.odin-learning-path .odin-path-item{min-height:140px;border-radius:22px;padding:24px;background:linear-gradient(140deg,var(--surface),var(--surface2));transition:transform .18s,border-color .18s}
.odin-learning-path .odin-path-item:hover{transform:translateY(-3px)}
.odin-learning-path .odin-path-item strong{font-size:19px;line-height:1.4}
.odin-learning-path .odin-path-empty{border-radius:20px;line-height:1.75}
.course-certificate-display .program-image img{cursor:zoom-in}
@media(max-width:960px){.odin-course-sheet .odin-key-figures{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.odin-learning-path .odin-path-current{padding:18px;gap:12px}.odin-learning-path .odin-path-current-icon{width:44px;height:44px;border-radius:14px}.odin-course-sheet .odin-key-figure strong{font-size:22px}}
@media(prefers-reduced-motion:reduce){.odin-learning-path .odin-path-item,.odin-learning-path .odin-path-switch button{transition:none}}

.course-certificate-open{display:inline-flex;align-items:center;gap:11px;margin:12px 8px 2px;padding:9px 2px;color:var(--accent);font-size:12px;font-weight:800;text-decoration:none}.course-certificate-open:hover{text-decoration:underline}.course-certificate-display .program-image img{cursor:default}

/* Full-bleed cover only. All sections after hero keep the existing ODIN template. */
.course-cover-hero.course-editorial-hero{display:block;width:100%;max-width:none;min-height:550px;margin:0;padding:60px 0 66px;position:relative;isolation:isolate;background-image:linear-gradient(90deg,rgba(2,17,35,.91) 0%,rgba(2,28,49,.84) 43%,rgba(1,30,55,.60) 100%),var(--course-cover-image,linear-gradient(120deg,#064d74,#09263a));background-size:cover;background-position:center center;color:#fff}
.course-cover-hero.course-editorial-hero:before{inset:0;z-index:-1;background:radial-gradient(ellipse at 80% 10%,rgba(24,150,188,.2),transparent 50%);pointer-events:none}
.course-cover-hero .course-cover-grid{display:grid;grid-template-columns:minmax(0,1.27fr) minmax(320px,.73fr);gap:clamp(24px,5vw,76px);align-items:center}
.course-cover-hero .course-cover-copy{min-width:0}
.course-cover-hero .breadcrumb{color:#c5deea;margin-bottom:24px}
.course-cover-hero .breadcrumb a{color:#b2e5f0}
.course-cover-hero .course-level-badge{display:inline-flex;align-items:center;max-width:100%;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:rgba(255,255,255,.14);padding:9px 17px;font-size:12px;font-weight:800;color:white;backdrop-filter:blur(8px)}
.course-cover-hero.course-editorial-hero h1{color:white;font-size:clamp(43px,5.4vw,78px);line-height:1.06;margin:18px 0 14px;max-width:760px}
.course-cover-hero .course-cover-motto{font-size:clamp(19px,2.1vw,29px);line-height:1.35;font-weight:750;color:#fff;margin:0 0 20px;max-width:700px;letter-spacing:-.025em}
.course-cover-hero.course-editorial-hero .course-hero-intro{display:block;-webkit-line-clamp:unset;overflow:visible;color:#d6e6ee;font-size:15px;line-height:1.85;max-width:720px;margin:0 0 29px}
.course-cover-hero .course-hero-button{background:#fff;color:#06496e;border-color:#fff;box-shadow:none}
.course-cover-hero .course-hero-secondary{color:#fff;background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.4)}
.course-cover-hero .course-cover-certificate{transform:none;background:#fff;border:1px solid rgba(255,255,255,.68);color:#142b3b;box-shadow:0 23px 64px rgba(0,0,0,.32);border-radius:19px;padding:16px}
.course-cover-hero .course-certificate-caption{color:#4f6573}
.course-cover-hero .course-certificate-display .program-image{background:#f2f7fa;border:1px solid #e1e9ed;border-radius:12px;min-height:185px}
.course-cover-hero .course-certificate-display .program-image img{max-height:345px;object-fit:contain}
.course-cover-hero .course-certificate-note{color:#5d7181}
.course-cover-hero .course-certificate-open{color:#085c9d}
@media(max-width:920px){.course-cover-hero .course-cover-grid{grid-template-columns:1fr}.course-cover-hero.course-editorial-hero{padding:38px 0 50px}.course-cover-hero .course-cover-certificate{width:min(100%,550px)}}
@media(max-width:620px){.course-cover-hero .course-cover-grid{gap:28px}.course-cover-hero.course-editorial-hero h1{font-size:clamp(40px,11vw,58px)}.course-cover-hero .course-cover-motto{font-size:21px}.course-cover-hero .course-hero-actions a{width:100%}}

/* Course conversion CTA stretches to the browser edges, with square corners. */
.odin-course-cta-section.odin-course-cta-fullbleed{width:100%;max-width:none;margin:0;padding:0}
.odin-course-cta-fullbleed .odin-course-cta{width:100%;max-width:none;margin:0;border-radius:0;padding:clamp(44px,6vw,92px) max(24px,calc((100vw - 1440px)/2 + 24px));box-sizing:border-box}
@media(max-width:640px){.odin-course-cta-fullbleed .odin-course-cta{padding:44px 20px;border-radius:0}}
