:root{--ink:#1d1d1f;--muted:#626269;--blue:#0071e3;--bg:#f5f5f7;--line:#d9d9df;font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;border:0;cursor:pointer;color:inherit;background:transparent}button:disabled{opacity:.3;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #0071e3;outline-offset:4px}button:hover{color:var(--blue)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip{position:fixed;top:-80px;left:16px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.topbar{height:56px;padding:0 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e5e8}.brand{font-weight:750;color:var(--ink);font-size:15px;letter-spacing:-.02em}.brand span{font-size:11px;color:var(--muted);letter-spacing:.12em;margin-left:9px}.top-actions{display:flex;gap:18px;align-items:center}.top-actions button{font-size:13px;padding:10px 0}kbd{font:11px ui-monospace,monospace;border:1px solid var(--line);padding:1px 4px;border-radius:3px;margin-left:3px;color:var(--muted)}#stage{min-height:calc(100dvh - 120px);display:flex;align-items:center;justify-content:center;padding:14px 24px;outline:none}#slides{width:min(100%,calc((100dvh - 148px)*16/9));aspect-ratio:16/9;container-type:inline-size;position:relative;background:#fff;box-shadow:0 18px 55px #0000000d;overflow:hidden;border-radius:3px}.slide{position:relative;width:100%;height:100%;padding:5cqw 5.5cqw 4cqw;background:white;overflow:hidden;display:flex;flex-direction:column;justify-content:center;isolation:isolate}.slide.entering{animation:arrive .35s ease-out}.slide h1,.slide h2{font-size:4.7cqw;line-height:1.22;letter-spacing:-.055em;margin:0 0 2.2cqw;font-weight:750;word-break:keep-all;overflow-wrap:anywhere;white-space:pre-line}.slide h1{font-size:5.9cqw;line-height:1.2}.slide p{margin:0;word-break:keep-all;overflow-wrap:anywhere}.eyebrow{font-size:1.18cqw;letter-spacing:.12em;text-transform:uppercase;font-weight:650;color:var(--blue);margin:0 0 1.6cqw!important}.subtitle{font-size:2.3cqw;line-height:1.65;color:var(--muted);white-space:pre-line}.slide-footer{font-size:1.18cqw;line-height:1.6;color:var(--muted);position:absolute;left:5.5cqw;right:5.5cqw;bottom:2.25cqw}.slide-links{display:flex;gap:1.7cqw;margin-top:2.2cqw;flex-wrap:wrap;font-size:1.4cqw;line-height:1.6}.slide-links a:after{content:' ↗';font-size:.85em}.byline{font-size:1.57cqw;margin-top:2.8cqw!important}.cover{color:white;padding-right:20cqw;background:#102033}.cover:before,.photo:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#07111cdb,#07111c55),var(--photo) center/cover no-repeat}.cover .eyebrow{color:#9cd1ff}.cover .subtitle{color:#e0e9f5}.photo{padding-right:43cqw;color:white;background:#10151b}.photo:before{background:linear-gradient(90deg,#000d 0%,#0009 44%,#0001 80%),var(--photo) center/cover no-repeat}.photo .subtitle,.photo .slide-footer{color:#eee}.photo .eyebrow{color:#a8d5ff}.photo h2{font-size:4.5cqw}.words h2{max-width:70cqw}.word-list{list-style:none;margin:1cqw 0 0;padding:0;display:flex;flex-wrap:wrap;gap:1.4cqw 3.5cqw;max-width:85cqw}.word-list li{font-size:2.63cqw;line-height:1.5;font-weight:580;flex-basis:42%}.word-list li::before{content:'— ';color:var(--blue)}.timeline h2{font-size:4.1cqw}.timeline-list{display:flex;margin-top:3.2cqw;gap:2.4cqw;border-top:2px solid #b8d7f6;padding-top:2cqw}.timeline-list div{flex:1;min-width:0}.timeline-list strong{font-size:2.41cqw;color:var(--blue);display:block;margin-bottom:1.3cqw}.timeline-list p{font-size:1.85cqw;line-height:1.6}.research{display:grid;grid-template-columns:1fr 42%;gap:4cqw;align-items:center}.research h2{font-size:4cqw}.research .subtitle{font-size:1.96cqw}.research figure{margin:0;height:42cqw;max-height:100%;display:flex;align-items:center;justify-content:center}.research img{max-height:100%;max-width:100%;object-fit:contain}.research .word-list{display:block;margin-top:1.5cqw}.research .word-list li{font-size:1.68cqw;margin-top:.7cqw}.duo{justify-content:flex-start}.duo h2{font-size:3.8cqw;margin-bottom:1.3cqw}.duo .subtitle{font-size:1.85cqw;margin-bottom:2cqw}.image-pair{display:grid;grid-template-columns:1fr 1fr;gap:2cqw}.image-pair figure{margin:0;min-width:0}.image-pair img{width:100%;height:26cqw;object-fit:cover;border-radius:1cqw}.image-pair figcaption{font-size:1.23cqw;color:var(--muted);margin-top:.7cqw}.company{background:#061b2e;color:white}.company .subtitle{color:#e1e8f0;font-size:2.69cqw}.company .eyebrow{color:#81c5ff}.company .word-list{margin-top:3cqw}.company .word-list li{font-size:2.02cqw;flex-basis:auto}.company .slide-footer{color:#a8bccf}.company a{color:#81c5ff}.flow h2{font-size:4.3cqw}.flow-list{display:flex;gap:2.2cqw;margin:3cqw 0 2cqw}.flow-list>div{flex:1;position:relative;min-width:0}.flow-list>div+div:before{content:'→';position:absolute;left:-2cqw;top:.2cqw;color:#9da4ab;font-size:1.9cqw}.flow-list strong{font-size:2.41cqw;display:block;line-height:1.4;color:var(--blue)}.flow-list span{font-size:1.68cqw;line-height:1.6;display:block;margin-top:1.3cqw;white-space:pre-line}.role-list{margin-top:1cqw}.role-list div{display:grid;grid-template-columns:24% 1fr;border-bottom:1px solid var(--line);padding:1.4cqw 0;gap:2cqw}.role-list strong{font-size:2.13cqw;color:var(--blue)}.role-list p{font-size:2.02cqw;line-height:1.6;white-space:pre-line}.comparison .flow-list{gap:4cqw}.comparison .flow-list div{border-top:3px solid var(--blue);padding-top:1.3cqw}.comparison .flow-list div:before{display:none}.roles h2{font-size:4cqw}.roles .role-list div{padding:.85cqw 0}.roles .role-list strong{font-size:1.85cqw}.roles .role-list p{font-size:1.74cqw}.salary{background:#08090c;color:#fff}.salary h2{font-size:3.2cqw;color:#b9bcc5}.salary-pair{display:flex;gap:8cqw;margin-top:2cqw}.salary-pair>div{flex:1}.salary-pair .degree{font-size:2.24cqw;color:#a9b0bb}.salary-pair strong{display:block;font-size:8.8cqw;letter-spacing:-.07em;line-height:1.35;font-weight:750}.salary-pair .unit{font-size:1.79cqw;color:#c0c5ce}.salary .slide-footer{color:#b2b8c3}.credentials .role-list{margin-top:1cqw}.credentials .role-list div{grid-template-columns:25% 1fr;padding:2cqw 0}.apps{display:grid;grid-template-columns:1fr 43%;gap:5cqw;align-items:center}.apps h2{font-size:4.2cqw}.apps .subtitle{font-size:2.02cqw}.apps .image-pair{gap:1.3cqw}.apps .image-pair img{height:36cqw;object-fit:contain;border-radius:1.2cqw;background:#f0f1f5}.apps .image-pair figcaption{text-align:center}.apps .slide-links{font-size:1.29cqw}.closing{background:#0071e3;color:white}.closing .subtitle{color:#e0efff;font-size:1.9cqw}.closing .flow-list strong{font-size:6cqw;color:#fff}.closing .flow-list span{color:#fff;font-size:2.02cqw}.closing .flow-list>div+div:before{display:none}.closing a{color:white}.closing .qr{width:8cqw;height:8cqw;position:absolute;right:5cqw;top:5cqw;background:white;padding:.4cqw}.qa{background:#08090c;color:white}.qa .eyebrow{color:#8cc8ff}.qa .word-list li{font-size:2.02cqw}.qa .byline{color:#d0d4dc}.qa a{color:#8cc8ff}.controls{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 28px;height:64px}.position{display:flex;gap:20px;font-size:13px;color:var(--muted)}#counter{font-variant-numeric:tabular-nums;color:var(--ink)}.arrows{display:flex;gap:12px}.arrows button{width:42px;height:38px;font-size:24px;background:#e7e7ec;border-radius:8px}.timer{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}#elapsed{font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace}.timer.overrun{color:#a75000}.progress{position:absolute;bottom:0;left:0;width:100%;height:3px;background:#dedee4}.progress span{display:block;width:3.125%;height:100%;background:var(--blue);transition:width .25s}dialog{border:1px solid #dedee4;border-radius:20px;padding:30px;max-width:min(880px,calc(100vw - 24px));max-height:85dvh;color:var(--ink);box-shadow:0 28px 100px #0003}dialog::backdrop{background:#17202b88;backdrop-filter:blur(6px)}dialog h2{font-size:30px;letter-spacing:-.04em;margin:0}dialog p{line-height:1.8;font-size:16px}.panel-heading{display:flex;justify-content:space-between;align-items:start;gap:30px}.panel-heading button{font-size:28px;line-height:1;padding:0 3px}.panel-heading .eyebrow{font-size:11px;margin:0 0 8px!important}.muted{color:var(--muted)}#slide-index{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin:25px 0}#slide-index button{display:flex;text-align:left;align-items:baseline;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);line-height:1.5;font-size:15px}#slide-index button[aria-current]{color:var(--blue);font-weight:700}#slide-index span{font-size:11px;color:var(--muted)}.dialog-footer{display:flex;gap:24px;flex-wrap:wrap;align-items:center;font-size:15px;padding-top:15px}.shortcuts>div{padding:12px 0;border-bottom:1px solid var(--line)}.shortcuts dt{font-weight:650}.shortcuts dd{margin:5px 0;color:var(--muted)}#notes{position:fixed;right:20px;bottom:78px;width:min(440px,calc(100vw - 40px));padding:24px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 70px #0003;z-index:20;max-height:70dvh;overflow:auto}#notes h2{font-size:16px;margin:0}#notes-title{font-size:20px;line-height:1.5;font-weight:650}#notes-body{font-size:16px;line-height:1.9}#notes .muted{font-size:12px;line-height:1.6}.resource-list{padding-left:22px;line-height:2}.resource-list a{font-size:16px}.no-script{padding:30px}body.reading #stage{display:block;padding:30px 24px}body.reading #slides{width:min(1200px,100%);margin:auto;aspect-ratio:auto;overflow:visible;background:none;box-shadow:none}body.reading .slide{aspect-ratio:16/9;margin-bottom:28px;box-shadow:0 10px 40px #0001}body.reading .topbar{position:sticky;top:0;z-index:30;background:#f5f5f7f2}body.reading .controls{position:fixed;bottom:0;width:100%;z-index:30;background:#f5f5f7f2}body.reading{padding-bottom:70px}
@keyframes arrive{from{opacity:.35;transform:translateY(9px)}to{opacity:1;transform:none}}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{@page{size:A4 landscape;margin:0}body{background:white!important;padding:0!important}.topbar,.controls,#notes,dialog,.skip{display:none!important}#stage,body.reading #stage{display:block;padding:0;min-height:0}#slides,body.reading #slides{width:297mm;aspect-ratio:auto;container-type:inline-size;box-shadow:none;overflow:visible}.slide,.slide[hidden],body.reading .slide{display:flex!important;width:297mm;height:210mm;min-height:0;aspect-ratio:auto;break-after:page;page-break-after:always;margin:0;border-radius:0;box-shadow:none;overflow:hidden;print-color-adjust:exact;-webkit-print-color-adjust:exact}.slide.research,.slide.apps{display:grid!important}.slide:last-child{break-after:auto;page-break-after:auto}.slide h2{font-size:4.3cqw}.slide-footer{bottom:3cqw}}

.timeline-photo{justify-content:flex-start}.timeline-photo h2{font-size:3.7cqw;margin-bottom:1cqw}.timeline-photo .timeline-list{display:block;width:49%;border:0;margin-top:0;padding-top:0}.timeline-photo .timeline-list div{display:grid;grid-template-columns:35% 1fr;gap:1cqw;padding:1cqw 0;border-bottom:1px solid var(--line)}.timeline-photo .timeline-list strong{font-size:1.85cqw;margin:0}.timeline-photo .timeline-list p{font-size:1.57cqw}.timeline-photo-image{position:absolute;right:5.5cqw;top:9cqw;width:35cqw;height:38cqw;margin:0}.timeline-photo-image img{width:100%;height:100%;object-fit:cover;border-radius:1cqw}

@media print{.sr-only,noscript{display:none!important}.slide,.slide[hidden],body.reading .slide{height:209.8mm}}

/* Service experience: duties left, original portrait right. */
.service-photo{display:grid;grid-template-columns:1fr 38%;gap:4.5cqw;align-items:center}.service-photo h2{font-size:4.1cqw}.service-photo figure{margin:0;height:42cqw;display:flex;align-items:center;justify-content:center}.service-photo img{width:100%;height:100%;object-fit:cover;border-radius:1cqw}.service-photo .role-list div{grid-template-columns:1fr;gap:.5cqw;padding:1.2cqw 0}.service-photo .role-list strong{font-size:1.74cqw}.service-photo .role-list p{font-size:1.68cqw;line-height:1.6}

@media print{.slide.service-photo{display:grid!important}}

/* AIS case: input structure, processing, original workshop output. */
.ais-case{justify-content:flex-start;padding-top:2.5cqw;padding-bottom:2.5cqw}.ais-case h2{font-size:3.4cqw;margin-bottom:1.1cqw}.case-metrics{display:flex;gap:5cqw;border-bottom:1px solid var(--line);padding-bottom:1.1cqw;margin-bottom:1.2cqw}.case-metrics strong{font-size:2.69cqw;letter-spacing:-.035em;color:var(--blue)}.case-metrics p{font-size:1.18cqw;line-height:1.6;margin-top:.3cqw}.case-comparison{display:grid;grid-template-columns:1fr 4cqw 30cqw;gap:1.7cqw;align-items:center}.case-input h3,.case-comparison figcaption{font-size:1.51cqw;font-weight:650;margin:0 0 .8cqw}.case-fields{font-family:ui-monospace,monospace;background:#f5f5f7;border-left:.25cqw solid var(--blue);padding:1cqw 1.2cqw}.case-fields p{font-size:1.62cqw;line-height:1.8}.case-input ol{margin:1.1cqw 0 0;padding-left:1.5cqw;font-size:1.46cqw;line-height:1.9}.case-arrow{font-size:3cqw;color:var(--blue)}.case-comparison figure{margin:0}.case-comparison img{display:block;width:24cqw;height:24cqw;object-fit:contain}.case-usage{font-size:1.34cqw;line-height:1.65;margin-top:1.2cqw!important}.case-usage strong{color:var(--blue);margin-right:.8cqw}.ais-case .slide-links{font-size:1.18cqw;margin-top:.6cqw}.scope-notes{margin:20px 0;padding:16px 0;border-block:1px solid var(--line)}.scope-notes summary{cursor:pointer;font-weight:650}


.tool-section{margin-top:1.8cqw}.tool-scope{font-size:1.12cqw;font-weight:650;color:var(--muted);margin-bottom:1.2cqw!important}.tool-strip{display:flex;flex-wrap:wrap;gap:2cqw 4cqw;align-items:start}.tool-item{display:flex;flex-direction:column;gap:1.2cqw;color:var(--ink);min-width:10cqw}.tool-brand{display:flex;align-items:center;gap:.6cqw;height:3cqw}.tool-brand img{width:9cqw;min-width:72px;height:3cqw;object-fit:contain;object-position:left center}.tool-brand:has(strong) img{width:2.8cqw;min-width:0}.tool-brand strong{font-size:1.57cqw;font-weight:650}.tool-role{font-size:1.23cqw;line-height:1.5;color:var(--muted)}


.timeline-photo-images{position:absolute;right:5.5cqw;top:12cqw;width:41cqw;display:grid;grid-template-columns:1fr 1fr;gap:1.4cqw}.timeline-photo:has(.timeline-photo-images) .timeline-list{width:46%}.timeline-photo-images figure{margin:0}.timeline-photo-images img{display:block;width:100%;height:29cqw;object-fit:contain;border-radius:.8cqw}.timeline-photo-images figcaption{font-size:1.23cqw;text-align:center;color:var(--muted);margin-top:1cqw}


.timeline-photo:has(.timeline-photo-images) .timeline-list{width:42%}
.timeline-photo-images{width:47cqw;grid-template-columns:1.3fr 1fr;gap:1.4cqw;top:13cqw}
.timeline-photo-images img{height:30cqw}
.graduate-advice .word-list{display:grid;grid-template-columns:1fr;gap:1.1cqw}
.graduate-advice .word-list li{word-break:keep-all;overflow-wrap:normal}
.ais-case .tool-section{margin-top:1cqw}
.ais-case .tool-scope{font-size:1.01cqw;margin-bottom:.6cqw!important}
.ais-case .tool-strip{gap:1.5cqw}
.ais-case .tool-item{min-width:10cqw;gap:.5cqw}
.ais-case .tool-role{font-size:1.12cqw}


#slide-index{display:block}
.index-chapter{margin:24px 0}
.index-chapter h3{font-size:16px;color:var(--blue);margin:0 0 6px}
.index-entries{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}


.docker-intro{justify-content:flex-start;padding-top:3cqw}
.docker-intro h2{font-size:3.4cqw;margin-bottom:1.2cqw}
.docker-intro .subtitle{font-size:1.85cqw}
.docker-intro .role-list div{padding:.9cqw 0}
.docker-intro .role-list strong{font-size:1.9cqw}
.docker-intro .role-list p{font-size:1.79cqw}
.docker-intro .tool-section{margin-top:1cqw}
.role-list strong{white-space:pre-line}
.flow:has(.tool-section),.timeline:has(.tool-section){padding-top:3cqw;padding-bottom:3cqw}
.tool-brand img{min-width:0}
.slide-chapter{position:absolute;right:5.5cqw;top:1.4cqw;font-size:1.12cqw;font-weight:650;color:var(--blue);letter-spacing:.04em}
.cover .slide-chapter,.photo .slide-chapter,.company .slide-chapter,.closing .slide-chapter,.qa .slide-chapter{color:#a8d5ff}
.key-message{position:absolute;left:5.5cqw;right:5.5cqw;bottom:2.2cqw;padding:.8cqw 1.2cqw;border-left:.25cqw solid var(--blue);background:#eef6ff;color:#0059b3;font-size:1.85cqw;line-height:1.5;font-weight:700}
.agenda h2{font-size:4cqw}
.agenda .role-list div{padding:1cqw 0;grid-template-columns:8% 1fr}
.agenda .role-list strong{font-size:2.02cqw}
.agenda .role-list p{font-size:2.13cqw}
.partners{justify-content:flex-start;padding-top:4cqw}
.partners h2{font-size:3.3cqw;margin-bottom:1.1cqw}
.partners .subtitle{font-size:1.68cqw}
.partners .role-list{display:grid;grid-template-columns:1.45fr 1fr;gap:1.2cqw 2cqw}
.partners .role-list div{display:block;padding:1cqw 0}
.partners .role-list strong{display:block;font-size:1.85cqw;margin-bottom:.6cqw}
.partners .role-list p{font-size:1.4cqw;line-height:1.8}
.project-showcase{justify-content:flex-start;padding-top:4cqw}
.project-showcase h2{font-size:3.6cqw;margin-bottom:.8cqw}
.project-showcase .subtitle{font-size:1.68cqw}
.project-showcase .slide-links{font-size:1.23cqw;margin-top:1cqw}
.project-showcase .image-pair{grid-template-columns:repeat(3,1fr);gap:2cqw;margin-top:1.5cqw}
.project-showcase .image-pair img{height:25cqw;object-fit:contain;background:#f5f5f7}
.project-showcase figcaption{text-align:center}
.ais-case .case-input ol{font-size:1.32cqw;line-height:1.65}

/* Balance the content above fixed takeaway messages. */
.slide-chapter{font-size:1.68cqw;top:1.5cqw}
.slide:has(.key-message){padding-bottom:10cqw}
.partners{justify-content:center;padding-top:5cqw;padding-bottom:4cqw}
.footer-prominent .slide-footer{font-size:1.85cqw;line-height:1.5;font-weight:650;color:var(--ink);bottom:2.4cqw}
.footer-prominent{padding-bottom:7cqw}

.agenda .role-list div{padding:.8cqw 0}

/* Projector readability and reviewed image spacing. */
:root{--muted:#414149}
.subtitle,.image-pair figcaption,.timeline-photo-images figcaption,.slide-footer,.tool-role{font-weight:550}
.duo:has(.key-message) .image-pair img{height:22.5cqw}
.image-pair img[src$="satellite-camp.jpg"]{object-position:center 68%}
.timeline-photo-images{top:12.5cqw}
.timeline-photo-images img{height:30cqw;object-fit:contain;object-position:center top}
.docker-intro{padding-top:5.2cqw}
.ais-case{padding-top:3.5cqw}
.case-comparison{grid-template-columns:1fr 3cqw 32cqw;gap:1.4cqw}
.case-comparison figure img{width:32cqw;height:32cqw}
.case-input ol{line-height:1.6}
.footer-prominent .role-list div{padding:.9cqw 0}

.ais-case{padding-top:3.5cqw;padding-bottom:1.7cqw}
.ais-case .tool-brand img{width:9cqw;height:3cqw}
.ais-case .case-fields{padding:.7cqw 1cqw}
.ais-case .case-fields p{line-height:1.5}
.ais-case .case-metrics{padding-bottom:.7cqw;margin-bottom:.8cqw}
.ais-case .case-input ol{margin-top:.7cqw}
.ais-case .slide-links{position:absolute;left:5.5cqw;bottom:1.2cqw;max-width:50cqw}
/* Clear steps and action-oriented closing. */
.recruitment-steps{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:2.5cqw;margin:3cqw 0 0;padding:0}
.recruitment-steps li{position:relative;background:#eef6ff;border:1px solid #c7dff6;border-radius:1cqw;padding:1.5cqw 1cqw;min-height:12cqw}
.recruitment-steps li+li::before{content:'→';position:absolute;left:-2.4cqw;top:4.3cqw;font-size:2.2cqw;color:var(--blue);font-weight:700}
.step-number{display:block;font-size:1.8cqw;font-weight:700;color:var(--blue);margin-bottom:1.2cqw}
.recruitment-steps strong{display:block;font-size:2cqw;line-height:1.4;word-break:keep-all}
.recruitment-steps p{font-size:1.15cqw;line-height:1.5;margin-top:1cqw}
.credential-groups{display:grid;grid-template-columns:1fr 1fr;gap:3cqw;margin-top:1cqw}
.credential-group h3{font-size:1.8cqw;line-height:1.5;min-height:5.5cqw;margin:0 0 1cqw}
.credential-group ul{list-style:none;padding:0;margin:0;display:grid;gap:1.2cqw}
.credential-group li{padding:1.3cqw 1.5cqw;border-radius:.8cqw;font-size:1.85cqw;font-weight:650;line-height:1.4;word-break:keep-all}
.credential-group.held li{background:#e9f4ff;color:#0056a8;border:1px solid #bbd8f5}
.credential-group.candidate li{background:#f1f1f4;color:var(--ink);border:1px solid #d4d4db}
.action-plan{background:#08090c;color:#fff;padding-bottom:9cqw}
.action-plan .slide-chapter{color:#a8d5ff}
.action-plan .timeline-list{gap:2cqw;border-color:#42647f}
.action-plan .timeline-list strong{font-size:3cqw;color:#8cc8ff}
.action-plan .timeline-list p{font-size:1.85cqw;line-height:1.7;color:#fff}
.action-plan .slide-footer{color:#fff;font-size:1.9cqw;font-weight:650;bottom:3cqw}
.ais-case .case-comparison{grid-template-columns:1fr 3cqw 28cqw;align-items:start}
.ais-case .case-comparison figure img{width:28cqw;height:28cqw}
.ais-case .case-input .slide-links{position:static;max-width:none;margin-top:1.2cqw}
.ais-case .tool-section{margin-top:.8cqw}
.ais-case .case-arrow{align-self:center}
/* Centre transition arrows between the four process stages. */
.flow .flow-list{gap:4cqw}
.flow .flow-list>div+div::before{left:-3.4cqw;top:50%;transform:translateY(-50%);width:2.8cqw;text-align:center;font-size:2.8cqw;line-height:1;font-weight:750;color:var(--blue)}
.recruitment-steps li{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.recruitment-steps strong,.recruitment-steps p{width:100%;text-align:center}

/* Company AI development case: retain a wide, readable itinerary example. */
.research:has(img[src$="marine-travel-example.jpg"]){grid-template-columns:38% 1fr;gap:3cqw}
.research:has(img[src$="marine-travel-example.jpg"]) h2{font-size:3.8cqw}

/* Agent case: technology roles and data-to-agent workflow. */
.research:has(img[src$="marine-travel-example.jpg"]) h2{font-size:3.6cqw;margin-bottom:1.3cqw}
.research:has(img[src$="marine-travel-example.jpg"]) .word-list li{font-size:1.5cqw;line-height:1.5}
.research:has(img[src$="marine-travel-example.jpg"]) .tool-section{margin-top:1.3cqw}
.research:has(img[src$="marine-travel-example.jpg"]) .tool-scope{margin-bottom:.7cqw!important}
.research:has(img[src$="marine-travel-example.jpg"]) .tool-strip{display:grid;grid-template-columns:1fr 1fr;gap:1cqw 1.5cqw}
.research:has(img[src$="marine-travel-example.jpg"]) .tool-item{min-width:0;gap:.35cqw}
.research:has(img[src$="marine-travel-example.jpg"]) .tool-brand img{width:11cqw;height:3.1cqw}
.research:has(img[src$="marine-travel-example.jpg"]) .tool-role{font-size:1.2cqw}
.research:has(img[src$="marine-travel-example.jpg"]) .slide-links{margin-top:1.2cqw;font-size:1.2cqw}

/* In-deck technology explanations; the slide remains visible behind the modal. */
.tool-detail-button{padding:0;text-align:left;border-radius:.5cqw}
.tool-detail-button:hover .tool-brand{filter:brightness(1.15)}
.tool-detail-button:hover .tool-role{color:var(--blue)}
#tool-dialog{width:min(820px,calc(100vw - 24px));padding:30px}
#tool-dialog-role{margin:7px 0 0;color:#0059b3;font-weight:650;font-size:18px}
#tool-dialog-body{margin-top:22px}
#tool-dialog-body section{margin:0 0 20px}
#tool-dialog-body h3{font-size:20px;margin:0 0 8px;letter-spacing:-.025em}
#tool-dialog-body p{font-size:18px;line-height:1.7;margin:0}
.tool-detail-flow{display:flex;gap:22px;list-style:none;padding:0;margin:12px 0;flex-wrap:wrap}
.tool-detail-flow li{position:relative;padding:10px 13px;border-radius:9px;background:#eef6ff;font-size:16px;font-weight:650}
.tool-detail-flow li+li::before{content:'→';position:absolute;left:-18px;color:var(--blue)}
#tool-dialog-body .tool-detail-takeaway{padding:15px 17px;border-left:3px solid var(--blue);background:#f5f5f7;border-radius:0 10px 10px 0;font-weight:600}
#tool-dialog .dialog-footer{justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;margin-top:24px}
#tool-dialog .dialog-footer button{background:var(--blue);color:#fff;padding:11px 16px;border-radius:9px;font-weight:600}
@media(max-width:540px){#tool-dialog{padding:20px}#tool-dialog-body p{font-size:16px}.tool-detail-flow{gap:10px;display:grid;grid-template-columns:1fr 1fr}.tool-detail-flow li{font-size:14px}.tool-detail-flow li+li::before{content:none}}

/* Keep pipeline-stage cards in place while exposing their explanations. */
.flow-detail-button{display:block;width:100%;height:100%;padding:.8cqw;text-align:left;border:1px solid #cce2f7;background:#f4f9ff;border-radius:.8cqw}
.flow-detail-button:hover{background:#e8f3ff}
.flow-list .flow-detail-button span{font-size:1.5cqw}
.flow:has(.flow-detail-button) .flow-list{margin-top:1.8cqw;margin-bottom:1.2cqw}

/* Additional examples reuse the same accessible detail dialog. */
.comparison .flow-detail-button{background:transparent;border:0;padding:0;border-radius:.35cqw}
.timeline-detail-button{display:block;width:100%;height:100%;padding:0;text-align:left;border-radius:.4cqw}
.timeline-detail-button:hover strong,.processing-detail-button:hover{color:#0056b3;text-decoration:underline;text-underline-offset:.2em}
.processing-detail-button{display:inline;padding:0;text-align:left;font:inherit;line-height:inherit;color:inherit;border-bottom:1px dotted #8daac4}
.comparison .flow-detail-button span{font-size:1.68cqw}
.ais-case:has(.processing-detail-button) .case-input ol{line-height:1.5}
