@media only screen and (min-width: 1201px) {
  /* Keep desktop hero background image without JS lazy background injection */
  body.home #main .fusion-fullwidth.fusion-builder-row-3 {
    --awb-background-image: linear-gradient(
        145deg,
        hsla(
            var(--awb-custom_color_3-h),
            var(--awb-custom_color_3-s),
            var(--awb-custom_color_3-l),
            calc(var(--awb-custom_color_3-a) - 25%)
          )
          0%,
        rgba(255, 255, 255, 0) 100%
      ),
      url("https://cdn.cstutors.uk/header-background-pattern-scaled-7-e1697545092136.jpg") !important;
  }
}

/* Hero title separator spacing */
body.home #main .fusion-fullwidth.fusion-builder-row-3 .fusion-title-1 + .fusion-separator {
  margin-top: 5px !important;
}

body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 + .fusion-separator,
body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 + .fusion-separator,
body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 + .fusion-separator {
  margin-top: 5px !important;
}

@media only screen and (max-width: 1200px) {
  /* Mobile/tablet: keep hero lightweight for faster LCP */
  body.home #main .fusion-fullwidth.fusion-builder-row-3 {
    --awb-background-image: linear-gradient(
        145deg,
        hsla(
            var(--awb-custom_color_3-h),
            var(--awb-custom_color_3-s),
            var(--awb-custom_color_3-l),
            calc(var(--awb-custom_color_3-a) - 25%)
          )
          0%,
        rgba(255, 255, 255, 0) 100%
      ) !important;
    background-image: linear-gradient(
      145deg,
      hsla(
          var(--awb-custom_color_3-h),
          var(--awb-custom_color_3-s),
          var(--awb-custom_color_3-l),
          calc(var(--awb-custom_color_3-a) - 25%)
        )
        0%,
      rgba(255, 255, 255, 0) 100%
    ) !important;
  }

  /* stack feature blocks cleanly */
  body.home #main .fusion-fullwidth.fusion-builder-row-5 .fusion-row {
    flex-direction: column;
  }

  body.home #main .fusion-fullwidth.fusion-builder-row-5 .fusion-layout-column,
  body.home #main .fusion-fullwidth.fusion-builder-row-5 .fusion-column-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  /* stack bio section and center icons for small devices */
  body.home #main .fusion-fullwidth.fusion-builder-row-6 .fusion-row {
    flex-direction: column;
  }

  body.home #main .fusion-fullwidth.fusion-builder-row-6 .fusion-layout-column,
  body.home #main .fusion-fullwidth.fusion-builder-row-6 .fusion-column-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  body.home #main .fusion-fullwidth.fusion-builder-row-6 .fusion-column-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  body.home #main .fusion-fullwidth.fusion-builder-row-6 .fusion-column-wrapper .fusion-image-element {
    margin-bottom: 1rem;
  }

  body.home #main .fusion-fullwidth.fusion-builder-row-6 .fusion-image-element img {
    max-width: 150px !important;
    width: auto !important;
    height: auto !important;
    display: block;
    margin: 0 auto 1rem;
  }

  body.home #main .fusion-fullwidth.fusion-builder-row-6 .fusion-layout-column {
    text-align: center;
  }

  /* Keep Home hero H1 readable on iPad/phone */
  body.home #main .fusion-fullwidth.fusion-builder-row-3 .fusion-title-1 .cs-hero-title-line {
    font-size: clamp(30px, 5vw, 42px) !important;
    line-height: 1.2 !important;
    letter-spacing: var(--awb-typography2-letter-spacing) !important;
    overflow-wrap: anywhere;
  }

  /* Landing pages: avoid loading desktop hero background image on mobile/tablet */
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 {
    --awb-background-image: linear-gradient(
      90deg,
      rgba(206, 228, 255, 0) 0%,
      var(--awb-custom_color_4) 50%
    ) !important;
    background-image: linear-gradient(
      90deg,
      rgba(206, 228, 255, 0) 0%,
      var(--awb-custom_color_4) 50%
    ) !important;
  }

  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 {
    --awb-background-image: linear-gradient(
      90deg,
      rgba(206, 228, 255, 0) 0%,
      var(--awb-custom_color_4) 50%
    ) !important;
    background-image: linear-gradient(
      90deg,
      rgba(206, 228, 255, 0) 0%,
      var(--awb-custom_color_4) 50%
    ) !important;
  }

}

