/* New course pages only. Their base palette and Manrope type come from style.css. */
.training-page{background:var(--pale);overflow-anchor:none}
.training-header{width:min(1560px,calc(100% - 48px))}
.training-header nav{display:flex;gap:24px}
.training-header nav a{white-space:nowrap}
.training-page .section-shell{width:min(1180px,calc(100% - 48px))}
.training-intro{padding-block:32px 18px}
.training-back{display:inline-block;color:var(--dark);font-weight:700;text-decoration:none;margin-bottom:24px}
.training-back:hover,.training-more:hover{text-decoration:underline}
.training-intro>h1{font-size:clamp(32px,3.2vw,44px);max-width:860px;margin:0 0 6px}
.training-intro>h2{font-size:clamp(20px,1.9vw,26px);font-weight:400;color:var(--dark);margin:0 0 26px}
.training-audience{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:start;max-width:1080px}
.training-audience h2{font-size:clamp(23px,2.2vw,28px);margin:0}
.training-audience ul{margin:0;padding-left:22px;display:grid;gap:9px;max-width:760px}
.training-audience li{padding-left:5px;font-size:16px;line-height:1.5}
.training-audience li::marker{color:var(--emerald)}
.training-modular{margin-top:26px;padding:18px 22px;border-radius:14px;background:var(--mint);border:1px solid var(--line);max-width:1080px}
.training-modular h3{font-size:18px;color:var(--dark);margin:0 0 5px}
.training-modular p{margin:0;max-width:800px}
.training-program{padding-block:16px 56px;scroll-margin-top:24px}
.training-currency-note{margin:0 0 9px;color:var(--muted);font-size:14px}
.course-list{display:grid;gap:8px;max-width:1080px;overflow-anchor:none}
.course-item{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.course-item h3{margin:0}
.course-item h3 button{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:16px 20px;border:0;background:transparent;text-align:left;color:var(--dark);font:inherit;font-size:16px;font-weight:700;line-height:1.35;cursor:pointer}
.course-item h3 button:hover,.course-item h3 button:focus-visible{background:var(--pale)}
.course-number,.course-icon{color:var(--emerald)}
.course-icon{font-size:22px;font-weight:400;text-align:center}
.course-answer{padding:0 24px 19px 66px;color:var(--ink);font-size:16px;line-height:1.55;max-width:900px}
.course-answer[hidden]{display:none!important}
.course-answer p{margin:0 0 10px}
.course-answer p:last-child{margin-bottom:0}
.course-answer .course-duration{color:var(--muted)}
.course-price,.course-price-lines{border-top:1px solid var(--line);padding-top:9px;color:var(--emerald);font-size:16px;font-weight:700}
.course-price-lines p{margin:0 0 4px;display:flex;gap:18px;justify-content:space-between}
.course-price-lines p:last-child{margin-bottom:0}
.training-next{margin-top:22px;max-width:1080px;display:flex;align-items:end;justify-content:space-between;gap:24px;padding:19px 22px;border-radius:14px;background:#e6f5ee}
.training-next h2{font-size:clamp(20px,2vw,24px);margin:0 0 12px}
.training-more{color:var(--dark);font-weight:700;white-space:nowrap;text-decoration:none;padding-bottom:15px}
.training-detail-intro{padding-bottom:15px}
.training-detail-intro h1{max-width:1000px}
.training-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-bottom:24px}
.training-detail{padding:20px 22px;background:#fff;border:1px solid var(--line);border-radius:14px}
.training-detail h2{font-size:20px;margin:0 0 14px;line-height:1.3}
.training-detail h3{font-size:16px;color:var(--dark);margin:15px 0 5px}
.training-detail p{margin:0;color:var(--ink);font-size:16px;line-height:1.5}
.training-detail .detail-note{color:var(--muted);margin:-6px 0 8px}
.training-return{padding-bottom:50px}
.training-return .button{width:auto}
/* The shared site's five-size scale uses !important; keep the course on it. */
.training-page .training-intro>h1{font-size:36px!important}
.training-page .training-intro>h2,.training-page .training-detail h2,.training-page .training-next h2{font-size:18px!important}
.training-page .training-audience h2{font-size:24px!important}
.training-page .training-audience li,.training-page .training-modular p,.training-page .course-answer,.training-page .training-detail h3,.training-page .training-detail p,.training-page .training-currency-note,.training-page .course-price,.training-page .course-price-lines{font-size:16px!important}
.training-page .training-modular h3,.training-page .course-item h3 button{font-size:16px!important}
.training-page .course-number,.training-page .course-icon{font-size:18px!important}
.training-page .training-detail{padding:17px 19px}
.training-page .training-detail h2{margin-bottom:10px}
.training-page .training-detail h3{margin:10px 0 4px}
.training-page .training-detail p{line-height:1.42}
.training-page .training-detail-list{gap:10px;padding-bottom:16px}
.training-page .training-detail-intro{padding-bottom:10px}
.training-page .training-return{padding-bottom:28px}
.training-page .training-intro{padding-top:26px}
.training-page .training-back{margin-bottom:18px}
.training-page .training-audience ul{gap:6px}
.training-page .training-modular{margin-top:19px}
.training-page .course-item h3 button{padding:13px 18px}
.training-page .course-answer{padding-bottom:15px}
@media(min-width:1100px){.training-page .training-detail-list{grid-template-columns:repeat(3,minmax(0,1fr))}.training-page .training-detail{padding:14px 16px}.training-page .training-detail h2{margin-bottom:8px}.training-page .training-detail h3{margin:8px 0 3px}}
@media(max-width:900px){.training-audience{grid-template-columns:1fr;gap:12px}.training-detail-list{grid-template-columns:1fr}}
@media(max-width:650px){
  .training-header,.training-page .section-shell{width:calc(100% - 28px)}
  .training-header nav{display:none}
  .training-intro{padding-top:28px}
  .training-back{margin-bottom:30px}
  .training-intro>h1{font-size:31px}
  .training-intro>h2{font-size:20px;margin-bottom:26px}
  .training-audience h2{font-size:24px}
  .training-audience li{font-size:16px}
  .training-modular{margin-top:23px;padding:17px 18px;border-radius:12px}
  .training-modular h3{font-size:17px}
  .training-modular p{font-size:16px}
  .training-program{padding-top:14px;padding-bottom:48px}
  .course-list{gap:9px}
  .course-item{border-radius:12px}
  .course-item h3 button{grid-template-columns:27px minmax(0,1fr) 22px;gap:9px;padding:15px 13px;font-size:16px}
  .course-number{font-size:13px}.course-icon{font-size:22px}
  .course-answer{padding:0 16px 18px 49px;font-size:15px;line-height:1.55}
  .course-price,.course-price-lines{font-size:15px}
  .training-next{display:grid;margin-top:18px;padding:18px;border-radius:12px}
  .training-next h2{font-size:20px}
  .training-more{white-space:normal;padding:0}
  .training-detail{padding:18px 17px;border-radius:12px}
  .training-detail h2{font-size:18px}
  .training-detail h3{font-size:15px}
  .training-detail p{font-size:15px}
  .training-return .button{width:100%}
  .training-page .training-intro>h1{font-size:32px!important}
  .training-page .training-audience h2{font-size:22px!important}
  .training-page .training-detail h2{font-size:18px!important}
  .training-page .course-item h3 button{padding:13px 12px}
  .training-page .training-audience li,.training-page .training-modular p,.training-page .course-answer,.training-page .training-detail h3,.training-page .training-detail p,.training-page .course-price,.training-page .course-price-lines{font-size:16px!important}
  .training-page .course-number,.training-page .course-icon{font-size:18px!important}
}
