.elementor-3419 .elementor-element.elementor-element-f434371 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:flex-start;align-items:flex-start;}.elementor-3419 .elementor-element.elementor-element-f434371:not(.elementor-motion-effects-element-type-background), .elementor-3419 .elementor-element.elementor-element-f434371 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-3419 .elementor-element.elementor-element-f434371{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:40px;margin-bottom:0px;padding:60px 100px 80px 100px;}.elementor-3419 .elementor-element.elementor-element-f434371 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-3419 .elementor-element.elementor-element-58538c2 > .elementor-element-populated{padding:20px 0px 0px 0px;}.elementor-3419 .elementor-element.elementor-element-7912045 .elementor-button{background-color:#88100D;font-family:"Oswald", Sans-serif;font-size:13px;font-weight:400;text-transform:uppercase;letter-spacing:2.5px;fill:#FFFFFF;color:#FFFFFF;border-radius:0px 0px 0px 0px;padding:22px 28px 22px 28px;}.elementor-3419 .elementor-element.elementor-element-7912045 .elementor-button:hover, .elementor-3419 .elementor-element.elementor-element-7912045 .elementor-button:focus{background-color:#6B0C0A;color:#FFFFFF;}.elementor-3419 .elementor-element.elementor-element-7912045 > .elementor-widget-container{margin:16px 0px 0px 0px;}.elementor-3419 .elementor-element.elementor-element-7912045 .elementor-button:hover svg, .elementor-3419 .elementor-element.elementor-element-7912045 .elementor-button:focus svg{fill:#FFFFFF;}.elementor-3419 .elementor-element.elementor-element-9316cbe > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-3419 .elementor-element.elementor-element-8cf6ee5 img{width:100%;border-radius:8px 8px 8px 8px;}.elementor-3419 .elementor-element.elementor-element-full_suite_1:not(.elementor-motion-effects-element-type-background), .elementor-3419 .elementor-element.elementor-element-full_suite_1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-3419 .elementor-element.elementor-element-full_suite_1{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:60px 100px 60px 100px;}.elementor-3419 .elementor-element.elementor-element-full_suite_1 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-3419 .elementor-element.elementor-element-full_suite_h1{text-align:start;}.elementor-3419 .elementor-element.elementor-element-full_suite_h1 .elementor-heading-title{font-family:"Oswald", Sans-serif;font-size:36px;font-weight:400;color:#333333;}.elementor-3419 .elementor-element.elementor-element-full_suite_t1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3419 .elementor-element.elementor-element-full_suite_acc{text-align:start;}.elementor-3419 .elementor-element.elementor-element-020e873:not(.elementor-motion-effects-element-type-background), .elementor-3419 .elementor-element.elementor-element-020e873 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#f5f5f5;}.elementor-3419 .elementor-element.elementor-element-020e873{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:30px 100px 30px 100px;}.elementor-3419 .elementor-element.elementor-element-020e873 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-3419 .elementor-element.elementor-element-dfae7cb > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-3419 .elementor-element.elementor-element-dfae7cb{text-align:center;}.elementor-3419 .elementor-element.elementor-element-dfae7cb .elementor-heading-title{font-family:"Oswald", Sans-serif;font-size:36px;font-weight:400;line-height:1.2em;color:#333333;}.elementor-bc-flex-widget .elementor-3419 .elementor-element.elementor-element-dcb3dc1.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-3419 .elementor-element.elementor-element-dcb3dc1.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-3419 .elementor-element.elementor-element-85c2094{text-align:center;}.elementor-bc-flex-widget .elementor-3419 .elementor-element.elementor-element-2f069c4.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-3419 .elementor-element.elementor-element-2f069c4.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-3419 .elementor-element.elementor-element-4a1e236{text-align:center;}.elementor-bc-flex-widget .elementor-3419 .elementor-element.elementor-element-2292929.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-3419 .elementor-element.elementor-element-2292929.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-3419 .elementor-element.elementor-element-fd2d4f7{text-align:center;}.elementor-bc-flex-widget .elementor-3419 .elementor-element.elementor-element-2b86914.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-3419 .elementor-element.elementor-element-2b86914.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-3419 .elementor-element.elementor-element-acd2f17{text-align:center;}.elementor-3419 .elementor-element.elementor-element-cta_shortcode{padding:0px 0px 0px 0px;}.elementor-3419 .elementor-element.elementor-element-cta_sc_col > .elementor-element-populated{padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-3419 .elementor-element.elementor-element-58538c2{width:50%;}.elementor-3419 .elementor-element.elementor-element-9316cbe{width:50%;}.elementor-3419 .elementor-element.elementor-element-cta_sc_col{width:100%;}}/* Start custom CSS for image, class: .elementor-element-8cf6ee5 */.elementor-3419 .elementor-element.elementor-element-8cf6ee5 .elementor-widget-container img {
  width: 600px;
  max-width: 100%;
  height: 500px;
  max-height: 500px;
  display: block;
  border-radius: 8px;
  margin-left: auto;
}
.elementor-3419 .elementor-element.elementor-element-8cf6ee5 .elementor-widget-container {
  height: auto;
}/* End custom CSS */
/* Start custom CSS *//* Inline body images respect viewport */
.elementor-widget-text-editor img { max-width: 100% !important; height: auto !important; }

