.training-page {overflow-x:hidden;}
.training-header {position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px max(24px,calc((100vw - 1072px)/2));border-bottom:1px solid var(--line, #cfc5b7);}
.training-header > a:last-child {white-space:nowrap;font-size:15px;}
.training-header .brand {font-size:28px;}
.training-header .brand-mark {width:38px;height:38px;}
.training-main {max-width:1120px;padding:40px 24px 56px;margin:0 auto;}
.training-intro {max-width:760px;margin-bottom:28px;}
.training-intro h1 {font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.045em;margin:12px 0 16px;}
.training-lead {font-size:clamp(17px,1.6vw,19px);line-height:1.6;max-width:620px;}
.training-intro-actions {display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:20px;}
.training-intro-actions span {font-size:14px;color:var(--muted,#665f57);}
.training-layout {display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start;}
.training-story {display:grid;gap:28px;}
.training-page h2 {font-size:22px;line-height:1.25;letter-spacing:-.025em;margin:0 0 14px;}
.training-story p,.training-registration > p {font-size:16px;line-height:1.65;color:var(--muted,#665f57);margin:0 0 12px;}
.training-page .training-details {margin:0;padding:20px;background:color-mix(in srgb,var(--bg) 75%,var(--card));}
.training-page .training-details dl {margin:0 0 14px;}
.training-page .training-details dl > div {padding:9px 0;background:transparent;border-bottom:1px solid #cfc5b7;border-radius:0;grid-template-columns:100px minmax(0,1fr);gap:16px;}
.training-page .training-details dd {font-size:15px;line-height:1.5;text-align:right;}
.training-page .training-details dt {font-size:15px;}
.training-outcomes {padding-left:20px;margin:0 0 20px;}
.training-outcomes li {padding:5px 0;line-height:1.65;}
.training-preparation summary {cursor:pointer;font-weight:600;padding:18px 0;}
.training-registration {padding:22px;border:1px solid #cfc5b7;border-radius:18px;background:color-mix(in srgb,var(--bg) 75%,#fff);scroll-margin-top:24px;}
.training-page .question-form {gap:14px;}
.training-page .question-form input,.training-page .question-form textarea {background:var(--bg);font-size:16px;}
.training-page .question-form .button {width:100%;justify-content:center;margin-top:6px;}
.training-route {border:0;padding:0;display:flex;flex-wrap:wrap;gap:10px;margin:18px 0;}
.training-route legend {font-size:14px;font-weight:600;margin-bottom:12px;}
.training-route label {display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #cfc5b7;border-radius:12px;cursor:pointer;}
.training-route label:has(:checked) {background:var(--accent-soft,#ded0dd);border-color:var(--accent);}
.training-route input {accent-color:var(--accent);width:18px;height:18px;}
.training-footer {display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:center;padding:32px 24px;border-top:1px solid #cfc5b7;}
.training-page .form-note {font-size:13px;line-height:1.65;}
.registration-success {padding:20px 0;line-height:1.7;}
@media (max-width:800px) {
.training-layout {grid-template-columns:1fr;gap:28px;}
.training-main {padding-top:28px;max-width:620px;}
.training-intro {margin-bottom:28px;}
.training-registration {padding:20px;}
.training-header .brand {font-size:25px;}
.training-header .brand-mark {width:32px;height:32px;}
.training-header {padding:18px 20px;gap:12px;}
.training-header > a:last-child {font-size:13px;}
.training-intro-actions {gap:14px;}
.training-page .training-details {padding:22px;}
}


.training-page .form-field {gap:6px;}
.training-page .form-field input {min-height:44px;padding:10px 12px;}
.training-page .form-field textarea {min-height:100px;padding:10px 12px;}
.training-page .button {min-height:44px;padding:12px 20px;}
.training-page .training-details dd {text-align:left;font-weight:500;}
.training-page .training-outcomes li {font-size:15px;padding:3px 0;}

.training-summary {font-size:14px;color:var(--muted,#665f57);margin-top:16px;}

.training-page .training-preparation {border:1px solid #cfc5b7;border-radius:12px;overflow:hidden;}
.training-page .training-preparation summary {display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:14px 16px;list-style:none;cursor:pointer;}
.training-page .training-preparation summary::-webkit-details-marker {display:none;}
.training-page .training-preparation summary:hover {background:var(--accent-soft,#ded0dd);}
.training-page .training-preparation summary:focus-visible {outline:2px solid var(--accent);outline-offset:-3px;}
.disclosure-chevron {flex-shrink:0;color:var(--accent);transition:transform 180ms ease;}
.training-preparation[open] .disclosure-chevron {transform:rotate(180deg);}
.training-page .training-preparation p {padding:0 16px;}
@media (prefers-reduced-motion:reduce) {.disclosure-chevron {transition:none;}}
