.ecqa-video-services {
    --ecqa-vs-accent: #29358f;
    --ecqa-vs-background: #ffffff;
    --ecqa-vs-before: 72px;
    --ecqa-vs-after: 72px;
    margin-top: var(--ecqa-vs-before);
    margin-bottom: var(--ecqa-vs-after);
    color: #111c2f;
    font-family: inherit;
}

/* ECQA shared section heading standard */
.ecqa-video-services__heading {
    font-family: inherit !important;
    font-size: 36px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.02em !important;
}
@media (max-width: 991px) { .ecqa-video-services__heading { font-size: 32px !important; } }
@media (max-width: 767px) { .ecqa-video-services__heading { font-size: 28px !important; } }

.ecqa-video-services--background {
    margin-inline: calc(50% - 50vw);
    padding: 48px max(24px, calc((100vw - 1200px) / 2));
    background: var(--ecqa-vs-background);
}

.ecqa-video-services__inner {
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
}

.ecqa-video-services__header {
    margin: 0 auto 48px;
    text-align: center;
}

.ecqa-video-services__eyebrow {
    margin-bottom: 16px;
    color: var(--ecqa-vs-accent);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.5;
}

.ecqa-video-services__heading {
    margin: 0;
    color: #2e2e2e;
    font-family: inherit;
    font-size: 36px;
    font-weight: 400;
    line-height: 1.2;
}

.ecqa-video-services__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(310px, .85fr);
    gap: clamp(24px, 2.2vw, 32px);
    align-items: start;
}

.ecqa-video-services__video {
    position: relative;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 13px;
    background: #000;
    box-shadow: 0 14px 34px rgba(17, 28, 47, .10);
}

.ecqa-video-services__video iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.ecqa-video-services__placeholder {
    display: flex;
    height: 100%;
    padding: 24px;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-align: center;
}

.ecqa-video-services__side {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-top: 2px;
}

.ecqa-video-services__items {
    display: grid;
    gap: 22px;
    width: 100%;
}

.ecqa-video-services__item {
    display: flex;
    gap: 18px;
    align-items: center;
    color: #3c3c3c;
    font-size: 16px;
    line-height: 1.5;
}

.ecqa-video-services__icon {
    display: inline-flex;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    color: var(--ecqa-vs-accent);
}

.ecqa-video-services__icon svg {
    width: 36px;
    height: 36px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.ecqa-video-services__button {
    display: inline-flex;
    min-width: 166px;
    min-height: 54px;
    margin-top: 30px;
    padding: 13px 25px;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--ecqa-vs-accent);
    border-radius: 5px;
    background: var(--ecqa-vs-accent);
    box-shadow: 0 9px 20px rgba(41, 53, 143, .18);
    color: #fff !important;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none !important;
    transition: background-color .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
}

.ecqa-video-services__button:hover,
.ecqa-video-services__button:focus-visible {
    background: #fff;
    color: var(--ecqa-vs-accent) !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 25px rgba(41, 53, 143, .14);
}

@media (max-width: 899.98px) {
    .ecqa-video-services__header { margin-bottom: 36px; }
    .ecqa-video-services__grid { grid-template-columns: 1fr; }
    .ecqa-video-services__side { width: 100%; }
}

@media (max-width: 575.98px) {
    .ecqa-video-services--background { padding-block: 34px; }
    .ecqa-video-services__header { margin-bottom: 28px; }
    .ecqa-video-services__eyebrow { margin-bottom: 10px; font-size: 15px; }
    .ecqa-video-services__heading { font-size: 28px; }
    .ecqa-video-services__grid { gap: 25px; }
    .ecqa-video-services__items { gap: 19px; }
    .ecqa-video-services__item { gap: 14px; font-size: 15px; }
    .ecqa-video-services__icon { flex-basis: 34px; width: 34px; height: 34px; }
    .ecqa-video-services__icon svg { width: 31px; height: 31px; }
    .ecqa-video-services__button { width: 100%; margin-top: 25px; }
}
/* ECQA final heading normalization */
html body .ecqa-video-services h2.ecqa-video-services__heading {
    font-family: inherit !important;
    font-size: 36px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.02em !important;
}
@media (max-width: 991px) { html body .ecqa-video-services h2.ecqa-video-services__heading { font-size: 32px !important; } }
@media (max-width: 767px) { html body .ecqa-video-services h2.ecqa-video-services__heading { font-size: 28px !important; } }
/* ECQA universal main module heading */
html body h2.ecqa-section-title.ecqa-section-title {
    font-family: inherit !important;
    font-size: 36px !important;
    font-style: normal !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.02em !important;
    text-transform: none !important;
}
@media (max-width: 991px) {
    html body h2.ecqa-section-title.ecqa-section-title { font-size: 32px !important; }
}
@media (max-width: 767px) {
    html body h2.ecqa-section-title.ecqa-section-title { font-size: 28px !important; }
}


/* ECQA unified action button interaction */
.ecqa-video-services__button {
  position: relative; z-index: 2; pointer-events: auto; touch-action: manipulation;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease !important;
}
@media (hover: hover) and (pointer: fine) {
.ecqa-video-services__button:hover {
  background: #ffffff !important; color: #27378f !important; border-color: #27378f !important;
  transform: translateY(-2px); box-shadow: 0 8px 18px rgba(39,55,143,.14);
}
}
.ecqa-video-services__button:focus-visible { outline: 3px solid rgba(39,55,143,.25); outline-offset: 3px; }
@media (hover: none), (pointer: coarse) {
.ecqa-video-services__button { -webkit-tap-highlight-color: rgba(39,55,143,.12); }
.ecqa-video-services__button:hover { transform: none; }
}

/* ECQA unified action-button hover — 2026-09-11 */
@media (hover: hover) and (pointer: fine) {
  .ecqa-project__button:hover,
  .ecqa-contactcta__button:hover,
  .ecqa-hero .ecqa-button:hover,
  .ecqa-project-card__button:hover,
  .ecqa-contentblock__button:hover,
  .ecqa-contentblock__button--primary:hover,
  .ecqa-contentblock__button--secondary:hover,
  .ecqa-newsletter__fields button:hover,
  .ecqa-video-services__button:hover,
  .ecqa-featurecard__button:hover,
  .ecqa-contactform__form button[type="submit"]:hover,
  .ecqa-contactform__form input[type="submit"]:hover,
  .ecqa-contactform__form .btn-primary:hover,
  .ecqa-contactform__form .visBtn:hover,
  .ecqa-trainingprovider__button:hover,
  .ecqa-exam-card__button:hover,
  .ecqa-news__button:hover {
    background: #1f2d73 !important;
    border-color: #1f2d73 !important;
    color: #fff !important;
    opacity: 1 !important;
    filter: none !important;
    transform: translateY(-2px);
  }
}
