/* Training page #21, SiteOrigin layout. Load AFTER stage/layout styles. */
#pl-21 { width:100%; max-width:100%; }
#pl-21 .panel-grid { box-sizing:border-box; margin-bottom:30px; }
#pl-21 .panel-grid-cell { min-width:0; }
/* Banner full bleed, like the services page. Keep image ratio. */
#pl-21 #pg-21-0 {
  position:relative; left:50%; margin-left:-50vw !important;
  width:100vw !important; max-width:100vw !important;
  margin-top:-60px !important; box-sizing:border-box;
}
#pl-21 #pg-21-0 > .panel-row-style,
#pl-21 #pg-21-0 .panel-grid-cell,
#pl-21 #pg-21-0 .so-panel,
#pl-21 #pg-21-0 .sow-image-container { width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }
#pl-21 #pg-21-0 img { display:block; width:100% !important; max-width:none !important; height:auto !important; }
#pl-21 #pg-21-1 { margin:30px 0 20px !important; }
#pl-21 .sow-headline-container { text-align:center; }
#pl-21 .sow-headline-container h2,
#pl-21 .sow-headline-container h1 { font-size:28px; line-height:1.4; font-weight:400; text-align:center; margin:0 auto 18px; }
#pl-21 .sow-headline-container .decoration { width:75%; max-width:840px; border-bottom:1px solid #e7e7e7; margin:0 auto 25px; }
#pl-21 .so-widget-sow-editor, #pl-21 .textwidget, #pl-21 .widget_custom_html { font-size:16px; line-height:1.55; }
#pl-21 .textwidget p, #pl-21 .siteorigin-widget-tinymce p { margin:0 0 18px; }
#pl-21 #pg-21-15 table { width:100%; border-collapse:collapse; }
#pl-21 #pg-21-15 td, #pl-21 #pg-21-15 th { padding:9px 12px; border:1px solid #dce2e7; }
#pl-21 #pg-21-17 img, #pl-21 #pg-21-18 img { max-width:100%; height:auto; }
#pl-21 #pg-21-22 { display:flex; gap:15px; justify-content:center; }
#pl-21 #pg-21-22 > .panel-grid-cell { flex:1 1 0; text-align:center; }
#pl-21 #pg-21-22 img { max-width:100%; height:auto; }
/* Accordion rendered from the old su-expand markup, no javascript: URLs. */
#pl-21 .su-expand { margin:0 0 28px; }
#pl-21 .su-expand-content { max-height:none !important; overflow:visible !important; color:#333; }
#pl-21 .su-expand:not(.aspo-expanded) .su-expand-content { display:none; }
#pl-21 .su-expand-link { display:none; }
#pl-21 .aspo-expand-toggle { appearance:none; border:0; background:none; padding:6px 0; cursor:pointer; color:#0088ff; text-decoration:underline; font:inherit; }
/* Application form based on saved CF7 #1684. */
#pl-21 .aspo-training-form, .aspo-training-form-fallback { max-width:100%; margin:22px auto 40px; }
#pl-21 .stage4-contact-form, .aspo-training-form-fallback .stage4-contact-form { display:grid; grid-template-columns:1fr 1fr; gap:15px 26px; }
#pl-21 .stage4-contact-form p, .aspo-training-form-fallback .stage4-contact-form p { margin:0 0 12px; }
#pl-21 .stage4-contact-form input:not([type=checkbox]), #pl-21 .stage4-contact-form textarea,
.aspo-training-form-fallback .stage4-contact-form input:not([type=checkbox]), .aspo-training-form-fallback .stage4-contact-form textarea { width:100%; padding:12px; border:1px solid #cbd2d9; background:#fff; }
#pl-21 .stage4-contact-form button[type=submit], .aspo-training-form-fallback .stage4-contact-form button[type=submit] { padding:11px 25px; border:0; background:#394753; color:#fff; cursor:pointer; }
#pl-21 .stage4-contact-form .form-checkbox, .aspo-training-form-fallback .stage4-contact-form .form-checkbox { grid-column:1/-1; }
#pl-21 #pg-21-20 { background:#ecf3f9; padding:35px; }
#pl-21 #pg-21-19 img[align=right] { float:right; margin:0 0 12px 18px; max-width:140px; height:auto; }
@media(max-width:780px){
  #pl-21 #pg-21-0 { margin-top:0 !important; }
  #pl-21 .sow-headline-container h1,#pl-21 .sow-headline-container h2 {font-size:23px;}
  #pl-21 #pg-21-22 {flex-direction:column;}
  #pl-21 .stage4-contact-form, .aspo-training-form-fallback .stage4-contact-form {display:block;}
  #pl-21 #pg-21-20 {padding:20px;}
}