/* Services list readability */
.elementor-widget-text-editor ul { padding-left: 1.2em; }
.elementor-widget-text-editor ul li { margin-bottom: 1em; line-height: 1.55; }
.elementor-widget-text-editor a { word-break: break-word; }

/* Tablet: reduce the 100px side padding inherited from RE template */
@media (max-width: 1024px) {
  .elementor-3419 .elementor-section.elementor-element[data-element_type="section"] {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }
}

/* Mobile: tighter padding + smaller headings + lighter top/bottom */
@media (max-width: 767px) {
  .elementor-3419 .elementor-section.elementor-element[data-element_type="section"] {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  /* Inner column padding shouldn't add extra side gutters on phones */
  .elementor-3419 .elementor-column .elementor-element-populated {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  /* Heading scaling */
  .elementor-3419 .elementor-widget-heading h1 { font-size: 32px !important; line-height: 1.15 !important; }
  .elementor-3419 .elementor-widget-heading h2 { font-size: 24px !important; line-height: 1.25 !important; }
  .elementor-3419 .elementor-widget-text-editor h2 { font-size: 22px !important; line-height: 1.25 !important; }
  .elementor-3419 .elementor-widget-text-editor p,
  .elementor-3419 .elementor-widget-text-editor li { font-size: 15px !important; }
}/* Inline body images respect viewport */
.elementor-widget-text-editor img { max-width: 100% !important; height: auto !important; }

/* Services list readability */
.elementor-widget-text-editor ul { padding-left: 1.2em; }
.elementor-widget-text-editor ul li { margin-bottom: 1em; line-height: 1.55; }
.elementor-widget-text-editor a { word-break: break-word; }

/* Tablet: reduce inherited 100px side padding */
@media (max-width: 1024px) {
  .elementor-3419 .elementor-section.elementor-element[data-element_type="section"] {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }
}

/* Mobile (≤767px) */
@media (max-width: 767px) {
  /* Section gutters */
  .elementor-3419 .elementor-section.elementor-element[data-element_type="section"] {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .elementor-3419 .elementor-column .elementor-element-populated {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Heading scaling */
  .elementor-3419 .elementor-widget-heading h1 { font-size: 32px !important; line-height: 1.15 !important; }
  .elementor-3419 .elementor-widget-heading h2 { font-size: 24px !important; line-height: 1.25 !important; }
  .elementor-3419 .elementor-widget-text-editor h2 { font-size: 22px !important; line-height: 1.25 !important; }
  .elementor-3419 .elementor-widget-text-editor p,
  .elementor-3419 .elementor-widget-text-editor li { font-size: 15px !important; }

  /* Center the hero button (and any button widget on the page) */
  .elementor-3419 .elementor-widget-button { text-align: center !important; }
  .elementor-3419 .elementor-widget-button .elementor-button-wrapper { text-align: center !important; }
  .elementor-3419 .elementor-widget-button .elementor-button {
    display: inline-block !important;
    width: auto !important;
    max-width: 100% !important;
  }

  /* Hero image: cap height, preserve aspect ratio, center it */
  .elementor-3419 .elementor-element.elementor-element-8cf6ee5 .elementor-widget-container { height: auto !important; }
  .elementor-3419 .elementor-element.elementor-element-8cf6ee5 .elementor-widget-container img {
    width: 100% !important;
    height: auto !important;
    max-height: 320px !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border-radius: 8px !important;
  }

  /* Awards images: scale to column, capped height */
  .elementor-3419 .elementor-widget-image img {
    max-width: 100% !important;
    height: auto !important;
  }
}/* Center button + add gap below it before the hero image */
  .elementor-3419 .elementor-widget-button { text-align: center !important; margin-bottom: 32px !important; }
  .elementor-3419 .elementor-widget-button .elementor-button-wrapper { text-align: center !important; }
  .elementor-3419 .elementor-widget-button .elementor-button {
    display: inline-block !important;
    width: auto !important;
    max-width: 100% !important;
  }

  /* Top spacing on the image column when stacked under text column */
  .elementor-3419 .elementor-element.elementor-element-9316cbe > .elementor-element-populated {
    padding-top: 8px !important;
  }

  /* Hero image: cap height, preserve aspect ratio */
  .elementor-3419 .elementor-element.elementor-element-8cf6ee5 .elementor-widget-container { height: auto !important; }
  .elementor-3419 .elementor-element.elementor-element-8cf6ee5 .elementor-widget-container img {
    width: 100% !important;
    height: auto !important;
    max-height: 320px !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border-radius: 8px !important;
  }

  .elementor-3419 .elementor-widget-image img { max-width: 100% !important; height: auto !important; }
}/* Body services list readability */
.elementor-widget-text-editor ul { padding-left: 1.2em; }
.elementor-widget-text-editor ul li { margin-bottom: 1em; line-height: 1.55; }
.elementor-widget-text-editor a { word-break: break-word; }

/* Tablet (≤1024px) */
@media (max-width: 1024px) {
  .elementor-3419 .elementor-section.elementor-element[data-element_type="section"] {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }
  /* Keep CTA bar section edge-to-edge on tablet */
  .elementor-3419 .elementor-element.elementor-element-cta_shortcode {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* Mobile (≤767px) */
@media (max-width: 767px) {
  .elementor-3419 .elementor-section.elementor-element[data-element_type="section"] {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  /* CTA bar: edge-to-edge full-width (no side padding, no vertical gap top/bottom) */
  .elementor-3419 .elementor-element.elementor-element-cta_shortcode {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .elementor-3419 .elementor-column .elementor-element-populated {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Headings */
  .elementor-3419 .elementor-widget-heading h1 { font-size: 32px !important; line-height: 1.15 !important; }
  .elementor-3419 .elementor-widget-heading h2 { font-size: 24px !important; line-height: 1.25 !important; }
  .elementor-3419 .elementor-widget-text-editor h2 { font-size: 22px !important; line-height: 1.25 !important; }
  .elementor-3419 .elementor-widget-text-editor p,
  .elementor-3419 .elementor-widget-text-editor li { font-size: 15px !important; }

  /* Center hero button + add gap below */
  .elementor-3419 .elementor-widget-button { text-align: center !important; margin-bottom: 32px !important; }
  .elementor-3419 .elementor-widget-button .elementor-button-wrapper { text-align: center !important; }
  .elementor-3419 .elementor-widget-button .elementor-button {
    display: inline-block !important;
    width: auto !important;
    max-width: 100% !important;
  }
  .elementor-3419 .elementor-element.elementor-element-9316cbe > .elementor-element-populated {
    padding-top: 8px !important;
  }

  /* === Uniform image sizing across hero + body (NOT awards/logos) === */
  /* Hero image */
  .elementor-3419 .elementor-element.elementor-element-8cf6ee5 .elementor-widget-container { height: auto !important; }
  .elementor-3419 .elementor-element.elementor-element-8cf6ee5 .elementor-widget-container img,
  .elementor-3419 .elementor-widget-text-editor img {
    width: 100% !important;
    height: 240px !important;
    max-height: 240px !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 8px !important;
    display: block !important;
    margin: 16px auto !important;
  }

  /* Awards section logos: stay as logos, just constrain */
  .elementor-3419 .elementor-element[data-element_type="section"]:not(.elementor-element-cta_shortcode) .elementor-widget-image img {
    /* leave default */
  }
  .elementor-3419 .elementor-element-section .elementor-widget-image img.award-logo,
  .elementor-3419 .elementor-element[data-id*="award"] .elementor-widget-image img {
    height: auto !important;
    max-height: 80px !important;
    width: auto !important;
    border-radius: 0 !important;
  }
}

/* Immigration page mobile fixes */

.elementor-widget-text-editor ul { padding-left: 1.2em; }
.elementor-widget-text-editor ul li { margin-bottom: 1em; line-height: 1.55; }
.elementor-widget-text-editor a { word-break: break-word; }

@media (max-width: 1024px) {
  .elementor-3419 .elementor-section.elementor-element[data-element_type="section"] {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }
  .elementor-3419 .elementor-section.elementor-element[data-element_type="section"].elementor-element-cta_shortcode {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

@media (max-width: 767px) {
  .elementor-3419 .elementor-section.elementor-element[data-element_type="section"] {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  /* CTA bar: edge-to-edge — higher specificity to beat the rule above */
  .elementor-3419 .elementor-section.elementor-element[data-element_type="section"].elementor-element-cta_shortcode {
    padding: 0 !important;
  }
  .elementor-3419 .elementor-element.elementor-element-cta_sc_col > .elementor-element-populated {
    padding: 0 !important;
  }
  /* Strip side padding from any sections rendered INSIDE the CTA shortcode (template 160215) */
  .elementor-3419 .elementor-element-cta_shortcode .elementor-section,
  .elementor-3419 .elementor-element-cta_shortcode .elementor-container,
  .elementor-3419 .elementor-element-cta_shortcode .elementor-row,
  .elementor-3419 .elementor-element-cta_shortcode .elementor-column-wrap,
  .elementor-3419 .elementor-element-cta_shortcode .elementor-element-populated {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
  }

  .elementor-3419 .elementor-column .elementor-element-populated {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .elementor-3419 .elementor-widget-heading h1 { font-size: 32px !important; line-height: 1.15 !important; }
  .elementor-3419 .elementor-widget-heading h2 { font-size: 24px !important; line-height: 1.25 !important; }
  .elementor-3419 .elementor-widget-text-editor h2 { font-size: 22px !important; line-height: 1.25 !important; }
  .elementor-3419 .elementor-widget-text-editor p,
  .elementor-3419 .elementor-widget-text-editor li { font-size: 15px !important; }

  /* Hero button — center + gap below */
  .elementor-3419 .elementor-widget-button { text-align: center !important; margin-bottom: 32px !important; }
  .elementor-3419 .elementor-widget-button .elementor-button-wrapper { text-align: center !important; }
  .elementor-3419 .elementor-widget-button .elementor-button {
    display: inline-block !important;
    width: auto !important;
    max-width: 100% !important;
  }
  .elementor-3419 .elementor-element.elementor-element-9316cbe > .elementor-element-populated {
    padding-top: 8px !important;
  }

  /* Uniform image sizing: hero + body inline images all the same */
  .elementor-3419 .elementor-element.elementor-element-8cf6ee5 .elementor-widget-container { height: auto !important; }
  .elementor-3419 .elementor-element.elementor-element-8cf6ee5 .elementor-widget-container img,
  .elementor-3419 .elementor-widget-text-editor img {
    width: 100% !important;
    height: 240px !important;
    max-height: 240px !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 8px !important;
    display: block !important;
    margin: 16px auto !important;
  }
}/* End custom CSS */