.elementor-1612 .elementor-element.elementor-element-a3da4b1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1612 .elementor-element.elementor-element-b92046d{--spacer-size:50px;}.elementor-1612 .elementor-element.elementor-element-ad469d2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1612 .elementor-element.elementor-element-ad469d2:not(.elementor-motion-effects-element-type-background), .elementor-1612 .elementor-element.elementor-element-ad469d2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 0%, #F2F6FC 100%);}.elementor-1612 .elementor-element.elementor-element-2f69881{--display:flex;}.elementor-1612 .elementor-element.elementor-element-18332ed > .elementor-widget-container{padding:0px 150px 0px 150px;}.elementor-1612 .elementor-element.elementor-element-18332ed{text-align:center;}.elementor-1612 .elementor-element.elementor-element-18332ed .elementor-heading-title{font-family:"Urbanist", Sans-serif;font-size:70px;font-weight:700;line-height:70px;color:#0D1C47;}.elementor-1612 .elementor-element.elementor-element-3795bcf > .elementor-widget-container{margin:0px 0px -25px 0px;padding:0px 90px 0px 90px;}.elementor-1612 .elementor-element.elementor-element-3795bcf{text-align:center;font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:400;}.elementor-1612 .elementor-element.elementor-element-11509e3 .elementor-button{background-color:#0D1C47;font-family:"Urbanist", Sans-serif;font-weight:700;border-radius:12px 12px 12px 12px;}.elementor-1612 .elementor-element.elementor-element-11509e3 > .elementor-widget-container{margin:0px 0px -6px 0px;}.elementor-1612 .elementor-element.elementor-element-be8b15f > .elementor-widget-container{margin:-30px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1612 .elementor-element.elementor-element-be8b15f.elementor-element{--align-self:center;}.elementor-1612 .elementor-element.elementor-element-aad2ce0 > .elementor-widget-container{padding:8px 180px 8px 180px;}.elementor-1612 .elementor-element.elementor-element-c58ad89{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1612 .elementor-element.elementor-element-fbb34f8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1612 .elementor-element.elementor-element-85c2282{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1612 .elementor-element.elementor-element-8866e92{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1612 .elementor-element.elementor-element-2661ae5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1612 .elementor-element.elementor-element-6b03e05{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1612 .elementor-element.elementor-element-acf1b48{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1612 .elementor-element.elementor-element-d547f23{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1612 .elementor-element.elementor-element-6056763{text-align:center;}.elementor-1612 .elementor-element.elementor-element-6056763 .elementor-heading-title{font-weight:700;}.elementor-1612 .elementor-element.elementor-element-595dded > .elementor-widget-container{margin:0px 0px -25px 0px;padding:0px 90px 0px 90px;}.elementor-1612 .elementor-element.elementor-element-595dded{text-align:center;}.elementor-1612 .elementor-element.elementor-element-595dded .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:400;}.elementor-1612 .elementor-element.elementor-element-3504547 .elementor-tab-title{border-width:1px;border-color:#686868;background-color:rgba(35,35,35,0);padding:30px 30px 30px 30px;}.elementor-1612 .elementor-element.elementor-element-3504547 .elementor-tab-content{border-width:1px;border-block-end-color:#686868;background-color:rgba(25,25,25,0);color:#000000;font-size:16px;font-weight:300;line-height:1.8em;padding:15px 35px 15px 35px;}.elementor-1612 .elementor-element.elementor-element-3504547 .elementor-toggle-item:not(:last-child){margin-block-end:0px;}.elementor-1612 .elementor-element.elementor-element-3504547 .elementor-toggle-title, .elementor-1612 .elementor-element.elementor-element-3504547 .elementor-toggle-icon{color:#0D1C47;}.elementor-1612 .elementor-element.elementor-element-3504547 .elementor-toggle-icon svg{fill:#0D1C47;}.elementor-1612 .elementor-element.elementor-element-3504547 .elementor-tab-title.elementor-active a, .elementor-1612 .elementor-element.elementor-element-3504547 .elementor-tab-title.elementor-active .elementor-toggle-icon{color:#3C4B80;}.elementor-1612 .elementor-element.elementor-element-3504547 .elementor-toggle-title{font-size:16px;font-weight:900;text-transform:uppercase;text-decoration:none;}.elementor-1612 .elementor-element.elementor-element-3504547 .elementor-tab-title .elementor-toggle-icon i:before{color:#000000;}.elementor-1612 .elementor-element.elementor-element-3504547 .elementor-tab-title .elementor-toggle-icon svg{fill:#000000;}.elementor-1612 .elementor-element.elementor-element-3504547 .elementor-tab-title.elementor-active .elementor-toggle-icon i:before{color:#0D1C47;}.elementor-1612 .elementor-element.elementor-element-3504547 .elementor-tab-title.elementor-active .elementor-toggle-icon svg{fill:#0D1C47;}.elementor-1612 .elementor-element.elementor-element-3b2de83{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(max-width:1024px){.elementor-1612 .elementor-element.elementor-element-18332ed > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-1612 .elementor-element.elementor-element-18332ed .elementor-heading-title{font-size:48px;line-height:55px;}.elementor-1612 .elementor-element.elementor-element-3795bcf > .elementor-widget-container{margin:0px 0px -25px 0px;padding:0px 30px 0px 30px;}.elementor-1612 .elementor-element.elementor-element-3795bcf{font-size:16px;}.elementor-1612 .elementor-element.elementor-element-11509e3 > .elementor-widget-container{margin:0px 0px -6px 0px;}.elementor-1612 .elementor-element.elementor-element-aad2ce0 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-1612 .elementor-element.elementor-element-595dded > .elementor-widget-container{margin:0px 0px -25px 0px;padding:0px 30px 0px 30px;}.elementor-1612 .elementor-element.elementor-element-595dded .elementor-heading-title{font-size:16px;}}@media(max-width:767px){.elementor-1612 .elementor-element.elementor-element-b92046d{--spacer-size:25px;}.elementor-1612 .elementor-element.elementor-element-18332ed .elementor-heading-title{font-size:26px;line-height:37px;}.elementor-1612 .elementor-element.elementor-element-3795bcf > .elementor-widget-container{margin:0px 0px -25px 0px;padding:0px 0px 0px 0px;}.elementor-1612 .elementor-element.elementor-element-3795bcf{font-size:15px;}.elementor-1612 .elementor-element.elementor-element-11509e3 > .elementor-widget-container{margin:0px 0px -6px 0px;}.elementor-1612 .elementor-element.elementor-element-595dded > .elementor-widget-container{margin:0px 0px -25px 0px;padding:0px 0px 0px 0px;}.elementor-1612 .elementor-element.elementor-element-595dded .elementor-heading-title{font-size:15px;}.elementor-1612 .elementor-element.elementor-element-3504547 > .elementor-widget-container{padding:15px 0px 0px 0px;}}@media(min-width:768px){.elementor-1612 .elementor-element.elementor-element-ad469d2{--width:1600px;}}/* Start custom CSS for button, class: .elementor-element-11509e3 */.elementor-1612 .elementor-element.elementor-element-11509e3 .elementor-button {
  position: relative;
  background-color: #0D1C47;
  color: #fff;
  font-weight: 700;
  padding: 16px 32px;
  border-radius: 8px;
  transition: all 0.4s ease-in-out;
  overflow: hidden;
}

