.training-detail-page { background:#f5faf7; color:#10213d; }
.training-detail-hero { position:relative; overflow:hidden; min-height:620px; padding:34px 0 105px; color:#fff; background:#063c36 var(--training-detail-image, url('../assets/backgroundservices.png')) center/cover no-repeat; }
.training-detail-hero-image { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.training-detail-hero-overlay { position:absolute; inset:0; background:linear-gradient(110deg,rgba(1,47,44,.98),rgba(2,86,61,.88) 53%,rgba(25,150,67,.58)); }
.training-detail-hero::after { position:absolute; right:-10%; bottom:-35%; width:60%; height:78%; border:2px solid rgba(149,255,73,.3); border-radius:50%; box-shadow:0 0 0 26px rgba(149,255,73,.08),0 0 0 54px rgba(149,255,73,.05); content:''; transform:rotate(-15deg); }
.training-detail-hero-inner { position:relative; z-index:1; }
.training-detail-hero .service-detail-back { margin-bottom:92px; }
.training-detail-hero-copy { max-width:930px; }
.training-detail-hero-copy h1 { max-width:920px; margin:18px 0 24px; color:#fff; font-family:var(--heading-font); font-size:clamp(2.4rem,4vw,4.5rem); letter-spacing:-.065em; line-height:1.02; }
.training-detail-hero-copy h1 em { color:#9ce54b; font-style:normal; }
.training-detail-hero-copy > p { max-width:780px; margin:0 0 34px; color:rgba(255,255,255,.84); font-size:clamp(1.1rem,1.55vw,1.5rem); line-height:1.6; }
.training-detail-hero-copy .services-page-cta-button { display:inline-flex; background:#61d52d; color:#082d24; }
.training-detail-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px; }
.training-calendar-secondary { display:inline-flex; align-items:center; gap:10px; min-height:54px; padding:14px 20px; border:1px solid rgba(255,255,255,.55); border-radius:10px; color:#fff; font-weight:800; text-decoration:none; transition:background .2s ease,border-color .2s ease,transform .2s ease; }
.training-calendar-secondary:hover { border-color:#9ce54b; background:rgba(255,255,255,.1); color:#fff; transform:translateY(-2px); }
.training-detail-hero-stat { position:absolute; right:0; bottom:100px; display:flex; align-items:center; gap:18px; padding:22px 28px; border:1px solid rgba(255,255,255,.28); border-radius:18px; background:rgba(255,255,255,.1); backdrop-filter:blur(10px); }
.training-detail-hero-stat strong { color:#9ce54b; font-family:var(--heading-font); font-size:3rem; line-height:1; }
.training-detail-hero-stat span { color:rgba(255,255,255,.82); font-size:.92rem; font-weight:700; line-height:1.35; }
.training-methods-section,.training-catalogue-section { padding:clamp(70px,8vw,115px) 0; background:#fff; }
.training-section-heading { display:flex; align-items:end; justify-content:space-between; gap:48px; margin-bottom:42px; }
.training-section-heading h2 { max-width:760px; margin:14px 0 0; color:#10213d; font-family:var(--heading-font); font-size:clamp(2.25rem,4.1vw,4.3rem); letter-spacing:-.075em; line-height:1; }
.training-section-heading h2 em { color:#168b35; font-style:normal; }
.training-section-heading > p { max-width:470px; margin:0; color:#526b79; font-size:1.08rem; line-height:1.65; text-align:justify; }
.training-method-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.training-method-card { position:relative; min-height:250px; padding:30px; overflow:hidden; border:1px solid #d8e9dd; border-radius:22px; background:linear-gradient(145deg,#fff,#f1faf4); box-shadow:0 16px 34px rgba(19,94,52,.08); }
.training-method-card > span { display:grid; width:58px; height:58px; place-items:center; margin-bottom:30px; border-radius:17px; background:#19a34e; color:#fff; font-size:1.35rem; }
.training-method-card small { position:absolute; top:30px; right:30px; color:#61bc78; font-size:.78rem; font-weight:800; letter-spacing:2px; }
.training-method-card h3 { max-width:280px; margin:0 0 12px; color:#10213d; font-family:var(--heading-font); font-size:1.4rem; line-height:1.1; }
.training-method-card p { margin:0; color:#5a6d76; line-height:1.55; }
.featured-training-section { position:relative; overflow:hidden; padding:clamp(70px,8vw,115px) 0; background:#006d43; color:#fff; isolation:isolate; }
.featured-training-section::before { position:absolute; z-index:-1; inset:0; background:radial-gradient(circle at 92% 12%,rgba(125,242,84,.34),transparent 28%),radial-gradient(circle at 8% 90%,rgba(82,207,73,.18),transparent 35%),linear-gradient(135deg,#006d43,#004d3f); content:''; }
.training-section-heading-light h2 { color:#fff; }
.training-section-heading-light h2 em { color:#9ce54b; }
.training-section-heading-light > p { color:rgba(255,255,255,.82); }
.training-section-heading-light .services-page-eyebrow { color:#a7f279; }
.training-section-heading-light .services-page-eyebrow span { background:#a7f279; }
.featured-training-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.featured-training-card { display:flex; flex-direction:column; min-height:285px; padding:26px; border:1px solid rgba(255,255,255,.22); border-radius:20px; background:rgba(255,255,255,.1); box-shadow:0 16px 36px rgba(0,37,25,.18); backdrop-filter:blur(8px); }
.featured-training-icon { display:grid; width:52px; height:52px; place-items:center; margin-bottom:22px; border-radius:15px; background:#a1e93e; color:#075a36; font-size:1.35rem; }
.featured-training-card h3 { min-height:2.45em; margin:0 0 18px; color:#fff; font-family:var(--heading-font); font-size:1.2rem; line-height:1.18; }
.featured-training-card ul { display:grid; gap:9px; margin:0 0 25px; padding:0; list-style:none; color:rgba(255,255,255,.82); font-size:.96rem; line-height:1.35; }
.featured-training-card li { display:flex; align-items:flex-start; gap:9px; }
.featured-training-card li i { margin-top:3px; color:#a1e93e; font-size:.75rem; }
.featured-training-card a { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-top:auto; color:#a1e93e; font-weight:800; text-decoration:none; }
.featured-training-card a:hover { color:#fff; }
.training-catalogue-section { background:#f5faf7; }
.training-catalogue-shell { overflow:hidden; border:1px solid #dbe9df; border-radius:24px; background:#fff; box-shadow:0 20px 46px rgba(19,94,52,.1); }
.training-tabs { display:flex; flex-wrap:wrap; gap:0; padding:10px; border-bottom:1px solid #deebe1; background:#f2faf4; }
.training-tab { display:inline-flex; align-items:center; gap:10px; padding:15px 18px; border:0; border-radius:13px; background:transparent; color:#526b79; cursor:pointer; font:inherit; font-size:.92rem; font-weight:800; text-align:left; transition:background .2s ease,color .2s ease,transform .2s ease; }
.training-tab i { color:#19a34e; }
.training-tab:hover,.training-tab.active { background:#087d4b; color:#fff; transform:translateY(-1px); }
.training-tab:hover i,.training-tab.active i { color:#a8f36d; }
.training-tab-panel { padding:36px; }
.training-tab-panel[hidden] { display:none; }
.training-tab-panel-heading { display:flex; align-items:center; gap:20px; padding-bottom:28px; border-bottom:1px solid #e0ebe3; }
.training-panel-icon { display:grid; width:68px; height:68px; flex:0 0 68px; place-items:center; border-radius:20px; color:#fff !important; font-family:"Font Awesome 6 Free"; font-size:1.6rem; font-weight:900; }
.training-panel-icon-green { background:#18a34d; }.training-panel-icon-blue { background:#2474db; }.training-panel-icon-purple { background:#7c47d8; }.training-panel-icon-orange { background:#e59d16; }.training-panel-icon-teal { background:#10a990; }.training-panel-icon-red { background:#e44a56; }
.training-tab-panel-heading p { margin:0 0 7px; color:#149044; font-size:.73rem; font-weight:800; letter-spacing:2px; }
.training-tab-panel-heading h3 { margin:0 0 7px; color:#10213d; font-family:var(--heading-font); font-size:clamp(1.6rem,2.4vw,2.5rem); letter-spacing:-.055em; line-height:1; }
.training-tab-panel-heading span { color:#667982; font-size:1rem; line-height:1.5; }
.training-course-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 28px; }
.training-course-row { display:grid; grid-template-columns:42px minmax(0,1fr); align-items:center; gap:15px; min-height:92px; padding:18px 0; border-bottom:1px solid #e2ece5; }
.training-course-number { display:grid; width:36px; height:36px; place-items:center; border-radius:50%; background:#e4f6de; color:#128a3d; font-size:.76rem; font-weight:800; }
.training-course-row h4 { margin:0; color:#172d48; font-size:1rem; line-height:1.3; }
.training-course-row p { margin:6px 0 0; color:#64757d; font-size:.88rem; line-height:1.4; }
.training-empty-state { display:flex; align-items:center; gap:13px; padding:26px 0 5px; color:#64757d; }.training-empty-state i { color:#168e41; font-size:1.35rem; }.training-empty-state p { margin:0; font-weight:700; }
@media (max-width:1000px) { .training-detail-hero-stat { position:static; width:max-content; margin-top:55px; }.training-method-grid,.featured-training-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.training-section-heading { display:block; }.training-section-heading > p { margin-top:18px; } }
@media (max-width:760px) { .training-detail-hero { min-height:0; padding-bottom:75px; }.training-detail-hero .service-detail-back { margin-bottom:65px; }.training-detail-hero-copy h1 { font-size:clamp(2.15rem,9vw,3.1rem); }.training-detail-hero-stat { margin-top:42px; }.training-method-grid,.featured-training-grid,.training-course-list { grid-template-columns:1fr; }.training-method-card { min-height:0; }.training-tab-panel { padding:24px 18px; }.training-tabs { display:grid; grid-template-columns:1fr 1fr; }.training-tab { padding:13px 12px; font-size:.8rem; }.training-tab-panel-heading { align-items:flex-start; }.training-panel-icon { width:54px; height:54px; flex-basis:54px; font-size:1.25rem; }.training-course-row { grid-template-columns:34px minmax(0,1fr); gap:10px; }.training-course-number { width:32px; height:32px; } }
