:root{
  --emerald:#075a43;--emerald-dark:#034635;--emerald-soft:#e9f3ee;
  --navy:#133b49;--gold:#d8b15f;--gold-dark:#a7792d;--ivory:#faf8f2;
  --cream:#f3eee4;--ink:#153d35;--muted:#667a74;--line:rgba(7,90,67,.12);
  --shadow:0 16px 38px rgba(16,65,53,.10);--radius:22px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Sarabun","Noto Sans SC","Tahoma",sans-serif;color:var(--ink);background:#fff;line-height:1.55;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea,.btn,.form-control{font-family:"Sarabun","Noto Sans SC","Tahoma",sans-serif!important}.container{max-width:1440px}.site-header{background:rgba(255,255,255,.985);box-shadow:0 5px 22px rgba(22,65,54,.07);z-index:1030}.top-strip{background:var(--emerald-dark);color:#fff;font-size:.76rem;padding:.28rem 0}.lang-switch{display:flex;align-items:center;gap:.38rem}.lang-btn{border:0;background:transparent;color:rgba(255,255,255,.72);padding:0 .1rem;font:inherit}.lang-btn.active,.lang-btn:hover{color:#fff;font-weight:700}.font-size-ui{display:flex;align-items:baseline;gap:.4rem;margin-left:.5rem}.font-size-ui button{border:0;background:transparent;color:#fff;font-weight:700;padding:0;line-height:1;opacity:.7;cursor:pointer;transition:.15s}.font-size-ui button:hover,.font-size-ui button:focus-visible{opacity:1}.font-size-ui button[data-font="sm"]{font-size:.68rem}.font-size-ui button[data-font="md"]{font-size:.86rem}.font-size-ui button[data-font="lg"]{font-size:1.06rem}.brand-row{padding:.52rem 0}.university-brand{display:flex;align-items:center;gap:.68rem;min-width:0}.university-seal{width:54px!important;height:66px!important;object-fit:contain;flex:0 0 auto}.university-copy{display:flex;flex-direction:column;line-height:1.15}.university-copy strong{font-size:.98rem;color:var(--emerald-dark)}.university-copy small{font-size:.72rem;color:var(--navy);margin-top:.15rem}.lifelong-logo{width:255px!important;height:73px!important;object-fit:contain}.header-center{display:flex;align-items:center;gap:1rem}.header-search{width:240px;position:relative}.header-search input{height:42px;border:1px solid var(--line);border-radius:999px;padding:0 42px 0 18px;font-size:.82rem;background:#fff}.header-search span{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:var(--emerald)}.btn{border-radius:999px;padding:.68rem 1.16rem;font-weight:700}.btn-brand{background:linear-gradient(135deg,var(--emerald),var(--emerald-dark));border-color:var(--emerald);color:#fff}.btn-brand:hover{background:var(--emerald-dark);color:#fff;transform:translateY(-1px)}.btn-outline-brand{border:1px solid var(--gold);color:var(--emerald-dark);background:#fff}.btn-outline-brand:hover{background:var(--gold);color:#17382f}.main-nav{padding:.08rem 0;border-top:1px solid var(--line)}.main-nav .nav-link{font-weight:700;color:#254b42;padding:.76rem .72rem;position:relative}.main-nav .nav-link:after{content:"";position:absolute;left:.72rem;right:.72rem;bottom:.28rem;height:2px;background:var(--gold);transform:scaleX(0);transition:.25s}.main-nav .nav-link:hover:after,.main-nav .nav-link.active:after{transform:scaleX(1)}

/* HERO */
.hero-section{position:relative;overflow:hidden;background:linear-gradient(180deg,#f7faf8,#eff5f1);padding-bottom:90px}.hero-section:before{content:"";position:absolute;left:-9vw;bottom:55px;width:38vw;height:130px;background:linear-gradient(115deg,transparent 0 16%,rgba(216,177,95,.74) 17% 25%,rgba(7,90,67,.93) 26% 55%,transparent 56%);transform:rotate(-5deg);opacity:.5;z-index:1;pointer-events:none}.hero-visual{position:absolute;inset:0;background:url('../img/hero-photo-v5.jpg') right 46%/cover no-repeat;filter:saturate(.96) contrast(1.02)}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,#fff 30%,rgba(255,255,255,.98) 37%,rgba(255,255,255,.82) 48%,rgba(255,255,255,.24) 61%,rgba(255,255,255,.02) 75%,rgba(255,255,255,0) 100%),linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,0) 74%,rgba(239,245,241,.7) 90%,#eff5f1 100%)}.hero-content{position:relative;z-index:2}.min-vh-hero{min-height:320px;padding:1.7rem 0 2.4rem}.eyebrow{font-size:.76rem;letter-spacing:.12em;font-weight:800;color:var(--gold-dark);margin-bottom:.5rem}.hero-section h1,.section-pad h2,.credit-section h2{font-weight:800;color:#123f35;letter-spacing:-.035em}.hero-section h1{font-size:clamp(1.5rem,1.9vw,2.15rem);line-height:1.28;max-width:560px}.hero-en{font-size:.94rem;color:var(--navy);margin:.4rem 0 .04rem}.hero-zh{font-size:.82rem;color:#406159}.hero-lead{max-width:580px;font-size:.88rem;color:#4d655e;margin-top:.55rem}.btn-ghost{border:1px solid rgba(7,90,67,.23);background:rgba(255,255,255,.83);color:var(--emerald-dark)}
.action-wrap{position:absolute;left:50%;transform:translateX(-50%);bottom:18px;z-index:5}.quick-actions{--bs-gutter-x:.85rem}.quick-card{min-height:92px;border-radius:16px;background:rgba(255,255,255,.97);box-shadow:0 10px 30px rgba(28,61,52,.12);border:1px solid rgba(7,90,67,.09);padding:.7rem 1.9rem .7rem .9rem;display:flex;flex-direction:row;align-items:center;gap:.75rem;text-align:left;text-decoration:none;transition:.25s;position:relative;overflow:hidden}.quick-text{min-width:0}.quick-card:after{content:"›";position:absolute;right:10px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;display:grid;place-items:center;border:1px solid currentColor;font-size:.92rem;opacity:.8;transition:.2s}.quick-card:hover{transform:translateY(-3px);box-shadow:0 17px 34px rgba(28,61,52,.16)}.quick-card:hover:after{background:#d97a2b;border-color:#d97a2b;color:#fff;opacity:1}.quick-card.featured{background:linear-gradient(145deg,#08705a,#04513f);color:#fff}.quick-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:#edf5f1;color:var(--emerald);flex:0 0 auto}.quick-icon svg{width:29px;height:29px;stroke:currentColor;fill:none;stroke-width:1.7}.featured .quick-icon{background:rgba(255,255,255,.15);color:#fff}.quick-card strong{display:block;font-size:.92rem;line-height:1.2}.quick-card small{display:block;font-size:.68rem;opacity:.75;line-height:1.3}.quick-card .zh{display:block;font-size:.63rem;opacity:.68;line-height:1.3}

.section-pad{padding:4.25rem 0}.learning-section{background:radial-gradient(circle at 0 40%,rgba(7,90,67,.06),transparent 30%),var(--ivory)}.section-pad h2,.credit-section h2{font-size:clamp(2rem,2.7vw,3rem);line-height:1.08}.learning-section h2{font-size:clamp(1.65rem,2.05vw,2.5rem)}.learning-section{padding-top:1.5rem!important;padding-bottom:2rem!important}.courses-section{padding-top:2rem!important}.news-section{padding-top:2rem!important}.section-lead{color:var(--muted);max-width:600px;margin-bottom:1.1rem}.audience-card,.course-card,.news-card,.quote-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 9px 25px rgba(32,62,54,.055);height:100%;transition:.25s}.audience-card:hover,.course-card:hover,.news-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.audience-card img{width:100%;height:190px;object-fit:cover;object-position:center 42%}.audience-card h3{font-size:1rem;font-weight:800;margin:0}.audience-card p{font-size:.8rem;color:var(--muted);margin:.2rem 0 0}.audience-card .p-3{padding:1rem!important}.audience-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}.audience-icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8}.audience-icon.icon-green{background:#e6f3ec;color:var(--emerald)}.audience-icon.icon-purple{background:#efe9f7;color:#7c4fd1}.audience-icon.icon-orange{background:#fdece0;color:#d97a2b}.quote-card{background:linear-gradient(145deg,#f2f7f4,#f7f2e7);display:flex;align-items:center;justify-content:center;text-align:center;padding:1.3rem;color:var(--emerald-dark);font-weight:700;font-size:1.03rem;line-height:1.65}.quote-card small{display:block;margin-top:.7rem;color:var(--muted);font-weight:500}.courses-section{background:#fff}.text-link{font-weight:800;text-decoration:none;color:var(--emerald)}.course-card img{width:100%;height:175px;object-fit:cover;object-position:center 48%}.course-body{padding:1rem}.course-tag{display:inline-flex;background:#eef5f0;color:var(--emerald);font-size:.62rem;font-weight:800;letter-spacing:.05em;padding:.25rem .52rem;border-radius:999px}.course-body h3{font-size:.96rem;font-weight:800;margin:.58rem 0 .2rem}.course-body p{font-size:.76rem;color:var(--muted);min-height:2.35em;margin-bottom:.5rem}.course-meta{font-size:.72rem;color:#4d655d}.credit-section{padding:1.7rem 0;background:radial-gradient(circle at 92% 10%,rgba(216,177,95,.20),transparent 26%),linear-gradient(126deg,#07543f,#043f32);color:#fff}.credit-section h2{color:#fff}.credit-section p{color:rgba(255,255,255,.79)}.eyebrow.gold{color:#f0cf87}.btn-light-gold{background:var(--gold);color:#183a31;border:0}.credit-row{display:flex;align-items:center;gap:2.2rem;flex-wrap:wrap}.credit-intro{flex:0 0 auto;max-width:230px}.credit-intro .eyebrow{margin-bottom:.3rem}.credit-intro-sub{font-size:.8rem;color:rgba(255,255,255,.78);margin:0;line-height:1.4}.credit-benefits{display:flex;flex:1 1 420px;justify-content:space-between;gap:1.1rem;flex-wrap:wrap}.benefit{display:flex;align-items:center;gap:.6rem;min-width:150px}.benefit-icon{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.13);display:grid;place-items:center;flex:0 0 auto;color:var(--gold)}.benefit-icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8}.benefit strong{display:block;font-size:.85rem;color:#fff;font-weight:700}.benefit small{font-size:.68rem;color:rgba(255,255,255,.65)}.credit-cta{flex:0 0 auto;white-space:nowrap}.news-section{background:#fbfaf6}.news-card img{width:100%;height:145px;object-fit:cover;object-position:center 46%}.news-card div{padding:.88rem}.news-card time{font-size:.68rem;color:#8b887f}.news-card h3{font-size:.9rem;font-weight:800;margin:.3rem 0 0;line-height:1.35}.news-card p{font-size:.78rem;color:var(--muted);margin:.4rem 0 0;line-height:1.5}.site-footer{background:#063e32;color:rgba(255,255,255,.82)}.footer-brand{display:flex;align-items:center;gap:.72rem}.footer-brand img{width:48px!important;height:60px!important;object-fit:contain}.footer-brand div{display:flex;flex-direction:column}.footer-brand strong{color:#fff}.footer-brand small{font-size:.74rem}.site-footer h3{font-size:.95rem;color:#fff;font-weight:800}.site-footer a{display:block;text-decoration:none;color:rgba(255,255,255,.72);margin:.2rem 0}.footer-lifelong{width:190px;filter:brightness(0) invert(1);opacity:.9}.footer-slogan{margin-top:.55rem;color:#f0cf87;font-weight:700}.footer-slogan span{font-size:.76rem;color:rgba(255,255,255,.62);font-weight:400}.site-footer hr{border-color:rgba(255,255,255,.14)}.footer-line{display:flex;align-items:center;gap:.5rem}.footer-ico{width:19px;height:19px;flex:0 0 auto;color:#f0cf87}.footer-ico svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.8}.footer-line a{display:inline;margin:0;color:inherit}.footer-follow-label{font-size:.76rem;color:rgba(255,255,255,.62);margin:.9rem 0 .4rem}.footer-social{display:flex;gap:.55rem}.footer-social a{display:inline-flex!important;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;margin:0!important;flex:0 0 auto;transition:.2s}.footer-social a:hover{transform:translateY(-2px)}.footer-social svg{width:16px;height:16px;fill:#fff}.social-ico.fb{background:#3b5998}.social-ico.yt{background:#ff0000}.social-ico.line{background:#06c755}.footer-legal{display:flex;gap:1.1rem;flex-wrap:wrap}.footer-legal a{display:inline;margin:0;color:rgba(255,255,255,.6);font-size:.78rem}.footer-legal a:hover{color:#fff}.footer-proto-note{color:rgba(255,255,255,.5);font-size:.76rem}.back-to-top{position:fixed;right:22px;bottom:22px;width:46px;height:46px;border-radius:50%;background:var(--emerald);color:#fff;border:0;font-size:1.2rem;line-height:1;box-shadow:0 8px 20px rgba(7,90,67,.35);z-index:1040;cursor:pointer;display:grid;place-items:center;transition:.2s}.back-to-top:hover{background:var(--emerald-dark);transform:translateY(-3px)}

@media (max-width:1199.98px){.header-search{display:none}.university-copy{display:none}}
@media (max-width:991.98px){.brand-row .container{flex-wrap:wrap}.lifelong-logo{margin-left:auto;width:215px!important}.hero-section{padding-bottom:250px}.hero-visual{opacity:.4}.hero-visual:after{background:rgba(255,255,255,.88)}.min-vh-hero{min-height:auto;padding:2rem 0 2.8rem}.action-wrap{bottom:18px}.quick-card{min-height:66px;padding:.55rem 1.7rem .55rem .7rem}.quick-icon{width:34px;height:34px}.quick-icon svg{width:18px;height:18px}.credit-row{flex-direction:column;align-items:flex-start}.credit-benefits{flex-basis:100%;justify-content:flex-start}.credit-cta{margin-top:.4rem}}
@media (max-width:575.98px){.top-strip .container>div:first-child{max-width:64%;font-size:.66rem}.font-size-ui{display:none}.brand-row{padding:.38rem 0}.university-seal{width:42px!important;height:52px!important}.lifelong-logo{width:170px!important;height:54px!important}.hero-section{padding-bottom:236px}.hero-visual{background-position:38% center}.min-vh-hero{min-height:auto;padding:1.7rem 0 2.2rem}.hero-section h1{font-size:1.4rem}.hero-en{font-size:.92rem}.action-wrap{bottom:14px}.quick-card{min-height:60px;padding:.5rem 1.5rem .5rem .6rem}.quick-icon{width:30px;height:30px}.quick-icon svg{width:16px;height:16px}.quick-card strong{font-size:.82rem}.quick-card small,.quick-card .zh{font-size:.6rem}.section-pad{padding:3.2rem 0}.benefit{min-width:44%}.course-card img{height:145px}}

@media (min-width:1400px){.brand-row .container{min-height:78px}.main-nav .nav-link{padding-left:.9rem;padding-right:.9rem}.hero-section h1{font-size:2.35rem}.hero-section{padding-bottom:102px}.quick-card{min-height:104px}.quick-icon{width:60px;height:60px}.quick-icon svg{width:32px;height:32px}.learning-section .row.g-3,.courses-section .row.g-3,.news-section .row.g-3{--bs-gutter-x:1.15rem}}
html:lang(zh) body{font-family:"Noto Sans SC","Sarabun",sans-serif}

/* v5 image geometry fixes */
.audience-card img,.course-card img,.news-card img{display:block;width:100%;height:auto!important;aspect-ratio:16/9;object-fit:cover;object-position:center;image-rendering:auto}
.audience-card img{object-position:center 42%}
.course-card img{object-position:center 48%}
.news-card img{object-position:center 50%}
.course-img-placeholder{width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,var(--emerald-soft),var(--ivory))}

/* Apply (สมัครเรียน) page */
.apply-hero{background:radial-gradient(circle at 0 30%,rgba(7,90,67,.07),transparent 32%),var(--ivory);padding:1.7rem 0 1.4rem}
.apply-hero h1{font-weight:800;color:#123f35;letter-spacing:-.03em;font-size:clamp(1.7rem,2.6vw,2.5rem);margin-bottom:.35rem}
.apply-hero .section-lead{max-width:720px;margin-bottom:0}
.apply-flow{display:flex;align-items:center;gap:.6rem;margin-top:1rem;flex-wrap:wrap}
.flow-step{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;color:var(--muted)}
.flow-step span{width:26px;height:26px;border-radius:50%;background:#e7ede9;color:var(--muted);display:grid;place-items:center;font-size:.8rem}
.flow-step.is-current{color:var(--emerald-dark)}
.flow-step.is-current span{background:var(--emerald);color:#fff}
.flow-step.is-done{color:var(--emerald-dark)}
.flow-step.is-done span{background:var(--emerald-soft);color:var(--emerald-dark)}
.flow-arrow{color:var(--muted);opacity:.6}
.apply-section{background:#fff;padding-top:1.8rem!important;padding-bottom:2.5rem!important}
.demo-note{background:#fdf6e6;border:1px solid #f0dfa8;color:#7a5b12;border-radius:12px;padding:.85rem 1.1rem;font-size:.85rem;max-width:900px;margin:0 auto 1.4rem}
.status-check-callout{background:var(--emerald-soft);border:1px solid var(--emerald);border-radius:14px;padding:1.1rem 1.4rem;margin-top:1.5rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}
.status-check-callout strong{color:var(--emerald-dark);font-size:1.02rem}
.status-check-callout p{color:var(--muted);font-size:.85rem;margin:.15rem 0 0}
@media (max-width:575.98px){.status-check-callout{flex-direction:column;align-items:stretch;text-align:center}.status-check-callout .btn{width:100%}}
.apply-form-card{max-width:900px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 9px 25px rgba(32,62,54,.055);padding:1.6rem 2rem}
.apply-form-card.wide-card{max-width:1200px}
.apply-form-card.wide-card-xl{max-width:1400px}
.wide-container{width:96%;max-width:1900px;margin:0 auto;padding:0 1.5rem;box-sizing:border-box}
.apply-form-card.wide-card-full{max-width:none;margin:0}
.login-form-card{max-width:520px}
.status-badge{display:inline-block;font-weight:600;font-size:.9rem;padding:.4rem 1rem;border-radius:999px}
.status-badge.status-pending{background:#fdf6e6;color:#7a5b12}
.status-badge.status-approved{background:var(--emerald-soft);color:var(--emerald-dark)}
.status-badge.status-rejected{background:#fbe5e1;color:#a13a2b}
.status-badge.status-inprogress{background:#e3edfb;color:#1c4f8c}
.login-help{text-align:center;font-size:.84rem;color:var(--muted);margin:1rem 0 0}
.course-pick{display:flex;align-items:flex-start;gap:.8rem;border:1px solid var(--line);border-radius:14px;padding:1rem 1.1rem;margin-bottom:.8rem}
.course-pick.is-registered{background:var(--emerald-soft);border-color:var(--emerald)}
.course-pick .form-check-input{margin-top:.3rem}
.course-pick strong{display:block;font-size:.92rem}
.course-pick small{display:block;color:var(--muted);font-size:.76rem;margin-top:.15rem}
.course-pick .badge-registered{color:var(--emerald-dark);font-size:.72rem;font-weight:800;margin-left:auto;white-space:nowrap}
.form-fieldset{border:0;padding:0;margin:0 0 1.4rem}
.form-fieldset legend{font-size:.92rem;font-weight:800;color:var(--emerald-dark);padding:0 0 .8rem;width:100%;border-bottom:1px solid var(--line);margin-bottom:1rem;float:none}
.form-label{font-size:.84rem;font-weight:700;color:#254b42;margin-bottom:.35rem}
.req{color:#c0392b}
.form-text-muted{display:block;color:var(--muted);font-size:.74rem;margin-top:.3rem}
.field-error{display:block;color:#c0392b;font-size:.74rem;margin-top:.3rem}
.autocomplete-wrap{position:relative}
.autocomplete-list{position:absolute;z-index:20;top:100%;left:0;right:0;margin:.25rem 0 0;padding:.25rem 0;list-style:none;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);max-height:260px;overflow-y:auto}
.autocomplete-list li{padding:.5rem .9rem;cursor:pointer;font-size:.88rem}
.autocomplete-list li:hover{background:var(--emerald-soft)}
.apply-form-card .form-control,.apply-form-card .form-select{font-family:inherit;border-radius:10px;border-color:rgba(7,90,67,.18)}
.apply-form-card .form-control:focus,.apply-form-card .form-select:focus{border-color:var(--emerald);box-shadow:0 0 0 .2rem rgba(7,90,67,.14)}
.apply-form-card .form-check-input:checked{background-color:var(--emerald);border-color:var(--emerald)}
.apply-form-card .form-check-input:focus{border-color:var(--emerald);box-shadow:0 0 0 .2rem rgba(7,90,67,.14)}
.pdpa-box{background:#f7faf8;border:1px solid var(--line);border-radius:12px;padding:1rem 1.2rem;margin-bottom:1rem;font-size:.84rem;color:#3f5850;max-height:220px;overflow-y:auto}
.pdpa-box p{margin:0 0 .7rem}
.pdpa-box p:last-of-type{margin-bottom:.6rem}
.apply-consent{background:var(--emerald-soft);border-radius:12px;padding:1rem 1.1rem;margin-bottom:1.6rem}
.apply-consent .form-check-label{font-size:.85rem;color:#254b42}
.apply-form-actions{display:flex;gap:.85rem;flex-wrap:wrap}
.apply-success{max-width:640px;margin:0 auto;text-align:center;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 9px 25px rgba(32,62,54,.06);padding:3rem 2rem}
.success-icon{width:64px;height:64px;border-radius:50%;background:var(--emerald-soft);color:var(--emerald);font-size:1.8rem;font-weight:800;display:grid;place-items:center;margin:0 auto 1.2rem}
.apply-success h2{font-weight:800;color:#123f35;margin-bottom:.6rem}
.apply-success-status strong{color:var(--emerald-dark)}
.apply-success p{color:#4d655e}
.reference-code-box{background:var(--emerald-soft);border:1.5px dashed var(--emerald);border-radius:14px;padding:1.2rem;margin:1.4rem 0;display:flex;flex-direction:column;align-items:center;gap:.5rem}
.reference-code-box small{color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.06em}
.reference-code-box strong{font-size:1.6rem;letter-spacing:.08em;color:var(--emerald-dark);font-family:"Courier New",monospace}
.apply-success .reference-code-warning{background:#fdf6e6;border:1px solid #f0dfa8;color:#7a5b12;border-radius:12px;padding:.7rem 1rem;font-size:.82rem}
@media (max-width:575.98px){.apply-form-card{padding:1.3rem}.apply-flow{gap:.4rem}.flow-step{font-size:.76rem}}
.modal-overlay{position:fixed;inset:0;background:rgba(18,40,33,.55);display:flex;align-items:center;justify-content:center;padding:1.2rem;z-index:1050}
.modal-box{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);max-width:640px;width:100%;max-height:90vh;overflow-y:auto;padding:1.6rem 1.8rem;position:relative}
.modal-close{position:absolute;top:1rem;right:1.1rem;background:none;border:0;font-size:1.4rem;line-height:1;color:var(--muted);cursor:pointer;padding:.2rem .4rem}
.modal-close:hover{color:var(--ink)}
.modal-box.wide-modal{max-width:800px}
@media (max-width:575.98px){.modal-box{padding:1.2rem}}

.course-card-band{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin:-1.6rem -2rem 1.1rem;padding:1rem 2rem;background:var(--emerald-soft);border-radius:20px 20px 0 0;border-bottom:2px solid var(--emerald)}
.course-card-band .course-tag{background:var(--emerald-dark);color:#fff;font-size:.8rem;padding:.4rem .8rem;flex:0 0 auto}
.course-card-band h2{font-size:1.2rem;font-weight:800;color:var(--ink);margin:0;line-height:1.3}

.breadcrumb-trail{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.9rem;font-size:.8rem}
.breadcrumb-trail a{background:var(--emerald-soft);color:var(--emerald-dark);font-weight:700;padding:.3rem .75rem;border-radius:999px;text-decoration:none}
.breadcrumb-trail a:hover{background:var(--gold);color:#17382f}
.breadcrumb-trail .breadcrumb-current{background:var(--emerald-dark);color:#fff;font-weight:700;padding:.3rem .75rem;border-radius:999px}
.breadcrumb-trail .breadcrumb-sep{color:var(--muted);font-weight:700}
@media (max-width:575.98px){.course-card-band{margin:-1.3rem -1.3rem 1.1rem;padding:.85rem 1.3rem}}