@media only screen and (min-width: 1201px) {
  /* Landing pages: keep desktop hero background image */
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 {
    --awb-background-image: linear-gradient(
        90deg,
        rgba(206, 228, 255, 0) 0%,
        var(--awb-custom_color_4) 50%
      ),
      url("https://cdn.cstutors.uk/blue_classroom.jpg") !important;
    background-image: linear-gradient(
        90deg,
        rgba(206, 228, 255, 0) 0%,
        var(--awb-custom_color_4) 50%
      ),
      url("https://cdn.cstutors.uk/blue_classroom.jpg") !important;
  }

  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 {
    --awb-background-image: linear-gradient(
        90deg,
        rgba(206, 228, 255, 0) 0%,
        var(--awb-custom_color_4) 50%
      ),
      url("https://cdn.cstutors.uk/blue_classroom.jpg") !important;
    background-image: linear-gradient(
        90deg,
        rgba(206, 228, 255, 0) 0%,
        var(--awb-custom_color_4) 50%
      ),
      url("https://cdn.cstutors.uk/blue_classroom.jpg") !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1200px) {
  /* iPad/tablet uses row-7 (mobile bio version), so target it directly */
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-layout-column,
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-column-wrapper {
    text-align: center !important;
  }

  /* Keep icon row in 3 columns on tablet */
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-builder-nested-column-10,
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-builder-nested-column-11,
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-builder-nested-column-12 {
    width: 33.333333% !important;
    max-width: 33.333333% !important;
    flex: 0 0 33.333333% !important;
  }

  /* Keep the CTA and portrait full width */
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-builder-nested-column-13,
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-builder-column-11 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-image-element {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .imageframe-11 img,
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .imageframe-12 img,
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .imageframe-13 img {
    width: 225px !important;
    max-width: 225px !important;
    height: auto !important;
    margin: 0 auto 0.75rem !important;
  }

  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .imageframe-14 img {
    width: 220px !important;
    max-width: 220px !important;
    height: auto !important;
    margin: 0 auto !important;
  }
}

@media only screen and (max-width: 767px) {
  /* Keep Home hero portrait hidden on phones */
  body.home #main .fusion-fullwidth.fusion-builder-row-3 .fusion-builder-column-4,
  body.home #main .fusion-fullwidth.fusion-builder-row-3 .imageframe-2,
  body.home #main .fusion-fullwidth.fusion-builder-row-3 .imageframe-2 img {
    display: none !important;
  }

  /* Keep hero heading inside viewport on narrow phones */
  body.home #main .fusion-fullwidth.fusion-builder-row-3 .fusion-title-1 .cs-hero-title-line {
    font-size: clamp(30px, 8vw, 38px) !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
    word-break: break-word;
    overflow-wrap: anywhere;
  }

  /* Phone-only: stack and center Bio icon cards */
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-builder-nested-column-10,
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-builder-nested-column-11,
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-builder-nested-column-12 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-image-element,
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .fusion-column-wrapper {
    text-align: center !important;
  }

  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .imageframe-11 img,
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .imageframe-12 img,
  #main .fusion-fullwidth.fusion-builder-row-7.fusion-no-large-visibility .imageframe-13 img {
    width: 180px !important;
    max-width: 180px !important;
    height: auto !important;
    margin: 0 auto 0.75rem !important;
  }
}