.elementor-1612 .elementor-element.elementor-element-11509e3 .elementor-button::after {
  content: "→";
  position: absolute;
  opacity: 0;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.4s ease;
}

.elementor-1612 .elementor-element.elementor-element-11509e3 .elementor-button:hover {
  padding-right: 48px;
  background-color: #3F5DFF;
}

.elementor-1612 .elementor-element.elementor-element-11509e3 .elementor-button:hover::after {
  opacity: 1;
  right: 16px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-be8b15f */.elementor-1612 .elementor-element.elementor-element-be8b15f .mini-trust-bar {
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  color: #555;
  margin-top: 20px;
  text-align: center;
  letter-spacing: 0.3px;
  line-height: 1.4;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-aad2ce0 */.fle-swiper-cards {
  padding: 40px 0 80px;
  position: relative;
  overflow: hidden;
}

/* Fixed card width for smooth auto carousel */
.fle-swiper-cards .swiper-slide {
  width: 300px;
}

.swiper-slide.fle-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 20px;
  text-align: left;
  min-height: 260px;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
  cursor: pointer;
}

/* Hover stays visually stable */
.swiper-slide.fle-card:hover {
  transform: none;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
  border-color: #0D1C47;
}

.fle-icon {
  font-size: 32px;
  margin-bottom: 16px;
  color: #0D1C47;
}

.fle-card h3 {
  font-family: 'Urbanist', sans-serif;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 8px;
  color: #0D1C47;
}

.fle-card p {
  font-family: 'DM Sans', sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: #444;
}

/* Progress shimmer bar */
.fle-progress-bar {
  position: absolute;
  bottom: 18px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 4px;
  background: #dce1ec;
  overflow: hidden;
  border-radius: 4px;
  opacity: 0.6;
}

.fle-progress-bar::before {
  content: "";
  position: absolute;
  top: 0;
  left: -60px;
  width: 60px;
  height: 100%;
  background: linear-gradient(90deg, transparent, #4b5c9a, transparent);
  animation: shimmer 2.5s linear infinite;
}

@keyframes shimmer {
  0% { left: -60px; }
  100% { left: 100%; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ad469d2 */.elementor-1612 .elementor-element.elementor-element-ad469d2 {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  padding-left: 20px;
  padding-right: 20px;
  box-sizing: border-box;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fc48e03 */.fle-section-why-visa-lawyer {
  background: #ffffff;
  padding: 70px 20px 75px;
}

.fle-container {
  max-width: 920px;
  margin: 0 auto;
}

.fle-section-why-visa-lawyer h2 {
  font-family: 'Urbanist', sans-serif;
  font-size: 36px;
  line-height: 1.28;
  color: #0D1C47;
  margin-bottom: 22px;
  font-weight: 700;
}

.fle-section-why-visa-lawyer .fle-lead {
  font-size: 18px;
  line-height: 1.85;
  color: #222;
  margin-bottom: 20px;
}

.fle-section-why-visa-lawyer p {
  font-family: 'DM Sans', sans-serif;
  font-size: 16.4px;
  line-height: 1.95;
  color: #444;
  margin-bottom: 16px;
}

.fle-info-block {
  margin-top: 34px;
}

.fle-info-block h3 {
  font-family: 'Urbanist', sans-serif;
  font-size: 24px;
  color: #0D1C47;
  margin-bottom: 10px;
  font-weight: 700;
}

.fle-check-list {
  margin: 14px 0 18px;
  padding-left: 18px;
}

.fle-check-list li {
  font-size: 16px;
  line-height: 1.8;
  color: #333;
  margin-bottom: 6px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-397719d */.fle-section-visa-cases {
  padding: 90px 20px;
  background: #ffffff;
}

.fle-container {
  max-width: 1100px;
  margin: 0 auto;
}

.fle-section-visa-cases h2 {
  font-family: 'Urbanist', sans-serif;
  font-size: 36px;
  line-height: 1.25;
  color: #0D1C47;
  margin-bottom: 22px;
  font-weight: 700;
}

.fle-lead {
  font-size: 18px;
  line-height: 1.8;
  color: #222;
  margin-bottom: 18px;
}

.fle-section-visa-cases p {
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  line-height: 1.85;
  color: #444;
  margin-bottom: 16px;
}

.fle-visa-flex {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
  margin-top: 50px;
}

.fle-visa-card h3 {
  font-family: 'Urbanist', sans-serif;
  font-size: 24px;
  color: #0D1C47;
  margin-bottom: 12px;
  font-weight: 700;
}

.fle-visa-card ul {
  padding-left: 18px;
  margin: 16px 0 18px;
}

.fle-visa-card li {
  font-size: 16px;
  line-height: 1.75;
  color: #333;
  margin-bottom: 6px;
}

@media (max-width: 900px) {
  .fle-visa-flex {
    grid-template-columns: 1fr;
    gap: 35px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fc65591 */.fle-section-refusal {
  padding: 95px 20px;
  background: #ffffff;
}

.fle-section-refusal h2 {
  font-family: 'Urbanist', sans-serif;
  font-size: 36px;
  line-height: 1.25;
  color: #0D1C47;
  margin-bottom: 22px;
  font-weight: 700;
}

.fle-section-refusal .fle-lead {
  font-size: 18px;
  line-height: 1.85;
  color: #222;
  margin-bottom: 18px;
}

.fle-section-refusal p {
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  line-height: 1.9;
  color: #444;
  margin-bottom: 16px;
}

.fle-refusal-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  margin-top: 45px;
}

.fle-refusal-card h3 {
  font-family: 'Urbanist', sans-serif;
  font-size: 22px;
  color: #0D1C47;
  margin-bottom: 10px;
  font-weight: 700;
}

.fle-refusal-conclusion {
  margin-top: 40px;
  font-size: 17px;
  color: #222;
}

@media (max-width: 950px) {
  .fle-refusal-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a9ca232 */.fle-section-approval {
  padding: 95px 20px;
  background: #ffffff;
}

.fle-section-approval h2 {
  font-family: 'Urbanist', sans-serif;
  font-size: 36px;
  line-height: 1.25;
  color: #0D1C47;
  margin-bottom: 22px;
  font-weight: 700;
}

.fle-section-approval .fle-lead {
  font-size: 18px;
  line-height: 1.85;
  color: #222;
  margin-bottom: 18px;
}

.fle-section-approval p {
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  line-height: 1.9;
  color: #444;
  margin-bottom: 16px;
}

.fle-approval-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  margin-top: 45px;
}

.fle-approval-card h3 {
  font-family: 'Urbanist', sans-serif;
  font-size: 22px;
  color: #0D1C47;
  margin-bottom: 10px;
  font-weight: 700;
}

.fle-approval-conclusion {
  margin-top: 40px;
  font-size: 17px;
  color: #222;
}

@media (max-width: 950px) {
  .fle-approval-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4796186 */.fle-consult-flow {
  padding: 60px 20px 70px;
  background: #fff;
}

.fle-consult-flow h2 {
  font-family: 'Urbanist', sans-serif;
  font-size: 34px;
  line-height: 1.3;
  color: #0D1C47;
  margin-bottom: 18px;
  font-weight: 700;
}

.fle-consult-flow .fle-intro {
  font-size: 17px;
  line-height: 1.85;
  color: #333;
  max-width: 820px;
  margin-bottom: 28px;
}

.fle-flow-row {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 40px;
  margin-bottom: 26px;
  align-items: start;
}

.fle-flow-left h3 {
  font-family: 'Urbanist', sans-serif;
  font-size: 18px;
  color: #0D1C47;
  font-weight: 700;
}

.fle-flow-right p {
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  line-height: 1.85;
  color: #444;
}

@media (max-width: 900px) {
  .fle-flow-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .fle-flow-left h3 {
    margin-bottom: 6px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b7f958e */.fle-authority-flow {
  padding: 55px 20px 65px;
  background: #ffffff;
}

.fle-container-wide {
  max-width: 980px;
  margin: 0 auto;
}

.fle-authority-flow h2 {
  font-family: 'Urbanist', sans-serif;
  font-size: 35px;
  line-height: 1.28;
  color: #0D1C47;
  margin-bottom: 18px;
  font-weight: 700;
}

.fle-authority-flow p {
  font-family: 'DM Sans', sans-serif;
  font-size: 16.4px;
  line-height: 1.95;
  color: #444;
  margin-bottom: 16px;
}

.fle-highlight-line {
  font-size: 18px;
  color: #222;
  margin-bottom: 18px;
}

.fle-authority-end {
  margin-top: 10px;
  font-size: 16.6px;
  color: #222;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e98bcce */.fle-semantic-depth {
  padding: 60px 20px 70px;
  background: #ffffff;
}

.fle-semantic-depth h2 {
  font-family: 'Urbanist', sans-serif;
  font-size: 35px;
  line-height: 1.3;
  color: #0D1C47;
  margin-bottom: 18px;
  font-weight: 700;
}

.fle-semantic-depth p {
  font-family: 'DM Sans', sans-serif;
  font-size: 16.5px;
  line-height: 1.95;
  color: #444;
  margin-bottom: 16px;
}

.fle-depth-intro {
  font-size: 18px;
  color: #222;
  margin-bottom: 18px;
}

.fle-depth-end {
  margin-top: 10px;
  font-size: 16.6px;
  color: #222;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-187617d */a[href*="contact-us"]:hover {
  background-color: #3F5DFF !important;
  border-color: #3F5DFF !important;
  padding-right: 48px !important;
}

a[href*="contact-us"]::after {
  content: "→";
  position: absolute;
  opacity: 0;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.4s ease;
  color: #fff;
}

a[href*="contact-us"]:hover::after {
  opacity: 1;
  right: 16px;
}/* End custom CSS */