/* Landing pages: shared hero behaviour on phone/tablet */
@media only screen and (max-width: 1200px) {
  body.cs-page-gcse .fusion-page-title-bar,
  body.cs-page-a-level .fusion-page-title-bar,
  body.cs-page-nea .fusion-page-title-bar {
    display: none !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 {
    padding-top: 0 !important;
    margin-top: 0 !important;
    --awb-padding-top: 0 !important;
    --awb-padding-top-medium: 0 !important;
    --awb-padding-top-small: 0 !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 .fusion-title-heading,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 .fusion-title-heading,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 .fusion-title-heading {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: var(--awb-custom_color_1) !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 {
    margin-top: 140px !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3,
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3 p,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3 p,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3 p {
    color: #000 !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 900px) and (orientation: portrait) {
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 {
    margin-top: 210px !important;
  }
}

/* Landing pages: center main content block on tablet/phone */
@media only screen and (max-width: 1200px) {
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 > .fusion-builder-row,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 > .fusion-builder-row,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 > .fusion-builder-row {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-column-6,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-column-6,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-column-6 {
    --awb-spacing-left-medium: 0px !important;
    --awb-spacing-right-medium: 0px !important;
    --awb-spacing-left-small: 0px !important;
    --awb-spacing-right-small: 0px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-row-inner,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-row-inner,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-row-inner {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 {
    --awb-padding-left: 0px !important;
    --awb-padding-right: 0px !important;
    --awb-spacing-left-medium: 0px !important;
    --awb-spacing-right-medium: 0px !important;
    --awb-spacing-left-small: 0px !important;
    --awb-spacing-right-small: 0px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0,
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 > .fusion-column-wrapper,
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 .fusion-text-3,
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 .fusion-text-3 p,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 > .fusion-column-wrapper,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 .fusion-text-3,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 .fusion-text-3 p,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 > .fusion-column-wrapper,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 .fusion-text-3,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 .fusion-text-3 p {
    text-align: center !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 > .fusion-column-wrapper,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 > .fusion-column-wrapper,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 > .fusion-column-wrapper {
    align-items: stretch !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 > .fusion-column-wrapper > div[style*="margin-top:10px"],
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 > .fusion-column-wrapper > div[style*="margin-top:10px"],
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 > .fusion-column-wrapper > div[style*="margin-top:10px"] {
    width: 100% !important;
  }
}

@media only screen and (max-width: 767px) and (orientation: portrait) {
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 {
    padding-top: 0 !important;
    --awb-padding-top: 0 !important;
    --awb-padding-top-medium: 0 !important;
    --awb-padding-top-small: 0 !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 {
    margin-top: 24px !important;
  }
}

@media only screen and (min-width: 700px) and (max-width: 1024px) and (orientation: portrait) {
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 {
    padding-top: 0 !important;
    --awb-padding-top: 0 !important;
    --awb-padding-top-medium: 0 !important;
    --awb-padding-top-small: 0 !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 {
    margin-top: 140px !important;
  }
}

@media only screen and (min-width: 1201px) and (max-width: 1400px) and (hover: none) and (pointer: coarse) {
  body.cs-page-gcse .fusion-page-title-bar,
  body.cs-page-a-level .fusion-page-title-bar,
  body.cs-page-nea .fusion-page-title-bar {
    display: none !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 {
    padding-top: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-top: 0 !important;
    --awb-padding-top: 0 !important;
    --awb-padding-top-medium: 0 !important;
    --awb-padding-top-small: 0 !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 > .fusion-builder-row,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 > .fusion-builder-row,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 > .fusion-builder-row,
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-row-inner,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-row-inner,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-row-inner {
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-column-5,
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .imageframe-2,
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .imageframe-2 img,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-column-5,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .imageframe-2,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .imageframe-2 img,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-column-5,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .imageframe-2,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .imageframe-2 img {
    display: none !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-column-6,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-column-6,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-column-6,
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-builder-nested-column-0 {
    --awb-padding-left: 0px !important;
    --awb-padding-right: 0px !important;
    --awb-spacing-left-medium: 0px !important;
    --awb-spacing-right-medium: 0px !important;
    --awb-spacing-left-small: 0px !important;
    --awb-spacing-right-small: 0px !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 .fusion-title-heading,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 .fusion-title-heading,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 .fusion-title-heading {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: var(--awb-custom_color_1) !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-title-2 {
    margin-top: 140px !important;
  }

  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3,
  body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3 p,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3,
  body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3 p,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3,
  body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3 p {
    color: #000 !important;
  }
}

/* Landing pages: make hero body text bold on all viewports */
body.cs-page-gcse #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3 p,
body.cs-page-a-level #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3 p,
body.cs-page-nea #main .fusion-fullwidth.fusion-builder-row-4 .fusion-text-3 p {
  font-weight: 700 !important;
}

/* Calendar icon fallback for all viewports (desktop/tablet/phone) */
[data-cs-modal-open="contact"] .fa-calendar.button-icon-right,
[data-cs-modal-open="contact"] .button-icon-right.cs-calendar-icon {
  display: inline-block !important;
  width: 16px;
  height: 16px;
  margin-left: 0.45em;
  vertical-align: -0.1em;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3E%3Cpath d='M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1H14a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 5v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V5H1z'/%3E%3C/svg%3E");
}

[data-cs-modal-open="contact"] .fa-calendar.button-icon-right::before {
  content: "" !important;
}
